From a4742124751dc38892fcb98effc044f54418a8bb Mon Sep 17 00:00:00 2001 From: codemann8 Date: Thu, 8 Jul 2021 14:08:34 -0500 Subject: [PATCH 1/9] Added Rain state guards for Dark Bonk Rocks --- owrando.asm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/owrando.asm b/owrando.asm index 0edfdf7..9c7086f 100644 --- a/owrando.asm +++ b/owrando.asm @@ -31,6 +31,10 @@ db #$b0 ; BCS to replace BEQ org $06907f ; < 3107f - sprite_prep.asm:2170 (LDA $7EF3CA) lda $8a : and.b #$40 +; Dark Bonk Rocks Rain Sequence Guards (allowing Tile Swap on Dark Bonk Rocks) +org $09c957 ; <- 4c957 +dw #$cb5f ; matches value on Central Bonk Rocks screen + ;(replacing -> LDA $8A : AND.b #$40) org $00d8c4 ; < ? - Bank00.asm:4068 () jsl.l OWWorldCheck From 195fd74e0bc82faa8286538e01f654e0ac55de8c Mon Sep 17 00:00:00 2001 From: codemann8 Date: Thu, 8 Jul 2021 20:26:18 -0500 Subject: [PATCH 2/9] Reverting Dark Bonk Rocks rain state sprite fix --- music.asm | 5 +++-- owrando.asm | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/music.asm b/music.asm index 153a081..cb6bf5c 100644 --- a/music.asm +++ b/music.asm @@ -52,7 +52,8 @@ PreOverworld_LoadProperties_ChooseMusic: .endOfLightWorldChecks ; if we are in the light world go ahead and set chosen selection - LDA $7EF3CA : BEQ .checkInverted+4 + ;LDA $7EF3CA : BEQ .checkInverted+4 + JSL OWWorldCheck : BEQ .checkInverted+4 LDX.b #$0F ; dark woods theme @@ -68,7 +69,7 @@ PreOverworld_LoadProperties_ChooseMusic: ; if not inverted and light world, or inverted and dark world, skip moon pearl check .checkInverted - LDA $7EF3CA : CLC : ROL #$03 : CMP InvertedMode : BEQ .lastCheck + JSL OWWorldCheck : CLC : ROL #$03 : CMP InvertedMode : BEQ .lastCheck ; Does Link have a moon pearl? LDA $7EF357 : BNE + diff --git a/owrando.asm b/owrando.asm index 9c7086f..b3f9af8 100644 --- a/owrando.asm +++ b/owrando.asm @@ -32,8 +32,8 @@ org $06907f ; < 3107f - sprite_prep.asm:2170 (LDA $7EF3CA) lda $8a : and.b #$40 ; Dark Bonk Rocks Rain Sequence Guards (allowing Tile Swap on Dark Bonk Rocks) -org $09c957 ; <- 4c957 -dw #$cb5f ; matches value on Central Bonk Rocks screen +;org $09c957 ; <- 4c957 +;dw #$cb5f ; matches value on Central Bonk Rocks screen ;(replacing -> LDA $8A : AND.b #$40) org $00d8c4 ; < ? - Bank00.asm:4068 () From 0054be1e4b54e190ad71e6ab6dfed7aaedc1ffae Mon Sep 17 00:00:00 2001 From: Kara Alexandra Date: Thu, 8 Jul 2021 19:47:37 -0700 Subject: [PATCH 3/9] Fix some stat tracking - move chest turn counter to not overlap locations before mirror - correctly print from correct memory in credits for damage/magic counter --- stats.asm | 10 ++++++---- stats/statConfig.asm | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/stats.asm b/stats.asm index 46f6c2d..d793f20 100644 --- a/stats.asm +++ b/stats.asm @@ -1,7 +1,7 @@ ;================================================================================ ; Stat Tracking ;================================================================================ -; $7EF420 - $7EF468 - Stat Tracking +; $7EF420 - $7EF46D - Stat Tracking ;-------------------------------------------------------------------------------- ; $7EF420 - bonk counter ;-------------------------------------------------------------------------------- @@ -108,7 +108,7 @@ ;-------------------------------------------------------------------------------- ; $7EF466w[2] - mirror timestamp (high) ;-------------------------------------------------------------------------------- -; $7EF468 - chest turn counter +; $7EF468w[2] - locations before mirror ;-------------------------------------------------------------------------------- ; $7EF46A mmkkkkkk ; m - mail counter @@ -116,7 +116,9 @@ ;-------------------------------------------------------------------------------- ; $7EF46Bw[2] - Dungeon prizes collected by dungeon location. ;-------------------------------------------------------------------------------- -; $7EF46D - 7EF49F - Free space +; $7EF46D - chest turns counter +;-------------------------------------------------------------------------------- +; $7EF46E - 7EF49F - Free space ;-------------------------------------------------------------------------------- ; $7EF4A0 - 7EF4A7 - Service Request ;-------------------------------------------------------------------------------- @@ -318,7 +320,7 @@ IncrementFairyRevivalCounter: PLA RTL ;-------------------------------------------------------------------------------- -!CHESTTURN_COUNTER = "$7EF468" +!CHESTTURN_COUNTER = "$7EF46D" IncrementChestTurnCounter: PHA LDA !LOCK_STATS : BNE + diff --git a/stats/statConfig.asm b/stats/statConfig.asm index 82219a5..f12d717 100755 --- a/stats/statConfig.asm +++ b/stats/statConfig.asm @@ -9,8 +9,8 @@ %AddStat($7EF425, 0, 0, 04, 2, !MASTER_SWORD_X, !MASTER_SWORD_Y) %AddStat($7EF426, 0, 4, 04, 2, !TEMPERED_SWORD_X, !TEMPERED_SWORD_Y) %AddStat($7EF426, 0, 0, 04, 2, !GOLD_SWORD_X, !GOLD_SWORD_Y) -%AddStat($7EF46A, 0, 0, 16, 5, !DAMAGETAKEN_X, !DAMAGETAKEN_Y) -%AddStat($7EF46C, 0, 0, 16, 5, !MAGICUSED_X, !MAGICUSED_Y) +%AddStat($7EF4AA, 0, 0, 16, 5, !DAMAGETAKEN_X, !DAMAGETAKEN_Y) +%AddStat($7EF4AC, 0, 0, 16, 5, !MAGICUSED_X, !MAGICUSED_Y) %AddStat($7EF420, 0, 0, 08, 3, !BONKS_X, !BONKS_Y) %AddStat($7EF42D, 0, 0, 08, 2, !SAVE_AND_QUITS_X, !SAVE_AND_QUITS_Y) %AddStat($7EF449, 0, 0, 08, 2, !DEATHS_X, !DEATHS_Y) From 2be05eed33e98c4a7b5cc6d637b1f083b6a686de Mon Sep 17 00:00:00 2001 From: Kara Alexandra Date: Sat, 10 Jul 2021 11:30:48 -0700 Subject: [PATCH 4/9] Fix junk graphics appearing during GAME OVER screen --- newhud.asm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/newhud.asm b/newhud.asm index 884d967..a8d0e3c 100644 --- a/newhud.asm +++ b/newhud.asm @@ -150,6 +150,8 @@ SEP #$30 CPX #$04 : !BLT .noprize CPX #$08 : BEQ .noprize + LDA $10 : CMP #$12 : BEQ .noprize + REP #$20 LDA.l MapMode From 9209153643e39923d6c88c4afa6020208b1cae75 Mon Sep 17 00:00:00 2001 From: codemann8 Date: Mon, 12 Jul 2021 15:41:59 -0500 Subject: [PATCH 5/9] Supressed awkward/abrupt music changes in dungeons when DR is enabled --- hooks.asm | 4 ++++ music.asm | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/hooks.asm b/hooks.asm index 8abb934..1b30c0e 100755 --- a/hooks.asm +++ b/hooks.asm @@ -1671,6 +1671,10 @@ dw !REG_MUSIC_CONTROL org $0CF05F dw !REG_MUSIC_CONTROL + +; Conditionally disable UW music changes in Door Rando +org $028ADB ; <- Bank02.asm:2088 (LDX.b #$14 : LDA $A0) +JSL.l Underworld_DoorDown_Entry ;-------------------------------------------------------------------------------- ;================================================================================ diff --git a/music.asm b/music.asm index cb6bf5c..d9fc61d 100644 --- a/music.asm +++ b/music.asm @@ -286,3 +286,17 @@ Overworld_MosaicDarkWorldChecks: .done RTL ;-------------------------------------------------------------------------------- + +;-------------------------------------------------------------------------------- +; This is the where the music can change due to an UW transition +; +; On entry, A=16bit XY=8bit, A & X safe to mod, Y unknown +Underworld_DoorDown_Entry: + LDA.l DRMode : TAX : LDA.w #0 : CPX #0 : BNE .done + +.vanilla + LDX #$14 : LDA $A0 ; thing we wrote over - prepare Sanc music track, load current room ID + +.done + RTL +;-------------------------------------------------------------------------------- From dc2a468acb6d422290a0a0e73d63dc4ec68e7da0 Mon Sep 17 00:00:00 2001 From: codemann8 Date: Mon, 12 Jul 2021 19:22:57 -0500 Subject: [PATCH 6/9] Suppressed awkward/abrupt music changes in dungeons when DR is enabled --- hooks.asm | 6 ++++-- music.asm | 10 +++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/hooks.asm b/hooks.asm index 1b30c0e..da3760e 100755 --- a/hooks.asm +++ b/hooks.asm @@ -1673,8 +1673,10 @@ org $0CF05F dw !REG_MUSIC_CONTROL ; Conditionally disable UW music changes in Door Rando -org $028ADB ; <- Bank02.asm:2088 (LDX.b #$14 : LDA $A0) -JSL.l Underworld_DoorDown_Entry +org $028ADB ; <- Bank02.asm:2088-2095 (LDX.b #$14 : LDA $A0 ...) +JSL.l Underworld_DoorDown_Entry : CPX #$10 +db $B0, $21 ; BCS $028B04 +BRA + : NOP #6 : + ;-------------------------------------------------------------------------------- ;================================================================================ diff --git a/music.asm b/music.asm index d9fc61d..8a4e4e1 100644 --- a/music.asm +++ b/music.asm @@ -292,10 +292,14 @@ Overworld_MosaicDarkWorldChecks: ; ; On entry, A=16bit XY=8bit, A & X safe to mod, Y unknown Underworld_DoorDown_Entry: - LDA.l DRMode : TAX : LDA.w #0 : CPX #0 : BNE .done + LDA.l DRMode : TAX : LDA $A0 : CPX #0 : BNE .done -.vanilla - LDX #$14 : LDA $A0 ; thing we wrote over - prepare Sanc music track, load current room ID +.vanilla ; thing we wrote over + LDX #$14 ;: LDA $A0 + CMP.w #$0012 : BEQ .done + + LDX.b #$10 ; value for Hyrule Castle music + CMP.w #$0002 : BEQ .done .done RTL From a05b1482616ad9ea6b0a0b327919aea55e094ce6 Mon Sep 17 00:00:00 2001 From: codemann8 Date: Mon, 12 Jul 2021 20:59:47 -0500 Subject: [PATCH 7/9] Fixed boss music when boss room entered thru Straight Stairs in DR --- hooks.asm | 5 +++++ normal.asm | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/hooks.asm b/hooks.asm index da3760e..a180750 100755 --- a/hooks.asm +++ b/hooks.asm @@ -1677,6 +1677,11 @@ org $028ADB ; <- Bank02.asm:2088-2095 (LDX.b #$14 : LDA $A0 ...) JSL.l Underworld_DoorDown_Entry : CPX #$10 db $B0, $21 ; BCS $028B04 BRA + : NOP #6 : + + +org $02C3F2 ; <- Bank02.asm:10521 Unused call +Underworld_DoorDown_Call: +org $02C3F3 +dw $8AD9 ; address of Bank02.asm:2085 ;-------------------------------------------------------------------------------- ;================================================================================ diff --git a/normal.asm b/normal.asm index a8ab959..aabb24d 100644 --- a/normal.asm +++ b/normal.asm @@ -398,7 +398,7 @@ StraightStairsTrapDoor: .animateTraps lda #$05 : sta $11 inc $0468 : stz $068e : stz $0690 - ++ rtl + ++ JSL Underworld_DoorDown_Call : rtl + JML Dungeon_ApproachFixedColor ; what we wrote over } From 641ec0ffa0840f4cd8ba6a7255a2755da37f7dec Mon Sep 17 00:00:00 2001 From: aerinon Date: Tue, 13 Jul 2021 10:51:01 -0700 Subject: [PATCH 8/9] Minor fix to credits Default to AgaDoor to Std/Open state --- stats/creditsnew.asm | 2 +- tables.asm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/stats/creditsnew.asm b/stats/creditsnew.asm index c9b4c60..c3e8268 100644 --- a/stats/creditsnew.asm +++ b/stats/creditsnew.asm @@ -419,7 +419,7 @@ CreditsLineBlank: %blankline() -%bigcredits("AERINON COMPILING") +%bigcredits("AERINON COMPILING") %blankline() %blankline() diff --git a/tables.asm b/tables.asm index 9375015..8ccb5fb 100644 --- a/tables.asm +++ b/tables.asm @@ -837,7 +837,7 @@ db #$08 ; #$08 = 1 Heart (default) - #$02 = 1/4 Heart ;================================================================================ org $308169 ; PC 0x180169 AgahnimDoorStyle: -db #$02 ; #00 = Never Locked - #$01 = Locked During Escape (default) - #$02 = Locked Without 7 Crystals +db #$01 ; #00 = Never Locked - #$01 = Locked During Escape (default) - #$02 = Locked Without 7 Crystals ;================================================================================ org $30816A ; PC 0x18016A FreeItemText: From bfbe3fbcc0263f7ed014609101a6cd3a0e39ce3d Mon Sep 17 00:00:00 2001 From: aerinon Date: Thu, 15 Jul 2021 10:33:47 -0700 Subject: [PATCH 9/9] Addition to Cutoff room table --- doortables.asm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doortables.asm b/doortables.asm index db1b671..8ee0dd6 100644 --- a/doortables.asm +++ b/doortables.asm @@ -580,8 +580,8 @@ dw $00bc, $00a2, $00a3, $00c2, $001a, $0049, $0014, $008c ; Ice Many Pots, Swamp Waterfall, GT Gauntlet 3, Eastern Push Block, Eastern Courtyard, Eastern Map Valley ; Eastern Cannonball, HC East Hall dw $009f, $0066, $005d, $00a8, $00a9, $00aa, $00b9, $0052 -; HC West Hall, TR Dash Bridge, TR Hub, Pod Arena, GT Petting Zoo -dw $0050, $00c5, $00c6, $0009, $0003, $002a, $007d +; HC West Hall, TR Dash Bridge, TR Hub, Pod Arena, GT Petting Zoo, Ice Spike Cross +dw $0050, $00c5, $00c6, $0009, $0003, $002a, $007d, $005e dw $ffff ; dungeon tables