let's dev 5/27/2017
free world maps medallions for swordless hooks for curtains for swordless
This commit is contained in:
@@ -26,7 +26,7 @@ org $3FFFFF ; <- 1FFFFF
|
||||
db #$00 ; expand file to 2mb
|
||||
|
||||
org $1FFFF8 ; timestamp rom
|
||||
dl #$20170525
|
||||
dl #$20170527
|
||||
|
||||
;================================================================================
|
||||
|
||||
|
||||
@@ -44,6 +44,10 @@ OnNewFile:
|
||||
LDA.l StartingTime+2 : STA $7EF454+2
|
||||
SEP #$20 ; set 8-bit accumulator
|
||||
;LDA #$FF : STA !RNG_ITEM_LOCK_IN ; reset rng item lock-in
|
||||
LDA.l SwordlessMode : BEQ +
|
||||
;LDA.b #$FF : STA $7EF2XX ; open aga tower curtain
|
||||
;LDA.b #$FF : STA $7EF2XX ; open skull woods curtain
|
||||
+
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
OnLinkDamaged:
|
||||
|
||||
13
hooks.asm
13
hooks.asm
@@ -657,6 +657,19 @@ NOP
|
||||
LoadNarrowObjectReturn:
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;================================================================================
|
||||
; Swordless Mode
|
||||
;--------------------------------------------------------------------------------
|
||||
org $07A49F ; <- 3A49F - Bank07.asm:5903 (LDA $7EF359 : INC A : AND.b #$FE : BEQ .cant_cast_play_sound) - Ether
|
||||
JSL.l CheckMedallionSword
|
||||
;--------------------------------------------------------------------------------
|
||||
org $07A574 ; <- 3A574 - Bank07.asm:6025 (LDA $7EF359 : INC A : AND.b #$FE : BEQ BRANCH_BETA) - Bombos
|
||||
JSL.l CheckMedallionSword
|
||||
;--------------------------------------------------------------------------------
|
||||
org $07A656 ; <- 3A656 - Bank07.asm:6133 (LDA $7EF359 : INC A : AND.b #$FE : BEQ BRANCH_BETA) - Quake
|
||||
JSL.l CheckMedallionSword
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;================================================================================
|
||||
; Medallion Tablets
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
@@ -179,7 +179,6 @@ FullInventoryExternal:
|
||||
!SHAME_CHEST = "$7EF416" ; ---s ----
|
||||
AddInventory:
|
||||
PHA : PHX : PHP
|
||||
|
||||
CPY.b #$0C : BNE + ; Blue Boomerang
|
||||
LDA !INVENTORY_SWAP : ORA #$80 : STA !INVENTORY_SWAP
|
||||
BRL .incrementCounts
|
||||
|
||||
@@ -260,6 +260,9 @@ AddReceivedItemExpandedGetItem:
|
||||
+ CMP.b #$A0 : !BLT + : CMP.b #$B0 : !BGE + ; Free Small Key
|
||||
AND #$0F : TAX
|
||||
LDA $7EF37C, X : INC : STA $7EF37C, X ; Increment Key Count
|
||||
TXA : ASL : CMP $040C : BNE ++
|
||||
LDA $7EF36F : INC : STA $7EF36F
|
||||
++
|
||||
BRL .done
|
||||
+
|
||||
.done
|
||||
|
||||
@@ -28,18 +28,37 @@ GetCrystalNumber:
|
||||
PLX
|
||||
RTL
|
||||
;================================================================================
|
||||
!INVENTORY_MAP = "$7EF368"
|
||||
OverworldMap_CheckObject:
|
||||
LDA $FFFFFF
|
||||
PHX
|
||||
LDA $FFFFFF
|
||||
LDA $7EF3C7 : CMP.b #$03 : BNE +
|
||||
;LW Map
|
||||
LDA.l MapMode : BEQ +++
|
||||
LDA.l !INVENTORY_MAP : AND.b #$01 : BNE +++
|
||||
PHX
|
||||
LDA.l .lw_map_offsets, X : TAX ; put map offset into X
|
||||
LDA.l !INVENTORY_MAP, X
|
||||
PLX
|
||||
AND.l .lw_map_masks, X : BNE +++
|
||||
BRL .fail
|
||||
+++
|
||||
LDA.l .lw_offsets, X
|
||||
BPL +++ : CLC : BRA .done : +++
|
||||
BPL +++ : CLC : BRA .done : +++ ; don't display master sword
|
||||
TAX : BRA ++
|
||||
+ : CMP.b #$07 : BNE .fail
|
||||
;DW Map
|
||||
LDA.l .dw_offsets, X : TAX
|
||||
BRA ++
|
||||
LDA.l MapMode : BEQ +++
|
||||
LDA.l !INVENTORY_MAP : AND.b #$02 : BNE +++
|
||||
PHX
|
||||
LDA.l .dw_map_offsets, X : TAX ; put map offset into X
|
||||
LDA.l !INVENTORY_MAP, X
|
||||
PLX
|
||||
AND.l .dw_map_masks, X : BNE +++
|
||||
BRL .fail
|
||||
+++
|
||||
LDA.l .dw_offsets, X
|
||||
TAX : BRA ++
|
||||
SEC
|
||||
PLX
|
||||
RTL
|
||||
@@ -64,6 +83,14 @@ RTL
|
||||
db $02, $0A, $03, $FF
|
||||
.dw_offsets
|
||||
db $06, $08, $0C, $0B, $07, $09, $05
|
||||
.lw_map_offsets
|
||||
db $01, $01, $00
|
||||
.dw_map_offsets
|
||||
db $01, $01, $00, $00, $00, $01, $00
|
||||
.lw_map_masks
|
||||
db $20, $10, $20, $00
|
||||
.dw_map_masks
|
||||
db $02, $04, $80, $10, $40, $01, $04
|
||||
;================================================================================
|
||||
SetLWDWMap:
|
||||
PHP
|
||||
|
||||
@@ -42,3 +42,30 @@ GetSmithSword:
|
||||
JSL ItemSet_SmithSword
|
||||
JMP.l Smithy_AlreadyGotSword
|
||||
;================================================================================
|
||||
CheckMedallionSword:
|
||||
;LDA $FFFFFF
|
||||
PHB : PHX : PHY
|
||||
LDA.l SwordlessMode : BEQ +
|
||||
LDA $8A : CMP.b #$70 : BNE ++
|
||||
LDA.l MireRequiredMedallion : TAX : LDA.l .medallion_type, X : CMP $0303 : BNE +
|
||||
LDA $7EF2F0 : AND.b #$20 : BNE +
|
||||
LDA.b #$08 : PHA : PLB ; set data bank to $08
|
||||
LDY.b #$02 : JSL.l Ancilla_CheckIfEntranceTriggered : BCS .permit ; misery mire
|
||||
BRA +
|
||||
++ : CMP.b #$47 : BNE ++
|
||||
LDA.l TRockRequiredMedallion : TAX : LDA.l .medallion_type, X : CMP $0303 : BNE +
|
||||
LDA $7EF2C7 : AND.b #$20 : BNE +
|
||||
LDA.b #$08 : PHA : PLB ; set data bank to $08
|
||||
LDY.b #$03 : JSL.l Ancilla_CheckIfEntranceTriggered : BCS .permit ; turtle rock
|
||||
++
|
||||
+
|
||||
PLY : PLX : PLB
|
||||
LDA $7EF359
|
||||
RTL
|
||||
.permit
|
||||
PLY : PLX : PLB
|
||||
LDA.b #$02 ; Pretend we have master sword
|
||||
RTL
|
||||
.medallion_type
|
||||
db #$0F, #$10, #$11
|
||||
;================================================================================
|
||||
46
tables.asm
46
tables.asm
@@ -75,7 +75,7 @@ PedestalMusicCheck:
|
||||
;db #$01 ; #$01 = Master Sword (default)
|
||||
org $0589B0 ; PC 0x289B0 ; sprite_master_sword.asm : 179
|
||||
PedestalSword:
|
||||
db #$01 ; #$01 = Master Sword (default)
|
||||
db #$6A ; #$01 = Master Sword (default)
|
||||
|
||||
org $308029 ; PC 0x180029
|
||||
SmithItemMode:
|
||||
@@ -141,6 +141,10 @@ org $30803E ; PC 0x18003E
|
||||
InvincibleGanon:
|
||||
db #$00 ; #$00 = Off (default) - #$01 = On
|
||||
;--------------------------------------------------------------------------------
|
||||
org $30803F ; PC 0x18003F
|
||||
SwordlessMode:
|
||||
db #$00 ; #$00 = Off (default) - #$01 = On
|
||||
;--------------------------------------------------------------------------------
|
||||
org $308080 ; PC 0x180080
|
||||
Upgrade5BombsRefill:
|
||||
db #$00
|
||||
@@ -347,36 +351,6 @@ db $69 ; Eastern
|
||||
db $7F ; Darkness
|
||||
db $00 ;
|
||||
db $00 ;
|
||||
; Values are as the table below.
|
||||
;--------------------------------------------------------------------------------
|
||||
; THIS ENTIRE TABLE IS DEPRECATED
|
||||
;org $0AC52D ; PC 0x5452D
|
||||
;CrystalNum_Darkness:
|
||||
;db $7F
|
||||
;
|
||||
;org $0AC527 ; PC 0x54527
|
||||
;CrystalNum_Swamp:
|
||||
;db $79
|
||||
;
|
||||
;org $0AC52C ; PC 0x5452C
|
||||
;CrystalNum_Skull:
|
||||
;db $6C ; 6C
|
||||
;
|
||||
;org $0AC52A ; PC 0x5452A
|
||||
;CrystalNum_Thieves:
|
||||
;db $6D
|
||||
;
|
||||
;org $0AC528 ; PC 0x54528
|
||||
;CrystalNum_Ice:
|
||||
;db $6E
|
||||
;
|
||||
;org $0AC529 ; PC 0x54529
|
||||
;CrystalNum_Mire:
|
||||
;db $6F
|
||||
;
|
||||
;org $0AC52B ; PC 0x5452B
|
||||
;CrystalNum_TRock:
|
||||
;db $7C ; 7C
|
||||
|
||||
;1 Indicator : 7F
|
||||
;2 Indicator : 79
|
||||
@@ -951,8 +925,10 @@ db $04
|
||||
;6A:Goal Item (Single/Triforce)
|
||||
;6B:Goal Item (Multi/Power Star)
|
||||
|
||||
;70 - Map of ---
|
||||
;71 - Map of ---
|
||||
;DO NOT PLACE FREE DUNGEON ITEMS WITHIN THEIR OWN DUNGEONS - USE THE NORMAL VARIANTS
|
||||
|
||||
;70 - Map of Light World
|
||||
;71 - Map of Dark World
|
||||
;72 - Map of Ganon's Tower
|
||||
;73 - Map of Turtle Rock
|
||||
;74 - Map of Thieves' Town
|
||||
@@ -968,8 +944,8 @@ db $04
|
||||
;7E - Map of Hyrule Castle
|
||||
;7F - Map of Sewers
|
||||
|
||||
;80 - Compass of ---
|
||||
;81 - Compass of ---
|
||||
;80 - Compass of Light World
|
||||
;81 - Compass of Dark World
|
||||
;82 - Compass of Ganon's Tower
|
||||
;83 - Compass of Turtle Rock
|
||||
;84 - Compass of Thieves' Town
|
||||
|
||||
Reference in New Issue
Block a user