Add static file name feature by special request
Move compass count ram init to compasses.asm Rename WRAMEquipment and SRAMEquipment to EquipmentWRAM/SRAM
This commit is contained in:
@@ -580,6 +580,13 @@ OverworldMap_DarkWorldTilemap:
|
||||
org $0ABAB9
|
||||
OverworldMap_LoadSprGfx:
|
||||
|
||||
org $0CD7D1
|
||||
NameFile_MakeScreenVisible:
|
||||
org $0CDB3E
|
||||
InitializeSaveFile:
|
||||
org $0CDB3E
|
||||
InitializeSaveFile_build_checksum:
|
||||
|
||||
org $0DBA71
|
||||
GetRandomInt:
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
;ReadInventoryPond:
|
||||
; CPX.b #$1B : BNE + : LDA.b #$01 : RTL : +
|
||||
; LDA WRAMEquipment, X
|
||||
; LDA EquipmentWRAM, X
|
||||
;RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -55,6 +55,14 @@ RTL
|
||||
DungeonItemMasks: ; these are dungeon correlations to $7EF364 - $7EF369 so it knows where to store compasses, etc
|
||||
dw $8000, $4000, $2000, $1000, $0800, $0400, $0200, $0100
|
||||
dw $0080, $0040, $0020, $0010, $0008, $0004
|
||||
;--------------------------------------------------------------------------------
|
||||
InitCompassTotalsRAM:
|
||||
LDX #$00
|
||||
-
|
||||
LDA CompassTotalsROM, X : STA CompassTotalsWRAM, X
|
||||
INX
|
||||
CPX #$0F : !BLT -
|
||||
RTL
|
||||
|
||||
;CompassCountDungeonHandlers: ; pointers to functions that handle dungeon-specific code
|
||||
; dw CompassCount_Escape, CompassCount_Escape ; (hyrule castle, sewers)
|
||||
|
||||
@@ -86,8 +86,8 @@ OnAga2Defeated:
|
||||
;--------------------------------------------------------------------------------
|
||||
OnFileCreation:
|
||||
TAX ; what we wrote over
|
||||
LDA StartingEquipment+$4C : STA SRAMEquipment+$4C ; copy starting equipment swaps to file select screen
|
||||
LDA StartingEquipment+$4E : STA SRAMEquipment+$4E
|
||||
LDA StartingEquipment+$4C : STA EquipmentSRAM+$4C ; copy starting equipment swaps to file select screen
|
||||
LDA StartingEquipment+$4E : STA EquipmentSRAM+$4E
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
!RNG_ITEM_LOCK_IN = "$7F5090"
|
||||
@@ -132,7 +132,7 @@ OnNewFile:
|
||||
LDA.l StartingTime+2 : STA ChallengeTimer+2
|
||||
|
||||
LDX.w #$004E : - ; copy over starting equipment
|
||||
LDA StartingEquipment, X : STA WRAMEquipment, X
|
||||
LDA StartingEquipment, X : STA EquipmentWRAM, X
|
||||
DEX : DEX
|
||||
BPL -
|
||||
|
||||
|
||||
132
fileselect.asm
132
fileselect.asm
@@ -153,15 +153,15 @@ DrawPlayerFileShared:
|
||||
JSR FileSelectDrawHudBar
|
||||
|
||||
; Bow
|
||||
LDA.l BowTracking : AND.w #$0040 : BEQ +
|
||||
LDA SRAMEquipment : AND.w #$00FF : BEQ ++
|
||||
LDA.l BowTrackingSRAM : AND.w #$0040 : BEQ +
|
||||
LDA EquipmentSRAM+$00 : AND.w #$00FF : BEQ ++
|
||||
%fs_drawItem(3,12,FileSelectItems_silver_bow)
|
||||
BRA .bow_end
|
||||
++
|
||||
%fs_drawItem(3,12,FileSelectItems_silver_arrow)
|
||||
BRA .bow_end
|
||||
+
|
||||
LDA.l SRAMEquipment : AND.w #$00FF : BEQ +
|
||||
LDA.l EquipmentSRAM : AND.w #$00FF : BEQ +
|
||||
%fs_drawItem(3,12,FileSelectItems_bow)
|
||||
BRA .bow_end
|
||||
+
|
||||
@@ -169,15 +169,15 @@ DrawPlayerFileShared:
|
||||
.bow_end
|
||||
|
||||
; Boomerang
|
||||
LDA.l InventoryTracking : AND.w #$00C0 : CMP.w #$00C0 : BNE +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$00C0 : CMP.w #$00C0 : BNE +
|
||||
%fs_drawItem(3,14,FileSelectItems_both_boomerang)
|
||||
BRA .boomerang_end
|
||||
+
|
||||
LDA.l InventoryTracking : AND.w #$0040 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0040 : BEQ +
|
||||
%fs_drawItem(3,14,FileSelectItems_red_boomerang)
|
||||
BRA .boomerang_end
|
||||
+
|
||||
LDA.l InventoryTracking : AND.w #$0080 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0080 : BEQ +
|
||||
%fs_drawItem(3,14,FileSelectItems_blue_boomerang)
|
||||
BRA .boomerang_end
|
||||
+
|
||||
@@ -185,13 +185,13 @@ DrawPlayerFileShared:
|
||||
.boomerang_end
|
||||
|
||||
; Hookshot
|
||||
%fs_drawItemBasic(SRAMEquipment+$02,3,16,FileSelectItems_hookshot)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$02,3,16,FileSelectItems_hookshot)
|
||||
|
||||
; Bombs
|
||||
; %fs_drawItemBasic(SRAMEquipment+$03,3,18,FileSelectItems_bombs)
|
||||
; %fs_drawItemBasic(EquipmentSRAM+$03,3,18,FileSelectItems_bombs)
|
||||
|
||||
; Powder
|
||||
LDA.l InventoryTracking : AND.w #$0010 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0010 : BEQ +
|
||||
%fs_drawItem(3,20,FileSelectItems_powder)
|
||||
BRA ++
|
||||
+
|
||||
@@ -199,7 +199,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Mushroom
|
||||
LDA.l InventoryTracking : AND.w #$0008 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0008 : BEQ +
|
||||
%fs_drawItem(3,18,FileSelectItems_mushroom)
|
||||
BRA ++
|
||||
+
|
||||
@@ -207,7 +207,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Flute
|
||||
LDA.l InventoryTracking : AND.w #$0003 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0003 : BEQ +
|
||||
%fs_drawItem(7,16,FileSelectItems_flute)
|
||||
BRA ++
|
||||
+
|
||||
@@ -215,7 +215,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Shovel
|
||||
LDA.l InventoryTracking : AND.w #$0004 : BEQ +
|
||||
LDA.l InventoryTrackingSRAM : AND.w #$0004 : BEQ +
|
||||
%fs_drawItem(9,12,FileSelectItems_shovel)
|
||||
BRA ++
|
||||
+
|
||||
@@ -223,52 +223,52 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Fire Rod
|
||||
%fs_drawItemBasic(SRAMEquipment+$05,5,12,FileSelectItems_fire_rod)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$05,5,12,FileSelectItems_fire_rod)
|
||||
|
||||
; Ice Rod
|
||||
%fs_drawItemBasic(SRAMEquipment+$06,5,14,FileSelectItems_ice_rod)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$06,5,14,FileSelectItems_ice_rod)
|
||||
|
||||
; Bombos Medallion
|
||||
%fs_drawItemBasic(SRAMEquipment+$07,5,16,FileSelectItems_bombos)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$07,5,16,FileSelectItems_bombos)
|
||||
|
||||
; Ether Medallion
|
||||
%fs_drawItemBasic(SRAMEquipment+$08,5,18,FileSelectItems_ether)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$08,5,18,FileSelectItems_ether)
|
||||
|
||||
; Quake Medallion
|
||||
%fs_drawItemBasic(SRAMEquipment+$09,5,20,FileSelectItems_quake)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$09,5,20,FileSelectItems_quake)
|
||||
|
||||
; Lamp
|
||||
%fs_drawItemBasic(SRAMEquipment+$0A,7,12,FileSelectItems_lamp)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$0A,7,12,FileSelectItems_lamp)
|
||||
|
||||
; Hammer
|
||||
%fs_drawItemBasic(SRAMEquipment+$0B,7,14,FileSelectItems_hammer)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$0B,7,14,FileSelectItems_hammer)
|
||||
|
||||
; Bug Net
|
||||
%fs_drawItemBasic(SRAMEquipment+$0D,7,18,FileSelectItems_bugnet)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$0D,7,18,FileSelectItems_bugnet)
|
||||
|
||||
; Book of Mudora
|
||||
%fs_drawItemBasic(SRAMEquipment+$0E,7,20,FileSelectItems_book)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$0E,7,20,FileSelectItems_book)
|
||||
|
||||
; Red Cane
|
||||
%fs_drawItemBasic(SRAMEquipment+$10,9,14,FileSelectItems_redcane)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$10,9,14,FileSelectItems_redcane)
|
||||
|
||||
; Blue Cane
|
||||
%fs_drawItemBasic(SRAMEquipment+$11,9,16,FileSelectItems_bluecane)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$11,9,16,FileSelectItems_bluecane)
|
||||
|
||||
; Cape
|
||||
%fs_drawItemBasic(SRAMEquipment+$12,9,18,FileSelectItems_cape)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$12,9,18,FileSelectItems_cape)
|
||||
|
||||
; Mirror
|
||||
%fs_drawItemBasic(SRAMEquipment+$13,9,20,FileSelectItems_mirror)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$13,9,20,FileSelectItems_mirror)
|
||||
|
||||
; Bottles
|
||||
%fs_drawBottle(SRAMEquipment+$1C,3,23)
|
||||
%fs_drawBottle(SRAMEquipment+$1D,5,23)
|
||||
%fs_drawBottle(SRAMEquipment+$1E,7,23)
|
||||
%fs_drawBottle(SRAMEquipment+$1F,9,23)
|
||||
%fs_drawBottle(EquipmentSRAM+$1C,3,23)
|
||||
%fs_drawBottle(EquipmentSRAM+$1D,5,23)
|
||||
%fs_drawBottle(EquipmentSRAM+$1E,7,23)
|
||||
%fs_drawBottle(EquipmentSRAM+$1F,9,23)
|
||||
|
||||
; Sword
|
||||
LDA.l SRAMEquipment+$19 : AND.w #$00FF : BNE +
|
||||
LDA.l EquipmentSRAM+$19 : AND.w #$00FF : BNE +
|
||||
%fs_drawItemGray(3,26,FileSelectItems_fighters_sword)
|
||||
BRA ++
|
||||
+ : DEC : BNE +
|
||||
@@ -289,7 +289,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Shield
|
||||
LDA.l SRAMEquipment+$1A : AND.w #$00FF : BNE +
|
||||
LDA.l EquipmentSRAM+$1A : AND.w #$00FF : BNE +
|
||||
%fs_drawItemGray(5,26,FileSelectItems_fighters_shield)
|
||||
BRA ++
|
||||
+ : DEC : BNE +
|
||||
@@ -303,7 +303,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Mail
|
||||
LDA.l SRAMEquipment+$1B : AND.w #$00FF : BNE +
|
||||
LDA.l EquipmentSRAM+$1B : AND.w #$00FF : BNE +
|
||||
%fs_drawItem(7,26,FileSelectItems_green_mail)
|
||||
BRA ++
|
||||
+ : DEC : BNE +
|
||||
@@ -314,7 +314,7 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Heart Pieces
|
||||
LDA.l SRAMEquipment+$2B : AND.w #$00FF : BNE +
|
||||
LDA.l EquipmentSRAM+$2B : AND.w #$00FF : BNE +
|
||||
%fs_drawItem(9,26,FileSelectItems_heart_piece_0_of_4)
|
||||
BRA ++
|
||||
+ : DEC : BNE +
|
||||
@@ -327,16 +327,16 @@ DrawPlayerFileShared:
|
||||
%fs_drawItem(9,26,FileSelectItems_heart_piece_3_of_4)
|
||||
++
|
||||
|
||||
LDA SRAMEquipment+$0108 : AND.w #$00FF
|
||||
LDA EquipmentSRAM+$0108 : AND.w #$00FF
|
||||
JSL.l HexToDec
|
||||
LDA $7F5006 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(11,26)
|
||||
LDA $7F5007 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(11,27)
|
||||
|
||||
; Boots
|
||||
%fs_drawItemBasic(SRAMEquipment+$15,3,28,FileSelectItems_boots)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$15,3,28,FileSelectItems_boots)
|
||||
|
||||
; Gloves
|
||||
LDA.l SRAMEquipment+$14 : AND.w #$00FF : BNE +
|
||||
LDA.l EquipmentSRAM+$14 : AND.w #$00FF : BNE +
|
||||
%fs_drawItemGray(5,28,FileSelectItems_gloves)
|
||||
BRA ++
|
||||
+ : DEC : BNE +
|
||||
@@ -347,27 +347,27 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Flippers
|
||||
%fs_drawItemBasic(SRAMEquipment+$16,7,28,FileSelectItems_flippers)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$16,7,28,FileSelectItems_flippers)
|
||||
|
||||
; Moon Pearl
|
||||
%fs_drawItemBasic(SRAMEquipment+$17,9,28,FileSelectItems_pearl)
|
||||
%fs_drawItemBasic(EquipmentSRAM+$17,9,28,FileSelectItems_pearl)
|
||||
|
||||
; Pendants
|
||||
LDA SRAMEquipment+$34 : AND.w #$0004 : BEQ +
|
||||
LDA EquipmentSRAM+$34 : AND.w #$0004 : BEQ +
|
||||
%fs_drawItem(12,12,FileSelectItems_green_pendant)
|
||||
BRA ++
|
||||
+
|
||||
%fs_drawItem(12,12,FileSelectItems_no_pendant)
|
||||
++
|
||||
|
||||
LDA SRAMEquipment+$34 : AND.w #$0002 : BEQ +
|
||||
LDA EquipmentSRAM+$34 : AND.w #$0002 : BEQ +
|
||||
%fs_drawItem(12,14,FileSelectItems_blue_pendant)
|
||||
BRA ++
|
||||
+
|
||||
%fs_drawItem(12,14,FileSelectItems_no_pendant)
|
||||
++
|
||||
|
||||
LDA SRAMEquipment+$34 : AND.w #$0001 : BEQ +
|
||||
LDA EquipmentSRAM+$34 : AND.w #$0001 : BEQ +
|
||||
%fs_drawItem(12,16,FileSelectItems_red_pendant)
|
||||
BRA ++
|
||||
+
|
||||
@@ -375,49 +375,49 @@ DrawPlayerFileShared:
|
||||
++
|
||||
|
||||
; Crystals
|
||||
LDA SRAMEquipment+$3A : AND.w #$0002 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0002 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_BLUE
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(13,18)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0010 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0010 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_BLUE
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(12,19)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0040 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0040 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_BLUE
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(13,20)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0020 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0020 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_BLUE
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(12,21)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0004 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0004 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_RED
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(13,22)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0001 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0001 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_RED
|
||||
BRA ++
|
||||
+
|
||||
LDA.w #$0287|!FS_COLOR_GRAY
|
||||
++ : %fs_draw16x8(12,23)
|
||||
|
||||
LDA SRAMEquipment+$3A : AND.w #$0008 : BEQ +
|
||||
LDA EquipmentSRAM+$3A : AND.w #$0008 : BEQ +
|
||||
LDA.w #$0297|!FS_COLOR_BLUE
|
||||
BRA ++
|
||||
+
|
||||
@@ -559,7 +559,7 @@ FileSelectItems:
|
||||
;--------------------------------------------------------------------------------
|
||||
FileSelectDrawHudBar:
|
||||
LDA #$029B|!FS_COLOR_GREEN : %fs_draw16x8(0,10)
|
||||
LDA SRAMEquipment+$22
|
||||
LDA EquipmentSRAM+$22
|
||||
JSL.l HexToDec
|
||||
LDA $7F5004 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,9)
|
||||
LDA $7F5005 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,10)
|
||||
@@ -567,18 +567,18 @@ FileSelectDrawHudBar:
|
||||
LDA $7F5007 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,12)
|
||||
|
||||
LDA #$028B|!FS_COLOR_BLUE : %fs_draw16x8(0,14)
|
||||
LDA SRAMEquipment+$03 : AND.w #$00FF
|
||||
LDA EquipmentSRAM+$03 : AND.w #$00FF
|
||||
JSL.l HexToDec
|
||||
LDA $7F5006 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,14)
|
||||
LDA $7F5007 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,15)
|
||||
|
||||
LDA.l BowTracking : AND.w #$0040 : BEQ +
|
||||
LDA.l BowTrackingSRAM : AND.w #$0040 : BEQ +
|
||||
LDA #$0299|!FS_COLOR_RED : %fs_draw16x8(0,17)
|
||||
BRA ++
|
||||
+
|
||||
LDA #$0289|!FS_COLOR_BROWN : %fs_draw16x8(0,17)
|
||||
++
|
||||
LDA SRAMEquipment+$37 : AND.w #$00FF
|
||||
LDA EquipmentSRAM+$37 : AND.w #$00FF
|
||||
JSL.l HexToDec
|
||||
LDA $7F5006 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,17)
|
||||
LDA $7F5007 : AND.w #$00FF : !ADD.w #$210+!FS_COLOR_BW : %fs_draw8x8(1,18)
|
||||
@@ -787,16 +787,16 @@ DrawPlayerFile_credits:
|
||||
; see $6563C for drawing first file name and hearts
|
||||
REP #$20 ; set 16 bit accumulator
|
||||
|
||||
LDA SRAMEquipment+$99 : ORA.w #!FS_COLOR_BW
|
||||
LDA EquipmentSRAM+$99 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16(3,5)
|
||||
LDA SRAMEquipment+$9B : ORA.w #!FS_COLOR_BW
|
||||
LDA EquipmentSRAM+$9B : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16(3,6)
|
||||
LDA SRAMEquipment+$9D : ORA.w #!FS_COLOR_BW
|
||||
LDA EquipmentSRAM+$9D : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16(3,7)
|
||||
LDA SRAMEquipment+$9F : ORA.w #!FS_COLOR_BW
|
||||
LDA EquipmentSRAM+$9F : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16(3,8)
|
||||
|
||||
LDA SRAMEquipment+$2C : AND.w #$00FF : LSR #3 : STA $02
|
||||
LDA EquipmentSRAM+$2C : AND.w #$00FF : LSR #3 : STA $02
|
||||
%fs_LDY_screenpos(0,20)
|
||||
LDA.w #$028F|!FS_COLOR_RED
|
||||
LDX.w #$000A
|
||||
@@ -866,3 +866,21 @@ JML FSSelectFile_continue
|
||||
LDA.b #$3C : STA $012E ; play error sound
|
||||
JML FSSelectFile_return
|
||||
;--------------------------------------------------------------------------------
|
||||
MaybeForceFileName:
|
||||
LDA.l ForceFileName : BEQ +
|
||||
REP #$20
|
||||
LDX.b #$FE
|
||||
-
|
||||
INX : INX
|
||||
LDA.l StaticFileName, X : STA.l ExtendedFileNameSRAM, X
|
||||
CPX #$16 : BEQ .done
|
||||
CPX #$08 : BCS -
|
||||
STA.l FileNameVanillaSRAM, X
|
||||
BRA -
|
||||
.done
|
||||
SEP #$20
|
||||
JML.l InitializeSaveFile
|
||||
|
||||
+
|
||||
JML.l NameFile_MakeScreenVisible
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -214,6 +214,8 @@ LDA.l HeartCursorPositions, X
|
||||
org $0CDAEB ; <- 65AEB : Bank0C.asm : 3571-3575,3581-3587 (...) [LDA $0B12 : AND #$03]
|
||||
; JP here is different. Indicated line number implement the US version of the same functionality
|
||||
JSL.l WrapCharacterPosition : NOP
|
||||
org $0CD75E ; bank_0C.asm (dl NameFile_MakeScreenVisible)
|
||||
dl MaybeForceFileName
|
||||
;--------------------------------------------------------------------------------
|
||||
org $0CE43A ; No assembly source. Makes name entry box wider
|
||||
db $2C
|
||||
|
||||
11
init.asm
11
init.asm
@@ -67,15 +67,6 @@ Init_PostRAMClear:
|
||||
|
||||
JSL MSUInit
|
||||
JSL InitRNGPointerTable
|
||||
JSR InitCompassTotalsRAM
|
||||
JSL InitCompassTotalsRAM
|
||||
|
||||
JML $00D463 ; The original target of the jump table that we hijacked
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
InitCompassTotalsRAM:
|
||||
LDX #$00
|
||||
-
|
||||
LDA CompassTotalsROM, X : STA CompassTotalsWRAM, X
|
||||
INX
|
||||
CPX #$0F : !BLT -
|
||||
RTS
|
||||
|
||||
@@ -5,7 +5,7 @@ IsItemAvailable:
|
||||
CPX.b #$04 : BNE .finite
|
||||
LDA.b #$01 : RTL
|
||||
.finite
|
||||
LDA WRAMEquipment-1, X
|
||||
LDA EquipmentWRAM-1, X
|
||||
RTL
|
||||
LoadBombCount:
|
||||
LDA !INFINITE_BOMBS : BNE .infinite
|
||||
|
||||
18
sram.asm
18
sram.asm
@@ -71,7 +71,7 @@ OverworldEventData = $7EF280
|
||||
; $00 = None
|
||||
;--------------------------------------------------------------------------------
|
||||
base $7EF340
|
||||
WRAMEquipment: ;
|
||||
EquipmentWRAM: ;
|
||||
BowEquipment: skip 1 ; $01 = Bow | $02 = Bow & Arrows
|
||||
; $03 = Silver Arrow Bow | $04 = Bow & Silver Arrows
|
||||
BoomerangEquipment: skip 1 ; $01 = Blue | $02 = Red
|
||||
@@ -208,7 +208,7 @@ DroppedFollowerLayer: skip 1 ; $00 = Upper layer | $01 =.lower layer
|
||||
FollowerDropped: skip 1 ; Set to $80 when a follower exists and has been dropped somewhere
|
||||
; $00 otherwise
|
||||
skip 5 ; Unused
|
||||
skip 8 ; Unused
|
||||
FileNameVanillaWRAM: skip 8 ; First four characters of file name
|
||||
FileValidity: skip 2 ; Always $55AA. Don't write.
|
||||
|
||||
;================================================================================
|
||||
@@ -388,11 +388,14 @@ DummyValue: skip 1 ; $01 if you're a real dummy
|
||||
; a small amount of data which is not currently in the WRAM mirror.
|
||||
;--------------------------------------------------------------------------------
|
||||
base $700000 ;
|
||||
CartridgeSRAM: ;
|
||||
skip $0340 ;
|
||||
SRAMEquipment: skip 76 ;
|
||||
EquipmentSRAM: skip 76 ;
|
||||
InventoryTrackingSRAM: skip 2 ;
|
||||
BowTrackingSRAM: skip 2 ;
|
||||
skip 368 ;
|
||||
skip 73 ;
|
||||
FileNameVanillaSRAM: skip 8 ; First four characters of file name
|
||||
skip 287
|
||||
ExtendedFileNameSRAM: skip 24 ; We read and write the file name directly from and to SRAM (24 bytes)
|
||||
skip $1AE4 ;
|
||||
RomVersionSRAM: skip 4 ; ALTTPR ROM version. Low byte is the version, high byte writes
|
||||
@@ -417,7 +420,7 @@ endmacro
|
||||
; All of these need to pass for the base rom to build or something is probably
|
||||
; very wrong.
|
||||
;--------------------------------------------------------------------------------
|
||||
%assertSRAM(WRAMEquipment, $7EF340)
|
||||
%assertSRAM(EquipmentWRAM, $7EF340)
|
||||
%assertSRAM(BowEquipment, $7EF340)
|
||||
%assertSRAM(BoomerangEquipment, $7EF341)
|
||||
%assertSRAM(HookshotEquipment, $7EF342)
|
||||
@@ -502,6 +505,7 @@ endmacro
|
||||
%assertSRAM(DroppedFollowerIndoors, $7EF3D1)
|
||||
%assertSRAM(DroppedFollowerLayer, $7EF3D2)
|
||||
%assertSRAM(FollowerDropped, $7EF3D3)
|
||||
%assertSRAM(FileNameVanillaWRAM, $7EF3D9)
|
||||
%assertSRAM(FileValidity, $7EF3E1)
|
||||
%assertSRAM(InverseChecksum, $7EF4FE)
|
||||
|
||||
@@ -632,9 +636,11 @@ endmacro
|
||||
;================================================================================
|
||||
; Direct SRAM Assertions
|
||||
;--------------------------------------------------------------------------------
|
||||
%assertSRAM(SRAMEquipment, $700340)
|
||||
%assertSRAM(CartridgeSRAM, $700000)
|
||||
%assertSRAM(EquipmentSRAM, $700340)
|
||||
%assertSRAM(InventoryTrackingSRAM, $70038C)
|
||||
%assertSRAM(BowTrackingSRAM, $70038E)
|
||||
%assertSRAM(FileNameVanillaSRAM, $7003D9)
|
||||
%assertSRAM(ExtendedFileNameSRAM, $700500)
|
||||
%assertSRAM(RomNameSRAM, $702000)
|
||||
%assertSRAM(RomVersionSRAM, $701FFC)
|
||||
|
||||
15
tables.asm
15
tables.asm
@@ -1618,15 +1618,26 @@ dw $0000, $0000
|
||||
;--------------------------------------------------------------------------------
|
||||
; 0x183055 - 183FFF (unused)
|
||||
;================================================================================
|
||||
org $30C000 ; PC 0x184000 - 0x184007
|
||||
org $30C000 ; PC 0x184000 - 0x184040
|
||||
ItemSubstitutionRules:
|
||||
;db [item][quantity][substitution][pad] - CURRENT LIMIT 16 ENTRIES
|
||||
db $12, $01, $35, $FF
|
||||
db $51, $06, $52, $FF
|
||||
db $53, $06, $54, $FF
|
||||
db $FF, $FF, $FF, $FF
|
||||
|
||||
|
||||
org $30C041 ; PC 0x184041
|
||||
ForceFileName:
|
||||
db $00 ; $00 = Player picks name (default) - $01 = Use StaticFileName
|
||||
|
||||
org $30C042 ; PC 0x184042 - 0x18405A
|
||||
StaticFileName:
|
||||
dw $0181, $0162, $0168, $018C
|
||||
dw $0166, $014E, $0162, $018C
|
||||
dw $0165, $0162, $0167, $018C
|
||||
;--------------------------------------------------------------------------------
|
||||
; 0x184008 - 0x1847FF (unused)
|
||||
; 0x18405B - 0x1847FF (unused)
|
||||
;================================================================================
|
||||
;shop_config - tdav --qq
|
||||
; t - 0=Shop - 1=TakeAny
|
||||
|
||||
Reference in New Issue
Block a user