Merge branch 'OWMain' of github.com:codemann8/z3randomizer into overworld_kara

This commit is contained in:
2022-02-11 13:36:00 -08:00
14 changed files with 928 additions and 1034 deletions

View File

@@ -362,7 +362,11 @@ endif
org $328000
Extra_Text_Table:
incsrc itemtext.asm
if !FEATURE_NEW_TEXT
incsrc itemtext_lower.asm
else
incsrc itemtext.asm
endif
warnpc $32E000
org $32DFD0 ; PC 0x195FD0
@@ -555,6 +559,9 @@ LoadGearPalettes_variable:
org $02FEAB
Filter_Majorly_Whiten_Color:
org $04E780
Overworld_MemorizeMap16Change:
org $05A51D
Sprite_SpawnFallingItem:

View File

@@ -10,6 +10,7 @@ DoWorldFix:
LDA InvertedMode : BEQ +
JMP DoWorldFix_Inverted
+
LDA $7EF3CC : CMP #$04 : BEQ .aga1Alive ; if old man following, skip mirror/aga check
LDA.l Bugfix_MirrorlessSQToLW : BEQ .skip_mirror_check
LDA $7EF353 : AND #$02 : BEQ .noMirror ; check if we have the mirror
.skip_mirror_check ; alt entrance point
@@ -53,6 +54,7 @@ JMP DoWorldFix_skip_mirror_check
RTL
;================================================================================
DoWorldFix_Inverted:
LDA $7EF3CC : CMP #$04 : BEQ .aga1Alive ; if old man following, skip mirror/aga check
LDA.l Bugfix_MirrorlessSQToLW : BEQ .skip_mirror_check
LDA $7EF353 : AND #$02 : BEQ .noMirror ; check if we have the mirror
.skip_mirror_check ; alt entrance point
@@ -79,7 +81,7 @@ SetDeathWorldChecked_Inverted:
LDA GanonPyramidRespawn : BNE .castle ; if flag is set, force respawn at pyramid on death to ganon
++
.outdoors
JMP DoWorldFix
JMP DoWorldFix_Inverted
.dungeon
LDA Bugfix_PreAgaDWDungeonDeathToFakeDW : BNE .done ; if the bugfix is enabled, we do nothing on death in dungeon

View File

@@ -1,6 +1,12 @@
CheckDarkWorldSpawn:
STA $A0 : STA $048E ; what we wrote over
LDA.l DRFlags : AND #$0200 : BEQ + ; skip if the flag isn't set
LDA.l OldManDarkWorld : CMP $A0 : BNE +
SEP #$30
LDA InvertedMode : BNE ++
LDA.b #$40 : STA !DARK_WORLD : BRA +++
++ LDA.b #$00 : STA !DARK_WORLD
+++ REP #$30
+ LDA.l DRFlags : AND #$0200 : BEQ + ; skip if the flag isn't set
LDA.l $7EF357 : AND #$00FF : BNE + ; moon pearl?
LDA.l LinksHouseDarkWorld : CMP $A0 : BEQ ++
LDA.l SanctuaryDarkWorld : CMP $A0 : BEQ ++

View File

@@ -76,6 +76,9 @@ nop : jsl OverridePaletteHeader
org $02817e ; Bank02.asm : 414 (LDA $02811E, X)
jsl FixAnimatedTiles
org $0aef43 ; UnderworldMap_RecoverGFX
jsl FixCloseDungeonMap
org $028a06 ; Bank02.asm : 1941 Dungeon_ResetTorchBackgroundAndPlayer
JSL FixWallmasterLamp

View File

@@ -20,7 +20,7 @@ LockAgahnimDoors:
!BGE .crystalOrUnlock
LDA #$0001 : RTL
.crystalOrUnlock
LDA InvertedMode : AND.w #$00FF : BEQ .unlock
LDA SwapAgaGanonsTower : AND.w #$00FF : BEQ .unlock
LDA $7EF2C3 : AND.w #$0020 : BNE .unlock ; Check if GT overlay is already on or not
LDA $0308 : AND.w #$0080 : BEQ ++ ;If we are holding an item
@@ -42,7 +42,7 @@ LockAgahnimDoors:
RTL
;---------------------------------------------------------------------------------
FlagAgahnimDoor:
LDA.l InvertedMode : BEQ .vanilla
LDA.l SwapAgaGanonsTower : BEQ .vanilla
LDA $7EF2C3 : ORA #$20 : STA $7EF2C3 ; activate GT overlay
@@ -80,8 +80,7 @@ AllowStartFromSingleEntranceCave:
LDA $7EF3C8 : AND.w #$00FF ; What we wrote over
PHA
TAX
LDA.l StartingAreaExitOffset, X
AND.w #$00FF
LDA.l StartingAreaExitOffset, X : AND.w #$00FF
BNE +
JMP .done
@@ -126,8 +125,9 @@ AllowStartFromSingleEntranceCave:
SEP #$20 ; set 8-bit accumulator
LDA $7EF3C8 : TAX
LDA.l StartingAreaOverworldDoor, X : STA.l $7F5099 ;Load overworld door
REP #$20 ; reset 16-bit accumulator
JSL.l CacheDoorFrameData
JSL.l CacheDoorFrameData
.done
PLA

View File

@@ -150,13 +150,20 @@ OnNewFile:
LDA.b #$80 : STA $7EF093 ; open skull woods curtain
+
LDA.l PreopenPyramid : BEQ +
LDA.b #$20 : STA $7EF2DB ; pyramid hole already open
+
LDX.w #$007f : - ; copy over starting overworld event data
LDA StartingOverworldEvents, X : STA $7EF280, X
DEX
BPL -
LDA.l PreopenGanonsTower : BEQ +
LDA.b #$20 : STA $7EF2C3 ; Ganons Tower already open
+
; below (indented) is obsoleted by StartingOverworldEvents table copy above
LDA.l PreopenPyramid : BEQ +
LDA.b #$20 : STA $7EF2DB ; pyramid hole already open
+
LDA.l SwapAgaGanonsTower : BNE +
LDA.l PreopenGanonsTower : BEQ +
LDA.b #$20 : STA $7EF2C3 ; Ganons Tower already open
+
LDA StartingSword : STA $7EF359 ; set starting sword type

10
gfx.asm
View File

@@ -45,6 +45,16 @@ FixAnimatedTiles:
+ LDA $02802E, X ; what we wrote over
RTL
FixCloseDungeonMap:
LDA.l DRMode : CMP #$02 : BNE .vanilla
LDA $040C : BMI .vanilla
LSR : TAX
LDA.l DungeonTilesets,x
RTL
.vanilla
LDA $7EC20E
RTL
FixWallmasterLamp:
ORA $0458
STY $1C : STA $1D : RTL ; what we wrote over

View File

@@ -424,8 +424,12 @@ org $02EC8D ; <- bank02.asm : 11981 (LDA.w #$020F : LDX $8A : CPX.w #$0033 : BNE
JSL HardcodedRocks
NOP #19 ;23 bytes removed with the JSL
;--------------------------------------------------------------------------------
org $04E7AE ; <- bank0E.asm : 4230 (LDA $7EF287 : AND.w #$0020)
JSL.l TurtleRockPegSolved
;org $04E7AE ; <- bank0E.asm : 4230 (LDA $7EF287 : AND.w #$0020)
;JSL.l TurtleRockPegSolved
;--------------------------------------------------------------------------------
org $1BCAA1 ; <- bank_1B.asm (LDA.w #$0212 : LDX.w #$0720 : STA.l $7E2000,X : JSL : JSL)
JSL.l Overworld_InvertedTRPuzzle
BRA + : NOP #12 : +
org $04E7B9 ; <- bank0E.asm : 4237 (LDX $04C8)
JMP.w TurtleRockTrollPegs
@@ -1011,6 +1015,11 @@ NOP
org $07B57D ; 3B57D - Bank07.asm:8527 (LDA Link_ReceiveItemAlternates, Y : STA $03)
JSL.l Link_ReceiveItemAlternatesExpanded_loadAlternate
NOP
org $08C563
JML ItemGetAlternateSFX : NOP
org $0988A5
JSL ItemGetOverworldAlternateSFX : NOP #5
;--------------------------------------------------------------------------------
org $09892E ; 4892E - ancilla_init.asm:1307 (LDA BottleList, X)
LDA.w BottleListExpanded, X
@@ -1900,15 +1909,11 @@ NOP #8
;org $0AC012 ; <- 54012 - Bank0A.asm:1039 - (LDA $7EF2DB)
;JSL.l OnLoadMap
;================================================================================
org $028B8F ; <- 10B8F - Bank02.asm:2236 (LDA $7EF374 : LSR A : BCS BRANCH_BETA)
JSL CheckHeraBossDefeated : BNE + : NOP
LDX.b #$F1 : STX $012C
+
org $028B8F ; <- 10B8F - Bank02.asm:2236 (LDA $7EF374 : LSR A)
JSL CheckHeraBossDefeated : NOP
;================================================================================
org $029090 ; <- 11090 - Bank02.asm:3099 (LDA $7EF374 : LSR A : BCS BRANCH_GAMMA)
JSL CheckHeraBossDefeated : BNE + : NOP
STX $012C ; DON'T MOVE THIS FORWARD OR MADNESS AWAITS
+
org $029090 ; <- 11090 - Bank02.asm:3099 (LDA $7EF374 : LSR A)
JSL CheckHeraBossDefeated : NOP
;================================================================================
org $029798 ; <- 11798 - Bank02.asm:4287 (CMP $02895C, X : BNE BRANCH_ALPHA)
NOP #6 ; remove crystal room cutscene check that causes softlocks
@@ -2317,7 +2322,7 @@ JSL.l OnLinkDamagedFromPitOutdoors
;JSL.l FlipperReset
;--------------------------------------------------------------------------------
org $02B468
dw FakeFlipperProtection
dw FakeFlipperProtection
org $02FFC7
FakeFlipperProtection:

View File

@@ -1238,3 +1238,21 @@ RTL
}
;--------------------------------------------------------------------------------
; A = item id being collected
ItemGetAlternateSFX:
PEA $C567 ; PC to RTS to in bank 08
CMP #$4A : BNE +
; collecting pre-activated flute
LDA #$13 : JML $088007
+ ; normal itemget sfx
LDA #$0F : JML $08800E ; what we wrote over
; A = item id being collected
ItemGetOverworldAlternateSFX:
CMP.b #$4A : BNE +
LDA.b #$13 : STA.w $012E
RTL
+ ; normal itemget sfx
JSL Sound_SetSfxPanWithPlayerCoords : ORA.b #$0F : STA.w $012F ; what we wrote over
RTL
;--------------------------------------------------------------------------------

View File

@@ -130,7 +130,7 @@ db $02, $02, $02, $00, $08, $02, $02, $00, $00, $00, $00, $01, $00, $00, $20, $0
db $02, $02, $02, $02, $02, $02, $02, $00, $00, $01, $01, $01, $02, $00, $08, $00
Electric_Barrier:
LDA InvertedMode : BEQ .done
LDA SwapAgaGanonsTower : BEQ .done
LDA $7EF280, X : ORA #$40 : STA $7EF280, X ;set barrier dead
.done
LDA $7EF280, X ; what we wrote over
@@ -138,7 +138,7 @@ RTL
GanonTowerAnimation:
LDA InvertedMode : BEQ .done
LDA SwapAgaGanonsTower : BEQ .done
LDA.b #$1B : STA $012F
STZ $04C6
STZ $B0
@@ -162,7 +162,7 @@ RTL
GanonTowerInvertedCheck:
{
LDA InvertedMode : BEQ .done
LDA SwapAgaGanonsTower : BEQ .done
LDA #$01 ; Load a random value so it doesn't BEQ
RTL
.done
@@ -202,7 +202,10 @@ MirrorBonk:
; otherwise fall through to .normal
PHX : PHP
PHB : PHK : PLB
LDX $8A : LDA.l OWTileWorldAssoc, X : BNE .endLoop ;World we're in? branch if we are in LW we don't want bonks
LDX $8A : LDA.l OWTileWorldAssoc, X
TAX : LDA.l InvertedMode : BEQ +
TXA : EOR #$40 : TAX
+ TXA : BNE .endLoop ;World we're in? branch if we are in LW we don't want bonks
REP #$30
LDX #$0000
.loop

File diff suppressed because it is too large Load Diff

113
itemtext_lower.asm Normal file
View File

@@ -0,0 +1,113 @@
org $328000
; You have found
; the map of
Notice_MapOf:
db $74, $00, $C2, $00, $3E, $00, $44, $00, $FF, $00, $37, $00, $30, $00, $45, $00, $34, $00, $FF, $00, $35, $00, $3E, $00, $44, $00, $3D, $00, $33
db $75, $00, $43, $00, $37, $00, $34, $00, $FF, $00, $3C, $00, $30, $00, $3F, $00, $FF, $00, $3E, $00, $35
dw #$7F7F
; You have found
; the compass of
Notice_CompassOf:
db $74, $00, $C2, $00, $3E, $00, $44, $00, $FF, $00, $37, $00, $30, $00, $45, $00, $34, $00, $FF, $00, $35, $00, $3E, $00, $44, $00, $3D, $00, $33
db $75, $00, $43, $00, $37, $00, $34, $00, $FF, $00, $32, $00, $3E, $00, $3C, $00, $3F, $00, $30, $00, $42, $00, $42, $00, $FF, $00, $3E, $00, $35
dw #$7F7F
; Oh look! it's
; the big key of
Notice_BigKeyOf:
db $74, $00, $B8, $00, $37, $00, $FF, $00, $3B, $00, $3E, $00, $3E, $00, $3A, $00, $C7, $00, $FF, $00, $38, $00, $43, $00, $D8, $00, $42
db $75, $00, $43, $00, $37, $00, $34, $00, $FF, $00, $31, $00, $38, $00, $36, $00, $FF, $00, $3A, $00, $34, $00, $48, $00, $FF, $00, $3E, $00, $35
dw #$7F7F
; this is a
; small key to
Notice_SmallKeyOf:
db $74, $00, $BD, $00, $37, $00, $38, $00, $42, $00, $FF, $00, $38, $00, $42, $00, $FF, $00, $30
db $75, $00, $42, $00, $3C, $00, $30, $00, $3B, $00, $3B, $00, $FF, $00, $3A, $00, $34, $00, $48, $00, $FF, $00, $43, $00, $3e
dw #$7F7F
; light world
Notice_LightWorld:
db $76, $00, $B5, $00, $38, $00, $36, $00, $37, $00, $43, $00, $FF, $00, $C0, $00, $3E, $00, $41, $00, $3B, $00, $33
dw #$7F7F
; dark world
Notice_DarkWorld:
db $76, $00, $AD, $00, $30, $00, $41, $00, $3A, $00, $FF, $00, $C0, $00, $3E, $00, $41, $00, $3B, $00, $33
dw #$7F7F
; Ganons Tower
Notice_GTower:
db $76, $00, $B0, $00, $30, $00, $3D, $00, $3E, $00, $3D, $00, $42, $00, $FF, $00, $BD, $00, $3E, $00, $46, $00, $34, $00, $41
dw #$7F7F
; Turtle Rock
Notice_TRock:
db $76, $00, $BD, $00, $44, $00, $41, $00, $43, $00, $3B, $00, $34, $00, $FF, $00, $BB, $00, $3E, $00, $32, $00, $3a
dw #$7F7F
; Thieves Town
Notice_Thieves:
db $76, $00, $BD, $00, $37, $00, $38, $00, $34, $00, $45, $00, $34, $00, $42, $00, $FF, $00, $BD, $00, $3E, $00, $46, $00, $3d
dw #$7F7F
; Tower of Hera
Notice_Hera:
db $76, $00, $BD, $00, $3E, $00, $46, $00, $34, $00, $41, $00, $FF, $00, $3E, $00, $35, $00, $FF, $00, $B1, $00, $34, $00, $41, $00, $30
dw #$7F7F
; Ice Palace
Notice_Ice:
db $76, $00, $B2, $00, $32, $00, $34, $00, $FF, $00, $B9, $00, $30, $00, $3B, $00, $30, $00, $32, $00, $34
dw #$7F7F
; Skull Woods
Notice_Skull:
db $76, $00, $BC, $00, $3A, $00, $44, $00, $3B, $00, $3B, $00, $FF, $00, $C0, $00, $3E, $00, $3E, $00, $33, $00, $42
dw #$7F7F
; Misery Mire
Notice_Mire:
db $76, $00, $B6, $00, $38, $00, $42, $00, $34, $00, $41, $00, $48, $00, $FF, $00, $B6, $00, $38, $00, $41, $00, $34
dw #$7F7F
; Dark Palace
Notice_PoD:
db $76, $00, $AD, $00, $30, $00, $41, $00, $3A, $00, $FF, $00, $B9, $00, $30, $00, $3B, $00, $30, $00, $32, $00, $34
dw #$7F7F
; Swamp Palace
Notice_Swamp:
db $76, $00, $BC, $00, $46, $00, $30, $00, $3C, $00, $3F, $00, $FF, $00, $B9, $00, $30, $00, $3B, $00, $30, $00, $32, $00, $34
dw #$7F7F
; Castle Tower
Notice_AgaTower:
db $76, $00, $AC, $00, $30, $00, $42, $00, $43, $00, $3B, $00, $34, $00, $FF, $00, $BD, $00, $3E, $00, $46, $00, $34, $00, $41
dw #$7F7F
; Desert Palace
Notice_Desert:
db $76, $00, $AD, $00, $34, $00, $42, $00, $34, $00, $41, $00, $43, $00, $FF, $00, $B9, $00, $30, $00, $3B, $00, $30, $00, $32, $00, $34
dw #$7F7F
; Eastern Palace
Notice_Eastern:
db $76, $00, $AE, $00, $30, $00, $42, $00, $43, $00, $34, $00, $41, $00, $3D, $00, $FF, $00, $B9, $00, $30, $00, $3B, $00, $30, $00, $32, $00, $34
dw #$7F7F
; Hyrule Castle
Notice_Castle:
db $76, $00, $B1, $00, $48, $00, $41, $00, $44, $00, $3B, $00, $34, $00, $FF, $00, $AC, $00, $30, $00, $42, $00, $43, $00, $3B, $00, $34
dw #$7F7F
; Hyrule Castle
Notice_Sewers:
db $76, $00, $B1, $00, $48, $00, $41, $00, $44, $00, $3B, $00, $34, $00, $FF, $00, $AC, $00, $30, $00, $42, $00, $43, $00, $3B, $00, $34
dw #$7F7F
; This Dungeon
Notice_Self:
db $76, $00, $43, $00, $37, $00, $38, $00, $42, $00, $FF, $00, $33, $00, $44, $00, $3D, $00, $36, $00, $34, $00, $3E, $00, $3d
dw #$7F7F

View File

@@ -206,10 +206,10 @@ Underworld_DoorDown_Entry:
.done
LDA $A0 : RTL
;--------------------------------------------------------------------------------
;--------------------------------------------------------------------------------
; Check if the boss in ToH has been defeated (16-bit accumulator)
; This is for changing to/from ToH dungeon/boss music
;
; A=16bit XY=8bit
CheckHeraBossDefeated:
LDA $7EF00F : AND #$00FF
RTL
;--------------------------------------------------------------------------------
LDA $7EF00F : AND.w #$00FF : BEQ +
SEC : RTL
+ CLC : RTL

View File

@@ -414,8 +414,8 @@ FakeBoots:
db $00 ; #$00 = Off (default) - #$01 = On
;--------------------------------------------------------------------------------
org $30808F ; PC 0x18008F
SeededRNG:
db $01 ; #$00 = Off - #$01 = Seeded RNG (default for rando)
SwapAgaGanonsTower:
db $00 ; #$00 = Off (default) - #$01 = On
;--------------------------------------------------------------------------------
org $308090 ; PC 0x180090 - 0x180097
ProgressiveSwordLimit:
@@ -457,7 +457,11 @@ org $30809D
DungeonMapIcons:
db $01
;--------------------------------------------------------------------------------
; 0x18009E - 0x18009F (unused)
; 0x18009E (unused)
;--------------------------------------------------------------------------------
org $30809F ; PC 0x18009F
SeededRNG:
db $01 ; #$00 = Off - #$01 = Seeded RNG (default for rando)
;--------------------------------------------------------------------------------
org $3080A0 ; PC 0x1800A0 - 0x1800A4
Bugfix_MirrorlessSQToLW:
@@ -1647,7 +1651,22 @@ dw $0000
;--------------------------------------------------------------------------------
; 0x182305 - 182FFF (unused)
;================================================================================
org $30B000 ; PC 0x183000 - 0x183054
org $30B000 ; PC 0x183000 - 0x1832FF
StartingRoomData:
; reserved for Room Data
org $30B280 ; PC 0x183280 - 0x1832FF
StartingOverworldEvents:
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
org $30B340 ; PC 0x183340 - 0x183393
StartingEquipment:
dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000
dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000
@@ -1656,7 +1675,7 @@ dw $0000, $0000, $0000, $0000, $F800, $0000, $0000, $0000
dw $0000, $0000, $0000, $0000, $0000, $0000, $0000, $0000
dw $0000, $0000
;--------------------------------------------------------------------------------
; 0x183055 - 183FFF (unused)
; 0x183394 - 183FFF (unused)
;================================================================================
org $30C000 ; PC 0x184000 - 0x184007
ItemSubstitutionRules:
@@ -1906,404 +1925,12 @@ org $30E36D ; PC 0x18636D
;BerserkerMulti.world Seed GUID
db #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00
;--------------------------------------------------------------------------------
RoomHeaders:
org $30DA00 : RoomHeader_0000: ; pc 0x185A00
db $41, $21, $13, $22, $07, $3D, $00, $00, $00, $10, $C0, $00, $00, $04
org $30DA0E : RoomHeader_0001: ; pc 0x185A0E
db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $72, $00, $50, $52
org $30DA1C : RoomHeader_0002: ; pc 0x185A1C
db $C0, $1D, $04, $06, $00, $14, $00, $00, $00, $00, $11, $00, $18, $0D
org $30DA2A : RoomHeader_0003: ; pc 0x185A2A
db $C0, $07, $06, $19, $00, $00, $00, $00, $0C, $02, $12, $00, $00, $00
org $30DA38 : RoomHeader_0004: ; pc 0x185A38
db $00, $18, $0D, $26, $00, $26, $14, $00, $00, $00, $B5, $00, $08, $08
org $30DA46 : RoomHeader_0005: ; pc 0x185A46
db $00, $08, $08, $14, $00, $25, $00, $20, $06, $05, $0C, $00, $25, $00
org $30DA54 : RoomHeader_0006: ; pc 0x185A54
db $00, $08, $08, $14, $00, $25, $00, $20, $06, $05, $0C, $00, $25, $00
org $30DA62 : RoomHeader_0007: ; pc 0x185A62
db $20, $06, $05, $0C, $00, $25, $00, $00, $00, $17, $17, $C0, $07, $06
org $30DA70 : RoomHeader_0008: ; pc 0x185A70
db $C0, $07, $06, $07, $00, $00, $00, $00, $0F, $07, $19, $00, $27, $00
org $30DA7E : RoomHeader_0009: ; pc 0x185A7E
db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $4B, $4A, $4A, $00, $0F
org $30DA8C : RoomHeader_000A: ; pc 0x185A8C
db $00, $0F, $07, $19, $00, $27, $00, $00, $00, $09, $3A, $01, $0F, $07
org $30DA9A : RoomHeader_000B: ; pc 0x185A9A
db $01, $0F, $07, $19, $00, $03, $00, $00, $00, $6A, $1B, $C0, $28, $0E
org $30DAA8 : RoomHeader_000C: ; pc 0x185AA8
db $C0, $28, $0E, $13, $00, $00, $00, $00, $00, $00, $6B, $8C, $8C, $40
org $30DAB6 : RoomHeader_000D: ; pc 0x185AB6
db $40, $1B, $0E, $18, $05, $38, $00, $00, $13, $0B, $1C, $00, $08, $00
org $30DAC4 : RoomHeader_000E: ; pc 0x185AC4
db $00, $13, $0B, $1C, $00, $08, $00, $00, $00, $00, $1E, $00, $21, $13
org $30DAD2 : RoomHeader_000F: ; pc 0x185AD2
db $00, $21, $13, $22, $00, $00, $00, $00, $01, $01, $01, $00, $00, $00
org $30DAE0 : RoomHeader_0010: ; pc 0x185AE0
db $00, $21, $13, $22, $00, $00, $00, $00, $01, $01, $01, $00, $00, $00
org $30DAEE : RoomHeader_0011: ; pc 0x185AEE
db $00, $01, $01, $01, $00, $00, $00, $08, $00, $00, $02, $C0, $1D, $04
org $30DAFC : RoomHeader_0012: ; pc 0x185AFC
db $C0, $1D, $04, $06, $00, $00, $00, $00, $18, $0D, $26, $00, $00, $00
org $30DB0A : RoomHeader_0013: ; pc 0x185B0A
db $00, $18, $0D, $26, $00, $00, $00, $00, $18, $0D, $1E, $00, $00, $00
org $30DB18 : RoomHeader_0014: ; pc 0x185B18
db $20, $18, $0D, $26, $00, $00, $00, $C0, $18, $0D, $26, $00, $00, $00
org $30DB26 : RoomHeader_0015: ; pc 0x185B26
db $C0, $18, $0D, $26, $00, $00, $00, $00, $00, $00, $B6, $90, $08, $08
org $30DB34 : RoomHeader_0016: ; pc 0x185B34
db $90, $08, $08, $11, $03, $00, $00, $00, $00, $00, $66, $20, $06, $05
org $30DB42 : RoomHeader_0017: ; pc 0x185B42
db $20, $06, $05, $19, $00, $35, $00, $00, $00, $27, $07, $27, $01, $0F
org $30DB50 : RoomHeader_0018: ; pc 0x185B50
db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00
org $30DB5E : RoomHeader_0019: ; pc 0x185B5E
db $01, $0F, $07, $19, $00, $00, $00, $00, $0F, $07, $19, $00, $16, $00
org $30DB6C : RoomHeader_001A: ; pc 0x185B6C
db $00, $0F, $07, $19, $00, $16, $00, $00, $00, $00, $6A, $6A, $68, $0F
org $30DB7A : RoomHeader_001B: ; pc 0x185B7A
db $68, $0F, $07, $08, $00, $03, $1C, $00, $00, $00, $0B, $00, $1A, $0E
org $30DB88 : RoomHeader_001C: ; pc 0x185B88
db $00, $1A, $0E, $09, $00, $04, $3F, $00, $00, $00, $8C, $00, $1B, $0E
org $30DB96 : RoomHeader_001D: ; pc 0x185B96
db $00, $1B, $0E, $18, $00, $00, $00, $00, $00, $00, $4C, $20, $13, $0B
org $30DBA4 : RoomHeader_001E: ; pc 0x185BA4
db $20, $13, $0B, $1C, $00, $17, $00, $00, $00, $3E, $0E, $00, $13, $0B
org $30DBB2 : RoomHeader_001F: ; pc 0x185BB2
db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $3F, $20, $0C, $02
org $30DBC0 : RoomHeader_0020: ; pc 0x185BC0
db $20, $0C, $02, $12, $00, $15, $25, $01, $01, $01, $01, $00, $00, $00
org $30DBCE : RoomHeader_0021: ; pc 0x185BCE
db $01, $01, $01, $01, $00, $00, $00, $00, $18, $0D, $26, $00, $01, $00
org $30DBDC : RoomHeader_0022: ; pc 0x185BDC
db $01, $01, $01, $01, $00, $00, $00, $00, $18, $0D, $26, $00, $01, $00
org $30DBEA : RoomHeader_0023: ; pc 0x185BEA
db $00, $18, $0D, $26, $00, $00, $00, $00, $18, $0D, $1E, $00, $00, $00
org $30DBF8 : RoomHeader_0024: ; pc 0x185BF8
db $00, $18, $0D, $26, $00, $01, $00, $00, $0A, $08, $11, $00, $16, $00
org $30DC06 : RoomHeader_0025: ; pc 0x185C06
db $00, $0A, $08, $11, $00, $16, $00, $00, $00, $00, $76, $76, $76, $20
org $30DC14 : RoomHeader_0026: ; pc 0x185C14
db $00, $0A, $08, $11, $00, $16, $00, $00, $00, $00, $76, $76, $76, $20
org $30DC22 : RoomHeader_0027: ; pc 0x185C22
db $20, $06, $05, $19, $00, $36, $00, $00, $00, $31, $17, $31, $80, $0A
org $30DC30 : RoomHeader_0028: ; pc 0x185C30
db $80, $0A, $08, $11, $00, $32, $1B, $00, $00, $00, $38, $CC, $0E, $09
org $30DC3E : RoomHeader_0029: ; pc 0x185C3E
db $CC, $0E, $09, $1A, $02, $25, $00, $00, $0F, $07, $19, $00, $00, $00
org $30DC4C : RoomHeader_002A: ; pc 0x185C4C
db $00, $0F, $07, $19, $00, $00, $00, $C0, $0F, $07, $2B, $00, $16, $00
org $30DC5A : RoomHeader_002B: ; pc 0x185C5A
db $C0, $0F, $07, $2B, $00, $16, $00, $00, $00, $00, $3B, $00, $13, $0B
org $30DC68 : RoomHeader_002C: ; pc 0x185C68
db $00, $07, $06, $07, $00, $00, $00, $00, $22, $12, $07, $00, $00, $00
org $30DC76 : RoomHeader_002D: ; pc 0x185C76
db $00, $13, $0B, $1C, $00, $2A, $00, $C0, $07, $06, $19, $00, $00, $00
org $30DC84 : RoomHeader_002E: ; pc 0x185C84
db $00, $13, $0B, $1C, $00, $2A, $00, $C0, $07, $06, $19, $00, $00, $00
org $30DC92 : RoomHeader_002F: ; pc 0x185C92
db $C0, $07, $06, $19, $00, $00, $00, $00, $0C, $02, $12, $00, $00, $00
org $30DCA0 : RoomHeader_0030: ; pc 0x185CA0
db $00, $0C, $02, $12, $00, $00, $00, $00, $00, $00, $40, $20, $06, $05
org $30DCAE : RoomHeader_0031: ; pc 0x185CAE
db $20, $06, $05, $19, $00, $37, $04, $22, $00, $77, $27, $77, $01, $01
org $30DCBC : RoomHeader_0032: ; pc 0x185CBC
db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $42, $00, $04, $05
org $30DCCA : RoomHeader_0033: ; pc 0x185CCA
db $00, $04, $05, $0B, $00, $15, $25, $80, $0A, $08, $11, $00, $00, $00
org $30DCD8 : RoomHeader_0034: ; pc 0x185CD8
db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $54, $80, $0A, $08
org $30DCE6 : RoomHeader_0035: ; pc 0x185CE6
db $80, $0A, $08, $11, $00, $00, $19, $80, $0A, $08, $11, $00, $00, $00
org $30DCF4 : RoomHeader_0036: ; pc 0x185CF4
db $80, $0A, $08, $11, $00, $00, $00, $80, $0A, $08, $11, $00, $00, $00
org $30DD02 : RoomHeader_0037: ; pc 0x185D02
db $80, $0A, $08, $11, $00, $00, $19, $80, $0A, $08, $11, $00, $00, $00
org $30DD10 : RoomHeader_0038: ; pc 0x185D10
db $80, $0A, $08, $11, $00, $00, $00, $00, $00, $00, $28, $20, $0D, $09
org $30DD1E : RoomHeader_0039: ; pc 0x185D1E
db $20, $0D, $09, $13, $00, $00, $00, $00, $00, $29, $20, $0F, $07, $19
org $30DD2C : RoomHeader_003A: ; pc 0x185D2C
db $20, $0F, $07, $19, $00, $00, $00, $00, $00, $0A, $0A, $00, $0F, $07
org $30DD3A : RoomHeader_003B: ; pc 0x185D3A
db $00, $0F, $07, $08, $00, $00, $00, $00, $00, $00, $2B, $00, $07, $06
org $30DD48 : RoomHeader_003C: ; pc 0x185D48
db $00, $07, $06, $13, $00, $00, $00, $20, $1A, $0E, $0C, $00, $33, $00
org $30DD56 : RoomHeader_003D: ; pc 0x185D56
db $20, $1A, $0E, $0C, $00, $33, $00, $00, $00, $96, $96, $CC, $13, $0B
org $30DD64 : RoomHeader_003E: ; pc 0x185D64
db $CC, $13, $0B, $29, $02, $02, $00, $00, $00, $00, $1E, $00, $13, $0B
org $30DD72 : RoomHeader_003F: ; pc 0x185D72
db $00, $13, $0B, $29, $00, $27, $14, $00, $00, $00, $1F, $5F, $C0, $00
org $30DD80 : RoomHeader_0040: ; pc 0x185D80
db $C0, $00, $02, $27, $00, $00, $00, $00, $00, $00, $30, $B0, $01, $00
org $30DD8E : RoomHeader_0041: ; pc 0x185D8E
db $01, $00, $00, $02, $00, $13, $00, $00, $00, $00, $42, $01, $01, $01
org $30DD9C : RoomHeader_0042: ; pc 0x185D9C
db $01, $01, $01, $01, $00, $00, $00, $00, $00, $00, $41, $32, $68, $04
org $30DDAA : RoomHeader_0043: ; pc 0x185DAA
db $68, $04, $05, $0A, $00, $00, $1D, $00, $17, $0A, $1B, $00, $01, $00
org $30DDB8 : RoomHeader_0044: ; pc 0x185DB8
db $00, $17, $0A, $1B, $00, $01, $00, $60, $17, $0A, $1B, $00, $01, $00
org $30DDC6 : RoomHeader_0045: ; pc 0x185DC6
db $60, $17, $0A, $1B, $00, $01, $00, $00, $00, $00, $BC, $00, $0A, $08
org $30DDD4 : RoomHeader_0046: ; pc 0x185DD4
db $00, $0A, $08, $11, $00, $3C, $00, $00, $0D, $09, $13, $00, $33, $34
org $30DDE2 : RoomHeader_0047: ; pc 0x185DE2
db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00
org $30DDF0 : RoomHeader_0048: ; pc 0x185DF0
db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00
org $30DDFE : RoomHeader_0049: ; pc 0x185DFE
db $00, $0D, $09, $13, $00, $33, $34, $00, $0F, $07, $19, $00, $17, $00
org $30DE0C : RoomHeader_004A: ; pc 0x185E0C
db $00, $0F, $07, $19, $00, $17, $00, $00, $00, $00, $09, $09, $00, $0F
org $30DE1A : RoomHeader_004B: ; pc 0x185E1A
db $00, $0F, $07, $08, $00, $01, $00, $00, $00, $09, $00, $1A, $0E, $0C
org $30DE28 : RoomHeader_004C: ; pc 0x185E28
db $00, $1A, $0E, $0C, $00, $00, $00, $00, $00, $00, $1D, $20, $1A, $0E
org $30DE36 : RoomHeader_004D: ; pc 0x185E36
db $20, $1A, $0E, $0C, $00, $32, $3F, $00, $00, $A6, $A6, $00, $13, $0B
org $30DE44 : RoomHeader_004E: ; pc 0x185E44
db $00, $13, $0B, $29, $00, $17, $00, $00, $00, $00, $6E, $00, $13, $0B
org $30DE52 : RoomHeader_004F: ; pc 0x185E52
db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $BE, $C0, $00, $00, $04
org $30DE60 : RoomHeader_0050: ; pc 0x185E60
db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01
org $30DE6E : RoomHeader_0051: ; pc 0x185E6E
db $C0, $00, $00, $03, $00, $00, $00, $00, $00, $00, $61, $C0, $00, $00
org $30DE7C : RoomHeader_0052: ; pc 0x185E7C
db $C0, $00, $00, $04, $00, $00, $00, $00, $00, $00, $00, $00, $01, $01
org $30DE8A : RoomHeader_0053: ; pc 0x185E8A
db $C0, $04, $05, $0A, $00, $03, $00, $00, $00, $00, $63, $20, $0A, $08
org $30DE98 : RoomHeader_0054: ; pc 0x185E98
db $20, $0A, $08, $11, $00, $00, $00, $00, $00, $34, $34, $01, $01, $10
org $30DEA6 : RoomHeader_0055: ; pc 0x185EA6
db $01, $01, $10, $0D, $00, $00, $00, $00, $0D, $09, $13, $00, $23, $00
org $30DEB4 : RoomHeader_0056: ; pc 0x185EB4
db $00, $0D, $09, $13, $00, $23, $00, $00, $0D, $09, $13, $00, $16, $00
org $30DEC2 : RoomHeader_0057: ; pc 0x185EC2
db $00, $0D, $09, $13, $00, $16, $00, $00, $0D, $09, $13, $00, $21, $28
org $30DED0 : RoomHeader_0058: ; pc 0x185ED0
db $00, $0D, $09, $13, $00, $21, $28, $C0, $0D, $09, $13, $00, $00, $00
org $30DEDE : RoomHeader_0059: ; pc 0x185EDE
db $C0, $0D, $09, $13, $00, $00, $00, $00, $10, $07, $15, $00, $25, $00
org $30DEEC : RoomHeader_005A: ; pc 0x185EEC
db $00, $10, $07, $15, $00, $25, $00, $C0, $1B, $0E, $0A, $00, $17, $00
org $30DEFA : RoomHeader_005B: ; pc 0x185EFA
db $C0, $1B, $0E, $0A, $00, $17, $00, $00, $1B, $0E, $0A, $00, $00, $00
org $30DF08 : RoomHeader_005C: ; pc 0x185F08
db $00, $1B, $0E, $0A, $00, $00, $00, $00, $00, $00, $5D, $00, $24, $0E
org $30DF16 : RoomHeader_005D: ; pc 0x185F16
db $00, $24, $0E, $23, $00, $09, $00, $00, $00, $00, $5C, $20, $13, $0B
org $30DF24 : RoomHeader_005E: ; pc 0x185F24
db $20, $13, $0B, $1C, $00, $00, $00, $00, $00, $7E, $7E, $00, $13, $0B
org $30DF32 : RoomHeader_005F: ; pc 0x185F32
db $00, $13, $0B, $1C, $00, $27, $00, $00, $00, $00, $3F, $7F, $C0, $00
org $30DF40 : RoomHeader_0060: ; pc 0x185F40
db $C0, $00, $00, $04, $00, $00, $00, $C0, $00, $00, $04, $00, $00, $00
org $30DF4E : RoomHeader_0061: ; pc 0x185F4E
db $C0, $00, $00, $04, $00, $00, $00, $08, $00, $00, $51, $00, $09, $05
org $30DF5C : RoomHeader_0062: ; pc 0x185F5C
db $C0, $00, $00, $04, $00, $00, $00, $C0, $00, $00, $04, $00, $00, $00
org $30DF6A : RoomHeader_0063: ; pc 0x185F6A
db $00, $09, $05, $0A, $00, $0D, $00, $00, $00, $00, $53, $E0, $23, $0A
org $30DF78 : RoomHeader_0064: ; pc 0x185F78
db $E0, $23, $0A, $21, $00, $17, $00, $00, $00, $00, $AB, $E0, $23, $0A
org $30DF86 : RoomHeader_0065: ; pc 0x185F86
db $E0, $23, $0A, $21, $00, $00, $00, $00, $00, $AC, $C0, $0A, $08, $11
org $30DF94 : RoomHeader_0066: ; pc 0x185F94
db $C0, $0A, $08, $11, $00, $3C, $00, $00, $00, $00, $16, $00, $0D, $09
org $30DFA2 : RoomHeader_0067: ; pc 0x185FA2
db $00, $0D, $09, $13, $00, $22, $00, $00, $0D, $09, $13, $00, $00, $00
org $30DFB0 : RoomHeader_0068: ; pc 0x185FB0
db $00, $0D, $09, $13, $00, $00, $00, $01, $0F, $07, $19, $00, $00, $00
org $30DFBE : RoomHeader_0069: ; pc 0x185FBE
db $01, $0F, $07, $19, $00, $00, $00, $00, $00, $00, $1A, $1A, $00, $1B
org $30DFCC : RoomHeader_006A: ; pc 0x185FCC
db $01, $0F, $07, $19, $00, $00, $00, $00, $00, $00, $1A, $1A, $00, $1B
org $30DFDA : RoomHeader_006B: ; pc 0x185FDA
db $00, $1B, $0E, $0A, $00, $08, $0B, $00, $00, $00, $0C, $00, $24, $0E
org $30DFE8 : RoomHeader_006C: ; pc 0x185FE8
db $00, $24, $0E, $23, $00, $03, $3F, $00, $00, $00, $A5, $00, $24, $0E
org $30DFF6 : RoomHeader_006D: ; pc 0x185FF6
db $00, $24, $0E, $23, $00, $05, $00, $00, $13, $0B, $1C, $00, $02, $00
org $30E004 : RoomHeader_006E: ; pc 0x186004
db $00, $13, $0B, $1C, $00, $02, $00, $00, $00, $00, $4E, $00, $01, $01
org $30E012 : RoomHeader_006F: ; pc 0x186012
db $00, $01, $01, $04, $00, $00, $00, $08, $00, $00, $71, $80, $C0, $01
org $30E020 : RoomHeader_0070: ; pc 0x186020
db $00, $01, $01, $04, $00, $00, $00, $08, $00, $00, $71, $80, $C0, $01
org $30E02E : RoomHeader_0071: ; pc 0x18602E
db $C0, $01, $01, $04, $00, $08, $00, $00, $00, $00, $70, $C0, $01, $01
org $30E03C : RoomHeader_0072: ; pc 0x18603C
db $C0, $01, $01, $04, $00, $00, $00, $08, $00, $00, $01, $00, $09, $05
org $30E04A : RoomHeader_0073: ; pc 0x18604A
db $00, $09, $05, $0A, $00, $17, $00, $00, $09, $05, $0A, $00, $27, $00
org $30E058 : RoomHeader_0074: ; pc 0x186058
db $00, $09, $05, $0A, $00, $27, $00, $00, $09, $05, $0A, $00, $01, $00
org $30E066 : RoomHeader_0075: ; pc 0x186066
db $00, $09, $05, $0A, $00, $01, $00, $80, $0A, $08, $11, $00, $00, $18
org $30E074 : RoomHeader_0076: ; pc 0x186074
db $80, $0A, $08, $11, $00, $00, $18, $00, $00, $00, $26, $26, $26, $C0
org $30E082 : RoomHeader_0077: ; pc 0x186082
db $C0, $06, $05, $19, $00, $00, $00, $00, $00, $A7, $31, $87, $87, $00
org $30E090 : RoomHeader_0078: ; pc 0x186090
db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13
org $30E09E : RoomHeader_0079: ; pc 0x18609E
db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13
org $30E0AC : RoomHeader_007A: ; pc 0x1860AC
db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13
org $30E0BA : RoomHeader_007B: ; pc 0x1860BA
db $00, $28, $0E, $13, $00, $03, $39, $00, $00, $9D, $00, $28, $0E, $13
org $30E0C8 : RoomHeader_007C: ; pc 0x1860C8
db $00, $28, $0E, $13, $00, $20, $00, $00, $28, $0E, $13, $00, $04, $3C
org $30E0D6 : RoomHeader_007D: ; pc 0x1860D6
db $00, $28, $0E, $13, $00, $04, $3C, $00, $00, $9B, $20, $13, $0B, $1C
org $30E0E4 : RoomHeader_007E: ; pc 0x1860E4
db $20, $13, $0B, $1C, $00, $2B, $17, $00, $00, $9E, $5E, $00, $13, $0B
org $30E0F2 : RoomHeader_007F: ; pc 0x1860F2
db $00, $13, $0B, $1C, $00, $00, $00, $00, $00, $00, $5F, $60, $01, $01
org $30E100 : RoomHeader_0080: ; pc 0x186100
db $60, $01, $01, $04, $00, $00, $00, $00, $00, $00, $70, $C0, $01, $01
org $30E10E : RoomHeader_0081: ; pc 0x18610E
db $C0, $01, $01, $04, $00, $00, $00, $00, $09, $05, $0A, $00, $0D, $00
org $30E37D ; PC 0x18637D
Enable_TerrorPin_AI_Fix:
db #$01
;Shop slot count as check
org $30E560 ; PC 0x18650
org $30E560 ; PC 0x186560
EnableShopItemCount:
db #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00
db #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00, #$00