1008 lines
33 KiB
PHP
1008 lines
33 KiB
PHP
; global variables at the start of hram
|
|
DEF vCurrentSpread EQU $ff90 ; 16bit address of current spread
|
|
DEF vSelectedSpreadIndex equ vCurrentSpread + 2
|
|
def vSelectedSpreadCard equ vSelectedSpreadIndex + 1
|
|
def vSelectedCardIndex equ vSelectedSpreadCard+1
|
|
DEF vFrameCountSquares EQU vSelectedCardIndex+1
|
|
DEF vTime EQU vFrameCountSquares+1 ; 16bit
|
|
println "after vTime is ", vTime+2
|
|
|
|
|
|
; (but after async vars!)
|
|
; they probably don't needd to be there but whatever
|
|
DEF vFrameCount1 EQU VARIABLES_START
|
|
DEF vFrameCount2 equ vFrameCount1+1
|
|
DEF vFrameCount3 EQU vFrameCount2+1
|
|
DEF vMenuIndex equ vFrameCount3 + 1
|
|
DEF vMenuIndexPrevious equ vMenuIndex + 1
|
|
|
|
ScreenMainMenu:
|
|
dw MainMenuSetup
|
|
dw MainMenuUpdate
|
|
dw MainMenuDraw
|
|
dw MainMenuTeardown
|
|
|
|
MainMenuSetup:
|
|
; Turn the LCD off
|
|
ld hl, rLCDC
|
|
bit 7, [hl]
|
|
jp z, MainMenuSetup_ScreenOff
|
|
MainMenuSetup_BusyWait:
|
|
ld a, [rLY]
|
|
cp a, 143
|
|
jp c, MainMenuSetup_BusyWait
|
|
ld [hl], 0
|
|
|
|
MainMenuSetup_ScreenOff:
|
|
ld a, 0
|
|
ldh [rLCDC], a
|
|
|
|
ld hl, SquaresTileset8
|
|
ld de, $8010 + $80*16
|
|
ld bc, (SquaresTilesetEnd - SquaresTileset8)
|
|
call CopyRangeUnsafe
|
|
def spacing equ $12
|
|
|
|
ld hl, CardBackSprites24 ; source
|
|
def TileStartCardBackSprites24 equ 0
|
|
ld de, $8000 + TileStartCardBackSprites24*$10; destination of copy
|
|
ld bc, CardBackSprites24End - CardBackSprites24 ; length to copy
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites23
|
|
def TileStartCardBackSprites23 equ TileStartCardBackSprites24 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites23*$10; destination of copy
|
|
ld bc, CardBackSprites23End - CardBackSprites23
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites22
|
|
def TileStartCardBackSprites22 equ TileStartCardBackSprites23 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites22*$10; destination of copy
|
|
ld bc, CardBackSprites22End - CardBackSprites22
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites21
|
|
def TileStartCardBackSprites21 equ TileStartCardBackSprites22 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites21*$10; destination of copy
|
|
ld bc, CardBackSprites21End - CardBackSprites21
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites20
|
|
def TileStartCardBackSprites20 equ TileStartCardBackSprites21 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites20*$10
|
|
ld bc, CardBackSprites20End - CardBackSprites20
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites19
|
|
def TileStartCardBackSprites19 equ TileStartCardBackSprites20 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites19*$10
|
|
ld bc, CardBackSprites19End - CardBackSprites19
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites18
|
|
def TileStartCardBackSprites18 equ TileStartCardBackSprites19 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites18*$10
|
|
ld bc, CardBackSprites18End - CardBackSprites18
|
|
call CopyRangeUnsafe
|
|
|
|
ld hl, CardBackSprites17
|
|
def TileStartCardBackSprites17 equ TileStartCardBackSprites18 + spacing
|
|
ld de, $8000 + TileStartCardBackSprites17*$10
|
|
ld bc, CardBackSprites17End - CardBackSprites17
|
|
call CopyRangeUnsafe
|
|
|
|
def TileStartCardBackSprites16 equ TileStartCardBackSprites17 + spacing
|
|
|
|
ld hl, SquaresTilemap
|
|
ld de, $9800
|
|
ld b, 18
|
|
ld c, 20
|
|
call CopyTilesToMapUnsafe
|
|
|
|
ld hl, StringRead
|
|
ld de, $9800 + 32*11 + 4
|
|
call PrintString
|
|
ld hl, StringShuffle
|
|
ld de, $9800 + 32*13 + 4
|
|
call PrintString
|
|
ld hl, StringBrowse
|
|
ld de, $9800 + 32*15 + 4
|
|
call PrintString
|
|
|
|
|
|
; clear out the dma source
|
|
ld hl, $c000
|
|
ld a, 0
|
|
:
|
|
ld [hl+], a
|
|
cp a, l
|
|
jp nz, :-
|
|
|
|
ld de, vTime+2
|
|
ld a, $c0
|
|
call RunDMA
|
|
|
|
; set LCD and display registers
|
|
ld a, %11100100
|
|
ld [rBGP], a
|
|
ld [rOBP0], a
|
|
|
|
ld a, LCDCF_BLK21 | LCDCF_ON | LCDCF_BGON | LCDCF_OBJON | LCDCF_OBJ16
|
|
ldh [rLCDC], a
|
|
|
|
ld a, 0
|
|
ldh [vFrameCount1], a ; first starts at 0
|
|
ldh [vTime], a
|
|
ldh [vTime+1], a
|
|
ldh [vMenuIndex], a
|
|
ldh [vMenuIndexPrevious], a
|
|
|
|
|
|
; second starts at 1/3 length which is approximately L/2 - L/4 - L/8 + L/16 ?
|
|
ld hl, Coords
|
|
ld a, [hl]
|
|
ld b, a
|
|
srl b
|
|
sub a, b ; L - L/2
|
|
srl b
|
|
sub a, b ; L - L/2 - L/4
|
|
srl b
|
|
add a, b ; L - L/2 - L/4 + L/8
|
|
srl b
|
|
sub a, b ; L - L/2 - L/4 + L/8 - L/16
|
|
srl b
|
|
add a, b ; L - L/2 - L/4 + L/8 - L/16 + L/32
|
|
srl b
|
|
sub a, b ; L - L/2 - L/4 + L/8 - L/16 + L/32 - L/64
|
|
srl b
|
|
add a, b ; L - L/2 - L/4 + L/8 - L/16 + L/32 - L/64 + L/128
|
|
; that should be approx 1/3 of L !
|
|
ldh [vFrameCount2], a
|
|
|
|
; third starts at 2/3 length which is approximately L/2 - L/4 + L/8 - L/16 ?
|
|
ld hl, Coords
|
|
ld a, [hl]
|
|
ld b, a
|
|
srl b
|
|
sub a, b ; L - L/2
|
|
srl b
|
|
add a, b ; L - L/2 + L/4
|
|
srl b
|
|
sub a, b ; L - L/2 + L/4 - L/8
|
|
srl b
|
|
add a, b ; L - L/2 + L/4 - L/8 + L/16
|
|
srl b
|
|
sub a, b ; L - L/2 + L/4 - L/8 + L/16 - L/32
|
|
srl b
|
|
add a, b ; L - L/2 + L/4 - L/8 + L/16 - L/32 + L/64
|
|
srl b
|
|
sub a, b ; L - L/2 + L/4 - L/8 + L/16 - L/32 + L/64 - L/128
|
|
; that should be just about 2/3 of L !
|
|
ldh [vFrameCount3], a
|
|
|
|
;ld hl, Coords
|
|
;ld a, [hl]
|
|
;srl a
|
|
;ldh [vFrameCount4], a
|
|
|
|
ld a, 0
|
|
ldh [vFrameCountSquares], a
|
|
|
|
|
|
; load graphics into vram for deck face
|
|
; set up variables: LFSR stuff
|
|
ret ; return from cardreadsetup
|
|
|
|
MainMenuUpdate:
|
|
; if pressing a key and unblocked:
|
|
; signal an animation to start
|
|
; turn on block
|
|
; if in animation state:
|
|
; increment timer
|
|
; if timer is max, turn off animation state and unblock?
|
|
ld hl, rMYBTNP
|
|
|
|
ldh a, [vMenuIndex]
|
|
bit 3, [hl] ; select the down key
|
|
jp z, .doneWithDownInput ; skip the following code if down is not pressed
|
|
inc a
|
|
.doneWithDownInput
|
|
bit 2, [hl] ; select up key %0000_0100
|
|
jp z, .doneWithUpInput ; skip the following code if up is not pressed
|
|
dec a
|
|
.doneWithUpInput
|
|
ld hl, MenuCount
|
|
call ArrayClampLooping
|
|
ldh [vMenuIndex], a
|
|
|
|
|
|
ld hl, rMYBTNP
|
|
|
|
bit 5, [hl] ; button a pressed?
|
|
jp z, .doneWithMenuSelect
|
|
ld a, [vMenuIndex]
|
|
cp a, 0
|
|
jp z, .option1
|
|
cp a, 1
|
|
jp z, .option2
|
|
cp a, 2
|
|
jp z, .option3
|
|
jp .doneWithMenuSelect
|
|
.option1
|
|
ld a, 0
|
|
ld [vSelectedSpreadIndex], a
|
|
ld hl, ScreenSpreadSelect
|
|
call ChangeScene
|
|
ret
|
|
.option2
|
|
jp .doneWithMenuSelect
|
|
.option3
|
|
ld hl, vCurrentSpread
|
|
ld [hl], LOW(Spreads.threecard)
|
|
inc hl
|
|
ld [hl], HIGH(Spreads.threecard)
|
|
ld hl, ScreenCardRead
|
|
call ChangeScene
|
|
ret
|
|
.doneWithMenuSelect
|
|
|
|
ld hl, vTime
|
|
ldh a, [rDELTAT]
|
|
ld b, a
|
|
ldh a, [vTime]
|
|
add a, b
|
|
ldh [vTime], a
|
|
ldh a, [vTime+1]
|
|
adc a, 0
|
|
ldh [vTime+1], a ; increment time. when the 16bit time register is greater
|
|
; than 4096 ($10_00) then one second has passed. so that's satisfied when
|
|
; vTime+1 is equal to or greater than $10
|
|
|
|
ldh a, [vTime+1]
|
|
cp a, $01
|
|
jp c, MainMenuUpdate_Done ; if the timer is less than $0100, skip to end
|
|
|
|
;otherwise reset the timer
|
|
ld a, 0
|
|
ldh [vTime], a
|
|
ldh [vTime+1], a
|
|
|
|
|
|
ld hl, Coords
|
|
|
|
; and advance the frame counts
|
|
ldh a, [vFrameCount1]
|
|
inc a
|
|
call ArrayClampLooping
|
|
ldh [vFrameCount1], a
|
|
|
|
ldh a, [vFrameCount2]
|
|
inc a
|
|
call ArrayClampLooping
|
|
ldh [vFrameCount2], a
|
|
|
|
ldh a, [vFrameCount3]
|
|
inc a
|
|
call ArrayClampLooping
|
|
ldh [vFrameCount3], a
|
|
|
|
;ldh a, [vFrameCount4]
|
|
;inc a
|
|
;call ArrayClampLooping
|
|
;ldh [vFrameCount4], a
|
|
|
|
ld hl, SquaresTiles
|
|
ldh a, [vFrameCountSquares]
|
|
inc a
|
|
call ArrayClampLooping
|
|
ldh [vFrameCountSquares], a
|
|
|
|
|
|
|
|
ld hl, Coords
|
|
inc hl
|
|
ld b, 0
|
|
ld a, [vFrameCount1]
|
|
ld c, a
|
|
add hl, bc
|
|
add hl, bc
|
|
add hl, bc
|
|
ld a, [hl+]
|
|
ld b, a ; y coordinate
|
|
ld a, [hl+]
|
|
ld c, a ; x coordinate
|
|
ld a, [hl+]
|
|
ld e, a ; width
|
|
ld hl, $c000
|
|
call DrawWholeCard
|
|
|
|
ld hl, Coords
|
|
inc hl
|
|
ld b, 0
|
|
ld a, [vFrameCount2]
|
|
ld c, a
|
|
add hl, bc
|
|
add hl, bc
|
|
add hl, bc
|
|
ld a, [hl+]
|
|
ld b, a ; y coordinate
|
|
ld a, [hl+]
|
|
ld c, a ; x coordinate
|
|
ld a, [hl+]
|
|
ld e, a ; width
|
|
ld hl, $c000 + 9*4
|
|
call DrawWholeCard
|
|
|
|
ld hl, Coords
|
|
inc hl
|
|
ld b, 0
|
|
ld a, [vFrameCount3]
|
|
ld c, a
|
|
add hl, bc
|
|
add hl, bc
|
|
add hl, bc
|
|
ld a, [hl+]
|
|
ld b, a ; y coordinate
|
|
ld a, [hl+]
|
|
ld c, a ; x coordinate
|
|
ld a, [hl+]
|
|
ld e, a ; width
|
|
ld hl, $c000 + 18*4
|
|
call DrawWholeCard
|
|
|
|
MainMenuUpdate_Done:
|
|
ret
|
|
|
|
MainMenuDraw:
|
|
ld hl, $9800 + 32*11 + 3 - 64
|
|
ld a, [vMenuIndexPrevious]
|
|
inc a
|
|
ld b, 0
|
|
ld c, 32
|
|
.findLastCaret
|
|
add hl, bc
|
|
add hl, bc
|
|
dec a
|
|
jp nz, .findLastCaret
|
|
ld [hl], $0
|
|
|
|
ld hl, $9800 + 32*11 + 3 - 64
|
|
ld a, [vMenuIndex]
|
|
inc a
|
|
.findNewCaret
|
|
add hl, bc
|
|
add hl, bc
|
|
dec a
|
|
jp nz, .findNewCaret
|
|
ld [hl], $80 + $10 + $9
|
|
|
|
ld a, [vMenuIndex]
|
|
ld [vMenuIndexPrevious], a
|
|
|
|
|
|
ld de, vMenuIndexPrevious+2
|
|
ld a, $c0
|
|
call RunDMA
|
|
|
|
ld hl, SquaresTiles
|
|
inc hl
|
|
ld b, 0
|
|
ldh a, [vFrameCountSquares]
|
|
ld c, a
|
|
add hl, bc
|
|
add hl, bc
|
|
ld c, [hl]
|
|
inc hl
|
|
ld b, [hl]
|
|
ld h, b
|
|
ld l, c
|
|
ld de, $8000+$100*16 + 1*16
|
|
ld bc, (SquaresTileset8 - SquaresTileset7) / 8
|
|
call CopyRangeUnsafeBy8s
|
|
|
|
ret
|
|
|
|
MainMenuTeardown:
|
|
ret
|
|
|
|
DrawWholeCard: ; hl memory location, b y, c x, e width, d wiggle
|
|
ld a, e
|
|
cp a, 24
|
|
ld e, TileStartCardBackSprites24
|
|
jp z, Draw3x3Card
|
|
cp a, 23
|
|
ld e, TileStartCardBackSprites23
|
|
jp z, Draw3x3Card
|
|
cp a, 22
|
|
ld e, TileStartCardBackSprites22
|
|
jp z, Draw3x3Card
|
|
cp a, 21
|
|
ld e, TileStartCardBackSprites21
|
|
jp z, Draw3x3Card
|
|
cp a, 20
|
|
ld e, TileStartCardBackSprites20
|
|
jp z, Draw3x3Card
|
|
cp a, 19
|
|
ld e, TileStartCardBackSprites19
|
|
jp z, Draw3x3Card
|
|
cp a, 18
|
|
ld e, TileStartCardBackSprites18
|
|
jp z, Draw3x3Card
|
|
cp a, 17
|
|
ld e, TileStartCardBackSprites17
|
|
jp z, Draw3x3Card
|
|
|
|
ld e, TileStartCardBackSprites16
|
|
jp Draw2x2Card
|
|
; else fall through into 2x2card
|
|
|
|
Draw2x2Card:
|
|
; hl memory location, b y coord, c x coord, e width
|
|
; top-left
|
|
ld e, TileStartCardBackSprites16
|
|
ld a, $0
|
|
call DrawTile
|
|
|
|
xor a, a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld e, TileStartCardBackSprites16
|
|
ld a, $4
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
sub a, 8
|
|
ld c, a ; step back to the left
|
|
|
|
xor a, a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
|
|
ld a, b
|
|
add a, 16
|
|
ld b, a
|
|
ld e, TileStartCardBackSprites16
|
|
ld a, $c ; TileStartCardBackSprites8 + $12
|
|
call DrawTile
|
|
|
|
ld a, 0
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld e, TileStartCardBackSprites16
|
|
ld a, $10
|
|
call DrawTile
|
|
ret
|
|
|
|
Draw3x3Card:
|
|
; hl memory location, b y coord, c x coord, e base for tiles, d wiggle
|
|
|
|
;first row
|
|
; top-left
|
|
ld a, 0
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
add a, 8 ; add stride to x
|
|
ld c, a
|
|
ld a, $2
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld a, $4
|
|
call DrawTile
|
|
|
|
;second row
|
|
ld a, b
|
|
add a, 16
|
|
ld b, a ; add 16 to y coord
|
|
ld a, c
|
|
sub a, 16
|
|
ld c, a ; restore the state to before we drew the first row
|
|
ld a, $6
|
|
call DrawTile
|
|
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld a, $8
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld a, $a
|
|
call DrawTile
|
|
|
|
; third row
|
|
ld a, b
|
|
add a, 16
|
|
ld b, a ; add stridex2 to y coord
|
|
ld a, c
|
|
sub a, 16
|
|
ld c, a ; subtract stridex2 from x
|
|
ld a, $c
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld a, $e
|
|
call DrawTile
|
|
|
|
ld a, c
|
|
add a, 8
|
|
ld c, a
|
|
ld a, $10
|
|
call DrawTile
|
|
ret
|
|
|
|
DrawTile: ; b: y. c: x. a: part id. hl: location of sprite in OAM
|
|
; e: sprite bank
|
|
ld d, a ; immediateely put the card part id into d
|
|
ld a, e
|
|
.testFor16
|
|
cp a, TileStartCardBackSprites16
|
|
jp nz, .testFor17
|
|
|
|
; we're in a 16-width card sprite
|
|
ld a, d
|
|
cp a, $0
|
|
jp z, .leftSideThreshholds16
|
|
cp a, $6
|
|
jp z, .leftSideThreshholds16
|
|
cp a, $c
|
|
jp z, .leftSideThreshholds16
|
|
cp a, $4
|
|
jp z, .rightSideThreshholds16
|
|
cp a, $a
|
|
jp z, .rightSideThreshholds16
|
|
cp a, $10
|
|
jp z, .rightSideThreshholds16
|
|
jp .skipThisTile
|
|
|
|
|
|
|
|
.leftSideThreshholds16
|
|
ld a, c
|
|
;cp a, 8+16
|
|
;jp c, .dontSkip ; we don't have to worry about activating it when it's far to
|
|
; the left because it'll never be drawn far to the left
|
|
cp a, 8+52
|
|
jp c, .skipThisTile ; left edge < 48 => dont draw
|
|
cp a, 8-8+105 ; right edge < 120 => do draw
|
|
jp c, .dontSkip
|
|
jp .skipThisTile
|
|
|
|
.rightSideThreshholds16
|
|
ld a, c
|
|
;cp a, 8+16
|
|
;jp c, .dontSkip ; we don't have to worry about activating it when it's far to
|
|
; the left because it'll never be drawn far to the left
|
|
cp a, 8+54
|
|
jp c, .skipThisTile ; left edge < 48 => dont draw
|
|
cp a, 8-8+109 ; right edge < 120 => do draw
|
|
jp c, .dontSkip
|
|
jp .skipThisTile
|
|
|
|
|
|
.testFor17
|
|
cp a, TileStartCardBackSprites17
|
|
jp nz, .dontSkip ; if it's not 16 or 17, draw it
|
|
|
|
ld a, d
|
|
cp a, $0
|
|
jp z, .leftSideThreshholds17
|
|
cp a, $6
|
|
jp z, .leftSideThreshholds17
|
|
cp a, $c
|
|
jp z, .leftSideThreshholds17
|
|
cp a, $2
|
|
jp z, .middleThreshholds17
|
|
cp a, $8
|
|
jp z, .middleThreshholds17
|
|
cp a, $e
|
|
jp z, .middleThreshholds17
|
|
cp a, $4
|
|
jp z, .rightSideThreshholds17
|
|
cp a, $a
|
|
jp z, .rightSideThreshholds17
|
|
cp a, $10
|
|
jp z, .rightSideThreshholds17
|
|
jp .skipThisTile
|
|
|
|
|
|
.leftSideThreshholds17
|
|
ld a, c
|
|
cp a, 8+37
|
|
jp c, .dontSkip
|
|
cp a, 8+80
|
|
jp c, .skipThisTile
|
|
;cp a, 8-17 + 100 ; right edge < 100 => draw
|
|
;jp c, .dontSkip ; we can comment this one out because wee dont atm need to
|
|
; worry about drawing 17-wides in the middle
|
|
cp a, 8-8 + 118
|
|
jp c, .skipThisTile
|
|
jp .dontSkip ; right edge edge < 168 => draw
|
|
|
|
.middleThreshholds17
|
|
|
|
ld a, c
|
|
cp a, 8+42 ; left edge < 10 => draw
|
|
jp c, .dontSkip
|
|
cp a, 8+80 ; left edge < 80 => skip
|
|
jp c, .skipThisTile
|
|
;cp a, 8-17 + 100 ; right edge < 100 => draw
|
|
;jp c, .dontSkip ; we can comment this one out because wee dont atm need to
|
|
; worry about drawing 17-wides in the middle
|
|
cp a, 8-8 + 121 ; right edge < 120 => skip
|
|
jp c, .skipThisTile
|
|
jp .dontSkip ; right edge edge < 168 => draw
|
|
|
|
.rightSideThreshholds17
|
|
ld a, c
|
|
cp a, 8+80 ; left edge < 10 => draw
|
|
jp c, .dontSkip
|
|
cp a, 8+80 ; left edge < 80 => skip
|
|
jp c, .skipThisTile
|
|
;cp a, 8-17 + 100 ; right edge < 100 => draw
|
|
;jp c, .dontSkip ; we can comment this one out because wee dont atm need to
|
|
; worry about drawing 17-wides in the middle
|
|
cp a, 8-8 + 121 ; right edge < 120 => skip
|
|
jp c, .skipThisTile
|
|
jp .dontSkip ; right edge edge < 168 => draw
|
|
|
|
|
|
.dontSkip
|
|
ld a, e
|
|
cp a, TileStartCardBackSprites16
|
|
jp nz, .goAheadAndDraw
|
|
ld e, TileStartCardBackSprites24
|
|
.goAheadAndDraw
|
|
ld a, b
|
|
ld [hl+], a
|
|
ld a, c
|
|
ld [hl+], a
|
|
ld a, d
|
|
add a, e
|
|
ld [hl+], a
|
|
ld a, 0
|
|
ld [hl+], a
|
|
ret
|
|
|
|
.skipThisTile
|
|
ld a, 0
|
|
ld [hl+], a
|
|
ld [hl+], a
|
|
inc hl
|
|
inc hl
|
|
ret
|
|
|
|
MenuCount:
|
|
db 3
|
|
StringRead:
|
|
db 11, "Read Spread"
|
|
StringShuffle:
|
|
db 7, "Shuffle"
|
|
StringBrowse:
|
|
db 11, "Browse Deck"
|
|
Coords: ; y, x, spread
|
|
db 255, $24, $12, $14, $24, $12, $14, $24, $12, $14, $24, $12, $14, $24, $12, $14, $24, $12, $14, $23, $12, $15, $23, $13, $15, $23, $13, $15, $23, $13, $15, $23, $13, $15, $23, $14, $15, $23, $14, $15, $23, $14, $15, $23, $15, $15, $23, $15, $15, $22, $16, $16, $22, $16, $16, $22, $17, $16, $22, $18, $16, $22, $18, $16, $22, $19, $16, $22, $1a, $16, $22, $1a, $16, $22, $1b, $16, $22, $1c, $16, $22, $1d, $16, $22, $1e, $16, $21, $1e, $17, $21, $1f, $17, $21, $20, $17, $21, $21, $17, $21, $22, $17, $21, $23, $17, $21, $24, $17, $21, $25, $17, $21, $27, $17, $21, $28, $17, $21, $29, $17, $21, $2a, $17, $21, $2b, $17, $21, $2c, $17, $21, $2e, $17, $21, $2f, $17, $20, $30, $18, $20, $31, $18, $20, $33, $18, $20, $34, $18, $20, $35, $18, $20, $37, $18, $20, $38, $18, $20, $3a, $18, $20, $3b, $18, $20, $3c, $18, $20, $3e, $18, $20, $3f, $18, $20, $41, $18, $20, $42, $18, $20, $44, $18, $20, $45, $18, $20, $46, $18, $20, $48, $18, $20, $49, $18, $20, $4b, $18, $20, $4c, $18, $20, $4e, $18, $20, $4f, $18, $20, $51, $18, $20, $52, $18, $20, $54, $18, $20, $55, $18, $20, $57, $18, $20, $58, $18, $20, $5a, $18, $20, $5b, $18, $20, $5c, $18, $20, $5e, $18, $20, $5f, $18, $20, $61, $18, $20, $62, $18, $20, $64, $18, $20, $65, $18, $20, $66, $18, $20, $68, $18, $20, $69, $18, $21, $6a, $17, $21, $6c, $17, $21, $6d, $17, $21, $6e, $17, $21, $6f, $17, $21, $71, $17, $21, $72, $17, $21, $73, $17, $21, $74, $17, $21, $75, $17, $21, $76, $17, $21, $77, $17, $21, $78, $17, $21, $7a, $17, $21, $7b, $17, $21, $7b, $17, $22, $7c, $16, $22, $7d, $16, $22, $7e, $16, $22, $7f, $16, $22, $80, $16, $22, $81, $16, $22, $82, $16, $22, $82, $16, $22, $83, $16, $22, $84, $16, $22, $84, $16, $23, $85, $15, $23, $86, $15, $23, $86, $15, $23, $87, $15, $23, $87, $15, $23, $87, $15, $23, $88, $15, $23, $88, $15, $23, $89, $15, $23, $89, $15, $23, $89, $15, $24, $89, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $24, $8a, $14, $25, $8a, $13, $25, $8a, $13, $25, $89, $13, $25, $89, $13, $25, $89, $13, $25, $89, $13, $25, $88, $13, $25, $88, $13, $25, $87, $13, $25, $87, $13, $25, $86, $13, $26, $86, $12, $26, $85, $12, $26, $85, $12, $26, $84, $12, $26, $83, $12, $26, $83, $12, $26, $82, $12, $26, $81, $12, $26, $81, $12, $26, $80, $12, $26, $7f, $12, $27, $7e, $11, $27, $7d, $11, $27, $7c, $11, $27, $7b, $11, $27, $7a, $11, $27, $79, $11, $27, $78, $11, $27, $77, $11, $27, $76, $11, $27, $75, $11, $27, $74, $11, $27, $73, $11, $27, $71, $11, $27, $70, $11, $27, $6f, $11, $27, $6e, $11, $28, $6c, $10, $28, $6b, $10, $28, $6a, $10, $28, $69, $10, $28, $67, $10, $28, $66, $10, $28, $65, $10, $28, $63, $10, $28, $62, $10, $28, $60, $10, $28, $5f, $10, $28, $5e, $10, $28, $5c, $10, $28, $5b, $10, $28, $59, $10, $28, $58, $10, $28, $56, $10, $28, $55, $10, $28, $53, $10, $28, $52, $10, $28, $50, $10, $28, $4f, $10, $28, $4d, $10, $28, $4c, $10, $28, $4a, $10, $28, $49, $10, $28, $48, $10, $28, $46, $10, $28, $45, $10, $28, $43, $10, $28, $42, $10, $28, $40, $10, $28, $3f, $10, $28, $3d, $10, $28, $3c, $10, $28, $3b, $10, $28, $39, $10, $28, $38, $10, $28, $36, $10, $28, $35, $10, $28, $34, $10, $27, $32, $11, $27, $31, $11, $27, $30, $11, $27, $2f, $11, $27, $2d, $11, $27, $2c, $11, $27, $2b, $11, $27, $2a, $11, $27, $28, $11, $27, $27, $11, $27, $26, $11, $27, $25, $11, $27, $24, $11, $27, $23, $11, $27, $22, $11, $27, $21, $11, $26, $20, $12, $26, $1f, $12, $26, $1e, $12, $26, $1d, $12, $26, $1c, $12, $26, $1c, $12, $26, $1b, $12, $26, $1a, $12, $26, $19, $12, $26, $19, $12, $26, $18, $12, $26, $17, $12, $25, $17, $13, $25, $16, $13, $25, $16, $13, $25, $15, $13, $25, $15, $13, $25, $14, $13, $25, $14, $13, $25, $14, $13, $25, $13, $13, $25, $13, $13, $24, $13, $14, $24, $12, $14, $24, $12, $14, $24, $12, $14, $24, $12, $14
|
|
|
|
|
|
CardBackSprites16:
|
|
CardBackSprites24:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$ff,$ff,$55,$aa,$aa,$55,$55,$aa ; top-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
|
|
db $00,$ff,$fe,$ff,$fe,$ff,$06,$ff,$f6,$ff,$56,$bf,$b6,$5f,$56,$bf ; top-right
|
|
db $b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
|
|
db $b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf ; middle-right
|
|
db $b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff,$60,$ff,$7f,$ff,$7f,$ff,$00,$ff ; bottom-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$ff,$ff,$00,$ff,$ff,$ff,$ff,$ff,$00,$ff ; bottom-middle
|
|
|
|
db $b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf,$b6,$5f,$56,$bf ; middle-right
|
|
db $b6,$5f,$56,$bf,$b6,$5f,$f6,$ff,$06,$ff,$fe,$ff,$fe,$ff,$00,$ff ; bottom-right
|
|
CardBackSprites16End:
|
|
CardBackSprites24End:
|
|
CardBackSprites23:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$ff,$ff,$55,$aa,$aa,$55,$55,$aa ; top-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
|
|
db $00,$fe,$fc,$fe,$fc,$fe,$0c,$fe,$ec,$fe,$6c,$be,$ac,$7e,$6c,$be ; top-right
|
|
db $ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
|
|
db $ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be ; middle-right
|
|
db $ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6f,$ff,$60,$ff,$7f,$ff,$7f,$ff,$00,$ff,$00,$00,$00,$00 ; bottom-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; middle-middle
|
|
db $aa,$55,$ff,$ff,$00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$00,$00,$00 ; bottom-middle
|
|
|
|
db $ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be,$ac,$7e,$6c,$be ; middle-right
|
|
db $ac,$7e,$ec,$fe,$0c,$fe,$fc,$fe,$fc,$fe,$00,$fe,$00,$00,$00,$00 ; bottom-right
|
|
CardBackSprites23End:
|
|
CardBackSprites22:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$ff,$ff,$55,$aa,$aa,$55,$55,$aa ; top-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
|
|
db $00,$fc,$f8,$fc,$f8,$fc,$18,$fc,$d8,$fc,$58,$fc,$d8,$7c,$58,$fc ; top-right
|
|
db $d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc ; upper-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
|
|
db $d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc ; upper-right
|
|
db $d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc ; upper-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff ; lower-left
|
|
db $60,$ff,$7f,$ff,$7f,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$ff,$ff ; lower-middle
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-middle
|
|
|
|
db $d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$58,$fc,$d8,$7c,$d8,$fc ; lower-right
|
|
db $18,$fc,$f8,$fc,$f8,$fc,$00,$fc,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-right
|
|
CardBackSprites22End:
|
|
|
|
CardBackSprites21:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$ff,$ff,$55,$aa,$aa,$55,$55,$aa ; top-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
|
|
db $00,$f8,$f0,$f8,$f0,$f8,$30,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8 ; top-right
|
|
db $b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8 ; upper-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$55,$aa ; upper-middle
|
|
|
|
db $b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8 ; upper-right
|
|
db $b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8 ; upper-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff,$60,$ff,$7f,$ff ; lowere-left
|
|
db $7f,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-left
|
|
|
|
db $aa,$55,$55,$aa,$aa,$55,$55,$aa,$aa,$55,$ff,$ff,$00,$ff,$ff,$ff ; lower-middle
|
|
db $ff,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottmo-middle
|
|
|
|
db $b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$b0,$f8,$30,$f8,$f0,$f8 ; lower-right
|
|
db $f0,$f8,$00,$f8,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-right
|
|
CardBackSprites21End:
|
|
CardBackSprites20:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middel-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$ff,$ff,$55,$ab,$ab,$55,$55,$ab ; top-middle
|
|
db $ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab ; middle-middle
|
|
|
|
db $00,$f0,$e0,$f0,$e0,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0 ; top-right
|
|
db $60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0 ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middel-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middel-left
|
|
|
|
db $ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab ; middle-middle
|
|
db $ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab,$ab,$55,$55,$ab ; middle-middle
|
|
|
|
db $60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0 ; middle-right
|
|
db $60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0 ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff,$60,$ff,$7f,$ff,$7f,$ff,$00,$ff ; bottom-left
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $ab,$55,$55,$ab,$ab,$55,$ff,$ff,$00,$ff,$ff,$ff,$ff,$ff,$00,$ff ; bottom-middle
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $60,$f0,$60,$f0,$60,$f0,$60,$f0,$60,$f0,$e0,$f0,$e0,$f0,$00,$f0 ; bottom-right
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
CardBackSprites20End:
|
|
CardBackSprites19:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$fe,$ff,$56,$ab,$aa,$57,$56,$ab ; top-middle
|
|
db $aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab ; middle-middle
|
|
|
|
db $00,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0 ; top-rihgt
|
|
db $c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0 ; middle-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab ; middle-middle
|
|
db $aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab,$aa,$57,$56,$ab ; middle-middle
|
|
|
|
db $c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0 ; middle-right
|
|
db $c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0 ; middle-right
|
|
|
|
db $6a,$fd,$6f,$ff,$60,$ff,$7f,$ff,$7f,$ff,$00,$ff,$00,$00,$00,$00 ; lower-left
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $aa,$57,$fe,$ff,$00,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$00,$00,$00 ; lower-middle
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$c0,$e0,$00,$e0,$00,$00,$00,$00 ; lower-right
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
CardBackSprites19End:
|
|
CardBackSprites18:
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$01,$ff,$fd,$ff,$55,$af,$ad,$57,$55,$af ; top-middle
|
|
db $ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$55,$af ; upper-m,iddle
|
|
|
|
db $00,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0 ; top-right
|
|
db $80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0 ; upper-right
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; upper-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff ; lower-left
|
|
|
|
db $ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$55,$af ; upper-m,iddle
|
|
db $ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$55,$af,$ad,$57,$fd,$ff ; lower-middle
|
|
|
|
db $80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0 ; lower-right
|
|
db $80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0,$80,$c0 ; upper-right
|
|
|
|
db $60,$ff,$7f,$ff,$7f,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-left
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; under-left
|
|
|
|
db $01,$ff,$ff,$ff,$ff,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-middle
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; under-middle
|
|
|
|
db $80,$c0,$80,$c0,$80,$c0,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-right
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; under-right
|
|
|
|
|
|
|
|
CardBackSprites18End:
|
|
CardBackSprites17:
|
|
|
|
db $00,$ff,$7f,$ff,$7f,$ff,$60,$ff,$6f,$ff,$6d,$fa,$6a,$fd,$6d,$fa ; top-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
|
|
db $00,$ff,$ff,$ff,$ff,$ff,$03,$ff,$fb,$ff,$5b,$af,$ab,$5f,$5b,$af ; top-middle
|
|
db $ab,$5f,$5b,$af,$ab,$5f,$5b,$af,$ab,$5f,$5b,$af,$ab,$5f,$5b,$af ; middle-middle
|
|
|
|
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80 ; top-rihgt
|
|
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80 ; middle-rihgt
|
|
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa ; middle-left
|
|
db $6a,$fd,$6d,$fa,$6a,$fd,$6d,$fa,$6a,$fd,$6f,$ff,$60,$ff,$7f,$ff ; lower-left
|
|
|
|
db $ab,$5f,$5b,$af,$ab,$5f,$5b,$af,$ab,$5f,$5b,$af,$ab,$5f,$5b,$af ; middle-middle
|
|
db $ab,$5f,$5b,$af,$ab,$5f,$5b,$af,$ab,$5f,$fb,$ff,$03,$ff,$ff,$ff ; lower-middle
|
|
|
|
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80 ; middle-rihgt
|
|
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80 ; lower-rihgt
|
|
|
|
db $7f,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-left
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $ff,$ff,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-middle
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
|
|
db $00,$80,$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; bottom-right
|
|
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ; empty
|
|
CardBackSprites17End:
|
|
SquaresTiles:
|
|
db 8
|
|
dw SquaresTileset1
|
|
dw SquaresTileset2
|
|
dw SquaresTileset3
|
|
dw SquaresTileset4
|
|
dw SquaresTileset5
|
|
dw SquaresTileset6
|
|
dw SquaresTileset7
|
|
dw SquaresTileset8
|
|
|
|
SquaresTileset1:
|
|
db $fe,$00,$82,$00,$82,$00,$82,$00,$82,$00,$82,$00,$fe,$00,$00,$00
|
|
|
|
SquaresTileset2:
|
|
db $00,$00,$7f,$00,$41,$00,$41,$00,$41,$00,$41,$00,$41,$00,$7f,$00
|
|
|
|
SquaresTileset3:
|
|
db $bf,$00,$00,$00,$bf,$00,$a0,$00,$a0,$00,$a0,$00,$a0,$00,$a0,$00
|
|
|
|
SquaresTileset4:
|
|
db $50,$00,$df,$00,$00,$00,$df,$00,$50,$00,$50,$00,$50,$00,$50,$00
|
|
|
|
SquaresTileset5:
|
|
db $28,$00,$28,$00,$ef,$00,$00,$00,$ef,$00,$28,$00,$28,$00,$28,$00
|
|
|
|
SquaresTileset6:
|
|
db $14,$00,$14,$00,$14,$00,$f7,$00,$00,$00,$f7,$00,$14,$00,$14,$00
|
|
|
|
SquaresTileset7:
|
|
db $0a,$00,$0a,$00,$0a,$00,$0a,$00,$fb,$00,$00,$00,$fb,$00,$0a,$00
|
|
|
|
SquaresTileset8:
|
|
db $05,$00,$05,$00,$05,$00,$05,$00,$05,$00,$fd,$00,$00,$00,$fd,$00
|
|
|
|
SquaresTilesetEnd:
|
|
|
|
|
|
SquaresTilemap:
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
db $01, $01, $09, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $08, $01, $01
|
|
db $01, $01, $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04, $01, $01
|
|
db $01, $01, $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04, $01, $01
|
|
db $01, $01, $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04, $01, $01
|
|
db $01, $01, $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04, $01, $01
|
|
db $01, $01, $03, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $04, $01, $01
|
|
db $01, $01, $06, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $07, $01, $01
|
|
db $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01
|
|
|
|
SquaresTilemapEnd: |