Compare commits
17
Commits
pikit_mode
...
2477918df9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2477918df9 | ||
|
|
a52f0d71fb | ||
|
|
85a4abbe7b | ||
|
|
d7503ad0f3 | ||
|
|
fbd4efc447 | ||
|
|
ec0bb02a53 | ||
|
|
80c0f47b1c | ||
|
|
b58641ad90 | ||
|
|
031a444a4a | ||
|
|
9174bbfba5 | ||
|
|
37caff7bcf | ||
|
|
6fb81c0aa8 | ||
|
|
6609253059 | ||
|
|
d0f4651130 | ||
|
|
57591e1ef8 | ||
|
|
cc635ddb78 | ||
|
|
c5aaa07f3e |
@@ -213,6 +213,7 @@ incsrc gk/variable_ganon_vulnerability.asm
|
|||||||
incsrc gk/pseudoflute.asm
|
incsrc gk/pseudoflute.asm
|
||||||
incsrc gk/fast_junk.asm
|
incsrc gk/fast_junk.asm
|
||||||
incsrc gk/dungeon_maps.asm
|
incsrc gk/dungeon_maps.asm
|
||||||
|
incsrc gk/dungeon_indicator.asm
|
||||||
print "End of B9: ", pc
|
print "End of B9: ", pc
|
||||||
|
|
||||||
warnpc $B9EE00
|
warnpc $B9EE00
|
||||||
|
|||||||
+1
-1
@@ -246,7 +246,7 @@ FixSwimBump:
|
|||||||
.normal
|
.normal
|
||||||
LDA.b LinkJumping : BNE .continue ; what we wrote over
|
LDA.b LinkJumping : BNE .continue ; what we wrote over
|
||||||
.not_diving
|
.not_diving
|
||||||
PLA : PLA : PEA.w $87964E ; skip ahead, not diving
|
PLA : PLA : PEA.w $87964D ; skip ahead, not diving
|
||||||
.continue
|
.continue
|
||||||
RTL
|
RTL
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -599,7 +599,7 @@ skip $10
|
|||||||
BigKeyStatus: ;27f040 (status 2 indicate BnC guard)
|
BigKeyStatus: ;27f040 (status 2 indicate BnC guard)
|
||||||
dw $0002, $0002, $0001, $0001, $0000, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0000, $0000
|
dw $0002, $0002, $0001, $0001, $0000, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0001, $0000, $0000
|
||||||
DungeonReminderTable: ;27f060
|
DungeonReminderTable: ;27f060
|
||||||
dw $2D50, $2D50, $2D51, $2D52, $2D54, $2D56, $2D55, $2D5A, $2D57, $2D59, $2D53, $2D58, $2D5B, $2D5C, $0000, $0000
|
dw $2DA4, $2DA4, $2DA5, $2DA6, $2DA8, $2DAA, $2DA9, $2DAE, $2DAB, $2DAD, $2DA7, $2DAC, $2DAF, $2DB0, $0000, $0000
|
||||||
TotalLocationsLow: ;27f080
|
TotalLocationsLow: ;27f080
|
||||||
db $08, $08, $06, $06, $02, $00, $04, $08, $08, $08, $06, $08, $02, $07, $00, $00
|
db $08, $08, $06, $06, $02, $00, $04, $08, $08, $08, $06, $08, $02, $07, $00, $00
|
||||||
TotalLocationsHigh: ;27f090
|
TotalLocationsHigh: ;27f090
|
||||||
|
|||||||
+37
-16
@@ -1,10 +1,11 @@
|
|||||||
!BlankTile = $207F
|
!BlankTile = $207F
|
||||||
!SlashTile = $2830
|
!SlashTile = $2830
|
||||||
|
!PlusTile = $2404
|
||||||
!HyphenTile = $2405
|
!HyphenTile = $2405
|
||||||
!LTile = $2D68
|
!LTile = $2D68
|
||||||
!DTile = $2D60
|
!DTile = $2D60
|
||||||
!RedSquare = $345E
|
|
||||||
!BlueSquare = $2C5E
|
!BlueSquare = $2C5E
|
||||||
|
!BossIcon = $253C
|
||||||
|
|
||||||
DrHudOverride:
|
DrHudOverride:
|
||||||
PHB
|
PHB
|
||||||
@@ -46,7 +47,7 @@ DRHUD_BossIndicator:
|
|||||||
SEP #$20
|
SEP #$20
|
||||||
BEQ .draw_indicator
|
BEQ .draw_indicator
|
||||||
LDA.l CompassBossIndicator, x : CMP.b RoomIndex : BNE .draw_indicator
|
LDA.l CompassBossIndicator, x : CMP.b RoomIndex : BNE .draw_indicator
|
||||||
LDY.w #!RedSquare
|
LDY.w #!BossIcon
|
||||||
.draw_indicator
|
.draw_indicator
|
||||||
STY.w HUDMultiIndicator
|
STY.w HUDMultiIndicator
|
||||||
BRA DRHUD_DrawCurrentDungeonIndicator
|
BRA DRHUD_DrawCurrentDungeonIndicator
|
||||||
@@ -71,13 +72,12 @@ DRHUD_DrawCurrentDungeonIndicator: ; mX
|
|||||||
CMP.b #$06 : BEQ .draw_indicator
|
CMP.b #$06 : BEQ .draw_indicator
|
||||||
|
|
||||||
.get_indicator
|
.get_indicator
|
||||||
REP #$20 : LDA.l DungeonReminderTable,X : TAY
|
LDY.w #$2C28
|
||||||
SEP #$20
|
|
||||||
.draw_indicator
|
.draw_indicator
|
||||||
STY.w HUDCurrentDungeonWorld
|
STY.w HUDCurrentDungeonWorld
|
||||||
|
|
||||||
DRHUD_DrawKeyCounter:
|
DRHUD_DrawKeyCounter:
|
||||||
LDA.l DRFlags : AND.b #$04 : BEQ DRHUD_Finished
|
LDA.l DRFlags : AND.b #$04 : BEQ .to_finished
|
||||||
LDA.l CompassMode : BIT.b #$03 : BEQ DRHUD_Finished
|
LDA.l CompassMode : BIT.b #$03 : BEQ DRHUD_Finished
|
||||||
REP #$20
|
REP #$20
|
||||||
BIT.w #$0002 : BNE .skip_map_check
|
BIT.w #$0002 : BNE .skip_map_check
|
||||||
@@ -90,8 +90,17 @@ DRHUD_DrawKeyCounter:
|
|||||||
LDA.l GenericKeys : LSR : BCS .total_only
|
LDA.l GenericKeys : LSR : BCS .total_only
|
||||||
LDA.w DungeonCollectedKeys, X : JSR ConvertToDisplay : STA.w HUDKeysObtained
|
LDA.w DungeonCollectedKeys, X : JSR ConvertToDisplay : STA.w HUDKeysObtained
|
||||||
LDA.w #!SlashTile : STA.w HUDKeysSlash
|
LDA.w #!SlashTile : STA.w HUDKeysSlash
|
||||||
|
|
||||||
|
LDA.l ExtraChestKeys, X : AND.w #$00FF : BEQ .total_only
|
||||||
|
JSR ConvertToDisplay : STA.w HUDKeysExtraCount
|
||||||
|
LDA.w #!PlusTile : STA.w HUDKeysExtraPlus
|
||||||
|
|
||||||
.total_only
|
.total_only
|
||||||
LDA.l ChestKeys, x : JSR ConvertToDisplay : STA.w HUDKeysTotal
|
SEP #$20
|
||||||
|
LDA.l ChestKeys, X : SEC : SBC.l ExtraChestKeys, X
|
||||||
|
REP #$20
|
||||||
|
JSR ConvertToDisplay : STA.w HUDKeysTotal
|
||||||
|
.to_finished
|
||||||
JMP DRHUD_Finished
|
JMP DRHUD_Finished
|
||||||
|
|
||||||
OWRHUD_DrawWorldIndicator:
|
OWRHUD_DrawWorldIndicator:
|
||||||
@@ -292,17 +301,29 @@ BossStatus:
|
|||||||
; default palette 3 - white
|
; default palette 3 - white
|
||||||
LDA.l DungeonReminderTable, X : RTS
|
LDA.l DungeonReminderTable, X : RTS
|
||||||
|
|
||||||
ConvertToDisplay:
|
ConvertToDisplay: ; transparent background
|
||||||
and.w #$00ff : cmp.w #$000a : !BLT +
|
AND.w #$00FF
|
||||||
!ADD.w #$2519 : rts
|
CMP.w #$000A : BCC .under10
|
||||||
+ !ADD.w #$2490 : rts
|
CMP.w #$000C : BCC .under12
|
||||||
|
.over11
|
||||||
|
CLC : ADC.w #$2553 : RTS
|
||||||
|
.under12
|
||||||
|
CLC : ADC.w #$2519 : RTS
|
||||||
|
.under10
|
||||||
|
CLC : ADC.w #$2490 : RTS
|
||||||
|
|
||||||
ConvertToDisplay2:
|
ConvertToDisplay2: ; solid background
|
||||||
and.w #$00ff : beq ++
|
AND.w #$00FF : BEQ .zero
|
||||||
cmp.w #$000a : !BLT +
|
CMP.w #$000A : BCC .under10
|
||||||
!ADD.w #$2517 : rts ; 2580 with 258A as "A" for non transparent digits
|
CMP.w #$000C : BCC .under12
|
||||||
+ !ADD.w #$2816 : rts
|
.over11
|
||||||
++ lda.w #$2827 : rts ; 0/O for 0 or placeholder digit ;2483
|
CLC : ADC.w #$2580 : RTS
|
||||||
|
.under12
|
||||||
|
CLC : ADC.w #$2517 : RTS
|
||||||
|
.under10
|
||||||
|
CLC : ADC.w #$2816 : RTS
|
||||||
|
.zero
|
||||||
|
LDA.w #$2827 : RTS
|
||||||
|
|
||||||
CountAbsorbedKeys:
|
CountAbsorbedKeys:
|
||||||
JML IncrementSmallKeysNoPrimary
|
JML IncrementSmallKeysNoPrimary
|
||||||
|
|||||||
@@ -857,6 +857,7 @@ RTL
|
|||||||
Kiki_DontScareTheMonke:
|
Kiki_DontScareTheMonke:
|
||||||
LDA.b LinkJumping : BEQ .return
|
LDA.b LinkJumping : BEQ .return
|
||||||
CMP.b #$02 : BEQ .no_spook ; needed for quake usage
|
CMP.b #$02 : BEQ .no_spook ; needed for quake usage
|
||||||
|
LDA.b GameMode : CMP.b #$0F : BEQ .no_spook ; needed for entrance transitions
|
||||||
LDA.w NoDamage : BNE .no_spook
|
LDA.w NoDamage : BNE .no_spook
|
||||||
LDA.w LinkThud : BNE .no_spook
|
LDA.w LinkThud : BNE .no_spook
|
||||||
.spook
|
.spook
|
||||||
|
|||||||
+21
-13
@@ -17,7 +17,7 @@ CheckLoot:
|
|||||||
STA.b $0E
|
STA.b $0E
|
||||||
|
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
|
|
||||||
@@ -31,6 +31,10 @@ CheckLoot:
|
|||||||
STA.b $0E
|
STA.b $0E
|
||||||
|
|
||||||
+ LDA.w DungeonID
|
+ LDA.w DungeonID
|
||||||
|
AND.w #$00FF
|
||||||
|
CMP.w #$00FF
|
||||||
|
BEQ .skip_dungeon_checks
|
||||||
|
|
||||||
TAX
|
TAX
|
||||||
|
|
||||||
LDA.l MapField
|
LDA.l MapField
|
||||||
@@ -52,6 +56,8 @@ CheckLoot:
|
|||||||
STA.b $0E
|
STA.b $0E
|
||||||
+
|
+
|
||||||
|
|
||||||
|
.skip_dungeon_checks
|
||||||
|
|
||||||
LDA.l ItemSources : BIT.w #$0001 : BEQ +
|
LDA.l ItemSources : BIT.w #$0001 : BEQ +
|
||||||
JSR CheckChests
|
JSR CheckChests
|
||||||
+
|
+
|
||||||
@@ -82,7 +88,7 @@ CheckLoot:
|
|||||||
|
|
||||||
CheckChests:
|
CheckChests:
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
STA.b $00
|
STA.b $00
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
@@ -141,7 +147,7 @@ CheckBoss:
|
|||||||
|
|
||||||
+
|
+
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
STA.b $04
|
STA.b $04
|
||||||
|
|
||||||
LDX.w #$FFFA
|
LDX.w #$FFFA
|
||||||
@@ -196,7 +202,7 @@ CheckBoss:
|
|||||||
|
|
||||||
CheckPrize:
|
CheckPrize:
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
STA.b $04
|
STA.b $04
|
||||||
|
|
||||||
LDX.w #$FFFD
|
LDX.w #$FFFD
|
||||||
@@ -232,7 +238,7 @@ CheckPrize:
|
|||||||
|
|
||||||
CheckPots:
|
CheckPots:
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
|
|
||||||
@@ -298,7 +304,7 @@ CheckPots:
|
|||||||
+
|
+
|
||||||
|
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
if !FEATURE_FIX_BASEROM
|
if !FEATURE_FIX_BASEROM
|
||||||
@@ -336,7 +342,7 @@ CheckJunkPot:
|
|||||||
+
|
+
|
||||||
|
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
LDA.l PotCollectionRateTable, X
|
LDA.l PotCollectionRateTable, X
|
||||||
@@ -364,7 +370,7 @@ endif
|
|||||||
|
|
||||||
CheckEnemies:
|
CheckEnemies:
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
|
|
||||||
@@ -454,7 +460,7 @@ CheckEnemies:
|
|||||||
+
|
+
|
||||||
|
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
|
|
||||||
@@ -484,7 +490,9 @@ GetLootClass:
|
|||||||
CMP.w #$0080 : BNE .not_compass
|
CMP.w #$0080 : BNE .not_compass
|
||||||
|
|
||||||
.compass
|
.compass
|
||||||
LDA.l AlwaysShowCompass : BNE .check_value
|
LDA.l AlwaysShowCompass
|
||||||
|
AND.w #$00FF
|
||||||
|
BNE .check_value
|
||||||
|
|
||||||
.not_compass
|
.not_compass
|
||||||
LDA.b $0E
|
LDA.b $0E
|
||||||
@@ -532,7 +540,7 @@ macro DefineGetFooSection(type, offset)
|
|||||||
Get<type>Section:
|
Get<type>Section:
|
||||||
PHX
|
PHX
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$01FF
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
LDA.l SplitRooms, X
|
LDA.l SplitRooms, X
|
||||||
@@ -580,13 +588,13 @@ Check<type>Section:
|
|||||||
STA.b $CC
|
STA.b $CC
|
||||||
|
|
||||||
LDA.b $CB
|
LDA.b $CB
|
||||||
AND.w #$00FF
|
AND.w #$00F0
|
||||||
BEQ .yes
|
BEQ .yes
|
||||||
|
|
||||||
JSR Get<type>Section
|
JSR Get<type>Section
|
||||||
|
|
||||||
LDA.b $CB
|
LDA.b $CB
|
||||||
AND.w #$00FF
|
AND.w #$00F0
|
||||||
LSR A : LSR A : LSR A : LSR A
|
LSR A : LSR A : LSR A : LSR A
|
||||||
DEC A
|
DEC A
|
||||||
CMP.b $CE
|
CMP.b $CE
|
||||||
|
|||||||
+342
-2
@@ -61,7 +61,24 @@ SplitRooms:
|
|||||||
%d(.no) : %d(.d1) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.d6) : %d(.no)
|
%d(.no) : %d(.d1) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.d6) : %d(.no)
|
||||||
%d(.no) : %d(.no) : %d(.no) : %d(.db) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
%d(.no) : %d(.no) : %d(.no) : %d(.db) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
||||||
|
|
||||||
%d(.no)
|
; E0
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
||||||
|
|
||||||
|
; F0
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.no)
|
||||||
|
|
||||||
|
; 100
|
||||||
|
%d(.no) : %d(.101) : %d(.no) : %d(.103) : %d(.no) : %d(.no) : %d(.106) : %d(.107)
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.no) : %d(.10c) : %d(.no) : %d(.10e) : %d(.no)
|
||||||
|
|
||||||
|
; 110
|
||||||
|
%d(.no) : %d(.no) : %d(.112) : %d(.no) : %d(.114) : %d(.115) : %d(.no) : %d(.no)
|
||||||
|
%d(.no) : %d(.no) : %d(.no) : %d(.11b) : %d(.11c) : %d(.no) : %d(.11e) : %d(.11f)
|
||||||
|
|
||||||
|
; 120
|
||||||
|
%d(.120) : %d(.no) : %d(.122) : %d(.no) : %d(.124) : %d(.125) : %d(.126) : %d(.no)
|
||||||
|
|
||||||
.no
|
.no
|
||||||
db $00
|
db $00
|
||||||
@@ -435,7 +452,7 @@ db $01
|
|||||||
%d(..areas) : %d(..doors) : %d(.no_items) : %d(.no_items) : %d(.no_items) : %d(.no_items)
|
%d(..areas) : %d(..doors) : %d(.no_items) : %d(.no_items) : %d(.no_items) : %d(.no_items)
|
||||||
..areas
|
..areas
|
||||||
db $02, $00, $80, $00, $FF
|
db $02, $00, $80, $00, $FF
|
||||||
db $01, $34, $D4, $B8, $FF
|
db $01, $34, $44, $B4, $FF
|
||||||
db $FF
|
db $FF
|
||||||
..doors
|
..doors
|
||||||
db $03, $06
|
db $03, $06
|
||||||
@@ -569,3 +586,326 @@ db $FF
|
|||||||
..chests
|
..chests
|
||||||
db $01
|
db $01
|
||||||
db $FF
|
db $FF
|
||||||
|
|
||||||
|
.101 ; East Snitch House (2) // West Snitch House (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(..pots) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..pots
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.103 ; Man With Beds (3) // Front of Tavern (2) // Back of Tavern (1)
|
||||||
|
db $02
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas3) : %d(..doors3) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies3)
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas2) : %d(..doors2) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(..pots2) : %d(..enemies2)
|
||||||
|
..areas3
|
||||||
|
db $03, $80, $FF, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors3
|
||||||
|
db $08
|
||||||
|
db $FF
|
||||||
|
..enemies3
|
||||||
|
db $02
|
||||||
|
db $FF
|
||||||
|
..areas2
|
||||||
|
db $03, $00, $7F, $50, $FF
|
||||||
|
db $FF
|
||||||
|
..doors2
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..pots2
|
||||||
|
db $02
|
||||||
|
db $FF
|
||||||
|
..enemies2
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.106 ; VoO Chest Game (2) // Brewery (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.107 ; Library (2) // Bomb Refill Hut (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(.no_items)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.10c ; Mimic Cave (2) // Hookshot Fairy Pot (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(..chests) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..chests
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $04
|
||||||
|
db $05
|
||||||
|
db $06
|
||||||
|
db $07
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.10e ; Storyteller (2) // Storyteller (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..chests
|
||||||
|
db $FF
|
||||||
|
..pots
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.112 ; Dark Chapel (2) // Store (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.114 ; Waterfall Fairy (2) // Hint NPC (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(..chests) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..chests
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.115 ; Capacity Fairy (1) // Healing Fairy (2)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $80, $FF, $80, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $08
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.11b ; Cave 45 (2) // Graveyard Ledge (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(..pots) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..pots
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $02
|
||||||
|
db $03
|
||||||
|
db $04
|
||||||
|
db $05
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $01
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.11c ; Bomb Shop (2) // C-Shaped House (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.11e ; Long Fairy Cave (2) // Hype Cave (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $02
|
||||||
|
db $03
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.11f ; Lumberjack House (1) // Store (2)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $80, $FF, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $08
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.120 ; Ice Rod Cave (1) // Cool Bee Cave (2)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $80, $FF, $00, $FF
|
||||||
|
db $03, $80, $FF, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $08
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $02
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.122 ; Fortune Teller (2) // Other Fortune Teller (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.124 ; 50-Rupee Cave (1) // Bonk Rocks (2)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(..chests) : %d(.no_items) : %d(.no_items)
|
||||||
|
..areas
|
||||||
|
db $03, $80, $FF, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $08
|
||||||
|
db $FF
|
||||||
|
..chests
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.125 ; 20-Rupee Cave (2) // Spiky Hint Cave (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(..pots) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..pots
|
||||||
|
db $00
|
||||||
|
db $01
|
||||||
|
db $02
|
||||||
|
db $03
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $00
|
||||||
|
db $FF
|
||||||
|
|
||||||
|
.126 ; Bonk Fairy Pool (2) // Checkerboard Cave (1)
|
||||||
|
db $01
|
||||||
|
%sq($00)
|
||||||
|
%d(..areas) : %d(..doors) : %d(.no_items)
|
||||||
|
%d(.no_items) : %d(.no_items) : %d(..enemies)
|
||||||
|
..areas
|
||||||
|
db $03, $00, $7F, $00, $FF
|
||||||
|
db $FF
|
||||||
|
..doors
|
||||||
|
db $06
|
||||||
|
db $FF
|
||||||
|
..enemies
|
||||||
|
db $01
|
||||||
|
db $02
|
||||||
|
db $03
|
||||||
|
db $04
|
||||||
|
db $FF
|
||||||
|
|||||||
@@ -172,6 +172,7 @@ DrawSingleRoomLoot:
|
|||||||
STA.w GFXStripes+$0C, Y
|
STA.w GFXStripes+$0C, Y
|
||||||
|
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
|
AND.w #$F0FF
|
||||||
JSL CheckLoot
|
JSL CheckLoot
|
||||||
|
|
||||||
ASL A : ASL A : ASL A
|
ASL A : ASL A : ASL A
|
||||||
@@ -687,6 +688,13 @@ GetSpecificRoomVisibility:
|
|||||||
STA.b $0A
|
STA.b $0A
|
||||||
+
|
+
|
||||||
|
|
||||||
|
SEP #$20
|
||||||
|
LDA.b $0A
|
||||||
|
CMP.b $0B
|
||||||
|
BCC +
|
||||||
|
STA.b $0B
|
||||||
|
+
|
||||||
|
|
||||||
REP #$20
|
REP #$20
|
||||||
LDA.b $CA
|
LDA.b $CA
|
||||||
AND.w #$00FF
|
AND.w #$00FF
|
||||||
@@ -2105,6 +2113,13 @@ DrawDoorsStairs:
|
|||||||
|
|
||||||
DetectLinksSection:
|
DetectLinksSection:
|
||||||
LDA.b RoomIndex
|
LDA.b RoomIndex
|
||||||
|
CMP.w #$0128
|
||||||
|
BCC +
|
||||||
|
|
||||||
|
LDA.w #$0000
|
||||||
|
RTL
|
||||||
|
+
|
||||||
|
|
||||||
ASL A
|
ASL A
|
||||||
TAX
|
TAX
|
||||||
LDA.l SplitRooms, X
|
LDA.l SplitRooms, X
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
LoadDungeonIndicator:
|
||||||
|
; what we wrote over
|
||||||
|
JSL InitializeTilesets
|
||||||
|
|
||||||
|
LDA.w DungeonID
|
||||||
|
CMP.b #DungeonIndicatorMap_end-DungeonIndicatorMap : BCS .done
|
||||||
|
TAX
|
||||||
|
LDA.l DungeonIndicatorMap, X
|
||||||
|
TAX
|
||||||
|
|
||||||
|
LDA.b #$80
|
||||||
|
STA.w $2115
|
||||||
|
|
||||||
|
REP #$20
|
||||||
|
LDA.w #$7140
|
||||||
|
STA.w $2116
|
||||||
|
|
||||||
|
LDY.b #$10
|
||||||
|
|
||||||
|
- LDA.l DungeonIndicatorGfx, X
|
||||||
|
STA.w $2118
|
||||||
|
INX #2
|
||||||
|
DEY #2
|
||||||
|
BNE -
|
||||||
|
|
||||||
|
SEP #$20
|
||||||
|
.done
|
||||||
|
RTL
|
||||||
|
|
||||||
|
DungeonIndicatorMap:
|
||||||
|
dw $0000
|
||||||
|
dw $0000
|
||||||
|
dw $0010
|
||||||
|
dw $0020
|
||||||
|
dw $0040
|
||||||
|
dw $0060
|
||||||
|
dw $0050
|
||||||
|
dw $00A0
|
||||||
|
dw $0070
|
||||||
|
dw $0090
|
||||||
|
dw $0030
|
||||||
|
dw $0080
|
||||||
|
dw $00B0
|
||||||
|
dw $00C0
|
||||||
|
.end
|
||||||
|
|
||||||
|
DungeonIndicatorGfx:
|
||||||
|
incbin "menu/dr_dungeon_indicators.2bpp"
|
||||||
|
.end
|
||||||
|
|
||||||
@@ -34,6 +34,7 @@ incsrc map_bg3.asm
|
|||||||
incsrc dungeon_switch.asm
|
incsrc dungeon_switch.asm
|
||||||
incsrc draw_loot.asm
|
incsrc draw_loot.asm
|
||||||
incsrc check_loot.asm
|
incsrc check_loot.asm
|
||||||
|
incsrc loot_hud.asm
|
||||||
incsrc blink_loot.asm
|
incsrc blink_loot.asm
|
||||||
incsrc data/doors_display.asm
|
incsrc data/doors_display.asm
|
||||||
incsrc data/spiral_stairs.asm
|
incsrc data/spiral_stairs.asm
|
||||||
|
|||||||
@@ -0,0 +1,76 @@
|
|||||||
|
UpdateLootHUD:
|
||||||
|
PHP
|
||||||
|
REP #$30
|
||||||
|
PHX : PHY
|
||||||
|
SEP #$30
|
||||||
|
|
||||||
|
LDA.l ShowLootInHUD : BEQ .setting_off
|
||||||
|
LDA.b IndoorsFlag : BEQ .done
|
||||||
|
|
||||||
|
REP #$30
|
||||||
|
LDA.b $00 : PHA
|
||||||
|
LDA.b $02 : PHA
|
||||||
|
LDA.b $04 : PHA
|
||||||
|
LDA.b $06 : PHA
|
||||||
|
LDA.b $08 : PHA
|
||||||
|
LDA.b $0E : PHA
|
||||||
|
|
||||||
|
; if if door rando, check for section of supertile
|
||||||
|
LDA.l DRMode
|
||||||
|
BNE +
|
||||||
|
|
||||||
|
; if not in door rando, check for section of supertile if we're not in a dungeon
|
||||||
|
LDA.w DungeonID
|
||||||
|
AND.w #$00FF
|
||||||
|
CMP.w #$00FF
|
||||||
|
BEQ +
|
||||||
|
|
||||||
|
; just load the room id, we don't care about sections
|
||||||
|
LDA.b RoomIndex
|
||||||
|
BRA .check
|
||||||
|
|
||||||
|
+ ; figure out section before checking
|
||||||
|
JSL DetectLinksSection
|
||||||
|
INC A
|
||||||
|
XBA
|
||||||
|
ASL A : ASL A : ASL A : ASL A
|
||||||
|
ORA.b RoomIndex
|
||||||
|
.check
|
||||||
|
JSL CheckLoot
|
||||||
|
|
||||||
|
SEP #$30
|
||||||
|
CMP.l ShowItems_hud_cap
|
||||||
|
BCC +
|
||||||
|
LDA.l ShowItems_hud_cap
|
||||||
|
+
|
||||||
|
|
||||||
|
LDX.w DungeonID
|
||||||
|
CPX.b #$FF
|
||||||
|
BNE +
|
||||||
|
CMP.l ShowItems_cave_cap
|
||||||
|
BCC +
|
||||||
|
LDA.l ShowItems_cave_cap
|
||||||
|
+
|
||||||
|
|
||||||
|
REP #$30
|
||||||
|
|
||||||
|
ASL A : TAX
|
||||||
|
LDA.l HUDLootTypeIcons, X
|
||||||
|
STA.w EnemyDropIndicator
|
||||||
|
|
||||||
|
PLA : STA.b $0E
|
||||||
|
PLA : STA.b $08
|
||||||
|
PLA : STA.b $06
|
||||||
|
PLA : STA.b $04
|
||||||
|
PLA : STA.b $02
|
||||||
|
PLA : STA.b $00
|
||||||
|
BRA .done
|
||||||
|
|
||||||
|
.setting_off
|
||||||
|
JSL SetupEnemyDropIndicator
|
||||||
|
|
||||||
|
.done
|
||||||
|
REP #$30
|
||||||
|
PLY : PLX
|
||||||
|
PLP
|
||||||
|
RTL
|
||||||
+28
-1
@@ -146,6 +146,25 @@ dw $25A4, $25A4 ; Reserved
|
|||||||
dw $25A4, $25A4 ; Reserved
|
dw $25A4, $25A4 ; Reserved
|
||||||
|
|
||||||
; $B9FB40
|
; $B9FB40
|
||||||
|
HUDLootTypeIcons:
|
||||||
|
dw $287F ; 00 - nothing
|
||||||
|
dw $295C ; 01 - unknown - dot
|
||||||
|
dw $2954 ; 02 - junk - pot
|
||||||
|
dw $2950 ; 03 - small key
|
||||||
|
dw $2952 ; 04 - triforce piece
|
||||||
|
dw $2955 ; 05 - safety - plus
|
||||||
|
dw $2953 ; 06 - less important item - small chest
|
||||||
|
dw $2957 ; 07 - map
|
||||||
|
dw $2D56 ; 08 - compass
|
||||||
|
dw $2950 ; 09 - small key
|
||||||
|
dw $2951 ; 0A - big key
|
||||||
|
dw $295A ; 0B - important inventory item - big chest
|
||||||
|
dw $2D58 ; 0C - pendant
|
||||||
|
dw $2D59 ; 0D - crystal
|
||||||
|
dw $2952 ; 0E - triforce piece
|
||||||
|
dw $295B ; 0F - triforce
|
||||||
|
|
||||||
|
; $B9FB60
|
||||||
|
|
||||||
warnpc $B9FE00
|
warnpc $B9FE00
|
||||||
org $B9FE00
|
org $B9FE00
|
||||||
@@ -190,7 +209,11 @@ ShowItems:
|
|||||||
.visited_tile
|
.visited_tile
|
||||||
db $01
|
db $01
|
||||||
.reserved
|
.reserved
|
||||||
skip 4
|
skip 2
|
||||||
|
.hud_cap
|
||||||
|
db $FF
|
||||||
|
.cave_cap
|
||||||
|
db $01
|
||||||
warnpc $B9FF10
|
warnpc $B9FF10
|
||||||
|
|
||||||
org $B9FF10
|
org $B9FF10
|
||||||
@@ -206,3 +229,7 @@ ItemSources:
|
|||||||
; $B9FF11
|
; $B9FF11
|
||||||
AlwaysShowCompass:
|
AlwaysShowCompass:
|
||||||
db $01
|
db $01
|
||||||
|
|
||||||
|
; $B9FF12
|
||||||
|
ShowLootInHUD:
|
||||||
|
db $01
|
||||||
|
|||||||
+2
-1
@@ -13,7 +13,8 @@ GKRomVersion:
|
|||||||
; $01 = Dungeon Maps
|
; $01 = Dungeon Maps
|
||||||
; .., $01 = Dark rooms don't show on map from visition
|
; .., $01 = Dark rooms don't show on map from visition
|
||||||
; .., $02 = OW Fog and Grid modes
|
; .., $02 = OW Fog and Grid modes
|
||||||
db $01, $02, $00
|
; .., $03 = Loot level of current supertile in HUD
|
||||||
|
db $01, $03, $00
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
|
|||||||
@@ -2758,6 +2758,13 @@ JSL MimicDirection
|
|||||||
org $828068
|
org $828068
|
||||||
JSL AdjustDefaultGraphics
|
JSL AdjustDefaultGraphics
|
||||||
|
|
||||||
|
;================================================================================
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
; Dungeon Indicator VRAM overwrite
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $828190
|
||||||
|
JSL LoadDungeonIndicator
|
||||||
|
|
||||||
;================================================================================
|
;================================================================================
|
||||||
; Special Weapons Modes
|
; Special Weapons Modes
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -165,6 +165,7 @@ AddInventory:
|
|||||||
LDA.l !MULTIWORLD_RECEIVING_ITEM : BNE .done
|
LDA.l !MULTIWORLD_RECEIVING_ITEM : BNE .done
|
||||||
REP #$30
|
REP #$30
|
||||||
LDA.l TotalItemCounter : INC : TAY
|
LDA.l TotalItemCounter : INC : TAY
|
||||||
|
JSL UpdateLootHUD
|
||||||
LDA.l BootsEquipment : AND.w #$00FF : BNE +
|
LDA.l BootsEquipment : AND.w #$00FF : BNE +
|
||||||
TYA : STA.l PreBootsLocations
|
TYA : STA.l PreBootsLocations
|
||||||
+
|
+
|
||||||
|
|||||||
@@ -221,7 +221,8 @@ RevealPotItem:
|
|||||||
STZ.w SpawnedItemIsMultiWorld
|
STZ.w SpawnedItemIsMultiWorld
|
||||||
BIT.b Scrap08
|
BIT.b Scrap08
|
||||||
BVS LoadMultiWorldPotItem
|
BVS LoadMultiWorldPotItem
|
||||||
BMI LoadMajorPotItem
|
BPL .normal_secret
|
||||||
|
JMP LoadMajorPotItem
|
||||||
|
|
||||||
.normal_secret
|
.normal_secret
|
||||||
STA.b Scrap08
|
STA.b Scrap08
|
||||||
@@ -242,6 +243,7 @@ RevealPotItem:
|
|||||||
; Could increment GT Tower Pre Big Key but we aren't showing that stat right now
|
; Could increment GT Tower Pre Big Key but we aren't showing that stat right now
|
||||||
+ REP #$10
|
+ REP #$10
|
||||||
LDA.l TotalItemCounter : INC : STA.l TotalItemCounter ; Increment Item Total
|
LDA.l TotalItemCounter : INC : STA.l TotalItemCounter ; Increment Item Total
|
||||||
|
JSL UpdateLootHUD
|
||||||
LDA.w #$0001 : STA.l UpdateHUDFlag
|
LDA.w #$0001 : STA.l UpdateHUDFlag
|
||||||
.obtained
|
.obtained
|
||||||
PLY : PLX
|
PLY : PLX
|
||||||
@@ -341,6 +343,7 @@ IncrementCountsForSubstitute:
|
|||||||
; Could increment GT Tower Pre Big Key but we aren't showing that stat right now
|
; Could increment GT Tower Pre Big Key but we aren't showing that stat right now
|
||||||
+
|
+
|
||||||
LDA.l TotalItemCounter : INC : STA.l TotalItemCounter ; Increment Item Total
|
LDA.l TotalItemCounter : INC : STA.l TotalItemCounter ; Increment Item Total
|
||||||
|
JSL UpdateLootHUD
|
||||||
LDA.w #$0001 : STA.l UpdateHUDFlag
|
LDA.w #$0001 : STA.l UpdateHUDFlag
|
||||||
.obtained
|
.obtained
|
||||||
SEP #$30 : PLX
|
SEP #$30 : PLX
|
||||||
@@ -357,7 +360,7 @@ ClearSpriteData:
|
|||||||
STZ.w SprSourceItemId, X : STZ.w SprItemReceipt, X : STZ.w SprItemMWPlayer, X
|
STZ.w SprSourceItemId, X : STZ.w SprItemReceipt, X : STZ.w SprItemMWPlayer, X
|
||||||
STZ.w SprRedrawFlag, X
|
STZ.w SprRedrawFlag, X
|
||||||
DEX : BPL .loop
|
DEX : BPL .loop
|
||||||
JSR SetupEnemyDropIndicator
|
JSL UpdateLootHUD
|
||||||
PLX
|
PLX
|
||||||
RTL
|
RTL
|
||||||
|
|
||||||
@@ -404,7 +407,7 @@ SetupEnemyDropIndicator:
|
|||||||
|
|
||||||
.done
|
.done
|
||||||
SEP #$20
|
SEP #$20
|
||||||
RTS
|
RTL
|
||||||
|
|
||||||
|
|
||||||
; Runs during sprite load of the room
|
; Runs during sprite load of the room
|
||||||
@@ -571,7 +574,7 @@ IncrementCountForMinor:
|
|||||||
LDA.l SpriteDropData, X : BIT.b Scrap0A : BNE .obtained
|
LDA.l SpriteDropData, X : BIT.b Scrap0A : BNE .obtained
|
||||||
ORA.b Scrap0A : STA.l SpriteDropData, X
|
ORA.b Scrap0A : STA.l SpriteDropData, X
|
||||||
SEP #$10
|
SEP #$10
|
||||||
JSR SetupEnemyDropIndicator
|
JSL UpdateLootHUD
|
||||||
REP #$20
|
REP #$20
|
||||||
LDX.w DungeonID : CPX.b #$FF : BEQ +
|
LDX.w DungeonID : CPX.b #$FF : BEQ +
|
||||||
CPX.b #$00 : BNE ++
|
CPX.b #$00 : BNE ++
|
||||||
@@ -627,10 +630,10 @@ MarkSRAMForItem:
|
|||||||
TYX
|
TYX
|
||||||
LDA.w SpawnedItemFlag : CMP.w #$0001 : BEQ +
|
LDA.w SpawnedItemFlag : CMP.w #$0001 : BEQ +
|
||||||
LDA.l SpriteDropData, X : ORA.b Scrap00 : STA.l SpriteDropData, X
|
LDA.l SpriteDropData, X : ORA.b Scrap00 : STA.l SpriteDropData, X
|
||||||
SEP #$10 : JSR SetupEnemyDropIndicator
|
|
||||||
BRA .end
|
BRA .end
|
||||||
+ LDA.l RoomPotData, X : ORA.b Scrap00 : STA.l RoomPotData, X
|
+ LDA.l RoomPotData, X : ORA.b Scrap00 : STA.l RoomPotData, X
|
||||||
.end
|
.end
|
||||||
|
JSL UpdateLootHUD
|
||||||
SEP #$30 : PLY : PLX
|
SEP #$30 : PLY : PLX
|
||||||
LDA.w RoomItemsTaken
|
LDA.w RoomItemsTaken
|
||||||
RTL
|
RTL
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1
-1
@@ -9,7 +9,7 @@ UploadMenuOnlyIcons:
|
|||||||
REP #$20
|
REP #$20
|
||||||
LDA.w #MenuOnlyIcons : STA.w $4342
|
LDA.w #MenuOnlyIcons : STA.w $4342
|
||||||
LDA.w #$1801 : STA.w $4340
|
LDA.w #$1801 : STA.w $4340
|
||||||
LDA.w #$0240 : STA.w $4345
|
LDA.w #$0310 : STA.w $4345
|
||||||
LDA.w #$0F800>>1 : STA.w $2116
|
LDA.w #$0F800>>1 : STA.w $2116
|
||||||
|
|
||||||
SEP #$20
|
SEP #$20
|
||||||
|
|||||||
@@ -386,6 +386,7 @@ RTS
|
|||||||
;================================================================================
|
;================================================================================
|
||||||
DrawMapCounts:
|
DrawMapCounts:
|
||||||
LDA.l MapHUDMode : BEQ .done
|
LDA.l MapHUDMode : BEQ .done
|
||||||
|
LDA.l GenericKeys : BNE .done ; generator don't have an accurrate count of key doors in this case
|
||||||
|
|
||||||
; no map needed if this bit is set
|
; no map needed if this bit is set
|
||||||
BIT.b #$02 : BNE .draw_map_count
|
BIT.b #$02 : BNE .draw_map_count
|
||||||
|
|||||||
@@ -291,10 +291,10 @@ RTL
|
|||||||
REP #$30
|
REP #$30
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
; dungeon names
|
; dungeon names
|
||||||
LDA.w #$2D50
|
LDA.w #$2DA4
|
||||||
LDY.w #00
|
LDY.w #00
|
||||||
|
|
||||||
.next_dungeon_name
|
.next_dungeon_name
|
||||||
LDX.w .dungeon_positions,Y
|
LDX.w .dungeon_positions,Y
|
||||||
STA.w GFXStripes+$0646,X
|
STA.w GFXStripes+$0646,X
|
||||||
INC
|
INC
|
||||||
@@ -310,10 +310,10 @@ RTL
|
|||||||
STA.w GFXStripes+$0706,X
|
STA.w GFXStripes+$0706,X
|
||||||
|
|
||||||
DEX : DEX
|
DEX : DEX
|
||||||
BPL --
|
BPL --
|
||||||
|
|
||||||
LDA.l HudFlag : AND.w #$0020 : BEQ +
|
LDA.l HudFlag : AND.w #$0020 : BEQ +
|
||||||
JMP .maps_and_compasses
|
JMP .maps_and_compasses
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
+
|
+
|
||||||
LDA.l HUDDungeonItems : AND.w #$0001 : BNE +
|
LDA.l HUDDungeonItems : AND.w #$0001 : BNE +
|
||||||
|
|||||||
@@ -597,6 +597,8 @@ HUDMultiIndicator = $7EC790 ;
|
|||||||
HUDKeysObtained = $7EC7A2 ;
|
HUDKeysObtained = $7EC7A2 ;
|
||||||
HUDKeysSlash = $7EC7A4 ;
|
HUDKeysSlash = $7EC7A4 ;
|
||||||
HUDKeysTotal = $7EC7A6 ;
|
HUDKeysTotal = $7EC7A6 ;
|
||||||
|
HUDKeysExtraPlus = $7EC7E4 ;
|
||||||
|
HUDKeysExtraCount = $7EC7E6 ;
|
||||||
;
|
;
|
||||||
BigRAM = $7EC900 ; Big buffer of free ram (0x1F00)
|
BigRAM = $7EC900 ; Big buffer of free ram (0x1F00)
|
||||||
ItemGFXStack = $7ECB00 ; Pointers to source of decompressed item tiles deferred to NMI loading.
|
ItemGFXStack = $7ECB00 ; Pointers to source of decompressed item tiles deferred to NMI loading.
|
||||||
|
|||||||
+4
-4
@@ -1532,7 +1532,7 @@ db $19,$1A,$1B,$1C,$1D,$1E,$1F,$20
|
|||||||
db $21,$22,$11,$11,$10,$16,$16,$16
|
db $21,$22,$11,$11,$10,$16,$16,$16
|
||||||
db $16,$16,$11,$16,$16,$16,$15,$15
|
db $16,$16,$11,$16,$16,$16,$15,$15
|
||||||
db $15,$15,$15,$15,$15,$15,$15,$15
|
db $15,$15,$15,$15,$15,$15,$15,$15
|
||||||
db $15,$15,$16,$02,$09,$00,$00,$00
|
db $15,$15,$2E,$02,$09,$00,$00,$00
|
||||||
|
|
||||||
MusicShuffleTable:
|
MusicShuffleTable:
|
||||||
db $01,$02,$03,$04,$05,$06,$07,$08
|
db $01,$02,$03,$04,$05,$06,$07,$08
|
||||||
@@ -2686,9 +2686,9 @@ org $B0EFFF ; PC 0x186FFF
|
|||||||
BallNChainDungeon: ; Dungeon ID where ball n chain guard is located. Write
|
BallNChainDungeon: ; Dungeon ID where ball n chain guard is located. Write
|
||||||
db $02 ; $FF to count ball and chain item for collection stats.
|
db $02 ; $FF to count ball and chain item for collection stats.
|
||||||
|
|
||||||
;--------------------------------------------------------------------------------
|
org $B0F000
|
||||||
; 0x187000 - 18700F (unused)
|
ExtraChestKeys: ; PC 0x187000-0x18700F
|
||||||
;--------------------------------------------------------------------------------
|
db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
|
||||||
|
|
||||||
org $B0F010
|
org $B0F010
|
||||||
ChestKeys: ; PC 0x187010-0x18701F
|
ChestKeys: ; PC 0x187010-0x18701F
|
||||||
|
|||||||
Reference in New Issue
Block a user