From 05a79ad2d9bc4ed5bae98b9e2d263c196c150d04 Mon Sep 17 00:00:00 2001 From: cassidoxa Date: Sat, 26 Aug 2023 20:29:38 -0400 Subject: [PATCH] Fix Ped/GT open modes Fix key colors --- goalitem.asm | 10 ++++++---- init.asm | 2 +- itemdatatables.asm | 32 ++++++++++++++++---------------- tables.asm | 24 ++++++++++++++---------- 4 files changed, 37 insertions(+), 31 deletions(-) diff --git a/goalitem.asm b/goalitem.asm index 9d9afb4..dc0c7af 100644 --- a/goalitem.asm +++ b/goalitem.asm @@ -142,10 +142,8 @@ CheckEnoughCrystalsForGanon: RTL ;-------------------------------------------------------------------------------- CheckTowerOpen: - REP #$30 LDA.l GanonsTowerOpenMode : ASL : TAX JSR.w (.tower_open_modes,X) - SEP #$30 RTL .tower_open_modes dw .vanilla @@ -153,13 +151,15 @@ RTL .vanilla LDA.l CrystalsField - AND.w #$007F : CMP.w #$007F + AND.b #$7F : CMP.b #$7F RTS .arbitrary_cmp + REP #$30 LDA.l GanonsTowerOpenAddress : TAX LDA.l $7E0000,X CMP.l GanonsTowerOpenTarget + SEP #$30 RTS ;--------------------------------------------------------------------------------------------------- @@ -266,7 +266,9 @@ RTL RTS .arbitrary_cmp + REP #$30 LDA.l PedPullAddress : TAX - LDA.l $7E000,X + LDA.l $7E0000,X CMP.l PedPullTarget + SEP #$30 RTS diff --git a/init.asm b/init.asm index 59fadbc..bada0c8 100644 --- a/init.asm +++ b/init.asm @@ -48,7 +48,7 @@ Init_Primary: LDA.l OneMindTimerInit : STA.l OneMindTimerRAM SEP #$30 - LDA.b #$01 : STA.w MEMSEL ; enable fastrom access on upper banks + LDA.l RomSpeed : STA.w MEMSEL ; enable fastrom access on upper banks STA.l OneMindId LDA.b #$10 : STA.b PlayerSpriteBank ; set default player sprite bank diff --git a/itemdatatables.asm b/itemdatatables.asm index 2416e3c..1f36c99 100644 --- a/itemdatatables.asm +++ b/itemdatatables.asm @@ -452,7 +452,7 @@ endmacro %SpriteProps($21, 2, 2, $01, $01, PalettesVanilla_red_melon+$0E) ; 21 - Net %SpriteProps($22, 2, 2, $02, $02, PalettesVanilla_blue_ice+$0E) ; 22 - Blue mail %SpriteProps($23, 2, 2, $01, $01, PalettesVanilla_red_melon+$0E) ; 23 - Red mail -%SpriteProps($24, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; 24 - Small key +%SpriteProps($24, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; 24 - Small key %SpriteProps($25, 2, 2, $02, $02, PalettesVanilla_blue_ice+$0E) ; 25 - Compass %SpriteProps($26, 2, 2, $01, $01, PalettesVanilla_red_melon+$0E) ; 26 - Heart container from 4/4 %SpriteProps($27, 2, 2, $02, $02, PalettesVanilla_blue_ice+$0E) ; 27 - Bomb @@ -576,22 +576,22 @@ endmacro %SpriteProps($9D, 2, 2, $04, $04, PalettesVanilla_green_blue_guard+$0E) ; 9D - Big key of Eastern Palace %SpriteProps($9E, 2, 2, $04, $04, PalettesVanilla_green_blue_guard+$0E) ; 9E - Big key of Hyrule Castle %SpriteProps($9F, 2, 2, $04, $04, PalettesVanilla_green_blue_guard+$0E) ; 9F - Big key of Sewers -%SpriteProps($A0, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A0 - Small key of Sewers -%SpriteProps($A1, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A1 - Small key of Hyrule Castle -%SpriteProps($A2, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A2 - Small key of Eastern Palace -%SpriteProps($A3, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A3 - Small key of Desert Palace -%SpriteProps($A4, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A4 - Small key of Agahnim's Tower -%SpriteProps($A5, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A5 - Small key of Swamp Palace -%SpriteProps($A6, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A6 - Small key of Dark Palace -%SpriteProps($A7, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A7 - Small key of Misery Mire -%SpriteProps($A8, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A8 - Small key of Skull Woods -%SpriteProps($A9, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; A9 - Small key of Ice Palace -%SpriteProps($AA, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; AA - Small key of Tower of Hera -%SpriteProps($AB, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; AB - Small key of Thieves' Town -%SpriteProps($AC, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; AC - Small key of Turtle Rock -%SpriteProps($AD, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; AD - Small key of Ganon's Tower +%SpriteProps($A0, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A0 - Small key of Sewers +%SpriteProps($A1, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A1 - Small key of Hyrule Castle +%SpriteProps($A2, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A2 - Small key of Eastern Palace +%SpriteProps($A3, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A3 - Small key of Desert Palace +%SpriteProps($A4, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A4 - Small key of Agahnim's Tower +%SpriteProps($A5, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A5 - Small key of Swamp Palace +%SpriteProps($A6, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A6 - Small key of Dark Palace +%SpriteProps($A7, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A7 - Small key of Misery Mire +%SpriteProps($A8, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A8 - Small key of Skull Woods +%SpriteProps($A9, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; A9 - Small key of Ice Palace +%SpriteProps($AA, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; AA - Small key of Tower of Hera +%SpriteProps($AB, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; AB - Small key of Thieves' Town +%SpriteProps($AC, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; AC - Small key of Turtle Rock +%SpriteProps($AD, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; AD - Small key of Ganon's Tower %SpriteProps($AE, 2, 2, $02, $02, $0000) ; AE - Reserved -%SpriteProps($AF, 0, 0, $02, $02, PalettesVanilla_blue_ice+$0E) ; AF - Generic small key +%SpriteProps($AF, 0, 0, $04, $04, PalettesVanilla_blue_ice+$0E) ; AF - Generic small key %SpriteProps($B0, 2, 2, $80, $80, PalettesCustom_crystal) ; B0 - Crystal 6 %SpriteProps($B1, 2, 2, $80, $80, PalettesCustom_crystal) ; B1 - Crystal 1 %SpriteProps($B2, 2, 2, $80, $80, PalettesCustom_crystal) ; B2 - Crystal 5 diff --git a/tables.asm b/tables.asm index 10fbf31..2b27a87 100644 --- a/tables.asm +++ b/tables.asm @@ -642,17 +642,17 @@ org $81C6FC ; PC 0xC6FC - Bank01.asm:10344 - (db $00, $00, $01, $02, $00, $06, $ DungeonPrizeReceiptID: db $00 ; Sewers db $00 ; Hyrule Castle - db $01 ; Eastern Palace - db $02 ; Desert Palace + db $37 ; Eastern Palace + db $38 ; Desert Palace db $00 ; Agahnim's Tower - db $06 ; Swamp Palace - db $06 ; Palace of Darkness + db $20 ; Swamp Palace + db $20 ; Palace of Darkness db $20 ; Misery Mire db $20 ; Skull Woods - db $06 ; Ice Palace - db $03 ; Tower of Hera - db $06 ; Thieves' Town - db $06 ; Turtle Rock + db $20 ; Ice Palace + db $39 ; Tower of Hera + db $20 ; Thieves' Town + db $20 ; Turtle Rock ;Ether/Nothing: $00 ;Green Pendant: $01 ;Blue Pendant: $02 @@ -2599,10 +2599,14 @@ dw #$0C00 ; Blue dw #$1800 ; Green dw #$0800 ; Yellow -org $B0F032 +org $B0F032 ; PC 0x187032 +RomSpeed: +db $01 ; $01 = FastROM (default | $00 = SlowROM) + +org $B0F033 ; PC 0x187033 ;-------------------------------------------------------------------------------- -; 0x187032 - 187FFF (unused) +; 0x187033 - 187FFF (unused) ;--------------------------------------------------------------------------------