Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 1 PC Object I Line Source A 1 ; Zilog Z8 Encore! ANSI C Compiler Release 3.62 A 2 ; -nolocalcse -optsize -nofastcall -const=RAM - A 3 ; -nooptlink -noregvar -reduceopt -debug -norev A 4 ; -alias A 5 DEFINE main_TEXT,SPACE=ROM A 6 FILE ".\MAIN.C" A 7 .debug "C" A 8 SEGMENT main_TEXT A 9 .begrec "fmt_type",13 A 10 .define "status" A 11 .value 0 A 12 .class 8 A 13 .type 12 A 14 .type 0 A 15 .endef A 16 .define "flags" A 17 .value 1 A 18 .class 8 A 19 .type 12 A 20 .type 0 A 21 .endef A 22 .define "size" A 23 .value 2 A 24 .class 8 A 25 .type 2 A 26 .type 0 A 27 .endef A 28 .define "chr" A 29 .value 3 A 30 .class 8 A 31 .type 2 A 32 .type 0 A 33 .endef A 34 .define "type" A 35 .value 4 A 36 .class 8 A 37 .type 2 A 38 .type 0 A 39 .endef A 40 .define "field_width" A 41 .value 5 A 42 .class 8 A 43 .type 2 A 44 .type 0 A 45 .endef A 46 .define "precision" A 47 .value 6 A 48 .class 8 A 49 .type 2 A 50 .type 0 A 51 .endef A 52 .define "set_begin" Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 2 PC Object I Line Source main.src A 53 .value 7 A 54 .class 8 A 55 .type 130 A 56 .type 0 A 57 .endef A 58 .define "set_end" A 59 .value 8 A 60 .class 8 A 61 .type 130 A 62 .type 0 A 63 .endef A 64 .define "pad_whole" A 65 .value 9 A 66 .class 8 A 67 .type 12 A 68 .type 0 A 69 .endef A 70 .define "pad_pre_fract" A 71 .value 10 A 72 .class 8 A 73 .type 12 A 74 .type 0 A 75 .endef A 76 .define "pad_post_fract" A 77 .value 11 A 78 .class 8 A 79 .type 12 A 80 .type 0 A 81 .endef A 82 .define "pad_at" A 83 .value 12 A 84 .class 8 A 85 .type 130 A 86 .type 0 A 87 .endef A 88 .endrec "fmt_type" A 89 .begrec "flt_info",12 A 90 .define "flags" A 91 .value 0 A 92 .class 8 A 93 .type 12 A 94 .type 0 A 95 .endef A 96 .define "exp" A 97 .value 1 A 98 .class 8 A 99 .type 2 A 100 .type 0 A 101 .endef A 102 .define "digits" A 103 .value 2 A 104 .class 8 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 3 PC Object I Line Source main.src A 105 .dim 10 A 106 .type 108 A 107 .type 0 A 108 .endef A 109 .endrec "flt_info" A 110 .begrec "NONAME0",6 A 111 .define "baudRate" A 112 .value 0 A 113 .class 8 A 114 .type 5 A 115 .type 0 A 116 .endef A 117 .define "stopBits" A 118 .value 4 A 119 .class 8 A 120 .type 12 A 121 .type 0 A 122 .endef A 123 .define "parity" A 124 .value 5 A 125 .class 8 A 126 .type 12 A 127 .type 0 A 128 .endef A 129 .endrec "NONAME0" A 130 .begrec "NONAME1",4 A 131 .define "pBuffer" A 132 .value 0 A 133 .class 8 A 134 .type 140 A 135 .type 0 A 136 .endef A 137 .define "next_in" A 138 .value 1 A 139 .class 8 A 140 .type 12 A 141 .type 0 A 142 .endef A 143 .define "next_out" A 144 .value 2 A 145 .class 8 A 146 .type 12 A 147 .type 0 A 148 .endef A 149 .define "size" A 150 .value 3 A 151 .class 8 A 152 .type 12 A 153 .type 0 A 154 .endef A 155 .endrec "NONAME1" A 156 DEFINE ___flash_option1_segment,SPACE=ROM,O Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 4 PC Object I Line Source main.src A 157 SEGMENT ___flash_option1_segment 000000 A 158 _flash_option1: 000000 FF A 159 DB 255 A 160 .define "flash_option1" A 161 .alias "_flash_option1" A 162 .class 37 A 163 .value _flash_option1 A 164 .type 2 A 165 .type 0 A 166 .endef A 167 DEFINE ___flash_option2_segment,SPACE=ROM,O A 168 SEGMENT ___flash_option2_segment 000001 A 169 _flash_option2: 000001 FF A 170 DB 255 A 171 .define "flash_option2" A 172 .alias "_flash_option2" A 173 .class 37 A 174 .value _flash_option2 A 175 .type 2 A 176 .type 0 A 177 .endef A 178 SEGMENT NEAR_DATA 000000 A 179 _subtmr: 000000 0A A 180 DB 10 A 181 .define "subtmr" A 182 .alias "_subtmr" A 183 .class 133 A 184 .value _subtmr A 185 .type 2 A 186 .type 0 A 187 .endef 000001 A 188 _t1: 000001 00 A 189 DB 0 A 190 .define "t1" A 191 .alias "_t1" A 192 .class 133 A 193 .value _t1 A 194 .type 2 A 195 .type 0 A 196 .endef 000002 A 197 _t2: 000002 00 A 198 DB 0 A 199 .define "t2" A 200 .alias "_t2" A 201 .class 133 A 202 .value _t2 A 203 .type 2 A 204 .type 0 A 205 .endef 000003 A 206 _t3: 000003 00 A 207 DB 0 A 208 .define "t3" Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 5 PC Object I Line Source main.src A 209 .alias "_t3" A 210 .class 133 A 211 .value _t3 A 212 .type 2 A 213 .type 0 A 214 .endef 000004 A 215 _t4: 000004 00 A 216 DB 0 A 217 .define "t4" A 218 .alias "_t4" A 219 .class 133 A 220 .value _t4 A 221 .type 2 A 222 .type 0 A 223 .endef 000005 A 224 _t5: 000005 00 A 225 DB 0 A 226 .define "t5" A 227 .alias "_t5" A 228 .class 133 A 229 .value _t5 A 230 .type 2 A 231 .type 0 A 232 .endef A 233 SEGMENT NEAR_BSS 000000 A 234 _lt1: 000000 A 235 DS 2*1 A 236 .define "lt1" A 237 .alias "_lt1" A 238 .class 147 A 239 .value _lt1 A 240 .type 3 A 241 .type 0 A 242 .endef A 243 SEGMENT NEAR_DATA 000006 A 244 _command: 000006 00 A 245 DB 0 A 246 .define "command" A 247 .alias "_command" A 248 .class 133 A 249 .value _command A 250 .type 12 A 251 .type 0 A 252 .endef 000007 A 253 _motor: 000007 00 A 254 DB 0 A 255 .define "motor" A 256 .alias "_motor" A 257 .class 133 A 258 .value _motor A 259 .type 12 A 260 .type 0 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 6 PC Object I Line Source main.src A 261 .endef 000008 A 262 _paramL: 000008 0000 A 263 DW 0 A 264 .define "paramL" A 265 .alias "_paramL" A 266 .class 133 A 267 .value _paramL A 268 .type 3 A 269 .type 0 A 270 .endef 00000A A 271 _paramH: 00000A 0000 A 272 DW 0 A 273 .define "paramH" A 274 .alias "_paramH" A 275 .class 133 A 276 .value _paramH A 277 .type 3 A 278 .type 0 A 279 .endef A 280 SEGMENT ROM_DATA A 281 A 282 A 283 ;**************************** _ascii2hex ****** A 284 ;Name Addr/Register S A 285 ;inchar R15+3 A 286 A 287 A 288 ; Aggregate Stack Size: 0 (words) A 289 A 290 A 291 .FRAME _n_ascii2hex,?_n_ascii2hex,RDATA A 292 SEGMENT main_TEXT 000000 A 293 _ascii2hex: A 294 .define "_ascii2hex" A 295 .value _ascii2hex A 296 .class 2 A 297 .type 67 A 298 .type 0 A 299 .endef A 300 .begfunc "ascii2hex",54,"_ascii2hex" A 301 .define "inchar" A 302 .class 17 A 303 .reg -1 A 304 .type 3 A 305 .type 0 A 306 .endef 000000 70EF A 307 PUSH R15 000002 84FFFF A 308 LDX R15,4095 A 309 ; 1 /************************************** A 310 ; 2 A 311 ; 3 #include A 312 ; 4 #include Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 7 PC Object I Line Source main.src A 313 ; 5 #include // non-standard I/O A 314 ; 6 #include "main.h" A 315 ; 7 #include "timer.h" A 316 ; 8 #include "test_button.h" A 317 ; 9 #include "uart.h" A 318 ; 10 #include "servo.h" A 319 ; 11 A 320 ; 12 // Default user flash optionbits. A 321 ; 13 FLASH_OPTION1 = 0xFF; A 322 ; 14 FLASH_OPTION2 = 0xFF; A 323 ; 15 A 324 ; 16 /////////////////////////////////////// A 325 ; 17 // Global - Variable A 326 ; 18 A 327 ; 19 char subtmr=10; A 328 ; 20 char t1=0; A 329 ; 21 char t2=0; A 330 ; 22 char t3=0; A 331 ; 23 char t4=0; A 332 ; 24 char t5=0; A 333 ; 25 int lt1; A 334 ; 26 char unsigned command=0; A 335 ; 27 char unsigned motor=0; A 336 ; 28 int paramL=0; A 337 ; 29 int paramH=0; A 338 ; 30 extern char rx[]; A 339 ; 31 extern char rxready; A 340 ; 32 A 341 ; 33 A 342 ; 34 A 343 ; 35 #define LEG1a 1 A 344 ; 36 #define LEG1b 2 A 345 ; 37 #define LEG2a 3 A 346 ; 38 #define LEG2b 4 A 347 ; 39 #define LEG3a 11 A 348 ; 40 #define LEG3b 12 A 349 ; 41 #define LEG4a 7 A 350 ; 42 #define LEG4b 8 A 351 ; 43 #define LEG5a 5 A 352 ; 44 #define LEG5b 6 A 353 ; 45 #define LEG6a 13 A 354 ; 46 #define LEG6b 14 A 355 ; 47 A 356 ; 48 // Ascii to hex converter A 357 ; 49 // converts a single character input to A 358 ; 50 // limitation: input is assumed to be w A 359 ; 51 // and A to F A 360 ; 52 A 361 ; 53 int ascii2hex(int inchar) A 362 ; 54 { A 363 ; 55 if(inchar <0x3a) A 364 .line 55 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 8 PC Object I Line Source main.src 000005 C70F03 A 365 LD R0,3(R15) 000008 C71F04 A 366 LD R1,4(R15) 00000B A6E13A A 367 CP R1,#58 00000E 1FA6E000 A 368 CPC R0,#-0 000012 9B 16 A 369 JR GE,_1_L_1 A 370 ; 56 { A 371 ; 57 inchar=inchar & 0x0f; A 372 .line 57 000014 C70F04 A 373 LD R0,4(R15) 000017 56E00F A 374 AND R0,#15 00001A B0E1 A 375 CLR R1 00001C D71F03 A 376 LD 3(R15),R1 00001F D70F04 A 377 LD 4(R15),R0 A 378 ; 58 return(inchar); A 379 .line 58 000022 C70F03 A 380 LD R0,3(R15) 000025 C71F04 A 381 LD R1,4(R15) 000028 8B 18 A 382 JR _1_L_2 A 383 ; 59 } A 384 ; 60 else 00002A A 385 _1_L_1: A 386 .line 60 A 387 ; 61 { A 388 ; 62 inchar=(inchar-'A') +10; A 389 .line 62 00002A C71F03 A 390 LD R1,3(R15) 00002D C70F04 A 391 LD R0,4(R15) 000030 06E0C9 A 392 ADD R0,#201 000033 16E1FF A 393 ADC R1,#255 000036 D71F03 A 394 LD 3(R15),R1 000039 D70F04 A 395 LD 4(R15),R0 A 396 ; 63 return(inchar); A 397 .line 63 00003C C70F03 A 398 LD R0,3(R15) 00003F C71F04 A 399 LD R1,4(R15) A 400 ; 64 } A 401 ; 65 } 000042 A 402 _1_L_2: A 403 .line 65 000042 50EF A 404 POP R15 000044 AF A 405 RET A 406 .endfunc "ascii2hex",65,"_ascii2hex" A 407 SEGMENT ROM_DATA A 408 A 409 A 410 ;**************************** _main *********** A 411 ;Name Addr/Register S A 412 ;_servo_out IMPORT -- A 413 ;_putchar IMPORT -- A 414 ;_paramL STATIC A 415 ;_paramH STATIC A 416 ;_command STATIC Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 9 PC Object I Line Source main.src A 417 ;_motor STATIC A 418 ;_rx IMPORT un A 419 ;_rxready IMPORT A 420 ;_t1 STATIC A 421 ;_wait IMPORT -- A 422 ;_EI IMPORT -- A 423 ;_init_uart0 IMPORT -- A 424 ;_init_timer0 IMPORT -- A 425 ;_DI IMPORT -- A 426 ;_init_led_gpio IMPORT -- A 427 ;state R15-1 A 428 A 429 A 430 ; Aggregate Stack Size: -1 (words) A 431 A 432 A 433 .FRAME _n_main,?_n_main,RDATA A 434 .FCALL _n_init_led_gpio A 435 .FCALL _n_init_timer0 A 436 .FCALL _n_init_uart0 A 437 .FCALL _n_wait A 438 .FCALL _n_putchar A 439 .FCALL _n_ascii2hex A 440 .FCALL _n_servo_out A 441 SEGMENT main_TEXT 000045 A 442 _main: A 443 .define "_main" A 444 .value _main A 445 .class 2 A 446 .type 65 A 447 .type 0 A 448 .endef A 449 .begfunc "main",72,"_main" A 450 ; 66 A 451 ; 67 /////////////////////////////////////// A 452 ; 68 // Main program starts here A 453 ; 69 // This program blinks LED-3 on the ev A 454 ; 70 A 455 ; 71 void main () A 456 ; 72 { A 457 .define "state" A 458 .class 1 A 459 .value -1 A 460 .type 12 A 461 .type 0 A 462 .endef 000045 70EF A 463 PUSH R15 000047 84FFFF A 464 LDX R15,4095 00004A 70ED A 465 PUSH R13 A 466 ; 73 unsigned char state=0; A 467 .line 73 00004C B0E0 A 468 CLR R0 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 10 PC Object I Line Source main.src 00004E D70FFF A 469 LD -1(R15),R0 A 470 ; 74 init_led_gpio(); // A 471 .line 74 000051 D6 0000 A 472 CALL _init_led_gpio A 473 ; 75 DI(); // A 474 .line 75 000054 8F A 475 DI A 476 ; 76 init_timer0(); // A 477 .line 76 000055 D6 0000 A 478 CALL _init_timer0 A 479 ; 77 init_uart0(); A 480 .line 77 000058 D6 0000 A 481 CALL _init_uart0 A 482 ; 78 EI(); // A 483 .line 78 00005B 9F A 484 EI A 485 ; 79 A 486 ; 80 // allow the servo driver to wake up A 487 ; 81 wait(10); A 488 .line 81 00005C 1F700A A 489 PUSH #10 00005F 1F7000 A 490 PUSH #0 000062 D6 0000 A 491 CALL _wait 000065 50E0 A 492 POP R0 000067 50E0 A 493 POP R0 A 494 ; 82 A 495 ; 83 // switch on servos A 496 ; 84 A 497 ; 85 A 498 ; 86 A 499 ; 87 A 500 ; 88 while(1) // 000069 A 501 _2_L_16: A 502 .line 88 A 503 ; 89 { A 504 ; 90 if(t1==0) A 505 .line 90 000069 A6 01 00 A 506 CP _t1,#0 00006C EB 07 A 507 JR NE,_2_L_5 A 508 ; 91 { A 509 ; 92 A 510 ; 93 PAOUT ^=0x80; A 511 .line 93 00006E B9800FD3 A 512 XORX 4051,#128 A 513 ; 94 A 514 ; 95 t1=5; A 515 .line 95 000072 E6 01 05 A 516 LD _t1,#5 A 517 ; 96 } 000075 A 518 _2_L_5: A 519 .line 96 A 520 ; 97 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 11 PC Object I Line Source main.src A 521 ; 98 A 522 ; 99 A 523 ; 100 // This is the main sequence program A 524 ; 101 if(rxready==1) A 525 .line 101 000075 A6 00 01 A 526 CP _rxready,#1 000078 EB 55 A 527 JR NE,_2_L_7 A 528 ; 102 { A 529 ; 103 // motor number A 530 ; 104 motor= rx[0] & 0x0f; A 531 .line 104 00007A E4 00 07 A 532 LD _motor,_rx 00007D 56 07 0F A 533 AND _motor,#15 A 534 ; 105 motor= motor * 10; A 535 .line 105 000080 E4 07 E0 A 536 LD R0,_motor 000083 04 07 07 A 537 ADD _motor,_motor 000086 04 07 07 A 538 ADD _motor,_motor 000089 04E0 07 A 539 ADD _motor,R0 00008C 04 07 07 A 540 ADD _motor,_motor A 541 ; 106 motor= motor + (rx[1] & 0x0 A 542 .line 106 00008F E4 01 E0 A 543 LD R0,_rx+1 000092 56E00F A 544 AND R0,#15 000095 04E0 07 A 545 ADD _motor,R0 A 546 ; 107 command= rx[2]; A 547 .line 107 000098 E4 02 06 A 548 LD _command,_rx+2 A 549 ; 108 paramH=rx[3]; A 550 .line 108 00009B E4 03 E1 A 551 LD R1,_rx+3 00009E E4E1E0 A 552 LD R0,R1 0000A1 90E0 A 553 RL R0 0000A3 3200 A 554 SBC R0,R0 0000A5 E4E0 0A A 555 LD _paramH,R0 0000A8 E4E1 0B A 556 LD _paramH+1,R1 A 557 ; 109 paramL=rx[4]; A 558 .line 109 0000AB E4 04 E1 A 559 LD R1,_rx+4 0000AE E4E1E0 A 560 LD R0,R1 0000B1 90E0 A 561 RL R0 0000B3 3200 A 562 SBC R0,R0 0000B5 E4E0 08 A 563 LD _paramL,R0 0000B8 E4E1 09 A 564 LD _paramL+1,R1 A 565 ; 110 putchar(0x03); // A 566 .line 110 0000BB 1F7003 A 567 PUSH #3 0000BE 1F7000 A 568 PUSH #0 0000C1 D6 0000 A 569 CALL _putchar 0000C4 50E0 A 570 POP R0 0000C6 50E0 A 571 POP R0 A 572 ; 111 rxready=0; Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 12 PC Object I Line Source main.src A 573 .line 111 0000C8 B0 00 A 574 CLR _rxready A 575 ; 112 state=1; A 576 .line 112 0000CA 0C01 A 577 LD R0,#1 0000CC D70FFF A 578 LD -1(R15),R0 A 579 ; 113 } 0000CF A 580 _2_L_7: A 581 .line 113 A 582 ; 114 if(rxready==2) //checksum A 583 .line 114 0000CF A6 00 02 A 584 CP _rxready,#2 0000D2 EB 0F A 585 JR NE,_2_L_15 A 586 ; 115 { A 587 ; 116 putchar(0x04); A 588 .line 116 0000D4 1F7004 A 589 PUSH #4 0000D7 1F7000 A 590 PUSH #0 0000DA D6 0000 A 591 CALL _putchar 0000DD 50E0 A 592 POP R0 0000DF 50E0 A 593 POP R0 A 594 ; 117 rxready=0; A 595 .line 117 0000E1 B0 00 A 596 CLR _rxready A 597 ; 118 } 0000E3 A 598 _2_L_15: A 599 .line 118 A 600 ; 119 A 601 ; 120 // Parse command A 602 ; 121 if(state==1) A 603 .line 121 0000E3 C70FFF A 604 LD R0,-1(R15) 0000E6 A6E001 A 605 CP R0,#1 0000E9 ED 00 69 A 606 JR NE,_2_L_16 A 607 ; 122 { A 608 ; 123 paramH =ascii2hex(paramH); A 609 .line 123 0000EC 70 0B A 610 PUSH _paramH+1 0000EE 70 0A A 611 PUSH _paramH 0000F0 D6 0000 A 612 CALL _ascii2hex 0000F3 50E2 A 613 POP R2 0000F5 50E2 A 614 POP R2 0000F7 E4E0 0A A 615 LD _paramH,R0 0000FA E4E1 0B A 616 LD _paramH+1,R1 A 617 ; 124 paramL = ascii2hex(paramL); A 618 .line 124 0000FD 70 09 A 619 PUSH _paramL+1 0000FF 70 08 A 620 PUSH _paramL 000101 D6 0000 A 621 CALL _ascii2hex 000104 50E2 A 622 POP R2 000106 50E2 A 623 POP R2 000108 E4E0 08 A 624 LD _paramL,R0 Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 13 PC Object I Line Source main.src 00010B E4E1 09 A 625 LD _paramL+1,R1 A 626 ; 125 paramL = paramH*16 + paramL A 627 .line 125 00010E E4 0A E0 A 628 LD R0,_paramH 000111 E4 0B E1 A 629 LD R1,_paramH+1 000114 2C04 A 630 LD R2,#4 000116 A 631 L__10: 000116 0211 A 632 ADD R1,R1 000118 1200 A 633 ADC R0,R0 00011A 2A FA A 634 DJNZ R2,L__10 00011C 04E1 09 A 635 ADD _paramL+1,R1 00011F 14E0 08 A 636 ADC _paramL,R0 A 637 ; 126 // move command handler A 638 ; 127 if(command=='m') servo_out( A 639 .line 127 000122 A6 06 6D A 640 CP _command,#109 000125 EB 16 A 641 JR NE,_2_L_10 000127 70 09 A 642 PUSH _paramL+1 000129 70 08 A 643 PUSH _paramL 00012B 1F7002 A 644 PUSH #2 00012E 1F7000 A 645 PUSH #0 000131 70 07 A 646 PUSH _motor 000133 1F7000 A 647 PUSH #0 000136 D6 0000 A 648 CALL _servo_out 000139 09060FFF A 649 ADDX 4095,#6 00013D A 650 _2_L_10: A 651 ; 128 if(command=='s') servo_out( A 652 .line 128 00013D A6 06 73 A 653 CP _command,#115 000140 EB 16 A 654 JR NE,_2_L_12 000142 70 09 A 655 PUSH _paramL+1 000144 70 08 A 656 PUSH _paramL 000146 1F7001 A 657 PUSH #1 000149 1F7000 A 658 PUSH #0 00014C 70 07 A 659 PUSH _motor 00014E 1F7000 A 660 PUSH #0 000151 D6 0000 A 661 CALL _servo_out 000154 09060FFF A 662 ADDX 4095,#6 000158 A 663 _2_L_12: A 664 ; 129 if(command=='i') servo_out( A 665 .line 129 000158 A6 06 69 A 666 CP _command,#105 00015B EB 16 A 667 JR NE,_2_L_13 00015D 70 09 A 668 PUSH _paramL+1 00015F 70 08 A 669 PUSH _paramL 000161 1F7008 A 670 PUSH #8 000164 1F7000 A 671 PUSH #0 000167 70 07 A 672 PUSH _motor 000169 1F7000 A 673 PUSH #0 00016C D6 0000 A 674 CALL _servo_out 00016F 09060FFF A 675 ADDX 4095,#6 000173 A 676 _2_L_13: Zilog Z8 Encore! Macro Assembler Version 2.52 (10101401) 17-Feb-12 10:15:50 page: 14 PC Object I Line Source main.src A 677 ; 130 A 678 ; 131 A 679 ; 132 state=0; A 680 .line 132 000173 B0E0 A 681 CLR R0 000175 D70FFF A 682 LD -1(R15),R0 A 683 ; 133 } A 684 ; 134 A 685 ; 135 } A 686 .line 135 000178 8D 00 69 A 687 JR _2_L_16 A 688 ; 136 } // End of main program A 689 .line 136 00017B 50ED A 690 POP R13 00017D 50EF A 691 POP R15 00017F AF A 692 RET A 693 .endfunc "main",136,"_main" A 694 XREF _rxready:RDATA A 695 XREF _rx:RDATA A 696 XREF _servo_out:ROM A 697 XREF _init_uart0:ROM A 698 XREF _wait:ROM A 699 XREF _init_timer0:ROM A 700 XREF _init_led_gpio:ROM A 701 XREF _putchar:ROM A 702 XDEF _main A 703 XDEF _ascii2hex A 704 XDEF _paramH A 705 XDEF _paramL A 706 XDEF _motor A 707 XDEF _command A 708 XDEF _lt1 A 709 XDEF _t5 A 710 XDEF _t4 A 711 XDEF _t3 A 712 XDEF _t2 A 713 XDEF _t1 A 714 XDEF _subtmr A 715 XDEF _flash_option2 A 716 XDEF _flash_option1 A 717 END Errors: 0 Warnings: 0 Lines Assembled: 718