📄 sled_s.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-90508 Sat Nov 10 14:20:29 2007
Licensed to: ONE
1 processor 16F648A
2 opt pw 79
3 psect __Z90508RS_,global,delta=1
4 psect strings,global,class=STRING,delta=2
5 psect const1,local,class=CONST,delta=2
6 psect text1,local,class=CODE,delta=2
7 psect text2,local,class=CODE,delta=2
8 psect rbss_1,global,class=BANK1,space=1,delta=
+ 1
9 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
10 0000
11 0000
12 0000
13 0000
14 0000
15 0000
16 0000
17 0000
18 0000
19 0000
20
21 psect __Z90508RS_
22 0123
23 0123
24
25 psect const1
26 0100 0782 addwf 2
27 0101 _LEDCode
28 0101 3403 retlw 3
29 0102 349F retlw -97
30 0103 3425 retlw 37
31 0104 340D retlw 13
32 0105 3499 retlw -103
33 0106 3449 retlw 73
34 0107 3441 retlw 65
35 0108 341F retlw 31
36 0109 3401 retlw 1
37 010A 3409 retlw 9
38
39 psect text1
40 0460 _CalculateSub
41 ;sled_s.c: 148: *p_aloneD = (char)(Digit/1000);
42 0460 0183 clrf 3 ;select bank 0
43 0461 0831 movf ?_CalculateSub+2,w
44 0462 0084 movwf 4
45 0463 1383 bcf 3,7
46 0464 30E8 movlw 232
47 0465 00F2 movwf btemp+2
48 0466 3003 movlw 3
49 0467 00F3 movwf btemp+3
50 0468 0830 movf ?_CalculateSub+1,w
51 0469 00F1 movwf btemp+1
52 046A 082F movf ?_CalculateSub,w
53 046B 00F0 movwf btemp
54 046C 118A 26EF fcall awdiv
55 046E 0874 movf btemp+4,w
56 046F 0080 movwf 0
57 ;sled_s.c: 149: Digit -= *p_aloneD++ * 1000;
58 0470 30E8 movlw 232
59 0471 00F2 movwf btemp+2
60 0472 3003 movlw 3
61 0473 00F3 movwf btemp+3
62 0474 0831 movf ?_CalculateSub+2,w
63 0475 0084 movwf 4
64 0476 1383 bcf 3,7
65 0477 0800 movf 0,w
66 0478 00F0 movwf btemp
67 0479 01F1 clrf btemp+1
68 047A 118A 2327 fcall awmul
69 047C 0874 movf btemp+4,w
70 047D 02AF subwf ?_CalculateSub
71 047E 1C03 btfss 3,0
72 047F 03B0 decf ?_CalculateSub+1
73 0480 0875 movf btemp+5,w
74 0481 02B0 subwf ?_CalculateSub+1
75 0482 0AB1 incf ?_CalculateSub+2
76 ;sled_s.c: 151: *p_aloneD = (char)(Digit/100);
77 0483 0831 movf ?_CalculateSub+2,w
78 0484 0084 movwf 4
79 0485 1383 bcf 3,7
80 0486 3064 movlw 100
81 0487 00F2 movwf btemp+2
82 0488 01F3 clrf btemp+3
83 0489 0830 movf ?_CalculateSub+1,w
84 048A 00F1 movwf btemp+1
85 048B 082F movf ?_CalculateSub,w
86 048C 00F0 movwf btemp
87 048D 118A 26EF fcall awdiv
88 048F 0874 movf btemp+4,w
89 0490 0080 movwf 0
90 ;sled_s.c: 152: Digit -= *p_aloneD++ * 100;
91 0491 3064 movlw 100
92 0492 00F2 movwf btemp+2
93 0493 01F3 clrf btemp+3
94 0494 0831 movf ?_CalculateSub+2,w
95 0495 0084 movwf 4
96 0496 1383 bcf 3,7
97 0497 0800 movf 0,w
98 0498 00F0 movwf btemp
99 0499 01F1 clrf btemp+1
100 049A 118A 2327 fcall awmul
101 049C 0874 movf btemp+4,w
102 049D 02AF subwf ?_CalculateSub
103 049E 1C03 btfss 3,0
104 049F 03B0 decf ?_CalculateSub+1
105 04A0 0875 movf btemp+5,w
106 04A1 02B0 subwf ?_CalculateSub+1
107 04A2 0AB1 incf ?_CalculateSub+2
108 ;sled_s.c: 154: *p_aloneD = (char)(Digit/10);
109 04A3 0831 movf ?_CalculateSub+2,w
110 04A4 0084 movwf 4
111 04A5 1383 bcf 3,7
112 04A6 300A movlw 10
113 04A7 00F2 movwf btemp+2
114 04A8 01F3 clrf btemp+3
115 04A9 0830 movf ?_CalculateSub+1,w
116 04AA 00F1 movwf btemp+1
117 04AB 082F movf ?_CalculateSub,w
118 04AC 00F0 movwf btemp
119 04AD 118A 26EF fcall awdiv
120 04AF 0874 movf btemp+4,w
121 04B0 0080 movwf 0
122 ;sled_s.c: 155: Digit -= *p_aloneD++ * 10;
123 04B1 300A movlw 10
124 04B2 00F2 movwf btemp+2
125 04B3 01F3 clrf btemp+3
126 04B4 0831 movf ?_CalculateSub+2,w
127 04B5 0084 movwf 4
128 04B6 1383 bcf 3,7
129 04B7 0800 movf 0,w
130 04B8 00F0 movwf btemp
131 04B9 01F1 clrf btemp+1
132 04BA 118A 2327 118A fcall awmul
133 04BD 0874 movf btemp+4,w
134 04BE 02AF subwf ?_CalculateSub
135 04BF 1C03 btfss 3,0
136 04C0 03B0 decf ?_CalculateSub+1
137 04C1 0875 movf btemp+5,w
138 04C2 02B0 subwf ?_CalculateSub+1
139 04C3 0AB1 incf ?_CalculateSub+2
140 ;sled_s.c: 157: *p_aloneD = (char)Digit;
141 04C4 0831 movf ?_CalculateSub+2,w
142 04C5 0084 movwf 4
143 04C6 1383 bcf 3,7
144 04C7 082F movf ?_CalculateSub,w
145 04C8 0080 movwf 0
146 ;sled_s.c: 158: p_aloneD = 0;
147 04C9 01B1 clrf ?_CalculateSub+2
148 ;sled_s.c: 159: }
149 04CA 0008 return
150 04CB _LedDrive
151 ; _SixCnt assigned to ?a_LedDrive+0
152 0000 _LedDrive$SixCnt set ?a_LedDrive
153 ; _TempLedData assigned to ?a_LedDrive+1
154 0000 _LedDrive$TempLedData set ?a_LedDrive+1
155 ;sled_s.c: 36: bank1 static char OffCnt;
156 04CB 3010 movlw 16
157 04CC 0183 clrf 3 ;select bank 0
158 04CD 00AC movwf ?a_LedDrive
159 ;sled_s.c: 39: unsigned int TempLedData=0;
160 04CE 01AD clrf ?a_LedDrive+1
161 04CF 01AE clrf ?a_LedDrive+2
162 ;sled_s.c: 41: if(ledControl.bits.once128ms)
163 04D0 1683 bsf 3,5
164 04D1 1C47 btfss _ledControl^(0+128),0 ;volatile
165 04D2 2CE3 goto l7
166 ;sled_s.c: 42: {
167 04D3 1047 bcf _ledControl^(0+128),0 ;volatile
168 ;sled_s.c: 44: ShowDigit = LedSSLink;
169 04D4 0850 movf _LedSSLink^(0+128),w
170 04D5 00CE movwf F369^(0+128)
171 04D6 0851 movf (_LedSSLink+1)^(0+128),w
172 04D7 00CF movwf (F369+1)^(0+128)
173 ;sled_s.c: 45: CalculateSub(ShowDigit,aloneD);
174 04D8 084E movf F369^(0+128),w
175 04D9 1283 bcf 3,5
176 04DA 00AF movwf ?_CalculateSub
177 04DB 1683 bsf 3,5
178 04DC 084F movf (F369+1)^(0+128),w
179 04DD 1283 bcf 3,5
180 04DE 00B0 movwf ?_CalculateSub+1
181 04DF 30D2 movlw _aloneD
182 04E0 00B1 movwf ?_CalculateSub+2
183 04E1 2460 118A fcall _CalculateSub
184 04E3 l7
185 ;sled_s.c: 46: }
186 04E3 1683 bsf 3,5
187 04E4 1CC7 btfss _ledControl^(0+128),1 ;volatile
188 04E5 2D3D goto l6
189 ;sled_s.c: 62: return;
190 ;sled_s.c: 64: ledControl.bits.refurbish = 0;
191 04E6 10C7 bcf _ledControl^(0+128),1 ;volatile
192 ;sled_s.c: 67: OffCnt++;
193 04E7 0ACD incf F368^(0+128)
194 ;sled_s.c: 68: switch (OffCnt)
195 04E8 2D13 goto l10
196 04E9 l11
197 ;sled_s.c: 69: {
198 ;sled_s.c: 71: {
199 04E9 3001 movlw _LEDCode shr (0+8)
200 04EA 008A movwf 10
201 04EB 0852 movf _aloneD^(0+128),w
202 04EC 2100 call ((_LEDCode+-1)& (0+2047))| (($)& (0+-2048
+ ))
203 04ED 118A pagesel $
204 04EE 1283 bcf 3,5
205 04EF 00AD movwf ?a_LedDrive+1
206 04F0 01AE clrf ?a_LedDrive+2
207 ;sled_s.c: 76: TempLedData |= 0x8000;
208 04F1 17AE bsf ?a_LedDrive+2,7
209 ;sled_s.c: 77: break;
210 04F2 2D24 goto l9
211 04F3 l12
212 ;sled_s.c: 78: }
213 ;sled_s.c: 81: {
214 04F3 3001 movlw _LEDCode shr (0+8)
215 04F4 008A movwf 10
216 04F5 0853 movf (_aloneD+1)^(0+128),w
217 04F6 2100 call ((_LEDCode+-1)& (0+2047))| (($)& (0+-2048
+ ))
218 04F7 118A pagesel $
219 04F8 1283 bcf 3,5
220 04F9 00AD movwf ?a_LedDrive+1
221 04FA 01AE clrf ?a_LedDrive+2
222 ;sled_s.c: 86: TempLedData |= 0x4000;
223 04FB 172E bsf ?a_LedDrive+2,6
224 ;sled_s.c: 87: break;
225 04FC 2D24 goto l9
226 04FD l13
227 ;sled_s.c: 88: }
228 ;sled_s.c: 90: {
229 04FD 3001 movlw _LEDCode shr (0+8)
230 04FE 008A movwf 10
231 04FF 0854 movf (_aloneD+2)^(0+128),w
232 0500 2100 call ((_LEDCode+-1)& (0+2047))| (($)& (0+-2048
+ ))
233 0501 118A pagesel $
234 0502 1283 bcf 3,5
235 0503 00AD movwf ?a_LedDrive+1
236 0504 01AE clrf ?a_LedDrive+2
237 ;sled_s.c: 95: TempLedData |= 0x2000;
238 0505 16AE bsf ?a_LedDrive+2,5
239 ;sled_s.c: 96: break;
240 0506 2D24 goto l9
241 0507 l14
242 ;sled_s.c: 97: }
243 ;sled_s.c: 99: {
244 0507 3001 movlw _LEDCode shr (0+8)
245 0508 008A movwf 10
246 0509 0855 movf (_aloneD+3)^(0+128),w
247 050A 2100 call ((_LEDCode+-1)& (0+2047))| (($)& (0+-2048
+ ))
248 050B 118A pagesel $
249 050C 1283 bcf 3,5
250 050D 00AD movwf ?a_LedDrive+1
251 050E 01AE clrf ?a_LedDrive+2
252 ;sled_s.c: 104: TempLedData |= 0x1000;
253 050F 162E bsf ?a_LedDrive+2,4
254 ;sled_s.c: 105: OffCnt=0;
255 0510 1683 bsf 3,5
256 0511 01CD clrf F368^(0+128)
257 ;sled_s.c: 106: break;
258 0512 2D24 goto l9
259 ;sled_s.c: 112: break;
260 0513 l10
261 0513 084D movf F368^(0+128),w
262 0514 3A01 xorlw 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -