1 ; C Compiler for STM8 (COSMIC Software) 2 ; Parser V4.8.32 - 23 Mar 2010 3 ; Generator V4.3.4 - 23 Mar 2010 2468 ; 4 void TIM4_INIT(void) 2468 ; 5 { 2470 switch .text 2471 0000 _TIM4_INIT: 2475 ; 7 CLK_PCKENR1 |= 0x10; 2477 0000 721850c7 bset _CLK_PCKENR1,#4 2478 ; 10 TIM4_PSCR = 0x06; 2480 0004 35065347 mov _TIM4_PSCR,#6 2481 ; 13 TIM4_CR1 = 0x00; 2483 0008 725f5340 clr _TIM4_CR1 2484 ; 16 TIM4_ARR = 0x7C; 2486 000c 357c5348 mov _TIM4_ARR,#124 2487 ; 19 TIM4_EGR |= 0x01; 2489 0010 72105345 bset _TIM4_EGR,#0 2490 ; 22 TIM4_IER = 0x01; 2492 0014 35015343 mov _TIM4_IER,#1 2493 ; 25 TIM4_CR1 = 0x01; 2495 0018 35015340 mov _TIM4_CR1,#1 2496 ; 26 } 2499 001c 81 ret 2535 .const: section .text 2536 0000 L01: 2537 0000 0000ffff dc.l 65535 2538 ; 28 @far @interrupt void TIM4_UPD_IRQ(void) 2538 ; 29 { 2539 scross on 2540 switch .text 2541 001d f_TIM4_UPD_IRQ: 2543 00000001 OFST: set 1 2544 001d be02 ldw x,c_lreg+2 2545 001f 89 pushw x 2546 0020 be00 ldw x,c_lreg 2547 0022 89 pushw x 2548 0023 88 push a 2551 ; 31 TIM4_SR = 0x00; 2553 0024 725f5344 clr _TIM4_SR 2555 0028 a605 ld a,#5 2556 002a 6b01 ld (OFST+0,sp),a 2557 002c L3261: 2558 ; 32 UPDATETIMERS(); 2560 002c 7b01 ld a,(OFST+0,sp) 2561 002e 5f clrw x 2562 002f 97 ld xl,a 2563 0030 58 sllw x 2564 0031 5a decw x 2565 0032 5a decw x 2566 0033 e601 ld a,(_timers+1,x) 2567 0035 ea00 or a,(_timers,x) 2568 0037 2725 jreq L1361 2570 0039 7b01 ld a,(OFST+0,sp) 2571 003b 5f clrw x 2572 003c 97 ld xl,a 2573 003d 58 sllw x 2574 003e 5a decw x 2575 003f 5a decw x 2576 0040 ee00 ldw x,(_timers,x) 2577 0042 cd0000 call c_uitolx 2579 0045 ae0000 ldw x,#L01 2580 0048 cd0000 call c_lcmp 2582 004b 2711 jreq L1361 2585 004d 7b01 ld a,(OFST+0,sp) 2586 004f 5f clrw x 2587 0050 97 ld xl,a 2588 0051 58 sllw x 2589 0052 5a decw x 2590 0053 5a decw x 2591 0054 9093 ldw y,x 2592 0056 ee00 ldw x,(_timers,x) 2593 0058 1d0001 subw x,#1 2594 005b 90ef00 ldw (_timers,y),x 2595 005e L1361: 2598 005e 0a01 dec (OFST+0,sp) 2601 0060 0d01 tnz (OFST+0,sp) 2602 0062 26c8 jrne L3261 2603 ; 33 } 2607 0064 84 pop a 2608 0065 85 popw x 2609 0066 bf00 ldw c_lreg,x 2610 0068 85 popw x 2611 0069 bf02 ldw c_lreg+2,x 2612 006b 80 iret 2624 xdef f_TIM4_UPD_IRQ 2625 xdef _TIM4_INIT 2626 xref.b _timers 2627 xref.b c_lreg 2646 xref c_lcmp 2647 xref c_uitolx 2648 end