1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-09 01:28:58 +00:00

fixed bug on C64 GEOS (I/O was not enabled when reading joystick)

git-svn-id: svn://svn.cc65.org/cc65/trunk@1803 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
izydorst 2002-12-20 22:54:56 +00:00
parent 712af18e96
commit 3dc9b06127

View File

@ -10,31 +10,39 @@
.proc _readjoy
php
sei ; disable IRQ
lda $01
pha
lda #$35
sta $01 ; enable I/O
tax ; Joystick number into X
bne joy2
; Read joystick 1
joy1: lda #$7F
sei
joy1:
lda #$7F
sta cia1base
lda cia1base+1
cli
back: tax
pla
sta $01
plp
txa
and #$1F
eor #$1F
ldx #0
rts
; Read joystick 2
joy2: ldx #0
lda #$E0
joy2: lda #$E0
ldy #$FF
sta cia1base+2
lda cia1base+1
sty cia1base+2
and #$1F
eor #$1F
rts
jmp back
.endproc