ORG 0xe000 Le000: e000 0000 DW 0x0000 e002 0101 DW 0x0101 e004 0100 DW 0x0001 e006 0001 DW 0x0100 e008 0106 DW 0x0601 e00a 0000 DW 0x0000 e00c 0007 DW 0x0700 e00e 0101 DW 0x0101 e010 0101 DW 0x0101 e012 0106 DW 0x0601 e014 0000 DW 0x0000 e016 0007 DW 0x0700 e018 0000 DW 0x0000 e01a 0007 DW 0x0700 e01c 0101 DW 0x0101 e01e 0106 DW 0x0601 e020 0080 DW 0x8000 e022 0008 DW 0x0800 e024 0080 DW 0x8000 e026 0100 DW 0x0001 _program_start: e028 31400003 mov.w #0x0300, R1 e02c b012e6e4 call #Le4e6 e030 0c93 tst.w R12 e032 0e24 jz Le050 e034 3c400802 mov.w #0x0208, R12 e038 3d400b00 mov.w #0x000b, R13 e03c b012bce4 call #Le4bc e040 3c400002 mov.w #0x0200, R12 e044 3d4020e0 mov.w #0xe020, R13 e048 3e400700 mov.w #0x0007, R14 e04c b01202e5 call #Le502 Le050: e050 b012dce4 call #Le4dc e054 b01206e5 call #Le506 INT_WDT: e058 0a12 push.w R10 e05a 0d12 push.w R13 e05c 0c12 push.w R12 e05e 0f12 push.w R15 e060 0e12 push.w R14 e062 7a400f00 mov.b #0x000f, R10 e066 5ac22000 bic.b &P1IN, R10 e06a 4a93 tst.b R10 e06c 1b20 jnz Le0a4 e06e d2c30000 bic.b #1, &IE1 e072 c2931202 tst.b &0x0212 e076 0620 jnz Le084 e078 b29005000a02 cmp.w #0x0005, &0x020a e07e 0228 jnc Le084 e080 b0125ee4 call #Le45e Le084: e084 82430802 clr.w &0x0208 e088 82430a02 clr.w &0x020a e08c 82430c02 clr.w &0x020c e090 82430e02 clr.w &0x020e e094 c2431202 clr.b &0x0212 e098 c2432300 clr.b &P1IFG e09c f2400f002500 mov.b #0x000f, &P1IE e0a2 633c jmp Le16a Le0a4: e0a4 5ab3 bit.b #1, R10 e0a6 0d28 jnc Le0c2 e0a8 b29000020802 cmp.w #0x0200, &0x0208 e0ae 022c jc Le0b4 e0b0 92530802 add.w #1, &0x0208 Le0b4: e0b4 b29005000802 cmp.w #0x0005, &0x0208 e0ba 0520 jnz Le0c6 e0bc b012f8e4 call #Le4f8 e0c0 023c jmp Le0c6 Le0c2: e0c2 82430802 clr.w &0x0208 Le0c6: e0c6 6ab3 bit.b #2, R10 e0c8 1128 jnc Le0ec e0ca b29000020a02 cmp.w #0x0200, &0x020a e0d0 022c jc Le0d6 e0d2 92530a02 add.w #1, &0x020a Le0d6: e0d6 b29000020a02 cmp.w #0x0200, &0x020a e0dc 1420 jnz Le106 e0de b01240e3 call #Le340 e0e2 d2431202 mov.b #1, &0x0212 e0e6 82430a02 clr.w &0x020a e0ea 0d3c jmp Le106 Le0ec: e0ec c2931202 tst.b &0x0212 e0f0 0620 jnz Le0fe e0f2 b29005000a02 cmp.w #0x0005, &0x020a e0f8 0228 jnc Le0fe e0fa b0125ee4 call #Le45e Le0fe: e0fe c2431202 clr.b &0x0212 e102 82430a02 clr.w &0x020a Le106: e106 6ab2 bit.b #4, R10 e108 1d28 jnc Le144 e10a e2b20602 bit.b #4, &0x0206 e10e 0d2c jc Le12a e110 b29000020c02 cmp.w #0x0200, &0x020c e116 022c jc Le11c e118 92530c02 add.w #1, &0x020c Le11c: e11c b29005000c02 cmp.w #0x0005, &0x020c e122 1220 jnz Le148 e124 b0123ae4 call #Le43a e128 0f3c jmp Le148 Le12a: e12a 92530c02 add.w #1, &0x020c e12e 1c420c02 mov.w &0x020c, R12 e132 3e400500 mov.w #0x0005, R14 e136 b0127ee4 call #Le47e e13a 0e93 tst.w R14 e13c 0520 jnz Le148 e13e b0123ae4 call #Le43a e142 023c jmp Le148 Le144: e144 82430c02 clr.w &0x020c Le148: e148 7ab2 bit.b #8, R10 e14a 0d28 jnc Le166 e14c b29000020e02 cmp.w #0x0200, &0x020e e152 022c jc Le158 e154 92530e02 add.w #1, &0x020e Le158: e158 b29005000e02 cmp.w #0x0005, &0x020e e15e 0520 jnz Le16a e160 b012f0e3 call #Le3f0 e164 023c jmp Le16a Le166: e166 82430e02 clr.w &0x020e Le16a: e16a 3e41 pop.w R14 e16c 3f41 pop.w R15 e16e 3c41 pop.w R12 e170 3d41 pop.w R13 e172 3a41 pop.w R10 e174 0013 reti INT_TMR_A3_CR0: e176 0d12 push.w R13 e178 0f12 push.w R15 e17a 0e12 push.w R14 e17c 4e43 clr.b R14 e17e 4d43 clr.b R13 e180 c2931102 tst.b &0x0211 e184 0524 jz Le190 e186 924200027201 mov.w &0x0200, &TACCR0 e18c c2431102 clr.b &0x0211 Le190: e190 f2b22900 bit.b #8, &P2OUT e194 0128 jnc Le198 e196 7ed2 bis.b #8, R14 Le198: e198 f2b21900 bit.b #8, &P3OUT e19c 0128 jnc Le1a0 e19e 7dd2 bis.b #8, R13 Le1a0: e1a0 5f420602 mov.b &0x0206, R15 e1a4 4f4f mov.b R15, R15 e1a6 3ff00300 and.w #0x0003, R15 e1aa 4f83 sub.b #0, R15 e1ac 0724 jz Le1bc e1ae 5f83 sub.b #1, R15 e1b0 1624 jz Le1de e1b2 5f83 sub.b #1, R15 e1b4 2524 jz Le200 e1b6 5f83 sub.b #1, R15 e1b8 3424 jz Le222 e1ba 433c jmp Le242 Le1bc: e1bc 5f421002 mov.b &0x0210, R15 e1c0 7ff00300 and.b #0x0003, R15 e1c4 4f4f mov.b R15, R15 e1c6 5edf00e0 bis.b 57344(R15), R14 e1ca 4f4f mov.b R15, R15 e1cc 5ddf04e0 bis.b 57348(R15), R13 e1d0 c24e2900 mov.b R14, &P2OUT e1d4 c24d1900 mov.b R13, &P3OUT e1d8 d2531002 add.b #1, &0x0210 e1dc 323c jmp Le242 Le1de: e1de 5f421002 mov.b &0x0210, R15 e1e2 7ff00300 and.b #0x0003, R15 e1e6 4f4f mov.b R15, R15 e1e8 5ddf00e0 bis.b 57344(R15), R13 e1ec 4f4f mov.b R15, R15 e1ee 5edf04e0 bis.b 57348(R15), R14 e1f2 c24d1900 mov.b R13, &P3OUT e1f6 c24e2900 mov.b R14, &P2OUT e1fa d2531002 add.b #1, &0x0210 e1fe 213c jmp Le242 Le200: e200 5f421002 mov.b &0x0210, R15 e204 7ff00700 and.b #0x0007, R15 e208 4f4f mov.b R15, R15 e20a 5edf08e0 bis.b 57352(R15), R14 e20e 4f4f mov.b R15, R15 e210 5ddf10e0 bis.b 57360(R15), R13 e214 c24e2900 mov.b R14, &P2OUT e218 c24d1900 mov.b R13, &P3OUT e21c d2531002 add.b #1, &0x0210 e220 103c jmp Le242 Le222: e222 5f421002 mov.b &0x0210, R15 e226 7ff00700 and.b #0x0007, R15 e22a 4f4f mov.b R15, R15 e22c 5ddf18e0 bis.b 57368(R15), R13 e230 4f4f mov.b R15, R15 e232 5edf08e0 bis.b 57352(R15), R14 e236 c24d1900 mov.b R13, &P3OUT e23a c24e2900 mov.b R14, &P2OUT e23e d2531002 add.b #1, &0x0210 Le242: e242 e2b20602 bit.b #4, &0x0206 e246 0328 jnc Le24e e248 b2c010006201 bic.w #0x0010, &TACCTL0 Le24e: e24e 3e41 pop.w R14 e250 3f41 pop.w R15 e252 3d41 pop.w R13 e254 0013 reti Le256: e256 0e43 clr.w R14 e258 f2d030005700 bis.b #0x0030, &BCSCTL1 e25e b01216e4 call #Le416 e262 b01216e4 call #Le416 e266 b24000516601 mov.w #0x5100, &TACCTL2 e26c b24024026001 mov.w #0x0224, &TACTL e272 0b3c jmp Le28a Le274: e274 f2535600 add.b #-1, &DCOCTL e278 f2935600 cmp.b #-1, &DCOCTL e27c 0620 jnz Le28a e27e f2b007005700 bit.b #0x0007, &BCSCTL1 e284 1f24 jz Le2c4 e286 f2535700 add.b #-1, &BCSCTL1 Le28a: e28a 92b36601 bit.w #1, &TACCTL2 e28e fd2b jnc Le28a e290 92c36601 bic.w #1, &TACCTL2 e294 1f427601 mov.w &TACCR2, R15 e298 0f8e sub.w R14, R15 e29a 1e427601 mov.w &TACCR2, R14 e29e 0c9f cmp.w R15, R12 e2a0 1124 jz Le2c4 e2a2 0c9f cmp.w R15, R12 e2a4 e72b jnc Le274 e2a6 d2535600 add.b #1, &DCOCTL e2aa c2935600 tst.b &DCOCTL e2ae ed23 jnz Le28a e2b0 5f425700 mov.b &BCSCTL1, R15 e2b4 7ff00700 and.b #0x0007, R15 e2b8 7f900700 cmp.b #0x0007, R15 e2bc 0324 jz Le2c4 e2be d2535700 add.b #1, &BCSCTL1 e2c2 e33f jmp Le28a Le2c4: e2c4 f2f0cf005700 and.b #0x00cf, &BCSCTL1 e2ca 82436601 clr.w &TACCTL2 e2ce 82436001 clr.w &TACTL e2d2 3041 ret INT_USART0_RX: e2d4 0f12 push.w R15 e2d6 0e12 push.w R14 Le2d8: e2d8 e2b30200 bit.b #2, &IFG1 e2dc fd2b jnc Le2d8 e2de 5e427600 mov.b &U0RXBUF, R14 e2e2 7e804300 sub.b #0x0043, R14 e2e6 1b24 jz Le31e e2e8 5e83 sub.b #1, R14 e2ea 1624 jz Le318 e2ec 6e83 sub.b #2, R14 e2ee 1d24 jz Le32a e2f0 7e800700 sub.b #0x0007, R14 e2f4 1724 jz Le324 e2f6 7e800600 sub.b #0x0006, R14 e2fa 1a24 jz Le330 e2fc 7e801000 sub.b #0x0010, R14 e300 0e24 jz Le31e e302 5e83 sub.b #1, R14 e304 0924 jz Le318 e306 6e83 sub.b #2, R14 e308 1024 jz Le32a e30a 7e800700 sub.b #0x0007, R14 e30e 0a24 jz Le324 e310 7e800600 sub.b #0x0006, R14 e314 0d24 jz Le330 e316 0e3c jmp Le334 Le318: e318 b012f8e4 call #Le4f8 e31c 0b3c jmp Le334 Le31e: e31e b0125ee4 call #Le45e e322 083c jmp Le334 Le324: e324 b01240e3 call #Le340 e328 053c jmp Le334 Le32a: e32a b0123ae4 call #Le43a e32e 023c jmp Le334 Le330: e330 b012f0e3 call #Le3f0 Le334: e334 d24276007700 mov.b &U0RXBUF, &U0TXBUF e33a 3e41 pop.w R14 e33c 3f41 pop.w R15 e33e 0013 reti Le340: e340 e2e30602 xor.b #2, &0x0206 e344 e2b30602 bit.b #2, &0x0206 e348 0e28 jnc Le366 e34a 12c3 clrc e34c 12100002 rrc.w &0x0200 e350 d2431102 mov.b #1, &0x0211 e354 b24000040202 mov.w #0x0400, &0x0202 e35a b24000400402 mov.w #0x4000, &0x0204 e360 f2d21900 bis.b #8, &P3OUT e364 3041 ret Le366: e366 925200020002 add.w &0x0200, &0x0200 e36c d2431102 mov.b #1, &0x0211 e370 b24000080202 mov.w #0x0800, &0x0202 e376 b24000800402 mov.w #0x8000, &0x0204 e37c f2c21900 bic.b #8, &P3OUT e380 3041 ret Le382: e382 f2400f002400 mov.b #0x000f, &P1IES e388 c2432300 clr.b &P1IFG e38c f2400f002500 mov.b #0x000f, &P1IE e392 c2432900 clr.b &P2OUT e396 c2431900 clr.b &P3OUT e39a f2d00f002a00 bis.b #0x000f, &P2DIR e3a0 f2d00f001a00 bis.b #0x000f, &P3DIR e3a6 3c404042 mov.w #0x4240, R12 e3aa 3d400f00 mov.w #0x000f, R13 e3ae b01256e2 call #Le256 e3b2 b01296e4 call #Le496 e3b6 b012bee3 call #Le3be e3ba 3040f0e4 br #Le4f0 Le3be: e3be f2d030001b00 bis.b #0x0030, &P3SEL e3c4 f24011007000 mov.b #0x0011, &U0CTL e3ca f2d003000500 bis.b #0x0003, &ME2 e3d0 f24010007100 mov.b #0x0010, &U0TCTL e3d6 f24003007400 mov.b #0x0003, &U0BR0 e3dc c2437500 clr.b &U0BR1 e3e0 f2404a007300 mov.b #0x004a, &U0MCTL e3e6 d2c37000 bic.b #1, &U0CTL e3ea d2d30100 bis.b #1, &IE2 e3ee 3041 ret Le3f0: e3f0 e2b20602 bit.b #4, &0x0206 e3f4 0c2c jc Le40e e3f6 1f420402 mov.w &0x0204, R15 e3fa 12c3 clrc e3fc 0f10 rrc.w R15 e3fe 1f920002 cmp.w &0x0200, R15 e402 0528 jnc Le40e e404 925200020002 add.w &0x0200, &0x0200 e40a d2431102 mov.b #1, &0x0211 Le40e: e40e b2d010006201 bis.w #0x0010, &TACCTL0 e414 3041 ret Le416: e416 12c3 clrc e418 0d10 rrc.w R13 e41a 0c10 rrc.w R12 e41c 12c3 clrc e41e 0d10 rrc.w R13 e420 0c10 rrc.w R12 e422 12c3 clrc e424 0d10 rrc.w R13 e426 0c10 rrc.w R12 e428 12c3 clrc e42a 0d10 rrc.w R13 e42c 0c10 rrc.w R12 e42e 12c3 clrc e430 0d10 rrc.w R13 e432 0c10 rrc.w R12 e434 0d11 rra.w R13 e436 0c10 rrc.w R12 e438 3041 ret Le43a: e43a e2b20602 bit.b #4, &0x0206 e43e 0b2c jc Le456 e440 1f420002 mov.w &0x0200, R15 e444 12c3 clrc e446 0f10 rrc.w R15 e448 1f920202 cmp.w &0x0202, R15 e44c 0428 jnc Le456 e44e 824f0002 mov.w R15, &0x0200 e452 d2431102 mov.b #1, &0x0211 Le456: e456 b2d010006201 bis.w #0x0010, &TACCTL0 e45c 3041 ret Le45e: e45e e2e20602 xor.b #4, &0x0206 e462 e2b20602 bit.b #4, &0x0206 e466 062c jc Le474 e468 b2d010006201 bis.w #0x0010, &TACCTL0 e46e f2c22900 bic.b #8, &P2OUT e472 3041 ret Le474: e474 f2d22900 bis.b #8, &P2OUT e478 3041 ret e47a 7cf3 and.b #-1, R12 e47c 7ef3 and.b #-1, R14 Le47e: e47e 0f4e mov.w R14, R15 e480 0d4c mov.w R12, R13 e482 0e43 clr.w R14 e484 1c43 mov.w #1, R12 Le486: e486 0d5d add.w R13, R13 e488 0e6e addc.w R14, R14 e48a 0e9f cmp.w R15, R14 e48c 0128 jnc Le490 e48e 0e8f sub.w R15, R14 Le490: e490 0c6c addc.w R12, R12 e492 f92b jnc Le486 e494 3041 ret Le496: e496 924200027201 mov.w &0x0200, &TACCR0 e49c b24010006201 mov.w #0x0010, &TACCTL0 e4a2 b24014026001 mov.w #0x0214, &TACTL e4a8 3041 ret Le4aa: e4aa 0f4c mov.w R12, R15 e4ac 043c jmp Le4b6 Le4ae: e4ae ff4d0000 mov.b @R13+, 0(R15) e4b2 1f53 add.w #1, R15 e4b4 3e53 add.w #-1, R14 Le4b6: e4b6 0e93 tst.w R14 e4b8 fa23 jnz Le4ae e4ba 3041 ret Le4bc: e4bc 0f4c mov.w R12, R15 e4be 0f5d add.w R13, R15 e4c0 033c jmp Le4c8 Le4c2: e4c2 cc430000 clr.b 0(R12) e4c6 1c53 add.w #1, R12 Le4c8: e4c8 0c9f cmp.w R15, R12 e4ca fb23 jnz Le4c2 e4cc 3041 ret INT_PORT1: e4ce c2432500 clr.b &P1IE e4d2 c2432300 clr.b &P1IFG e4d6 d2d30000 bis.b #1, &IE1 e4da 0013 reti Le4dc: e4dc b01282e3 call #Le382 e4e0 32d01800 bis.w #0x0018, R2 e4e4 3041 ret Le4e6: e4e6 b240805a2001 mov.w #0x5a80, &WDTCTL e4ec 1c43 mov.w #1, R12 e4ee 3041 ret Le4f0: e4f0 b2401f5a2001 mov.w #0x5a1f, &WDTCTL e4f6 3041 ret Le4f8: e4f8 d2e30602 xor.b #1, &0x0206 e4fc 3041 ret Le4fe: e4fe 30400ae5 br #Le50a Le502: e502 3040aae4 br #Le4aa Le506: e506 3040fee4 br #Le4fe Le50a: e50a ff3f jmp Le50a ORG 0xffe4 VECTOR_PORT1: ffe4 cee4 DW 0xe4ce ORG 0xffee VECTOR_USART0_RX: ffee d4e2 DW 0xe2d4 ORG 0xfff2 VECTOR_TMR_A3_CR0: fff2 76e1 DW 0xe176 VECTOR_WDT: fff4 58e0 DW 0xe058 ORG 0xfffe VECTOR_RESET: fffe 28e0 DW 0xe028