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