From 9e50d5f02cc6ea8758d0b8a42adfb37f4aa49fd7 Mon Sep 17 00:00:00 2001 From: aerinon Date: Thu, 1 Dec 2022 14:03:39 -0700 Subject: [PATCH 1/4] Aga fix for door state (no trap door) --- doorrando/drhooks.asm | 3 +++ doorrando/overrides.asm | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/doorrando/drhooks.asm b/doorrando/drhooks.asm index 3f786b0..69e5d73 100644 --- a/doorrando/drhooks.asm +++ b/doorrando/drhooks.asm @@ -214,3 +214,6 @@ jsl CheckIfDoorsOpen bcs .normal rts .normal + +org $0282D1 ; Module08_00_LoadProperties +JSL ClearDoorState diff --git a/doorrando/overrides.asm b/doorrando/overrides.asm index 90cddb9..e62c3ee 100644 --- a/doorrando/overrides.asm +++ b/doorrando/overrides.asm @@ -165,3 +165,7 @@ BigKeyDoorCheck: PLA : PEA.w RoomDraw_OneSidedShutters_South_onesided_shutter_or_big_key_door-1 + LDA.w #$0000 : RTL +ClearDoorState: + STZ.b $6C + LDA.b #$82 : STA.b $99 ; what was wrote over +RTL From 46272e7fad74a89340e78d471c175dd337051392 Mon Sep 17 00:00:00 2001 From: aerinon Date: Thu, 1 Dec 2022 14:04:09 -0700 Subject: [PATCH 2/4] New goal "completionist" --- goalitem.asm | 9 +++++++++ tables.asm | 3 +++ 2 files changed, 12 insertions(+) diff --git a/goalitem.asm b/goalitem.asm index 9d112f8..255688c 100644 --- a/goalitem.asm +++ b/goalitem.asm @@ -46,6 +46,7 @@ CheckGanonVulnerability: dw .crystals_and_bosses dw .bosses_only dw .all_dungeons_no_agahnim + dw .completionist ; 00 = always vulnerable .vulnerable @@ -99,6 +100,14 @@ CheckGanonVulnerability: .bosses_only JMP CheckForCrystalBossesDefeated +.completionist + REP #$20 + LDA.l TotalItemCounter : CMP.l MaxItemCounter + SEP #$20 + BCC .fail +BRA .all_dungeons + + ;-------------------------------------------------------------------------------- GetRequiredCrystalsForTower: BEQ + : JSL.l BreakTowerSeal_ExecuteSparkles : + ; thing we wrote over diff --git a/tables.asm b/tables.asm index 3f667c4..7111753 100644 --- a/tables.asm +++ b/tables.asm @@ -1901,4 +1901,7 @@ db $08, $08, $06, $06, $02, $0A, $0E, $08, $08, $08, $06, $08, $0C, $1B, $00, $0 ;-------------------------------------------------------------------------------- ; 0x187010 - 187FFF (unused) ;-------------------------------------------------------------------------------- +org $30F010 +MaxItemCounter: +dw $00D8 ; 216 default From 955766dc2a16bc49144212b082c96932e33c7be0 Mon Sep 17 00:00:00 2001 From: aerinon Date: Mon, 5 Dec 2022 08:19:59 -0700 Subject: [PATCH 3/4] Door state fix attempt2 --- doorrando/drhooks.asm | 3 --- doorrando/overrides.asm | 5 ----- keydrop/standing_items.asm | 1 + 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/doorrando/drhooks.asm b/doorrando/drhooks.asm index 69e5d73..3f786b0 100644 --- a/doorrando/drhooks.asm +++ b/doorrando/drhooks.asm @@ -214,6 +214,3 @@ jsl CheckIfDoorsOpen bcs .normal rts .normal - -org $0282D1 ; Module08_00_LoadProperties -JSL ClearDoorState diff --git a/doorrando/overrides.asm b/doorrando/overrides.asm index e62c3ee..09b8c64 100644 --- a/doorrando/overrides.asm +++ b/doorrando/overrides.asm @@ -164,8 +164,3 @@ BigKeyDoorCheck: LDA.l DRFlags : AND #$0400 : BNE + ; skip if the flag is set - bk doors can be double-sided PLA : PEA.w RoomDraw_OneSidedShutters_South_onesided_shutter_or_big_key_door-1 + LDA.w #$0000 : RTL - -ClearDoorState: - STZ.b $6C - LDA.b #$82 : STA.b $99 ; what was wrote over -RTL diff --git a/keydrop/standing_items.asm b/keydrop/standing_items.asm index 76a7100..85737a0 100644 --- a/keydrop/standing_items.asm +++ b/keydrop/standing_items.asm @@ -599,6 +599,7 @@ CheckIfPotIsSpecial: RTL SetTheSceneFix: + STZ.b $6C JSL InitializeMirrorHDMA JSL LoadCommonSprites_long RTL From 83465e39af7078b7b2be4dcad345b9e74bf679c8 Mon Sep 17 00:00:00 2001 From: aerinon Date: Fri, 16 Dec 2022 15:14:33 -0700 Subject: [PATCH 4/4] Fix for blocked entrance doors --- doorrando/overrides.asm | 2 +- goalitem.asm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/doorrando/overrides.asm b/doorrando/overrides.asm index 09b8c64..7a443d7 100644 --- a/doorrando/overrides.asm +++ b/doorrando/overrides.asm @@ -122,7 +122,7 @@ RainPrevention: PHA LDA ProgressIndicator : AND #$00FF : CMP #$0002 : !BGE .done ; only in rain states (0 or 1) LDA.l ProgressFlags : AND #$0004 : BNE .done ; zelda's been rescued - LDA.l BlockSanctuaryDoorInRain : BEQ .done ;flagged + LDA.l BlockSanctuaryDoorInRain : BEQ + ;flagged LDA $A0 : CMP #$0012 : BNE + ;we're in the sanctuary LDA.l FollowerIndicator : AND #$00FF : CMP #$0001 : BEQ .done ; zelda is following LDA $00 : AND #$00FF : CMP #$00A1 : BNE .done ; position is a1 diff --git a/goalitem.asm b/goalitem.asm index 255688c..d4a003f 100644 --- a/goalitem.asm +++ b/goalitem.asm @@ -100,6 +100,7 @@ CheckGanonVulnerability: .bosses_only JMP CheckForCrystalBossesDefeated +; 0a = Check Item counter .completionist REP #$20 LDA.l TotalItemCounter : CMP.l MaxItemCounter