home *** CD-ROM | disk | FTP | other *** search
/ Antic Magazine 1986 May / Antic_Magazine_1986_05_Antic.atr / keyjoy.m65 < prev    next >
Text File  |  2023-02-26  |  2KB  |  1 lines

  1. 0100 ;KEYJOY.M65¢0110 ;BY TED STOCKWELL¢0120 ;MODIFIED BY PATRICK BASS¢0130 ;(c) 1986, ANTIC PUBLISHING¢0140 ; V. 010786¢0150     .SET 1,20¢0160     .TAB 8,12,30¢0170 TOTALCODE = ENDCODE-STARTCODE¢0180     .OPT NO LIST¢0190 ;---------------------------¢0200 ;¢0210 STARTCODE = $0110¢0220 SETVBV = $E45C  ;Set Vector.¢0230 SYSVBV = $E45F  ;Do VBlank.¢0240 VBSETCODE = 6¢0250 STICK0 = $0278  ;Stick shadow.¢0260 SPEED = $00     ;Repeat Speed.¢0270 CH  =   $02FC¢0280 CUR.UP = 142    ;Cursor Values.¢0290 CUR.DOWN = 143¢0300 CUR.LEFT = 134¢0310 CUR.RIGHT = 135¢0320 ;¢0330 ;---------------------------¢0340     *=  STARTCODE¢0350 ;¢0360 ;To activate, point the VBlank                vector to our routine.¢0370 INSTALL¢0380     PLA ¢0390     LDY # <MAIN¢0400     LDX # >MAIN¢0410     LDA #VBSETCODE¢0420     JSR SETVBV¢0430     RTS ¢0440 ;¢0450 ;------------------------¢0460 ;Now every vertical blank                   sends us here first.¢0470 MAIN¢0480     DEC COUNT   ;Bump down.¢0490     BNE DONE    ;Branch out if                         timer still on.¢0500     LDA SPEED   ;Else refresh¢0510     STA COUNT   ;delay counter.¢0520 ;¢0530     LDA STICK0  ;Get stick val¢0540     EOR #$0F    ;Invert it.¢0550     BEQ DONE    ;If 0, no press.¢0560 ;¢0570     LDX #$FF    ;Otherwise reset                       key selector.¢0580 MLOOP¢0590     INX         ;point to next                        ;key selection.¢0600     LSR A       ;Check for bit.¢0610     BCC MLOOP   ;Branch if no                          bit available.¢0620     LDA KEYS,X  ;Else grab Key¢0630     STA CH      ;Store in shadow¢0640 DONE¢0650     JMP SYSVBV  ;Do rest of                            Vertical Blank.¢0660 ;¢0670 ;-----------------------------¢0680 KEYS¢0690     .BYTE CUR.UP,CUR.DOWN¢0700     .BYTE CUR.LEFT,CUR.RIGHT¢0710 ;¢0720 COUNT¢0730     .BYTE 5¢0740 ;¢0750 ENDCODE¢0760     .END ¢