Minor bug fixes:

- single-entrance teleporting was borked
- glove palettes
- updating HUD on changing item
This commit is contained in:
2024-11-28 02:50:32 -06:00
parent 7a21eaa62a
commit 89cf2e29ff
7 changed files with 45 additions and 28 deletions

View File

@@ -1385,9 +1385,9 @@ ReturnFromOnDrawHud:
SEP #$30 SEP #$30
LDX.b #$FF ; vanilla hud code ends with #$FF in X, and it's required for unknown reasons. LDX.b #$FF ; vanilla hud code ends with #$FF in X, and it's required for unknown reasons.
org $8DFC37 ; <- 6FC37 - headsup_display.asm : 828 (LDA.w #$28F7) org $8DFC2B ; <- 6FC37 - headsup_display.asm : 828 (LDA.w #$28F7)
JSL DrawMagicHeader JSL DrawMagicHeader
BRA + : NOP #15 : + BRA + : NOP #27 : +
;-------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------
org $81CF67 ; <- CF67 - Bank01.asm : 11625 (STA $7EF36F) org $81CF67 ; <- CF67 - Bank01.asm : 11625 (STA $7EF36F)
JSL DecrementSmallKeys JSL DecrementSmallKeys

View File

@@ -85,6 +85,7 @@ GetItemLevelForHud:
+ RTL + RTL
CheckMagicLevel: CheckMagicLevel:
PHP : SEP #$30
LDA.w ItemCursor ; load item value LDA.w ItemCursor ; load item value
TAX TAX
LDA.l CanReduceMagic, X LDA.l CanReduceMagic, X
@@ -103,6 +104,7 @@ CheckMagicLevel:
LDA.b #$00 LDA.b #$00
.write .write
STA.l MagicConsumption STA.l MagicConsumption
PLP
RTL RTL

View File

@@ -652,16 +652,24 @@ RTL
; DrawMagicHeader: ; DrawMagicHeader:
;-------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------
DrawMagicHeader: DrawMagicHeader:
LDA.l MagicConsumption : AND.w #$00FF : CMP.w #$0002 : BEQ .quarterMagic LDA.l MagicConsumption : AND.w #$00FF
.halfMagic CMP.w #$0000 : BEQ .normalMagic
LDA.w #$28F7 : STA.l HUDTileMapBuffer+$04 CMP.w #$0001 : BEQ .halfMagic
LDA.w #$2851 : STA.l HUDTileMapBuffer+$06 BRA .quarterMagic
LDA.w #$28FA : STA.l HUDTileMapBuffer+$08 .normalMagic
RTL LDA.w #$2850 : STA.l HUDTileMapBuffer+$04
.quarterMagic LDA.w #$A856 : STA.l HUDTileMapBuffer+$06
LDA.w #$28F7 : STA.l HUDTileMapBuffer+$04 LDA.w #$2852 : STA.l HUDTileMapBuffer+$08
LDA.w #$2800 : STA.l HUDTileMapBuffer+$06 RTL
LDA.w #$2801 : STA.l HUDTileMapBuffer+$08 .halfMagic
LDA.w #$28F7 : STA.l HUDTileMapBuffer+$04
LDA.w #$2851 : STA.l HUDTileMapBuffer+$06
LDA.w #$28FA : STA.l HUDTileMapBuffer+$08
RTL
.quarterMagic
LDA.w #$28F7 : STA.l HUDTileMapBuffer+$04
LDA.w #$2800 : STA.l HUDTileMapBuffer+$06
LDA.w #$2801 : STA.l HUDTileMapBuffer+$08
RTL RTL
;-------------------------------------------------------------------------------- ;--------------------------------------------------------------------------------

View File

@@ -43,3 +43,9 @@ dw MenuEquipmentIcons_pearl
pullpc pullpc
LoadModifiedGloveValue:
LDA.l GloveEquipment : AND.w #$00FF
BEQ .done
DEC
.done
RTL

View File

@@ -168,12 +168,12 @@ LoadRewind:
LDA.w #$FFFF LDA.w #$FFFF
STA.l RewindRoomId STA.l RewindRoomId
; PHB PHB
; LDX.w #RewindSRAM LDX.w #RewindEntranceCache
; LDY.w #SaveDataWRAM LDY.w #$C140
; LDA.w #$4FF LDA.w #$27
; MVN SaveDataWRAM>>16, RewindSRAM>>16 MVN $7E, RewindEntranceCache>>16
; PLB PLB
PLP PLP
RTS RTS
@@ -270,12 +270,12 @@ SaveRewind:
LDA.b $AA LDA.b $AA
STA.l Rewind_AA STA.l Rewind_AA
; PHB PHB
; REP #$30 REP #$30
; LDX #SaveDataWRAM LDX.w #$C140
; LDY #RewindSRAM LDY.w #RewindEntranceCache
; LDA #$4FF LDA.w #$27
; MVN RewindSRAM>>16, SaveDataWRAM>>16 MVN RewindEntranceCache>>16, $7E
; PLB PLB
PLP PLP
RTL RTL

View File

@@ -37,8 +37,8 @@ SpriteSwap_Palette_ArmorAndGloves:
SEP #$30 SEP #$30
LDA.l SpriteSwapper : BNE .continue LDA.l SpriteSwapper : BNE .continue
REP #$30 REP #$30
LDA.l GloveEquipment JSL.l LoadModifiedGloveValue
JSL $9BEE21 ; Read Original Palette Code JSL $9BEE24 ; Read Original Palette Code
RTL RTL
.continue .continue

View File

@@ -417,7 +417,8 @@ Rewind_A6: skip 1
Rewind_A7: skip 1 Rewind_A7: skip 1
Rewind_A9: skip 1 Rewind_A9: skip 1
Rewind_AA: skip 1 Rewind_AA: skip 1
skip 473 RewindEntranceCache: skip $28
skip 433
;================================================================================ ;================================================================================
; Direct SRAM Assignments ($700000 - $7080000) ; Direct SRAM Assignments ($700000 - $7080000)