X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fc64%2Fc64-ptvjoy.s;h=b4314968e1ddfeaa31505e0d86e650d3c04636c7;hb=148a6569e55822a562380c56df0340bccc653749;hp=60950ff5920ebc47e675e04d16c98faef2bfcb17;hpb=b15e4106dcdee8edb99ded4e266008eee5455ecb;p=cc65 diff --git a/libsrc/c64/c64-ptvjoy.s b/libsrc/c64/c64-ptvjoy.s index 60950ff59..b4314968e 100755 --- a/libsrc/c64/c64-ptvjoy.s +++ b/libsrc/c64/c64-ptvjoy.s @@ -30,16 +30,17 @@ .byte $04 ; JOY_LEFT .byte $08 ; JOY_RIGHT .byte $10 ; JOY_FIRE - .byte $00 ; Future expansion + .byte $00 ; JOY_FIRE2 unavailable .byte $00 ; Future expansion .byte $00 ; Future expansion ; Jump table. - .word INSTALL - .word UNINSTALL - .word COUNT - .word READ + .addr INSTALL + .addr UNINSTALL + .addr COUNT + .addr READ + .addr 0 ; IRQ entry unused ; ------------------------------------------------------------------------ ; Constants @@ -115,25 +116,24 @@ joy2: dex ; Read joystick 3 -joy3: dex - bne joy4 - +joy3: lda #%10000000 ; cia 2 port B Data-Direction sta CIA2_DDRB ; bit 7: out bit 6-0: in + dex + bne joy4 + lda #$80 ; cia 2 port B read/write sta CIA2_PRB ; (output one at PB7) lda CIA2_PRB ; cia 2 port B read/write and #$1f ; get bit 4-0 (PB4-PB0) + eor #$1f rts ; Read joystick 4 -joy4: lda #%10000000 ; cia 2 port B Data-Direction - sta CIA2_DDRB ; bit 7: out bit 6-0: in - - lda #$00 ; cia 2 port B read/write +joy4: lda #$00 ; cia 2 port B read/write sta CIA2_PRB ; (output zero at PB7) lda CIA2_PRB ; cia 2 port B read/write @@ -144,6 +144,7 @@ joy4: lda #%10000000 ; cia 2 port B Data-Direction and #%00100000 ; get bit 5 (PB5) lsr ora tmp1 + eor #$1f ldx #0 rts