digital EQU * TSX LDAB PORTC LDAA 3,X ?0 BEQ ?1 LSRB * DECA BRA ?0 ?1 ANDB #1 EORB #1 RTS analog EQU * TSX LDAA 3,X SEI * STAA ADCTL ?2 LDAA ADCTL ANDA #$80 BEQ ?2 CLI * LDAB ADR1 CLRA RTS dipsw EQU * TSX LDAB PORTD LSRB * LDAA 3,X ?3 LSRB * DECA BNE ?3 ANDB #1 RTS * motor EQU * TSX LDAB 5,X PSHB * LDAA #$08 SEC * ?4 ROLA DECB BNE ?4 PSHA ORAA motctrl STAA ?temp PULA ANDA #$0F TST 2,X BPL ?5 COMA ANDA ?temp BRA ?6 ?5 LDAA ?temp ?6 STAA motctrl LDD 2,X BPL ?7 LDD #0 SUBD 2,X ?7 ASLB * LDX #?8 ABX * LDY 0,X PULB * ASLB LDX #speed1-2 ABX * STY 0,X RTS ?8 FDB %0000000000000000 FDB %0000000000000001 FDB %0000000100000001 FDB %0000100001000010 FDB %0001000100010001 FDB %0010001001001001 FDB %0100100100101001 FDB %0101001010101010 FDB %0101010101010101 FDB %1010101010101011 FDB %0101011010101011 FDB %1101110110110110 FDB %1110111011101110 FDB %1110111011101111 FDB %1110111111101111 FDB %1111111011111111 FDB %1111111111111111 off TSX LDAB 3,X LDAA #$08 ?9 ROLA DECB BNE ?9 COMA ANDA motctrl STAA motctrl RTS msleep EQU * TSX ?10 SEI * LDD st_lo ADDD 2,X CLI * ?11 CPD st_lo BNE ?11 RTS button EQU * CLRA LDAB irqval BEQ ?12 CLR irqval ?12 RTS tone EQU * TSX LDD 4,X LSRD LSRD LSRD LSRD ; PSHX LDX #62500 XGDX IDIV ; STX beeptone LDX #BASE BSET TCTL1,X;$01 BSET TMSK1,X;$08 BSET PORTB,X;$80 PULX BSR ?10 LDX #BASE BCLR TMSK1,X;$08 BCLR TCTL1,X;$01 BCLR PORTA,X;$08 BCLR PORTB,X;$80 LDX #0 STX beeptone RTS