📄 console.lst
字号:
\ 00001D D083 POP DPH
\ 00001F D082 POP DPL
\ 000021 22 RET
121
\ In segment NEAR_CODE, align 1, keep-with-next
122 void conPrintUINT8_noleader (UINT8 x) {
\ conPrintUINT8_noleader:
\ 000000 74F8 MOV A,#-0x8
\ 000002 12.... LCALL ?FUNC_ENTER_XDATA
\ 000005 ; Saved register size: 8
\ 000005 ; Auto size: 0
\ 000005 E9 MOV A,R1
\ 000006 FE MOV R6,A
123 BYTE c;
124 c = (x>>4)& 0xf;
\ 000007 EE MOV A,R6
\ 000008 C4 SWAP A
\ 000009 540F ANL A,#0xf
\ 00000B FF MOV R7,A
125 if (c > 9) halPutch('A'+c-10);
\ 00000C EF MOV A,R7
\ 00000D C3 CLR C
\ 00000E 940A SUBB A,#0xa
\ 000010 4009 JC ??conPrintUINT8_noleader_0
\ 000012 ; Setup parameters for call to function halPutch
\ 000012 7437 MOV A,#0x37
\ 000014 2F ADD A,R7
\ 000015 F9 MOV R1,A
\ 000016 12.... LCALL halPutch
\ 000019 8007 SJMP ??conPrintUINT8_noleader_1
126 else halPutch('0'+c);
\ ??conPrintUINT8_noleader_0:
\ 00001B ; Setup parameters for call to function halPutch
\ 00001B 7430 MOV A,#0x30
\ 00001D 2F ADD A,R7
\ 00001E F9 MOV R1,A
\ 00001F 12.... LCALL halPutch
127 //LSDigit
128 c = x & 0xf;
\ ??conPrintUINT8_noleader_1:
\ 000022 740F MOV A,#0xf
\ 000024 5E ANL A,R6
\ 000025 FF MOV R7,A
129 if (c > 9) halPutch('A'+c-10);
\ 000026 EF MOV A,R7
\ 000027 C3 CLR C
\ 000028 940A SUBB A,#0xa
\ 00002A 4009 JC ??conPrintUINT8_noleader_2
\ 00002C ; Setup parameters for call to function halPutch
\ 00002C 7437 MOV A,#0x37
\ 00002E 2F ADD A,R7
\ 00002F F9 MOV R1,A
\ 000030 12.... LCALL halPutch
\ 000033 8007 SJMP ??conPrintUINT8_noleader_3
130 else halPutch('0'+c);
\ ??conPrintUINT8_noleader_2:
\ 000035 ; Setup parameters for call to function halPutch
\ 000035 7430 MOV A,#0x30
\ 000037 2F ADD A,R7
\ 000038 F9 MOV R1,A
\ 000039 12.... LCALL halPutch
131 }
\ ??conPrintUINT8_noleader_3:
\ 00003C 7F01 MOV R7,#0x1
\ 00003E 02.... LJMP ?FUNC_LEAVE_XDATA
132
\ In segment NEAR_CODE, align 1, keep-with-next
133 void conPrintUINT8 (UINT8 x) {
\ conPrintUINT8:
\ 000000 EE MOV A,R6
\ 000001 C0E0 PUSH A
\ 000003 ; Saved register size: 1
\ 000003 ; Auto size: 0
\ 000003 E9 MOV A,R1
\ 000004 FE MOV R6,A
134 conPrintROMString("0x");
\ 000005 ; Setup parameters for call to function conPrintROMString_func
\ 000005 7A.. MOV R2,#(??xxxxromstr_1 & 0xff)
\ 000007 7B.. MOV R3,#((??xxxxromstr_1 >> 8) & 0xff)
\ 000009 12.... LCALL conPrintROMString_func
135 conPrintUINT8_noleader(x);
\ 00000C ; Setup parameters for call to function conPrintUINT8_noleader
\ 00000C EE MOV A,R6
\ 00000D F9 MOV R1,A
\ 00000E 12.... LCALL conPrintUINT8_noleader
136 }
\ 000011 D0E0 POP A
\ 000013 FE MOV R6,A
\ 000014 22 RET
\ In segment CODE_C, align 1
\ ??xxxxromstr_1:
\ 000000 307800 DB "0x"
137
\ In segment NEAR_CODE, align 1, keep-with-next
138 void conPrintUINT16 (UINT16 x) {
\ conPrintUINT16:
\ 000000 74F8 MOV A,#-0x8
\ 000002 12.... LCALL ?FUNC_ENTER_XDATA
\ 000005 ; Saved register size: 8
\ 000005 ; Auto size: 0
\ 000005 EA MOV A,R2
\ 000006 FE MOV R6,A
\ 000007 EB MOV A,R3
\ 000008 FF MOV R7,A
139 BYTE c;
140
141 conPrintROMString("0x");
\ 000009 ; Setup parameters for call to function conPrintROMString_func
\ 000009 7A.. MOV R2,#(??xxxxromstr_2 & 0xff)
\ 00000B 7B.. MOV R3,#((??xxxxromstr_2 >> 8) & 0xff)
\ 00000D 12.... LCALL conPrintROMString_func
142 c = (x >> 8);
\ 000010 EF MOV A,R7
\ 000011 F9 MOV R1,A
\ 000012 E9 MOV A,R1
\ 000013 F5.. MOV ?V0 + 0,A
143 conPrintUINT8_noleader(c);
\ 000015 ; Setup parameters for call to function conPrintUINT8_noleader
\ 000015 A9.. MOV R1,?V0 + 0
\ 000017 12.... LCALL conPrintUINT8_noleader
144 c = (BYTE) x;
\ 00001A EE MOV A,R6
\ 00001B F5.. MOV ?V0 + 0,A
145 conPrintUINT8_noleader(c);
\ 00001D ; Setup parameters for call to function conPrintUINT8_noleader
\ 00001D A9.. MOV R1,?V0 + 0
\ 00001F 12.... LCALL conPrintUINT8_noleader
146 }
\ 000022 7F01 MOV R7,#0x1
\ 000024 02.... LJMP ?FUNC_LEAVE_XDATA
\ In segment CODE_C, align 1
\ ??xxxxromstr_2:
\ 000000 307800 DB "0x"
147
148
\ In segment NEAR_CODE, align 1, keep-with-next
149 void conPrintUINT32 (UINT32 x) {
\ conPrintUINT32:
\ 000000 74F1 MOV A,#-0xf
\ 000002 12.... LCALL ?FUNC_ENTER_XDATA
\ 000005 ; Saved register size: 15
\ 000005 ; Auto size: 0
\ 000005 8A.. MOV ?V0 + 0,R2
\ 000007 8B.. MOV ?V0 + 1,R3
\ 000009 8C.. MOV ?V0 + 2,R4
\ 00000B 8D.. MOV ?V0 + 3,R5
150 BYTE c;
151 conPrintROMString("0x");
\ 00000D ; Setup parameters for call to function conPrintROMString_func
\ 00000D 7A.. MOV R2,#(??xxxxromstr_3 & 0xff)
\ 00000F 7B.. MOV R3,#((??xxxxromstr_3 >> 8) & 0xff)
\ 000011 12.... LCALL conPrintROMString_func
152 c = (x >> 24);
\ 000014 85.... MOV ?V0 + 4,?V0 + 0
\ 000017 85.... MOV ?V0 + 5,?V0 + 1
\ 00001A 85.... MOV ?V0 + 6,?V0 + 2
\ 00001D 85.... MOV ?V0 + 7,?V0 + 3
\ 000020 7418 MOV A,#0x18
\ 000022 78.. MOV R0,#?V0 + 4
\ 000024 12.... LCALL ?UL_SHR
153 conPrintUINT8_noleader(c);
\ 000027 ; Setup parameters for call to function conPrintUINT8_noleader
\ 000027 A9.. MOV R1,?V0 + 4
\ 000029 12.... LCALL conPrintUINT8_noleader
154 c = (x >> 16);
\ 00002C 85.... MOV ?V0 + 4,?V0 + 0
\ 00002F 85.... MOV ?V0 + 5,?V0 + 1
\ 000032 85.... MOV ?V0 + 6,?V0 + 2
\ 000035 85.... MOV ?V0 + 7,?V0 + 3
\ 000038 7410 MOV A,#0x10
\ 00003A 78.. MOV R0,#?V0 + 4
\ 00003C 12.... LCALL ?UL_SHR
155 conPrintUINT8_noleader(c);
\ 00003F ; Setup parameters for call to function conPrintUINT8_noleader
\ 00003F A9.. MOV R1,?V0 + 4
\ 000041 12.... LCALL conPrintUINT8_noleader
156 c = (x >> 8);
157 conPrintUINT8_noleader(c);
\ 000044 ; Setup parameters for call to function conPrintUINT8_noleader
\ 000044 A9.. MOV R1,?V0 + 1
\ 000046 12.... LCALL conPrintUINT8_noleader
158 c = x;
159 conPrintUINT8_noleader(c);
\ 000049 ; Setup parameters for call to function conPrintUINT8_noleader
\ 000049 A9.. MOV R1,?V0 + 0
\ 00004B 12.... LCALL conPrintUINT8_noleader
160 }
\ 00004E 7F08 MOV R7,#0x8
\ 000050 02.... LJMP ?FUNC_LEAVE_XDATA
\ In segment CODE_C, align 1
\ ??xxxxromstr_3:
\ 000000 307800 DB "0x"
161
162 //assumed little endian
\ In segment NEAR_CODE, align 1, keep-with-next
163 void conPrintLADDR_bytes(BYTE *ptr) {
\ conPrintLADDR_bytes:
\ 000000 74F5 MOV A,#-0xb
\ 000002 12.... LCALL ?FUNC_ENTER_XDATA
\ 000005 ; Saved register size: 11
\ 000005 ; Auto size: 0
\ 000005 EA MOV A,R2
\ 000006 FE MOV R6,A
\ 000007 EB MOV A,R3
\ 000008 FF MOV R7,A
164 char i;
165 conPrintROMString("0x");
\ 000009 ; Setup parameters for call to function conPrintROMString_func
\ 000009 7A.. MOV R2,#(??xxxxromstr_4 & 0xff)
\ 00000B 7B.. MOV R3,#((??xxxxromstr_4 >> 8) & 0xff)
\ 00000D 12.... LCALL conPrintROMString_func
166 for (i=8;i!=0;i--){
\ 000010 75..08 MOV ?V0 + 0,#0x8
\ ??conPrintLADDR_bytes_0:
\ 000013 E5.. MOV A,?V0 + 0
\ 000015 6021 JZ ??conPrintLADDR_bytes_1
167 conPrintUINT8_noleader(*(ptr+i-1));
\ 000017 ; Setup parameters for call to function conPrintUINT8_noleader
\ 000017 85.... MOV ?V0 + 2,?V0 + 0
\ 00001A 75..00 MOV ?V0 + 3,#0x0
\ 00001D EE MOV A,R6
\ 00001E 25.. ADD A,?V0 + 2
\ 000020 F8 MOV R0,A
\ 000021 EF MOV A,R7
\ 000022 35.. ADDC A,?V0 + 3
\ 000024 F9 MOV R1,A
\ 000025 74FF MOV A,#-0x1
\ 000027 28 ADD A,R0
\ 000028 F582 MOV DPL,A
\ 00002A 74FF MOV A,#-0x1
\ 00002C 39 ADDC A,R1
\ 00002D F583 MOV DPH,A
\ 00002F E0 MOVX A,@DPTR
\ 000030 F9 MOV R1,A
\ 000031 12.... LCALL conPrintUINT8_noleader
168 }
\ 000034 15.. DEC ?V0 + 0
\ 000036 80DB SJMP ??conPrintLADDR_bytes_0
169 }
\ ??conPrintLADDR_bytes_1:
\ 000038 7F04 MOV R7,#0x4
\ 00003A 02.... LJMP ?FUNC_LEAVE_XDATA
\ In segment CODE_C, align 1
\ ??xxxxromstr_4:
\ 000000 307800 DB "0x"
170
\ In segment NEAR_CODE, align 1, keep-with-next
171 void conPrintLADDR(LADDR *laddr){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -