update status screen icon examples
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
!ExtendedPlayerName = "$700500"
|
||||
|
||||
;FS prefix means file_select, since these defines and macros are specific to this screen
|
||||
!FS_INVENTORY_SWAP = "$70038C"
|
||||
!FS_INVENTORY_SWAP_2 = "$70038E"
|
||||
|
||||
|
||||
!FS_COLOR_BROWN = "$0000" ;(only used for: Shovel, hammer, powder)
|
||||
!FS_COLOR_RED = "$0400"
|
||||
@@ -12,6 +15,8 @@
|
||||
!FS_COLOR_BW = "$1C00"
|
||||
|
||||
macro fs_draw8x8(screenrow,screencol)
|
||||
;Note due to XKAS's screwy math this formula is misleading.
|
||||
;in normal math we have $1004+2*col+$40*row
|
||||
STA.w <screenrow>*$20+<screencol>*2+$1004
|
||||
endmacro
|
||||
macro fs_draw16x8(screenrow,screencol)
|
||||
@@ -19,73 +24,89 @@ macro fs_draw16x8(screenrow,screencol)
|
||||
INC A
|
||||
%fs_draw8x8(<screenrow>,<screencol>+1)
|
||||
endmacro
|
||||
macro fs_draw8x16block(screenrow,screencol)
|
||||
macro fs_draw8x16(screenrow,screencol)
|
||||
%fs_draw8x8(<screenrow>,<screencol>)
|
||||
!ADD #$0010
|
||||
%fs_draw8x8(<screenrow>+1,<screencol>)
|
||||
endmacro
|
||||
macro fs_draw16x16block(screenrow,screencol)
|
||||
macro fs_draw16x16(screenrow,screencol)
|
||||
%fs_draw16x8(<screenrow>,<screencol>)
|
||||
!ADD #$000F
|
||||
%fs_draw16x8(<screenrow>+1,<screencol>)
|
||||
endmacro
|
||||
macro fs_draw16x16strip(screenrow,screencol)
|
||||
%fs_draw16x8(<screenrow>,<screencol>)
|
||||
INC A
|
||||
%fs_draw16x8(<screenrow>+1,<screencol>)
|
||||
endmacro
|
||||
|
||||
|
||||
DrawPlayerFile:
|
||||
PHX : PHY : PHP
|
||||
|
||||
SEP #$10 ; 8-bit index registers
|
||||
PHX : PHY
|
||||
|
||||
LDA !ExtendedPlayerName+$00 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(6,3)
|
||||
%fs_draw8x16(6,3)
|
||||
LDA !ExtendedPlayerName+$02 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(6,5)
|
||||
%fs_draw8x16(6,5)
|
||||
LDA !ExtendedPlayerName+$04 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(6,7)
|
||||
%fs_draw8x16(6,7)
|
||||
LDA !ExtendedPlayerName+$06 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(6,9)
|
||||
%fs_draw8x16(6,9)
|
||||
|
||||
LDA !ExtendedPlayerName+$08 : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(9,3)
|
||||
%fs_draw8x16(9,3)
|
||||
LDA !ExtendedPlayerName+$0A : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(9,5)
|
||||
%fs_draw8x16(9,5)
|
||||
LDA !ExtendedPlayerName+$0C : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(9,7)
|
||||
%fs_draw8x16(9,7)
|
||||
LDA !ExtendedPlayerName+$0E : ORA.w #!FS_COLOR_BW
|
||||
%fs_draw8x16block(9,9)
|
||||
%fs_draw8x16(9,9)
|
||||
|
||||
; ;bow
|
||||
; LDA !INVENTORY_SWAP_2 : ORA.w #$0040 : BEQ +
|
||||
; LDX $700340 : BEQ ++
|
||||
; LDA.w #$0208|FS_COLOR_YELLOW ;Bow + silvers
|
||||
; %fs_draw16x16strip(2,12)
|
||||
; LDA.w #$020A|FS_COLOR_RED ;Bow + silvers (Arrow Tail)
|
||||
; %fs_draw8x8(3,12)
|
||||
; LDA.l !FS_INVENTORY_SWAP_2 : AND.w #$0040 : BEQ +
|
||||
; LDA.l $700340 : AND.w #$00FF : BEQ ++
|
||||
; LDA.w #$0201|!FS_COLOR_YELLOW : %fs_draw8x8(2,12)
|
||||
; LDA.w #$0204|!FS_COLOR_YELLOW : %fs_draw8x8(2,13)
|
||||
; LDA.w #$0203|!FS_COLOR_RED : %fs_draw8x8(3,12)
|
||||
; LDA.w #$0212|!FS_COLOR_YELLOW : %fs_draw8x8(3,13)
|
||||
; BRA .bow_end
|
||||
; ++
|
||||
; LDA #$020B|FS_COLOR_RED ; Silver arrows
|
||||
; BRA .draw_bow
|
||||
; LDA #$0214|!FS_COLOR_RED : %fs_draw8x8(2,13)
|
||||
; LDA.w #$0213|!FS_COLOR_RED : %fs_draw8x8(3,12)
|
||||
; BRA .bow_end
|
||||
; +
|
||||
; LDA.w #$0204|FS_COLOR_GRAY ; No Bow
|
||||
; LDX $700340 : BEQ .draw_bow
|
||||
; LDA.w #$0204|FS_COLOR_YELLOW ; Bow
|
||||
; .draw_bow
|
||||
; %fs_draw16x16strip(?,?)
|
||||
; LDA.l $700340 : AND.w #$00FF : BEQ ++
|
||||
; LDA.w #$0201|!FS_COLOR_YELLOW : %fs_draw16x16(2,12)
|
||||
; BRA .bow_end
|
||||
; ++
|
||||
; LDA.w #$0201|!FS_COLOR_GRAY : %fs_draw16x16(2,12)
|
||||
; .bow_end
|
||||
|
||||
;
|
||||
; ;hookshot
|
||||
; LDA.w #$0214|FS_COLOR_GRAY
|
||||
; LDX $700343 : BEQ +
|
||||
; LDA.w #$0214|FS_COLOR_RED
|
||||
; LDA.l $700342 : AND.w #$00FF : BEQ +
|
||||
; LDA.w #$0215|!FS_COLOR_RED
|
||||
; BRA .draw_hook
|
||||
; +
|
||||
; %fs_draw16x16strip(2,16)
|
||||
; LDA.w #$0215|!FS_COLOR_GRAY
|
||||
; .draw_hook
|
||||
; %fs_draw8x8(2,17)
|
||||
; !ADD.w #$0230-$0215 ;hookshot handle
|
||||
; %fs_draw8x8(3,16)
|
||||
;
|
||||
; ;powder
|
||||
; LDA !FS_INVENTORY_SWAP : AND.w #$0010 : BEQ +
|
||||
; LDA.w #$020A|!FS_COLOR_BROWN
|
||||
; BRA .draw_powder
|
||||
; +
|
||||
; LDA.w #$020A|!FS_COLOR_GRAY
|
||||
; .draw_powder
|
||||
; %fs_draw16x16(2,20)
|
||||
;
|
||||
; ;mushroom
|
||||
; LDA !FS_INVENTORY_SWAP : AND.w #$0020 : BEQ +
|
||||
; LDA.w #$0262|!FS_COLOR_RED
|
||||
; BRA .draw_shroom
|
||||
; +
|
||||
; LDA.w #$0262|!FS_COLOR_GRAY
|
||||
; .draw_shroom
|
||||
; %fs_draw16x16(2,22)
|
||||
|
||||
PLP : PLY : PLX
|
||||
PLY : PLX
|
||||
LDA.w #$0004 : STA $02 ; thing we wrote over
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user