📄 i2c.lst
字号:
------ 2 [--] [00]
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] bs pr1, 0
------ 2 [--] [00]
------ 2 [--] [00] inc pr0
------ 2 [--] [00] jbs r3, zflag
------ 2 [--] [00] jmp addmrd_read2
------ 2 [--] [00] inc pr0+1
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] addmrd_read2:
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] add a, reg+2
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbc pr1, 1
------ 2 [--] [00] add a, 1
------ 2 [--] [00] call WriteIND
------ 2 [--] [00]
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] bs pr1, 0
------ 2 [--] [00]
------ 2 [--] [00] inc pr0
------ 2 [--] [00] jbs r3, zflag
------ 2 [--] [00] jmp addmrd_read3
------ 2 [--] [00] inc pr0+1
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] addmrd_read3:
------ 2 [--] [00] inc pr0+1
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] add a, reg+3
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbc pr1, 1
------ 2 [--] [00] add a, 1
------ 2 [--] [00] call WriteIND
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] .ENDM
------ 2 [--] [00]
------ 2 [--] [00] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
------ 2 [--] [00] .MACRO SUBMRB addr,reg,access
------ 2 [--] [00] ; RAM
------ 2 [--] [00] .IF access = 0
------ 2 [--] [00] mov a, reg
------ 2 [--] [00] sub addr, a
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;ROM
------ 2 [--] [00] .IF access = 1
------ 2 [--] [00] ERROR "Can't write to ROM data"
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ; IO
------ 2 [--] [00] .IF access = 2
------ 2 [--] [00] ior addr
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] iow addr
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;IND
------ 2 [--] [00] .IF access = 3
------ 2 [--] [00] mov a, @.B0.(addr)
------ 2 [--] [00] mov pr0, a
------ 2 [--] [00] mov a, @.B1.(addr)
------ 2 [--] [00] mov pr0+1, a
------ 2 [--] [00] mov a, @.B2.(addr)
------ 2 [--] [00] mov pr0+2, a
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] call WriteIND
------ 2 [--] [00] .ENDIF
------ 2 [--] [00] .ENDM
------ 2 [--] [00]
------ 2 [--] [00] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
------ 2 [--] [00] .MACRO SUBMRW addr,reg,access
------ 2 [--] [00] .LOCAL submrw_read1
------ 2 [--] [00] ; RAM
------ 2 [--] [00] .IF access = 0
------ 2 [--] [00] mov a, reg
------ 2 [--] [00] sub addr, a
------ 2 [--] [00] jbs r3, cflag
------ 2 [--] [00] dec addr+1
------ 2 [--] [00] mov a, reg+1
------ 2 [--] [00] sub addr+1, a
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;ROM
------ 2 [--] [00] .IF access = 1
------ 2 [--] [00] ERROR "Can't write to ROM data"
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ; IO
------ 2 [--] [00] .IF access = 2
------ 2 [--] [00] ior addr
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] iow addr
------ 2 [--] [00]
------ 2 [--] [00] ior addr+1
------ 2 [--] [00] sub a, reg+1
------ 2 [--] [00] jbs pr1, 0
------ 2 [--] [00] add a, @1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] iow addr+1
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;IND
------ 2 [--] [00] .IF access = 3
------ 2 [--] [00] mov a, @.B0.(addr)
------ 2 [--] [00] mov pr0, a
------ 2 [--] [00] mov a, @.B1.(addr)
------ 2 [--] [00] mov pr0+1, a
------ 2 [--] [00] mov a, @.B2.(addr)
------ 2 [--] [00] mov pr0+2, a
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] call WriteIND
------ 2 [--] [00]
------ 2 [--] [00] inc pr0
------ 2 [--] [00] jbs r3, zflag
------ 2 [--] [00] jmp submrw_read1
------ 2 [--] [00] inc pr0+1
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] inc pr0+2
------ 2 [--] [00] submrw_read1:
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] sub a, reg+1
------ 2 [--] [00] jbs pr1, 0
------ 2 [--] [00] add a, @1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] call WriteIND
------ 2 [--] [00] .ENDIF
------ 2 [--] [00] .ENDM
------ 2 [--] [00]
------ 2 [--] [00] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
------ 2 [--] [00] .MACRO SUBMRD addr,reg,access
------ 2 [--] [00] .LOCAL SUBMRD_BYTE2
------ 2 [--] [00] .LOCAL SUBMRD_BYTE3
------ 2 [--] [00] .LOCAL submrd_read1
------ 2 [--] [00] .LOCAL submrd_read2
------ 2 [--] [00] .LOCAL submrd_read3
------ 2 [--] [00] ;RAM
------ 2 [--] [00] .IF access = 0
------ 2 [--] [00] mov A, reg
------ 2 [--] [00] sub addr, a
------ 2 [--] [00]
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] mov a, reg+1
------ 2 [--] [00] sub addr+1, a
------ 2 [--] [00]
------ 2 [--] [00] jbc pr1,0
------ 2 [--] [00] jmp SUBMRD_BYTE2
------ 2 [--] [00]
------ 2 [--] [00] mov addr+1, addr+1
------ 2 [--] [00] jbc r3,zflag
------ 2 [--] [00] bc r3,cflag
------ 2 [--] [00] dec addr+1
------ 2 [--] [00]
------ 2 [--] [00] SUBMRD_BYTE2:
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] mov a, reg+2
------ 2 [--] [00] sub addr+2, a
------ 2 [--] [00]
------ 2 [--] [00] jbc pr1,0
------ 2 [--] [00] jmp SUBMRD_BYTE3
------ 2 [--] [00]
------ 2 [--] [00] mov addr+2, addr+2
------ 2 [--] [00] jbc r3,zflag
------ 2 [--] [00] bc r3,cflag
------ 2 [--] [00] dec addr+2
------ 2 [--] [00]
------ 2 [--] [00] SUBMRD_BYTE3:
------ 2 [--] [00] jbs r3, cflag
------ 2 [--] [00] dec addr+3
------ 2 [--] [00] mov a, reg+3
------ 2 [--] [00] sub addr+3, a
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;ROM
------ 2 [--] [00] .IF access = 1
------ 2 [--] [00] ERROR "Can't write to ROM data"
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ; IO
------ 2 [--] [00] .IF access = 2
------ 2 [--] [00] ior addr
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] iow addr
------ 2 [--] [00] ior addr+1
------ 2 [--] [00] sub a, reg+1
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbs pr1, 1
------ 2 [--] [00] add a, @0xFF
------ 2 [--] [00] iow addr+1
------ 2 [--] [00]
------ 2 [--] [00] jbs r3, cflag
------ 2 [--] [00] bc pr1, 0
------ 2 [--] [00]
------ 2 [--] [00] ior addr+2
------ 2 [--] [00] sub a, reg+2
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbc pr1, 1
------ 2 [--] [00] add a, @0xFF
------ 2 [--] [00] iow addr+2
------ 2 [--] [00]
------ 2 [--] [00] jbs r3, cflag
------ 2 [--] [00] bc pr1, 0
------ 2 [--] [00]
------ 2 [--] [00] ior addr+3
------ 2 [--] [00] sub a, reg+3
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbc pr1, 1
------ 2 [--] [00] add a, @0xFF
------ 2 [--] [00] iow addr+3
------ 2 [--] [00] .ENDIF
------ 2 [--] [00]
------ 2 [--] [00] ;IND
------ 2 [--] [00] .IF access = 3
------ 2 [--] [00] mov a, @.B0.(addr)
------ 2 [--] [00] mov pr0, a
------ 2 [--] [00] mov a, @.B1.(addr)
------ 2 [--] [00] mov pr0+1, a
------ 2 [--] [00] mov a, @.B2.(addr)
------ 2 [--] [00] mov pr0+2, a
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] sub a, reg
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] sub a, @0
------ 2 [--] [00] call WriteIND
------ 2 [--] [00]
------ 2 [--] [00] inc pr0
------ 2 [--] [00] jbs r3, zflag
------ 2 [--] [00] jmp submrd_read1
------ 2 [--] [00] inc pr0+1
------ 2 [--] [00] jbc r3, zflag
------ 2 [--] [00] inc pr0+2
------ 2 [--] [00] call ReadIND
------ 2 [--] [00] sub a, reg+1
------ 2 [--] [00] rlc pr1
------ 2 [--] [00] jbs pr1, 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -