itch web build and threes

This commit is contained in:
Shoofle 2025-10-27 11:51:53 -04:00
parent 105f7a2568
commit ea0722bd79
26 changed files with 1935 additions and 341 deletions

View File

@ -156,7 +156,7 @@ Cards:
Card Cups01Ace
Card Cups02
Card Cups03
Card Cups01Ace
Card Cups04
Card Cups01Ace
Card Cups01Ace
Card Cups01Ace
@ -171,7 +171,7 @@ Cards:
Card Swords01Ace
Card Swords02
Card Swords03
Card Swords01Ace
Card Swords04
Card Swords01Ace
Card Swords01Ace
Card Swords01Ace
@ -186,7 +186,7 @@ Cards:
Card Coins01Ace
Card Coins02
Card Coins03
Card Coins01Ace
Card Coins04
Card Coins01Ace
Card Coins01Ace
Card Coins01Ace
@ -201,7 +201,7 @@ Cards:
Card Wands01Ace
Card Wands02
Card Wands03
Card Wands01Ace
Card Wands04
Card Wands01Ace
Card Wands01Ace
Card Wands01Ace
@ -253,6 +253,7 @@ cups_start:
INCLUDE "cups01ace.inc"
INCLUDE "cups02.inc"
INCLUDE "cups03.inc"
INCLUDE "cups04.inc"
INCLUDE "cups11page.inc"
INCLUDE "cups12knight.inc"
INCLUDE "cups13queen.inc"
@ -266,6 +267,7 @@ swords_start:
INCLUDE "swords01ace.inc"
INCLUDE "swords02.inc"
INCLUDE "swords03.inc"
INCLUDE "swords04.inc"
INCLUDE "swords11page.inc"
INCLUDE "swords12knight.inc"
INCLUDE "swords13queen.inc"
@ -278,6 +280,7 @@ coins_start:
INCLUDE "coins01ace.inc"
INCLUDE "coins02.inc"
INCLUDE "coins03.inc"
INCLUDE "coins04.inc"
INCLUDE "coins11page.inc"
INCLUDE "coins12knight.inc"
INCLUDE "coins13queen.inc"
@ -291,6 +294,7 @@ wands_start:
INCLUDE "wands01ace.inc"
INCLUDE "wands02.inc"
INCLUDE "wands03.inc"
INCLUDE "wands04.inc"
INCLUDE "wands11page.inc"
INCLUDE "wands12knight.inc"
INCLUDE "wands13queen.inc"

View File

@ -4,77 +4,82 @@
KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$78,$78
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$03,$07,$07,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0
db $00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
db $fc,$fc,$fe,$fe,$fe,$fe,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $0f,$0f,$0f,$0f,$1e,$1e,$1f,$1f,$1f,$1f,$0f,$0f,$06,$06,$00,$00
db $c3,$c3,$01,$01,$01,$01,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01
db $e0,$e0,$e0,$e0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e0
db $01,$01,$01,$01,$00,$00,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00
db $fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$03,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1e,$1e,$3e,$3e
db $07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $e0,$e0,$e0,$e0,$e1,$e1,$e3,$e3,$e7,$e7,$ef,$ef,$ef,$ef,$ef,$ef
db $7e,$7e,$fe,$fe,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0,$c0,$c0
db $f7,$f7,$f7,$f7,$77,$77,$37,$37,$17,$17,$07,$07,$17,$17,$37,$37
db $ef,$ef,$ef,$ef,$ee,$ee,$ec,$ec,$e8,$e8,$e0,$e0,$e8,$e8,$ec,$ec
db $80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$3f,$3f
db $77,$77,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$e7,$e7
db $7f,$7f,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0
db $c7,$c7,$87,$87,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $fc,$fc,$7c,$7c,$fc,$fc,$78,$78,$78,$78,$78,$78,$78,$7b,$38,$3b
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$e3
db $00,$80,$00,$86,$00,$8f,$00,$8f,$00,$9f,$00,$bf,$00,$bf,$00,$bf
db $00,$00,$00,$00,$00,$01,$00,$9f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $03,$03,$07,$07,$07,$87,$0f,$ef,$0f,$ef,$1f,$df,$3e,$fe,$3c,$bd
db $e0,$e3,$c0,$cf,$80,$9f,$80,$bf,$80,$bf,$00,$7f,$00,$ff,$00,$ff
db $78,$7b,$78,$7b,$78,$7b,$78,$7b,$78,$7b,$38,$3b,$78,$7b,$78,$7b
db $60,$ed,$00,$cd,$00,$c1,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ef,$00,$ff,$00,$fe,$00,$fe
db $7c,$fd,$78,$fb,$78,$fb,$78,$7b,$f8,$fb,$f0,$f7,$f0,$f7,$f0,$f7
db $00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$00,$00
db $07,$07,$07,$07,$07,$07,$07,$07,$c7,$c7,$ff,$ff,$ff,$ff,$ff,$ff
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e3,$e3,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$80,$80,$00,$00
db $03,$03,$03,$0b,$03,$1b,$01,$3d,$00,$3e,$00,$1f,$00,$1f,$00,$3f
db $c0,$c0,$c0,$c0,$c0,$dc,$80,$be,$00,$7e,$00,$ff,$00,$ff,$00,$ff
db $00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$07,$00,$1f,$00,$3f,$00,$ff
db $00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$e0
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$e0,$00,$f9,$00,$ff,$00,$ff
db $00,$07,$00,$1f,$00,$3f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $78,$7b,$70,$73,$70,$77,$70,$77,$30,$37,$70,$77,$70,$77,$70,$77
db $00,$c0,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$1f,$00,$1f,$00,$1f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f
db $00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $f0,$f7,$f0,$f7,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $70,$77,$70,$77,$30,$b7,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb
db $70,$77,$70,$77,$70,$77,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f
db $00,$fe,$00,$fe,$00,$fc,$00,$fc,$00,$f8,$00,$f8,$00,$f8,$00,$f8
db $00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$07
db $38,$bb,$38,$bb,$18,$db,$18,$db,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd
db $60,$6f,$60,$6f,$60,$6f,$20,$af,$00,$df,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$f0,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$e0,$00,$c0
db $00,$07,$00,$03,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00
db $1c,$dd,$1c,$dd,$0c,$ed,$0c,$ed,$0c,$ed,$08,$eb,$00,$f7,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc
db $00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$7f,$00,$7f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$0f,$00,$07
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$f0,$00,$c0
db $00,$f8,$00,$f0,$00,$e0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$1f,$00,$07,$00,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f6,$00,$ff
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f
db $00,$03,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$bf,$00,$bf,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$60,$67,$60,$6f
db $60,$6f,$00,$ff,$00,$ff,$60,$7f,$60,$6f,$60,$6f,$60,$6d,$60,$6d
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $00,$ff,$00,$fc,$03,$fb,$03,$f3,$01,$e1,$00,$c0,$00,$80,$00,$80
db $00,$80,$00,$00,$c0,$c0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$f0,$00,$e0,$00,$e0,$00,$c0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$fc,$00,$f8
db $00,$00,$00,$00,$00,$00,$00,$00,$f8,$f8,$7e,$7e,$1f,$1f,$1f,$1f
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$bf,$bf
db $1f,$1f,$0f,$0f,$07,$07,$03,$3b,$03,$7b,$07,$f7,$07,$ff,$07,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff
db $c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80
db $07,$ff,$01,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $df,$df,$8f,$af,$07,$f7,$03,$f3,$00,$f0,$00,$f0,$00,$e0,$00,$e0
db $c0,$c0,$c0,$c0,$e0,$e0,$e0,$e0,$60,$60,$60,$60,$20,$20,$00,$00
db $00,$7f,$80,$bf,$c0,$de,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ee,$ee,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$e7,$e7
db $00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0,$f0,$f0,$f8,$f8,$fc,$fc
db $e3,$e3,$e1,$e1,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $fe,$fe,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$1f,$1f,$0f,$2f,$07,$37
db $00,$00,$00,$00,$80,$81,$c0,$df,$e0,$ef,$f0,$f7,$f8,$fb,$fc,$fd
db $03,$03,$01,$01,$00,$00,$00,$03,$00,$03,$00,$07,$00,$07,$00,$0e
db $00,$f8,$00,$e0,$00,$e0,$00,$e0,$00,$c0,$10,$d0,$18,$d8,$1c,$dc
db $00,$1c,$00,$78,$00,$71,$00,$01,$00,$03,$00,$07,$00,$0f,$00,$0e
db $00,$ff,$00,$ff,$00,$ee,$00,$ce,$00,$8e,$00,$be,$00,$3c,$00,$18
db $1e,$de,$1e,$de,$1e,$de,$1e,$de,$1e,$de,$00,$c0,$00,$c0,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$0f
db $fe,$fe,$fc,$fd,$f8,$fb,$70,$77,$20,$af,$00,$df,$00,$ff,$00,$ff
db $00,$00,$80,$80,$c0,$c0,$c0,$c0,$80,$80,$e0,$e0,$f0,$f0,$f8,$f8
db $fc,$fc,$7e,$7e,$3f,$3f,$1f,$1f,$0f,$0f,$07,$07,$03,$03,$07,$07
db $07,$07,$17,$17,$37,$37,$f7,$f7,$f7,$f7,$e7,$e7,$f7,$f7,$f7,$f7
db $0f,$0f,$1e,$1e,$3c,$3c,$78,$78,$70,$70,$60,$60,$00,$00,$00,$00
db $00,$00,$07,$07,$0f,$0f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$0d,$0d
KeyArt:
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1b, $1a, $1a, $1a, $1c, $1d, $1e
db $1f, $20, $1a, $1a, $1a, $21, $22, $23
db $24, $25, $1a, $4e, $50, $1a, $26, $27
db $4a, $28, $29, $4f, $2a, $2b, $2c, $2d
db $32, $2e, $32, $2f, $4d, $30, $31, $32
db $32, $33, $32, $34, $35, $36, $37, $32
db $32, $38, $39, $1a, $4b, $32, $3a, $32
db $32, $3b, $3c, $1a, $3d, $32, $3e, $32
db $32, $3f, $40, $1a, $41, $46, $42, $32
db $32, $43, $44, $1a, $1a, $45, $32, $32
db $47, $48, $1a, $1a, $1a, $4c, $49, $32
db $1a, $1a, $1a, $1b, $1c, $1a, $1a, $1a
db $1a, $55, $51, $1e, $28, $1d, $1a, $1a
db $1a, $1a, $52, $53, $1f, $20, $1a, $1a
db $1a, $1a, $54, $21, $22, $23, $1a, $1a
db $1a, $1a, $24, $25, $45, $46, $1a, $4f
db $3c, $3d, $26, $27, $47, $48, $49, $33
db $3e, $3f, $40, $1e, $28, $4a, $50, $4b
db $41, $42, $43, $1e, $28, $4c, $4d, $4e
db $44, $30, $2a, $2b, $2c, $2d, $1a, $1a
db $1a, $1a, $1a, $2e, $2f, $1a, $1a, $1a
db $1a, $31, $32, $33, $34, $1a, $1a, $1a
db $35, $36, $37, $38, $39, $1a, $1a, $1a
db $37, $37, $3a, $1a, $1a, $1a, $1a, $1a
db $37, $3b, $29, $1a, $1a, $1a, $1a, $1a

Binary file not shown.

BIN
card_art/coins04.aseprite Normal file

Binary file not shown.

Binary file not shown.

BIN
card_art/cups04.aseprite Normal file

Binary file not shown.

Binary file not shown.

BIN
card_art/swords04.aseprite Normal file

Binary file not shown.

Binary file not shown.

BIN
card_art/wands04.aseprite Normal file

Binary file not shown.

View File

@ -35,89 +35,85 @@ Coins03:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$e0
db $00,$07,$00,$03,$00,$03,$00,$03,$00,$03,$00,$01,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $f8,$f8,$fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$40,$40,$40,$40,$c0,$c0
db $00,$ff,$00,$7f,$00,$7f,$00,$7f,$00,$7f,$00,$7b,$00,$79,$00,$78
db $c0,$c0,$c0,$e0,$c0,$f0,$80,$f0,$00,$f8,$00,$fc,$00,$fc,$00,$fc
db $00,$7f,$00,$3f,$00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $00,$ff,$00,$ff,$00,$ff,$00,$f0,$00,$00,$00,$01,$00,$03,$00,$07
db $00,$f8,$00,$f0,$00,$00,$00,$38,$00,$7c,$00,$fe,$00,$ff,$00,$ff
db $00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $00,$80,$00,$c0,$00,$e0,$00,$f0,$00,$f8,$00,$fc,$00,$fe,$00,$ff
db $00,$07,$00,$73,$00,$f8,$00,$f8,$00,$f0,$00,$e0,$00,$80,$00,$00
db $00,$ff,$00,$ff,$00,$7f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$0f,$00,$00,$00,$00,$00,$0c,$00,$1e
db $00,$80,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$e0
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$07,$00,$07
db $00,$00,$00,$00,$00,$00,$00,$07,$00,$3f,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$7e,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$03,$f3,$0f,$ef,$1f,$df
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$07,$f8,$f8,$ff,$ff,$ff,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$3f,$c0,$df
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$01,$fd,$01,$fd,$01,$fd
db $00,$f8,$07,$c7,$3f,$bf,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $3f,$3f,$bf,$bf,$bf,$bf,$bf,$bf,$bf,$bf,$df,$df,$ef,$ef,$f7,$f7
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $e0,$ef,$f0,$f7,$f8,$fb,$f8,$fb,$f8,$fb,$f8,$fb,$f8,$fb,$f0,$f7
db $01,$fd,$01,$fd,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$bf,$07,$c7,$00,$f8,$00,$ff
db $f9,$f9,$fe,$fe,$ff,$ff,$ff,$ff,$fe,$fe,$f0,$f1,$00,$0f,$00,$ff
db $ff,$ff,$3f,$3f,$80,$80,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $e0,$ef,$80,$9f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$00,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$00
db $00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e
db $00,$00,$00,$00,$00,$00,$00,$0f,$00,$1f,$00,$1f,$00,$0f,$00,$07
db $00,$01,$00,$1f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$f0
db $00,$03,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$3f,$00,$1f,$00,$0f,$00,$0f
db $00,$78,$00,$f8,$00,$f0,$00,$f0,$00,$f8,$00,$f8,$00,$f8,$00,$f8
db $00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$f7,$00,$c7,$00,$03,$00,$03
db $00,$0f,$00,$0f,$00,$0f,$00,$8f,$00,$8f,$00,$cf,$00,$cf,$00,$ef
db $00,$07,$00,$1f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$c0,$00,$00,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$00,$00,$7f,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$03,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$e0,$00,$f8,$00,$fe
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$c0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$f0,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$f8,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$fe,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$00,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$07,$00,$0f,$00,$1f
db $00,$00,$00,$00,$00,$1c,$00,$7e,$00,$fe,$00,$fc,$00,$f1,$00,$cf
db $00,$3f,$00,$3e,$00,$3c,$00,$3c,$00,$3c,$00,$3c,$00,$3c,$00,$3e
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f
db $00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$e0,$00,$f8,$00,$fc
db $00,$80,$00,$f8,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$e0,$00,$fe,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f0,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$01,$00,$0f,$00,$7f,$00,$ff,$00,$ff
db $00,$1e,$00,$3f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$3f,$00,$7f,$00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$00,$00,$00
db $1f,$ff,$3f,$ff,$7f,$ff,$bf,$bf,$bf,$bf,$bf,$bf,$9f,$9f,$c7,$c7
db $71,$f1,$7c,$fc,$3f,$ff,$1f,$ff,$07,$ff,$00,$ff,$00,$ff,$00,$ff
db $fc,$fc,$01,$01,$ff,$ff,$ff,$ff,$fc,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$07,$ff,$0f,$ff,$1f,$ff,$3f,$ff,$3f,$ff
db $00,$ff,$01,$ff,$3d,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fd,$fc,$fc
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $3f,$ff,$3f,$ff,$3f,$ff,$3f,$ff,$1f,$ff,$1f,$ff,$0f,$ff,$03,$ff
db $fe,$fe,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f8,$ff,$f0,$ff
db $ff,$ff,$7f,$7f,$3f,$3f,$9f,$9f,$87,$ff,$01,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$7f,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$e0,$ff
db $f0,$ff,$fc,$ff,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$80,$ff,$80,$ff,$c0,$ff,$e0,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f8,$ff,$00,$ff,$00,$ff
db $e0,$ff,$e0,$ff,$e0,$ff,$c0,$ff,$80,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$1f
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$e0,$1f,$9f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$00,$f0,$f0
db $00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$06
db $00,$ff,$00,$fe,$01,$fd,$01,$fd,$01,$fd,$01,$fd,$01,$fd,$01,$fd
db $7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$40,$00,$60,$00,$70
db $00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$3c,$00,$00,$00,$00,$00,$00
db $00,$06,$00,$06,$00,$06,$00,$06,$00,$06,$00,$06,$00,$36,$00,$76
db $00,$7e,$00,$3f,$00,$1f,$00,$0f,$00,$07,$00,$03,$00,$01,$00,$00
db $ff,$ff,$7f,$7f,$1f,$9f,$00,$e0,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $fe,$fe,$fc,$fd,$f0,$f3,$00,$0f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$c0
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$c0
db $00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$07,$00,$07,$00,$06
db $00,$e6,$00,$c6,$00,$87,$00,$8f,$00,$1f,$00,$3f,$00,$7f,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$f0,$00,$f8
db $00,$7f,$00,$3f,$00,$1f,$00,$0c,$00,$0c,$00,$0c,$00,$0c,$00,$0c
db $00,$fe,$00,$e0,$00,$01,$00,$07,$00,$0f,$00,$1f,$00,$3f,$00,$3f
db $00,$00,$00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$d0,$00,$d8,$00,$de,$00,$cf,$00,$73,$00,$bd,$00,$be,$00,$df
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$60
db $00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07
db $00,$7f,$00,$3e,$00,$80,$00,$80,$00,$c0,$00,$c0,$00,$e0,$00,$f0
db $00,$cc,$00,$06,$00,$03,$00,$01,$00,$03,$00,$07,$00,$0f,$00,$1f
db $00,$0c,$00,$0c,$00,$0c,$00,$8c,$00,$cc,$00,$ec,$00,$fc,$00,$fc
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$07,$00,$03,$00,$1d
db $00,$ec,$00,$f0,$00,$f0,$00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff
db $00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60
db $00,$f8,$00,$fc,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$3f,$00,$7f,$00,$3f,$00,$9e,$00,$e0,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$e0,$00,$00,$00,$00,$00,$00,$00,$e0,$00,$fc
db $00,$fe,$00,$e0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$1f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$fe,$00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$1f,$00,$3f
db $00,$60,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0
db $00,$c0,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$01,$00,$0f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0
.KeyArtTilesEnd:
.BackgroundCopy: ; tiles start at 26
db $1e, $1e, $57, $58, $1e, $1e, $1e, $1e
db $51, $52, $53, $59, $5a, $1e, $1e, $1e
db $54, $55, $56, $5b, $5c, $1e, $1e, $1e
db $42, $42, $42, $42, $37, $38, $39, $3a
db $1e, $1e, $1e, $1e, $1e, $1e, $3b, $3c
db $3d, $3e, $3f, $40, $41, $1a, $1a, $1a
db $2d, $2e, $2f, $30, $1a, $1a, $1a, $1a
db $31, $32, $1e, $1b, $1c, $1a, $1a, $1a
db $1a, $1d, $1e, $4e, $1f, $20, $1a, $1a
db $1a, $1a, $21, $4f, $50, $22, $1a, $1a
db $43, $44, $33, $23, $24, $25, $1a, $1a
db $45, $4d, $34, $35, $26, $1e, $27, $1a
db $46, $47, $36, $2c, $28, $29, $2a, $2b
db $46, $1e, $48, $49, $4a, $4b, $4c, $1a
db $46, $1e, $1e, $1e, $1e, $1e, $1e, $1a
db $46, $1e, $1e, $1e, $1e, $1e, $1e, $1a
db $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b
db $1b, $1b, $1b, $1c, $1d, $1e, $1b, $1b
db $1b, $1f, $20, $21, $22, $23, $1b, $1b
db $1b, $24, $25, $26, $27, $28, $1b, $1b
db $29, $29, $29, $29, $29, $29, $29, $29
db $2a, $2a, $2a, $2a, $2a, $2a, $2a, $2a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $2b
db $2c, $2d, $2e, $2f, $1a, $1a, $1a, $2b
db $30, $31, $1b, $32, $33, $1a, $1a, $2b
db $1a, $34, $35, $36, $37, $38, $1a, $39
db $1a, $3a, $3b, $3c, $3d, $3e, $3f, $1a
db $40, $41, $42, $43, $44, $45, $46, $47
db $48, $49, $4a, $4b, $4c, $1b, $4d, $4e
db $48, $4f, $50, $51, $52, $53, $54, $55
db $48, $1b, $1b, $1b, $56, $57, $1b, $58
db $48, $1b, $1b, $1b, $1b, $1b, $1b, $58
.BackgroundCopyEnd:

119
coins04.inc Normal file
View File

@ -0,0 +1,119 @@
Coins04:
db 10, "FOUR of "
db 10, "COINS "
db 10, " "
db 10, "hard work "
db 10, "the trades"
db 10, "rewards "
db 10, "FOUR of "
db 10, "COINS "
db 10, "(reversed)"
db 10, "no growth "
db 10, "no goals "
db 10, "apathy "
dw .BackgroundCopyEnd - .BackgroundCopy
dw .BackgroundCopy
dw .KeyArtTilesEnd - .KeyArtTiles
dw .KeyArtTiles
dw .SpriteTilesEnd - .SpriteTiles
dw .SpriteTiles
dw .fInit
dw .fUpdate
dw .fDraw
dw .fPrintPrep
.fInit: ret
.fUpdate: ret
.fDraw: ret
.fPrintPrep: ret
.SpriteTiles:
.SpriteTilesEnd:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$03,$f3,$0f,$ef,$1f,$df
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$07,$f8,$f8,$ff,$ff,$ff,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$3f,$c0,$df
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$01,$fd,$01,$fd,$01,$fd
db $00,$f8,$07,$c7,$3f,$bf,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $3f,$3f,$bf,$bf,$bf,$bf,$bf,$bf,$bf,$bf,$df,$df,$ef,$ef,$f7,$f7
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $e0,$ef,$f0,$f7,$f8,$fb,$f8,$fb,$f8,$fb,$f8,$fb,$f8,$fb,$f0,$f7
db $01,$fd,$01,$fd,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$bf,$07,$c7,$00,$f8,$00,$ff
db $f9,$f9,$fe,$fe,$ff,$ff,$ff,$ff,$fe,$fe,$f0,$f1,$00,$0f,$00,$ff
db $ff,$ff,$3f,$3f,$80,$80,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $e0,$ef,$80,$9f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$00,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$00
db $00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$7e
db $00,$00,$00,$00,$00,$00,$00,$0f,$00,$1f,$00,$1f,$00,$0f,$00,$07
db $00,$01,$00,$1f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$f0
db $00,$03,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$1f
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$e0,$1f,$9f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$00,$f0,$f0
db $00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$06
db $00,$ff,$00,$fe,$01,$fd,$01,$fd,$01,$fd,$01,$fd,$01,$fd,$01,$fd
db $7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$40,$00,$60,$00,$70
db $00,$7e,$00,$7e,$00,$7e,$00,$7e,$00,$3c,$00,$00,$00,$00,$00,$00
db $00,$06,$00,$06,$00,$06,$00,$06,$00,$06,$00,$06,$00,$36,$00,$76
db $00,$7e,$00,$3f,$00,$1f,$00,$0f,$00,$07,$00,$03,$00,$01,$00,$00
db $ff,$ff,$7f,$7f,$1f,$9f,$00,$e0,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $fe,$fe,$fc,$fd,$f0,$f3,$00,$0f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$c0
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$c0
db $00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$07,$00,$07,$00,$06
db $00,$e6,$00,$c6,$00,$87,$00,$8f,$00,$1f,$00,$3f,$00,$7f,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$e0,$00,$f0,$00,$f8
db $00,$7f,$00,$3f,$00,$1f,$00,$0c,$00,$0c,$00,$0c,$00,$0c,$00,$0c
db $00,$fe,$00,$e0,$00,$01,$00,$07,$00,$0f,$00,$1f,$00,$3f,$00,$3f
db $00,$00,$00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$d0,$00,$d8,$00,$de,$00,$cf,$00,$73,$00,$bd,$00,$be,$00,$df
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$60
db $00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07
db $00,$7f,$00,$3e,$00,$80,$00,$80,$00,$c0,$00,$c0,$00,$e0,$00,$f0
db $00,$cc,$00,$06,$00,$03,$00,$01,$00,$03,$00,$07,$00,$0f,$00,$1f
db $00,$0c,$00,$0c,$00,$0c,$00,$8c,$00,$cc,$00,$ec,$00,$fc,$00,$fc
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$07,$00,$03,$00,$1d
db $00,$ec,$00,$f0,$00,$f0,$00,$f8,$00,$fc,$00,$fe,$00,$ff,$00,$ff
db $00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60,$00,$60
db $00,$f8,$00,$fc,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$3f,$00,$7f,$00,$3f,$00,$9e,$00,$e0,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$e0,$00,$00,$00,$00,$00,$00,$00,$e0,$00,$fc
db $00,$fe,$00,$e0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$1f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$fe,$00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$1f,$00,$3f
db $00,$60,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0
db $00,$c0,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$01,$00,$0f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0
.KeyArtTilesEnd:
.BackgroundCopy: ; tiles start at 26
db $1b, $1b, $1b, $1b, $1b, $1b, $1b, $1b
db $1b, $1b, $1b, $1c, $1d, $1e, $1b, $1b
db $1b, $1f, $20, $21, $22, $23, $1b, $1b
db $1b, $24, $25, $26, $27, $28, $1b, $1b
db $29, $29, $29, $29, $29, $29, $29, $29
db $2a, $2a, $2a, $2a, $2a, $2a, $2a, $2a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $2b
db $2c, $2d, $2e, $2f, $1a, $1a, $1a, $2b
db $30, $31, $1b, $32, $33, $1a, $1a, $2b
db $1a, $34, $35, $36, $37, $38, $1a, $39
db $1a, $3a, $3b, $3c, $3d, $3e, $3f, $1a
db $40, $41, $42, $43, $44, $45, $46, $47
db $48, $49, $4a, $4b, $4c, $1b, $4d, $4e
db $48, $4f, $50, $51, $52, $53, $54, $55
db $48, $1b, $1b, $1b, $56, $57, $1b, $58
db $48, $1b, $1b, $1b, $1b, $1b, $1b, $58
.BackgroundCopyEnd:

View File

@ -36,45 +36,37 @@ Cups03:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$83
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ce,$ce,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$70,$70,$f8,$f8,$fc,$fc
db $07,$87,$0f,$8f,$0f,$cf,$1f,$df,$1f,$df,$1f,$ff,$1f,$ff,$1f,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$ff,$e0,$e0,$c0,$df
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$e0,$e0,$30,$30,$18,$d8
db $07,$87,$0f,$8f,$0f,$cf,$0f,$cf,$0f,$cf,$0f,$ef,$0f,$ef,$0f,$ef
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $fe,$fe,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$80,$9e,$80,$9c,$80,$98,$80,$90
db $00,$0f,$30,$3f,$30,$3f,$30,$3f,$30,$3f,$30,$3f,$30,$3f,$30,$3f
db $3f,$ff,$3f,$ff,$3f,$ff,$7f,$ff,$3f,$ff,$1f,$ff,$01,$f9,$00,$fc
db $f0,$ff,$f8,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$03,$03
db $03,$ff,$03,$ff,$c7,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc
db $80,$80,$80,$80,$80,$80,$80,$80,$80,$f0,$00,$f8,$00,$f8,$07,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fe,$fe,$9f,$ff
db $00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $0f,$ef,$0f,$ef,$0f,$ef,$0f,$ef,$0f,$ef,$07,$e7,$03,$fb,$01,$fd
db $c0,$df,$e0,$ef,$f0,$f7,$f8,$f8,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$fe,$00,$fe,$01,$fd,$03,$7b,$87,$87,$fe,$fe,$fc,$fd,$f8,$f9
db $80,$80,$80,$80,$80,$80,$80,$80,$00,$00,$01,$e1,$07,$f7,$04,$f4
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fe,$fe,$07,$07,$07,$77
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80
db $38,$3f,$3c,$3f,$1e,$1f,$0f,$0f,$00,$00,$00,$00,$00,$00,$00,$00
db $01,$fd,$03,$ff,$07,$ff,$07,$e7,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f
db $fc,$fc,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $f8,$f8,$70,$70,$80,$80,$c1,$c1,$e1,$e1,$e1,$e1,$f1,$f1,$f1,$f1
db $06,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$3f,$80,$80,$ff,$ff
db $c0,$c0,$c0,$c0,$e0,$e0,$f0,$f0,$f0,$f0,$f8,$f8,$f8,$f8,$fc,$fc
db $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f
db $f9,$f9,$f9,$f9,$fd,$fd,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$3f,$3f
db $10,$17,$18,$1b,$1c,$1d,$0e,$0e,$07,$07,$01,$01,$00,$00,$00,$00
db $00,$fc,$00,$fc,$00,$f8,$00,$f0,$07,$27,$cf,$cf,$cf,$cf,$0f,$0f
db $0f,$0f,$00,$00,$00,$00,$00,$00,$f8,$f8,$ff,$ff,$ff,$ff,$ff,$ff
db $f0,$f1,$00,$01,$00,$01,$00,$01,$00,$01,$02,$02,$83,$83,$c3,$c3
db $00,$f0,$00,$f3,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7e,$81,$81
db $c0,$c0,$c0,$c0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$f0,$f0,$f0,$f0
db $0f,$0f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$0f,$0f,$0f,$0f
db $e3,$e3,$f1,$f1,$f0,$f0,$f8,$f8,$f8,$f8,$fc,$fc,$fc,$fc,$fc,$fc
db $ff,$ff,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$1f,$1f,$0f,$0f,$07,$07
db $0f,$0f,$07,$07,$07,$07,$03,$03,$03,$03,$01,$01,$00,$00,$00,$01
db $fc,$fc,$f8,$f8,$f8,$f8,$f0,$f0,$e0,$e0,$e0,$e0,$c0,$c0,$00,$00
db $3f,$3f,$1f,$1f,$0f,$0f,$07,$07,$03,$03,$00,$00,$00,$00,$00,$00
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00
db $ff,$ff,$ff,$ff,$fc,$ff,$f8,$ff,$f0,$ff,$f0,$ff,$00,$1f,$00,$3f
db $80,$bf,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$06,$fe,$0f,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$03,$03
db $00,$0f,$00,$1f,$00,$1f,$00,$1f,$00,$0f,$80,$8f,$f0,$ff,$f8,$ff
db $01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ff,$ff,$00,$00,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$03,$00,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01
db $00,$0f,$00,$1f,$00,$1f,$00,$1f,$00,$0f,$00,$0f,$f0,$ff,$f8,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$01,$1f,$07,$07,$0f,$0f,$1f,$1f
db $0f,$ff,$1e,$fe,$3c,$fc,$78,$f8,$f0,$f0,$e0,$e0,$e0,$e0,$c0,$c0
db $03,$03,$01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $fc,$ff,$fc,$ff,$7c,$7f,$3c,$3f,$0c,$0f,$04,$07,$00,$03,$00,$03
db $fc,$ff,$3c,$3f,$0c,$0f,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03
db $00,$fc,$00,$f8,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc
db $1f,$1f,$1e,$1e,$0c,$0c,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $0b,$fb,$0b,$fb,$17,$f7,$07,$e7,$0f,$cf,$1f,$1f,$ff,$ff,$ff,$ff
db $03,$fb,$03,$fb,$03,$fb,$07,$e7,$1f,$df,$3f,$bf,$7f,$7f,$ff,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$0f,$ff
db $00,$fc,$00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80
@ -87,37 +79,45 @@ Cups03:
db $00,$f8,$00,$f0,$00,$e0,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$fe,$00,$f8,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$01,$80,$83,$80,$87,$80,$8f,$80,$9f
db $00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$f0,$00,$f0,$00,$f0
db $00,$f8,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$f0,$00,$f0,$00,$f0
db $00,$f8,$00,$f8,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fe
db $00,$fe,$00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$7f,$00,$3f,$00,$3f
db $00,$3f,$00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $e0,$ff,$c0,$ff,$c0,$ff,$c0,$ff,$c0,$ff,$c0,$ff,$e0,$ff,$e0,$ff
db $3e,$fe,$1e,$fe,$0f,$ff,$07,$ff,$03,$ff,$03,$ff,$03,$ff,$03,$ff
db $00,$fe,$00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f
db $00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $80,$bf,$00,$7f,$00,$7f,$00,$7f,$00,$7f,$00,$7f,$80,$bf,$80,$bf
db $0c,$ec,$06,$f6,$03,$fb,$01,$fd,$01,$fd,$00,$fe,$00,$fe,$00,$fe
db $00,$18,$00,$00,$00,$00,$00,$00,$00,$1c,$00,$1e,$00,$1f,$00,$1f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$18,$00,$3c,$00,$3c
db $00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0,$00,$e0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8
db $00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03
db $00,$e0,$00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00
db $f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e8,$c0,$cd,$c0,$df,$c0,$df
db $00,$1f,$00,$3f,$00,$7f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $80,$bf,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$01,$fd,$03,$fb
db $00,$fc,$00,$f0,$00,$80,$40,$40,$60,$60,$e0,$e0,$e0,$e0,$e0,$e0
db $00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $07,$e7,$1f,$1f,$ff,$ff,$ff,$ff,$7f,$7f,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$0f,$00,$1f
db $e0,$e0,$e0,$e0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00
.KeyArtTilesEnd:
.BackgroundCopy: ; tiles start at 26
db $5a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $50, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $51, $1a, $1a, $1a, $59, $1a, $1a, $1a
db $52, $1b, $1c, $1d, $56, $57, $1a, $1a
db $53, $1e, $54, $55, $21, $58, $1a, $1a
db $22, $23, $24, $25, $26, $27, $28, $1a
db $29, $2a, $2b, $2c, $2d, $42, $2e, $1a
db $1a, $2f, $1f, $30, $31, $1f, $20, $4f
db $1a, $32, $43, $33, $34, $35, $36, $37
db $38, $39, $3a, $1a, $1a, $1a, $3b, $3c
db $3d, $3e, $3f, $1a, $1a, $1a, $40, $41
db $1a, $5b, $44, $45, $1a, $1a, $1a, $1a
db $46, $47, $48, $49, $1a, $1a, $1a, $1a
db $4a, $4b, $4c, $1a, $1a, $1a, $1a, $1a
db $4d, $4e, $1a, $1a, $1a, $1a, $1a, $1a
db $51, $53, $1a, $1a, $1a, $1a, $1a, $1a
db $47, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $48, $1a, $1a, $1a, $50, $1a, $1a, $1a
db $49, $1b, $1c, $1d, $4d, $4e, $1a, $1a
db $4a, $1e, $4b, $4c, $20, $4f, $1a, $1a
db $21, $22, $23, $24, $25, $26, $27, $1a
db $28, $29, $2a, $2b, $2c, $3a, $2d, $5a
db $1a, $2e, $1f, $2f, $30, $1f, $54, $55
db $1a, $31, $3b, $32, $33, $34, $56, $57
db $35, $36, $37, $1a, $1a, $58, $59, $5b
db $1a, $38, $39, $1a, $1a, $1a, $1a, $1a
db $1a, $52, $3c, $3d, $1a, $1a, $1a, $1a
db $3e, $3f, $40, $41, $1a, $1a, $1a, $1a
db $42, $43, $44, $1a, $1a, $1a, $1a, $1a
db $45, $46, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
.BackgroundCopyEnd:

123
cups04.inc Normal file
View File

@ -0,0 +1,123 @@
Cups04:
db 10, "FOUR of "
db 10, "CUPS "
db 10, " "
db 10, "festivals "
db 10, "happiness "
db 10, "gathering "
db 10, "FOUR of "
db 10, "CUPS "
db 10, "(reversed)"
db 10, "indulgence"
db 10, "canceled "
db 10, "no friends"
dw .BackgroundCopyEnd - .BackgroundCopy
dw .BackgroundCopy
dw .KeyArtTilesEnd - .KeyArtTiles
dw .KeyArtTiles
dw .SpriteTilesEnd - .SpriteTiles
dw .SpriteTiles
dw .fInit
dw .fUpdate
dw .fDraw
dw .fPrintPrep
.fInit: ret
.fUpdate: ret
.fDraw: ret
.fPrintPrep: ret
.SpriteTiles:
.SpriteTilesEnd:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$83
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$ff,$e0,$e0,$c0,$df
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$e0,$e0,$30,$30,$18,$d8
db $07,$87,$0f,$8f,$0f,$cf,$0f,$cf,$0f,$cf,$0f,$ef,$0f,$ef,$0f,$ef
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$80,$9e,$80,$9c,$80,$98,$80,$90
db $00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $0f,$ef,$0f,$ef,$0f,$ef,$0f,$ef,$0f,$ef,$07,$e7,$03,$fb,$01,$fd
db $c0,$df,$e0,$ef,$f0,$f7,$f8,$f8,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$fe,$00,$fe,$01,$fd,$03,$7b,$87,$87,$fe,$fe,$fc,$fd,$f8,$f9
db $80,$80,$80,$80,$80,$80,$80,$80,$00,$00,$01,$e1,$07,$f7,$04,$f4
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fe,$fe,$07,$07,$07,$77
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80
db $10,$17,$18,$1b,$1c,$1d,$0e,$0e,$07,$07,$01,$01,$00,$00,$00,$00
db $00,$fc,$00,$fc,$00,$f8,$00,$f0,$07,$27,$cf,$cf,$cf,$cf,$0f,$0f
db $0f,$0f,$00,$00,$00,$00,$00,$00,$f8,$f8,$ff,$ff,$ff,$ff,$ff,$ff
db $f0,$f1,$00,$01,$00,$01,$00,$01,$00,$01,$02,$02,$83,$83,$c3,$c3
db $00,$f0,$00,$f3,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7e,$81,$81
db $c0,$c0,$c0,$c0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$f0,$f0,$f0,$f0
db $0f,$0f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$0f,$0f,$0f,$0f
db $e3,$e3,$f1,$f1,$f0,$f0,$f8,$f8,$f8,$f8,$fc,$fc,$fc,$fc,$fc,$fc
db $ff,$ff,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$1f,$1f,$0f,$0f,$07,$07
db $0f,$0f,$07,$07,$07,$07,$03,$03,$03,$03,$01,$01,$00,$00,$00,$01
db $fc,$fc,$f8,$f8,$f8,$f8,$f0,$f0,$e0,$e0,$e0,$e0,$c0,$c0,$00,$00
db $01,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ff,$ff,$00,$00,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$03,$00,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01
db $00,$0f,$00,$1f,$00,$1f,$00,$1f,$00,$0f,$00,$0f,$f0,$ff,$f8,$ff
db $00,$f8,$00,$fc,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $fc,$ff,$3c,$3f,$0c,$0f,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03
db $00,$fc,$00,$f8,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc
db $03,$fb,$03,$fb,$03,$fb,$07,$e7,$1f,$df,$3f,$bf,$7f,$7f,$ff,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$0f,$ff
db $00,$fc,$00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80
db $00,$00,$00,$00,$00,$03,$00,$07,$00,$3f,$00,$7f,$00,$ff,$00,$ff
db $00,$1f,$00,$3f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe
db $00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$80,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f0
db $00,$f8,$00,$f0,$00,$e0,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$fe,$00,$f8,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$f8,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$f0,$00,$f0,$00,$f0
db $00,$f8,$00,$f8,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fc,$00,$fe
db $00,$fe,$00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f
db $00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$0f,$00,$0f,$00,$0f,$00,$0f
db $80,$bf,$00,$7f,$00,$7f,$00,$7f,$00,$7f,$00,$7f,$80,$bf,$80,$bf
db $0c,$ec,$06,$f6,$03,$fb,$01,$fd,$01,$fd,$00,$fe,$00,$fe,$00,$fe
db $00,$18,$00,$00,$00,$00,$00,$00,$00,$1c,$00,$1e,$00,$1f,$00,$1f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$18,$00,$3c,$00,$3c
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8
db $00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03,$00,$03
db $00,$e0,$00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00
db $f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e8,$c0,$cd,$c0,$df,$c0,$df
db $00,$1f,$00,$3f,$00,$7f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $80,$bf,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$01,$fd,$03,$fb
db $00,$fc,$00,$f0,$00,$80,$40,$40,$60,$60,$e0,$e0,$e0,$e0,$e0,$e0
db $00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $07,$e7,$1f,$1f,$ff,$ff,$ff,$ff,$7f,$7f,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$03,$00,$07,$00,$0f,$00,$1f
db $e0,$e0,$e0,$e0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00
.KeyArtTilesEnd:
.BackgroundCopy: ; tiles start at 26
db $51, $53, $1a, $1a, $1a, $1a, $1a, $1a
db $47, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $48, $1a, $1a, $1a, $50, $1a, $1a, $1a
db $49, $1b, $1c, $1d, $4d, $4e, $1a, $1a
db $4a, $1e, $4b, $4c, $20, $4f, $1a, $1a
db $21, $22, $23, $24, $25, $26, $27, $1a
db $28, $29, $2a, $2b, $2c, $3a, $2d, $5a
db $1a, $2e, $1f, $2f, $30, $1f, $54, $55
db $1a, $31, $3b, $32, $33, $34, $56, $57
db $35, $36, $37, $1a, $1a, $58, $59, $5b
db $1a, $38, $39, $1a, $1a, $1a, $1a, $1a
db $1a, $52, $3c, $3d, $1a, $1a, $1a, $1a
db $3e, $3f, $40, $41, $1a, $1a, $1a, $1a
db $42, $43, $44, $1a, $1a, $1a, $1a, $1a
db $45, $46, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
.BackgroundCopyEnd:

BIN
itchsrc/Archive.zip Normal file

Binary file not shown.

21
itchsrc/binjgb.js Normal file

File diff suppressed because one or more lines are too long

BIN
itchsrc/binjgb.wasm Normal file

Binary file not shown.

31
itchsrc/index.html Normal file
View File

@ -0,0 +1,31 @@
<!DOCTYPE html>
<!-- copied from
https://github.com/chrismaltby/gb-studio/blob/v2beta/appData/js-emulator/index.html
(see LICENSE.gbstudio)
-->
<head>
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="simple.css">
<title>binjgb (simple)</title>
</head>
<body>
<div id="game">
<canvas id="mainCanvas" width="160" height="144">No Canvas Support</canvas>
</div>
<div id="controller">
<div id="controller_dpad">
<div id="controller_left"></div>
<div id="controller_right"></div>
<div id="controller_up"></div>
<div id="controller_down"></div>
</div>
<div id="controller_select" class="capsuleBtn">Select</div>
<div id="controller_start" class="capsuleBtn">Start</div>
<div id="controller_b" class="roundBtn">B</div>
<div id="controller_a" class="roundBtn">A</div>
</div>
<script src="binjgb.js"></script>
<script src="simple.js"></script>
</body>

BIN
itchsrc/lcdt.gb Normal file

Binary file not shown.

249
itchsrc/simple.css Normal file
View File

@ -0,0 +1,249 @@
/* copied from
* https://github.com/chrismaltby/gb-studio/blob/v2beta/appData/js-emulator/css/style.css
* (see LICENSE.gbstudio)
*
* modifications are marked with binjgb below.
*/
body {
background: #031921;
color: #fff;
font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue",
Helvetica, Arial, "Lucida Grande", sans-serif;
font-weight: 300;
margin: 0; /* binjgb */
padding: 0; /* binjgb */
touch-action: none;
-webkit-touch-callout: none;
user-select: none;
-webkit-user-select: none; /* binjgb */
overflow: hidden;
}
#game {
display: flex;
flex-direction: column;
position: absolute;
width: 100%;
height: 100%;
touch-action: none;
}
#game canvas {
object-fit: contain;
image-rendering: -moz-crisp-edges;
image-rendering: -webkit-crisp-edges;
image-rendering: pixelated;
image-rendering: crisp-edges;
}
#controller {
display: none;
position: fixed;
bottom: 0px;
height: 210px;
width: 100%;
touch-action: none;
opacity: 0.8;
}
#controller_dpad {
position: absolute;
bottom: 20px;
left: 0px;
width: 184px;
height: 184px;
}
#controller_dpad:before {
content: "";
display: block;
width: 48px;
height: 48px;
background: #5c5c5c;
background: radial-gradient(
ellipse at center,
#5c5c5c 0%,
#555 59%,
#5c5c5c 60%
);
position: absolute;
left: 68px;
top: 68px;
}
#controller_left {
position: absolute;
left: 20px;
top: 68px;
width: 48px;
height: 48px;
background: #666;
background: radial-gradient(ellipse at center, #666 0%, #5c5c5c 80%);
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}
#controller_right {
position: absolute;
left: 116px;
top: 68px;
width: 48px;
height: 48px;
background: #666;
background: radial-gradient(ellipse at center, #666 0%, #5c5c5c 80%);
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}
#controller_up {
position: absolute;
left: 68px;
top: 20px;
width: 48px;
height: 48px;
background: #666;
background: radial-gradient(ellipse at center, #666 0%, #5c5c5c 80%);
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
#controller_down {
position: absolute;
left: 68px;
top: 116px;
width: 48px;
height: 48px;
background: #666;
background: radial-gradient(ellipse at center, #666 0%, #5c5c5c 80%);
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
#controller_a {
position: absolute;
bottom: 110px;
right: 20px;
}
#controller_b {
position: absolute;
bottom: 80px;
right: 100px;
}
.roundBtn {
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
font-size: 32px;
color: #440f1f;
line-height: 64px;
width: 64px;
height: 64px;
border-radius: 64px;
background: #870a4c;
background: radial-gradient(ellipse at center, #ab1465 0%, #8b1e57 100%);
box-shadow: 0px 4px 5px rgba(0, 0, 0, 0.2);
}
.capsuleBtn {
font-weight: bold;
font-size: 10px;
color: #111;
display: flex;
justify-content: center;
align-items: center;
line-height: 40px;
text-transform: uppercase;
width: 64px;
height: 32px;
border-radius: 40px;
background: #222;
background: radial-gradient(ellipse at center, #666 0%, #555 100%);
box-shadow: 0px 4px 5px rgba(0, 0, 0, 0.2);
}
#controller_start {
position: absolute;
bottom: 20px;
right: 15px;
}
#controller_select {
position: absolute;
bottom: 20px;
right: 100px;
}
.btnPressed {
opacity: 0.5;
}
@media only screen and (max-device-width: 320px) and (orientation: portrait) {
#controller_dpad {
left: -5px;
bottom: -5px;
}
#controller_a {
right: 5px;
bottom: 95px;
}
#controller_b {
right: 80px;
}
#controller_start {
right: 5px;
}
#controller_select {
right: 80px;
}
}
@media only screen and (max-width: 500px) and (max-height: 400px) {
#controller {
display: none;
}
}
/* Small devices in landscape */
@media only screen and (max-device-width: 300px) and (orientation: landscape) {
html,
body {
height: 100%;
}
body {
display: flex;
justify-content: center;
align-items: center;
}
#game:after {
content: "PLEASE ROTATE ↻";
font-size: 24px;
font-weight: bold;
color: #fff;
}
#game canvas {
display: none;
max-width: 480px;
}
#controller {
display: none;
}
}
/* Devices large enough for landscape */
@media only screen and (min-width: 300px) and (orientation: landscape) {
#controller {
bottom: 50%;
transform: translateY(50%);
opacity: 0.5;
}
}

818
itchsrc/simple.js Normal file
View File

@ -0,0 +1,818 @@
/*
* Copyright (C) 2020 Ben Smith
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*
*
* Some code from GB-Studio, see LICENSE.gbstudio
*/
"use strict";
// User configurable.
const ROM_FILENAME = 'lcdt.gb';
const ENABLE_FAST_FORWARD = false;
const ENABLE_REWIND = false;
const ENABLE_PAUSE = false;
const ENABLE_SWITCH_PALETTES = true;
const OSGP_DEADZONE = 0.1; // On screen gamepad deadzone range
const CGB_COLOR_CURVE = 2; // 0: none, 1: Sameboy "Emulate Hardware" 2: Gambatte/Gameboy Online
// List of DMG palettes to switch between. By default it includes all 84
// built-in palettes. If you want to restrict this, change it to an array of
// the palettes you want to use and change DEFAULT_PALETTE_IDX to the index of the
// default palette in that list.
//
// Example: (only allow one palette with index 16):
// const DEFAULT_PALETTE_IDX = 0;
// const PALETTES = [16];
//
// Example: (allow three palettes, 16, 32, 64, with default 32):
// const DEFAULT_PALETTE_IDX = 1;
// const PALETTES = [16, 32, 64];
//
const DEFAULT_PALETTE_IDX = 79;
const PALETTES = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
];
// It's probably OK to leave these alone. But you can tweak them to get better
// rewind performance.
const REWIND_FRAMES_PER_BASE_STATE = 45; // How many delta frames until keyframe
const REWIND_BUFFER_CAPACITY = 4 * 1024 * 1024; // Total rewind capacity
const REWIND_FACTOR = 1.5; // How fast is rewind compared to normal speed
const REWIND_UPDATE_MS = 16; // Rewind setInterval rate
// Probably OK to leave these alone too.
const AUDIO_FRAMES = 4096; // Number of audio frames pushed per buffer
const AUDIO_LATENCY_SEC = 0.1;
const MAX_UPDATE_SEC = 5 / 60; // Max. time to run emulator per step (== 5 frames)
// Constants
const RESULT_OK = 0;
const RESULT_ERROR = 1;
const SCREEN_WIDTH = 160;
const SCREEN_HEIGHT = 144;
const CPU_TICKS_PER_SECOND = 4194304;
const EVENT_NEW_FRAME = 1;
const EVENT_AUDIO_BUFFER_FULL = 2;
const EVENT_UNTIL_TICKS = 4;
const $ = document.querySelector.bind(document);
let emulator = null;
const controllerEl = $('#controller');
const dpadEl = $('#controller_dpad');
const selectEl = $('#controller_select');
const startEl = $('#controller_start');
const bEl = $('#controller_b');
const aEl = $('#controller_a');
const binjgbPromise = Binjgb();
// Extract stuff from the vue.js implementation in demo.js.
class VM {
constructor() {
this.ticks = 0;
this.extRamUpdated = false;
this.paused_ = false;
this.volume = 0.5;
this.palIdx = DEFAULT_PALETTE_IDX;
this.rewind = {
minTicks: 0,
maxTicks: 0,
};
setInterval(() => {
if (this.extRamUpdated) {
this.updateExtRam();
this.extRamUpdated = false;
}
}, 1000);
}
get paused() { return this.paused_; }
set paused(newPaused) {
let oldPaused = this.paused_;
this.paused_ = newPaused;
if (!emulator) return;
if (newPaused == oldPaused) return;
if (newPaused) {
emulator.pause();
this.ticks = emulator.ticks;
this.rewind.minTicks = emulator.rewind.oldestTicks;
this.rewind.maxTicks = emulator.rewind.newestTicks;
} else {
emulator.resume();
}
}
togglePause() {
this.paused = !this.paused;
}
updateExtRam() {
if (!emulator) return;
const extram = emulator.getExtRam();
localStorage.setItem('extram', JSON.stringify(Array.from(extram)));
}
};
const vm = new VM();
// Load a ROM.
(async function go() {
let response = await fetch(ROM_FILENAME);
let romBuffer = await response.arrayBuffer();
const extRam = new Uint8Array(JSON.parse(localStorage.getItem('extram')));
Emulator.start(await binjgbPromise, romBuffer, extRam);
emulator.setBuiltinPalette(vm.palIdx);
})();
// Copied from demo.js
function makeWasmBuffer(module, ptr, size) {
return new Uint8Array(module.HEAP8.buffer, ptr, size);
}
class Emulator {
static start(module, romBuffer, extRamBuffer) {
Emulator.stop();
emulator = new Emulator(module, romBuffer, extRamBuffer);
emulator.run();
}
static stop() {
if (emulator) {
emulator.destroy();
emulator = null;
}
}
constructor(module, romBuffer, extRamBuffer) {
this.module = module;
// Align size up to 32k.
const size = (romBuffer.byteLength + 0x7fff) & ~0x7fff;
this.romDataPtr = this.module._malloc(size);
makeWasmBuffer(this.module, this.romDataPtr, size)
.fill(0)
.set(new Uint8Array(romBuffer));
this.e = this.module._emulator_new_simple(
this.romDataPtr, size, Audio.ctx.sampleRate, AUDIO_FRAMES,
CGB_COLOR_CURVE);
if (this.e == 0) {
throw new Error('Invalid ROM.');
}
this.audio = new Audio(module, this.e);
this.video = new Video(module, this.e, $('canvas'));
this.rewind = new Rewind(module, this.e);
this.rewindIntervalId = 0;
this.lastRafSec = 0;
this.leftoverTicks = 0;
this.fps = 60;
this.fastForward = false;
if (extRamBuffer) {
this.loadExtRam(extRamBuffer);
}
this.bindKeys();
this.bindTouch();
this.touchEnabled = 'ontouchstart' in document.documentElement;
this.updateOnscreenGamepad();
}
destroy() {
this.unbindTouch();
this.unbindKeys();
this.cancelAnimationFrame();
clearInterval(this.rewindIntervalId);
this.rewind.destroy();
this.module._emulator_delete(this.e);
this.module._free(this.romDataPtr);
}
withNewFileData(cb) {
const fileDataPtr = this.module._ext_ram_file_data_new(this.e);
const buffer = makeWasmBuffer(
this.module, this.module._get_file_data_ptr(fileDataPtr),
this.module._get_file_data_size(fileDataPtr));
const result = cb(fileDataPtr, buffer);
this.module._file_data_delete(fileDataPtr);
return result;
}
loadExtRam(extRamBuffer) {
this.withNewFileData((fileDataPtr, buffer) => {
if (buffer.byteLength === extRamBuffer.byteLength) {
buffer.set(new Uint8Array(extRamBuffer));
this.module._emulator_read_ext_ram(this.e, fileDataPtr);
}
});
}
getExtRam() {
return this.withNewFileData((fileDataPtr, buffer) => {
this.module._emulator_write_ext_ram(this.e, fileDataPtr);
return new Uint8Array(buffer);
});
}
get isPaused() {
return this.rafCancelToken === null;
}
pause() {
if (!this.isPaused) {
this.cancelAnimationFrame();
this.audio.pause();
this.beginRewind();
}
}
resume() {
if (this.isPaused) {
this.endRewind();
this.requestAnimationFrame();
this.audio.resume();
}
}
setBuiltinPalette(palIdx) {
this.module._emulator_set_builtin_palette(this.e, PALETTES[palIdx]);
}
get isRewinding() {
return ENABLE_REWIND && this.rewind.isRewinding;
}
beginRewind() {
if (!ENABLE_REWIND) { return; }
this.rewind.beginRewind();
}
rewindToTicks(ticks) {
if (!ENABLE_REWIND) { return; }
if (this.rewind.rewindToTicks(ticks)) {
this.runUntil(ticks);
this.video.renderTexture();
}
}
endRewind() {
if (!ENABLE_REWIND) { return; }
this.rewind.endRewind();
this.lastRafSec = 0;
this.leftoverTicks = 0;
this.audio.startSec = 0;
}
set autoRewind(enabled) {
if (!ENABLE_REWIND) { return; }
if (enabled) {
this.rewindIntervalId = setInterval(() => {
const oldest = this.rewind.oldestTicks;
const start = this.ticks;
const delta =
REWIND_FACTOR * REWIND_UPDATE_MS / 1000 * CPU_TICKS_PER_SECOND;
const rewindTo = Math.max(oldest, start - delta);
this.rewindToTicks(rewindTo);
vm.ticks = emulator.ticks;
}, REWIND_UPDATE_MS);
} else {
clearInterval(this.rewindIntervalId);
this.rewindIntervalId = 0;
}
}
requestAnimationFrame() {
this.rafCancelToken = requestAnimationFrame(this.rafCallback.bind(this));
}
cancelAnimationFrame() {
cancelAnimationFrame(this.rafCancelToken);
this.rafCancelToken = null;
}
run() {
this.requestAnimationFrame();
}
get ticks() {
return this.module._emulator_get_ticks_f64(this.e);
}
runUntil(ticks) {
while (true) {
const event = this.module._emulator_run_until_f64(this.e, ticks);
if (event & EVENT_NEW_FRAME) {
this.rewind.pushBuffer();
this.video.uploadTexture();
}
if ((event & EVENT_AUDIO_BUFFER_FULL) && !this.isRewinding) {
this.audio.pushBuffer();
}
if (event & EVENT_UNTIL_TICKS) {
break;
}
}
if (this.module._emulator_was_ext_ram_updated(this.e)) {
vm.extRamUpdated = true;
}
}
rafCallback(startMs) {
this.requestAnimationFrame();
let deltaSec = 0;
if (!this.isRewinding) {
const startSec = startMs / 1000;
deltaSec = Math.max(startSec - (this.lastRafSec || startSec), 0);
const startTimeMs = performance.now();
const deltaTicks =
Math.min(deltaSec, MAX_UPDATE_SEC) * CPU_TICKS_PER_SECOND;
let runUntilTicks = this.ticks + deltaTicks - this.leftoverTicks;
this.runUntil(runUntilTicks);
const deltaTimeMs = performance.now() - startTimeMs;
const deltaTimeSec = deltaTimeMs / 1000;
if (this.fastForward) {
// Estimate how much faster we can run in fast-forward, keeping the
// same rAF update rate.
const speedUp = (deltaTicks / CPU_TICKS_PER_SECOND) / deltaTimeSec;
const extraFrames = Math.floor(speedUp - deltaTimeSec);
const extraTicks = extraFrames * deltaTicks;
runUntilTicks = this.ticks + extraTicks - this.leftoverTicks;
this.runUntil(runUntilTicks);
}
this.leftoverTicks = (this.ticks - runUntilTicks) | 0;
this.lastRafSec = startSec;
}
const lerp = (from, to, alpha) => (alpha * from) + (1 - alpha) * to;
this.fps = lerp(this.fps, Math.min(1 / deltaSec, 10000), 0.3);
this.video.renderTexture();
}
updateOnscreenGamepad() {
$('#controller').style.display = this.touchEnabled ? 'block' : 'none';
}
bindTouch() {
this.touchFuncs = {
'controller_b': this.setJoypB.bind(this),
'controller_a': this.setJoypA.bind(this),
'controller_start': this.setJoypStart.bind(this),
'controller_select': this.setJoypSelect.bind(this),
};
this.boundButtonTouchStart = this.buttonTouchStart.bind(this);
this.boundButtonTouchEnd = this.buttonTouchEnd.bind(this);
selectEl.addEventListener('touchstart', this.boundButtonTouchStart);
selectEl.addEventListener('touchend', this.boundButtonTouchEnd);
startEl.addEventListener('touchstart', this.boundButtonTouchStart);
startEl.addEventListener('touchend', this.boundButtonTouchEnd);
bEl.addEventListener('touchstart', this.boundButtonTouchStart);
bEl.addEventListener('touchend', this.boundButtonTouchEnd);
aEl.addEventListener('touchstart', this.boundButtonTouchStart);
aEl.addEventListener('touchend', this.boundButtonTouchEnd);
this.boundDpadTouchStartMove = this.dpadTouchStartMove.bind(this);
this.boundDpadTouchEnd = this.dpadTouchEnd.bind(this);
dpadEl.addEventListener('touchstart', this.boundDpadTouchStartMove);
dpadEl.addEventListener('touchmove', this.boundDpadTouchStartMove);
dpadEl.addEventListener('touchend', this.boundDpadTouchEnd);
this.boundTouchRestore = this.touchRestore.bind(this);
window.addEventListener('touchstart', this.boundTouchRestore);
}
unbindTouch() {
selectEl.removeEventListener('touchstart', this.boundButtonTouchStart);
selectEl.removeEventListener('touchend', this.boundButtonTouchEnd);
startEl.removeEventListener('touchstart', this.boundButtonTouchStart);
startEl.removeEventListener('touchend', this.boundButtonTouchEnd);
bEl.removeEventListener('touchstart', this.boundButtonTouchStart);
bEl.removeEventListener('touchend', this.boundButtonTouchEnd);
aEl.removeEventListener('touchstart', this.boundButtonTouchStart);
aEl.removeEventListener('touchend', this.boundButtonTouchEnd);
dpadEl.removeEventListener('touchstart', this.boundDpadTouchStartMove);
dpadEl.removeEventListener('touchmove', this.boundDpadTouchStartMove);
dpadEl.removeEventListener('touchend', this.boundDpadTouchEnd);
window.removeEventListener('touchstart', this.boundTouchRestore);
}
buttonTouchStart(event) {
if (event.currentTarget.id in this.touchFuncs) {
this.touchFuncs[event.currentTarget.id](true);
event.currentTarget.classList.add('btnPressed');
event.preventDefault();
}
}
buttonTouchEnd(event) {
if (event.currentTarget.id in this.touchFuncs) {
this.touchFuncs[event.currentTarget.id](false);
event.currentTarget.classList.remove('btnPressed');
event.preventDefault();
}
}
dpadTouchStartMove(event) {
const rect = event.currentTarget.getBoundingClientRect();
const x = (2 * (event.targetTouches[0].clientX - rect.left)) / rect.width - 1;
const y = (2 * (event.targetTouches[0].clientY - rect.top)) / rect.height - 1;
if (Math.abs(x) > OSGP_DEADZONE) {
if (y > x && y < -x) {
this.setJoypLeft(true);
this.setJoypRight(false);
} else if (y < x && y > -x) {
this.setJoypLeft(false);
this.setJoypRight(true);
}
} else {
this.setJoypLeft(false);
this.setJoypRight(false);
}
if (Math.abs(y) > OSGP_DEADZONE) {
if (x > y && x < -y) {
this.setJoypUp(true);
this.setJoypDown(false);
} else if (x < y && x > -y) {
this.setJoypUp(false);
this.setJoypDown(true);
}
} else {
this.setJoypUp(false);
this.setJoypDown(false);
}
event.preventDefault();
}
dpadTouchEnd(event) {
this.setJoypLeft(false);
this.setJoypRight(false);
this.setJoypUp(false);
this.setJoypDown(false);
event.preventDefault();
}
touchRestore() {
this.touchEnabled = true;
this.updateOnscreenGamepad();
}
bindKeys() {
this.keyFuncs = {
'ArrowDown': this.setJoypDown.bind(this),
'ArrowLeft': this.setJoypLeft.bind(this),
'ArrowRight': this.setJoypRight.bind(this),
'ArrowUp': this.setJoypUp.bind(this),
'KeyZ': this.setJoypB.bind(this),
'KeyX': this.setJoypA.bind(this),
'Enter': this.setJoypStart.bind(this),
'Tab': this.setJoypSelect.bind(this),
'Backspace': this.keyRewind.bind(this),
'Space': this.keyPause.bind(this),
'BracketLeft': this.keyPrevPalette.bind(this),
'BracketRight': this.keyNextPalette.bind(this),
'ShiftLeft': this.setFastForward.bind(this),
};
this.boundKeyDown = this.keyDown.bind(this);
this.boundKeyUp = this.keyUp.bind(this);
window.addEventListener('keydown', this.boundKeyDown);
window.addEventListener('keyup', this.boundKeyUp);
}
unbindKeys() {
window.removeEventListener('keydown', this.boundKeyDown);
window.removeEventListener('keyup', this.boundKeyUp);
}
keyDown(event) {
if (event.code in this.keyFuncs) {
if (this.touchEnabled) {
this.touchEnabled = false;
this.updateOnscreenGamepad();
}
this.keyFuncs[event.code](true);
event.preventDefault();
}
}
keyUp(event) {
if (event.code in this.keyFuncs) {
this.keyFuncs[event.code](false);
event.preventDefault();
}
}
keyRewind(isKeyDown) {
if (!ENABLE_REWIND) { return; }
if (this.isRewinding !== isKeyDown) {
if (isKeyDown) {
vm.paused = true;
this.autoRewind = true;
} else {
this.autoRewind = false;
vm.paused = false;
}
}
}
keyPause(isKeyDown) {
if (!ENABLE_PAUSE) { return; }
if (isKeyDown) vm.togglePause();
}
keyPrevPalette(isKeyDown) {
if (!ENABLE_SWITCH_PALETTES) { return; }
if (isKeyDown) {
vm.palIdx = (vm.palIdx + PALETTES.length - 1) % PALETTES.length;
emulator.setBuiltinPalette(vm.palIdx);
}
}
keyNextPalette(isKeyDown) {
if (!ENABLE_SWITCH_PALETTES) { return; }
if (isKeyDown) {
vm.palIdx = (vm.palIdx + 1) % PALETTES.length;
emulator.setBuiltinPalette(vm.palIdx);
}
}
setFastForward(isKeyDown) {
if (!ENABLE_FAST_FORWARD) { return; }
this.fastForward = isKeyDown;
}
setJoypDown(set) { this.module._set_joyp_down(this.e, set); }
setJoypUp(set) { this.module._set_joyp_up(this.e, set); }
setJoypLeft(set) { this.module._set_joyp_left(this.e, set); }
setJoypRight(set) { this.module._set_joyp_right(this.e, set); }
setJoypSelect(set) { this.module._set_joyp_select(this.e, set); }
setJoypStart(set) { this.module._set_joyp_start(this.e, set); }
setJoypB(set) { this.module._set_joyp_B(this.e, set); }
setJoypA(set) { this.module._set_joyp_A(this.e, set); }
}
class Audio {
constructor(module, e) {
this.started = false;
this.module = module;
this.buffer = makeWasmBuffer(
this.module, this.module._get_audio_buffer_ptr(e),
this.module._get_audio_buffer_capacity(e));
this.startSec = 0;
this.resume();
this.boundStartPlayback = this.startPlayback.bind(this);
window.addEventListener('keydown', this.boundStartPlayback, true);
window.addEventListener('click', this.boundStartPlayback, true);
window.addEventListener('touchend', this.boundStartPlayback, true);
}
startPlayback() {
window.removeEventListener('touchend', this.boundStartPlayback, true);
window.removeEventListener('keydown', this.boundStartPlayback, true);
window.removeEventListener('click', this.boundStartPlayback, true);
this.started = true;
this.resume();
}
get sampleRate() { return Audio.ctx.sampleRate; }
pushBuffer() {
if (!this.started) { return; }
const nowSec = Audio.ctx.currentTime;
const nowPlusLatency = nowSec + AUDIO_LATENCY_SEC;
const volume = vm.volume;
this.startSec = (this.startSec || nowPlusLatency);
if (this.startSec >= nowSec) {
const buffer = Audio.ctx.createBuffer(2, AUDIO_FRAMES, this.sampleRate);
const channel0 = buffer.getChannelData(0);
const channel1 = buffer.getChannelData(1);
for (let i = 0; i < AUDIO_FRAMES; i++) {
channel0[i] = this.buffer[2 * i] * volume / 255;
channel1[i] = this.buffer[2 * i + 1] * volume / 255;
}
const bufferSource = Audio.ctx.createBufferSource();
bufferSource.buffer = buffer;
bufferSource.connect(Audio.ctx.destination);
bufferSource.start(this.startSec);
const bufferSec = AUDIO_FRAMES / this.sampleRate;
this.startSec += bufferSec;
} else {
console.log(
'Resetting audio (' + this.startSec.toFixed(2) + ' < ' +
nowSec.toFixed(2) + ')');
this.startSec = nowPlusLatency;
}
}
pause() {
if (!this.started) { return; }
Audio.ctx.suspend();
}
resume() {
if (!this.started) { return; }
Audio.ctx.resume();
}
}
Audio.ctx = new AudioContext;
class Video {
constructor(module, e, el) {
this.module = module;
// iPhone Safari doesn't upscale using image-rendering: pixelated on webgl
// canvases. See https://bugs.webkit.org/show_bug.cgi?id=193895.
// For now, default to Canvas2D.
if (window.navigator.userAgent.match(/iPhone|iPad/)) {
this.renderer = new Canvas2DRenderer(el);
} else {
try {
this.renderer = new WebGLRenderer(el);
} catch (error) {
console.log(`Error creating WebGLRenderer: ${error}`);
this.renderer = new Canvas2DRenderer(el);
}
}
this.buffer = makeWasmBuffer(
this.module, this.module._get_frame_buffer_ptr(e),
this.module._get_frame_buffer_size(e));
}
uploadTexture() {
this.renderer.uploadTexture(this.buffer);
}
renderTexture() {
this.renderer.renderTexture();
}
}
class Canvas2DRenderer {
constructor(el) {
this.ctx = el.getContext('2d');
this.imageData = this.ctx.createImageData(el.width, el.height);
}
renderTexture() {
this.ctx.putImageData(this.imageData, 0, 0);
}
uploadTexture(buffer) {
this.imageData.data.set(buffer);
}
}
class WebGLRenderer {
constructor(el) {
const gl = this.gl = el.getContext('webgl', {preserveDrawingBuffer: true});
if (gl === null) {
throw new Error('unable to create webgl context');
}
const w = SCREEN_WIDTH / 256;
const h = SCREEN_HEIGHT / 256;
const buffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([
-1, -1, 0, h,
+1, -1, w, h,
-1, +1, 0, 0,
+1, +1, w, 0,
]), gl.STATIC_DRAW);
const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.texImage2D(
gl.TEXTURE_2D, 0, gl.RGBA, 256, 256, 0, gl.RGBA, gl.UNSIGNED_BYTE, null);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
function compileShader(type, source) {
const shader = gl.createShader(type);
gl.shaderSource(shader, source);
gl.compileShader(shader);
if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
throw new Error(`compileShader failed: ${gl.getShaderInfoLog(shader)}`);
}
return shader;
}
const vertexShader = compileShader(gl.VERTEX_SHADER,
`attribute vec2 aPos;
attribute vec2 aTexCoord;
varying highp vec2 vTexCoord;
void main(void) {
gl_Position = vec4(aPos, 0.0, 1.0);
vTexCoord = aTexCoord;
}`);
const fragmentShader = compileShader(gl.FRAGMENT_SHADER,
`varying highp vec2 vTexCoord;
uniform sampler2D uSampler;
void main(void) {
gl_FragColor = texture2D(uSampler, vTexCoord);
}`);
const program = gl.createProgram();
gl.attachShader(program, vertexShader);
gl.attachShader(program, fragmentShader);
gl.linkProgram(program);
if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {
throw new Error(`program link failed: ${gl.getProgramInfoLog(program)}`);
}
gl.useProgram(program);
const aPos = gl.getAttribLocation(program, 'aPos');
const aTexCoord = gl.getAttribLocation(program, 'aTexCoord');
const uSampler = gl.getUniformLocation(program, 'uSampler');
gl.enableVertexAttribArray(aPos);
gl.enableVertexAttribArray(aTexCoord);
gl.vertexAttribPointer(aPos, 2, gl.FLOAT, gl.FALSE, 16, 0);
gl.vertexAttribPointer(aTexCoord, 2, gl.FLOAT, gl.FALSE, 16, 8);
gl.uniform1i(uSampler, 0);
}
renderTexture() {
this.gl.clearColor(0.5, 0.5, 0.5, 1.0);
this.gl.clear(this.gl.COLOR_BUFFER_BIT);
this.gl.drawArrays(this.gl.TRIANGLE_STRIP, 0, 4);
}
uploadTexture(buffer) {
this.gl.texSubImage2D(
this.gl.TEXTURE_2D, 0, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, this.gl.RGBA,
this.gl.UNSIGNED_BYTE, buffer);
}
}
class Rewind {
constructor(module, e) {
this.module = module;
this.e = e;
this.joypadBufferPtr = this.module._joypad_new();
this.statePtr = 0;
this.bufferPtr = this.module._rewind_new_simple(
e, REWIND_FRAMES_PER_BASE_STATE, REWIND_BUFFER_CAPACITY);
this.module._emulator_set_default_joypad_callback(e, this.joypadBufferPtr);
}
destroy() {
this.module._rewind_delete(this.bufferPtr);
this.module._joypad_delete(this.joypadBufferPtr);
}
get oldestTicks() {
return this.module._rewind_get_oldest_ticks_f64(this.bufferPtr);
}
get newestTicks() {
return this.module._rewind_get_newest_ticks_f64(this.bufferPtr);
}
pushBuffer() {
if (!this.isRewinding) {
this.module._rewind_append(this.bufferPtr, this.e);
}
}
get isRewinding() {
return this.statePtr !== 0;
}
beginRewind() {
if (this.isRewinding) return;
this.statePtr =
this.module._rewind_begin(this.e, this.bufferPtr, this.joypadBufferPtr);
}
rewindToTicks(ticks) {
if (!this.isRewinding) return;
return this.module._rewind_to_ticks_wrapper(this.statePtr, ticks) ===
RESULT_OK;
}
endRewind() {
if (!this.isRewinding) return;
this.module._emulator_set_default_joypad_callback(
this.e, this.joypadBufferPtr);
this.module._rewind_end(this.statePtr);
this.statePtr = 0;
}
}

Binary file not shown.

View File

@ -34,93 +34,86 @@ Swords03:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0,$c0,$c0,$f1,$f1,$fb,$fb
db $00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$8f,$8f,$df,$df
db $fb,$fb,$73,$73,$07,$07,$07,$07,$07,$07,$07,$07,$0f,$0f,$0f,$0f
db $df,$df,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc
db $0f,$0f,$0f,$0f,$1f,$1f,$1f,$1f,$3f,$3f,$7f,$7f,$ff,$ff,$ff,$ff
db $f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0
db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f7,$f7,$f7,$f7,$e7,$e7
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1e,$1e,$3e,$3e
db $07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e0,$e0,$e0
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e1,$e0,$e1,$e0,$e1
db $07,$07,$07,$07,$07,$07,$07,$07,$7f,$7f,$ff,$ff,$ff,$ff,$7f,$7f
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1c,$1c,$3e,$3e
db $7e,$7e,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$f8,$f8,$f8,$f8,$f0,$f0
db $e0,$e0,$e0,$e0,$c0,$c0,$80,$80,$80,$80,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01
db $fc,$fc,$f8,$f8,$f0,$f0,$f0,$f0,$f3,$f3,$f7,$f7,$f7,$f7,$f3,$f3
db $01,$01,$03,$03,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$3f,$3f,$7d,$7d
db $00,$00,$00,$00,$01,$01,$01,$01,$03,$03,$07,$07,$07,$07,$0f,$0f
db $fb,$fb,$f3,$f3,$f7,$f7,$ef,$ef,$ff,$ff,$df,$df,$be,$be,$bc,$bc
db $e7,$e7,$c7,$c7,$c7,$c7,$87,$87,$07,$07,$07,$07,$07,$07,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$18,$18,$3d,$3d,$3f,$3f
db $1f,$1f,$3e,$3e,$3d,$3d,$7f,$7f,$ff,$ff,$f7,$f7,$f7,$f7,$ef,$ef
db $7c,$7c,$f8,$f8,$f0,$f0,$e0,$e0,$c0,$c0,$80,$80,$80,$80,$80,$80
db $3f,$3f,$1f,$1f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f,$cf,$07,$e7
db $ff,$ff,$de,$de,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$fe,$fe,$ff,$ff
db $0f,$ff,$0f,$ff,$0f,$ff,$03,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$3f,$3f,$07,$07,$00,$80,$00,$80,$00,$80
db $80,$80,$c0,$c0,$e0,$e0,$e0,$e0,$c0,$c0,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$ff,$00,$7f,$00,$00,$80,$80,$c0,$c0,$c0,$c0,$80,$80
db $0d,$0d,$1f,$1f,$18,$1f,$10,$1f,$10,$1f,$00,$0f,$00,$0f,$00,$1f
db $fe,$fe,$f8,$f8,$e0,$fe,$40,$ff,$00,$ff,$00,$ff,$00,$ff,$08,$ff
db $01,$1f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $e0,$e0,$e0,$e0,$e1,$e1,$e3,$e3,$e7,$e7,$ef,$ef,$ef,$ef,$ef,$ef
db $7e,$7e,$fe,$fe,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0,$c0,$c0
db $f7,$f7,$f7,$f7,$77,$77,$37,$37,$17,$17,$07,$07,$17,$17,$37,$37
db $ef,$ef,$ef,$ef,$ee,$ee,$ec,$ec,$e8,$e8,$e0,$e0,$e8,$e8,$ec,$ec
db $80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$3f,$3f
db $77,$77,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$e7,$e7
db $7f,$7f,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0
db $c7,$c7,$87,$87,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$00,$00
db $07,$07,$07,$07,$07,$07,$07,$07,$c7,$c7,$ff,$ff,$ff,$ff,$ff,$ff
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e3,$e3,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$80,$80,$00,$00
db $03,$03,$03,$0b,$03,$1b,$01,$3d,$00,$3e,$00,$1f,$00,$1f,$00,$3f
db $c0,$c0,$c0,$c0,$c0,$dc,$80,$be,$00,$7e,$00,$ff,$00,$ff,$00,$ff
db $00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$07,$00,$1f,$00,$3f,$00,$ff
db $00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$e0
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$e0,$00,$f9,$00,$ff,$00,$ff
db $00,$07,$00,$1f,$00,$3f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$fe,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $1f,$1f,$0f,$0f,$0f,$0f,$0f,$0f,$1f,$1f,$7f,$7f,$ff,$ff,$ff,$ff
db $7e,$7e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$70,$70
db $f8,$f8,$f8,$f8,$f8,$f8,$7c,$7c,$7c,$7c,$3c,$3c,$3e,$3e,$3f,$3f
db $00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$c0,$c0,$e0,$e0
db $f7,$f7,$ff,$ff,$ff,$ff,$f7,$f7,$f7,$f7,$f7,$f7,$f3,$f3,$f3,$f3
db $e0,$e0,$f0,$f0,$f0,$f0,$f8,$f8,$f8,$f8,$fc,$fc,$fc,$fc,$fe,$fe
db $f1,$f1,$f1,$f1,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0
db $ff,$ff,$ff,$ff,$f7,$f7,$ff,$ff,$7b,$7b,$7d,$7d,$3d,$3d,$3f,$3f
db $00,$00,$80,$80,$80,$80,$c0,$c0,$e0,$e0,$e0,$e0,$e0,$e0,$f0,$f0
db $1f,$1f,$0f,$0f,$0f,$0f,$0f,$0f,$07,$07,$03,$03,$03,$03,$01,$01
db $f0,$f0,$f0,$f0,$f8,$f8,$fc,$fc,$fc,$fc,$fc,$fc,$fe,$fe,$fe,$fe
db $ff,$ff,$7f,$7f,$7f,$7f,$3f,$3f,$3f,$3f,$1f,$ff,$1f,$7f,$0f,$3f
db $00,$00,$00,$00,$00,$00,$80,$80,$80,$80,$c0,$c0,$c0,$c0,$e0,$e0
db $0f,$1f,$07,$1f,$07,$1f,$03,$ff,$03,$ff,$01,$7f,$01,$ff,$00,$ff
db $f0,$f0,$f0,$fe,$f8,$ff,$f8,$ff,$f8,$ff,$f8,$ff,$f0,$ff,$e0,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$60
db $00,$60,$00,$70,$00,$38,$00,$1f,$00,$0f,$00,$80,$00,$ff,$00,$ff
db $00,$1f,$00,$ff,$00,$ff,$00,$0f,$00,$1f,$00,$3e,$00,$7c,$00,$70
db $00,$ff,$00,$fe,$00,$fc,$00,$f0,$00,$e0,$00,$c0,$00,$00,$00,$00
db $00,$e0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80
db $00,$00,$00,$00,$00,$00,$00,$01,$00,$03,$00,$0f,$00,$1f,$00,$ff
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$80,$00,$c0,$00,$f0,$00,$fc,$00,$ff,$00,$ff
db $00,$01,$00,$03,$00,$1f,$00,$3f,$00,$7f,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$fc,$03,$fb,$03,$f3,$01,$e1,$00,$c0,$00,$80,$00,$80
db $00,$80,$00,$00,$c0,$c0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$f0,$00,$e0,$00,$e0,$00,$c0
db $00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$f0,$00,$e0,$00,$e0
db $00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fe,$00,$fc
db $00,$c0,$00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$7e,$00,$3e,$00,$1c,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$fc,$00,$f8
db $00,$00,$00,$00,$00,$00,$00,$00,$f8,$f8,$7e,$7e,$1f,$1f,$1f,$1f
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$bf,$bf
db $1f,$1f,$0f,$0f,$07,$07,$03,$3b,$03,$7b,$07,$f7,$07,$ff,$07,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff
db $c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80
db $07,$ff,$01,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $df,$df,$8f,$af,$07,$f7,$03,$f3,$00,$f0,$00,$f0,$00,$e0,$00,$e0
db $c0,$c0,$c0,$c0,$e0,$e0,$e0,$e0,$60,$60,$60,$60,$20,$20,$00,$00
db $00,$7f,$80,$bf,$c0,$de,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ee,$ee,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$e7,$e7
db $00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0,$f0,$f0,$f8,$f8,$fc,$fc
db $e3,$e3,$e1,$e1,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $fe,$fe,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$1f,$1f,$0f,$2f,$07,$37
db $00,$00,$00,$00,$80,$81,$c0,$df,$e0,$ef,$f0,$f7,$f8,$fb,$fc,$fd
db $03,$03,$01,$01,$00,$00,$00,$03,$00,$03,$00,$07,$00,$07,$00,$0e
db $00,$f8,$00,$e0,$00,$e0,$00,$e0,$00,$c0,$10,$d0,$18,$d8,$1c,$dc
db $00,$1c,$00,$78,$00,$71,$00,$01,$00,$03,$00,$07,$00,$0f,$00,$0e
db $00,$ff,$00,$ff,$00,$ee,$00,$ce,$00,$8e,$00,$be,$00,$3c,$00,$18
db $1e,$de,$1e,$de,$1e,$de,$1e,$de,$1e,$de,$00,$c0,$00,$c0,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$0f
db $fe,$fe,$fc,$fd,$f8,$fb,$70,$77,$20,$af,$00,$df,$00,$ff,$00,$ff
db $00,$00,$80,$80,$c0,$c0,$c0,$c0,$80,$80,$e0,$e0,$f0,$f0,$f8,$f8
db $fc,$fc,$7e,$7e,$3f,$3f,$1f,$1f,$0f,$0f,$07,$07,$03,$03,$07,$07
db $07,$07,$17,$17,$37,$37,$f7,$f7,$f7,$f7,$e7,$e7,$f7,$f7,$f7,$f7
db $0f,$0f,$1e,$1e,$3c,$3c,$78,$78,$70,$70,$60,$60,$00,$00,$00,$00
db $00,$00,$07,$07,$0f,$0f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$0d,$0d
.KeyArtTilesEnd:
.BackgroundCopy:
db $1a, $1a, $40, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $41, $27, $1a, $27, $1a, $1a
db $1a, $1a, $3e, $1b, $1c, $28, $1a, $1a
db $1a, $1a, $3f, $1d, $1e, $29, $1a, $1a
db $1a, $1a, $2a, $1f, $2b, $42, $1a, $1a
db $1a, $1a, $2c, $21, $43, $44, $1a, $1a
db $1a, $2d, $2e, $2f, $45, $46, $47, $1a
db $30, $31, $32, $22, $20, $48, $49, $1a
db $33, $34, $1a, $22, $23, $4e, $4a, $4b
db $35, $36, $37, $22, $24, $4f, $4c, $4d
db $5d, $5a, $1a, $25, $26, $38, $50, $51
db $1a, $1a, $1a, $39, $3a, $53, $52, $1a
db $1a, $1a, $54, $3b, $3c, $55, $1a, $1a
db $56, $57, $3c, $58, $3d, $1a, $1a, $1a
db $3c, $3c, $59, $5a, $1a, $1a, $1a, $1a
db $3c, $5b, $5c, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1b, $1c, $1a, $1a, $1a
db $1a, $55, $51, $1e, $28, $1d, $1a, $1a
db $1a, $1a, $52, $53, $1f, $20, $1a, $1a
db $1a, $1a, $54, $21, $22, $23, $1a, $1a
db $1a, $1a, $24, $25, $45, $46, $1a, $4f
db $3c, $3d, $26, $27, $47, $48, $49, $33
db $3e, $3f, $40, $1e, $28, $4a, $50, $4b
db $41, $42, $43, $1e, $28, $4c, $4d, $4e
db $44, $30, $2a, $2b, $2c, $2d, $1a, $1a
db $1a, $1a, $1a, $2e, $2f, $1a, $1a, $1a
db $1a, $31, $32, $33, $34, $1a, $1a, $1a
db $35, $36, $37, $38, $39, $1a, $1a, $1a
db $37, $37, $3a, $1a, $1a, $1a, $1a, $1a
db $37, $3b, $29, $1a, $1a, $1a, $1a, $1a
.BackgroundCopyEnd:

119
swords04.inc Normal file
View File

@ -0,0 +1,119 @@
Swords04:
db 10, "FOUR of "
db 10, "SWORDS "
db 10, " "
db 10, "betrayal "
db 10, "grief "
db 10, "loneliness"
db 10, "FOUR of "
db 10, "SWORDS "
db 10, "(reversed)"
db 10, "release "
db 10, "forgiven "
db 10, "overcoming"
dw .BackgroundCopyEnd - .BackgroundCopy
dw .BackgroundCopy
dw .KeyArtTilesEnd - .KeyArtTiles
dw .KeyArtTiles
dw .SpriteTilesEnd - .SpriteTiles
dw .SpriteTiles
dw .fInit
dw .fUpdate
dw .fDraw
dw .fPrintPrep
.fInit: ret
.fUpdate: ret
.fDraw: ret
.fPrintPrep: ret
.SpriteTiles:
.SpriteTilesEnd:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$03,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1e,$1e,$3e,$3e
db $07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $e0,$e0,$e0,$e0,$e1,$e1,$e3,$e3,$e7,$e7,$ef,$ef,$ef,$ef,$ef,$ef
db $7e,$7e,$fe,$fe,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0,$c0,$c0
db $f7,$f7,$f7,$f7,$77,$77,$37,$37,$17,$17,$07,$07,$17,$17,$37,$37
db $ef,$ef,$ef,$ef,$ee,$ee,$ec,$ec,$e8,$e8,$e0,$e0,$e8,$e8,$ec,$ec
db $80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$3f,$3f
db $77,$77,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$f7,$e7,$e7
db $7f,$7f,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$f8,$f8,$f0,$f0,$e0,$e0
db $c7,$c7,$87,$87,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$00,$00
db $07,$07,$07,$07,$07,$07,$07,$07,$c7,$c7,$ff,$ff,$ff,$ff,$ff,$ff
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e3,$e3,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$80,$80,$00,$00
db $03,$03,$03,$0b,$03,$1b,$01,$3d,$00,$3e,$00,$1f,$00,$1f,$00,$3f
db $c0,$c0,$c0,$c0,$c0,$dc,$80,$be,$00,$7e,$00,$ff,$00,$ff,$00,$ff
db $00,$c0,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$07,$00,$1f,$00,$3f,$00,$ff
db $00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$e0
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$e0,$00,$f9,$00,$ff,$00,$ff
db $00,$07,$00,$1f,$00,$3f,$00,$7f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$fc,$03,$fb,$03,$f3,$01,$e1,$00,$c0,$00,$80,$00,$80
db $00,$80,$00,$00,$c0,$c0,$c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$fe,$00,$fc,$00,$f8,$00,$f0,$00,$e0,$00,$e0,$00,$c0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$fc,$00,$f8
db $00,$00,$00,$00,$00,$00,$00,$00,$f8,$f8,$7e,$7e,$1f,$1f,$1f,$1f
db $00,$00,$00,$00,$01,$01,$03,$03,$07,$07,$0f,$0f,$1f,$1f,$bf,$bf
db $1f,$1f,$0f,$0f,$07,$07,$03,$3b,$03,$7b,$07,$f7,$07,$ff,$07,$ff
db $ff,$ff,$ff,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$fe,$fe,$ff,$ff,$ff,$ff
db $c0,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80
db $07,$ff,$01,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $df,$df,$8f,$af,$07,$f7,$03,$f3,$00,$f0,$00,$f0,$00,$e0,$00,$e0
db $c0,$c0,$c0,$c0,$e0,$e0,$e0,$e0,$60,$60,$60,$60,$20,$20,$00,$00
db $00,$7f,$80,$bf,$c0,$de,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ee,$ee,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$ef,$e7,$e7
db $00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0,$f0,$f0,$f8,$f8,$fc,$fc
db $e3,$e3,$e1,$e1,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $fe,$fe,$ff,$ff,$ff,$ff,$7f,$7f,$3f,$3f,$1f,$1f,$0f,$2f,$07,$37
db $00,$00,$00,$00,$80,$81,$c0,$df,$e0,$ef,$f0,$f7,$f8,$fb,$fc,$fd
db $03,$03,$01,$01,$00,$00,$00,$03,$00,$03,$00,$07,$00,$07,$00,$0e
db $00,$f8,$00,$e0,$00,$e0,$00,$e0,$00,$c0,$10,$d0,$18,$d8,$1c,$dc
db $00,$1c,$00,$78,$00,$71,$00,$01,$00,$03,$00,$07,$00,$0f,$00,$0e
db $00,$ff,$00,$ff,$00,$ee,$00,$ce,$00,$8e,$00,$be,$00,$3c,$00,$18
db $1e,$de,$1e,$de,$1e,$de,$1e,$de,$1e,$de,$00,$c0,$00,$c0,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$00,$0f
db $fe,$fe,$fc,$fd,$f8,$fb,$70,$77,$20,$af,$00,$df,$00,$ff,$00,$ff
db $00,$00,$80,$80,$c0,$c0,$c0,$c0,$80,$80,$e0,$e0,$f0,$f0,$f8,$f8
db $fc,$fc,$7e,$7e,$3f,$3f,$1f,$1f,$0f,$0f,$07,$07,$03,$03,$07,$07
db $07,$07,$17,$17,$37,$37,$f7,$f7,$f7,$f7,$e7,$e7,$f7,$f7,$f7,$f7
db $0f,$0f,$1e,$1e,$3c,$3c,$78,$78,$70,$70,$60,$60,$00,$00,$00,$00
db $00,$00,$07,$07,$0f,$0f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$1f,$0d,$0d
.KeyArtTilesEnd:
.BackgroundCopy:
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1b, $1c, $1a, $1a, $1a
db $1a, $55, $51, $1e, $28, $1d, $1a, $1a
db $1a, $1a, $52, $53, $1f, $20, $1a, $1a
db $1a, $1a, $54, $21, $22, $23, $1a, $1a
db $1a, $1a, $24, $25, $45, $46, $1a, $4f
db $3c, $3d, $26, $27, $47, $48, $49, $33
db $3e, $3f, $40, $1e, $28, $4a, $50, $4b
db $41, $42, $43, $1e, $28, $4c, $4d, $4e
db $44, $30, $2a, $2b, $2c, $2d, $1a, $1a
db $1a, $1a, $1a, $2e, $2f, $1a, $1a, $1a
db $1a, $31, $32, $33, $34, $1a, $1a, $1a
db $35, $36, $37, $38, $39, $1a, $1a, $1a
db $37, $37, $3a, $1a, $1a, $1a, $1a, $1a
db $37, $3b, $29, $1a, $1a, $1a, $1a, $1a
.BackgroundCopyEnd:

View File

@ -35,60 +35,62 @@ Wands03:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$78,$78
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$03,$07,$07,$07,$07
db $00,$00,$00,$00,$00,$00,$00,$00,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0
db $00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
db $fc,$fc,$fe,$fe,$fe,$fe,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $0f,$0f,$0f,$0f,$1e,$1e,$1f,$1f,$1f,$1f,$0f,$0f,$06,$06,$00,$00
db $c3,$c3,$01,$01,$01,$01,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01
db $e0,$e0,$e0,$e0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e0
db $01,$01,$01,$01,$00,$00,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$78,$78,$fc,$fc
db $00,$00,$00,$00,$00,$00,$00,$00,$03,$03,$07,$07,$07,$07,$0f,$0f
db $00,$00,$00,$00,$00,$00,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$c3,$c3
db $00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0,$e0,$e0
db $00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
db $fe,$fe,$fe,$fe,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $0f,$0f,$1e,$1e,$1f,$1f,$1f,$1f,$0f,$0f,$06,$06,$00,$00,$00,$00
db $01,$01,$01,$01,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01
db $e0,$e0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e0,$e0,$e0
db $01,$01,$00,$00,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$00,$00
db $fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$03,$03
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
db $fc,$fc,$7c,$7c,$fc,$fc,$78,$78,$78,$78,$78,$78,$78,$7b,$38,$3b
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$e3
db $00,$80,$00,$86,$00,$8f,$00,$8f,$00,$9f,$00,$bf,$00,$bf,$00,$bf
db $00,$00,$00,$00,$00,$01,$00,$9f,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $03,$03,$07,$07,$07,$87,$0f,$ef,$0f,$ef,$1f,$df,$3e,$fe,$3c,$bd
db $e0,$e3,$c0,$cf,$80,$9f,$80,$bf,$80,$bf,$00,$7f,$00,$ff,$00,$ff
db $78,$7b,$78,$7b,$78,$7b,$78,$7b,$78,$7b,$38,$3b,$78,$7b,$78,$7b
db $60,$ed,$00,$cd,$00,$c1,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ef,$00,$ff,$00,$fe,$00,$fe
db $7c,$fd,$78,$fb,$78,$fb,$78,$7b,$f8,$fb,$f0,$f7,$f0,$f7,$f0,$f7
db $60,$67,$60,$67,$60,$67,$60,$60,$60,$6f,$00,$0f,$00,$6f,$00,$7f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$c0
db $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$03,$03,$03,$03
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e3
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f6,$00,$ff,$00,$ff
db $7c,$7c,$fc,$fc,$78,$78,$78,$78,$78,$78,$78,$7b,$38,$3b,$78,$7b
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$e3,$00,$ff
db $00,$1f,$60,$6f,$60,$6f,$60,$6f,$60,$6c,$60,$6d,$60,$6d,$60,$6c
db $00,$c6,$00,$8f,$00,$8f,$00,$df,$00,$df,$00,$df,$00,$bf,$00,$3f
db $00,$00,$00,$01,$00,$9f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $07,$07,$07,$87,$0f,$ef,$0f,$ef,$1f,$df,$3e,$be,$3c,$bd,$7c,$7d
db $c0,$df,$80,$bf,$80,$bf,$80,$bf,$00,$7f,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $78,$7b,$70,$73,$70,$77,$70,$77,$30,$37,$70,$77,$70,$77,$70,$77
db $00,$c0,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$1f,$00,$1f,$00,$1f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f
db $00,$fe,$00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $f0,$f7,$f0,$f7,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $78,$7b,$78,$7b,$78,$7b,$78,$7b,$38,$3b,$78,$7b,$78,$7b,$78,$7b
db $00,$0c,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$1f
db $00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $78,$7b,$78,$7b,$78,$7b,$f8,$fb,$f0,$f7,$f0,$f7,$f0,$f7,$f0,$f7
db $70,$73,$70,$77,$70,$77,$30,$37,$70,$77,$70,$77,$70,$77,$70,$77
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$1f,$00,$1f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f
db $00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $f0,$f7,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $70,$77,$70,$77,$30,$b7,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb
db $70,$77,$70,$77,$70,$77,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f
db $00,$fe,$00,$fe,$00,$fc,$00,$fc,$00,$f8,$00,$f8,$00,$f8,$00,$f8
db $00,$0f,$00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$07
db $38,$bb,$38,$bb,$18,$db,$18,$db,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd
db $60,$6f,$60,$6f,$60,$6f,$20,$af,$00,$df,$00,$ff,$00,$ff,$00,$ff
db $00,$f8,$00,$f0,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$e0,$00,$c0
db $00,$07,$00,$03,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00
db $1c,$dd,$1c,$dd,$0c,$ed,$0c,$ed,$0c,$ed,$08,$eb,$00,$f7,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc
db $00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$7f,$00,$7f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$0f,$00,$07
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$0f
db $70,$77,$30,$b7,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb
db $70,$77,$70,$77,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f
db $00,$fe,$00,$fc,$00,$fc,$00,$f8,$00,$f8,$00,$f8,$00,$f8,$00,$f8
db $00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07
db $38,$bb,$18,$db,$18,$db,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd
db $60,$6f,$60,$6f,$20,$af,$00,$df,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f0,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$e0,$00,$c0,$00,$c0
db $00,$03,$00,$03,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$f0,$00,$c0
db $00,$f8,$00,$f0,$00,$e0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$1f,$00,$07,$00,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f6,$00,$ff
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f
db $00,$03,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$bf,$00,$bf,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$60,$67,$60,$6f
db $60,$6f,$00,$ff,$00,$ff,$60,$7f,$60,$6f,$60,$6f,$60,$6d,$60,$6d
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $1c,$dd,$0c,$ed,$0c,$ed,$0c,$ed,$08,$eb,$00,$f7,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8
db $00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$7f,$00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$1f,$00,$0f,$00,$07
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$f0,$00,$c0,$00,$00
db $00,$f0,$00,$e0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$03,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$1f,$00,$07,$00,$01,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$3f
db $00,$07,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
.KeyArtTilesEnd:
@ -97,16 +99,16 @@ Wands03:
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1b, $1a, $1a, $1a, $1c, $1d, $1e
db $1f, $20, $1a, $1a, $1a, $21, $22, $23
db $24, $25, $1a, $4e, $50, $1a, $26, $27
db $4a, $28, $29, $4f, $2a, $2b, $2c, $2d
db $32, $2e, $32, $2f, $4d, $30, $31, $32
db $24, $25, $1a, $26, $27, $1a, $28, $29
db $2a, $2b, $2c, $2d, $2e, $2f, $30, $31
db $32, $33, $32, $34, $35, $36, $37, $32
db $32, $38, $39, $1a, $4b, $32, $3a, $32
db $32, $3b, $3c, $1a, $3d, $32, $3e, $32
db $32, $3f, $40, $1a, $41, $46, $42, $32
db $32, $43, $44, $1a, $1a, $45, $32, $32
db $47, $48, $1a, $1a, $1a, $4c, $49, $32
db $32, $38, $32, $39, $3a, $3b, $3c, $32
db $32, $3d, $36, $1a, $3e, $32, $3f, $32
db $32, $40, $41, $1a, $42, $32, $43, $32
db $32, $44, $45, $1a, $46, $47, $48, $32
db $32, $49, $4a, $1a, $1a, $4b, $32, $32
db $4c, $4d, $1a, $1a, $1a, $4e, $4f, $50
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $51
.BackgroundCopyEnd:

114
wands04.inc Normal file
View File

@ -0,0 +1,114 @@
Wands04:
db 10, "FOUR of "
db 10, "WANDS "
db 10, " "
db 10, "moving "
db 10, "freedom "
db 10, "payoff "
db 10, "FOUR of "
db 10, "WANDS "
db 10, "(reversed)"
db 10, "return "
db 10, "plans fail"
db 10, "no growth "
dw .BackgroundCopyEnd - .BackgroundCopy
dw .BackgroundCopy
dw .KeyArtTilesEnd - .KeyArtTiles
dw .KeyArtTiles
dw .SpriteTilesEnd - .SpriteTiles
dw .SpriteTiles
dw .fInit
dw .fUpdate
dw .fDraw
dw .fPrintPrep
.fInit: ret
.fUpdate: ret
.fDraw: ret
.fPrintPrep: ret
.SpriteTiles:
.SpriteTilesEnd:
.KeyArtTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$78,$78,$fc,$fc
db $00,$00,$00,$00,$00,$00,$00,$00,$03,$03,$07,$07,$07,$07,$0f,$0f
db $00,$00,$00,$00,$00,$00,$7f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$c3,$c3
db $00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$e0,$e0,$e0,$e0
db $00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
db $fe,$fe,$fe,$fe,$fe,$fe,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $0f,$0f,$1e,$1e,$1f,$1f,$1f,$1f,$0f,$0f,$06,$06,$00,$00,$00,$00
db $01,$01,$01,$01,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01
db $e0,$e0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$f0,$e0,$e0,$e0,$e0
db $01,$01,$00,$00,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$00,$00
db $fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc,$fc
db $60,$67,$60,$67,$60,$67,$60,$60,$60,$6f,$00,$0f,$00,$6f,$00,$7f
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$c0,$00,$c0
db $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$03,$03,$03,$03
db $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e3
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f6,$00,$ff,$00,$ff
db $7c,$7c,$fc,$fc,$78,$78,$78,$78,$78,$78,$78,$7b,$38,$3b,$78,$7b
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$e3,$00,$ff
db $00,$1f,$60,$6f,$60,$6f,$60,$6f,$60,$6c,$60,$6d,$60,$6d,$60,$6c
db $00,$c6,$00,$8f,$00,$8f,$00,$df,$00,$df,$00,$df,$00,$bf,$00,$3f
db $00,$00,$00,$01,$00,$9f,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $07,$07,$07,$87,$0f,$ef,$0f,$ef,$1f,$df,$3e,$be,$3c,$bd,$7c,$7d
db $c0,$df,$80,$bf,$80,$bf,$80,$bf,$00,$7f,$00,$ff,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $78,$7b,$78,$7b,$78,$7b,$78,$7b,$38,$3b,$78,$7b,$78,$7b,$78,$7b
db $00,$0c,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0,$00,$c0
db $00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f,$00,$1f
db $00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fe,$00,$fe,$00,$fe,$00,$fe
db $78,$7b,$78,$7b,$78,$7b,$f8,$fb,$f0,$f7,$f0,$f7,$f0,$f7,$f0,$f7
db $70,$73,$70,$77,$70,$77,$30,$37,$70,$77,$70,$77,$70,$77,$70,$77
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$1f,$00,$1f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$3f,$00,$1f
db $00,$fe,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $f0,$f7,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77,$70,$77
db $00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$1f,$00,$0f
db $70,$77,$30,$b7,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb,$38,$bb
db $70,$77,$70,$77,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f,$60,$6f
db $00,$fe,$00,$fc,$00,$fc,$00,$f8,$00,$f8,$00,$f8,$00,$f8,$00,$f8
db $00,$0f,$00,$0f,$00,$0f,$00,$07,$00,$07,$00,$07,$00,$07,$00,$07
db $38,$bb,$18,$db,$18,$db,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd,$1c,$dd
db $60,$6f,$60,$6f,$20,$af,$00,$df,$00,$ff,$00,$ff,$00,$ff,$00,$ff
db $00,$f0,$00,$f0,$00,$f0,$00,$e0,$00,$e0,$00,$e0,$00,$c0,$00,$c0
db $00,$03,$00,$03,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$7f
db $1c,$dd,$0c,$ed,$0c,$ed,$0c,$ed,$08,$eb,$00,$f7,$00,$ff,$00,$ff
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fe,$00,$fc,$00,$f8
db $00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$7f,$00,$7f,$00,$3f,$00,$3f,$00,$1f,$00,$1f,$00,$0f,$00,$07
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$fc,$00,$f0,$00,$c0,$00,$00
db $00,$f0,$00,$e0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$03,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$7f,$00,$1f,$00,$07,$00,$01,$00,$00
db $00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$3f
db $00,$07,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
.KeyArtTilesEnd:
.BackgroundCopy: ; tiles start at 26
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $1a
db $1a, $1b, $1a, $1a, $1a, $1c, $1d, $1e
db $1f, $20, $1a, $1a, $1a, $21, $22, $23
db $24, $25, $1a, $26, $27, $1a, $28, $29
db $2a, $2b, $2c, $2d, $2e, $2f, $30, $31
db $32, $33, $32, $34, $35, $36, $37, $32
db $32, $38, $32, $39, $3a, $3b, $3c, $32
db $32, $3d, $36, $1a, $3e, $32, $3f, $32
db $32, $40, $41, $1a, $42, $32, $43, $32
db $32, $44, $45, $1a, $46, $47, $48, $32
db $32, $49, $4a, $1a, $1a, $4b, $32, $32
db $4c, $4d, $1a, $1a, $1a, $4e, $4f, $50
db $1a, $1a, $1a, $1a, $1a, $1a, $1a, $51
.BackgroundCopyEnd: