diff --git a/Masks/deku_link.bin b/Masks/deku_link.bin new file mode 100644 index 0000000..550fcb8 Binary files /dev/null and b/Masks/deku_link.bin differ diff --git a/Masks/deku_mask.asm b/Masks/deku_mask.asm index 7c8f340..62e7279 100644 --- a/Masks/deku_mask.asm +++ b/Masks/deku_mask.asm @@ -1,152 +1,117 @@ -; Hooks : +; ; Hooks : incsrc "../Sprites/sprite_functions_hooks.asm" -org $07A666 -Deku_Entry: -{ - LDA.b #$20 : STA.w $012F - JSL GetRandomInt : AND #$1F : !ADD #$60 : STA $BC - STA $7EC178 - JSL Palette_ArmorAndGloves - STZ $0710 - RTS -} +; org $07A666 +; Deku_Entry: +; { +; LDA.b #$20 : STA $BC +; STA $7EC178 +; JSL Palette_ArmorAndGloves +; STZ $0710 +; RTS +; } org $008A01 -LDA $BC + LDA $BC -org $1BEDF9 -JSL Palette_ArmorAndGloves ; 4bytes -RTL ; 1byte -NOP #$01 +; org $1BEDF9 +; JSL Palette_ArmorAndGloves ; 4bytes +; RTL ; 1byte +; NOP #$01 -org $1BEE1B -JSL Palette_ArmorAndGloves_part_two -RTL +; org $1BEE1B +; JSL Palette_ArmorAndGloves_part_two +; RTL -org $06F40C -JSL change_sprite : NOP #$01 ; LDA $0E20, X : CMP.b #$61 +; org $06F40C +; JSL change_sprite : NOP #$01 ; LDA $0E20, X : CMP.b #$61 -; Code : -org $308000 -Palette_ArmorAndGloves: -{ - LDA.b #$10 - STA $BC ; Load Original Sprite Location - REP #$21 - LDA $7EF35B - JSL $1BEDFF ; Read Original Palette Code - RTL - .part_two - SEP #$30 - REP #$30 - LDA $7EF354 - JSL $1BEE21 ; Read Original Palette Code - RTL +; ; ; Code : +; org $308000 +; Palette_ArmorAndGloves: +; { +; LDA.b #$10 +; STA $BC ; Load Original Sprite Location +; REP #$21 +; LDA $7EF35B +; JSL $1BEDFF ; Read Original Palette Code +; RTL +; .part_two +; SEP #$30 +; REP #$30 +; LDA $7EF354 +; JSL $1BEE21 ; Read Original Palette Code +; RTL - PHX : PHY : PHA - ; Load armor palette - PHB : PHK : PLB +; PHX : PHY : PHA +; ; Load armor palette +; PHB : PHK : PLB - REP #$20 +; REP #$20 - ; Check what Link's armor value is. - LDA $7EF35B : AND.w #$00FF : TAX +; ; Check what Link's armor value is. +; LDA $7EF35B : AND.w #$00FF : TAX - LDA $1BEC06, X : AND.w #$00FF : ASL A : ADC.w #$F000 : STA $00 - REP #$10 +; LDA $1BEC06, X : AND.w #$00FF : ASL A : ADC.w #$F000 : STA $00 +; REP #$10 - LDA.w #$01E2 ; Target SP-7 (sprite palette 6) - LDX.w #$000E ; Palette has 15 colors +; LDA.w #$01E2 ; Target SP-7 (sprite palette 6) +; LDX.w #$000E ; Palette has 15 colors - TXY : TAX +; TXY : TAX - LDA.b $BC : AND #$00FF : STA $02 +; LDA.b $BC : AND #$00FF : STA $02 -.loop +; .loop - LDA [$00] : STA $7EC300, X : STA $7EC500, X +; LDA [$00] : STA $7EC300, X : STA $7EC500, X - INC $00 : INC $00 +; INC $00 : INC $00 - INX #2 +; INX #2 - DEY : BPL .loop +; DEY : BPL .loop - SEP #$30 +; SEP #$30 - PLB - INC $15 - PLA : PLY : PLX - RTL -} +; PLB +; INC $15 +; PLA : PLY : PLX +; RTL +; } -change_sprite: -{ - JSL GetRandomInt : AND #$1F : !ADD #$60 : STA $BC - STA $7EC178 - JSL Palette_ArmorAndGloves - STZ $0710 +; change_sprite: +; { +; JSL GetRandomInt : AND #$1F : !ADD #$60 : STA $BC +; STA $7EC178 +; JSL Palette_ArmorAndGloves +; STZ $0710 - LDA $0E20, X : CMP.b #$61 ; Restored Code Bank06.asm(5967) ; LDA $0E20, X : CMP.b #$61 : BNE .not_beamos_laser +; LDA $0E20, X : CMP.b #$61 ; Restored Code Bank06.asm(5967) ; LDA $0E20, X : CMP.b #$61 : BNE .not_beamos_laser - RTL -} +; RTL +; } ; changing the DP address $BC would now* change the bank link's gfx is read from ; ============================================================================= -; *$3A64B-$3A6BD JUMP LOCATION -; LinkItem_Quake: -; { -; JSR Link_CheckNewY_ButtonPress : BCC .BRANCH_ALPHA - -; LDA $3A : AND.b #$BF : STA $3A - -; LDA $6C : BNE .BRANCH_BETA - -; LDA $0FFC : BNE .BRANCH_BETA - -; LDA $0403 : AND.b #$80 : BNE .BRANCH_BETA - -; LDA $7EF359 : INC A : AND.b #$FE : BEQ .BRANCH_BETA - -; LDA $7EF3D3 : BEQ .BRANCH_GAMMA - -; LDA $7EF3CC : CMP.b #$0D : BNE .BRANCH_GAMMA -; .BRANCH_BETA: +org $07B073 ; *$3B073-$3B086 LOCAL +Link_CheckNewY_ButtonPress: -; BRL .BRANCH_$3A955 +org $07A64B +LinkItem_Quake: + JSR Link_CheckNewY_ButtonPress : BCC .return -; .BRANCH_GAMMA: + LDA $6C : BNE .return ; doorway -; LDA $0C4A : ORA $0C4B : ORA $0C4C : BNE .BRANCH_ALPHA - -; LDX.b #$01 - -; JSR LinkItem_EvaluateMagicCost : BCC .BRANCH_ALPHA - -; LDA.b #$0A : STA $5D - -; LDA.b #$01 : TSB $50 - -; LDA $A6CA : STA $3D - -; LDA $A6BE : STA $031C - -; STZ $031D -; STZ $0324 -; STZ $46 - -; LDA.b #$28 : STA $0362 : STA $0363 - -; STZ $0364 - -; LDA.b #$23 : JSR Player_DoSfx3 + LDA $0FFC : BNE .return ; cantopen menu -; .BRANCH_ALPHA: + LDA #$40 : STA $BC -; RTS -; } \ No newline at end of file + .return +RTS + +org $408000 +incbin deku_link.bin \ No newline at end of file diff --git a/Oracle_main.asm b/Oracle_main.asm index e38b4bc..09272bc 100644 --- a/Oracle_main.asm +++ b/Oracle_main.asm @@ -12,7 +12,6 @@ ; Lost Sea Area Combo ; ;=========================================================== - namespace Oracle { print "" @@ -45,6 +44,9 @@ namespace Oracle incsrc "Debug/debug.asm" print "End of Debug/debug.asm ", pc + + incsrc "Masks/deku_mask.asm" + print "End of Masks/deku_mask.asm ", pc print "" print "Finished applying patches"