1 1 ;--------------------------------------------------------
2 2 ; File Created by SDCC : FreeWare ANSI-C Compiler
3 3 ; Version 2.1.9Ga Sun Jan 16 17:31:24 2000
5 5 ;--------------------------------------------------------
7 7 ;--------------------------------------------------------
8 8 ; publics variables in this module
9 9 ;--------------------------------------------------------
11 11 ;--------------------------------------------------------
12 12 ; special function registers
13 13 ;--------------------------------------------------------
14 14 ;--------------------------------------------------------
15 15 ; special function bits
16 16 ;--------------------------------------------------------
17 17 ;--------------------------------------------------------
18 18 ; internal ram data
19 19 ;--------------------------------------------------------
21 0000 21 ___fs2uint_sloc0_1_0:
23 0004 23 ___fs2uint_sloc1_1_0:
25 25 ;--------------------------------------------------------
26 26 ; overlayable items in internal ram
27 27 ;--------------------------------------------------------
28 28 .area OSEG (OVR,DATA)
29 29 ;--------------------------------------------------------
30 30 ; indirectly addressable internal ram data
31 31 ;--------------------------------------------------------
33 33 ;--------------------------------------------------------
35 35 ;--------------------------------------------------------
37 37 ;--------------------------------------------------------
38 38 ; external ram data
39 39 ;--------------------------------------------------------
41 0000 41 ___fs2uint_a1_1_1:
43 0004 43 ___fs2uint_fl1_1_1:
45 0008 45 ___fs2uint_exp_1_1:
47 000A 47 ___fs2uint_l_1_1:
49 49 ;--------------------------------------------------------
50 50 ; global & static initialisations
51 51 ;--------------------------------------------------------
52 52 .area GSINIT (CODE)
53 53 ;--------------------------------------------------------
55 55 ;--------------------------------------------------------
57 0000 57 G$__fs2uint$0$0 ==.
59 59 ; -----------------------------------------
60 60 ; function __fs2uint
61 61 ; -----------------------------------------
72 0000 C0 E0 72 push acc
74 0004 C0 83 74 push dph
75 0006 C0 82 75 push dpl
76 0008 90s00r00 76 mov dptr,#___fs2uint_a1_1_1
78 000D F0 78 movx @dptr,a
81 0011 F0 81 movx @dptr,a
84 0015 F0 84 movx @dptr,a
87 0019 F0 87 movx @dptr,a
89 001A 90s00r00 89 mov dptr,#___fs2uint_a1_1_1
90 001D E0 90 movx a,@dptr
93 0020 E0 93 movx a,@dptr
96 0023 E0 96 movx a,@dptr
99 0026 E0 99 movx a,@dptr
101 0028 90s00r04 101 mov dptr,#(___fs2uint_fl1_1_1)
103 002C F0 103 movx @dptr,a
106 002F F0 106 movx @dptr,a
109 0032 F0 109 movx @dptr,a
112 0035 F0 112 movx @dptr,a
114 0036 90s00r04 114 mov dptr,#(___fs2uint_fl1_1_1)
115 0039 E0 115 movx a,@dptr
118 003C E0 118 movx a,@dptr
121 003F E0 121 movx a,@dptr
124 0042 E0 124 movx a,@dptr
130 130 ; Peephole 109 removed ljmp by inverse jump logic
131 0048 70 06 131 jnz 00102$
134 134 ; Peephole 181 used 16 bit load of dptr
135 004A 90 00 00 135 mov dptr,#0x0000
136 004D 02s01rE4 136 ljmp 00110$
139 0050 90s00r04 139 mov dptr,#(___fs2uint_fl1_1_1)
140 0053 E0 140 movx a,@dptr
143 0056 E0 143 movx a,@dptr
146 0059 E0 146 movx a,@dptr
149 005C E0 149 movx a,@dptr
151 005E 8C 02 151 mov ar2,r4
153 0061 A2 E7 153 mov c,acc.7
159 0068 54 01 159 anl a,#0x01
160 006A 30 E0 02 160 jnb acc.0,00121$
161 006D 44 FE 161 orl a,#0xfe
165 0071 95 E0 165 subb a,acc
169 0076 75 F0 00 169 mov b,#0x00
170 0079 24 6A 170 add a,#0x6a
172 007C E5 F0 172 mov a,b
173 007E 34 FF 173 addc a,#0xff
175 0081 90s00r08 175 mov dptr,#___fs2uint_exp_1_1
177 0085 F0 177 movx @dptr,a
180 0088 F0 180 movx @dptr,a
182 0089 90s00r04 182 mov dptr,#(___fs2uint_fl1_1_1)
183 008C E0 183 movx a,@dptr
186 008F E0 186 movx a,@dptr
189 0092 E0 189 movx a,@dptr
192 0095 E0 192 movx a,@dptr
194 0097 53 06 7F 194 anl ar6,#0x7f
195 009A 7F 00 195 mov r7,#0x00
196 009C 90s00r0A 196 mov dptr,#___fs2uint_l_1_1
198 00A0 F0 198 movx @dptr,a
201 00A3 F0 201 movx @dptr,a
202 00A4 74 80 202 mov a,#0x80
205 00A8 F0 205 movx @dptr,a
208 00AB F0 208 movx @dptr,a
210 00AC 90s00r08 210 mov dptr,#___fs2uint_exp_1_1
211 00AF E0 211 movx a,@dptr
214 00B2 E0 214 movx a,@dptr
217 217 ; Peephole 180 changed mov to clr
219 00B6 9A 219 subb a,r2
220 220 ; Peephole 159 avoided xrl during execution
221 00B7 74 80 221 mov a,#(0x00 ^ 0x80)
222 00B9 8B F0 222 mov b,r3
223 00BB 63 F0 80 223 xrl b,#0x80
224 00BE 95 F0 224 subb a,b
225 225 ; Peephole 108 removed ljmp by inverse jump logic
226 00C0 50 1E 226 jnc 00104$
229 00C2 90s00r04 229 mov dptr,#(___fs2uint_fl1_1_1)
230 00C5 E0 230 movx a,@dptr
233 00C8 E0 233 movx a,@dptr
236 00CB E0 236 movx a,@dptr
239 00CE E0 239 movx a,@dptr
240 240 ; Peephole 105 removed redundant mov
243 00D1 54 01 243 anl a,#0x01
245 00D4 43 02 7F 245 orl ar2,#0x7f
246 00D7 78 00 246 mov r0,#0x00
247 00D9 8A 82 247 mov dpl,r2
248 00DB 88 83 248 mov dph,r0
249 00DD 02s01rE4 249 ljmp 00110$
252 00E0 90s00r08 252 mov dptr,#___fs2uint_exp_1_1
253 00E3 E0 253 movx a,@dptr
256 00E6 E0 256 movx a,@dptr
257 257 ; Peephole 105 removed redundant mov
259 00E8 20 E7 03 259 jb acc.7,00123$
260 00EB 02s01r83 260 ljmp 00106$
262 00EE 90s00r08 262 mov dptr,#___fs2uint_exp_1_1
263 00F1 E0 263 movx a,@dptr
266 00F4 E0 266 movx a,@dptr
269 00F7 74 E7 269 mov a,#0xe7
270 00F9 9A 270 subb a,r2
271 271 ; Peephole 159 avoided xrl during execution
272 00FA 74 7F 272 mov a,#(0xff ^ 0x80)
273 00FC 88 F0 273 mov b,r0
274 00FE 63 F0 80 274 xrl b,#0x80
275 0101 95 F0 275 subb a,b
276 0103 40 03 276 jc 00124$
277 0105 02s01r83 277 ljmp 00106$
279 0108 90s00r0A 279 mov dptr,#___fs2uint_l_1_1
280 010B E0 280 movx a,@dptr
281 010C F5*00 281 mov ___fs2uint_sloc0_1_0,a
283 010F E0 283 movx a,@dptr
284 0110 F5*01 284 mov (___fs2uint_sloc0_1_0 + 1),a
286 0113 E0 286 movx a,@dptr
287 0114 F5*02 287 mov (___fs2uint_sloc0_1_0 + 2),a
289 0117 E0 289 movx a,@dptr
290 0118 F5*03 290 mov (___fs2uint_sloc0_1_0 + 3),a
291 011A E5*00 291 mov a,___fs2uint_sloc0_1_0
292 011C 45*01 292 orl a,(___fs2uint_sloc0_1_0 + 1)
293 011E 45*02 293 orl a,(___fs2uint_sloc0_1_0 + 2)
294 0120 45*03 294 orl a,(___fs2uint_sloc0_1_0 + 3)
295 0122 70 03 295 jnz 00125$
296 0124 02s01r83 296 ljmp 00106$
299 0127 90s00r08 299 mov dptr,#___fs2uint_exp_1_1
300 012A E0 300 movx a,@dptr
303 012D E0 303 movx a,@dptr
307 0131 9A 307 subb a,r2
308 0132 F5*00 308 mov ___fs2uint_sloc0_1_0,a
310 0135 98 310 subb a,r0
311 0136 F5*01 311 mov (___fs2uint_sloc0_1_0 + 1),a
312 0138 90s00r0A 312 mov dptr,#___fs2uint_l_1_1
313 013B E0 313 movx a,@dptr
314 013C F5*04 314 mov ___fs2uint_sloc1_1_0,a
316 013F E0 316 movx a,@dptr
317 0140 F5*05 317 mov (___fs2uint_sloc1_1_0 + 1),a
319 0143 E0 319 movx a,@dptr
320 0144 F5*06 320 mov (___fs2uint_sloc1_1_0 + 2),a
322 0147 E0 322 movx a,@dptr
323 0148 F5*07 323 mov (___fs2uint_sloc1_1_0 + 3),a
324 014A 85*00 F0 324 mov b,___fs2uint_sloc0_1_0
326 014F E5*07 326 mov a,(___fs2uint_sloc1_1_0 + 3)
328 0152 92 D2 328 mov ov,c
329 0154 80 16 329 sjmp 00127$
331 0156 A2 D2 331 mov c,ov
332 0158 E5*07 332 mov a,(___fs2uint_sloc1_1_0 + 3)
334 015B F5*07 334 mov (___fs2uint_sloc1_1_0 + 3),a
335 015D E5*06 335 mov a,(___fs2uint_sloc1_1_0 + 2)
337 0160 F5*06 337 mov (___fs2uint_sloc1_1_0 + 2),a
338 0162 E5*05 338 mov a,(___fs2uint_sloc1_1_0 + 1)
340 0165 F5*05 340 mov (___fs2uint_sloc1_1_0 + 1),a
341 0167 E5*04 341 mov a,___fs2uint_sloc1_1_0
343 016A F5*04 343 mov ___fs2uint_sloc1_1_0,a
345 016C D5 F0 E7 345 djnz b,00126$
346 016F 90s00r0A 346 mov dptr,#___fs2uint_l_1_1
347 0172 E5*04 347 mov a,___fs2uint_sloc1_1_0
348 0174 F0 348 movx @dptr,a
350 0176 E5*05 350 mov a,(___fs2uint_sloc1_1_0 + 1)
351 0178 F0 351 movx @dptr,a
353 017A E5*06 353 mov a,(___fs2uint_sloc1_1_0 + 2)
354 017C F0 354 movx @dptr,a
356 017E E5*07 356 mov a,(___fs2uint_sloc1_1_0 + 3)
357 0180 F0 357 movx @dptr,a
358 358 ; Peephole 132 changed ljmp to sjmp
359 0181 80 06 359 sjmp 00107$
362 362 ; Peephole 181 used 16 bit load of dptr
363 0183 90 00 00 363 mov dptr,#0x0000
364 0186 02s01rE4 364 ljmp 00110$
367 0189 90s00r04 367 mov dptr,#(___fs2uint_fl1_1_1)
368 018C E0 368 movx a,@dptr
369 018D F5*04 369 mov ___fs2uint_sloc1_1_0,a
371 0190 E0 371 movx a,@dptr
372 0191 F5*05 372 mov (___fs2uint_sloc1_1_0 + 1),a
374 0194 E0 374 movx a,@dptr
375 0195 F5*06 375 mov (___fs2uint_sloc1_1_0 + 2),a
377 0198 E0 377 movx a,@dptr
378 378 ; Peephole 105 removed redundant mov
379 0199 F5*07 379 mov (___fs2uint_sloc1_1_0 + 3),a
381 019C 54 01 381 anl a,#0x01
382 382 ; Peephole 105 removed redundant mov
384 384 ; Peephole 110 removed ljmp by inverse jump logic
385 019F 60 29 385 jz 00112$
387 01A1 90s00r0A 387 mov dptr,#___fs2uint_l_1_1
388 01A4 E0 388 movx a,@dptr
389 01A5 F5*04 389 mov ___fs2uint_sloc1_1_0,a
391 01A8 E0 391 movx a,@dptr
392 01A9 F5*05 392 mov (___fs2uint_sloc1_1_0 + 1),a
394 01AC E0 394 movx a,@dptr
395 01AD F5*06 395 mov (___fs2uint_sloc1_1_0 + 2),a
397 01B0 E0 397 movx a,@dptr
398 01B1 F5*07 398 mov (___fs2uint_sloc1_1_0 + 3),a
401 01B5 95*04 401 subb a,___fs2uint_sloc1_1_0
402 01B7 F5*04 402 mov ___fs2uint_sloc1_1_0,a
404 01BA 95*05 404 subb a,(___fs2uint_sloc1_1_0 + 1)
405 01BC F5*05 405 mov (___fs2uint_sloc1_1_0 + 1),a
407 01BF 95*06 407 subb a,(___fs2uint_sloc1_1_0 + 2)
408 01C1 F5*06 408 mov (___fs2uint_sloc1_1_0 + 2),a
410 01C4 95*07 410 subb a,(___fs2uint_sloc1_1_0 + 3)
411 01C6 F5*07 411 mov (___fs2uint_sloc1_1_0 + 3),a
412 412 ; Peephole 132 changed ljmp to sjmp
413 01C8 80 12 413 sjmp 00113$
415 01CA 90s00r0A 415 mov dptr,#___fs2uint_l_1_1
416 01CD E0 416 movx a,@dptr
417 01CE F5*04 417 mov ___fs2uint_sloc1_1_0,a
419 01D1 E0 419 movx a,@dptr
420 01D2 F5*05 420 mov (___fs2uint_sloc1_1_0 + 1),a
422 01D5 E0 422 movx a,@dptr
423 01D6 F5*06 423 mov (___fs2uint_sloc1_1_0 + 2),a
425 01D9 E0 425 movx a,@dptr
426 01DA F5*07 426 mov (___fs2uint_sloc1_1_0 + 3),a
428 01DC AA*04 428 mov r2,___fs2uint_sloc1_1_0
429 01DE A8*05 429 mov r0,(___fs2uint_sloc1_1_0 + 1)
430 01E0 8A 82 430 mov dpl,r2
431 01E2 88 83 431 mov dph,r0
433 01E4 433 C$_fs2uint.c$97$1$1 ==.
434 01E4 434 XG$__fs2uint$0$0 ==.
436 436 .area CSEG (CODE)