1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624
|
1 ;--------------------------------------------------------
2 ; File Created by SDCC : free open source ANSI-C Compiler
3 ; Version 2.9.0 #5416 (Feb 3 2010) (UNIX)
4 ; This file was generated Sun Dec 16 06:02:14 2012
5 ;--------------------------------------------------------
6 .module keypad_display
7 .optsdcc -mmcs51 --model-small
8
9 ;--------------------------------------------------------
10 ; Public variables in this module
11 ;--------------------------------------------------------
12 .globl _main
13 .globl _CY
14 .globl _AC
15 .globl _F0
16 .globl _RS1
17 .globl _RS0
18 .globl _OV
19 .globl _F1
20 .globl _P
21 .globl _PS
22 .globl _PT1
23 .globl _PX1
24 .globl _PT0
25 .globl _PX0
26 .globl _RD
27 .globl _WR
28 .globl _T1
29 .globl _T0
30 .globl _INT1
31 .globl _INT0
32 .globl _TXD
33 .globl _RXD
34 .globl _P3_7
35 .globl _P3_6
36 .globl _P3_5
37 .globl _P3_4
38 .globl _P3_3
39 .globl _P3_2
40 .globl _P3_1
41 .globl _P3_0
42 .globl _EA
43 .globl _ES
44 .globl _ET1
45 .globl _EX1
46 .globl _ET0
47 .globl _EX0
48 .globl _P2_7
49 .globl _P2_6
50 .globl _P2_5
51 .globl _P2_4
52 .globl _P2_3
53 .globl _P2_2
54 .globl _P2_1
55 .globl _P2_0
56 .globl _SM0
57 .globl _SM1
58 .globl _SM2
59 .globl _REN
60 .globl _TB8
61 .globl _RB8
62 .globl _TI
63 .globl _RI
64 .globl _P1_7
65 .globl _P1_6
66 .globl _P1_5
67 .globl _P1_4
68 .globl _P1_3
69 .globl _P1_2
70 .globl _P1_1
71 .globl _P1_0
72 .globl _TF1
73 .globl _TR1
74 .globl _TF0
75 .globl _TR0
76 .globl _IE1
77 .globl _IT1
78 .globl _IE0
79 .globl _IT0
80 .globl _P0_7
81 .globl _P0_6
82 .globl _P0_5
83 .globl _P0_4
84 .globl _P0_3
85 .globl _P0_2
86 .globl _P0_1
87 .globl _P0_0
88 .globl _B
89 .globl _ACC
90 .globl _PSW
91 .globl _IP
92 .globl _P3
93 .globl _IE
94 .globl _P2
95 .globl _SBUF
96 .globl _SCON
97 .globl _P1
98 .globl _TH1
99 .globl _TH0
100 .globl _TL1
101 .globl _TL0
102 .globl _TMOD
103 .globl _TCON
104 .globl _PCON
105 .globl _DPH
106 .globl _DPL
107 .globl _SP
108 .globl _P0
109 .globl _row
110 .globl _state
111 ;--------------------------------------------------------
112 ; special function registers
113 ;--------------------------------------------------------
114 .area RSEG (DATA)
0080 115 G$P0$0$0 == 0x0080
0080 116 _P0 = 0x0080
0081 117 G$SP$0$0 == 0x0081
0081 118 _SP = 0x0081
0082 119 G$DPL$0$0 == 0x0082
0082 120 _DPL = 0x0082
0083 121 G$DPH$0$0 == 0x0083
0083 122 _DPH = 0x0083
0087 123 G$PCON$0$0 == 0x0087
0087 124 _PCON = 0x0087
0088 125 G$TCON$0$0 == 0x0088
0088 126 _TCON = 0x0088
0089 127 G$TMOD$0$0 == 0x0089
0089 128 _TMOD = 0x0089
008A 129 G$TL0$0$0 == 0x008a
008A 130 _TL0 = 0x008a
008B 131 G$TL1$0$0 == 0x008b
008B 132 _TL1 = 0x008b
008C 133 G$TH0$0$0 == 0x008c
008C 134 _TH0 = 0x008c
008D 135 G$TH1$0$0 == 0x008d
008D 136 _TH1 = 0x008d
0090 137 G$P1$0$0 == 0x0090
0090 138 _P1 = 0x0090
0098 139 G$SCON$0$0 == 0x0098
0098 140 _SCON = 0x0098
0099 141 G$SBUF$0$0 == 0x0099
0099 142 _SBUF = 0x0099
00A0 143 G$P2$0$0 == 0x00a0
00A0 144 _P2 = 0x00a0
00A8 145 G$IE$0$0 == 0x00a8
00A8 146 _IE = 0x00a8
00B0 147 G$P3$0$0 == 0x00b0
00B0 148 _P3 = 0x00b0
00B8 149 G$IP$0$0 == 0x00b8
00B8 150 _IP = 0x00b8
00D0 151 G$PSW$0$0 == 0x00d0
00D0 152 _PSW = 0x00d0
00E0 153 G$ACC$0$0 == 0x00e0
00E0 154 _ACC = 0x00e0
00F0 155 G$B$0$0 == 0x00f0
00F0 156 _B = 0x00f0
157 ;--------------------------------------------------------
158 ; special function bits
159 ;--------------------------------------------------------
160 .area RSEG (DATA)
0080 161 G$P0_0$0$0 == 0x0080
0080 162 _P0_0 = 0x0080
0081 163 G$P0_1$0$0 == 0x0081
0081 164 _P0_1 = 0x0081
0082 165 G$P0_2$0$0 == 0x0082
0082 166 _P0_2 = 0x0082
0083 167 G$P0_3$0$0 == 0x0083
0083 168 _P0_3 = 0x0083
0084 169 G$P0_4$0$0 == 0x0084
0084 170 _P0_4 = 0x0084
0085 171 G$P0_5$0$0 == 0x0085
0085 172 _P0_5 = 0x0085
0086 173 G$P0_6$0$0 == 0x0086
0086 174 _P0_6 = 0x0086
0087 175 G$P0_7$0$0 == 0x0087
0087 176 _P0_7 = 0x0087
0088 177 G$IT0$0$0 == 0x0088
0088 178 _IT0 = 0x0088
0089 179 G$IE0$0$0 == 0x0089
0089 180 _IE0 = 0x0089
008A 181 G$IT1$0$0 == 0x008a
008A 182 _IT1 = 0x008a
008B 183 G$IE1$0$0 == 0x008b
008B 184 _IE1 = 0x008b
008C 185 G$TR0$0$0 == 0x008c
008C 186 _TR0 = 0x008c
008D 187 G$TF0$0$0 == 0x008d
008D 188 _TF0 = 0x008d
008E 189 G$TR1$0$0 == 0x008e
008E 190 _TR1 = 0x008e
008F 191 G$TF1$0$0 == 0x008f
008F 192 _TF1 = 0x008f
0090 193 G$P1_0$0$0 == 0x0090
0090 194 _P1_0 = 0x0090
0091 195 G$P1_1$0$0 == 0x0091
0091 196 _P1_1 = 0x0091
0092 197 G$P1_2$0$0 == 0x0092
0092 198 _P1_2 = 0x0092
0093 199 G$P1_3$0$0 == 0x0093
0093 200 _P1_3 = 0x0093
0094 201 G$P1_4$0$0 == 0x0094
0094 202 _P1_4 = 0x0094
0095 203 G$P1_5$0$0 == 0x0095
0095 204 _P1_5 = 0x0095
0096 205 G$P1_6$0$0 == 0x0096
0096 206 _P1_6 = 0x0096
0097 207 G$P1_7$0$0 == 0x0097
0097 208 _P1_7 = 0x0097
0098 209 G$RI$0$0 == 0x0098
0098 210 _RI = 0x0098
0099 211 G$TI$0$0 == 0x0099
0099 212 _TI = 0x0099
009A 213 G$RB8$0$0 == 0x009a
009A 214 _RB8 = 0x009a
009B 215 G$TB8$0$0 == 0x009b
009B 216 _TB8 = 0x009b
009C 217 G$REN$0$0 == 0x009c
009C 218 _REN = 0x009c
009D 219 G$SM2$0$0 == 0x009d
009D 220 _SM2 = 0x009d
009E 221 G$SM1$0$0 == 0x009e
009E 222 _SM1 = 0x009e
009F 223 G$SM0$0$0 == 0x009f
009F 224 _SM0 = 0x009f
00A0 225 G$P2_0$0$0 == 0x00a0
00A0 226 _P2_0 = 0x00a0
00A1 227 G$P2_1$0$0 == 0x00a1
00A1 228 _P2_1 = 0x00a1
00A2 229 G$P2_2$0$0 == 0x00a2
00A2 230 _P2_2 = 0x00a2
00A3 231 G$P2_3$0$0 == 0x00a3
00A3 232 _P2_3 = 0x00a3
00A4 233 G$P2_4$0$0 == 0x00a4
00A4 234 _P2_4 = 0x00a4
00A5 235 G$P2_5$0$0 == 0x00a5
00A5 236 _P2_5 = 0x00a5
00A6 237 G$P2_6$0$0 == 0x00a6
00A6 238 _P2_6 = 0x00a6
00A7 239 G$P2_7$0$0 == 0x00a7
00A7 240 _P2_7 = 0x00a7
00A8 241 G$EX0$0$0 == 0x00a8
00A8 242 _EX0 = 0x00a8
00A9 243 G$ET0$0$0 == 0x00a9
00A9 244 _ET0 = 0x00a9
00AA 245 G$EX1$0$0 == 0x00aa
00AA 246 _EX1 = 0x00aa
00AB 247 G$ET1$0$0 == 0x00ab
00AB 248 _ET1 = 0x00ab
00AC 249 G$ES$0$0 == 0x00ac
00AC 250 _ES = 0x00ac
00AF 251 G$EA$0$0 == 0x00af
00AF 252 _EA = 0x00af
00B0 253 G$P3_0$0$0 == 0x00b0
00B0 254 _P3_0 = 0x00b0
00B1 255 G$P3_1$0$0 == 0x00b1
00B1 256 _P3_1 = 0x00b1
00B2 257 G$P3_2$0$0 == 0x00b2
00B2 258 _P3_2 = 0x00b2
00B3 259 G$P3_3$0$0 == 0x00b3
00B3 260 _P3_3 = 0x00b3
00B4 261 G$P3_4$0$0 == 0x00b4
00B4 262 _P3_4 = 0x00b4
00B5 263 G$P3_5$0$0 == 0x00b5
00B5 264 _P3_5 = 0x00b5
00B6 265 G$P3_6$0$0 == 0x00b6
00B6 266 _P3_6 = 0x00b6
00B7 267 G$P3_7$0$0 == 0x00b7
00B7 268 _P3_7 = 0x00b7
00B0 269 G$RXD$0$0 == 0x00b0
00B0 270 _RXD = 0x00b0
00B1 271 G$TXD$0$0 == 0x00b1
00B1 272 _TXD = 0x00b1
00B2 273 G$INT0$0$0 == 0x00b2
00B2 274 _INT0 = 0x00b2
00B3 275 G$INT1$0$0 == 0x00b3
00B3 276 _INT1 = 0x00b3
00B4 277 G$T0$0$0 == 0x00b4
00B4 278 _T0 = 0x00b4
00B5 279 G$T1$0$0 == 0x00b5
00B5 280 _T1 = 0x00b5
00B6 281 G$WR$0$0 == 0x00b6
00B6 282 _WR = 0x00b6
00B7 283 G$RD$0$0 == 0x00b7
00B7 284 _RD = 0x00b7
00B8 285 G$PX0$0$0 == 0x00b8
00B8 286 _PX0 = 0x00b8
00B9 287 G$PT0$0$0 == 0x00b9
00B9 288 _PT0 = 0x00b9
00BA 289 G$PX1$0$0 == 0x00ba
00BA 290 _PX1 = 0x00ba
00BB 291 G$PT1$0$0 == 0x00bb
00BB 292 _PT1 = 0x00bb
00BC 293 G$PS$0$0 == 0x00bc
00BC 294 _PS = 0x00bc
00D0 295 G$P$0$0 == 0x00d0
00D0 296 _P = 0x00d0
00D1 297 G$F1$0$0 == 0x00d1
00D1 298 _F1 = 0x00d1
00D2 299 G$OV$0$0 == 0x00d2
00D2 300 _OV = 0x00d2
00D3 301 G$RS0$0$0 == 0x00d3
00D3 302 _RS0 = 0x00d3
00D4 303 G$RS1$0$0 == 0x00d4
00D4 304 _RS1 = 0x00d4
00D5 305 G$F0$0$0 == 0x00d5
00D5 306 _F0 = 0x00d5
00D6 307 G$AC$0$0 == 0x00d6
00D6 308 _AC = 0x00d6
00D7 309 G$CY$0$0 == 0x00d7
00D7 310 _CY = 0x00d7
311 ;--------------------------------------------------------
312 ; overlayable register banks
313 ;--------------------------------------------------------
314 .area REG_BANK_0 (REL,OVR,DATA)
0000 315 .ds 8
316 ;--------------------------------------------------------
317 ; internal ram data
318 ;--------------------------------------------------------
319 .area DSEG (DATA)
0000 320 G$state$0$0==.
0000 321 _state::
0000 322 .ds 1
0001 323 G$row$0$0==.
0001 324 _row::
0001 325 .ds 2
326 ;--------------------------------------------------------
327 ; overlayable items in internal ram
328 ;--------------------------------------------------------
329 .area OSEG (OVR,DATA)
330 ;--------------------------------------------------------
331 ; Stack segment in internal ram
332 ;--------------------------------------------------------
333 .area SSEG (DATA)
0000 334 __start__stack:
0000 335 .ds 1
336
337 ;--------------------------------------------------------
338 ; indirectly addressable internal ram data
339 ;--------------------------------------------------------
340 .area ISEG (DATA)
341 ;--------------------------------------------------------
342 ; absolute internal ram data
343 ;--------------------------------------------------------
344 .area IABS (ABS,DATA)
345 .area IABS (ABS,DATA)
346 ;--------------------------------------------------------
347 ; bit data
348 ;--------------------------------------------------------
349 .area BSEG (BIT)
350 ;--------------------------------------------------------
351 ; paged external ram data
352 ;--------------------------------------------------------
353 .area PSEG (PAG,XDATA)
354 ;--------------------------------------------------------
355 ; external ram data
356 ;--------------------------------------------------------
357 .area XSEG (XDATA)
358 ;--------------------------------------------------------
359 ; absolute external ram data
360 ;--------------------------------------------------------
361 .area XABS (ABS,XDATA)
362 ;--------------------------------------------------------
363 ; external initialized ram data
364 ;--------------------------------------------------------
365 .area XISEG (XDATA)
366 .area HOME (CODE)
367 .area GSINIT0 (CODE)
368 .area GSINIT1 (CODE)
369 .area GSINIT2 (CODE)
370 .area GSINIT3 (CODE)
371 .area GSINIT4 (CODE)
372 .area GSINIT5 (CODE)
373 .area GSINIT (CODE)
374 .area GSFINAL (CODE)
375 .area CSEG (CODE)
376 ;--------------------------------------------------------
377 ; interrupt vector
378 ;--------------------------------------------------------
379 .area HOME (CODE)
0000 380 __interrupt_vect:
0000 02s00r00 381 ljmp __sdcc_gsinit_startup
382 ;--------------------------------------------------------
383 ; global & static initialisations
384 ;--------------------------------------------------------
385 .area HOME (CODE)
386 .area GSINIT (CODE)
387 .area GSFINAL (CODE)
388 .area GSINIT (CODE)
389 .globl __sdcc_gsinit_startup
390 .globl __sdcc_program_startup
391 .globl __start__stack
392 .globl __mcs51_genXINIT
393 .globl __mcs51_genXRAMCLEAR
394 .globl __mcs51_genRAMCLEAR
395 .area GSFINAL (CODE)
0000 02s00r03 396 ljmp __sdcc_program_startup
397 ;--------------------------------------------------------
398 ; Home
399 ;--------------------------------------------------------
400 .area HOME (CODE)
401 .area HOME (CODE)
0003 402 __sdcc_program_startup:
0003 12s00r00 403 lcall _main
404 ; return from main will lock up
0006 80 FE 405 sjmp .
406 ;--------------------------------------------------------
407 ; code
408 ;--------------------------------------------------------
409 .area CSEG (CODE)
410 ;------------------------------------------------------------
411 ;Allocation info for local variables in function 'main'
412 ;------------------------------------------------------------
413 ;------------------------------------------------------------
0000 414 G$main$0$0 ==.
0000 415 C$keypad_display.c$38$0$0 ==.
416 ; keypad_display.c:38: int main()
417 ; -----------------------------------------
418 ; function main
419 ; -----------------------------------------
0000 420 _main:
0002 421 ar2 = 0x02
0003 422 ar3 = 0x03
0004 423 ar4 = 0x04
0005 424 ar5 = 0x05
0006 425 ar6 = 0x06
0007 426 ar7 = 0x07
0000 427 ar0 = 0x00
0001 428 ar1 = 0x01
0000 429 C$keypad_display.c$40$1$1 ==.
430 ; keypad_display.c:40: while(1) {
0000 431 00123$:
0000 432 C$keypad_display.c$41$2$2 ==.
433 ; keypad_display.c:41: for(row=0; row<4; row++) {
0000 E4 434 clr a
0001 F5*01 435 mov _row,a
0003 F5*02 436 mov (_row + 1),a
0005 437 00118$:
0005 C3 438 clr c
0006 E5*01 439 mov a,_row
0008 94 04 440 subb a,#0x04
000A E5*02 441 mov a,(_row + 1)
000C 64 80 442 xrl a,#0x80
000E 94 80 443 subb a,#0x80
0010 50 EE 444 jnc 00123$
0012 445 C$keypad_display.c$42$3$3 ==.
446 ; keypad_display.c:42: P1=keypad[row];
0012 E5*01 447 mov a,_row
0014 24r00 448 add a,#_keypad
0016 F5 82 449 mov dpl,a
0018 E5*02 450 mov a,(_row + 1)
001A 34s00 451 addc a,#(_keypad >> 8)
001C F5 83 452 mov dph,a
001E E4 453 clr a
001F 93 454 movc a,@a+dptr
0020 F5 90 455 mov _P1,a
0022 456 C$keypad_display.c$48$3$3 ==.
457 ; keypad_display.c:48: _endasm;
458
0022 85 90*00 459 mov _state, P1
460
0025 461 C$keypad_display.c$53$3$3 ==.
462 ; keypad_display.c:53: state&=0x0f;
0025 53r00 0F 463 anl _state,#0x0F
0028 464 C$keypad_display.c$54$3$3 ==.
465 ; keypad_display.c:54: state^=0x0f;
0028 63r00 0F 466 xrl _state,#0x0F
002B 467 C$keypad_display.c$56$3$3 ==.
468 ; keypad_display.c:56: if(state & 1) {
002B E5*00 469 mov a,_state
002D 30 E0 05 470 jnb acc.0,00111$
0030 471 C$keypad_display.c$57$4$4 ==.
472 ; keypad_display.c:57: state=0;
0030 75*00 00 473 mov _state,#0x00
0033 80 1F 474 sjmp 00112$
0035 475 00111$:
0035 476 C$keypad_display.c$58$3$3 ==.
477 ; keypad_display.c:58: } else if(state & 2) {
0035 E5*00 478 mov a,_state
0037 30 E1 05 479 jnb acc.1,00108$
003A 480 C$keypad_display.c$59$4$5 ==.
481 ; keypad_display.c:59: state=1;
003A 75*00 01 482 mov _state,#0x01
003D 80 15 483 sjmp 00112$
003F 484 00108$:
003F 485 C$keypad_display.c$60$3$3 ==.
486 ; keypad_display.c:60: } else if(state & 4) {
003F E5*00 487 mov a,_state
0041 30 E2 05 488 jnb acc.2,00105$
0044 489 C$keypad_display.c$61$4$6 ==.
490 ; keypad_display.c:61: state=2;
0044 75*00 02 491 mov _state,#0x02
0047 80 0B 492 sjmp 00112$
0049 493 00105$:
0049 494 C$keypad_display.c$62$3$3 ==.
495 ; keypad_display.c:62: } else if(state & 8) {
0049 E5*00 496 mov a,_state
004B 20 E3 03 497 jb acc.3,00142$
004E 02s00rA7 498 ljmp 00120$
0051 499 00142$:
0051 500 C$keypad_display.c$63$4$7 ==.
501 ; keypad_display.c:63: state=3;
0051 75*00 03 502 mov _state,#0x03
0054 503 C$keypad_display.c$65$3$3 ==.
504 ; keypad_display.c:65: continue;
0054 505 00112$:
0054 506 C$keypad_display.c$68$3$3 ==.
507 ; keypad_display.c:68: switch(row) {
0054 E4 508 clr a
0055 B5*01 06 509 cjne a,_row,00143$
0058 E4 510 clr a
0059 B5*02 02 511 cjne a,(_row + 1),00143$
005C 80 23 512 sjmp 00113$
005E 513 00143$:
005E 74 01 514 mov a,#0x01
0060 B5*01 06 515 cjne a,_row,00144$
0063 E4 516 clr a
0064 B5*02 02 517 cjne a,(_row + 1),00144$
0067 80 22 518 sjmp 00114$
0069 519 00144$:
0069 74 02 520 mov a,#0x02
006B B5*01 06 521 cjne a,_row,00145$
006E E4 522 clr a
006F B5*02 02 523 cjne a,(_row + 1),00145$
0072 80 21 524 sjmp 00115$
0074 525 00145$:
0074 74 03 526 mov a,#0x03
0076 B5*01 06 527 cjne a,_row,00146$
0079 E4 528 clr a
007A B5*02 02 529 cjne a,(_row + 1),00146$
007D 80 20 530 sjmp 00116$
007F 531 00146$:
007F 532 C$keypad_display.c$69$4$9 ==.
533 ; keypad_display.c:69: case 0:
007F 80 26 534 sjmp 00120$
0081 535 00113$:
0081 536 C$keypad_display.c$70$4$9 ==.
537 ; keypad_display.c:70: P3=display_0[state];
0081 E5*00 538 mov a,_state
0083 90s00r04 539 mov dptr,#_display_0
0086 93 540 movc a,@a+dptr
0087 F5 B0 541 mov _P3,a
0089 542 C$keypad_display.c$71$4$9 ==.
543 ; keypad_display.c:71: break;
0089 544 C$keypad_display.c$72$4$9 ==.
545 ; keypad_display.c:72: case 1:
0089 80 1C 546 sjmp 00120$
008B 547 00114$:
008B 548 C$keypad_display.c$73$4$9 ==.
549 ; keypad_display.c:73: P3=display_1[state];
008B E5*00 550 mov a,_state
008D 90s00r08 551 mov dptr,#_display_1
0090 93 552 movc a,@a+dptr
0091 F5 B0 553 mov _P3,a
0093 554 C$keypad_display.c$74$4$9 ==.
555 ; keypad_display.c:74: break;
0093 556 C$keypad_display.c$75$4$9 ==.
557 ; keypad_display.c:75: case 2:
0093 80 12 558 sjmp 00120$
0095 559 00115$:
0095 560 C$keypad_display.c$76$4$9 ==.
561 ; keypad_display.c:76: P3=display_2[state];
0095 E5*00 562 mov a,_state
0097 90s00r0C 563 mov dptr,#_display_2
009A 93 564 movc a,@a+dptr
009B F5 B0 565 mov _P3,a
009D 566 C$keypad_display.c$77$4$9 ==.
567 ; keypad_display.c:77: break;
009D 568 C$keypad_display.c$78$4$9 ==.
569 ; keypad_display.c:78: case 3:
009D 80 08 570 sjmp 00120$
009F 571 00116$:
009F 572 C$keypad_display.c$79$4$9 ==.
573 ; keypad_display.c:79: P3=display_3[state];
009F E5*00 574 mov a,_state
00A1 90s00r10 575 mov dptr,#_display_3
00A4 93 576 movc a,@a+dptr
00A5 F5 B0 577 mov _P3,a
00A7 578 C$keypad_display.c$81$2$2 ==.
579 ; keypad_display.c:81: }
00A7 580 00120$:
00A7 581 C$keypad_display.c$41$2$2 ==.
582 ; keypad_display.c:41: for(row=0; row<4; row++) {
00A7 05*01 583 inc _row
00A9 E4 584 clr a
00AA B5*01 02 585 cjne a,_row,00147$
00AD 05*02 586 inc (_row + 1)
00AF 587 00147$:
00AF 588 C$keypad_display.c$84$1$1 ==.
00AF 589 XG$main$0$0 ==.
00AF 02s00r05 590 ljmp 00118$
591 .area CSEG (CODE)
592 .area CONST (CODE)
0000 593 Fkeypad_display$keypad$0$0 == .
0000 594 _keypad:
0000 EF 595 .db #0xEF
0001 DF 596 .db #0xDF
0002 BF 597 .db #0xBF
0003 7F 598 .db #0x7F
0004 599 Fkeypad_display$display_0$0$0 == .
0004 600 _display_0:
0004 F9 601 .db #0xF9
0005 64 602 .db #0x64
0006 70 603 .db #0x70
0007 48 604 .db #0x48
0008 605 Fkeypad_display$display_1$0$0 == .
0008 606 _display_1:
0008 59 607 .db #0x59
0009 52 608 .db #0x52
000A 42 609 .db #0x42
000B 40 610 .db #0x40
000C 611 Fkeypad_display$display_2$0$0 == .
000C 612 _display_2:
000C F8 613 .db #0xF8
000D 40 614 .db #0x40
000E 50 615 .db #0x50
000F C6 616 .db #0xC6
0010 617 Fkeypad_display$display_3$0$0 == .
0010 618 _display_3:
0010 79 619 .db #0x79
0011 C0 620 .db #0xC0
0012 49 621 .db #0x49
0013 C0 622 .db #0xC0
623 .area XINIT (CODE)
624 .area CABS (ABS,CODE)
|