1 ;-------------------------------------------------------- 2 ; File Created by SDCC : FreeWare ANSI-C Compiler 3 ; Version 2.6.0 #4309 (Jul 28 2006) 4 ; This file generated Sun Oct 04 00:14:42 2009 5 ;-------------------------------------------------------- 6 .module ___src_main 7 .optsdcc -mmcs51 --model-large 8 9 ;-------------------------------------------------------- 10 ; Public variables in this module 11 ;-------------------------------------------------------- 12 .globl _isr_seven 13 .globl _isr_six 14 .globl _isr_five 15 .globl _isr_four 16 .globl _isr_three 17 .globl _isr_two 18 .globl _isr_one 19 .globl _isr_zero 20 .globl _main 21 .globl __sdcc_external_startup 22 .globl _TF1 23 .globl _TR1 24 .globl _TF0 25 .globl _TR0 26 .globl _IE1 27 .globl _IT1 28 .globl _IE0 29 .globl _IT0 30 .globl _SM0 31 .globl _SM1 32 .globl _SM2 33 .globl _REN 34 .globl _TB8 35 .globl _RB8 36 .globl _TI 37 .globl _RI 38 .globl _CY 39 .globl _AC 40 .globl _F0 41 .globl _RS1 42 .globl _RS0 43 .globl _OV 44 .globl _F1 45 .globl _P 46 .globl _RD 47 .globl _WR 48 .globl _T1 49 .globl _T0 50 .globl _INT1 51 .globl _INT0 52 .globl _TXD0 53 .globl _TXD 54 .globl _RXD0 55 .globl _RXD 56 .globl _P3_7 57 .globl _P3_6 58 .globl _P3_5 59 .globl _P3_4 60 .globl _P3_3 61 .globl _P3_2 62 .globl _P3_1 63 .globl _P3_0 64 .globl _P2_7 65 .globl _P2_6 66 .globl _P2_5 67 .globl _P2_4 68 .globl _P2_3 69 .globl _P2_2 70 .globl _P2_1 71 .globl _P2_0 72 .globl _P1_7 73 .globl _P1_6 74 .globl _P1_5 75 .globl _P1_4 76 .globl _P1_3 77 .globl _P1_2 78 .globl _P1_1 79 .globl _P1_0 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 _PS 89 .globl _PT1 90 .globl _PX1 91 .globl _PT0 92 .globl _PX0 93 .globl _EA 94 .globl _ES 95 .globl _ET1 96 .globl _EX1 97 .globl _ET0 98 .globl _EX0 99 .globl _BREG_F7 100 .globl _BREG_F6 101 .globl _BREG_F5 102 .globl _BREG_F4 103 .globl _BREG_F3 104 .globl _BREG_F2 105 .globl _BREG_F1 106 .globl _BREG_F0 107 .globl _P5_7 108 .globl _P5_6 109 .globl _P5_5 110 .globl _P5_4 111 .globl _P5_3 112 .globl _P5_2 113 .globl _P5_1 114 .globl _P5_0 115 .globl _P4_7 116 .globl _P4_6 117 .globl _P4_5 118 .globl _P4_4 119 .globl _P4_3 120 .globl _P4_2 121 .globl _P4_1 122 .globl _P4_0 123 .globl _PX0L 124 .globl _PT0L 125 .globl _PX1L 126 .globl _PT1L 127 .globl _PLS 128 .globl _PT2L 129 .globl _PPCL 130 .globl _EC 131 .globl _CCF0 132 .globl _CCF1 133 .globl _CCF2 134 .globl _CCF3 135 .globl _CCF4 136 .globl _CR 137 .globl _CF 138 .globl _TF2 139 .globl _EXF2 140 .globl _RCLK 141 .globl _TCLK 142 .globl _EXEN2 143 .globl _TR2 144 .globl _C_T2 145 .globl _CP_RL2 146 .globl _T2CON_7 147 .globl _T2CON_6 148 .globl _T2CON_5 149 .globl _T2CON_4 150 .globl _T2CON_3 151 .globl _T2CON_2 152 .globl _T2CON_1 153 .globl _T2CON_0 154 .globl _PT2 155 .globl _ET2 156 .globl _TMOD 157 .globl _TL1 158 .globl _TL0 159 .globl _TH1 160 .globl _TH0 161 .globl _TCON 162 .globl _SP 163 .globl _SCON 164 .globl _SBUF0 165 .globl _SBUF 166 .globl _PSW 167 .globl _PCON 168 .globl _P3 169 .globl _P2 170 .globl _P1 171 .globl _P0 172 .globl _IP 173 .globl _IE 174 .globl _DP0L 175 .globl _DPL 176 .globl _DP0H 177 .globl _DPH 178 .globl _B 179 .globl _ACC 180 .globl _EECON 181 .globl _KBF 182 .globl _KBE 183 .globl _KBLS 184 .globl _BRL 185 .globl _BDRCON 186 .globl _T2MOD 187 .globl _SPDAT 188 .globl _SPSTA 189 .globl _SPCON 190 .globl _SADEN 191 .globl _SADDR 192 .globl _WDTPRG 193 .globl _WDTRST 194 .globl _P5 195 .globl _P4 196 .globl _IPH1 197 .globl _IPL1 198 .globl _IPH0 199 .globl _IPL0 200 .globl _IEN1 201 .globl _IEN0 202 .globl _CMOD 203 .globl _CL 204 .globl _CH 205 .globl _CCON 206 .globl _CCAPM4 207 .globl _CCAPM3 208 .globl _CCAPM2 209 .globl _CCAPM1 210 .globl _CCAPM0 211 .globl _CCAP4L 212 .globl _CCAP3L 213 .globl _CCAP2L 214 .globl _CCAP1L 215 .globl _CCAP0L 216 .globl _CCAP4H 217 .globl _CCAP3H 218 .globl _CCAP2H 219 .globl _CCAP1H 220 .globl _CCAP0H 221 .globl _CKCKON1 222 .globl _CKCKON0 223 .globl _CKRL 224 .globl _AUXR1 225 .globl _AUXR 226 .globl _TH2 227 .globl _TL2 228 .globl _RCAP2H 229 .globl _RCAP2L 230 .globl _T2CON 231 .globl _heap 232 .globl _gg 233 .globl _putstr 234 .globl _putchar 235 .globl _getchar 236 ;-------------------------------------------------------- 237 ; special function registers 238 ;-------------------------------------------------------- 239 .area RSEG (DATA) 00C8 240 _T2CON = 0x00c8 00CA 241 _RCAP2L = 0x00ca 00CB 242 _RCAP2H = 0x00cb 00CC 243 _TL2 = 0x00cc 00CD 244 _TH2 = 0x00cd 008E 245 _AUXR = 0x008e 00A2 246 _AUXR1 = 0x00a2 0097 247 _CKRL = 0x0097 008F 248 _CKCKON0 = 0x008f 008F 249 _CKCKON1 = 0x008f 00FA 250 _CCAP0H = 0x00fa 00FB 251 _CCAP1H = 0x00fb 00FC 252 _CCAP2H = 0x00fc 00FD 253 _CCAP3H = 0x00fd 00FE 254 _CCAP4H = 0x00fe 00EA 255 _CCAP0L = 0x00ea 00EB 256 _CCAP1L = 0x00eb 00EC 257 _CCAP2L = 0x00ec 00ED 258 _CCAP3L = 0x00ed 00EE 259 _CCAP4L = 0x00ee 00DA 260 _CCAPM0 = 0x00da 00DB 261 _CCAPM1 = 0x00db 00DC 262 _CCAPM2 = 0x00dc 00DD 263 _CCAPM3 = 0x00dd 00DE 264 _CCAPM4 = 0x00de 00D8 265 _CCON = 0x00d8 00F9 266 _CH = 0x00f9 00E9 267 _CL = 0x00e9 00D9 268 _CMOD = 0x00d9 00A8 269 _IEN0 = 0x00a8 00B1 270 _IEN1 = 0x00b1 00B8 271 _IPL0 = 0x00b8 00B7 272 _IPH0 = 0x00b7 00B2 273 _IPL1 = 0x00b2 00B3 274 _IPH1 = 0x00b3 00C0 275 _P4 = 0x00c0 00D8 276 _P5 = 0x00d8 00A6 277 _WDTRST = 0x00a6 00A7 278 _WDTPRG = 0x00a7 00A9 279 _SADDR = 0x00a9 00B9 280 _SADEN = 0x00b9 00C3 281 _SPCON = 0x00c3 00C4 282 _SPSTA = 0x00c4 00C5 283 _SPDAT = 0x00c5 00C9 284 _T2MOD = 0x00c9 009B 285 _BDRCON = 0x009b 009A 286 _BRL = 0x009a 009C 287 _KBLS = 0x009c 009D 288 _KBE = 0x009d 009E 289 _KBF = 0x009e 00D2 290 _EECON = 0x00d2 00E0 291 _ACC = 0x00e0 00F0 292 _B = 0x00f0 0083 293 _DPH = 0x0083 0083 294 _DP0H = 0x0083 0082 295 _DPL = 0x0082 0082 296 _DP0L = 0x0082 00A8 297 _IE = 0x00a8 00B8 298 _IP = 0x00b8 0080 299 _P0 = 0x0080 0090 300 _P1 = 0x0090 00A0 301 _P2 = 0x00a0 00B0 302 _P3 = 0x00b0 0087 303 _PCON = 0x0087 00D0 304 _PSW = 0x00d0 0099 305 _SBUF = 0x0099 0099 306 _SBUF0 = 0x0099 0098 307 _SCON = 0x0098 0081 308 _SP = 0x0081 0088 309 _TCON = 0x0088 008C 310 _TH0 = 0x008c 008D 311 _TH1 = 0x008d 008A 312 _TL0 = 0x008a 008B 313 _TL1 = 0x008b 0089 314 _TMOD = 0x0089 315 ;-------------------------------------------------------- 316 ; special function bits 317 ;-------------------------------------------------------- 318 .area RSEG (DATA) 00AD 319 _ET2 = 0x00ad 00BD 320 _PT2 = 0x00bd 00C8 321 _T2CON_0 = 0x00c8 00C9 322 _T2CON_1 = 0x00c9 00CA 323 _T2CON_2 = 0x00ca 00CB 324 _T2CON_3 = 0x00cb 00CC 325 _T2CON_4 = 0x00cc 00CD 326 _T2CON_5 = 0x00cd 00CE 327 _T2CON_6 = 0x00ce 00CF 328 _T2CON_7 = 0x00cf 00C8 329 _CP_RL2 = 0x00c8 00C9 330 _C_T2 = 0x00c9 00CA 331 _TR2 = 0x00ca 00CB 332 _EXEN2 = 0x00cb 00CC 333 _TCLK = 0x00cc 00CD 334 _RCLK = 0x00cd 00CE 335 _EXF2 = 0x00ce 00CF 336 _TF2 = 0x00cf 00DF 337 _CF = 0x00df 00DE 338 _CR = 0x00de 00DC 339 _CCF4 = 0x00dc 00DB 340 _CCF3 = 0x00db 00DA 341 _CCF2 = 0x00da 00D9 342 _CCF1 = 0x00d9 00D8 343 _CCF0 = 0x00d8 00AE 344 _EC = 0x00ae 00BE 345 _PPCL = 0x00be 00BD 346 _PT2L = 0x00bd 00BC 347 _PLS = 0x00bc 00BB 348 _PT1L = 0x00bb 00BA 349 _PX1L = 0x00ba 00B9 350 _PT0L = 0x00b9 00B8 351 _PX0L = 0x00b8 00C0 352 _P4_0 = 0x00c0 00C1 353 _P4_1 = 0x00c1 00C2 354 _P4_2 = 0x00c2 00C3 355 _P4_3 = 0x00c3 00C4 356 _P4_4 = 0x00c4 00C5 357 _P4_5 = 0x00c5 00C6 358 _P4_6 = 0x00c6 00C7 359 _P4_7 = 0x00c7 00D8 360 _P5_0 = 0x00d8 00D9 361 _P5_1 = 0x00d9 00DA 362 _P5_2 = 0x00da 00DB 363 _P5_3 = 0x00db 00DC 364 _P5_4 = 0x00dc 00DD 365 _P5_5 = 0x00dd 00DE 366 _P5_6 = 0x00de 00DF 367 _P5_7 = 0x00df 00F0 368 _BREG_F0 = 0x00f0 00F1 369 _BREG_F1 = 0x00f1 00F2 370 _BREG_F2 = 0x00f2 00F3 371 _BREG_F3 = 0x00f3 00F4 372 _BREG_F4 = 0x00f4 00F5 373 _BREG_F5 = 0x00f5 00F6 374 _BREG_F6 = 0x00f6 00F7 375 _BREG_F7 = 0x00f7 00A8 376 _EX0 = 0x00a8 00A9 377 _ET0 = 0x00a9 00AA 378 _EX1 = 0x00aa 00AB 379 _ET1 = 0x00ab 00AC 380 _ES = 0x00ac 00AF 381 _EA = 0x00af 00B8 382 _PX0 = 0x00b8 00B9 383 _PT0 = 0x00b9 00BA 384 _PX1 = 0x00ba 00BB 385 _PT1 = 0x00bb 00BC 386 _PS = 0x00bc 0080 387 _P0_0 = 0x0080 0081 388 _P0_1 = 0x0081 0082 389 _P0_2 = 0x0082 0083 390 _P0_3 = 0x0083 0084 391 _P0_4 = 0x0084 0085 392 _P0_5 = 0x0085 0086 393 _P0_6 = 0x0086 0087 394 _P0_7 = 0x0087 0090 395 _P1_0 = 0x0090 0091 396 _P1_1 = 0x0091 0092 397 _P1_2 = 0x0092 0093 398 _P1_3 = 0x0093 0094 399 _P1_4 = 0x0094 0095 400 _P1_5 = 0x0095 0096 401 _P1_6 = 0x0096 0097 402 _P1_7 = 0x0097 00A0 403 _P2_0 = 0x00a0 00A1 404 _P2_1 = 0x00a1 00A2 405 _P2_2 = 0x00a2 00A3 406 _P2_3 = 0x00a3 00A4 407 _P2_4 = 0x00a4 00A5 408 _P2_5 = 0x00a5 00A6 409 _P2_6 = 0x00a6 00A7 410 _P2_7 = 0x00a7 00B0 411 _P3_0 = 0x00b0 00B1 412 _P3_1 = 0x00b1 00B2 413 _P3_2 = 0x00b2 00B3 414 _P3_3 = 0x00b3 00B4 415 _P3_4 = 0x00b4 00B5 416 _P3_5 = 0x00b5 00B6 417 _P3_6 = 0x00b6 00B7 418 _P3_7 = 0x00b7 00B0 419 _RXD = 0x00b0 00B0 420 _RXD0 = 0x00b0 00B1 421 _TXD = 0x00b1 00B1 422 _TXD0 = 0x00b1 00B2 423 _INT0 = 0x00b2 00B3 424 _INT1 = 0x00b3 00B4 425 _T0 = 0x00b4 00B5 426 _T1 = 0x00b5 00B6 427 _WR = 0x00b6 00B7 428 _RD = 0x00b7 00D0 429 _P = 0x00d0 00D1 430 _F1 = 0x00d1 00D2 431 _OV = 0x00d2 00D3 432 _RS0 = 0x00d3 00D4 433 _RS1 = 0x00d4 00D5 434 _F0 = 0x00d5 00D6 435 _AC = 0x00d6 00D7 436 _CY = 0x00d7 0098 437 _RI = 0x0098 0099 438 _TI = 0x0099 009A 439 _RB8 = 0x009a 009B 440 _TB8 = 0x009b 009C 441 _REN = 0x009c 009D 442 _SM2 = 0x009d 009E 443 _SM1 = 0x009e 009F 444 _SM0 = 0x009f 0088 445 _IT0 = 0x0088 0089 446 _IE0 = 0x0089 008A 447 _IT1 = 0x008a 008B 448 _IE1 = 0x008b 008C 449 _TR0 = 0x008c 008D 450 _TF0 = 0x008d 008E 451 _TR1 = 0x008e 008F 452 _TF1 = 0x008f 453 ;-------------------------------------------------------- 454 ; overlayable register banks 455 ;-------------------------------------------------------- 456 .area REG_BANK_0 (REL,OVR,DATA) 0000 457 .ds 8 458 ;-------------------------------------------------------- 459 ; internal ram data 460 ;-------------------------------------------------------- 461 .area DSEG (DATA) 462 ;-------------------------------------------------------- 463 ; overlayable items in internal ram 464 ;-------------------------------------------------------- 465 .area OSEG (OVR,DATA) 466 ;-------------------------------------------------------- 467 ; Stack segment in internal ram 468 ;-------------------------------------------------------- 469 .area SSEG (DATA) 0023 470 __start__stack: 0023 471 .ds 1 472 473 ;-------------------------------------------------------- 474 ; indirectly addressable internal ram data 475 ;-------------------------------------------------------- 476 .area ISEG (DATA) 477 ;-------------------------------------------------------- 478 ; bit data 479 ;-------------------------------------------------------- 480 .area BSEG (BIT) 0000 481 _isr_zero_sloc0_1_0: 0000 482 .ds 1 0001 483 _isr_one_sloc0_1_0: 0001 484 .ds 1 0002 485 _isr_two_sloc0_1_0: 0002 486 .ds 1 0003 487 _isr_three_sloc0_1_0: 0003 488 .ds 1 0004 489 _isr_four_sloc0_1_0: 0004 490 .ds 1 0005 491 _isr_five_sloc0_1_0: 0005 492 .ds 1 0006 493 _isr_six_sloc0_1_0: 0006 494 .ds 1 0007 495 _isr_seven_sloc0_1_0: 0007 496 .ds 1 497 ;-------------------------------------------------------- 498 ; paged external ram data 499 ;-------------------------------------------------------- 500 .area PSEG (PAG,XDATA) 501 ;-------------------------------------------------------- 502 ; external ram data 503 ;-------------------------------------------------------- 504 .area XSEG (XDATA) C000 505 _gg:: C000 506 .ds 2 C002 507 _heap:: C002 508 .ds 768 C302 509 _main_zz_1_1: C302 510 .ds 1 C303 511 _main_ii_1_1: C303 512 .ds 2 C305 513 _main_aa_1_1: C305 514 .ds 2 C307 515 _main_bb_1_1: C307 516 .ds 2 C309 517 _main_cc_1_1: C309 518 .ds 2 C30B 519 _main_buffer0_1_1: C30B 520 .ds 2 C30D 521 _main_buffer1_1_1: C30D 522 .ds 2 C30F 523 _putstr_s_1_1: C30F 524 .ds 3 C312 525 _putchar_c_1_1: C312 526 .ds 1 527 ;-------------------------------------------------------- 528 ; external initialized ram data 529 ;-------------------------------------------------------- 530 .area XISEG (XDATA) 531 .area HOME (CODE) 532 .area GSINIT0 (CODE) 533 .area GSINIT1 (CODE) 534 .area GSINIT2 (CODE) 535 .area GSINIT3 (CODE) 536 .area GSINIT4 (CODE) 537 .area GSINIT5 (CODE) 538 .area GSINIT (CODE) 539 .area GSFINAL (CODE) 540 .area CSEG (CODE) 541 ;-------------------------------------------------------- 542 ; interrupt vector 543 ;-------------------------------------------------------- 544 .area HOME (CODE) 6000 545 __interrupt_vect: 6000 02 60 3E 546 ljmp __sdcc_gsinit_startup 6003 02 65 FC 547 ljmp _isr_zero 6006 548 .ds 5 600B 02 66 5F 549 ljmp _isr_one 600E 550 .ds 5 6013 02 66 72 551 ljmp _isr_two 6016 552 .ds 5 601B 02 66 C6 553 ljmp _isr_three 601E 554 .ds 5 6023 02 67 1A 555 ljmp _isr_four 6026 556 .ds 5 602B 02 67 36 557 ljmp _isr_five 602E 558 .ds 5 6033 02 67 55 559 ljmp _isr_six 6036 560 .ds 5 603B 02 67 74 561 ljmp _isr_seven 562 ;-------------------------------------------------------- 563 ; global & static initialisations 564 ;-------------------------------------------------------- 565 .area HOME (CODE) 566 .area GSINIT (CODE) 567 .area GSFINAL (CODE) 568 .area GSINIT (CODE) 569 .globl __sdcc_gsinit_startup 570 .globl __sdcc_program_startup 571 .globl __start__stack 572 .globl __mcs51_genXINIT 573 .globl __mcs51_genXRAMCLEAR 574 .globl __mcs51_genRAMCLEAR 575 .area GSFINAL (CODE) 6097 02 60 9A 576 ljmp __sdcc_program_startup 577 ;-------------------------------------------------------- 578 ; Home 579 ;-------------------------------------------------------- 580 .area HOME (CODE) 581 .area CSEG (CODE) 609A 582 __sdcc_program_startup: 609A 12 60 A0 583 lcall _main 584 ; return from main will lock up 609D 80 FE 585 sjmp . 586 ;-------------------------------------------------------- 587 ; code 588 ;-------------------------------------------------------- 589 .area CSEG (CODE) 590 ;------------------------------------------------------------ 591 ;Allocation info for local variables in function '_sdcc_external_startup' 592 ;------------------------------------------------------------ 593 ;------------------------------------------------------------ 594 ; ../src/main.c:30: _sdcc_external_startup() 595 ; ----------------------------------------- 596 ; function _sdcc_external_startup 597 ; ----------------------------------------- 609F 598 __sdcc_external_startup: 0002 599 ar2 = 0x02 0003 600 ar3 = 0x03 0004 601 ar4 = 0x04 0005 602 ar5 = 0x05 0006 603 ar6 = 0x06 0007 604 ar7 = 0x07 0000 605 ar0 = 0x00 0001 606 ar1 = 0x01 607 ; ../src/main.c:32: } 608 ; Peephole 300 removed redundant label 00101$ 609F 22 609 ret 610 ;------------------------------------------------------------ 611 ;Allocation info for local variables in function 'main' 612 ;------------------------------------------------------------ 613 ;zz Allocated with name '_main_zz_1_1' 614 ;ii Allocated with name '_main_ii_1_1' 615 ;aa Allocated with name '_main_aa_1_1' 616 ;bb Allocated with name '_main_bb_1_1' 617 ;cc Allocated with name '_main_cc_1_1' 618 ;foo Allocated with name '_main_foo_1_1' 619 ;buffer0 Allocated with name '_main_buffer0_1_1' 620 ;buffer1 Allocated with name '_main_buffer1_1_1' 621 ;------------------------------------------------------------ 622 ; ../src/main.c:34: void main() 623 ; ----------------------------------------- 624 ; function main 625 ; ----------------------------------------- 60A0 626 _main: 627 ; ../src/main.c:42: init_dynamic_memory((MEMHEADER xdata *)heap, HEAP_SIZE); 628 ; genAssign 60A0 90 C3 1E 629 mov dptr,#_init_dynamic_memory_PARM_2 630 ; Peephole 181 changed mov to clr 60A3 E4 631 clr a 60A4 F0 632 movx @dptr,a 60A5 A3 633 inc dptr 60A6 74 03 634 mov a,#0x03 60A8 F0 635 movx @dptr,a 636 ; genCall 637 ; Peephole 182.a used 16 bit load of DPTR 60A9 90 C0 02 638 mov dptr,#_heap 60AC 12 68 F7 639 lcall _init_dynamic_memory 640 ; ../src/main.c:44: zz = 1; 641 ; genAssign 60AF 90 C3 02 642 mov dptr,#_main_zz_1_1 60B2 74 01 643 mov a,#0x01 60B4 F0 644 movx @dptr,a 645 ; ../src/main.c:49: do 60B5 646 00106$: 647 ; ../src/main.c:51: if ((buffer0 = malloc((unsigned int)(zz * 0x100))) == 0) //allocate buffer0 648 ; genCall 649 ; Peephole 182.b used 16 bit load of dptr 60B5 90 01 00 650 mov dptr,#0x0100 60B8 12 69 78 651 lcall _malloc 60BB AA 82 652 mov r2,dpl 60BD AB 83 653 mov r3,dph 654 ; genAssign 60BF 90 C3 0B 655 mov dptr,#_main_buffer0_1_1 60C2 EA 656 mov a,r2 60C3 F0 657 movx @dptr,a 60C4 A3 658 inc dptr 60C5 EB 659 mov a,r3 60C6 F0 660 movx @dptr,a 661 ; genIfx 60C7 EA 662 mov a,r2 60C8 4B 663 orl a,r3 664 ; genIfxJump 665 ; Peephole 108.b removed ljmp by inverse jump logic 60C9 70 1D 666 jnz 00102$ 667 ; Peephole 300 removed redundant label 00126$ 668 ; ../src/main.c:52: printf ("malloc buffer0 failed\n\r"); 669 ; genIpush 60CB C0 02 670 push ar2 60CD C0 03 671 push ar3 60CF 74 AB 672 mov a,#__str_0 60D1 C0 E0 673 push acc 60D3 74 76 674 mov a,#(__str_0 >> 8) 60D5 C0 E0 675 push acc 60D7 74 80 676 mov a,#0x80 60D9 C0 E0 677 push acc 678 ; genCall 60DB 12 6D D3 679 lcall _printf 60DE 15 81 680 dec sp 60E0 15 81 681 dec sp 60E2 15 81 682 dec sp 60E4 D0 03 683 pop ar3 60E6 D0 02 684 pop ar2 60E8 685 00102$: 686 ; ../src/main.c:53: if ((buffer1 = malloc(0x00ff)) == 0) //allocate buffer1 687 ; genCall 688 ; Peephole 182.b used 16 bit load of dptr 60E8 90 00 FF 689 mov dptr,#0x00FF 60EB C0 02 690 push ar2 60ED C0 03 691 push ar3 60EF 12 69 78 692 lcall _malloc 60F2 AC 82 693 mov r4,dpl 60F4 AD 83 694 mov r5,dph 60F6 D0 03 695 pop ar3 60F8 D0 02 696 pop ar2 697 ; genAssign 60FA 90 C3 0D 698 mov dptr,#_main_buffer1_1_1 60FD EC 699 mov a,r4 60FE F0 700 movx @dptr,a 60FF A3 701 inc dptr 6100 ED 702 mov a,r5 6101 F0 703 movx @dptr,a 704 ; genIfx 6102 EC 705 mov a,r4 6103 4D 706 orl a,r5 707 ; genIfxJump 708 ; Peephole 108.b removed ljmp by inverse jump logic 6104 70 44 709 jnz 00107$ 710 ; Peephole 300 removed redundant label 00127$ 711 ; ../src/main.c:55: printf ("malloc buffer1 failed\n\r"); 712 ; genIpush 6106 C0 02 713 push ar2 6108 C0 03 714 push ar3 610A C0 04 715 push ar4 610C C0 05 716 push ar5 610E 74 C3 717 mov a,#__str_1 6110 C0 E0 718 push acc 6112 74 76 719 mov a,#(__str_1 >> 8) 6114 C0 E0 720 push acc 6116 74 80 721 mov a,#0x80 6118 C0 E0 722 push acc 723 ; genCall 611A 12 6D D3 724 lcall _printf 611D 15 81 725 dec sp 611F 15 81 726 dec sp 6121 15 81 727 dec sp 6123 D0 05 728 pop ar5 6125 D0 04 729 pop ar4 6127 D0 03 730 pop ar3 6129 D0 02 731 pop ar2 732 ; ../src/main.c:56: free (buffer0); // if buffer1 malloc fails, free buffer 0 733 ; genAssign 612B 8A 06 734 mov ar6,r2 612D 8B 07 735 mov ar7,r3 736 ; genCast 612F 78 00 737 mov r0,#0x0 738 ; genCall 6131 8E 82 739 mov dpl,r6 6133 8F 83 740 mov dph,r7 6135 88 F0 741 mov b,r0 6137 C0 02 742 push ar2 6139 C0 03 743 push ar3 613B C0 04 744 push ar4 613D C0 05 745 push ar5 613F 12 68 A4 746 lcall _free 6142 D0 05 747 pop ar5 6144 D0 04 748 pop ar4 6146 D0 03 749 pop ar3 6148 D0 02 750 pop ar2 614A 751 00107$: 752 ; ../src/main.c:59: } while ((buffer0 == 0) || (buffer1 == 0)); 753 ; genIfx 614A EA 754 mov a,r2 614B 4B 755 orl a,r3 756 ; genIfxJump 614C 70 03 757 jnz 00128$ 614E 02 60 B5 758 ljmp 00106$ 6151 759 00128$: 760 ; genIfx 6151 EC 761 mov a,r4 6152 4D 762 orl a,r5 763 ; genIfxJump 6153 70 03 764 jnz 00129$ 6155 02 60 B5 765 ljmp 00106$ 6158 766 00129$: 767 ; ../src/main.c:61: printf ("malloc passed\n\r"); 768 ; genIpush 6158 74 DB 769 mov a,#__str_2 615A C0 E0 770 push acc 615C 74 76 771 mov a,#(__str_2 >> 8) 615E C0 E0 772 push acc 6160 74 80 773 mov a,#0x80 6162 C0 E0 774 push acc 775 ; genCall 6164 12 6D D3 776 lcall _printf 6167 15 81 777 dec sp 6169 15 81 778 dec sp 616B 15 81 779 dec sp 780 ; ../src/main.c:66: ii=0, aa=0, bb=0, cc=0, gg=0; 781 ; genAssign 616D 90 C3 03 782 mov dptr,#_main_ii_1_1 6170 E4 783 clr a 6171 F0 784 movx @dptr,a 6172 A3 785 inc dptr 6173 F0 786 movx @dptr,a 787 ; genAssign 6174 90 C3 05 788 mov dptr,#_main_aa_1_1 6177 E4 789 clr a 6178 F0 790 movx @dptr,a 6179 A3 791 inc dptr 617A F0 792 movx @dptr,a 793 ; genAssign 617B 90 C3 07 794 mov dptr,#_main_bb_1_1 617E E4 795 clr a 617F F0 796 movx @dptr,a 6180 A3 797 inc dptr 6181 F0 798 movx @dptr,a 799 ; genAssign 6182 90 C3 09 800 mov dptr,#_main_cc_1_1 6185 E4 801 clr a 6186 F0 802 movx @dptr,a 6187 A3 803 inc dptr 6188 F0 804 movx @dptr,a 805 ; genAssign 6189 90 C0 00 806 mov dptr,#_gg 618C E4 807 clr a 618D F0 808 movx @dptr,a 618E A3 809 inc dptr 618F F0 810 movx @dptr,a 811 ; ../src/main.c:68: while (1) 6190 812 00110$: 813 ; ../src/main.c:70: putchar ('A'); 814 ; genCall 6190 75 82 41 815 mov dpl,#0x41 6193 12 68 03 816 lcall _putchar 817 ; ../src/main.c:71: putchar (' '); 818 ; genCall 6196 75 82 20 819 mov dpl,#0x20 6199 12 68 03 820 lcall _putchar 821 ; ../src/main.c:73: putchar (getchar()); 822 ; genCall 619C 12 68 1D 823 lcall _getchar 824 ; genCall 619F AA 82 825 mov r2,dpl 826 ; Peephole 177.a removed redundant mov 61A1 12 68 03 827 lcall _putchar 828 ; ../src/main.c:74: putchar (' '); 829 ; genCall 61A4 75 82 20 830 mov dpl,#0x20 61A7 12 68 03 831 lcall _putchar 832 ; ../src/main.c:75: printf("hello\n\r"); 833 ; genIpush 61AA 74 EB 834 mov a,#__str_3 61AC C0 E0 835 push acc 61AE 74 76 836 mov a,#(__str_3 >> 8) 61B0 C0 E0 837 push acc 61B2 74 80 838 mov a,#0x80 61B4 C0 E0 839 push acc 840 ; genCall 61B6 12 6D D3 841 lcall _printf 61B9 15 81 842 dec sp 61BB 15 81 843 dec sp 61BD 15 81 844 dec sp 61BF 845 00112$: 846 ; ../src/main.c:76: for (;ii < 5; ii++) 847 ; genAssign 61BF 90 C3 03 848 mov dptr,#_main_ii_1_1 61C2 E0 849 movx a,@dptr 61C3 FA 850 mov r2,a 61C4 A3 851 inc dptr 61C5 E0 852 movx a,@dptr 61C6 FB 853 mov r3,a 854 ; genCmpLt 855 ; genCmp 61C7 C3 856 clr c 61C8 EA 857 mov a,r2 61C9 94 05 858 subb a,#0x05 61CB EB 859 mov a,r3 61CC 64 80 860 xrl a,#0x80 61CE 94 80 861 subb a,#0x80 862 ; genIfxJump 61D0 40 03 863 jc 00130$ 61D2 02 65 F0 864 ljmp 00115$ 61D5 865 00130$: 866 ; ../src/main.c:78: printf("\n\r hello ii= %d ", ii); 867 ; genIpush 61D5 C0 02 868 push ar2 61D7 C0 03 869 push ar3 870 ; genIpush 61D9 74 F3 871 mov a,#__str_4 61DB C0 E0 872 push acc 61DD 74 76 873 mov a,#(__str_4 >> 8) 61DF C0 E0 874 push acc 61E1 74 80 875 mov a,#0x80 61E3 C0 E0 876 push acc 877 ; genCall 61E5 12 6D D3 878 lcall _printf 61E8 E5 81 879 mov a,sp 61EA 24 FB 880 add a,#0xfb 61EC F5 81 881 mov sp,a 882 ; ../src/main.c:79: gg = ii * ii * ii; 883 ; genAssign 61EE 90 C3 03 884 mov dptr,#_main_ii_1_1 61F1 E0 885 movx a,@dptr 61F2 FA 886 mov r2,a 61F3 A3 887 inc dptr 61F4 E0 888 movx a,@dptr 61F5 FB 889 mov r3,a 890 ; genAssign 61F6 90 C3 33 891 mov dptr,#__mulint_PARM_2 61F9 EA 892 mov a,r2 61FA F0 893 movx @dptr,a 61FB A3 894 inc dptr 61FC EB 895 mov a,r3 61FD F0 896 movx @dptr,a 897 ; genCall 61FE 8A 82 898 mov dpl,r2 6200 8B 83 899 mov dph,r3 6202 C0 02 900 push ar2 6204 C0 03 901 push ar3 6206 12 6C E9 902 lcall __mulint 6209 AC 82 903 mov r4,dpl 620B AD 83 904 mov r5,dph 620D D0 03 905 pop ar3 620F D0 02 906 pop ar2 907 ; genAssign 6211 90 C3 33 908 mov dptr,#__mulint_PARM_2 6214 EA 909 mov a,r2 6215 F0 910 movx @dptr,a 6216 A3 911 inc dptr 6217 EB 912 mov a,r3 6218 F0 913 movx @dptr,a 914 ; genCall 6219 8C 82 915 mov dpl,r4 621B 8D 83 916 mov dph,r5 621D 12 6C E9 917 lcall __mulint 6220 E5 82 918 mov a,dpl 6222 85 83 F0 919 mov b,dph 920 ; genAssign 6225 90 C0 00 921 mov dptr,#_gg 6228 F0 922 movx @dptr,a 6229 A3 923 inc dptr 622A E5 F0 924 mov a,b 622C F0 925 movx @dptr,a 926 ; ../src/main.c:80: printf("gg= %d\n\r", gg); 927 ; genIpush 622D 90 C0 00 928 mov dptr,#_gg 6230 E0 929 movx a,@dptr 6231 C0 E0 930 push acc 6233 A3 931 inc dptr 6234 E0 932 movx a,@dptr 6235 C0 E0 933 push acc 934 ; genIpush 6237 74 05 935 mov a,#__str_5 6239 C0 E0 936 push acc 623B 74 77 937 mov a,#(__str_5 >> 8) 623D C0 E0 938 push acc 623F 74 80 939 mov a,#0x80 6241 C0 E0 940 push acc 941 ; genCall 6243 12 6D D3 942 lcall _printf 6246 E5 81 943 mov a,sp 6248 24 FB 944 add a,#0xfb 624A F5 81 945 mov sp,a 946 ; ../src/main.c:81: printf("&ii 0x%4X\n\r", (__xdata char *) &ii); 947 ; genIpush 624C 74 03 948 mov a,#_main_ii_1_1 624E C0 E0 949 push acc 6250 74 C3 950 mov a,#(_main_ii_1_1 >> 8) 6252 C0 E0 951 push acc 952 ; genIpush 6254 74 0E 953 mov a,#__str_6 6256 C0 E0 954 push acc 6258 74 77 955 mov a,#(__str_6 >> 8) 625A C0 E0 956 push acc 625C 74 80 957 mov a,#0x80 625E C0 E0 958 push acc 959 ; genCall 6260 12 6D D3 960 lcall _printf 6263 E5 81 961 mov a,sp 6265 24 FB 962 add a,#0xfb 6267 F5 81 963 mov sp,a 964 ; ../src/main.c:82: printf_tiny("printf_tiny &ii 0x%x\n\r", (__xdata char *) &ii); 965 ; genIpush 6269 74 03 966 mov a,#_main_ii_1_1 626B C0 E0 967 push acc 626D 74 C3 968 mov a,#(_main_ii_1_1 >> 8) 626F C0 E0 969 push acc 970 ; genIpush 6271 74 1A 971 mov a,#__str_7 6273 C0 E0 972 push acc 6275 74 77 973 mov a,#(__str_7 >> 8) 6277 C0 E0 974 push acc 975 ; genCall 6279 12 6B E1 976 lcall _printf_tiny 627C E5 81 977 mov a,sp 627E 24 FC 978 add a,#0xfc 6280 F5 81 979 mov sp,a 980 ; ../src/main.c:83: printf("&aa 0x%4X\n\r", (__xdata char *) &aa); 981 ; genIpush 6282 74 05 982 mov a,#_main_aa_1_1 6284 C0 E0 983 push acc 6286 74 C3 984 mov a,#(_main_aa_1_1 >> 8) 6288 C0 E0 985 push acc 986 ; genIpush 628A 74 31 987 mov a,#__str_8 628C C0 E0 988 push acc 628E 74 77 989 mov a,#(__str_8 >> 8) 6290 C0 E0 990 push acc 6292 74 80 991 mov a,#0x80 6294 C0 E0 992 push acc 993 ; genCall 6296 12 6D D3 994 lcall _printf 6299 E5 81 995 mov a,sp 629B 24 FB 996 add a,#0xfb 629D F5 81 997 mov sp,a 998 ; ../src/main.c:84: printf_tiny("printf_tiny &aa 0x%x\n\r", (__xdata char *) &aa); 999 ; genIpush 629F 74 05 1000 mov a,#_main_aa_1_1 62A1 C0 E0 1001 push acc 62A3 74 C3 1002 mov a,#(_main_aa_1_1 >> 8) 62A5 C0 E0 1003 push acc 1004 ; genIpush 62A7 74 3D 1005 mov a,#__str_9 62A9 C0 E0 1006 push acc 62AB 74 77 1007 mov a,#(__str_9 >> 8) 62AD C0 E0 1008 push acc 1009 ; genCall 62AF 12 6B E1 1010 lcall _printf_tiny 62B2 E5 81 1011 mov a,sp 62B4 24 FC 1012 add a,#0xfc 62B6 F5 81 1013 mov sp,a 1014 ; ../src/main.c:85: printf("&bb 0x%4X\n\r", (__xdata char *) &bb); 1015 ; genIpush 62B8 74 07 1016 mov a,#_main_bb_1_1 62BA C0 E0 1017 push acc 62BC 74 C3 1018 mov a,#(_main_bb_1_1 >> 8) 62BE C0 E0 1019 push acc 1020 ; genIpush 62C0 74 54 1021 mov a,#__str_10 62C2 C0 E0 1022 push acc 62C4 74 77 1023 mov a,#(__str_10 >> 8) 62C6 C0 E0 1024 push acc 62C8 74 80 1025 mov a,#0x80 62CA C0 E0 1026 push acc 1027 ; genCall 62CC 12 6D D3 1028 lcall _printf 62CF E5 81 1029 mov a,sp 62D1 24 FB 1030 add a,#0xfb 62D3 F5 81 1031 mov sp,a 1032 ; ../src/main.c:86: printf_tiny("printf_tiny &bb 0x%x\n\r", (__xdata char *) &bb); 1033 ; genIpush 62D5 74 07 1034 mov a,#_main_bb_1_1 62D7 C0 E0 1035 push acc 62D9 74 C3 1036 mov a,#(_main_bb_1_1 >> 8) 62DB C0 E0 1037 push acc 1038 ; genIpush 62DD 74 60 1039 mov a,#__str_11 62DF C0 E0 1040 push acc 62E1 74 77 1041 mov a,#(__str_11 >> 8) 62E3 C0 E0 1042 push acc 1043 ; genCall 62E5 12 6B E1 1044 lcall _printf_tiny 62E8 E5 81 1045 mov a,sp 62EA 24 FC 1046 add a,#0xfc 62EC F5 81 1047 mov sp,a 1048 ; ../src/main.c:87: printf("&cc 0x%4X\n\r", (__xdata char *) &cc); 1049 ; genIpush 62EE 74 09 1050 mov a,#_main_cc_1_1 62F0 C0 E0 1051 push acc 62F2 74 C3 1052 mov a,#(_main_cc_1_1 >> 8) 62F4 C0 E0 1053 push acc 1054 ; genIpush 62F6 74 77 1055 mov a,#__str_12 62F8 C0 E0 1056 push acc 62FA 74 77 1057 mov a,#(__str_12 >> 8) 62FC C0 E0 1058 push acc 62FE 74 80 1059 mov a,#0x80 6300 C0 E0 1060 push acc 1061 ; genCall 6302 12 6D D3 1062 lcall _printf 6305 E5 81 1063 mov a,sp 6307 24 FB 1064 add a,#0xfb 6309 F5 81 1065 mov sp,a 1066 ; ../src/main.c:88: printf_tiny("printf_tiny &cc 0x%x\n\r", (__xdata char *) &cc); 1067 ; genIpush 630B 74 09 1068 mov a,#_main_cc_1_1 630D C0 E0 1069 push acc 630F 74 C3 1070 mov a,#(_main_cc_1_1 >> 8) 6311 C0 E0 1071 push acc 1072 ; genIpush 6313 74 83 1073 mov a,#__str_13 6315 C0 E0 1074 push acc 6317 74 77 1075 mov a,#(__str_13 >> 8) 6319 C0 E0 1076 push acc 1077 ; genCall 631B 12 6B E1 1078 lcall _printf_tiny 631E E5 81 1079 mov a,sp 6320 24 FC 1080 add a,#0xfc 6322 F5 81 1081 mov sp,a 1082 ; ../src/main.c:89: printf("&gg 0x%4X\n\r", (unsigned int) &gg); 1083 ; genCast 6324 7A 00 1084 mov r2,#_gg 6326 7B C0 1085 mov r3,#(_gg >> 8) 1086 ; genIpush 6328 C0 02 1087 push ar2 632A C0 03 1088 push ar3 1089 ; genIpush 632C 74 9A 1090 mov a,#__str_14 632E C0 E0 1091 push acc 6330 74 77 1092 mov a,#(__str_14 >> 8) 6332 C0 E0 1093 push acc 6334 74 80 1094 mov a,#0x80 6336 C0 E0 1095 push acc 1096 ; genCall 6338 12 6D D3 1097 lcall _printf 633B E5 81 1098 mov a,sp 633D 24 FB 1099 add a,#0xfb 633F F5 81 1100 mov sp,a 1101 ; ../src/main.c:90: printf_tiny("printf_tiny &gg 0x%x\n\r", (__xdata char *) &gg); 1102 ; genIpush 6341 74 00 1103 mov a,#_gg 6343 C0 E0 1104 push acc 6345 74 C0 1105 mov a,#(_gg >> 8) 6347 C0 E0 1106 push acc 1107 ; genIpush 6349 74 A6 1108 mov a,#__str_15 634B C0 E0 1109 push acc 634D 74 77 1110 mov a,#(__str_15 >> 8) 634F C0 E0 1111 push acc 1112 ; genCall 6351 12 6B E1 1113 lcall _printf_tiny 6354 E5 81 1114 mov a,sp 6356 24 FC 1115 add a,#0xfc 6358 F5 81 1116 mov sp,a 1117 ; ../src/main.c:91: printf("&zz 0x%4X\n\r", (unsigned int) &zz); 1118 ; genCast 635A 7A 02 1119 mov r2,#_main_zz_1_1 635C 7B C3 1120 mov r3,#(_main_zz_1_1 >> 8) 1121 ; genIpush 635E C0 02 1122 push ar2 6360 C0 03 1123 push ar3 1124 ; genIpush 6362 74 BD 1125 mov a,#__str_16 6364 C0 E0 1126 push acc 6366 74 77 1127 mov a,#(__str_16 >> 8) 6368 C0 E0 1128 push acc 636A 74 80 1129 mov a,#0x80 636C C0 E0 1130 push acc 1131 ; genCall 636E 12 6D D3 1132 lcall _printf 6371 E5 81 1133 mov a,sp 6373 24 FB 1134 add a,#0xfb 6375 F5 81 1135 mov sp,a 1136 ; ../src/main.c:92: printf_tiny("printf_tiny &zz 0x%x\n\r", (unsigned int) &zz); 1137 ; genCast 6377 7A 02 1138 mov r2,#_main_zz_1_1 6379 7B C3 1139 mov r3,#(_main_zz_1_1 >> 8) 1140 ; genIpush 637B C0 02 1141 push ar2 637D C0 03 1142 push ar3 1143 ; genIpush 637F 74 C9 1144 mov a,#__str_17 6381 C0 E0 1145 push acc 6383 74 77 1146 mov a,#(__str_17 >> 8) 6385 C0 E0 1147 push acc 1148 ; genCall 6387 12 6B E1 1149 lcall _printf_tiny 638A E5 81 1150 mov a,sp 638C 24 FC 1151 add a,#0xfc 638E F5 81 1152 mov sp,a 1153 ; ../src/main.c:93: printf("&heap 0x%4X ", (__xdata char *) heap); 1154 ; genIpush 6390 74 02 1155 mov a,#_heap 6392 C0 E0 1156 push acc 6394 74 C0 1157 mov a,#(_heap >> 8) 6396 C0 E0 1158 push acc 1159 ; genIpush 6398 74 E0 1160 mov a,#__str_18 639A C0 E0 1161 push acc 639C 74 77 1162 mov a,#(__str_18 >> 8) 639E C0 E0 1163 push acc 63A0 74 80 1164 mov a,#0x80 63A2 C0 E0 1165 push acc 1166 ; genCall 63A4 12 6D D3 1167 lcall _printf 63A7 E5 81 1168 mov a,sp 63A9 24 FB 1169 add a,#0xfb 63AB F5 81 1170 mov sp,a 1171 ; ../src/main.c:94: printf(" &heap end 0x%4X\n\r", (__xdata char *) (heap + HEAP_SIZE-1)); 1172 ; genIpush 63AD 74 01 1173 mov a,#(_heap + 0x02ff) 63AF C0 E0 1174 push acc 63B1 74 C3 1175 mov a,#((_heap + 0x02ff) >> 8) 63B3 C0 E0 1176 push acc 1177 ; genIpush 63B5 74 EE 1178 mov a,#__str_19 63B7 C0 E0 1179 push acc 63B9 74 77 1180 mov a,#(__str_19 >> 8) 63BB C0 E0 1181 push acc 63BD 74 80 1182 mov a,#0x80 63BF C0 E0 1183 push acc 1184 ; genCall 63C1 12 6D D3 1185 lcall _printf 63C4 E5 81 1186 mov a,sp 63C6 24 FB 1187 add a,#0xfb 63C8 F5 81 1188 mov sp,a 1189 ; ../src/main.c:95: printf_tiny("printf_tiny &heap 0x%x ", (__xdata char *) heap); 1190 ; genIpush 63CA 74 02 1191 mov a,#_heap 63CC C0 E0 1192 push acc 63CE 74 C0 1193 mov a,#(_heap >> 8) 63D0 C0 E0 1194 push acc 1195 ; genIpush 63D2 74 02 1196 mov a,#__str_20 63D4 C0 E0 1197 push acc 63D6 74 78 1198 mov a,#(__str_20 >> 8) 63D8 C0 E0 1199 push acc 1200 ; genCall 63DA 12 6B E1 1201 lcall _printf_tiny 63DD E5 81 1202 mov a,sp 63DF 24 FC 1203 add a,#0xfc 63E1 F5 81 1204 mov sp,a 1205 ; ../src/main.c:96: printf_tiny(" &heap end 0x%x\n\r", (__xdata char *) (heap + HEAP_SIZE-1)); 1206 ; genIpush 63E3 74 01 1207 mov a,#(_heap + 0x02ff) 63E5 C0 E0 1208 push acc 63E7 74 C3 1209 mov a,#((_heap + 0x02ff) >> 8) 63E9 C0 E0 1210 push acc 1211 ; genIpush 63EB 74 1B 1212 mov a,#__str_21 63ED C0 E0 1213 push acc 63EF 74 78 1214 mov a,#(__str_21 >> 8) 63F1 C0 E0 1215 push acc 1216 ; genCall 63F3 12 6B E1 1217 lcall _printf_tiny 63F6 E5 81 1218 mov a,sp 63F8 24 FC 1219 add a,#0xfc 63FA F5 81 1220 mov sp,a 1221 ; ../src/main.c:98: printf("&buffer0 pointer variable 0x%4X\n\r", (__xdata char *) &buffer0); 1222 ; genIpush 63FC 74 0B 1223 mov a,#_main_buffer0_1_1 63FE C0 E0 1224 push acc 6400 74 C3 1225 mov a,#(_main_buffer0_1_1 >> 8) 6402 C0 E0 1226 push acc 1227 ; genIpush 6404 74 2E 1228 mov a,#__str_22 6406 C0 E0 1229 push acc 6408 74 78 1230 mov a,#(__str_22 >> 8) 640A C0 E0 1231 push acc 640C 74 80 1232 mov a,#0x80 640E C0 E0 1233 push acc 1234 ; genCall 6410 12 6D D3 1235 lcall _printf 6413 E5 81 1236 mov a,sp 6415 24 FB 1237 add a,#0xfb 6417 F5 81 1238 mov sp,a 1239 ; ../src/main.c:99: printf_tiny("printf_tiny &buffer0 pointer variable 0x%x\n\r", (__xdata char *) &buffer0); 1240 ; genIpush 6419 74 0B 1241 mov a,#_main_buffer0_1_1 641B C0 E0 1242 push acc 641D 74 C3 1243 mov a,#(_main_buffer0_1_1 >> 8) 641F C0 E0 1244 push acc 1245 ; genIpush 6421 74 50 1246 mov a,#__str_23 6423 C0 E0 1247 push acc 6425 74 78 1248 mov a,#(__str_23 >> 8) 6427 C0 E0 1249 push acc 1250 ; genCall 6429 12 6B E1 1251 lcall _printf_tiny 642C E5 81 1252 mov a,sp 642E 24 FC 1253 add a,#0xfc 6430 F5 81 1254 mov sp,a 1255 ; ../src/main.c:101: printf("&buffer0 malloc 0x%4X\n\r", (unsigned int) &buffer0[0]); 1256 ; genAssign 6432 90 C3 0B 1257 mov dptr,#_main_buffer0_1_1 6435 E0 1258 movx a,@dptr 6436 FA 1259 mov r2,a 6437 A3 1260 inc dptr 6438 E0 1261 movx a,@dptr 6439 FB 1262 mov r3,a 1263 ; genCast 1264 ; genIpush 643A C0 02 1265 push ar2 643C C0 03 1266 push ar3 1267 ; genIpush 643E 74 7D 1268 mov a,#__str_24 6440 C0 E0 1269 push acc 6442 74 78 1270 mov a,#(__str_24 >> 8) 6444 C0 E0 1271 push acc 6446 74 80 1272 mov a,#0x80 6448 C0 E0 1273 push acc 1274 ; genCall 644A 12 6D D3 1275 lcall _printf 644D E5 81 1276 mov a,sp 644F 24 FB 1277 add a,#0xfb 6451 F5 81 1278 mov sp,a 1279 ; ../src/main.c:102: printf_tiny("printf_tiny &buffer0 malloc 0x%x\n\r", (unsigned int) &buffer0[0]); 1280 ; genAssign 6453 90 C3 0B 1281 mov dptr,#_main_buffer0_1_1 6456 E0 1282 movx a,@dptr 6457 FA 1283 mov r2,a 6458 A3 1284 inc dptr 6459 E0 1285 movx a,@dptr 645A FB 1286 mov r3,a 1287 ; genCast 1288 ; genIpush 645B C0 02 1289 push ar2 645D C0 03 1290 push ar3 1291 ; genIpush 645F 74 95 1292 mov a,#__str_25 6461 C0 E0 1293 push acc 6463 74 78 1294 mov a,#(__str_25 >> 8) 6465 C0 E0 1295 push acc 1296 ; genCall 6467 12 6B E1 1297 lcall _printf_tiny 646A E5 81 1298 mov a,sp 646C 24 FC 1299 add a,#0xfc 646E F5 81 1300 mov sp,a 1301 ; ../src/main.c:103: printf("&buffer1 pointer variable 0x%4X\n\r", (__xdata char *) &buffer1); 1302 ; genIpush 6470 74 0D 1303 mov a,#_main_buffer1_1_1 6472 C0 E0 1304 push acc 6474 74 C3 1305 mov a,#(_main_buffer1_1_1 >> 8) 6476 C0 E0 1306 push acc 1307 ; genIpush 6478 74 B8 1308 mov a,#__str_26 647A C0 E0 1309 push acc 647C 74 78 1310 mov a,#(__str_26 >> 8) 647E C0 E0 1311 push acc 6480 74 80 1312 mov a,#0x80 6482 C0 E0 1313 push acc 1314 ; genCall 6484 12 6D D3 1315 lcall _printf 6487 E5 81 1316 mov a,sp 6489 24 FB 1317 add a,#0xfb 648B F5 81 1318 mov sp,a 1319 ; ../src/main.c:104: printf_tiny("printf_tiny &buffer1 pointer variable 0x%x\n\r", (__xdata char *) &buffer1); 1320 ; genIpush 648D 74 0D 1321 mov a,#_main_buffer1_1_1 648F C0 E0 1322 push acc 6491 74 C3 1323 mov a,#(_main_buffer1_1_1 >> 8) 6493 C0 E0 1324 push acc 1325 ; genIpush 6495 74 DA 1326 mov a,#__str_27 6497 C0 E0 1327 push acc 6499 74 78 1328 mov a,#(__str_27 >> 8) 649B C0 E0 1329 push acc 1330 ; genCall 649D 12 6B E1 1331 lcall _printf_tiny 64A0 E5 81 1332 mov a,sp 64A2 24 FC 1333 add a,#0xfc 64A4 F5 81 1334 mov sp,a 1335 ; ../src/main.c:105: printf("&buffer1 malloc 0x%4X\n\r", (unsigned int) &buffer1[0]); 1336 ; genAssign 64A6 90 C3 0D 1337 mov dptr,#_main_buffer1_1_1 64A9 E0 1338 movx a,@dptr 64AA FA 1339 mov r2,a 64AB A3 1340 inc dptr 64AC E0 1341 movx a,@dptr 64AD FB 1342 mov r3,a 1343 ; genCast 1344 ; genIpush 64AE C0 02 1345 push ar2 64B0 C0 03 1346 push ar3 1347 ; genIpush 64B2 74 07 1348 mov a,#__str_28 64B4 C0 E0 1349 push acc 64B6 74 79 1350 mov a,#(__str_28 >> 8) 64B8 C0 E0 1351 push acc 64BA 74 80 1352 mov a,#0x80 64BC C0 E0 1353 push acc 1354 ; genCall 64BE 12 6D D3 1355 lcall _printf 64C1 E5 81 1356 mov a,sp 64C3 24 FB 1357 add a,#0xfb 64C5 F5 81 1358 mov sp,a 1359 ; ../src/main.c:106: printf_tiny("printf_tiny &buffer1 malloc 0x%x\n\r", (unsigned int) &buffer1[0]); 1360 ; genAssign 64C7 90 C3 0D 1361 mov dptr,#_main_buffer1_1_1 64CA E0 1362 movx a,@dptr 64CB FA 1363 mov r2,a 64CC A3 1364 inc dptr 64CD E0 1365 movx a,@dptr 64CE FB 1366 mov r3,a 1367 ; genCast 1368 ; genIpush 64CF C0 02 1369 push ar2 64D1 C0 03 1370 push ar3 1371 ; genIpush 64D3 74 1F 1372 mov a,#__str_29 64D5 C0 E0 1373 push acc 64D7 74 79 1374 mov a,#(__str_29 >> 8) 64D9 C0 E0 1375 push acc 1376 ; genCall 64DB 12 6B E1 1377 lcall _printf_tiny 64DE E5 81 1378 mov a,sp 64E0 24 FC 1379 add a,#0xfc 64E2 F5 81 1380 mov sp,a 1381 ; ../src/main.c:107: printf("&buffer1 malloc 0x%4X\n\r", (unsigned int) buffer1); 1382 ; genAssign 64E4 90 C3 0D 1383 mov dptr,#_main_buffer1_1_1 64E7 E0 1384 movx a,@dptr 64E8 FA 1385 mov r2,a 64E9 A3 1386 inc dptr 64EA E0 1387 movx a,@dptr 64EB FB 1388 mov r3,a 1389 ; genCast 1390 ; genIpush 64EC C0 02 1391 push ar2 64EE C0 03 1392 push ar3 1393 ; genIpush 64F0 74 07 1394 mov a,#__str_28 64F2 C0 E0 1395 push acc 64F4 74 79 1396 mov a,#(__str_28 >> 8) 64F6 C0 E0 1397 push acc 64F8 74 80 1398 mov a,#0x80 64FA C0 E0 1399 push acc 1400 ; genCall 64FC 12 6D D3 1401 lcall _printf 64FF E5 81 1402 mov a,sp 6501 24 FB 1403 add a,#0xfb 6503 F5 81 1404 mov sp,a 1405 ; ../src/main.c:108: printf_tiny("printf_tiny &buffer1 malloc 0x%x\n\r", (unsigned int) buffer1); 1406 ; genAssign 6505 90 C3 0D 1407 mov dptr,#_main_buffer1_1_1 6508 E0 1408 movx a,@dptr 6509 FA 1409 mov r2,a 650A A3 1410 inc dptr 650B E0 1411 movx a,@dptr 650C FB 1412 mov r3,a 1413 ; genCast 1414 ; genIpush 650D C0 02 1415 push ar2 650F C0 03 1416 push ar3 1417 ; genIpush 6511 74 1F 1418 mov a,#__str_29 6513 C0 E0 1419 push acc 6515 74 79 1420 mov a,#(__str_29 >> 8) 6517 C0 E0 1421 push acc 1422 ; genCall 6519 12 6B E1 1423 lcall _printf_tiny 651C E5 81 1424 mov a,sp 651E 24 FC 1425 add a,#0xfc 6520 F5 81 1426 mov sp,a 1427 ; ../src/main.c:116: printf_tiny("%c\n\r", 'p'); 1428 ; genIpush 6522 74 70 1429 mov a,#0x70 6524 C0 E0 1430 push acc 1431 ; Peephole 181 changed mov to clr 6526 E4 1432 clr a 6527 C0 E0 1433 push acc 1434 ; genIpush 6529 74 42 1435 mov a,#__str_30 652B C0 E0 1436 push acc 652D 74 79 1437 mov a,#(__str_30 >> 8) 652F C0 E0 1438 push acc 1439 ; genCall 6531 12 6B E1 1440 lcall _printf_tiny 6534 E5 81 1441 mov a,sp 6536 24 FC 1442 add a,#0xfc 6538 F5 81 1443 mov sp,a 1444 ; ../src/main.c:117: printf_tiny("%c\n\r", (char) 'p'); 1445 ; genIpush 653A 74 70 1446 mov a,#0x70 653C C0 E0 1447 push acc 1448 ; genIpush 653E 74 42 1449 mov a,#__str_30 6540 C0 E0 1450 push acc 6542 74 79 1451 mov a,#(__str_30 >> 8) 6544 C0 E0 1452 push acc 1453 ; genCall 6546 12 6B E1 1454 lcall _printf_tiny 6549 15 81 1455 dec sp 654B 15 81 1456 dec sp 654D 15 81 1457 dec sp 1458 ; ../src/main.c:118: printf_tiny("%u\n\r", 'p'); 1459 ; genIpush 654F 74 70 1460 mov a,#0x70 6551 C0 E0 1461 push acc 1462 ; Peephole 181 changed mov to clr 6553 E4 1463 clr a 6554 C0 E0 1464 push acc 1465 ; genIpush 6556 74 47 1466 mov a,#__str_31 6558 C0 E0 1467 push acc 655A 74 79 1468 mov a,#(__str_31 >> 8) 655C C0 E0 1469 push acc 1470 ; genCall 655E 12 6B E1 1471 lcall _printf_tiny 6561 E5 81 1472 mov a,sp 6563 24 FC 1473 add a,#0xfc 6565 F5 81 1474 mov sp,a 1475 ; ../src/main.c:119: printf_tiny("%d\n\r", 'p'); 1476 ; genIpush 6567 74 70 1477 mov a,#0x70 6569 C0 E0 1478 push acc 1479 ; Peephole 181 changed mov to clr 656B E4 1480 clr a 656C C0 E0 1481 push acc 1482 ; genIpush 656E 74 4C 1483 mov a,#__str_32 6570 C0 E0 1484 push acc 6572 74 79 1485 mov a,#(__str_32 >> 8) 6574 C0 E0 1486 push acc 1487 ; genCall 6576 12 6B E1 1488 lcall _printf_tiny 6579 E5 81 1489 mov a,sp 657B 24 FC 1490 add a,#0xfc 657D F5 81 1491 mov sp,a 1492 ; ../src/main.c:120: printf_tiny("%s\n\r", "tiny"); 1493 ; genIpush 657F 74 56 1494 mov a,#__str_34 6581 C0 E0 1495 push acc 6583 74 79 1496 mov a,#(__str_34 >> 8) 6585 C0 E0 1497 push acc 6587 74 80 1498 mov a,#0x80 6589 C0 E0 1499 push acc 1500 ; genIpush 658B 74 51 1501 mov a,#__str_33 658D C0 E0 1502 push acc 658F 74 79 1503 mov a,#(__str_33 >> 8) 6591 C0 E0 1504 push acc 1505 ; genCall 6593 12 6B E1 1506 lcall _printf_tiny 6596 E5 81 1507 mov a,sp 6598 24 FB 1508 add a,#0xfb 659A F5 81 1509 mov sp,a 1510 ; ../src/main.c:121: printf_tiny("%x\n\r", 'p'); 1511 ; genIpush 659C 74 70 1512 mov a,#0x70 659E C0 E0 1513 push acc 1514 ; Peephole 181 changed mov to clr 65A0 E4 1515 clr a 65A1 C0 E0 1516 push acc 1517 ; genIpush 65A3 74 5B 1518 mov a,#__str_35 65A5 C0 E0 1519 push acc 65A7 74 79 1520 mov a,#(__str_35 >> 8) 65A9 C0 E0 1521 push acc 1522 ; genCall 65AB 12 6B E1 1523 lcall _printf_tiny 65AE E5 81 1524 mov a,sp 65B0 24 FC 1525 add a,#0xfc 65B2 F5 81 1526 mov sp,a 1527 ; ../src/main.c:122: gets(buffer0); 1528 ; genAssign 65B4 90 C3 0B 1529 mov dptr,#_main_buffer0_1_1 65B7 E0 1530 movx a,@dptr 65B8 FA 1531 mov r2,a 65B9 A3 1532 inc dptr 65BA E0 1533 movx a,@dptr 65BB FB 1534 mov r3,a 1535 ; genCast 65BC 7C 00 1536 mov r4,#0x0 1537 ; genCall 65BE 8A 82 1538 mov dpl,r2 65C0 8B 83 1539 mov dph,r3 65C2 8C F0 1540 mov b,r4 65C4 12 6A B4 1541 lcall _gets 1542 ; ../src/main.c:123: puts(buffer0); 1543 ; genAssign 65C7 90 C3 0B 1544 mov dptr,#_main_buffer0_1_1 65CA E0 1545 movx a,@dptr 65CB FA 1546 mov r2,a 65CC A3 1547 inc dptr 65CD E0 1548 movx a,@dptr 65CE FB 1549 mov r3,a 1550 ; genCast 65CF 7C 00 1551 mov r4,#0x0 1552 ; genCall 65D1 8A 82 1553 mov dpl,r2 65D3 8B 83 1554 mov dph,r3 65D5 8C F0 1555 mov b,r4 65D7 12 6D 09 1556 lcall _puts 1557 ; ../src/main.c:76: for (;ii < 5; ii++) 1558 ; genAssign 65DA 90 C3 03 1559 mov dptr,#_main_ii_1_1 65DD E0 1560 movx a,@dptr 65DE FA 1561 mov r2,a 65DF A3 1562 inc dptr 65E0 E0 1563 movx a,@dptr 65E1 FB 1564 mov r3,a 1565 ; genPlus 65E2 90 C3 03 1566 mov dptr,#_main_ii_1_1 1567 ; genPlusIncr 65E5 74 01 1568 mov a,#0x01 1569 ; Peephole 236.a used r2 instead of ar2 65E7 2A 1570 add a,r2 65E8 F0 1571 movx @dptr,a 1572 ; Peephole 181 changed mov to clr 65E9 E4 1573 clr a 1574 ; Peephole 236.b used r3 instead of ar3 65EA 3B 1575 addc a,r3 65EB A3 1576 inc dptr 65EC F0 1577 movx @dptr,a 65ED 02 61 BF 1578 ljmp 00112$ 65F0 1579 00115$: 1580 ; ../src/main.c:126: putstr("Embedded Systems\n\r"); 1581 ; genCall 1582 ; Peephole 182.a used 16 bit load of DPTR 65F0 90 79 60 1583 mov dptr,#__str_36 65F3 75 F0 80 1584 mov b,#0x80 65F6 12 67 93 1585 lcall _putstr 65F9 02 61 90 1586 ljmp 00110$ 1587 ; Peephole 259.b removed redundant label 00116$ and ret 1588 ; 1589 ;------------------------------------------------------------ 1590 ;Allocation info for local variables in function 'isr_zero' 1591 ;------------------------------------------------------------ 1592 ;ii Allocated with name '_isr_zero_ii_1_1' 1593 ;------------------------------------------------------------ 1594 ; ../src/main.c:136: void isr_zero(void) __interrupt (0) 1595 ; ----------------------------------------- 1596 ; function isr_zero 1597 ; ----------------------------------------- 65FC 1598 _isr_zero: 65FC C0 E0 1599 push acc 65FE C0 F0 1600 push b 6600 C0 82 1601 push dpl 6602 C0 83 1602 push dph 6604 C0 02 1603 push (0+2) 6606 C0 03 1604 push (0+3) 6608 C0 04 1605 push (0+4) 660A C0 05 1606 push (0+5) 660C C0 06 1607 push (0+6) 660E C0 07 1608 push (0+7) 6610 C0 00 1609 push (0+0) 6612 C0 01 1610 push (0+1) 6614 C0 D0 1611 push psw 6616 75 D0 00 1612 mov psw,#0x00 1613 ; ../src/main.c:141: P1 = 0x11; 1614 ; genAssign 6619 75 90 11 1615 mov _P1,#0x11 1616 ; ../src/main.c:142: gg++; // increment global variable, which must be declared as volatile 1617 ; genPlus 661C 90 C0 00 1618 mov dptr,#_gg 661F E0 1619 movx a,@dptr 6620 24 01 1620 add a,#0x01 6622 F0 1621 movx @dptr,a 6623 A3 1622 inc dptr 6624 E0 1623 movx a,@dptr 6625 34 00 1624 addc a,#0x00 6627 F0 1625 movx @dptr,a 1626 ; ../src/main.c:147: } 1627 ; genCritical 6628 D2 00 1628 setb _isr_zero_sloc0_1_0 662A 10 AF 02 1629 jbc ea,00103$ 662D C2 00 1630 clr _isr_zero_sloc0_1_0 662F 1631 00103$: 1632 ; ../src/main.c:145: P1 = ~P1; 1633 ; genCpl 662F E5 90 1634 mov a,_P1 6631 F4 1635 cpl a 6632 F5 90 1636 mov _P1,a 1637 ; ../src/main.c:146: P3 |= 0x01; 1638 ; genOr 6634 43 B0 01 1639 orl _P3,#0x01 1640 ; genEndCritical 6637 A2 00 1641 mov c,_isr_zero_sloc0_1_0 6639 92 AF 1642 mov ea,c 1643 ; ../src/main.c:148: puts("ISR 0"); 1644 ; genCall 1645 ; Peephole 182.a used 16 bit load of DPTR 663B 90 79 73 1646 mov dptr,#__str_37 663E 75 F0 80 1647 mov b,#0x80 6641 12 6D 09 1648 lcall _puts 1649 ; Peephole 300 removed redundant label 00101$ 6644 D0 D0 1650 pop psw 6646 D0 01 1651 pop (0+1) 6648 D0 00 1652 pop (0+0) 664A D0 07 1653 pop (0+7) 664C D0 06 1654 pop (0+6) 664E D0 05 1655 pop (0+5) 6650 D0 04 1656 pop (0+4) 6652 D0 03 1657 pop (0+3) 6654 D0 02 1658 pop (0+2) 6656 D0 83 1659 pop dph 6658 D0 82 1660 pop dpl 665A D0 F0 1661 pop b 665C D0 E0 1662 pop acc 665E 32 1663 reti 1664 ;------------------------------------------------------------ 1665 ;Allocation info for local variables in function 'isr_one' 1666 ;------------------------------------------------------------ 1667 ;ii Allocated with name '_isr_one_ii_1_1' 1668 ;------------------------------------------------------------ 1669 ; ../src/main.c:151: void isr_one(void) __interrupt (1) __naked 1670 ; ----------------------------------------- 1671 ; function isr_one 1672 ; ----------------------------------------- 665F 1673 _isr_one: 1674 ; naked function: no prologue. 1675 ; ../src/main.c:156: P1 = 0x11; 1676 ; genAssign 665F 75 90 11 1677 mov _P1,#0x11 1678 ; ../src/main.c:158: __critical {P1 = ~P1;} 1679 ; genCritical 6662 D2 01 1680 setb _isr_one_sloc0_1_0 6664 10 AF 02 1681 jbc ea,00103$ 6667 C2 01 1682 clr _isr_one_sloc0_1_0 6669 1683 00103$: 1684 ; genCpl 6669 E5 90 1685 mov a,_P1 666B F4 1686 cpl a 666C F5 90 1687 mov _P1,a 1688 ; genEndCritical 666E A2 01 1689 mov c,_isr_one_sloc0_1_0 6670 92 AF 1690 mov ea,c 1691 ; Peephole 300 removed redundant label 00101$ 1692 ; naked function: no epilogue. 1693 ;------------------------------------------------------------ 1694 ;Allocation info for local variables in function 'isr_two' 1695 ;------------------------------------------------------------ 1696 ;ii Allocated with name '_isr_two_ii_1_1' 1697 ;------------------------------------------------------------ 1698 ; ../src/main.c:161: void isr_two(void) __interrupt (2) 1699 ; ----------------------------------------- 1700 ; function isr_two 1701 ; ----------------------------------------- 6672 1702 _isr_two: 6672 C0 E0 1703 push acc 6674 C0 F0 1704 push b 6676 C0 82 1705 push dpl 6678 C0 83 1706 push dph 667A C0 02 1707 push (0+2) 667C C0 03 1708 push (0+3) 667E C0 04 1709 push (0+4) 6680 C0 05 1710 push (0+5) 6682 C0 06 1711 push (0+6) 6684 C0 07 1712 push (0+7) 6686 C0 00 1713 push (0+0) 6688 C0 01 1714 push (0+1) 668A C0 D0 1715 push psw 668C 75 D0 00 1716 mov psw,#0x00 1717 ; ../src/main.c:166: P1 = 0x11; 1718 ; genAssign 668F 75 90 11 1719 mov _P1,#0x11 1720 ; ../src/main.c:168: __critical {P1 = ~P1;} 1721 ; genCritical 6692 D2 02 1722 setb _isr_two_sloc0_1_0 6694 10 AF 02 1723 jbc ea,00103$ 6697 C2 02 1724 clr _isr_two_sloc0_1_0 6699 1725 00103$: 1726 ; genCpl 6699 E5 90 1727 mov a,_P1 669B F4 1728 cpl a 669C F5 90 1729 mov _P1,a 1730 ; genEndCritical 669E A2 02 1731 mov c,_isr_two_sloc0_1_0 66A0 92 AF 1732 mov ea,c 1733 ; ../src/main.c:169: puts("ISR 2"); 1734 ; genCall 1735 ; Peephole 182.a used 16 bit load of DPTR 66A2 90 79 79 1736 mov dptr,#__str_38 66A5 75 F0 80 1737 mov b,#0x80 66A8 12 6D 09 1738 lcall _puts 1739 ; Peephole 300 removed redundant label 00101$ 66AB D0 D0 1740 pop psw 66AD D0 01 1741 pop (0+1) 66AF D0 00 1742 pop (0+0) 66B1 D0 07 1743 pop (0+7) 66B3 D0 06 1744 pop (0+6) 66B5 D0 05 1745 pop (0+5) 66B7 D0 04 1746 pop (0+4) 66B9 D0 03 1747 pop (0+3) 66BB D0 02 1748 pop (0+2) 66BD D0 83 1749 pop dph 66BF D0 82 1750 pop dpl 66C1 D0 F0 1751 pop b 66C3 D0 E0 1752 pop acc 66C5 32 1753 reti 1754 ;------------------------------------------------------------ 1755 ;Allocation info for local variables in function 'isr_three' 1756 ;------------------------------------------------------------ 1757 ;ii Allocated with name '_isr_three_ii_1_1' 1758 ;------------------------------------------------------------ 1759 ; ../src/main.c:172: void isr_three(void) __interrupt (3) 1760 ; ----------------------------------------- 1761 ; function isr_three 1762 ; ----------------------------------------- 66C6 1763 _isr_three: 66C6 C0 E0 1764 push acc 66C8 C0 F0 1765 push b 66CA C0 82 1766 push dpl 66CC C0 83 1767 push dph 66CE C0 02 1768 push (0+2) 66D0 C0 03 1769 push (0+3) 66D2 C0 04 1770 push (0+4) 66D4 C0 05 1771 push (0+5) 66D6 C0 06 1772 push (0+6) 66D8 C0 07 1773 push (0+7) 66DA C0 00 1774 push (0+0) 66DC C0 01 1775 push (0+1) 66DE C0 D0 1776 push psw 66E0 75 D0 00 1777 mov psw,#0x00 1778 ; ../src/main.c:177: P1 = 0x11; 1779 ; genAssign 66E3 75 90 11 1780 mov _P1,#0x11 1781 ; ../src/main.c:179: __critical {P1 = ~P1;} 1782 ; genCritical 66E6 D2 03 1783 setb _isr_three_sloc0_1_0 66E8 10 AF 02 1784 jbc ea,00103$ 66EB C2 03 1785 clr _isr_three_sloc0_1_0 66ED 1786 00103$: 1787 ; genCpl 66ED E5 90 1788 mov a,_P1 66EF F4 1789 cpl a 66F0 F5 90 1790 mov _P1,a 1791 ; genEndCritical 66F2 A2 03 1792 mov c,_isr_three_sloc0_1_0 66F4 92 AF 1793 mov ea,c 1794 ; ../src/main.c:180: puts("ISR 3"); 1795 ; genCall 1796 ; Peephole 182.a used 16 bit load of DPTR 66F6 90 79 7F 1797 mov dptr,#__str_39 66F9 75 F0 80 1798 mov b,#0x80 66FC 12 6D 09 1799 lcall _puts 1800 ; Peephole 300 removed redundant label 00101$ 66FF D0 D0 1801 pop psw 6701 D0 01 1802 pop (0+1) 6703 D0 00 1803 pop (0+0) 6705 D0 07 1804 pop (0+7) 6707 D0 06 1805 pop (0+6) 6709 D0 05 1806 pop (0+5) 670B D0 04 1807 pop (0+4) 670D D0 03 1808 pop (0+3) 670F D0 02 1809 pop (0+2) 6711 D0 83 1810 pop dph 6713 D0 82 1811 pop dpl 6715 D0 F0 1812 pop b 6717 D0 E0 1813 pop acc 6719 32 1814 reti 1815 ;------------------------------------------------------------ 1816 ;Allocation info for local variables in function 'isr_four' 1817 ;------------------------------------------------------------ 1818 ;ii Allocated with name '_isr_four_ii_1_1' 1819 ;------------------------------------------------------------ 1820 ; ../src/main.c:183: void isr_four(void) __interrupt (4) __naked 1821 ; ----------------------------------------- 1822 ; function isr_four 1823 ; ----------------------------------------- 671A 1824 _isr_four: 1825 ; naked function: no prologue. 1826 ; ../src/main.c:188: P1 = 0x11; 1827 ; genAssign 671A 75 90 11 1828 mov _P1,#0x11 1829 ; ../src/main.c:190: __critical {P1 = ~P1;} 1830 ; genCritical 671D D2 04 1831 setb _isr_four_sloc0_1_0 671F 10 AF 02 1832 jbc ea,00103$ 6722 C2 04 1833 clr _isr_four_sloc0_1_0 6724 1834 00103$: 1835 ; genCpl 6724 E5 90 1836 mov a,_P1 6726 F4 1837 cpl a 6727 F5 90 1838 mov _P1,a 1839 ; genEndCritical 6729 A2 04 1840 mov c,_isr_four_sloc0_1_0 672B 92 AF 1841 mov ea,c 1842 ; ../src/main.c:191: puts("ISR 4"); 1843 ; genCall 1844 ; Peephole 182.a used 16 bit load of DPTR 672D 90 79 85 1845 mov dptr,#__str_40 6730 75 F0 80 1846 mov b,#0x80 6733 12 6D 09 1847 lcall _puts 1848 ; Peephole 300 removed redundant label 00101$ 1849 ; naked function: no epilogue. 1850 ;------------------------------------------------------------ 1851 ;Allocation info for local variables in function 'isr_five' 1852 ;------------------------------------------------------------ 1853 ;ii Allocated with name '_isr_five_ii_1_1' 1854 ;------------------------------------------------------------ 1855 ; ../src/main.c:194: void isr_five(void) __interrupt (5) 1856 ; ----------------------------------------- 1857 ; function isr_five 1858 ; ----------------------------------------- 6736 1859 _isr_five: 6736 C0 E0 1860 push acc 6738 C0 D0 1861 push psw 673A 75 D0 00 1862 mov psw,#0x00 1863 ; ../src/main.c:199: P1 = 0x11; 1864 ; genAssign 673D 75 90 11 1865 mov _P1,#0x11 1866 ; ../src/main.c:201: __critical {P1 = ~P1;} 1867 ; genCritical 6740 D2 05 1868 setb _isr_five_sloc0_1_0 6742 10 AF 02 1869 jbc ea,00103$ 6745 C2 05 1870 clr _isr_five_sloc0_1_0 6747 1871 00103$: 1872 ; genCpl 6747 E5 90 1873 mov a,_P1 6749 F4 1874 cpl a 674A F5 90 1875 mov _P1,a 1876 ; genEndCritical 674C A2 05 1877 mov c,_isr_five_sloc0_1_0 674E 92 AF 1878 mov ea,c 1879 ; Peephole 300 removed redundant label 00101$ 6750 D0 D0 1880 pop psw 6752 D0 E0 1881 pop acc 6754 32 1882 reti 1883 ; eliminated unneeded push/pop dpl 1884 ; eliminated unneeded push/pop dph 1885 ; eliminated unneeded push/pop b 1886 ;------------------------------------------------------------ 1887 ;Allocation info for local variables in function 'isr_six' 1888 ;------------------------------------------------------------ 1889 ;ii Allocated with name '_isr_six_ii_1_1' 1890 ;------------------------------------------------------------ 1891 ; ../src/main.c:205: void isr_six(void) __interrupt (6) 1892 ; ----------------------------------------- 1893 ; function isr_six 1894 ; ----------------------------------------- 6755 1895 _isr_six: 6755 C0 E0 1896 push acc 6757 C0 D0 1897 push psw 6759 75 D0 00 1898 mov psw,#0x00 1899 ; ../src/main.c:210: P1 = 0x11; 1900 ; genAssign 675C 75 90 11 1901 mov _P1,#0x11 1902 ; ../src/main.c:212: __critical {P1 = ~P1;} 1903 ; genCritical 675F D2 06 1904 setb _isr_six_sloc0_1_0 6761 10 AF 02 1905 jbc ea,00103$ 6764 C2 06 1906 clr _isr_six_sloc0_1_0 6766 1907 00103$: 1908 ; genCpl 6766 E5 90 1909 mov a,_P1 6768 F4 1910 cpl a 6769 F5 90 1911 mov _P1,a 1912 ; genEndCritical 676B A2 06 1913 mov c,_isr_six_sloc0_1_0 676D 92 AF 1914 mov ea,c 1915 ; Peephole 300 removed redundant label 00101$ 676F D0 D0 1916 pop psw 6771 D0 E0 1917 pop acc 6773 32 1918 reti 1919 ; eliminated unneeded push/pop dpl 1920 ; eliminated unneeded push/pop dph 1921 ; eliminated unneeded push/pop b 1922 ;------------------------------------------------------------ 1923 ;Allocation info for local variables in function 'isr_seven' 1924 ;------------------------------------------------------------ 1925 ;ii Allocated with name '_isr_seven_ii_1_1' 1926 ;------------------------------------------------------------ 1927 ; ../src/main.c:216: void isr_seven(void) __interrupt (7) 1928 ; ----------------------------------------- 1929 ; function isr_seven 1930 ; ----------------------------------------- 6774 1931 _isr_seven: 6774 C0 E0 1932 push acc 6776 C0 D0 1933 push psw 6778 75 D0 00 1934 mov psw,#0x00 1935 ; ../src/main.c:221: P1 = 0x11; 1936 ; genAssign 677B 75 90 11 1937 mov _P1,#0x11 1938 ; ../src/main.c:223: __critical {P1 = ~P1;} 1939 ; genCritical 677E D2 07 1940 setb _isr_seven_sloc0_1_0 6780 10 AF 02 1941 jbc ea,00103$ 6783 C2 07 1942 clr _isr_seven_sloc0_1_0 6785 1943 00103$: 1944 ; genCpl 6785 E5 90 1945 mov a,_P1 6787 F4 1946 cpl a 6788 F5 90 1947 mov _P1,a 1948 ; genEndCritical 678A A2 07 1949 mov c,_isr_seven_sloc0_1_0 678C 92 AF 1950 mov ea,c 1951 ; Peephole 300 removed redundant label 00101$ 678E D0 D0 1952 pop psw 6790 D0 E0 1953 pop acc 6792 32 1954 reti 1955 ; eliminated unneeded push/pop dpl 1956 ; eliminated unneeded push/pop dph 1957 ; eliminated unneeded push/pop b 1958 ;------------------------------------------------------------ 1959 ;Allocation info for local variables in function 'putstr' 1960 ;------------------------------------------------------------ 1961 ;s Allocated with name '_putstr_s_1_1' 1962 ;i Allocated with name '_putstr_i_1_1' 1963 ;------------------------------------------------------------ 1964 ; ../src/main.c:227: int putstr (char *s) 1965 ; ----------------------------------------- 1966 ; function putstr 1967 ; ----------------------------------------- 6793 1968 _putstr: 1969 ; genReceive 6793 AA F0 1970 mov r2,b 6795 AB 83 1971 mov r3,dph 6797 E5 82 1972 mov a,dpl 6799 90 C3 0F 1973 mov dptr,#_putstr_s_1_1 679C F0 1974 movx @dptr,a 679D A3 1975 inc dptr 679E EB 1976 mov a,r3 679F F0 1977 movx @dptr,a 67A0 A3 1978 inc dptr 67A1 EA 1979 mov a,r2 67A2 F0 1980 movx @dptr,a 1981 ; ../src/main.c:230: while (*s){ // output characters until NULL found 1982 ; genAssign 67A3 90 C3 0F 1983 mov dptr,#_putstr_s_1_1 67A6 E0 1984 movx a,@dptr 67A7 FA 1985 mov r2,a 67A8 A3 1986 inc dptr 67A9 E0 1987 movx a,@dptr 67AA FB 1988 mov r3,a 67AB A3 1989 inc dptr 67AC E0 1990 movx a,@dptr 67AD FC 1991 mov r4,a 1992 ; genAssign 67AE 7D 00 1993 mov r5,#0x00 67B0 7E 00 1994 mov r6,#0x00 67B2 1995 00101$: 1996 ; genPointerGet 1997 ; genGenPointerGet 67B2 8A 82 1998 mov dpl,r2 67B4 8B 83 1999 mov dph,r3 67B6 8C F0 2000 mov b,r4 67B8 12 76 72 2001 lcall __gptrget 2002 ; genIfx 67BB FF 2003 mov r7,a 2004 ; Peephole 105 removed redundant mov 2005 ; genIfxJump 2006 ; Peephole 108.c removed ljmp by inverse jump logic 67BC 60 30 2007 jz 00108$ 2008 ; Peephole 300 removed redundant label 00109$ 2009 ; ../src/main.c:231: putchar(*s++); 2010 ; genAssign 2011 ; genPlus 2012 ; genPlusIncr 67BE 0A 2013 inc r2 67BF BA 00 01 2014 cjne r2,#0x00,00110$ 67C2 0B 2015 inc r3 67C3 2016 00110$: 2017 ; genAssign 67C3 90 C3 0F 2018 mov dptr,#_putstr_s_1_1 67C6 EA 2019 mov a,r2 67C7 F0 2020 movx @dptr,a 67C8 A3 2021 inc dptr 67C9 EB 2022 mov a,r3 67CA F0 2023 movx @dptr,a 67CB A3 2024 inc dptr 67CC EC 2025 mov a,r4 67CD F0 2026 movx @dptr,a 2027 ; genCall 67CE 8F 82 2028 mov dpl,r7 67D0 C0 02 2029 push ar2 67D2 C0 03 2030 push ar3 67D4 C0 04 2031 push ar4 67D6 C0 05 2032 push ar5 67D8 C0 06 2033 push ar6 67DA 12 68 03 2034 lcall _putchar 67DD D0 06 2035 pop ar6 67DF D0 05 2036 pop ar5 67E1 D0 04 2037 pop ar4 67E3 D0 03 2038 pop ar3 67E5 D0 02 2039 pop ar2 2040 ; ../src/main.c:232: i++; 2041 ; genPlus 2042 ; genPlusIncr 2043 ; tail increment optimized (range 8) 67E7 0D 2044 inc r5 67E8 BD 00 C7 2045 cjne r5,#0x00,00101$ 67EB 0E 2046 inc r6 2047 ; Peephole 112.b changed ljmp to sjmp 67EC 80 C4 2048 sjmp 00101$ 67EE 2049 00108$: 2050 ; genAssign 67EE 90 C3 0F 2051 mov dptr,#_putstr_s_1_1 67F1 EA 2052 mov a,r2 67F2 F0 2053 movx @dptr,a 67F3 A3 2054 inc dptr 67F4 EB 2055 mov a,r3 67F5 F0 2056 movx @dptr,a 67F6 A3 2057 inc dptr 67F7 EC 2058 mov a,r4 67F8 F0 2059 movx @dptr,a 2060 ; ../src/main.c:235: return i+1; 2061 ; genPlus 2062 ; genPlusIncr 67F9 0D 2063 inc r5 67FA BD 00 01 2064 cjne r5,#0x00,00111$ 67FD 0E 2065 inc r6 67FE 2066 00111$: 2067 ; genRet 67FE 8D 82 2068 mov dpl,r5 6800 8E 83 2069 mov dph,r6 2070 ; Peephole 300 removed redundant label 00104$ 6802 22 2071 ret 2072 ;------------------------------------------------------------ 2073 ;Allocation info for local variables in function 'putchar' 2074 ;------------------------------------------------------------ 2075 ;c Allocated with name '_putchar_c_1_1' 2076 ;------------------------------------------------------------ 2077 ; ../src/main.c:238: void putchar (char c) 2078 ; ----------------------------------------- 2079 ; function putchar 2080 ; ----------------------------------------- 6803 2081 _putchar: 2082 ; genReceive 6803 E5 82 2083 mov a,dpl 6805 90 C3 12 2084 mov dptr,#_putchar_c_1_1 6808 F0 2085 movx @dptr,a 2086 ; ../src/main.c:240: while (!TI); // compare asm code generated for these three lines 6809 2087 00101$: 2088 ; genIfx 2089 ; genIfxJump 2090 ; Peephole 108.d removed ljmp by inverse jump logic 6809 30 99 FD 2091 jnb _TI,00101$ 2092 ; Peephole 300 removed redundant label 00116$ 2093 ; ../src/main.c:241: while (TI == 0); 680C 2094 00104$: 2095 ; genIfx 2096 ; genIfxJump 2097 ; Peephole 108.d removed ljmp by inverse jump logic 680C 30 99 FD 2098 jnb _TI,00104$ 2099 ; Peephole 300 removed redundant label 00117$ 2100 ; ../src/main.c:242: while ((SCON & 0x02) == 0); // wait for TX ready, spin on TI 680F 2101 00107$: 2102 ; genAnd 680F E5 98 2103 mov a,_SCON 2104 ; genIfxJump 2105 ; Peephole 108.d removed ljmp by inverse jump logic 6811 30 E1 FB 2106 jnb acc.1,00107$ 2107 ; Peephole 300 removed redundant label 00118$ 2108 ; ../src/main.c:243: SBUF = c; // load serial port with transmit value 2109 ; genAssign 6814 90 C3 12 2110 mov dptr,#_putchar_c_1_1 6817 E0 2111 movx a,@dptr 6818 F5 99 2112 mov _SBUF,a 2113 ; ../src/main.c:244: TI = 0; // clear TI flag 2114 ; genAssign 681A C2 99 2115 clr _TI 2116 ; Peephole 300 removed redundant label 00110$ 681C 22 2117 ret 2118 ;------------------------------------------------------------ 2119 ;Allocation info for local variables in function 'getchar' 2120 ;------------------------------------------------------------ 2121 ;------------------------------------------------------------ 2122 ; ../src/main.c:248: char getchar () 2123 ; ----------------------------------------- 2124 ; function getchar 2125 ; ----------------------------------------- 681D 2126 _getchar: 2127 ; ../src/main.c:251: while (!RI); // compare asm code generated for these three lines 681D 2128 00101$: 2129 ; genIfx 2130 ; genIfxJump 2131 ; Peephole 108.d removed ljmp by inverse jump logic 681D 30 98 FD 2132 jnb _RI,00101$ 2133 ; Peephole 300 removed redundant label 00116$ 2134 ; ../src/main.c:252: while ((SCON & 0x01) == 0); // wait for character to be received, spin on RI 6820 2135 00104$: 2136 ; genAnd 6820 E5 98 2137 mov a,_SCON 2138 ; genIfxJump 2139 ; Peephole 108.d removed ljmp by inverse jump logic 6822 30 E0 FB 2140 jnb acc.0,00104$ 2141 ; Peephole 300 removed redundant label 00117$ 2142 ; ../src/main.c:253: while (RI == 0); 6825 2143 00107$: 2144 ; genIfx 2145 ; genIfxJump 2146 ; Peephole 108.d removed ljmp by inverse jump logic 2147 ; ../src/main.c:254: RI = 0; // clear RI flag 2148 ; genAssign 2149 ; Peephole 250.a using atomic test and clear 6825 10 98 02 2150 jbc _RI,00118$ 6828 80 FB 2151 sjmp 00107$ 682A 2152 00118$: 2153 ; ../src/main.c:255: return SBUF; // return character from SBUF 2154 ; genAssign 682A AA 99 2155 mov r2,_SBUF 2156 ; genRet 682C 8A 82 2157 mov dpl,r2 2158 ; Peephole 300 removed redundant label 00110$ 682E 22 2159 ret 2160 .area CSEG (CODE) 2161 .area CONST (CODE) 76AB 2162 __str_0: 76AB 6D 61 6C 6C 6F 63 2163 .ascii "malloc buffer0 failed" 20 62 75 66 66 65 72 30 20 66 61 69 6C 65 64 76C0 0A 2164 .db 0x0A 76C1 0D 2165 .db 0x0D 76C2 00 2166 .db 0x00 76C3 2167 __str_1: 76C3 6D 61 6C 6C 6F 63 2168 .ascii "malloc buffer1 failed" 20 62 75 66 66 65 72 31 20 66 61 69 6C 65 64 76D8 0A 2169 .db 0x0A 76D9 0D 2170 .db 0x0D 76DA 00 2171 .db 0x00 76DB 2172 __str_2: 76DB 6D 61 6C 6C 6F 63 2173 .ascii "malloc passed" 20 70 61 73 73 65 64 76E8 0A 2174 .db 0x0A 76E9 0D 2175 .db 0x0D 76EA 00 2176 .db 0x00 76EB 2177 __str_3: 76EB 68 65 6C 6C 6F 2178 .ascii "hello" 76F0 0A 2179 .db 0x0A 76F1 0D 2180 .db 0x0D 76F2 00 2181 .db 0x00 76F3 2182 __str_4: 76F3 0A 2183 .db 0x0A 76F4 0D 2184 .db 0x0D 76F5 20 68 65 6C 6C 6F 2185 .ascii " hello ii= %d " 20 69 69 3D 20 25 64 20 20 7704 00 2186 .db 0x00 7705 2187 __str_5: 7705 67 67 3D 20 25 64 2188 .ascii "gg= %d" 770B 0A 2189 .db 0x0A 770C 0D 2190 .db 0x0D 770D 00 2191 .db 0x00 770E 2192 __str_6: 770E 26 69 69 20 30 78 2193 .ascii "&ii 0x%4X" 25 34 58 7717 0A 2194 .db 0x0A 7718 0D 2195 .db 0x0D 7719 00 2196 .db 0x00 771A 2197 __str_7: 771A 70 72 69 6E 74 66 2198 .ascii "printf_tiny &ii 0x%x" 5F 74 69 6E 79 20 26 69 69 20 30 78 25 78 772E 0A 2199 .db 0x0A 772F 0D 2200 .db 0x0D 7730 00 2201 .db 0x00 7731 2202 __str_8: 7731 26 61 61 20 30 78 2203 .ascii "&aa 0x%4X" 25 34 58 773A 0A 2204 .db 0x0A 773B 0D 2205 .db 0x0D 773C 00 2206 .db 0x00 773D 2207 __str_9: 773D 70 72 69 6E 74 66 2208 .ascii "printf_tiny &aa 0x%x" 5F 74 69 6E 79 20 26 61 61 20 30 78 25 78 7751 0A 2209 .db 0x0A 7752 0D 2210 .db 0x0D 7753 00 2211 .db 0x00 7754 2212 __str_10: 7754 26 62 62 20 30 78 2213 .ascii "&bb 0x%4X" 25 34 58 775D 0A 2214 .db 0x0A 775E 0D 2215 .db 0x0D 775F 00 2216 .db 0x00 7760 2217 __str_11: 7760 70 72 69 6E 74 66 2218 .ascii "printf_tiny &bb 0x%x" 5F 74 69 6E 79 20 26 62 62 20 30 78 25 78 7774 0A 2219 .db 0x0A 7775 0D 2220 .db 0x0D 7776 00 2221 .db 0x00 7777 2222 __str_12: 7777 26 63 63 20 30 78 2223 .ascii "&cc 0x%4X" 25 34 58 7780 0A 2224 .db 0x0A 7781 0D 2225 .db 0x0D 7782 00 2226 .db 0x00 7783 2227 __str_13: 7783 70 72 69 6E 74 66 2228 .ascii "printf_tiny &cc 0x%x" 5F 74 69 6E 79 20 26 63 63 20 30 78 25 78 7797 0A 2229 .db 0x0A 7798 0D 2230 .db 0x0D 7799 00 2231 .db 0x00 779A 2232 __str_14: 779A 26 67 67 20 30 78 2233 .ascii "&gg 0x%4X" 25 34 58 77A3 0A 2234 .db 0x0A 77A4 0D 2235 .db 0x0D 77A5 00 2236 .db 0x00 77A6 2237 __str_15: 77A6 70 72 69 6E 74 66 2238 .ascii "printf_tiny &gg 0x%x" 5F 74 69 6E 79 20 26 67 67 20 30 78 25 78 77BA 0A 2239 .db 0x0A 77BB 0D 2240 .db 0x0D 77BC 00 2241 .db 0x00 77BD 2242 __str_16: 77BD 26 7A 7A 20 30 78 2243 .ascii "&zz 0x%4X" 25 34 58 77C6 0A 2244 .db 0x0A 77C7 0D 2245 .db 0x0D 77C8 00 2246 .db 0x00 77C9 2247 __str_17: 77C9 70 72 69 6E 74 66 2248 .ascii "printf_tiny &zz 0x%x" 5F 74 69 6E 79 20 26 7A 7A 20 30 78 25 78 77DD 0A 2249 .db 0x0A 77DE 0D 2250 .db 0x0D 77DF 00 2251 .db 0x00 77E0 2252 __str_18: 77E0 26 68 65 61 70 20 2253 .ascii "&heap 0x%4X " 30 78 25 34 58 20 20 77ED 00 2254 .db 0x00 77EE 2255 __str_19: 77EE 20 20 26 68 65 61 2256 .ascii " &heap end 0x%4X" 70 20 65 6E 64 20 30 78 25 34 58 77FF 0A 2257 .db 0x0A 7800 0D 2258 .db 0x0D 7801 00 2259 .db 0x00 7802 2260 __str_20: 7802 70 72 69 6E 74 66 2261 .ascii "printf_tiny &heap 0x%x " 5F 74 69 6E 79 20 26 68 65 61 70 20 30 78 25 78 20 20 781A 00 2262 .db 0x00 781B 2263 __str_21: 781B 20 20 26 68 65 61 2264 .ascii " &heap end 0x%x" 70 20 65 6E 64 20 30 78 25 78 782B 0A 2265 .db 0x0A 782C 0D 2266 .db 0x0D 782D 00 2267 .db 0x00 782E 2268 __str_22: 782E 26 62 75 66 66 65 2269 .ascii "&buffer0 pointer variable 0x%4X" 72 30 20 70 6F 69 6E 74 65 72 20 76 61 72 69 61 62 6C 65 20 30 78 25 34 58 784D 0A 2270 .db 0x0A 784E 0D 2271 .db 0x0D 784F 00 2272 .db 0x00 7850 2273 __str_23: 7850 70 72 69 6E 74 66 2274 .ascii "printf_tiny &buffer0 pointer variable 0x%x" 5F 74 69 6E 79 20 26 62 75 66 66 65 72 30 20 70 6F 69 6E 74 65 72 20 76 61 72 69 61 62 6C 65 20 30 78 25 78 787A 0A 2275 .db 0x0A 787B 0D 2276 .db 0x0D 787C 00 2277 .db 0x00 787D 2278 __str_24: 787D 26 62 75 66 66 65 2279 .ascii "&buffer0 malloc 0x%4X" 72 30 20 6D 61 6C 6C 6F 63 20 30 78 25 34 58 7892 0A 2280 .db 0x0A 7893 0D 2281 .db 0x0D 7894 00 2282 .db 0x00 7895 2283 __str_25: 7895 70 72 69 6E 74 66 2284 .ascii "printf_tiny &buffer0 malloc 0x%x" 5F 74 69 6E 79 20 26 62 75 66 66 65 72 30 20 6D 61 6C 6C 6F 63 20 30 78 25 78 78B5 0A 2285 .db 0x0A 78B6 0D 2286 .db 0x0D 78B7 00 2287 .db 0x00 78B8 2288 __str_26: 78B8 26 62 75 66 66 65 2289 .ascii "&buffer1 pointer variable 0x%4X" 72 31 20 70 6F 69 6E 74 65 72 20 76 61 72 69 61 62 6C 65 20 30 78 25 34 58 78D7 0A 2290 .db 0x0A 78D8 0D 2291 .db 0x0D 78D9 00 2292 .db 0x00 78DA 2293 __str_27: 78DA 70 72 69 6E 74 66 2294 .ascii "printf_tiny &buffer1 pointer variable 0x%x" 5F 74 69 6E 79 20 26 62 75 66 66 65 72 31 20 70 6F 69 6E 74 65 72 20 76 61 72 69 61 62 6C 65 20 30 78 25 78 7904 0A 2295 .db 0x0A 7905 0D 2296 .db 0x0D 7906 00 2297 .db 0x00 7907 2298 __str_28: 7907 26 62 75 66 66 65 2299 .ascii "&buffer1 malloc 0x%4X" 72 31 20 6D 61 6C 6C 6F 63 20 30 78 25 34 58 791C 0A 2300 .db 0x0A 791D 0D 2301 .db 0x0D 791E 00 2302 .db 0x00 791F 2303 __str_29: 791F 70 72 69 6E 74 66 2304 .ascii "printf_tiny &buffer1 malloc 0x%x" 5F 74 69 6E 79 20 26 62 75 66 66 65 72 31 20 6D 61 6C 6C 6F 63 20 30 78 25 78 793F 0A 2305 .db 0x0A 7940 0D 2306 .db 0x0D 7941 00 2307 .db 0x00 7942 2308 __str_30: 7942 25 63 2309 .ascii "%c" 7944 0A 2310 .db 0x0A 7945 0D 2311 .db 0x0D 7946 00 2312 .db 0x00 7947 2313 __str_31: 7947 25 75 2314 .ascii "%u" 7949 0A 2315 .db 0x0A 794A 0D 2316 .db 0x0D 794B 00 2317 .db 0x00 794C 2318 __str_32: 794C 25 64 2319 .ascii "%d" 794E 0A 2320 .db 0x0A 794F 0D 2321 .db 0x0D 7950 00 2322 .db 0x00 7951 2323 __str_33: 7951 25 73 2324 .ascii "%s" 7953 0A 2325 .db 0x0A 7954 0D 2326 .db 0x0D 7955 00 2327 .db 0x00 7956 2328 __str_34: 7956 74 69 6E 79 2329 .ascii "tiny" 795A 00 2330 .db 0x00 795B 2331 __str_35: 795B 25 78 2332 .ascii "%x" 795D 0A 2333 .db 0x0A 795E 0D 2334 .db 0x0D 795F 00 2335 .db 0x00 7960 2336 __str_36: 7960 45 6D 62 65 64 64 2337 .ascii "Embedded Systems" 65 64 20 53 79 73 74 65 6D 73 7970 0A 2338 .db 0x0A 7971 0D 2339 .db 0x0D 7972 00 2340 .db 0x00 7973 2341 __str_37: 7973 49 53 52 20 30 2342 .ascii "ISR 0" 7978 00 2343 .db 0x00 7979 2344 __str_38: 7979 49 53 52 20 32 2345 .ascii "ISR 2" 797E 00 2346 .db 0x00 797F 2347 __str_39: 797F 49 53 52 20 33 2348 .ascii "ISR 3" 7984 00 2349 .db 0x00 7985 2350 __str_40: 7985 49 53 52 20 34 2351 .ascii "ISR 4" 798A 00 2352 .db 0x00 2353 .area XINIT (CODE)