home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-12-04 | 1.7 KB | 81 lines | [04] ASCII Text (0x0000) |
- ;AUTO REPEAT
- ;
- PREDELAY EQU 255
- RPTDELAY EQU 32
- BASL EQU $28
- KSW EQU $38
- OURCH EQU $57B
- KBD EQU $C000
- KBDSTRB EQU $C010
- AKD EQU $C010
- CXROMOFF EQU $C006
- CXROMON EQU $C007
- ALTCHAR EQU $C01E
- INVERT EQU $CEDD
- PICK EQU $CF01
- ;
- ORG $300
- ;
- LDA #>NEWIN
- STA KSW
- LDA #<NEWIN
- STA KSW+1
- RTS
- ;
- NEWIN PHA
- STY YSAVE
- BIT ALTCHAR
- BPL NEWIN1
- STA (BASL),Y
- STA CXROMON
- JSR INVERT
- ;
- NEWIN1 LDA #RPTDELAY
- BIT RPTFLAG
- BMI WAIT
- LDA #PREDELAY
- WAIT SEC
- WAIT1 LDY #128
- WAIT2 BIT AKD
- BPL RPTOFF
- DEY
- BNE WAIT2
- SBC #1
- BNE WAIT1
- LDA KBD
- BIT KBDSTRB
- ORA #$80
- CMP OLDKEY
- BEQ RPTON
- LDY #0
- BEQ FIXRPT
- RPTON LDY #$80
- FIXRPT STY RPTFLAG
- JMP GETKEY1
- RPTOFF LDA #0
- STA RPTFLAG
- GETKEY LDA KBD
- BPL GETKEY
- BIT KBDSTRB
- GETKEY1 STA OLDKEY
- BIT ALTCHAR
- BPL CLRCURS1
- CMP #$9B
- BEQ NEWIN1
- CMP #$95
- BNE CLRCURS
- LDY OURCH
- JSR PICK
- ORA #$80
- CLRCURS JSR INVERT
- STA CXROMOFF
- CLRCURS1 PLA
- LDY YSAVE
- STA (BASL),Y
- LDA OLDKEY
- RTS
- OLDKEY DFB 0
- RPTFLAG DFB 0
- YSAVE DS 1
- ;
-