ram.asm initial commit. Replaced all address defines with labels
Value defines styled without quotes, # moved to load/store/cmp site Added registers.asm (copied from spannerisms JP disassembly) Added a bunch of length annotations Deleted old or trivial commented out code Deleted: ganonfixes.asm, map.asm, seedtag.asm Replaced obsolete credits.asm with creditsnew.asm Moved scratch space at $7F5020-3F to mirrored WRAM (7E1E70-8F) Moved clock RAM to mirrored WRAM (7E1E90-9F) dialog.asm: FreeDungeonItemNotice preserves callee-preserved scratch RAM Toast buffer moved to mirrored WRAM (7E1E0E-0F) servicerequest.asm: long store to $012E converted to word length store
This commit is contained in:
84
inverted.asm
84
inverted.asm
@@ -35,7 +35,7 @@ Overworld_CreatePyramidHoleModified:
|
||||
JSL C9DE_LONG
|
||||
JSL C9DE_LONG
|
||||
|
||||
LDA.w #$FFFF : STA $1012, Y
|
||||
LDA.w #$FFFF : STA.w $1012, Y
|
||||
|
||||
JMP .ending
|
||||
.originalBehaviour
|
||||
@@ -64,33 +64,33 @@ Overworld_CreatePyramidHoleModified:
|
||||
JSL C9DE_LONG
|
||||
JSL C9DE_LONG
|
||||
|
||||
LDA.w #$FFFF : STA $1012, Y
|
||||
LDA.w #$FFFF : STA.w $1012, Y
|
||||
|
||||
.ending
|
||||
LDA.w #$3515 : STA $012D
|
||||
LDA.w #$3515 : STA.w $012D
|
||||
|
||||
SEP #$30
|
||||
|
||||
LDA OverworldEventDataWRAM+$5B : ORA.b #$20 : STA OverworldEventDataWRAM+$5B
|
||||
LDA.l OverworldEventDataWRAM+$5B : ORA.b #$20 : STA.l OverworldEventDataWRAM+$5B
|
||||
|
||||
LDA.b #$03 : STA $012F
|
||||
LDA.b #$03 : STA.w $012F
|
||||
|
||||
LDA.b #$01 : STA $14
|
||||
LDA.b #$01 : STA.b $14
|
||||
|
||||
RTL
|
||||
;------------------------------------------------------------------------------
|
||||
Draw_PyramidOverlay:
|
||||
LDA.l InvertedMode : AND.w #$00FF : BNE .done
|
||||
.normal
|
||||
LDA.w #$0E39 : STA $23BC
|
||||
INC A : STA $23BE
|
||||
INC A : STA $23C0
|
||||
INC A : STA $243C
|
||||
INC A : STA $243E
|
||||
INC A : STA $2440
|
||||
INC A : STA $24BC
|
||||
INC A : STA $24BE
|
||||
INC A : STA $24C0
|
||||
LDA.w #$0E39 : STA.w $23BC
|
||||
INC A : STA.w $23BE
|
||||
INC A : STA.w $23C0
|
||||
INC A : STA.w $243C
|
||||
INC A : STA.w $243E
|
||||
INC A : STA.w $2440
|
||||
INC A : STA.w $24BC
|
||||
INC A : STA.w $24BE
|
||||
INC A : STA.w $24C0
|
||||
.done
|
||||
RTL
|
||||
;------------------------------------------------------------------------------
|
||||
@@ -130,43 +130,43 @@ 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 OverworldEventDataWRAM, X : ORA #$40 : STA OverworldEventDataWRAM, X ;set barrier dead
|
||||
LDA.l InvertedMode : BEQ .done
|
||||
LDA.l OverworldEventDataWRAM, X : ORA.b #$40 : STA.l OverworldEventDataWRAM, X ;set barrier dead
|
||||
.done
|
||||
LDA OverworldEventDataWRAM, X ; what we wrote over
|
||||
LDA.l OverworldEventDataWRAM, X ; what we wrote over
|
||||
RTL
|
||||
|
||||
|
||||
GanonTowerAnimation:
|
||||
LDA InvertedMode : BEQ .done
|
||||
LDA.b #$1B : STA $012F
|
||||
STZ $04C6
|
||||
STZ $B0
|
||||
STZ $0710
|
||||
STZ $02E4
|
||||
LDA.l InvertedMode : BEQ .done
|
||||
LDA.b #$1B : STA.w $012F
|
||||
STZ.w $04C6
|
||||
STZ.b $B0
|
||||
STZ.w $0710
|
||||
STZ.w $02E4
|
||||
|
||||
STZ $0FC1
|
||||
STZ.w $0FC1
|
||||
|
||||
STZ $011A
|
||||
STZ $011B
|
||||
STZ $011C
|
||||
STZ $011D
|
||||
LDA.b #$02 : STA $012C
|
||||
LDA.b #$09 : STA $012D
|
||||
STZ.w $011A
|
||||
STZ.w $011B
|
||||
STZ.w $011C
|
||||
STZ.w $011D
|
||||
LDA.b #$02 : STA.w $012C
|
||||
LDA.b #$09 : STA.w $012D
|
||||
RTL
|
||||
.done
|
||||
LDA.b #$05 : STA $04C6 ;what we wrote over
|
||||
STZ $B0 ; (continued)
|
||||
STZ $C8 ; (continued)
|
||||
LDA.b #$05 : STA.w $04C6 ;what we wrote over
|
||||
STZ.b $B0 ; (continued)
|
||||
STZ.b $C8 ; (continued)
|
||||
RTL
|
||||
|
||||
GanonTowerInvertedCheck:
|
||||
{
|
||||
LDA InvertedMode : BEQ .done
|
||||
LDA #$01 ; Load a random value so it doesn't BEQ
|
||||
LDA.l InvertedMode : BEQ .done
|
||||
LDA.b #$01 ; Load a random value so it doesn't BEQ
|
||||
RTL
|
||||
.done
|
||||
LDA $8A : CMP.b #$43 ;what we wrote over
|
||||
LDA.b $8A : CMP.b #$43 ;what we wrote over
|
||||
RTL
|
||||
}
|
||||
|
||||
@@ -174,14 +174,14 @@ GanonTowerInvertedCheck:
|
||||
;Hard coded rock removed in LW for Inverted mode
|
||||
HardcodedRocks:
|
||||
|
||||
LDA InvertedMode : AND.w #$00FF : BEQ .normalrocks
|
||||
LDA.l InvertedMode : AND.w #$00FF : BEQ .normalrocks
|
||||
BRA .noRock2
|
||||
.normalrocks
|
||||
LDA.w #$020F : LDX $8A : CPX.w #$0033 : BNE .noRock
|
||||
STA $7E22A8
|
||||
STA.l $7E22A8
|
||||
.noRock
|
||||
CPX.w #$002F : BNE .noRock2
|
||||
STA $7E2BB2
|
||||
STA.l $7E2BB2
|
||||
.noRock2
|
||||
RTL
|
||||
|
||||
@@ -202,7 +202,7 @@ MirrorBonk:
|
||||
; otherwise fall through to .normal
|
||||
PHX : PHP
|
||||
PHB : PHK : PLB
|
||||
LDA $8A : AND.b #$40 : BEQ .endLoop ;World we're in? branch if we are in LW we don't want bonks
|
||||
LDA.b $8A : AND.b #$40 : BEQ .endLoop ;World we're in? branch if we are in LW we don't want bonks
|
||||
REP #$30
|
||||
LDX #$0000
|
||||
.loop
|
||||
@@ -231,7 +231,7 @@ MirrorBonk:
|
||||
PLB : PLP : PLX
|
||||
.normal
|
||||
;Not forcing a bonk, so the vanilla bonk detection run.
|
||||
LDA $0C : ORA $0E
|
||||
LDA.b Scrap0C : ORA.b Scrap0E
|
||||
JML.l MirrorBonk_NormalReturn
|
||||
.forceBonk
|
||||
JML.l MirrorBonk_BranchGamma
|
||||
|
||||
Reference in New Issue
Block a user