📄 sube2p.asm
字号:
SHLR.B R0L
MOV.B R0L,@(-2,ER6)
??ENDBLOCK(209)
BRA ?00012:8
?00014:
?00016:
??CLINE 211
??BEGINBLOCK(211)
??CLINE 212
MOV.B @H'00FFFFBD:8,R0L
MOV.B R0L,@(-3,ER6)
??CLINE 214
MOV.B R0L,R1L
AND.B #H'02,R1L
MOV.B R1L,@(-3,ER6)
??CLINE 215
MOV.B R1L,R0L
EXTU.W R0
OR.W R0,R0
BNE ?00018:8
??BEGINBLOCK(215)
??CLINE 216
BRA ?00017:8
??ENDBLOCK(217)
?00018:
??ENDBLOCK(218)
BRA ?00016:8
?00017:
??CLINE 219
MOV.L @(+8,ER6),ER0
MOV.B @(-1,ER6),R1L
MOV.B R1L,@ER0
??ENDBLOCK(220)
??CLINE 220
_e2p_bytin_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _bit_in_e2p
_bit_in_e2p:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #6,ER7
??FUNCDEF(???bit_in_e2p) ??VOID
??VAR ??POINTER ??UCHAR ??SYMBOL(???kr) ??OFFSET(8)
??FUNCEND
??BEGINBLOCK(223)
??VAR ??UCHAR ??SYMBOL(???ichr) ??OFFSET(-1)
??VAR ??UCHAR ??SYMBOL(???jchr) ??OFFSET(-2)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-4)
??VAR ??SSHORT ??SYMBOL(???j) ??OFFSET(-6)
??CLINE 227
XOR.B R0L,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 228
MOV.B R0L,R1L
OR.B #H'04,R1L
MOV.B R1L,@(-1,ER6)
??CLINE 229
MOV.B R1L,R2L
OR.B #H'01,R2L
MOV.B R2L,@(-1,ER6)
??CLINE 231
MOV.L #H'00FFFFBF,ER1
MOV.B R2L,@ER1
??CLINE 233
XOR.W R2,R2
MOV.W R2,@(-4,ER6)
BRA ?00020:8
?00019:
MOV.W @(-4,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-4,ER6)
?00020:
MOV.W @(-4,ER6),R0
CMP.W #H'0005,R0
BGE ?00021:8
??BEGINBLOCK(233)
MOV.W @(-6,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-6,ER6)
??ENDBLOCK(233)
BRA ?00019:8
?00021:
??CLINE 235
MOV.B @H'00FFFFBD:8,R0L
MOV.B R0L,@(-2,ER6)
??CLINE 237
MOV.B R0L,R1L
AND.B #H'02,R1L
MOV.B R1L,@(-2,ER6)
??CLINE 239
MOV.B @(-1,ER6),R0L
AND.B #H'FB,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 240
MOV.L #H'00FFFFBF,ER2
MOV.B R0L,@ER2
??CLINE 242
MOV.L @(+8,ER6),ER0
MOV.B @(-2,ER6),R1L
MOV.B R1L,@ER0
??CLINE 243
JSR @_mk_pls_wide
??ENDBLOCK(244)
??CLINE 244
_bit_in_e2p_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _e2p_bytout
_e2p_bytout:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #4,ER7
??FUNCDEF(???e2p_bytout) ??VOID
??VAR ??UCHAR ??SYMBOL(???uchr) ??OFFSET(9)
??FUNCEND
??BEGINBLOCK(247)
??VAR ??UCHAR ??SYMBOL(???ichr) ??OFFSET(-1)
??VAR ??UCHAR ??SYMBOL(???jchr) ??OFFSET(-2)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-4)
??CLINE 251
MOV.B #H'80,R0L
MOV.B R0L,@(-2,ER6)
??CLINE 252
XOR.W R1,R1
MOV.W R1,@(-4,ER6)
BRA ?00023:8
?00022:
MOV.W @(-4,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-4,ER6)
?00023:
MOV.W @(-4,ER6),R0
CMP.W #H'0008,R0
BGE ?00024:8
??BEGINBLOCK(252)
??CLINE 253
XOR.B R0L,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 254
MOV.B @(-2,ER6),R1L
EXTU.W R1
MOV.B @(+9,ER6),R2L
EXTU.W R2
AND.W R1,R2
OR.W R2,R2
BEQ ?00025:8
??BEGINBLOCK(254)
??CLINE 255
MOV.B @(-1,ER6),R0L
OR.B #H'01,R0L
MOV.B R0L,@(-1,ER6)
??ENDBLOCK(256)
?00025:
??CLINE 257
MOV.B @(-1,ER6),R0L
EXTU.W R0
PUSH.W R0
JSR @_bit_out_e2p
ADDS.L #H'00000002,ER7
??CLINE 258
MOV.B @(-2,ER6),R0L
SHLR.B R0L
MOV.B R0L,@(-2,ER6)
??ENDBLOCK(259)
BRA ?00022:8
?00024:
??CLINE 260
JSR @_ack_chk
??ENDBLOCK(261)
??CLINE 261
_e2p_bytout_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _bit_out_e2p
_bit_out_e2p:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #2,ER7
??FUNCDEF(???bit_out_e2p) ??VOID
??VAR ??UCHAR ??SYMBOL(???uchr) ??OFFSET(9)
??FUNCEND
??BEGINBLOCK(264)
??VAR ??UCHAR ??SYMBOL(???ichr) ??OFFSET(-1)
??CLINE 267
MOV.B @(+9,ER6),R0L
MOV.B R0L,@(-1,ER6)
??CLINE 268
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 269
JSR @_mk_pls_wide
??CLINE 270
MOV.B @(-1,ER6),R0L
OR.B #H'04,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 271
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 272
JSR @_mk_pls_wide
??CLINE 273
MOV.B @(-1,ER6),R0L
AND.B #H'FB,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 274
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 275
JSR @_mk_pls_wide
??ENDBLOCK(276)
??CLINE 276
_bit_out_e2p_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _ack_chk
_ack_chk:
PUSH.L ER6
MOV.L ER7,ER6
SUBS #2,ER7
??FUNCDEF(???ack_chk) ??VOID
??FUNCEND
??BEGINBLOCK(279)
??VAR ??UCHAR ??SYMBOL(???ichr) ??OFFSET(-1)
??CLINE 282
MOV.B #H'01,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 283
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 284
JSR @_mk_pls_wide
?00026:
??CLINE 285
??BEGINBLOCK(286)
??CLINE 287
MOV.B @H'00FFFFBF:8,R0L
EXTU.W R0
AND.W #H'0002,R0
OR.W R0,R0
BNE ?00028:8
??BEGINBLOCK(287)
??CLINE 289
BRA ?00027:8
??ENDBLOCK(290)
?00028:
??ENDBLOCK(291)
BRA ?00026:8
?00027:
??CLINE 293
MOV.B @(-1,ER6),R0L
OR.B #H'04,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 294
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 295
JSR @_mk_pls_wide
??CLINE 296
MOV.B @(-1,ER6),R0L
AND.B #H'FB,R0L
MOV.B R0L,@(-1,ER6)
??CLINE 297
MOV.L #H'00FFFFBF,ER1
MOV.B R0L,@ER1
??CLINE 298
JSR @_mk_pls_wide
??ENDBLOCK(299)
??CLINE 299
_ack_chk_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _mk_pls_wide
_mk_pls_wide:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #6,ER7
??FUNCDEF(???mk_pls_wide) ??VOID
??FUNCEND
??BEGINBLOCK(303)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-2)
??VAR ??SLONG ??SYMBOL(???ilong) ??OFFSET(-6)
??CLINE 306
XOR.L ER0,ER0
MOV.L ER0,@(-6,ER6)
BRA ?00030:8
?00029:
MOV.L @(-6,ER6),ER0
INC.L #H'00000001,ER0
MOV.L ER0,@(-6,ER6)
?00030:
MOV.L @(-6,ER6),ER0
CMP.L #H'00000014,ER0
BGE ?00031:8
??BEGINBLOCK(307)
??CLINE 308
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(309)
BRA ?00029:8
?00031:
??ENDBLOCK(310)
??CLINE 310
_mk_pls_wide_end:
MOV.L ER6,ER7
POP.L ER6
RTS
segment TEXT ATR_CODE
public _wait_e2p
_wait_e2p:
PUSH.L ER6
MOV.L ER7,ER6
SUB.L #6,ER7
??FUNCDEF(???wait_e2p) ??VOID
??FUNCEND
??BEGINBLOCK(313)
??VAR ??SSHORT ??SYMBOL(???i) ??OFFSET(-2)
??VAR ??SLONG ??SYMBOL(???ilong) ??OFFSET(-6)
??CLINE 316
XOR.L ER0,ER0
MOV.L ER0,@(-6,ER6)
BRA ?00033:8
?00032:
MOV.L @(-6,ER6),ER0
INC.L #H'00000001,ER0
MOV.L ER0,@(-6,ER6)
?00033:
MOV.L @(-6,ER6),ER0
CMP.L #H'000032C8,ER0
BGE ?00034:8
??BEGINBLOCK(317)
??CLINE 318
MOV.W @(-2,ER6),R0
INC.W #H'0001,R0
MOV.W R0,@(-2,ER6)
??ENDBLOCK(319)
BRA ?00032:8
?00034:
??ENDBLOCK(320)
??CLINE 320
_wait_e2p_end:
MOV.L ER6,ER7
POP.L ER6
RTS
??CFILE (C:\H8S\LTMeas\LTDriver\SubE2p.c)
extern __l_divs
extern _strcpy
extern _strncpy
extern _strcat
extern _strncat
extern _strcmp
extern _strncmp
extern _strcoll
extern _strxfrm
extern _strchr
extern _strrchr
extern _strspn
extern _strcspn
extern _strpbrk
extern _strstr
extern _strlen
extern _strerror
extern _strtok
extern _memcpy
extern _memmove
extern _memcmp
extern _memchr
extern _memset
extern __iob
extern _remove
extern _rename
extern _tmpfile
extern _tmpnam
extern _fclose
extern _fflush
extern _fopen
extern _freopen
extern _setbuf
extern _setvbuf
extern _fprintf
extern _fscanf
extern _printf
extern _scanf
extern _sprintf
extern _sscanf
extern _vfprintf
extern _vprintf
extern _vsprintf
extern _fgetc
extern _fgets
extern _fputc
extern _fputs
extern _puts
extern _gets
extern _putchar
extern _ungetc
extern _fread
extern _fwrite
extern _fgetpos
extern _fseek
extern _fsetpos
extern _ftell
extern _clearerr
extern _feof
extern _ferror
extern _perror
extern _atof
extern _atoi
extern _atol
extern _strtod
extern _strtol
extern _strtoul
extern _rand
extern _srand
extern _calloc
extern _free
extern _malloc
extern _realloc
extern _abort
extern _atexit
extern _exit
extern _getenv
extern _system
extern _bsearch
extern _qsort
extern _abs
extern _div
extern _labs
extern _ldiv
extern _mblen
extern _mbtowc
extern _wctomb
extern _mbstowcs
extern _wcstombs
extern _acos
extern _asin
extern _atan
extern _atan2
extern _cos
extern _sin
extern _tan
extern _cosh
extern _sinh
extern _tanh
extern _exp
extern _frexp
extern _ldexp
extern _log
extern _log10
extern _modf
extern _pow
extern _sqrt
extern _ceil
extern _fabs
extern _floor
extern _fmod
extern _set_daif
extern _select_ch
extern _range_out
extern _onoff_out
extern _duty_out
extern _mon_select
extern _sisyagonyuu
extern _dot
extern _atoin
extern _atoln
extern _system_init
extern _port_init
extern _busc_init
extern _intc_init
extern _itimer_init
extern _start_timer
extern _check_timer
extern _stop_timer
extern _wdt_init
extern _wdt_clr
extern _sci_bps
extern _rs_pointer_init
extern _rs_rs_cmd
extern _rs_er_cmd
extern _rs_cs_sts
extern _rs_dr_sts
extern _rs_cd_sts
extern _rs_ci_sts
extern _rs_232ttl
extern _rs_putcheck
extern _rs_txbufempty
extern _rs_putc
extern _rs_puts
extern _rs_putn
extern _rs_getcheck
extern _rs_getc
extern _rs_getch
extern _rs_gets
extern _rs_getn
extern _rs_txcont_job
extern _rs_job
extern _tx_job
extern _IntTimer
extern _IntERI0
extern _IntERI1
extern _IntERI2
extern _IntRXI0
extern _IntRXI1
extern _IntRXI2
extern _IntTXI0
extern _IntTXI1
extern _IntTXI2
extern _srom_puts
extern _srom_fill
extern _srom_gets
extern _rs_send_interrupt
extern _rs_send_enable
extern _Set_WatchDog
extern _B8
extern _B16
extern _intmask
extern _rs_init
extern _rs_send
extern _rs_recv_err
extern _rs_recv
extern _rs_recv_job
extern _rs_send_job
extern _rs_cmdcheck_job
extern _rs_inttx
extern _com_rcv_proc
extern _key_incheck
extern _rscomctl
extern _wait
extern _subAD
extern _const_start
extern _g_DrivePole
extern _g_Range
extern _g_SetIf
extern _g_Duty
extern _g_CwPulse
extern _g_CalIfaR1
extern _g_CalIfbR1
extern _g_CalIfbR2
extern _g_CalIfaR2
extern _g_CalIfbR3
extern _g_CalIfaR3
extern _const_end
extern _g_OnOff
extern _g_RsSend_CT
extern _rs_sending
extern _g_RsSend_Bf
extern _g_RsRecv_Bf
extern _g_RsRecv_CT
extern _rs_rceving
extern _rs_sd_flg
extern _rs_rx_buf
extern _rs_tx_buf
extern _t1tmf
extern _t1tmt
;
;
segment DATA_CONST ATR_CDATA
segment DATA ATR_DATA
segment BSS ATR_DATA
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -