dpad invert support

This commit is contained in:
Karkat
2018-03-13 00:16:23 -04:00
parent d2576c9433
commit 365cb58f01
4 changed files with 28 additions and 0 deletions

View File

@@ -160,6 +160,7 @@ incsrc quickswap.asm
incsrc endingsequence.asm
incsrc cuccostorm.asm
incsrc retro.asm
incsrc dpadinvert.asm
warnpc $A58000
;org $228000 ; contrib area

18
dpadinvert.asm Normal file
View File

@@ -0,0 +1,18 @@
;================================================================================
; D-Pad Invert
; runs in NMI, must use minimum possible # of cycles
;--------------------------------------------------------------------------------
; Filtered Joypad 1 Register: [BYST | udlr].
!INVERT_DPAD = "$7F50CB"
InvertDPad:
LDA !INVERT_DPAD : BEQ .normal
.inverted
LDA $4219
BIT.b #$0C : BEQ + : EOR #$0C : +
BIT.b #$03 : BEQ + : EOR #$03 : +
STA $01
RTL
.normal
LDA $4219 : STA $01
RTL
;--------------------------------------------------------------------------------

View File

@@ -41,6 +41,13 @@ ReturnCheckZSNES:
;JSL.l OnDungeonEntrance
;--------------------------------------------------------------------------------
;================================================================================
; D-Pad Invert
;--------------------------------------------------------------------------------
org $0083D9 ; <- 3D9 - Bank00.asm : 611 (LDA $4219 : STA $01)
JSL.l InvertDPad : NOP
;--------------------------------------------------------------------------------
;================================================================================
; Dungeon Exit Hook
;--------------------------------------------------------------------------------

View File

@@ -1402,6 +1402,8 @@ dw #9999 ; Rupee Limit
; $7F50C8 - Infinite Arrows Modifier
; $7F50C9 - Infinite Bombs Modifier
; $7F50CA - Infinite Magic Modifier
; $7F50CB - Invert D-Pad
; $7F50CC - Temporary OHKO
; $7F50D0 - $7F50FF - Block Cypher Parameters
; $7F5100 - $7F51FF - Block Cypher Buffer