.byte $40 ; JOY_DOWN
.byte $80 ; JOY_LEFT
.byte $20 ; JOY_RIGHT
- .byte $02 ; JOY_FIRE A ; FIXME: is this correct?
- .byte $01 ; JOY_FIRE B ; FIXME: is this correct?
- .byte $04 ; JOY_START ; FIXME: is this correct?
- .byte $08 ; JOY_SELECT ; FIXME: is this correct?
+ .byte $01 ; JOY_FIRE_A
+ .byte $02 ; JOY_FIRE_B
+ .byte $04 ; JOY_SELECT
+ .byte $08 ; JOY_RUN
; Jump table.
a couple of things need to be fixed:
--------------------------------------------------------------------------------
-joystick support should get verified on real hw
- - the masks for buttons may be wrong.
- - 6 button gamepads are different and need slightly different code
+- 6 button gamepads are different and need slightly different code
interruptor support in crt0 (and cfg) is missing
- clock() should be hooked to a VBL interrupt
{
gotoxy(0, 12 + i);
j = joy_read (i);
- cprintf ("pad %d: %02x %-6s%-6s%-6s%-6s%-6s%-6s",
+ cprintf ("pad %d: %02x %-6s%-6s%-6s%-6s%-6s%-6s%-6s%-6s",
i, j,
(j & joy_masks[JOY_UP])? " up " : " ---- ",
(j & joy_masks[JOY_DOWN])? " down " : " ---- ",
(j & joy_masks[JOY_LEFT])? " left " : " ---- ",
(j & joy_masks[JOY_RIGHT])? "right " : " ---- ",
(j & joy_masks[JOY_FIRE])? " fire " : " ---- ",
- (j & joy_masks[JOY_FIRE2])? "fire2 " : " ---- ");
+ (j & joy_masks[JOY_FIRE2])? "fire2 " : " ---- ",
+ (j & joy_masks[JOY_SELECT])? "select" : " ---- ",
+ (j & joy_masks[JOY_RUN])? " run " : " ---- ");
}
gotoxy(xsize - 10, 3);