                         .module again.c
--- 0000                   .dbfile again.c
                         .area text
                       ;  IX -> 0,x
 9813                  _SCI_isr::
 9813                    .dbfile C:\ICCTJP\include/isrdecl.h
 9813                    .dbfunc SCI_isr
 9813                    .dbline 41
                       ; ///////////////////////////////////////////////////////////
                       ; //  Program:        again.c
                       ; //  Description:    Another test program
                       ; //  Programmer:     Scott Nortman
                       ; //  Date:           3/24/00
                       ; ///////////////////////////////////////////////////////////
                       ; 
                       ; /**************************** Constants *********************************/
                       ; #define pulse_handler TOC2_isr
                       ; #define TOLERANCE 10 
                       ; #define valve_sensor analog(1)
                       ; /**************************** End of Constants **************************/
                       ; 
                       ; /*************************** Interrupts *********************************/
                       ; #pragma interrupt_handler TOC2_isr, RTI_isr, TOF_isr;
                       ; /*************************** End of Interrupts **************************/
                       ; 
                       ; /************************** Includes ************************************/
                       ; #include <tjpbase.h>
                       ; #include <analog.h>
                       ; #include <vectors.h>
                       ; #include <mil.h>
                       ; #include <hc11.h>
                       ; /************************ End of includes *******************************/
                       ; /************************** Global Variables*****************************/
                       ; long duty_cycle;    //duty_cycle in e clocks
                       ; long period;        //period in e clocks
                       ; int desired;        
                       ; long count = 0; 
                       ; /************************ End of Global Variables ***********************/
                       ; 
                       ; /**************************** Main **************************************/
                       ; void main(void)
                       ; {
                       ;     
                       ;     /* VT100 clear screen */ 
                       ;     char clear[]= "\x1b\x5B\x32\x4A\x04"; 
                       ;     
                       ;     /* VT100 position cursor at (x,y) = (3,12) command is "\x1b[3;12H"*/
                       ;     char place[]= "\x1b[1;1H";  /*Home*/
                       ;  
 9813                  L2:
 9813  3B                rti
                       ;  IX -> 0,x
 9814                  _SPI_isr::
 9814                    .dbfunc SPI_isr
 9814                    .dbline 47
                       ;     //SET_BIT(TMSK2, 0x40);     //Enble RTI interrupt
                       ;     SET_BIT(TCTL1, 0x40);       //TOC2 toggle
                       ;     CLEAR_BIT(TCTL1, 0x80);     //Enable toggle on TOC2
                       ; 
                       ;     INTR_OFF();
                       ;     printf("%s", clear);  
 9814                  L3:
 9814  3B                rti
                       ;  IX -> 0,x
 9815                  _PAIE_isr::
 9815                    .dbfunc PAIE_isr
 9815                    .dbline 53
                       ;     printf("%s", place);
                       ;     printf("Enter the desired period in e clocks / 1000:\n");
                       ;     period = (read_int() * 1000);
                       ;     TOC2 = 0;
                       ;     desired = 150;
                       ;     INTR_ON();
 9815                  L4:
 9815  3B                rti
                       ;  IX -> 0,x
 9816                  _PAV_isr::
 9816                    .dbfunc PAV_isr
 9816                    .dbline 59
                       ;     
                       ;     while(1)
                       ;     {
                       ;         SET_BIT(TMSK1, 0x40);   //Enable TOC        
                       ;         if (desired < valve_sensor)
                       ;         {
 9816                  L5:
 9816  3B                rti
                       ;  IX -> 0,x
 9817                  _TOC3_isr::
 9817                    .dbfunc TOC3_isr
 9817                    .dbline 89
                       ;             CLEAR_BIT(PORTA, 0x20);
                       ;         }
                       ;         else if (desired > valve_sensor) 
                       ;         {
                       ;             SET_BIT(PORTA, 0x20);
                       ;         }
                       ;         else if ((desired <= valve_sensor + TOLERANCE) && (desired >= valve_sensor - TOLERANCE))
                       ;         {
                       ;             CLEAR_BIT(TMSK1, 0x40);     //Disable TOC2
                       ;         }
                       ;         
                       ;     }/*End While*/
                       ;     
                       ; }/*End Main*/
                       ; 
                       ; /**************************** End of Main *******************************/
                       ; void pulse_handler()
                       ; {
                       ;     TOC2 += (period / 2);       //Add period / 2
                       ;     CLEAR_FLAG(TFLG1, 0x40)     //Clear the interrupt flag
                       ; }
                       ; 
                       ; void RTI_isr(void)
                       ; {
                       ;     printf("%d\n", valve_sensor);
                       ;     count += 1;
                       ;     if (count >=500)
                       ;     {
                       ;         count = 0;
                       ;         if (desired == 150)
 9817                  L6:
 9817  3B                rti
                       ;  IX -> 0,x
 9818                  _TIC3_isr::
 9818                    .dbfunc TIC3_isr
 9818                    .dbline 101
                       ;         {
                       ;             desired = 100;
                       ;         }
                       ;         
                       ;         else if (desired == 100)
                       ;         {
                       ;             desired = 150;
                       ;         }
                       ;     }
                       ;     CLEAR_FLAG(TFLG2, 0x40);
                       ; }
                       ; 
 9818                  L7:
 9818  3B                rti
                       ;  IX -> 0,x
 9819                  _TIC2_isr::
 9819                    .dbfunc TIC2_isr
 9819                    .dbline 107
                       ; void TOF_isr(void)
                       ; {
                       ;     CLEAR_FLAG(TFLG1, 0x80);
                       ; }
                       ; }
                       ; }
 9819                  L8:
 9819  3B                rti
                       ;  IX -> 0,x
 981A                  _TIC1_isr::
 981A                    .dbfunc TIC1_isr
 981A                    .dbline 113
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981A                  L9:
 981A  3B                rti
                       ;  IX -> 0,x
 981B                  _IRQ_isr::
 981B                    .dbfunc IRQ_isr
 981B                    .dbline 125
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981B                  L10:
 981B  3B                rti
                       ;  IX -> 0,x
 981C                  _XIRQ_isr::
 981C                    .dbfunc XIRQ_isr
 981C                    .dbline 131
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981C                  L11:
 981C  3B                rti
                       ;  IX -> 0,x
 981D                  _SWI_isr::
 981D                    .dbfunc SWI_isr
 981D                    .dbline 137
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981D                  L12:
 981D  3B                rti
                       ;  IX -> 0,x
 981E                  _ILLOP_isr::
 981E                    .dbfunc ILLOP_isr
 981E                    .dbline 143
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981E                  L13:
 981E  3B                rti
                       ;  IX -> 0,x
 981F                  _COP_isr::
 981F                    .dbfunc COP_isr
 981F                    .dbline 149
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 981F                  L14:
 981F  3B                rti
                       ;  IX -> 0,x
 9820                  _CLMON_isr::
 9820                    .dbfunc CLMON_isr
 9820                    .dbline 155
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
                       ; }
 9820                  L15:
 9820  3B                rti
                         .area data
 9A28                  _drew::
 9A28                    .blkw 1
                         .area idata
--- 0000 0000              .word _interrupt_vectors
                         .area data
 9A2A                  _count::
 9A2A                    .blkb 4
                         .area idata
--- 0002 00000000          .word 0,0
                         .area text
--- 000E                 L17:
--- 000E 1B5B324A0400      .byte 27,91,50,'J,4,0
--- 0014                 L18:
--- 0014 1B5B313B314800    .byte 27,91,49,59,49,'H,0
                       ;  lreg1 -> -4,x
                       ;  lreg2 -> -8,x
                       ;  IX -> 0,x
                       ;  rMEM -> 2,x
                       ;  func temp: 4,x - 10,x
                       ;          place -> 11,x
                       ;          clear -> 18,x
 982E                  _main::
 982E  BD86BA            jsr __enterb
 9831  98                .byte 0x98
 9832                    .dbfile again.c
 9832                    .dbfunc main
 9832                    .dbline 37
 9832  EC00              ldd 0,x
 9834  C30012            addd #18
 9837  18CE9821          ldy #L17
 983B  3C                pshx
 983C  8F                xgdx
 983D  CC0006            ldd #6
 9840  BD86A2            jsr __asgnblk
 9843  38                pulx
 9844                    .dbline 40
 9844  EC00              ldd 0,x
 9846  C3000B            addd #11
 9849  18CE9827          ldy #L18
 984D  3C                pshx
 984E  8F                xgdx
 984F  CC0007            ldd #7
 9852  BD86A2            jsr __asgnblk
 9855  38                pulx
 9856                    .dbline 43
 9856  18CE1020          ldy #0x1020
 985A  181C0040          bset 0,y,#64
 985E                    .dbline 44
 985E  18CE1020          ldy #0x1020
 9862  181D0080          bclr 0,y,#0x80
 9866  0F                        sei
                       
 9867                    .dbline 47
 9867  EC00              ldd 0,x
 9869  C30012            addd #18
 986C  37                pshb
 986D  36                psha
 986E  CC9A1F            ldd #L19
 9871  BD9442            jsr _printf
 9874  1838              puly
 9876                    .dbline 48
 9876  EC00              ldd 0,x
 9878  C3000B            addd #11
 987B  37                pshb
 987C  36                psha
 987D  CC9A1F            ldd #L19
 9880  BD9442            jsr _printf
 9883  1838              puly
 9885                    .dbline 49
 9885  CC99F1            ldd #L20
 9888  BD9442            jsr _printf
 988B                    .dbline 50
 988B  BD856F            jsr _read_int
 988E  ED04              std 4,x
 9890  CC03E8            ldd #1000
 9893  1AEE04            ldy 4,x
 9896  BD8669            jsr __muli
 9899  BD8987            jsr __d2lreg
 989C  18CE9A47          ldy #_period
 98A0  BD8935            jsr __lreg2y
 98A3                    .dbline 51
 98A3  CC0000            ldd #0
 98A6  FD1018            std 0x1018
 98A9                    .dbline 52
 98A9  CC0096            ldd #150
 98AC  FD9A45            std _desired
 98AF  0E                        cli
                       
 98B0                    .dbline 53
 98B0  206A              bra L22
 98B2                  L21:
 98B2                    .dbline 57
 98B2  18CE1022          ldy #0x1022
 98B6  181C0040          bset 0,y,#64
 98BA                    .dbline 58
 98BA  CC0001            ldd #1
 98BD  BD8144            jsr _analog
 98C0  ED06              std 6,x
 98C2  FC9A45            ldd _desired
 98C5  1AA306            cpd 6,x
 98C8  2C0A              bge L24
 98CA                    .dbline 60
 98CA  18CE1000          ldy #0x1000
 98CE  181D0020          bclr 0,y,#0x20
 98D2                    .dbline 61
 98D2  2048              bra L25
 98D4                  L24:
 98D4                    .dbline 62
 98D4  CC0001            ldd #1
 98D7  BD8144            jsr _analog
 98DA  ED08              std 8,x
 98DC  FC9A45            ldd _desired
 98DF  1AA308            cpd 8,x
 98E2  2F0A              ble L26
 98E4                    .dbline 64
 98E4  18CE1000          ldy #0x1000
 98E8  181C0020          bset 0,y,#32
 98EC                    .dbline 65
 98EC  202E              bra L27
 98EE                  L26:
 98EE                    .dbline 66
 98EE  CC0001            ldd #1
 98F1  BD8144            jsr _analog
 98F4  C3000A            addd #10
 98F7  ED02              std 2,x
 98F9  FC9A45            ldd _desired
 98FC  1AA302            cpd 2,x
 98FF  2E1B              bgt L28
 9901  CC0001            ldd #1
 9904  BD8144            jsr _analog
 9907  83000A            subd #10
 990A  ED02              std 2,x
 990C  FC9A45            ldd _desired
 990F  1AA302            cpd 2,x
 9912  2D08              blt L28
 9914                    .dbline 68
 9914  18CE1022          ldy #0x1022
 9918  181D0040          bclr 0,y,#0x40
 991C                    .dbline 69
 991C                  L28:
 991C                  L27:
 991C                  L25:
 991C                    .dbline 71
 991C                  L22:
 991C                    .dbline 55
 991C  2094              bra L21
 991E                  L16:
 991E  8F                xgdx
 991F  C30018            addd #24
 9922  8F                xgdx
 9923  35                txs
 9924  38                pulx
 9925  39                rts
                       ;  lreg1 -> -4,x
                       ;  lreg2 -> -8,x
                       ;  IX -> 0,x
 9926                  _TOC2_isr::
 9926  BD86BA            jsr __enterb
 9929  82                .byte 0x82
 992A                    .dbfunc TOC2_isr
 992A                    .dbline 78
 992A  18CE9A47          ldy #_period
 992E  BD88F8            jsr __ly2reg
 9931  18CE99ED          ldy #L31
 9935  BD891E            jsr __ly2reg2
 9938  BD8B95            jsr __ldiv
 993B  BD8972            jsr __lregmov
                         ; vol
 993E  FC1018            ldd 0x1018
 9941  BD89B9            jsr __ud2lreg
 9944  BD8A84            jsr __ladd
 9947  BD89DF            jsr __lreg2d
 994A  FD1018            std 0x1018
 994D                    .dbline 79
 994D  18CE1023          ldy #0x1023
 9951  181D00BF          bclr 0,y,#0xbf
 9955                    .dbline 80
 9955                  L30:
 9955  08                inx
 9956  08                inx
 9957  35                txs
 9958  38                pulx
 9959  3B                rti
                       ;  lreg1 -> -4,x
                       ;  lreg2 -> -8,x
                       ;  IX -> 0,x
 995A                  _RTI_isr::
 995A  BD86BA            jsr __enterb
 995D  82                .byte 0x82
 995E                    .dbfunc RTI_isr
 995E                    .dbline 84
 995E  CC0001            ldd #1
 9961  BD8144            jsr _analog
 9964  37                pshb
 9965  36                psha
 9966  CC99E9            ldd #L33
 9969  BD9442            jsr _printf
 996C  1838              puly
 996E                    .dbline 85
 996E  18CE9A2A          ldy #_count
 9972  BD88F8            jsr __ly2reg
 9975  18CE99E5          ldy #L34
 9979  BD891E            jsr __ly2reg2
 997C  BD8A84            jsr __ladd
 997F  18CE9A2A          ldy #_count
 9983  BD8935            jsr __lreg2y
 9986                    .dbline 86
 9986  18CE9A2A          ldy #_count
 998A  BD88F8            jsr __ly2reg
 998D  18CE99E1          ldy #L37
 9991  BD891E            jsr __ly2reg2
 9994  BD8D86            jsr __lcmp
 9997  2D2E              blt L35
 9999                    .dbline 88
 9999  18CE99DD          ldy #L38
 999D  BD88F8            jsr __ly2reg
 99A0  18CE9A2A          ldy #_count
 99A4  BD8935            jsr __lreg2y
 99A7                    .dbline 89
 99A7  FC9A45            ldd _desired
 99AA  1A830096          cpd #150
 99AE  2608              bne L39
 99B0                    .dbline 91
 99B0  CC0064            ldd #100
 99B3  FD9A45            std _desired
 99B6                    .dbline 92
 99B6  200F              bra L40
 99B8                  L39:
 99B8                    .dbline 94
 99B8  FC9A45            ldd _desired
 99BB  1A830064          cpd #100
 99BF  2606              bne L41
 99C1                    .dbline 96
 99C1  CC0096            ldd #150
 99C4  FD9A45            std _desired
 99C7                    .dbline 97
 99C7                  L41:
 99C7                  L40:
 99C7                    .dbline 98
 99C7                  L35:
 99C7                    .dbline 99
 99C7  18CE1025          ldy #0x1025
 99CB  181D00BF          bclr 0,y,#0xbf
 99CF                    .dbline 100
 99CF                  L32:
 99CF  08                inx
 99D0  08                inx
 99D1  35                txs
 99D2  38                pulx
 99D3  3B                rti
                       ;  IX -> 0,x
 99D4                  _TOF_isr::
 99D4                    .dbfunc TOF_isr
 99D4                    .dbline 104
 99D4  18CE1023          ldy #0x1023
 99D8  181D007F          bclr 0,y,#0x7f
 99DC                    .dbline 105
 99DC                  L43:
 99DC  3B                rti
                         .area bss
 9A45                  _desired::
 9A45                    .blkb 2
 9A47                  _period::
 9A47                    .blkb 4
 9A4B                  _duty_cycle::
 9A4B                    .blkb 4
 9A4F                  _timertjp::
 9A4F                    .blkb 2
 9A51                  _days::
 9A51                    .blkb 2
 9A53                  _hours::
 9A53                    .blkb 2
 9A55                  _minutes::
 9A55                    .blkb 2
 9A57                  _seconds::
 9A57                    .blkb 2
 9A59                  _msec::
 9A59                    .blkb 2
                         .area text
--- 01CA                 L38:
--- 01CA 00000000          .word 0,0
--- 01CE                 L37:
--- 01CE 000001F4          .word 0,500
--- 01D2                 L34:
--- 01D2 00000001          .word 0,1
--- 01D6                 L33:
--- 01D6 25640A00          .byte 37,'d,10,0
--- 01DA                 L31:
--- 01DA 00000002          .word 0,2
--- 01DE                 L20:
--- 01DE 456E7465722074686520646573697265  .byte 'E,'n,'t,'e,'r,32,'t,'h,'e,32,'d,'e,'s,'i,'r,'e
--- 01EE 6420706572696F6420696E206520636C  .byte 'd,32,'p,'e,'r,'i,'o,'d,32,'i,'n,32,'e,32,'c,'l
--- 01FE 6F636B73202F20313030303A0A00  .byte 'o,'c,'k,'s,32,47,32,49,48,48,48,58,10,0
--- 020C                 L19:
--- 020C 257300            .byte 37,'s,0
