Switch Hash over to use graphics from tracker
This commit is contained in:
@@ -222,11 +222,6 @@ GFX_HUD_Main:
|
||||
incbin c2e3e.gfx
|
||||
warnpc $31B800
|
||||
|
||||
org $31B800
|
||||
GFX_Hash_Alphabet:
|
||||
incbin hashalphabet.chr.gfx
|
||||
warnpc $31C001
|
||||
|
||||
org $31C000
|
||||
IcePalaceFloorGfx:
|
||||
incbin ice_palace_floor.bin
|
||||
|
||||
@@ -10,7 +10,6 @@ OnPrepFileSelect:
|
||||
LDA.b #$06 : STA $14 ; thing we wrote over
|
||||
RTL
|
||||
+
|
||||
JSL.l LoadAlphabetTiles
|
||||
JSL.l LoadAlphabetTilemap
|
||||
JSL.l LoadFullItemTiles
|
||||
RTL
|
||||
|
||||
197
hashalphabet.asm
197
hashalphabet.asm
@@ -1,89 +1,3 @@
|
||||
;--------------------------------------------------------------------------------
|
||||
; GetAlphabetPalette:
|
||||
; In: X = Alphabet Index
|
||||
; Out: A = Palette
|
||||
;--------------------------------------------------------------------------------
|
||||
GetAlphabetPalette:
|
||||
LDA.l .table, X
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
.table
|
||||
db $00, $0C, $04, $0C, $04, $00, $0C, $18
|
||||
db $08, $08, $08, $04, $00, $00, $0C, $08
|
||||
db $18, $0C, $18, $04, $04, $0C, $14, $00
|
||||
db $0C, $04, $08, $18, $04, $08, $04, $08
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
; GetAlphabetTileAddr:
|
||||
; Notes:
|
||||
; Assumes 16-bit accumulator
|
||||
;--------------------------------------------------------------------------------
|
||||
GetAlphabetTileAddr:
|
||||
ASL #6
|
||||
!ADD.w #$B800 ; $31:B800
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
!ALPHA_TILE_WIDTH = "#$40"
|
||||
!ALPHA_VRAM_DEST_BASE = "#$5A00"
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
; LoadAlphabetTiles
|
||||
; In:
|
||||
; $00 - Tile 0
|
||||
; $01 - Tile 1
|
||||
; $02 - Tile 2
|
||||
; $03 - Tile 3
|
||||
; $04 - Tile 4
|
||||
;--------------------------------------------------------------------------------
|
||||
LoadAlphabetTiles:
|
||||
PHA : PHX
|
||||
LDA $4300 : PHA ; preserve DMA parameters
|
||||
LDA $4301 : PHA ; preserve DMA parameters
|
||||
LDA $4302 : PHA ; preserve DMA parameters
|
||||
LDA $4303 : PHA ; preserve DMA parameters
|
||||
LDA $4304 : PHA ; preserve DMA parameters
|
||||
LDA $4305 : PHA ; preserve DMA parameters
|
||||
LDA $4306 : PHA ; preserve DMA parameters
|
||||
;--------------------------------------------------------------------------------
|
||||
LDA.b #$80 : STA $2115 ; write read increment on $2119
|
||||
LDA.b #$01 : STA $4300 ; set DMA transfer direction A -> B, bus A auto increment, double-byte mode
|
||||
LDA.b #$18 : STA $4301 ; set bus B destination to VRAM register
|
||||
|
||||
LDA.b !ALPHA_VRAM_DEST_BASE>>1 : STA $2116 ; write VRAM destination address
|
||||
LDA.b !ALPHA_VRAM_DEST_BASE>>9 : STA $2117 ; write VRAM destination address
|
||||
|
||||
LDA.b #GFX_Hash_Alphabet>>16 : STA $4304 ; set bus A source bank
|
||||
|
||||
LDA $2100 : PHA : LDA.b #$80 : STA $2100 ; save screen state & turn screen off
|
||||
LDX.b #$00 : -
|
||||
|
||||
LDA.l SeedHash, X
|
||||
REP #$20 ; set 16-bit accumulator
|
||||
AND.w #$001F ; mask to alphabet of 32
|
||||
JSL.l GetAlphabetTileAddr : STA $4302 ; set bus A source address to SRAM
|
||||
|
||||
SEP #$20 ; set 8-bit accumulator
|
||||
|
||||
LDA.b !ALPHA_TILE_WIDTH : STA $4305 : STZ $4306 ; set transfer size to 0x40
|
||||
LDA #$01 : STA $420B ; begin DMA transfer
|
||||
|
||||
INX
|
||||
CPX.b #$05 : !BLT -
|
||||
PLA : STA $2100 ; put screen back however it was before
|
||||
;--------------------------------------------------------------------------------
|
||||
PLA : STA $4306 ; restore DMA parameters
|
||||
PLA : STA $4305 ; restore DMA parameters
|
||||
PLA : STA $4304 ; restore DMA parameters
|
||||
PLA : STA $4303 ; restore DMA parameters
|
||||
PLA : STA $4302 ; restore DMA parameters
|
||||
PLA : STA $4301 ; restore DMA parameters
|
||||
PLA : STA $4300 ; restore DMA parameters
|
||||
PLX : PLA
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
|
||||
;--------------------------------------------------------------------------------
|
||||
;Hash Alphabet
|
||||
!ALPHA_BOW = "#$0000"
|
||||
@@ -124,36 +38,34 @@ RTL
|
||||
!BIGRAM = "$7EC900";
|
||||
;--------------------------------------------------------------------------------
|
||||
LoadAlphabetTilemap:
|
||||
PHA : PHX : PHY : PHP
|
||||
PHB : PHA : PHX : PHY : PHP
|
||||
PHK : PLB
|
||||
SEP #$10 ; 8-bit index registers
|
||||
REP #$20 ; 16-bit accumulator
|
||||
|
||||
|
||||
LDX.b #$00 : -
|
||||
LDA FileSelect_PlayerSelectText_Top, X
|
||||
LDA.w FileSelect_PlayerSelectText_Top, X
|
||||
STA !BIGRAM, X
|
||||
INX #2
|
||||
CPX #128 : !BLT -
|
||||
|
||||
|
||||
SEP #$20 ; 8-bit accumulator
|
||||
|
||||
|
||||
LDY.b #00
|
||||
LDX.b #$00 : -
|
||||
PHX : TYX : LDA.l SeedHash, X : PLX
|
||||
AND.b #$1F ; mask to alphabet of 32
|
||||
PHX : TAX : JSL.l GetAlphabetPalette : PLX
|
||||
ORA.b #$01
|
||||
|
||||
STA !BIGRAM+28+1, X
|
||||
STA !BIGRAM+28+1+2, X
|
||||
STA !BIGRAM+28+64+1, X
|
||||
STA !BIGRAM+28+64+1+2, X
|
||||
INX #6 : INY
|
||||
AND.w #$001F ; mask to alphabet of 32
|
||||
|
||||
ASL #3 : PHY : TAY
|
||||
LDA.w HashAlphabetTiles,Y : STA !BIGRAM+28, X
|
||||
LDA.w HashAlphabetTiles+2,Y : STA !BIGRAM+28+2, X
|
||||
LDA.w HashAlphabetTiles+4,Y : STA !BIGRAM+28+64, X
|
||||
LDA.w HashAlphabetTiles+6,Y : STA !BIGRAM+28+64+2, X
|
||||
PLY : INX #6 : INY
|
||||
CPX #25 : !BLT -
|
||||
|
||||
|
||||
|
||||
SEP #$20 ; 8-bit accumulator
|
||||
|
||||
JSR DMAAlphabetTilemap
|
||||
PLP : PLY : PLX : PLA
|
||||
PLP : PLY : PLX : PLA : PLB
|
||||
RTL
|
||||
;--------------------------------------------------------------------------------
|
||||
; DMAAlphabetTilemap:
|
||||
@@ -171,16 +83,16 @@ DMAAlphabetTilemap:
|
||||
LDA.b #$01 : STA $4300 ; set DMA transfer direction A -> B, bus A auto increment, double-byte mode
|
||||
LDA.b #$80 : STA $2115 ; write read increment on $2119
|
||||
LDA.b #$18 : STA $4301 ; set bus B destination to VRAM register
|
||||
|
||||
|
||||
LDA.b #$60 : STA $2116 ; write VRAM destination address
|
||||
STA $2117 ; write VRAM destination address
|
||||
|
||||
LDA.b #!BIGRAM : STA $4302 ; set bus A source address to WRAM
|
||||
LDA.b #!BIGRAM>>8 : STA $4303 ; set bus A source address to WRAM
|
||||
LDA.b #!BIGRAM>>16 : STA $4304 ; set bus A source bank
|
||||
|
||||
|
||||
LDA.b #$80 : STA $4305 : STZ $4306 ; set transfer size to 0x40
|
||||
|
||||
|
||||
LDA $2100 : PHA : LDA.b #$80 : STA $2100 ; save screen state & turn screen off
|
||||
LDA #$01 : STA $420B ; begin DMA transfer
|
||||
PLA : STA $2100 ; put screen back however it was before
|
||||
@@ -195,6 +107,75 @@ DMAAlphabetTilemap:
|
||||
PLX : PLA
|
||||
RTS
|
||||
;--------------------------------------------------------------------------------
|
||||
HashAlphabetTilesWithBlank:
|
||||
;BLANK
|
||||
dw #$0186|!FS_COLOR_BW, #$0186|!FS_COLOR_BW, #$0196|!FS_COLOR_BW, #$0196|!FS_COLOR_BW
|
||||
HashAlphabetTiles:
|
||||
;BOW
|
||||
dw #$0201|!FS_COLOR_YELLOW, #$0202|!FS_COLOR_YELLOW, #$0211|!FS_COLOR_YELLOW, #$0212|!FS_COLOR_YELLOW
|
||||
;BOOM
|
||||
dw #$0205|!FS_COLOR_BLUE, #$0206|!FS_COLOR_BLUE, #$0200|!FS_COLOR_BW, #$0216|!FS_COLOR_BLUE
|
||||
;HOOK
|
||||
dw #$0200|!FS_COLOR_RED, #$0215|!FS_COLOR_RED, #$0230|!FS_COLOR_RED, #$0200|!FS_COLOR_BW
|
||||
;BOMB
|
||||
dw #$020C|!FS_COLOR_BLUE, #$020D|!FS_COLOR_BLUE, #$021C|!FS_COLOR_BLUE, #$021C|!FS_COLOR_BLUE|!FS_HFLIP
|
||||
;SHROOM
|
||||
dw #$0262|!FS_COLOR_RED, #$0263|!FS_COLOR_RED, #$0272|!FS_COLOR_RED, #$0273|!FS_COLOR_RED
|
||||
;POWDER
|
||||
dw #$020A|!FS_COLOR_BROWN, #$020B|!FS_COLOR_BROWN, #$021A|!FS_COLOR_BROWN, #$021B|!FS_COLOR_BROWN
|
||||
;ROD
|
||||
dw #$0220|!FS_COLOR_BLUE, #$0221|!FS_COLOR_BLUE, #$0230|!FS_COLOR_BLUE, #$0231|!FS_COLOR_BLUE
|
||||
;PENDANT
|
||||
dw #$0285|!FS_COLOR_GREEN, #$0286|!FS_COLOR_GREEN, #$0295|!FS_COLOR_GREEN, #$0296|!FS_COLOR_GREEN
|
||||
;BOMBOS
|
||||
dw #$0207|!FS_COLOR_YELLOW, #$0217|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP, #$0217|!FS_COLOR_YELLOW, #$0207|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP
|
||||
;ETHER
|
||||
dw #$0208|!FS_COLOR_YELLOW, #$0218|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP, #$0218|!FS_COLOR_YELLOW, #$0208|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP
|
||||
;QUAKE
|
||||
dw #$0209|!FS_COLOR_YELLOW, #$0219|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP, #$0219|!FS_COLOR_YELLOW, #$0209|!FS_COLOR_YELLOW|!FS_HFLIP|!FS_VFLIP
|
||||
;LAMP
|
||||
dw #$022C|!FS_COLOR_RED, #$022C|!FS_COLOR_RED|!FS_HFLIP, #$023C|!FS_COLOR_RED, #$023D|!FS_COLOR_RED
|
||||
;HAMMER
|
||||
dw #$0222|!FS_COLOR_BROWN, #$0223|!FS_COLOR_BROWN, #$0232|!FS_COLOR_BROWN, #$0233|!FS_COLOR_BROWN
|
||||
;SHOVEL
|
||||
dw #$0224|!FS_COLOR_BROWN, #$0225|!FS_COLOR_BROWN, #$0234|!FS_COLOR_BROWN, #$0235|!FS_COLOR_BROWN
|
||||
;FLUTE
|
||||
dw #$0226|!FS_COLOR_BLUE, #$0227|!FS_COLOR_BLUE, #$0236|!FS_COLOR_BLUE, #$0237|!FS_COLOR_BLUE
|
||||
;NET
|
||||
dw #$0228|!FS_COLOR_YELLOW, #$0229|!FS_COLOR_YELLOW, #$0238|!FS_COLOR_YELLOW, #$0239|!FS_COLOR_YELLOW
|
||||
;BOOK
|
||||
dw #$022A|!FS_COLOR_GREEN, #$022B|!FS_COLOR_GREEN, #$023A|!FS_COLOR_GREEN, #$023B|!FS_COLOR_GREEN
|
||||
;BOTTLE
|
||||
dw #$0240|!FS_COLOR_BW, #$0241|!FS_COLOR_BW, #$0250|!FS_COLOR_BW, #$0251|!FS_COLOR_BW
|
||||
;POTION
|
||||
dw #$0242|!FS_COLOR_GREEN, #$0242|!FS_COLOR_GREEN|!FS_HFLIP, #$0252|!FS_COLOR_GREEN, #$0253|!FS_COLOR_GREEN
|
||||
;CANE
|
||||
dw #$021D|!FS_COLOR_RED, #$021E|!FS_COLOR_RED, #$022D|!FS_COLOR_RED, #$022E|!FS_COLOR_RED
|
||||
;CAPE
|
||||
dw #$0248|!FS_COLOR_RED, #$0249|!FS_COLOR_RED, #$0258|!FS_COLOR_RED, #$0259|!FS_COLOR_RED
|
||||
;MIRROR
|
||||
dw #$024A|!FS_COLOR_BLUE, #$024B|!FS_COLOR_BLUE, #$025A|!FS_COLOR_BLUE, #$025B|!FS_COLOR_BLUE
|
||||
;BOOTS
|
||||
dw #$024C|!FS_COLOR_BOOTS, #$024D|!FS_COLOR_BOOTS, #$025C|!FS_COLOR_BOOTS, #$025D|!FS_COLOR_BOOTS
|
||||
;GLOVES
|
||||
dw #$024E|!FS_COLOR_BROWN, #$024F|!FS_COLOR_BROWN, #$025E|!FS_COLOR_BROWN, #$025F|!FS_COLOR_BROWN
|
||||
;FLIPPERS
|
||||
dw #$020E|!FS_COLOR_BLUE, #$020F|!FS_COLOR_BLUE, #$021F|!FS_COLOR_BLUE|!FS_HFLIP, #$021F|!FS_COLOR_BLUE
|
||||
;PEARL
|
||||
dw #$0264|!FS_COLOR_RED, #$0265|!FS_COLOR_RED, #$0274|!FS_COLOR_RED, #$0275|!FS_COLOR_RED
|
||||
;SHIELD
|
||||
dw #$026D|!FS_COLOR_YELLOW, #$026E|!FS_COLOR_YELLOW, #$027D|!FS_COLOR_YELLOW, #$027E|!FS_COLOR_YELLOW
|
||||
;TUNIC
|
||||
dw #$026F|!FS_COLOR_GREEN, #$026F|!FS_COLOR_GREEN|!FS_HFLIP, #$027F|!FS_COLOR_GREEN, #$027F|!FS_COLOR_GREEN|!FS_HFLIP
|
||||
;HEART
|
||||
dw #$0281|!FS_COLOR_RED, #$0281|!FS_COLOR_RED|!FS_HFLIP, #$0291|!FS_COLOR_RED, #$0291|!FS_COLOR_RED|!FS_HFLIP
|
||||
;MAP
|
||||
dw #$0282|!FS_COLOR_YELLOW, #$0283|!FS_COLOR_YELLOW, #$0292|!FS_COLOR_YELLOW, #$0293|!FS_COLOR_YELLOW
|
||||
;COMPASS
|
||||
dw #$0284|!FS_COLOR_RED, #$0284|!FS_COLOR_RED|!FS_HFLIP, #$0294|!FS_COLOR_RED, #$0294|!FS_COLOR_RED|!FS_HFLIP
|
||||
;KEY
|
||||
dw #$022F|!FS_COLOR_YELLOW|!FS_HFLIP, #$022F|!FS_COLOR_YELLOW, #$023E|!FS_COLOR_YELLOW, #$023F|!FS_COLOR_YELLOW
|
||||
;--------------------------------------------------------------------------------
|
||||
FileSelect_PlayerSelectText_Top:
|
||||
;db $60, $62, $00, $37
|
||||
dw !FSTILE_SPACE, !FSTILE_SPACE
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
<EFBFBD><EFBFBD><EFBFBD>Η<EFBFBD>€<EFBFBD>Έ<EFBFBD>ώΟ<EFBFBD>η<EFBFBD>σ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>α<EFBFBD>ρ<EFBFBD>1<EFBFBD>-<2D>ί<EFBFBD>§<EFBFBD>gϋώ<CF8B>ύΞϋ<CE9E>χϋοσ<CEBF>χ<EFBFBD><CF87><EFBFBD><EFBFBD>γ<EFBFBD>σσ?ω<>ωΟωοσ<CEBF><CF83><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΐ<EFBFBD><CE90>Ώ<EFBFBD>€<EFBFBD>ΐ<EFBFBD><CE90><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><0F>η<EFBFBD>χχχ<1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>χ<EFBFBD>χ<EFBFBD>χ<EFBFBD>χ<EFBFBD>χ<EFBFBD>χ<EFBFBD><CF87>Ο<EFBFBD><CE9F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>α<EFBFBD>ω<EFBFBD>ε<EFBFBD>ύ<EFBFBD>O<EFBFBD><EFBFBD><EFBFBD>ό<EFBFBD>ψ<EFBFBD>υ<EFBFBD>οσίηΏΟ<CE8F><CE9F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ώύ<CF8E>ς<EFBFBD>αχθ<CF87>ΐ<EFBFBD><CE90><EFBFBD><EFBFBD>m<EFBFBD>sΏ<73>O<EFBFBD>‡Ο7ηοΠοΠ<CEBF>ΐ<EFBFBD>ΰ<EFBFBD>ΰ<EFBFBD>π<EFBFBD>ό<EFBFBD><CF8C>χχ<0B><03><07><07><0F>?<3F><><EFBFBD><EFBFBD><EFBFBD>ώ<EFBFBD>ψ<EFBFBD>π<EFBFBD>π<EFBFBD>ΰ<EFBFBD>ΐ<EFBFBD>€<EFBFBD><E282AC><EFBFBD><EFBFBD>ΏOο<>wοη<19>€<EFBFBD>€<EFBFBD>ΐϋ<CE90>π<EFBFBD>π<EFBFBD>ψ<EFBFBD><CF88><EFBFBD><EFBFBD><01>a<EFBFBD>σ<1F><0F><0F><1F><><EFBFBD><EFBFBD><EFBFBD>ύϋ½σΎωΧόγ<CF8C>Φ<EFBFBD>Ώω<CE8F><CF89>ί»Ο·Ω<C2B7><03>η<1F><>ηΏπ<CE8F>ΰ<EFBFBD>ΰ<EFBFBD>ΰ<EFBFBD>ΰ<EFBFBD>π<EFBFBD>ό<EFBFBD><CF8C><EFBFBD>s‡yΗ9Ο1<CE9F><01><03><0F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ώ<EFBFBD>ύ<EFBFBD>ύ<EFBFBD>ώ<EFBFBD><CF8E><EFBFBD><EFBFBD>Αέγέ£γ<C2A3>w‰oΧ<6F><CEA7>ό<EFBFBD>ψ<EFBFBD>υ<EFBFBD>οσίηΏΟ<CE8F><CE9F><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ψ<EFBFBD>χ<EFBFBD>ο<EFBFBD>ξ<EFBFBD>ρ<EFBFBD><CF81><EFBFBD><1F>o<EFBFBD>χ<EFBFBD>{<7B>»<EFBFBD>έ<EFBFBD>έ<EFBFBD>ϋ<EFBFBD>ηωΗψΞραήχΘ<CF87>α<EFBFBD><CEB1>έ<EFBFBD>½<EFBFBD>½<EFBFBD>½<EFBFBD>Ϋ<EFBFBD>η<EFBFBD><CEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ό<EFBFBD>π<EFBFBD>ιφΩζΫδΊΕΌΓ<CE8C><CE93>?<3F>Ο?χϋƒa<7F>9Η<39>γ†ωΑώίΰοπσόό<CF8C><CF8C><EFBFBD>=Γ]£Ϋ'›g—o<0F>?<3F><><EFBFBD><EFBFBD><EFBFBD>ό<EFBFBD>ςύξράγάγΈΗΈΗ<CE88><CE97>?<3F>Ο?χϋϋύ
|
||||
Reference in New Issue
Block a user