Merge branch 'master' into decompressed

Also some pendant receipt and palette fixes
This commit is contained in:
cassidoxa
2023-08-02 17:40:38 -04:00
47 changed files with 866 additions and 437 deletions

104
init.asm
View File

@@ -6,55 +6,52 @@
;--------------------------------------------------------------------------------
Init_Primary:
LDA.b #$00
LDX.b #$00 ; initalize our ram
-
STA.l $7EC025, X
STA.l $7F5000, X
INX
CPX.b #$10 : !BLT -
LDX.b #$10 ; initalize more ram
-
STA.l $7F5000, X
INX
CPX.b #$FF : !BLT -
LDX.b #$00
LDX.b #$14
-
LDA.l RomNameSRAM, X : CMP.w $FFC0, X : BNE .clear
INX
CPX.b #$15 : !BLT -
DEX
BPL -
REP #$30
LDX.w #$00D9 ; initalize our ram
-
STA.l $7EC025, X
DEX #2
BPL -
LDA.w #$0000
LDX.w #$2FFE
-
STA.l $7F5000, X
DEX #2
BPL -
BRA .done
.clear
REP #$30 ; set 16-bit accumulator & index registers
REP #$30
LDA.w #$0000
LDX.w #$1FFE
-
STA.l $700000, X
INX
CPX.w #$2000 : !BLT -
SEP #$30 ; set 8-bit accumulator & index registers
LDX.b #$00
STA.l CartridgeSRAM, X
STA.l SaveBackupSRAM, X
DEX #2
BPL -
LDA.w RomVersion+$00 : STA.l RomVersionSRAM+$00
LDA.w RomVersion+$02 : STA.l RomVersionSRAM+$02
SEP #$30
LDX.b #$14
-
LDA.w $FFC0, X : STA.l RomNameSRAM, X
INX
CPX #$15 : !BLT -
LDX.b #$00
-
LDA.w RomVersion, X : STA.l RomVersionSRAM, X
INX
CPX.b #$04 : !BLT -
DEX
BPL -
.done
REP #$20
LDA.l OneMindTimerInit : STA.l OneMindTimerRAM
SEP #$20
SEP #$30
LDA.b #$01 : STA.w MEMSEL ; enable fastrom access on upper banks
STA.l OneMindId
LDA.b #$10 : STA.b PlayerSpriteBank ; set default player sprite bank
LDA.b #$81 : STA.w NMITIMEN ; thing we wrote over, turn on NMI & gamepad
JML ReturnFromInit
@@ -70,24 +67,35 @@ Init_PostRAMClear:
JSL MSUInit
JSL InitRNGPointerTable
JSR InitCompassTotalsRAM
JSL DecompressAllItemGraphics
JSR InitDungeonCounts
JML $80D463 ; The original target of the jump table that we hijacked
;---------------------------------------------------------------------------------------------------
InitCompassTotalsRAM:
LDX.b #$0F
.next
LDA.l CompassTotalsROM,X
STA.l CompassTotalsWRAM,X
DEX
BPL .next
RTS
;===================================================================================================
InitDungeonCounts:
PHB
LDX.b #$0F
-
LDA.l CompassTotalsROM, X : STA.l CompassTotalsWRAM, X
DEX
BPL -
LDX.b #$0F
-
LDA.l ChestKeys, X : STA.l MapTotalsWRAM, X
DEX
BPL -
LDA.b #$7E
PHA : PLB
REP #$30
LDA.l TotalItemCount
JSL.l HUDHex4Digit_Long
SEP #$20
LDA.b Scrap04 : TAX : STX.w TotalItemCountTiles+$00
LDA.b Scrap05 : TAX : STX.w TotalItemCountTiles+$02
LDA.b Scrap06 : TAX : STX.w TotalItemCountTiles+$04
LDA.b Scrap07 : TAX : STX.w TotalItemCountTiles+$06
SEP #$10
PLB
RTS