From 0c54a19a0b482e5498c0c95ab1588731d34623d4 Mon Sep 17 00:00:00 2001
From: Oliver Schmidt
Date: Sun, 20 Aug 2017 11:49:02 +0200
Subject: [PATCH] Adjusted to recent driver interface change.
The change is inspired by the code of the standard joystick driver. It is however absolutely untested.
Note: Sites like http://raster.atariportal.cz/english.htm state that there needs to be a delay when reading joysticks via the MultiJoy adapter. There's no such delay in the driver. But I don't dare to decide to add it.
---
libsrc/atari/joy/atrmj8.s | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)
diff --git a/libsrc/atari/joy/atrmj8.s b/libsrc/atari/joy/atrmj8.s
index 46766070b..0e8cd2a0a 100644
--- a/libsrc/atari/joy/atrmj8.s
+++ b/libsrc/atari/joy/atrmj8.s
@@ -35,17 +35,6 @@
.addr $0000
-; Button state masks (8 values)
-
- .byte $02 ; JOY_UP
- .byte $04 ; JOY_DOWN
- .byte $08 ; JOY_LEFT
- .byte $10 ; JOY_RIGHT
- .byte $01 ; JOY_FIRE
- .byte $00 ; JOY_FIRE2 not available
- .byte $00 ; Future expansion
- .byte $00 ; Future expansion
-
; Jump table.
.addr INSTALL
@@ -115,10 +104,12 @@ READJOY:
; Read joystick
- lda PORTA ; get position
- and #%00001111
+ lda STRIG0 ; get button
+ asl a
+ asl a
+ asl a
asl a
- ora TRIG0 ; add button information
- eor #%00011111
+ ora PORTA ; add position information
+ eor #$1F
ldx #0 ; fix X
rts
--
2.39.5