📄 ht48f06edemo.lst
字号:
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次1
; 32: {
32 0000 __pcc EQU [017H]
32 0000 __pc EQU [016H]
32 0000 __pbc EQU [015H]
32 0000 __pb EQU [014H]
32 0000 __pac EQU [013H]
32 0000 __pa EQU [012H]
32 0000 __tmrc EQU [0eH]
32 0000 __tmr EQU [0dH]
32 0000 __intc EQU [0bH]
32 0000 __status EQU [0aH]
32 0000 __wdts EQU [09H]
32 0000 __tblh EQU [08H]
32 0000 __tblp EQU [07H]
32 0000 __pcl EQU [06H]
32 0000 __acc EQU [05H]
32 0000 __bp EQU [04H]
32 0000 __mp1 EQU [03H]
32 0000 __iar1 EQU [02H]
32 0000 __mp0 EQU [01H]
32 0000 __iar0 EQU [00H]
32 0000 @MAIN .SECTION 'CODE'
32 0000 _main PROC
32 0000 begin:
; 35: _bp = 1;
35 0000 0F01 MOV A,01h
35 0001 0084 MOV __bp,A
; 36: _mp1 = 0x40;
36 0002 0F40 MOV A,040h
36 0003 0083 MOV __mp1,A
; 38: EWEN();
38 0004 2000 E CALL _EWEN
; 40: ERAL(); //Test1, Erase All test
40 0005 2000 E CALL _ERAL
; 41: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
41 0006 1F00 R CLR CR1
41 0007 2800 R JMP L5
41 0008 L2:
; 43: if(READ(EEADDR) != 0xff)
43 0008 0700 R MOV A,CR1
43 0009 0080 E MOV READ0,A
43 000A 2000 E CALL _READ
43 000B 0080 R MOV b0_1,A
43 000C 0700 R MOV A,b0_1
43 000D 0CFF XOR A,0ffh
43 000E 3D0A SZ [0ah].2
43 000F 2800 R JMP L6
; 44: goto Error;
44 0010 2800 R JMP L8
44 0011 L6:
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次2
44 0011 L3:
; 41: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
41 0011 1480 R INC CR1
文件:HT48F06EDEMO.C 盛群编译器版本 2.86 页次2
41 0012 L5:
41 0012 0700 R MOV A,CR1
41 0013 0A80 SUB A,080h
41 0014 380A SNZ [0ah].0
41 0015 2800 R JMP L2
; 47: ERAL(); //Test2, Write All using 55 test
47 0016 2000 E CALL _ERAL
; 48: WRAL(0x55);
48 0017 0F55 MOV A,055h
48 0018 0080 E MOV WRAL0,A
48 0019 2000 E CALL _WRAL
; 49: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
49 001A 1F00 R CLR CR1
49 001B 2800 R JMP L12
49 001C L9:
; 51: if(READ(EEADDR) != 0x55)
51 001C 0700 R MOV A,CR1
51 001D 0080 E MOV READ0,A
51 001E 2000 E CALL _READ
51 001F 0080 R MOV b0_1,A
51 0020 0700 R MOV A,b0_1
51 0021 0C55 XOR A,055h
51 0022 3D0A SZ [0ah].2
51 0023 2800 R JMP L13
; 52: goto Error;
52 0024 2800 R JMP L8
52 0025 L13:
52 0025 L10:
; 49: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
49 0025 1480 R INC CR1
49 0026 L12:
49 0026 0700 R MOV A,CR1
49 0027 0A80 SUB A,080h
49 0028 380A SNZ [0ah].0
49 0029 2800 R JMP L9
; 55: ERAL(); //Test3, Write All using AA test
55 002A 2000 E CALL _ERAL
; 56: WRAL(0xaa);
56 002B 0FAA MOV A,0aah
56 002C 0080 E MOV WRAL0,A
56 002D 2000 E CALL _WRAL
; 57: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
57 002E 1F00 R CLR CR1
57 002F 2800 R JMP L18
57 0030 L15:
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次3
; 59: if(READ(EEADDR) != 0xaa)
59 0030 0700 R MOV A,CR1
59 0031 0080 E MOV READ0,A
59 0032 2000 E CALL _READ
59 0033 0080 R MOV b0_1,A
59 0034 0700 R MOV A,b0_1
59 0035 0CAA XOR A,0aah
59 0036 3D0A SZ [0ah].2
文件:HT48F06EDEMO.C 盛群编译器版本 2.86 页次3
59 0037 2800 R JMP L19
; 60: goto Error;
60 0038 2800 R JMP L8
60 0039 L19:
60 0039 L16:
; 57: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
57 0039 1480 R INC CR1
57 003A L18:
57 003A 0700 R MOV A,CR1
57 003B 0A80 SUB A,080h
57 003C 380A SNZ [0ah].0
57 003D 2800 R JMP L15
; 63: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR=EEADDR+2) //Test4, Write one by one using 55 and AA test
63 003E 1F00 R CLR CR1
63 003F 2800 R JMP L24
63 0040 L21:
; 65: WRITE(EEADDR, 0x55);
65 0040 0700 R MOV A,CR1
65 0041 0080 E MOV WRITE0,A
65 0042 0F55 MOV A,055h
65 0043 0080 E MOV WRITE1,A
65 0044 2000 E CALL _WRITE
; 66: WRITE(EEADDR+1, 0xaa);
66 0045 1400 R INCA CR1
66 0046 0080 R MOV b0_1,A
66 0047 0700 R MOV A,b0_1
66 0048 0080 E MOV WRITE0,A
66 0049 0FAA MOV A,0aah
66 004A 0080 E MOV WRITE1,A
66 004B 2000 E CALL _WRITE
66 004C L22:
; 63: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR=EEADDR+2) //Test4, Write one by one using 55 and AA test
63 004C 0F02 MOV A,02h
63 004D 0380 R ADDM A,CR1
63 004E L24:
63 004E 0700 R MOV A,CR1
63 004F 0A80 SUB A,080h
63 0050 380A SNZ [0ah].0
63 0051 2800 R JMP L21
; 69: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR=EEADDR+2)
69 0052 1F00 R CLR CR1
69 0053 2800 R JMP L28
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次4
69 0054 L25:
; 71: if(READ(EEADDR) != 0x55)
71 0054 0700 R MOV A,CR1
71 0055 0080 E MOV READ0,A
71 0056 2000 E CALL _READ
71 0057 0080 R MOV b0_1,A
71 0058 0700 R MOV A,b0_1
71 0059 0C55 XOR A,055h
71 005A 3D0A SZ [0ah].2
71 005B 2800 R JMP L29
文件:HT48F06EDEMO.C 盛群编译器版本 2.86 页次4
; 72: goto Error;
72 005C 2800 R JMP L8
72 005D L29:
; 73: if(READ(EEADDR+1) != 0xaa)
73 005D 1400 R INCA CR1
73 005E 0080 R MOV b0_1,A
73 005F 0700 R MOV A,b0_1
73 0060 0080 E MOV READ0,A
73 0061 2000 E CALL _READ
73 0062 0080 R MOV b0_1,A
73 0063 0700 R MOV A,b0_1
73 0064 0CAA XOR A,0aah
73 0065 3D0A SZ [0ah].2
73 0066 2800 R JMP L31
; 74: goto Error;
74 0067 2800 R JMP L8
74 0068 L31:
74 0068 L26:
; 69: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR=EEADDR+2)
69 0068 0F02 MOV A,02h
69 0069 0380 R ADDM A,CR1
69 006A L28:
69 006A 0700 R MOV A,CR1
69 006B 0A80 SUB A,080h
69 006C 380A SNZ [0ah].0
69 006D 2800 R JMP L25
; 77: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++) //Test5, Write one by one using ADDRESS as the writing data test
77 006E 1F00 R CLR CR1
77 006F 2800 R JMP L36
77 0070 L33:
; 79: WRITE(EEADDR, EEADDR);
79 0070 0700 R MOV A,CR1
79 0071 0080 R MOV b0_1,A
79 0072 0700 R MOV A,b0_1
79 0073 0080 E MOV WRITE0,A
79 0074 0700 R MOV A,b0_1
79 0075 0080 E MOV WRITE1,A
79 0076 2000 E CALL _WRITE
79 0077 L34:
; 77: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++) //Test5, Write one by one using ADDRESS as the writing data test
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次5
77 0077 1480 R INC CR1
77 0078 L36:
77 0078 0700 R MOV A,CR1
77 0079 0A80 SUB A,080h
77 007A 380A SNZ [0ah].0
77 007B 2800 R JMP L33
; 82: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
82 007C 1F00 R CLR CR1
82 007D 2800 R JMP L40
82 007E L37:
; 84: if(READ(EEADDR) != EEADDR)
84 007E 0700 R MOV A,CR1
文件:HT48F06EDEMO.C 盛群编译器版本 2.86 页次5
84 007F 0080 E MOV READ0,A
84 0080 2000 E CALL _READ
84 0081 0080 R MOV b0_1,A
84 0082 0700 R MOV A,b0_1
84 0083 0400 R XOR A,CR1
84 0084 3D0A SZ [0ah].2
84 0085 2800 R JMP L41
; 85: goto Error;
85 0086 2800 R JMP L8
85 0087 L41:
85 0087 L38:
; 82: for(EEADDR=0 ; EEADDR<0x80 ; EEADDR++)
82 0087 1480 R INC CR1
82 0088 L40:
82 0088 0700 R MOV A,CR1
82 0089 0A80 SUB A,080h
82 008A 380A SNZ [0ah].0
82 008B 2800 R JMP L37
82 008C L43:
; 90: EWDS();
90 008C 2000 E CALL _EWDS
90 008D L44:
90 008D L45:
; 91: while(1);
91 008D 2800 R JMP L44
91 008E L8:
; 95: EWDS();
95 008E 2000 E CALL _EWDS
95 008F L47:
95 008F L48:
; 96: while(1);
96 008F 2800 R JMP L47
96 0090 L1:
; 97: }
97 0090 2800 R JMP $
97 0000 00 LOCAL b0_1 DB ?
; 33: UC EEADDR;
文件:HT48F06EDEMO.c 盛群编译器版本 2.86 页次6
33 0001 00 LOCAL CR1 DB ? ; EEADDR
33 0091 _main ENDP
33 0091 EXTERN WRITE1:BYTE
33 0091 EXTERN WRITE0:BYTE
33 0091 EXTERN WRAL0:BYTE
33 0091 EXTERN READ0:BYTE
33 0091 EXTERN _WRAL:NEAR
33 0091 EXTERN _ERAL:NEAR
33 0091 EXTERN _EWDS:NEAR
33 0091 EXTERN _EWEN:NEAR
33 0091 EXTERN _WRITE:NEAR
33 0091 EXTERN _READ:NEAR
; 31: void main(void)
31 0000 STARTSEC .SECTION 'CODE'
31 0000 STARTUP:
31 0000 0003 RET
31 0000 @CODE .SECTION AT 0 'CODE'
31 0000 2800 R JMP begin
31 0001 @DUMMY PROC
文件:HT48F06EDEMO.C 盛群编译器版本 2.86 页次6
31 0001 2000 R CALL _main
31 0002 @DUMMY ENDP
0 Errors
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -