1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-22 12:30:41 +00:00

Use new joystick decls

git-svn-id: svn://svn.cc65.org/cc65/trunk@2777 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2003-12-16 22:38:12 +00:00
parent 30577253b1
commit b15e4106dc
11 changed files with 35 additions and 54 deletions

View File

@ -28,7 +28,7 @@ OFFS = 10
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -70,8 +70,7 @@ JOY_COUNT = 2 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -65,8 +65,7 @@ JOY_COUNT = 4 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.

View File

@ -1,6 +1,6 @@
;
; PTV-4 Player joystick driver for the C128
;
;
; Ullrich von Bassewitz, 2003-09-28, using the C64 driver from
; Groepaz/Hitmen, 2002-12-23, which is
; obviously based on Ullrichs driver :)
@ -21,8 +21,8 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte $6A, $6F, $79 ; "joy"
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -38,7 +38,7 @@
; Jump table.
.word INSTALL
.word DEINSTALL
.word UNINSTALL
.word COUNT
.word READ
@ -60,15 +60,14 @@ JOY_COUNT = 4 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; DEINSTALL routine. Is called before the driver is removed from memory.
; UNINSTALL routine. Is called before the driver is removed from memory.
; Can do cleanup or whatever. Must not return anything.
;
DEINSTALL:
UNINSTALL:
rts

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -65,8 +65,7 @@ JOY_COUNT = 2 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.

View File

@ -21,7 +21,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -103,11 +103,9 @@ pollirq:
ldy #$00 ; port b direction
sty $dd03 ; => input
; ldy #$00
sty $dd05 ; cia2 timer a highbyte
sty $dc05 ; cia1 timer a highbyte
iny
; lda #$01
sty $dd04 ; cia2 timer a lowbyte
sty $dc04 ; cia1 timer a lowbyte
@ -119,10 +117,6 @@ pollirq:
; serial port: input
; cia 1 setup
; lda #%00000001
; sty $dc0d ; irq ctrl reg
lda #%01010001
sta $dc0e ; control register a
; timer: start
@ -132,13 +126,11 @@ pollirq:
; read directions 3
lda $dd01 ;read cia 2 port b
and #$0f
sta temp3
; read button 3
lda $dd02 ;cia 2 port a
and #%11111011 ;data direction
sta $dd02 ;=> bit 2 input
@ -151,7 +143,6 @@ pollirq:
sta temp3
; read directions 4
lda $dd01 ;read cia 2 port b
lsr a
lsr a
@ -160,7 +151,6 @@ pollirq:
sta temp4
; read button 4
ldx #$ff ;serial data register
stx $dc0c;=> writing $ff causes
;cia to output some

View File

@ -21,7 +21,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -37,7 +37,7 @@
; Jump table.
.word INSTALL
.word DEINSTALL
.word UNINSTALL
.word COUNT
.word READ
@ -59,15 +59,14 @@ JOY_COUNT = 4 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; DEINSTALL routine. Is called before the driver is removed from memory.
; UNINSTALL routine. Is called before the driver is removed from memory.
; Can do cleanup or whatever. Must not return anything.
;
DEINSTALL:
UNINSTALL:
rts

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -65,7 +65,7 @@ INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -65,7 +65,6 @@ JOY_COUNT = 2 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------

View File

@ -6,7 +6,7 @@
.export _joy_install, _joy_uninstall, _joy_masks
.export joy_clear_ptr
.importzp ptr1
.include "joy-kernel.inc"
@ -20,7 +20,7 @@
.bss
_joy_drv: .res 2 ; Pointer to driver
_joy_masks: .res JOY_MASK_COUNT
_joy_masks: .res .sizeof(JOY_HDR::MASKS)
; Jump table for the driver functions.
.data
@ -32,8 +32,7 @@ joy_read: jmp $0000
; Driver header signature
.rodata
joy_sig: .byte $6A, $6F, $79, $00 ; "joy", version
joy_sig_len = * - joy_sig
joy_sig: .byte $6A, $6F, $79, JOY_API_VERSION ; "joy", version
;----------------------------------------------------------------------------
@ -49,7 +48,7 @@ _joy_install:
; Check the driver signature
ldy #joy_sig_len-1
ldy #.sizeof(joy_sig)-1
@L0: lda (ptr1),y
cmp joy_sig,y
bne inv_drv
@ -58,8 +57,8 @@ _joy_install:
; Copy the mask array
ldy #JOY_MASKS + JOY_MASK_COUNT - 1
ldx #JOY_MASK_COUNT-1
ldy #JOY_HDR::MASKS + .sizeof(JOY_HDR::MASKS) - 1
ldx #.sizeof(JOY_HDR::MASKS)-1
@L1: lda (ptr1),y
sta _joy_masks,x
dey
@ -68,12 +67,12 @@ _joy_install:
; Copy the jump vectors
ldy #JOY_HDR_JUMPTAB
ldy #JOY_HDR::JUMPTAB
ldx #0
@L2: inx ; Skip the JMP opcode
jsr copy ; Copy one byte
jsr copy ; Copy one byte
cpx #(JOY_HDR_JUMPCOUNT*3)
cpy #(JOY_HDR::JUMPTAB + .sizeof(JOY_HDR::JUMPTAB))
bne @L2
jmp joy_install ; Call driver install routine

View File

@ -22,7 +22,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -43,7 +43,7 @@
.word READ
; ------------------------------------------------------------------------
; Constants
; Constants
JOY_COUNT = 2 ; Number of joysticks we support
@ -64,8 +64,7 @@ JOY_COUNT = 2 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.

View File

@ -23,7 +23,7 @@
; Driver signature
.byte $6A, $6F, $79 ; "joy"
.byte $00 ; Driver API version number
.byte JOY_API_VERSION ; Driver API version number
; Button state masks (8 values)
@ -65,8 +65,7 @@ JOY_COUNT = 1 ; Number of joysticks we support
INSTALL:
lda #<JOY_ERR_OK
ldx #>JOY_ERR_OK
; rts ; Run into DEINSTALL instead
; rts ; Run into UNINSTALL instead
; ------------------------------------------------------------------------
; UNINSTALL routine. Is called before the driver is removed from memory.