diff --git a/LTTP_RND_GeneralBugfixes.asm b/LTTP_RND_GeneralBugfixes.asm index a33818d..3340bb8 100644 --- a/LTTP_RND_GeneralBugfixes.asm +++ b/LTTP_RND_GeneralBugfixes.asm @@ -25,8 +25,8 @@ db #$05 ; mark sram as 32k org $3FFFFF ; <- 1FFFFF db #$00 ; expand file to 2mb -org $1FFFF8 ; timestamp rom -dl #$20170726 +org $1FFFF8 ; <- FFFF8 timestamp rom +db #$20, #$17, #$08, #$06 ; year/month/day ;================================================================================ diff --git a/hardmode.asm b/hardmode.asm index 5ec395f..cb3e752 100644 --- a/hardmode.asm +++ b/hardmode.asm @@ -14,4 +14,38 @@ CalculateSpikeFloorDamage: LDA $D055, Y STA $0373 RTL -;-------------------------------------------------------------------------------- \ No newline at end of file +;-------------------------------------------------------------------------------- +CalculateByrnaUsage: + LDA $1B : BEQ ++ + REP #$20 ; set 16-bit accumulator + LDA $A0 ; these are all decimal because i got them that way + CMP.w #279 : BEQ + ; Spike Cave + CMP.w #179 : BEQ + ; Room in Misery Mire + SEP #$20 ; set 8-bit accumulator + BRA ++ + + + SEP #$20 ; set 8-bit accumulator + PHX : TYX + LDA.l ByrnaCaveCaneOfByrnaUsage, X : STA $00 + PLX + ++ + LDA $7EF36E ; thing we wrote over +RTL +;-------------------------------------------------------------------------------- +CalculateCapeUsage: + LDA $1B : BEQ ++ + REP #$20 ; set 16-bit accumulator + LDA $A0 ; these are all decimal because i got them that way + CMP.w #279 : BEQ + ; Spike Cave + CMP.w #179 : BEQ + ; Room in Misery Mire + SEP #$20 ; set 8-bit accumulator + BRA ++ + + + SEP #$20 ; set 8-bit accumulator + PHX : TYX + LDA.l ByrnaCaveCapeUsage, X : STA $4C + PLX + ++ + LDA $7EF36E ; thing we wrote over +RTL +;-------------------------------------------------------------------------------- diff --git a/hooks.asm b/hooks.asm index b06ee6d..deb99f4 100644 --- a/hooks.asm +++ b/hooks.asm @@ -202,6 +202,12 @@ NOP #2 org $07D22B ; <- 3D22B - Bank05.asm : 12752 (LDA $D055, Y : STA $0373) JSL.l CalculateSpikeFloorDamage : NOP #2 ;-------------------------------------------------------------------------------- +org $08DCC3 ; <- 45CC3 - ancilla_cane_spark.asm : 272 (LDA $7EF36E) +JSL.l CalculateByrnaUsage +;-------------------------------------------------------------------------------- +org $07AE17 ; <- 3AE17 - Bank07.asm : 7285 (LDA $7EF36E) +JSL.l CalculateCapeUsage +;-------------------------------------------------------------------------------- ;================================================================================ ; Misc Stats diff --git a/inventory.asm b/inventory.asm index de42ef4..bbb5306 100644 --- a/inventory.asm +++ b/inventory.asm @@ -921,7 +921,9 @@ RTL ;-------------------------------------------------------------------------------- SpawnShovelGamePrizeSFX: STA $7FFE00 ; thing we wrote over - LDA.b #$1B : STA $012F ; play puzzle sound + PHA + LDA.b #$1B : STA $012F ; play puzzle sound + PLA RTL ;-------------------------------------------------------------------------------- @@ -930,7 +932,6 @@ RTL ;-------------------------------------------------------------------------------- SpawnChestGamePrizeSFX: ORA.b #$40 : STA $0403 ; thing we wrote over - STA $FFFFFF PHA LDA.b #$1B : STA $012F ; play puzzle sound PLA diff --git a/tables.asm b/tables.asm index be9200b..9f72b49 100644 --- a/tables.asm +++ b/tables.asm @@ -677,6 +677,12 @@ db #$00 ; #00 = Never Locked - #$01 = Locked During Escape (default) org $30816A ; PC 0x18016A FreeItemText: db #$01 ; #00 = Off - #$01 = On (default) +org $30816B ; PC 0x18016B +ByrnaCaveCaneOfByrnaUsage: +db #$04, #$02, #$01 ; normal, 1/2, 1/4 magic +org $30816E ; PC 0x18016E +ByrnaCaveCapeUsage: +db #$04, #$08, #$10 ; normal, 1/2, 1/4 magic ;================================================================================ org $308190 ; PC 0x180190 TimerStyle: