📄 key.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-90508 Sat Nov 10 13:01:07 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 rdata_2,global,class=BANK2,space=1,delta
+ =1
8 psect idata_2,global,class=CODE,delta=2
9 psect text3,local,class=CODE,delta=2
10 psect text4,local,class=CODE,delta=2
11 psect text5,local,class=CODE,delta=2
12 psect rbss_2,global,class=BANK2,space=1,delta=
+ 1
13 psect rbss_0,global,class=BANK0,space=1,delta=
+ 1
14 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
15 0000
16 0000
17 0000
18 0000
19 0000
20 0000
21 0000
22 0000
23 0000
24 0000
25
26 psect __Z90508RS_
27 0145
28 0145
29
30 psect const1
31 0800 0782 addwf 2
32 0801 _KeyValMap
33 0801 3400 retlw 0
34 0802 3401 retlw 1
35 0803 3402 retlw 2
36 0804 3403 retlw 3
37 0805 3404 retlw 4
38 0806 3405 retlw 5
39 0807 3406 retlw 6
40 0808 3407 retlw 7
41 0809 3408 retlw 8
42 080A 3409 retlw 9
43 080B 340A retlw 10
44 080C 340B retlw 11
45 080D 340C retlw 12
46 080E 340D retlw 13
47 080F 340E retlw 14
48 0810 340F retlw 15
49 0811 3410 retlw 16
50 0812 3411 retlw 17
51 0813 3412 retlw 18
52 0814 3413 retlw 19
53 0815 3414 retlw 20
54 0816 3415 retlw 21
55 0817 3416 retlw 22
56 0818 3417 retlw 23
57 0819 3418 retlw 24
58 081A 3441 retlw 65
59 081B 3442 retlw 66
60 081C 3443 retlw 67
61 081D 3400 retlw 0
62 081E 3400 retlw 0
63 081F 3400 retlw 0
64 0820 3400 retlw 0
65 0821 3400 retlw 0
66 0822 3400 retlw 0
67 0823 3400 retlw 0
68 0824 3400 retlw 0
69 0825 3400 retlw 0
70 0826 3400 retlw 0
71 0827 3400 retlw 0
72 0828 3400 retlw 0
73 0829 3400 retlw 0
74 082A 3400 retlw 0
75 082B 3400 retlw 0
76
77 psect text1
78 0440 _RangeKeyValue
79 ; _tranbase assigned to ?a_RangeKeyValue+0
80 0000 _RangeKeyValue$tranbase set ?a_RangeKeyValue
81 ; _ArrCou assigned to ?a_RangeKeyValue+1
82 0000 _RangeKeyValue$ArrCou set ?a_RangeKeyValue+1
83 ; _icount assigned to ?a_RangeKeyValue+2
84 0000 _RangeKeyValue$icount set ?a_RangeKeyValue+2
85 ; _keyvalue_a assigned to ?a_RangeKeyValue+3
86 0000 _RangeKeyValue$keyvalue_a set ?a_RangeKeyValue+
+ 3
87 ; _KeyUnitCou assigned to ?a_RangeKeyValue+4
88 0000 _RangeKeyValue$KeyUnitCou set ?a_RangeKeyValue+
+ 4
89 ; _KeyValueStructTemp assigned to ?a_RangeKeyVa
+ lue+5
90 0000 _RangeKeyValue$KeyValueStructTemp set ?a_RangeK
+ eyValue+5
91 ; _KeyBitValueStruct assigned to ?a_RangeKeyVal
+ ue+7
92 0000 _RangeKeyValue$KeyBitValueStruct set ?a_RangeKe
+ yValue+7
93 ;key.c: 127: KEYBITVALUESTRUCT KeyBitValueStruc
+ t;
94 0440 0183 clrf 3 ;select bank 0
95 0441 01C8 clrf ?a_RangeKeyValue+2
96 0442 01C7 clrf ?a_RangeKeyValue+1
97 0443 01CA clrf ?a_RangeKeyValue+4
98 0444 01C6 clrf ?a_RangeKeyValue
99 ;key.c: 131: KeyBitValueStruct.allbits = 0;
100 0445 01CD clrf ?a_RangeKeyValue+7
101 0446 01CE clrf ?a_RangeKeyValue+8
102 0447 01CF clrf ?a_RangeKeyValue+9
103 0448 01D0 clrf ?a_RangeKeyValue+10
104 ;key.c: 132: KeyValueStructTemp.allbits = 0;
105 0449 01CB clrf ?a_RangeKeyValue+5
106 044A 01CC clrf ?a_RangeKeyValue+6
107 ;key.c: 133: while(++icount <= 6)
108 044B 2CE8 goto l17
109 044C l18
110 ;key.c: 134: {
111 044C 0847 movf ?a_RangeKeyValue+1,w
112 044D 3E36 addlw _KeyInput^(0+256)
113 044E 0084 movwf 4
114 044F 1783 bsf 3,7
115 0450 1C00 btfss 0,0
116 0451 2C72 goto l20
117 ;key.c: 136: {
118 0452 0848 movf ?a_RangeKeyValue+2,w
119 0453 00C9 movwf ?a_RangeKeyValue+3
120 ;key.c: 138: KeyUnitCou++;
121 0454 0ACA incf ?a_RangeKeyValue+4
122 ;key.c: 140: KeyBitValueStruct.allbits |= 1 <<
+ (keyvalue_a - 1);
123 0455 0349 decf ?a_RangeKeyValue+3,w
124 0456 00F2 movwf btemp+2
125 0457 3001 movlw 1
126 0458 00F0 movwf btemp
127 0459 3000 movlw 0
128 045A 01F1 clrf btemp+1
129 045B 0AF2 incf btemp+2
130 045C 2C60 goto u24
131 045D u25
132 045D 1003 bcf 3,0
133 045E 0DF0 rlf btemp
134 045F 0DF1 rlf btemp+1
135 0460 u24
136 0460 0BF2 decfsz btemp+2
137 0461 2C5D goto u25
138 0462 0870 movf btemp,w
139 0463 00F0 movwf btemp
140 0464 0871 movf btemp+1,w
141 0465 3000 movlw 0
142 0466 1BF1 btfsc btemp+1,7
143 0467 30FF movlw 255
144 0468 00F2 movwf btemp+2
145 0469 00F3 movwf btemp+3
146 046A 0870 movf btemp,w
147 046B 04CD iorwf ?a_RangeKeyValue+7
148 046C 0871 movf btemp+1,w
149 046D 04CE iorwf ?a_RangeKeyValue+8
150 046E 0872 movf btemp+2,w
151 046F 04CF iorwf ?a_RangeKeyValue+9
152 0470 0873 movf btemp+3,w
153 0471 04D0 iorwf ?a_RangeKeyValue+10
154 0472 l20
155 ;key.c: 141: }
156 0472 0847 movf ?a_RangeKeyValue+1,w
157 0473 3E36 addlw _KeyInput^(0+256)
158 0474 0084 movwf 4
159 0475 1783 bsf 3,7
160 0476 1C80 btfss 0,1
161 0477 2C99 goto l21
162 ;key.c: 144: {
163 0478 0848 movf ?a_RangeKeyValue+2,w
164 0479 3E06 addlw 6
165 047A 00C9 movwf ?a_RangeKeyValue+3
166 ;key.c: 146: KeyUnitCou++;
167 047B 0ACA incf ?a_RangeKeyValue+4
168 ;key.c: 147: KeyBitValueStruct.allbits |= 1 <<
+ (keyvalue_a - 1);
169 047C 0349 decf ?a_RangeKeyValue+3,w
170 047D 00F2 movwf btemp+2
171 047E 3001 movlw 1
172 047F 00F0 movwf btemp
173 0480 3000 movlw 0
174 0481 01F1 clrf btemp+1
175 0482 0AF2 incf btemp+2
176 0483 2C87 goto u44
177 0484 u45
178 0484 1003 bcf 3,0
179 0485 0DF0 rlf btemp
180 0486 0DF1 rlf btemp+1
181 0487 u44
182 0487 0BF2 decfsz btemp+2
183 0488 2C84 goto u45
184 0489 0870 movf btemp,w
185 048A 00F0 movwf btemp
186 048B 0871 movf btemp+1,w
187 048C 3000 movlw 0
188 048D 1BF1 btfsc btemp+1,7
189 048E 30FF movlw 255
190 048F 00F2 movwf btemp+2
191 0490 00F3 movwf btemp+3
192 0491 0870 movf btemp,w
193 0492 04CD iorwf ?a_RangeKeyValue+7
194 0493 0871 movf btemp+1,w
195 0494 04CE iorwf ?a_RangeKeyValue+8
196 0495 0872 movf btemp+2,w
197 0496 04CF iorwf ?a_RangeKeyValue+9
198 0497 0873 movf btemp+3,w
199 0498 04D0 iorwf ?a_RangeKeyValue+10
200 0499 l21
201 ;key.c: 148: }
202 0499 0847 movf ?a_RangeKeyValue+1,w
203 049A 3E36 addlw _KeyInput^(0+256)
204 049B 0084 movwf 4
205 049C 1783 bsf 3,7
206 049D 1D00 btfss 0,2
207 049E 2CC0 goto l22
208 ;key.c: 151: {
209 049F 0848 movf ?a_RangeKeyValue+2,w
210 04A0 3E0C addlw 12
211 04A1 00C9 movwf ?a_RangeKeyValue+3
212 ;key.c: 153: KeyUnitCou++;
213 04A2 0ACA incf ?a_RangeKeyValue+4
214 ;key.c: 154: KeyBitValueStruct.allbits |= 1 <<
+ (keyvalue_a - 1);
215 04A3 0349 decf ?a_RangeKeyValue+3,w
216 04A4 00F2 movwf btemp+2
217 04A5 3001 movlw 1
218 04A6 00F0 movwf btemp
219 04A7 3000 movlw 0
220 04A8 01F1 clrf btemp+1
221 04A9 0AF2 incf btemp+2
222 04AA 2CAE goto u64
223 04AB u65
224 04AB 1003 bcf 3,0
225 04AC 0DF0 rlf btemp
226 04AD 0DF1 rlf btemp+1
227 04AE u64
228 04AE 0BF2 decfsz btemp+2
229 04AF 2CAB goto u65
230 04B0 0870 movf btemp,w
231 04B1 00F0 movwf btemp
232 04B2 0871 movf btemp+1,w
233 04B3 3000 movlw 0
234 04B4 1BF1 btfsc btemp+1,7
235 04B5 30FF movlw 255
236 04B6 00F2 movwf btemp+2
237 04B7 00F3 movwf btemp+3
238 04B8 0870 movf btemp,w
239 04B9 04CD iorwf ?a_RangeKeyValue+7
240 04BA 0871 movf btemp+1,w
241 04BB 04CE iorwf ?a_RangeKeyValue+8
242 04BC 0872 movf btemp+2,w
243 04BD 04CF iorwf ?a_RangeKeyValue+9
244 04BE 0873 movf btemp+3,w
245 04BF 04D0 iorwf ?a_RangeKeyValue+10
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -