home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Antic Magazine 1987 March
/
Antic_Magazine_1987_03_Antic.atr
/
jstick.m65
< prev
next >
Wrap
Text File
|
2023-02-26
|
1KB
|
1 lines
0100 ; JOYSTICK EXPANDER¢0110 ; BY MATT LOVELESS AND MIKE EGGERS¢0120 ; (c) 1987, ANTIC PUBLISHING¢0130 ;¢0140 *= $0600 ;Page 6¢0150 SETVBV = $E45C ;Routine to set VBI vectors¢0160 XITVBV = $E462 ;EXIT VBI VECTOR¢0170 STICK = $0278 ;beginning of OS's joystick values¢0180 DVBVLK = $0224 ;Address of deferred VBI vector¢0190 ;¢0200 SETUP¢0210 LDA DVBVLK ;Save old vector¢0220 STA RETADD¢0230 LDA DVBVLK+1¢0240 STA RETADD+1¢0250 LDX #UPDATE/256 ;High byte of VBI vector¢0260 LDY #UPDATE&255 ;Low byte¢0270 LDA #7 ;Use deferred vector¢0280 JSR SETVBV ;Set VBLANK¢0290 PLA ;* BASIC ONLY *¢0300 RTS ¢0310 ;¢0320 UPDATE¢0330 LDX #$03 ;4 sticks (0-3)¢0340 ;¢0350 LOOP¢0360 LDA STICK,X ;Get this joystick reading...¢0370 TAY ; -- AND --¢0380 LDA TABLE,Y ;use it to index into the table¢0390 STA STICK,X ;Store new value¢0400 DEX ¢0410 BPL LOOP ;If not finished then branch back¢0420 ;¢0430 JMP (RETADD)¢0440 TABLE¢0450 .BYTE 0,0,0,0,0 ;Bad values return a zero¢0460 .BYTE 4 ;RIGHT/BACK¢0470 .BYTE 2 ;RIGHT/FORWARD¢0480 .BYTE 3 ;RIGHT¢0490 .BYTE 0¢0500 .BYTE 6 ;LEFT/BACK¢0510 .BYTE 8 ;LEFT/FORWARD¢0520 .BYTE 7 ;LEFT¢0530 .BYTE 0¢0540 .BYTE 5 ;BACK¢0550 .BYTE 1 ;FORWARD¢0560 .BYTE 0 ;CENTERED¢0570 ;¢0580 RETADD¢0590 *= *+2 ;Return address¢0600 .END ¢