📄 main.lst
字号:
HI-TECH Software PICC Macro Assembler V9.50PL2
Sun Nov 09 09:42:45 2008
1 processor 16F689
2 opt pw 79
3 psect text0,local,class=CODE,delta=2
4 psect text3,local,class=CODE,delta=2
5 psect text7,local,class=CODE,delta=2
6 psect intcode,global,class=CODE,delta=2
7 psect intsave_0,global,ovrld,class=COMBANK,spa
+ ce=1,delta=1
8 psect intret,global,class=CODE,delta=2
9 psect intentry,global,class=CODE,delta=2
10 psect intsave,global,class=BANK0,space=1,delta
+ =1
11 psect text8,local,class=CODE,delta=2
12 psect text9,local,class=CODE,delta=2
13 psect strings,global,class=STRING,delta=2
14 psect rbss_0,global,class=BANK0,space=1,delta=
+ 1
15 psect rbss_1,global,class=BANK1,space=1,delta=
+ 1
16 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
17 0000
18 0000
19 0000
20 0000
21 0000
22 0000
23 0000
24 0000
25 0000
26 0000
27
28 psect text0
29 048E _DELAY_xNOP
30 ; _ns assigned to ?a_DELAY_xNOP+0
31 0000 _DELAY_xNOP$ns set ?a_DELAY_xNOP
32 ; _i assigned to ?a_DELAY_xNOP+1
33 0000 _DELAY_xNOP$i set ?a_DELAY_xNOP+1
34 ;_ns stored from w
35 048E 0183 clrf 3 ;select bank 0
36 048F 00B7 movwf ?a_DELAY_xNOP
37 ;delay.h: 2: void DELAY_xNOP(unsigned char ns)
38 0490 01B8 clrf ?a_DELAY_xNOP+1
39 0491 2C93 goto l5
40 0492 l2
41 ;delay.h: 6: {
42 0492 0AB8 incf ?a_DELAY_xNOP+1
43 0493 l5
44 0493 0837 movf ?a_DELAY_xNOP,w
45 0494 0238 subwf ?a_DELAY_xNOP+1,w
46 0495 1803 btfsc 3,0
47 0496 0008 return
48 0497 2C92 goto l2
49
50 psect text3
51 04A3 _time1_initial
52 ;function.h: 27: void time1_initial()
53 04A3 0183 clrf 3 ;select bank 0
54 04A4 0190 clrf 16
55 ;function.h: 30: TMR1H=0XF8;
56 04A5 30F8 movlw -8
57 04A6 008F movwf 15 ;volatile
58 ;function.h: 31: TMR1L=0X2F;
59 04A7 302F movlw 47
60 04A8 008E movwf 14 ;volatile
61 ;function.h: 32: TMR1ON=1;
62 04A9 1410 bsf 16,0
63 ;function.h: 33: PIR1=0;
64 04AA 018C clrf 12 ;volatile
65 ;function.h: 34: PIR2=0;
66 04AB 018D clrf 13 ;volatile
67 ;function.h: 35: RCREG=RCREG;
68 04AC 081A movf 26,w ;volatile
69 04AD 009A movwf 26 ;volatile
70 ;function.h: 36: PIE1=0;
71 04AE 1683 bsf 3,5
72 04AF 018C clrf 12
73 ;function.h: 37: PIE2=0;
74 04B0 018D clrf 13
75 ;function.h: 38: RCIE=1;
76 04B1 168C bsf 12,5
77 ;function.h: 39: TMR1IE=1;
78 04B2 140C bsf 12,0
79 ;function.h: 40: PORTA=PORTA;
80 04B3 1283 bcf 3,5
81 04B4 0805 movf 5,w ;volatile
82 04B5 0085 movwf 5 ;volatile
83 ;function.h: 41: RABIF=0;
84 04B6 100B bcf 11,0
85 ;function.h: 42: INTCON=0XC0;
86 04B7 30C0 movlw -64
87 04B8 008B movwf 11 ;volatile
88 ;function.h: 43: }
89 04B9 0008 return ;W free
90
91 psect intcode
92 000B _int_dispose
93 000B int_func
94 ;function.h: 104: void interrupt int_dispose(vo
+ id)
95 000B 0183 clrf 3 ;select bank 0
96
97 psect intsave_0
98 0077 saved_w
99 0077 ds 1
100
101 psect intret
102 000C 0866 movf saved_pclath,w
103 000D 008A movwf 10
104 000E int_restore
105 000E 0865 movf saved_status,w
106 000F 0083 movwf 3
107 0010 0EF7 swapf saved_w
108 0011 0E77 swapf saved_w,w
109 0012 0009 retfie
110
111 psect intentry
112 0004 int_entry
113 0004 00F7 movwf saved_w
114 0005 0803 movf 3,w
115 0006 0183 clrf 3
116 0007 00E5 movwf saved_status
117 0008 080A movf 10,w
118 0009 00E6 movwf saved_pclath
119 000A 018A clrf 10
120 ; param _date assigned to ?_int_to_char+0
121 0000 _int_to_char$date set ?_int_to_char
122 ; param _result assigned to ?_int_to_char
+ +2
123 0000 _int_to_char$result set ?_int_to_char+2
124
125 psect intsave
126 0065 saved_status
127 0065 ds 1
128 0066 saved_pclath
129 0066 ds 1
130
131 psect text8
132 04BA _int_to_char
133 ; _i assigned to ?a_int_to_char+0
134 0000 _int_to_char$i set ?a_int_to_char
135 ; _j assigned to ?a_int_to_char+1
136 0000 _int_to_char$j set ?a_int_to_char+1
137 ; _temp assigned to ?a_int_to_char+2
138 0000 _int_to_char$temp set ?a_int_to_char+2
139 ;sd.h: 13: void int_to_char(unsigned int date,u
+ nsigned char *result)
140 04BA 0183 clrf 3 ;select bank 0
141 04BB 01CE clrf ?a_int_to_char
142 04BC 01CF clrf ?a_int_to_char+1
143 ;sd.h: 16: char temp=0;
144 04BD 01D0 clrf ?a_int_to_char+2
145 ;sd.h: 19: temp=(date/1000)%10;
146 04BE 30E8 movlw 232
147 04BF 00F2 movwf btemp+2
148 04C0 3003 movlw 3
149 04C1 00F3 movwf btemp+3
150 04C2 084C movf ?_int_to_char+1,w
151 04C3 00F1 movwf btemp+1
152 04C4 084B movf ?_int_to_char,w
153 04C5 00F0 movwf btemp
154 04C6 118A 27C6 fcall lwdiv
155 04C8 0874 movf btemp+4,w
156 04C9 00F0 movwf btemp
157 04CA 0875 movf btemp+5,w
158 04CB 00F1 movwf btemp+1
159 04CC 300A movlw 10
160 04CD 00F2 movwf btemp+2
161 04CE 3000 movlw 0
162 04CF 01F3 clrf btemp+3
163 04D0 118A 27C6 fcall lwmod
164 04D2 0870 movf btemp,w
165 04D3 00D0 movwf ?a_int_to_char+2
166 ;sd.h: 20: result[0]=temp+0x30;
167 04D4 084D movf ?_int_to_char+2,w
168 04D5 0084 movwf 4
169 04D6 1383 bcf 3,7
170 04D7 0850 movf ?a_int_to_char+2,w
171 04D8 3E30 addlw 48
172 04D9 0080 movwf 0
173 ;sd.h: 21: temp=(date/100)%10;
174 04DA 3064 movlw 100
175 04DB 00F2 movwf btemp+2
176 04DC 01F3 clrf btemp+3
177 04DD 084C movf ?_int_to_char+1,w
178 04DE 00F1 movwf btemp+1
179 04DF 084B movf ?_int_to_char,w
180 04E0 00F0 movwf btemp
181 04E1 118A 27C6 fcall lwdiv
182 04E3 0874 movf btemp+4,w
183 04E4 00F0 movwf btemp
184 04E5 0875 movf btemp+5,w
185 04E6 00F1 movwf btemp+1
186 04E7 300A movlw 10
187 04E8 00F2 movwf btemp+2
188 04E9 3000 movlw 0
189 04EA 01F3 clrf btemp+3
190 04EB 118A 27C6 fcall lwmod
191 04ED 0870 movf btemp,w
192 04EE 00D0 movwf ?a_int_to_char+2
193 ;sd.h: 22: result[1]=temp+0x30;
194 04EF 0A4D incf ?_int_to_char+2,w
195 04F0 0084 movwf 4
196 04F1 1383 bcf 3,7
197 04F2 0850 movf ?a_int_to_char+2,w
198 04F3 3E30 addlw 48
199 04F4 0080 movwf 0
200 ;sd.h: 23: temp=(date/10)%10;
201 04F5 300A movlw 10
202 04F6 00F2 movwf btemp+2
203 04F7 01F3 clrf btemp+3
204 04F8 084C movf ?_int_to_char+1,w
205 04F9 00F1 movwf btemp+1
206 04FA 084B movf ?_int_to_char,w
207 04FB 00F0 movwf btemp
208 04FC 118A 27C6 fcall lwdiv
209 04FE 0874 movf btemp+4,w
210 04FF 00F0 movwf btemp
211 0500 0875 movf btemp+5,w
212 0501 00F1 movwf btemp+1
213 0502 300A movlw 10
214 0503 00F2 movwf btemp+2
215 0504 3000 movlw 0
216 0505 01F3 clrf btemp+3
217 0506 118A 27C6 fcall lwmod
218 0508 0870 movf btemp,w
219 0509 00D0 movwf ?a_int_to_char+2
220 ;sd.h: 24: result[2]=temp+0x30;
221 050A 084D movf ?_int_to_char+2,w
222 050B 3E02 addlw 2
223 050C 0084 movwf 4
224 050D 1383 bcf 3,7
225 050E 0850 movf ?a_int_to_char+2,w
226 050F 3E30 addlw 48
227 0510 0080 movwf 0
228 ;sd.h: 25: temp=(date)%10;
229 0511 300A movlw 10
230 0512 00F2 movwf btemp+2
231 0513 01F3 clrf btemp+3
232 0514 084C movf ?_int_to_char+1,w
233 0515 00F1 movwf btemp+1
234 0516 084B movf ?_int_to_char,w
235 0517 00F0 movwf btemp
236 0518 118A 27C6 118A fcall lwmod
237 051B 0870 movf btemp,w
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -