mirror of
https://github.com/pret/pokered.git
synced 2024-10-23 06:58:24 +00:00
39 lines
621 B
NASM
39 lines
621 B
NASM
ReadJoypad::
|
|
; Poll joypad input.
|
|
; Unlike the hardware register, button
|
|
; presses are indicated by a set bit.
|
|
|
|
ld a, 1 << 5 ; select direction keys
|
|
ld c, 0
|
|
|
|
ld [rJOYP], a
|
|
rept 6
|
|
ld a, [rJOYP]
|
|
endr
|
|
cpl
|
|
and %1111
|
|
swap a
|
|
ld b, a
|
|
|
|
ld a, 1 << 4 ; select button keys
|
|
ld [rJOYP], a
|
|
rept 10
|
|
ld a, [rJOYP]
|
|
endr
|
|
cpl
|
|
and %1111
|
|
or b
|
|
|
|
ld [hJoyInput], a
|
|
|
|
ld a, 1 << 4 + 1 << 5 ; deselect keys
|
|
ld [rJOYP], a
|
|
ret
|
|
|
|
Joypad::
|
|
; Update the joypad state variables:
|
|
; [hJoyReleased] keys released since last time
|
|
; [hJoyPressed] keys pressed since last time
|
|
; [hJoyHeld] currently pressed keys
|
|
homecall _Joypad
|
|
ret
|