Cleanup dungeon code

This commit is contained in:
scawful
2024-12-20 11:01:11 -05:00
parent a304b96bc0
commit 0b6de8edc4
6 changed files with 28 additions and 77 deletions

View File

@@ -58,28 +58,15 @@ SpawnFallingTile:
.next .next
LDA.l $7FF800, X : BNE .skip LDA.l $7FF800, X : BNE .skip
; GARNISH 03
LDA.b #$03 ; GARNISH 03 LDA.b #$03 : STA.l $7FF800, X
STA.l $7FF800, X
LDA.w $022A : STA.l $7FF83C, X LDA.w $022A : STA.l $7FF83C, X
LDA.w $022B : STA.l $7FF878, X LDA.w $022B : STA.l $7FF878, X
LDA.w $0228 : CLC : ADC.b #$10 : STA.l $7FF81E, X
LDA.w $0228 LDA.w $0229 : ADC.b #$00 : STA.l $7FF85A, X
CLC
ADC.b #$10
STA.l $7FF81E, X
LDA.w $0229
ADC.b #$00
STA.l $7FF85A, X
LDA.b #$1F : STA.l $7FF90E, X LDA.b #$1F : STA.l $7FF90E, X
STA.w $0FB4 STA.w $0FB4
BRA .exit BRA .exit
.skip .skip
DEX DEX
BPL .next BPL .next
@@ -113,28 +100,20 @@ update_pit_tile:
replace_crack_pit: replace_crack_pit:
{ {
LDX.w $1000 LDX.w $1000
LDA.w #$0CCC : STA.w $1006, X
LDA.w #$0CCC : STA.w $1006,X LDA.w #$0CDC : STA.w $100C, X
LDA.w #$0CCD : STA.w $1012, X
LDA.w #$0CDC : STA.w $100C,X LDA.w #$0CDD : STA.w $1018, X
LDA.w #$0CCD : STA.w $1012,X
LDA.w #$0CDD : STA.w $1018,X
LDX.b $06 LDX.b $06
LDA.w #$0CCC : STA.l $7E2000, X LDA.w #$0CCC : STA.l $7E2000, X
LDA.w #$0CDC : STA.l $7E2080, X LDA.w #$0CDC : STA.l $7E2080, X
LDA.w #$0CCD : STA.l $7E2002, X LDA.w #$0CCD : STA.l $7E2002, X
LDA.w #$0CDD : STA.l $7E2082, X LDA.w #$0CDD : STA.l $7E2082, X
LDA.w #$01E9 : AND.w #$03FF : TAX LDA.w #$01E9 : AND.w #$03FF : TAX
LDA.l $7EFE00, X : AND.w #$00FF
LDA.l $7EFE00,X STA.b $08 : STA.b $09
AND.w #$00FF
STA.b $08
STA.b $09
JMP replace_tile_continue JMP replace_tile_continue
} }
@@ -144,10 +123,10 @@ replace_tile_pit:
LDX.w $1000 LDX.w $1000
LDA.w #$01E9 LDA.w #$01E9
STA.w $1006,X STA.w $1006, X
STA.w $100C,X STA.w $100C, X
STA.w $1012,X STA.w $1012, X
STA.w $1018,X STA.w $1018, X
LDX.b $06 LDX.b $06
@@ -164,15 +143,8 @@ replace_tile_pit:
STA.l $7F2000, X STA.l $7F2000, X
STA.l $7F2040, X STA.l $7F2040, X
LDA.w #$01E9 : AND.w #$03FF : TAX
LDA.w #$01E9 LDA.l $7EFE00, X : AND.w #$00FF : STA.b $08 : STA.b $09
AND.w #$03FF
TAX
LDA.l $7EFE00,X
AND.w #$00FF
STA.b $08
STA.b $09
JMP replace_tile_continue JMP replace_tile_continue
} }

View File

@@ -5,18 +5,16 @@
StoryState = $7C StoryState = $7C
RoomTag_Return = $01CC5A RoomTag_Return = $01CC5A
org $01CC18 ; override routine 0x39 "Holes(7)" ; override routine 0x39 "Holes(7)"
JML CustomTag org $01CC18 : JML CustomTag
org $01CC10 ; RoomTag_Holes5
RoomTag_Holes5: org $01CC10 : JML RoomTag_MinishShutterDoor
JML RoomTag_MinishShutterDoor
pullpc pullpc
CustomTag: CustomTag:
{ {
PHX PHX
LDA $7EF3C6 : BNE .game_has_begun LDA $7EF3C6 : BNE .game_has_begun
JSR HouseTag_Main JSR HouseTag_Main
.game_has_begun .game_has_begun
@@ -30,7 +28,6 @@ CustomTag:
HouseTag_Main: HouseTag_Main:
{ {
LDA.w StoryState LDA.w StoryState
JSL $008781 JSL $008781
dw HouseTag_TelepathicPlea dw HouseTag_TelepathicPlea
@@ -39,7 +36,7 @@ HouseTag_Main:
HouseTag_TelepathicPlea: HouseTag_TelepathicPlea:
{ {
LDA #$08 : STA $7EE000 ; Set the time to 8:00am LDA.b #$08 : STA $7EE000 ; Set the time to 8:00am
LDA.b #$03 : STA.w $012C ; Play the deku tree music LDA.b #$03 : STA.w $012C ; Play the deku tree music
; ------------------------------- ; -------------------------------
@@ -64,12 +61,9 @@ HouseTag_Main:
; Lighten the screen gradually and then wake Link up partially ; Lighten the screen gradually and then wake Link up partially
LDA $1A : AND.b #$03 : BNE .delay LDA $1A : AND.b #$03 : BNE .delay
LDA $9C : CMP.b #$00 : BEQ .colorTargetReached LDA $9C : CMP.b #$00 : BEQ .colorTargetReached
DEC $9C : DEC $9D DEC $9C : DEC $9D
.delay .delay
RTS RTS
.colorTargetReached .colorTargetReached
INC $0D80, X INC $0D80, X
@@ -92,12 +86,10 @@ HouseTag_Main:
RTS RTS
} }
HouseTag_End: HouseTag_End:
{ {
LDA $B6 : BNE .hasMetFarore LDA $B6 : BNE .hasMetFarore
LDA #$00 : STA.w StoryState LDA #$00 : STA.w StoryState
.hasMetFarore .hasMetFarore
RTS RTS
} }
@@ -115,12 +107,9 @@ RoomTag_MinishShutterDoor:
LDX.w #$0000 : CPX.w $0468 : BEQ .exit LDX.w #$0000 : CPX.w $0468 : BEQ .exit
STZ.w $0468 STZ.w $0468
STZ.w $068E : STZ.w $0690 STZ.w $068E : STZ.w $0690
SEP #$30 SEP #$30
LDA.b #$1B : STA.w $012F LDA.b #$1B : STA.w $012F
LDA.b #$05 : STA.b $11 LDA.b #$05 : STA.b $11
.exit .exit
SEP #$30 SEP #$30
.no_minish .no_minish

View File

@@ -35,14 +35,11 @@ Object_KeyBlock:
} }
; Fix draw bug from floor tile left by block after unlock. ; Fix draw bug from floor tile left by block after unlock.
org $01EBC8 org $01EBC8 : LDA.w $9B5A, Y
LDA.w $9B5A, Y
org $01EBD1 org $01EBD1 : LDA.w $9B54, Y
LDA.w $9B54, Y
org $01EBDA org $01EBDA : LDA.w $9B5C, Y
LDA.w $9B5C, Y
; Draw Values ; Draw Values
; 50 - / ; 50 - /
@@ -54,7 +51,6 @@ org $01EBDA
; 5C - xy mirror ; 5C - xy mirror
; 5E - y mirror ; 5E - y mirror
org $00AFE6 org $00AFE6
dw $4936 dw $4936
; 0100 1001 0011 0110 ; 0100 1001 0011 0110

View File

@@ -17,7 +17,6 @@ org $1EBD0E
JSL NewSpikeCollision JSL NewSpikeCollision
RTS RTS
pullpc pullpc
speedValuesH: speedValuesH:
db $20, $10, $18, $28, $30, $38, $40, $FF db $20, $10, $18, $28, $30, $38, $40, $FF
@@ -40,10 +39,8 @@ NewSpikePrep:
NewSpikeCollision: NewSpikeCollision:
{ {
LDA.b #$04 : STA.w SprTimerA, X LDA.b #$04 : STA.w SprTimerA, X
LDA.w SprXSpeed, X : EOR.b #$FF : INC A : STA.w SprXSpeed, X LDA.w SprXSpeed, X : EOR.b #$FF : INC A : STA.w SprXSpeed, X
LDA.w SprYSpeed, X : EOR.b #$FF : INC A : STA.w SprYSpeed, X LDA.w SprYSpeed, X : EOR.b #$FF : INC A : STA.w SprYSpeed, X
LDA.b #$05 : JSL $0DBB7C ; Sound_SetSfx2PanLong LDA.b #$05 : JSL $0DBB7C ; Sound_SetSfx2PanLong
RTL RTL
} }

View File

@@ -8,11 +8,9 @@
; depending on the player's position in the room. This uses ; depending on the player's position in the room. This uses
; the 4 "stairs" properties in the room header. ; the 4 "stairs" properties in the room header.
org $01CC1C org $01CC1C : JML WarpTag
JML WarpTag
org $01CC5A WarpTag_Return = $01CC5A
WarpTag_Return:
pullpc ; Bank 0x2C pullpc ; Bank 0x2C
WarpTag: WarpTag:

View File

@@ -44,7 +44,6 @@ namespace Oracle
incsrc "Core/music_macros.asm" incsrc "Core/music_macros.asm"
incsrc "Core/symbols.asm" incsrc "Core/symbols.asm"
incsrc "Core/message.asm" incsrc "Core/message.asm"
print " -- Music -- " print " -- Music -- "