📄 xbanking.lst
字号:
181
182 ;-----------------------------------------------------------------------------
183 ; ISTXPTR: Store WORD in A(HSB)/B(LSB) via Address given in R1/R2/R3
184 ; Registers which can be used without saving: DPTR, CY, A
185 ;
0054 186 ?C?ISTXPTR: LOAD_BANK
0062 5005 194 JNC ISTCODE
0064 F0 195 MOVX @DPTR,A
0065 A3 196 INC DPTR
0066 E5F0 197 MOV A,B
0068 F0 198 MOVX @DPTR,A
0069 759300 199 ISTCODE: MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
006C 22 200 RET
201
202 ;-----------------------------------------------------------------------------
203 ; PLDXPTR: Load PTR in R1/R2/R3 via Address given in R1/R2/R3
204 ; Registers which can be used without saving: DPTR, CY, A, R1, R2, R3
205 ;
006D 206 ?C?PLDXPTR: LOAD_BANK
007B 500C 214 JNC PLDCODE
007D E0 215 MOVX A,@DPTR
007E FB 216 MOV R3,A
007F A3 217 INC DPTR
0080 E0 218 MOVX A,@DPTR
0081 FA 219 MOV R2,A
0082 A3 220 INC DPTR
0083 E0 221 MOVX A,@DPTR
0084 F9 222 MOV R1,A
0085 759300 223 MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
0088 22 224 RET
0089 E4 225 PLDCODE: CLR A
A51 MACRO ASSEMBLER XBANKING 04/14/2007 09:47:57 PAGE 4
008A 93 226 MOVC A,@A+DPTR
008B FB 227 MOV R3,A
008C 7401 228 MOV A,#1
008E 93 229 MOVC A,@A+DPTR
008F FA 230 MOV R2,A
0090 7402 231 MOV A,#2
0092 93 232 MOVC A,@A+DPTR
0093 F9 233 MOV R1,A
0094 759300 234 MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
0097 22 235 RET
236
237 ;-----------------------------------------------------------------------------
238 ; PSTXPTR: Store PTR in R0/A/B via Address given in R1/R2/R3
239 ; Registers which can be used without saving: DPTR, CY, A
240 ;
0098 241 ?C?PSTXPTR: LOAD_BANK
00A6 500A 249 JNC PSTCODE
00A8 C5F0 250 XCH A,B
00AA F0 251 MOVX @DPTR,A
00AB A3 252 INC DPTR
00AC C5F0 253 XCH A,B
00AE F0 254 MOVX @DPTR,A
00AF A3 255 INC DPTR
00B0 E8 256 MOV A,R0
00B1 F0 257 MOVX @DPTR,A
00B2 759300 258 PSTCODE: MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
00B5 22 259 RET
260
261 ;-----------------------------------------------------------------------------
262 ; LLDXPTR: Load DWORD in R4/R5/R6/R7 via Address given in R1/R2/R3
263 ; Registers which can be used without saving: DPTR, CY, A, R4, R5, R6, R7
264 ;
00B6 265 ?C?LLDXPTR: LOAD_BANK
00C4 500F 273 JNC LLDCODE
00C6 E0 274 MOVX A,@DPTR
00C7 FC 275 MOV R4,A
00C8 A3 276 INC DPTR
00C9 E0 277 MOVX A,@DPTR
00CA FD 278 MOV R5,A
00CB A3 279 INC DPTR
00CC E0 280 MOVX A,@DPTR
00CD FE 281 MOV R6,A
00CE A3 282 INC DPTR
00CF E0 283 MOVX A,@DPTR
00D0 FF 284 MOV R7,A
00D1 759300 285 MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
00D4 22 286 RET
00D5 E4 287 LLDCODE: CLR A
00D6 93 288 MOVC A,@A+DPTR
00D7 FC 289 MOV R4,A
00D8 7401 290 MOV A,#1
00DA 93 291 MOVC A,@A+DPTR
00DB FD 292 MOV R5,A
00DC 7402 293 MOV A,#2
00DE 93 294 MOVC A,@A+DPTR
00DF FE 295 MOV R6,A
00E0 7403 296 MOV A,#3
00E2 93 297 MOVC A,@A+DPTR
00E3 FF 298 MOV R7,A
00E4 759300 299 MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
00E7 22 300 RET
301
302 ;-----------------------------------------------------------------------------
303 ; LSTXPTR: Store DWORD in R4/R5/R6/R7 via Address given in R1/R2/R3
304 ; Registers which can be used without saving: DPTR, CY, A
305 ;
A51 MACRO ASSEMBLER XBANKING 04/14/2007 09:47:57 PAGE 5
00E8 306 ?C?LSTXPTR: LOAD_BANK
00F6 500B 314 JNC LSTCODE
00F8 EC 315 MOV A,R4
00F9 F0 316 MOVX @DPTR,A
00FA A3 317 INC DPTR
00FB ED 318 MOV A,R5
00FC F0 319 MOVX @DPTR,A
00FD A3 320 INC DPTR
00FE EE 321 MOV A,R6
00FF F0 322 MOVX @DPTR,A
0100 A3 323 INC DPTR
0101 EF 324 MOV A,R7
0102 F0 325 MOVX @DPTR,A
0103 759300 326 LSTCODE: MOV ?C?XPAGE1SFR,#?C?XPAGE1RST ; Reset Page Register
0106 22 327 RET
328
329 END
A51 MACRO ASSEMBLER XBANKING 04/14/2007 09:47:57 PAGE 6
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
??0000 . . . . . . C ADDR 000EH R SEG=?C?LIB_CODE
??0001 . . . . . . C ADDR 0029H R SEG=?C?LIB_CODE
??0002 . . . . . . C ADDR 003EH R SEG=?C?LIB_CODE
??0003 . . . . . . C ADDR 0062H R SEG=?C?LIB_CODE
??0004 . . . . . . C ADDR 007BH R SEG=?C?LIB_CODE
??0005 . . . . . . C ADDR 00A6H R SEG=?C?LIB_CODE
??0006 . . . . . . C ADDR 00C4H R SEG=?C?LIB_CODE
??0007 . . . . . . C ADDR 00F6H R SEG=?C?LIB_CODE
?B?SMEM. . . . . . N NUMB 0000H A
?B?TMEM. . . . . . N NUMB 0000H A
?B?UMEM. . . . . . N NUMB 0000H A
?B?VMEM. . . . . . N NUMB 0000H A
?C?CLDXPTR . . . . C ADDR 0000H R SEG=?C?LIB_CODE
?C?CSTXPTR . . . . C ADDR 001BH R SEG=?C?LIB_CODE
?C?ILDXPTR . . . . C ADDR 0030H R SEG=?C?LIB_CODE
?C?ISTXPTR . . . . C ADDR 0054H R SEG=?C?LIB_CODE
?C?LIB_CODE. . . . C SEG 0107H REL=UNIT
?C?LLDXPTR . . . . C ADDR 00B6H R SEG=?C?LIB_CODE
?C?LSTXPTR . . . . C ADDR 00E8H R SEG=?C?LIB_CODE
?C?PLDXPTR . . . . C ADDR 006DH R SEG=?C?LIB_CODE
?C?PSTXPTR . . . . C ADDR 0098H R SEG=?C?LIB_CODE
?C?XBANKING. . . . N NUMB -----
?C?XPAGE1RST . . . N NUMB 0000H A
?C?XPAGE1SFR . . . D ADDR 0093H A
ACC. . . . . . . . D ADDR 00E0H A
B. . . . . . . . . D ADDR 00F0H A
CLDCODE. . . . . . C ADDR 0015H R SEG=?C?LIB_CODE
CMEM . . . . . . . N NUMB 0000H A
CSTCODE. . . . . . C ADDR 002CH R SEG=?C?LIB_CODE
DPH. . . . . . . . D ADDR 0083H A
DPL. . . . . . . . D ADDR 0082H A
ILDCODE. . . . . . C ADDR 0049H R SEG=?C?LIB_CODE
ISTCODE. . . . . . C ADDR 0069H R SEG=?C?LIB_CODE
LLDCODE. . . . . . C ADDR 00D5H R SEG=?C?LIB_CODE
LSTCODE. . . . . . C ADDR 0103H R SEG=?C?LIB_CODE
PLDCODE. . . . . . C ADDR 0089H R SEG=?C?LIB_CODE
PSTCODE. . . . . . C ADDR 00B2H R SEG=?C?LIB_CODE
XMEM . . . . . . . N NUMB 0000H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -