gb-tarot/tarot.asm

859 lines
34 KiB
NASM

; From https://gbdev.io/gb-asm-tutorial/part1/hello_world.html
; FF80 CALL
; FF81 LOW
; FF82 HIGH
; FF83 RET
; pattern repeats for the first 16 bytes so we can have some call vectors for the scene system
DEF SCENE_SETUP EQU $FF81
DEF SCENE_UPDATE EQU SCENE_SETUP + 4 ; call then ret is 3+1 bytes
DEF SCENE_DRAW EQU SCENE_UPDATE + 4
DEF SCENE_TEARDOWN EQU SCENE_DRAW + 4
DEF rMYBTN EQU $FF90
DEF rMYBTNP EQU rMYBTN + 1
DEF vSelectedTileIndex EQU $FF90+2
DEF vPreviousCardIndex EQU $FF90+3
INCLUDE "hardware.inc"
SECTION "Header", ROM0[$100]
jp EntryPoint
ds $150 - @, 0 ; Make room for the header
EntryPoint:
; Shut down audio circuitry
ld a, 0
ld [rNR52], a
ld a, [Instructions] ; get the value of a call instruction so we can shove it into our handles
ld hl, SCENE_SETUP - 1
ld [hl], a
ld hl, SCENE_UPDATE - 1
ld [hl], a
ld hl, SCENE_DRAW - 1
ld [hl], a
ld hl, SCENE_TEARDOWN - 1
ld [hl], a
ld a, [Instructions + 3] ; get the value of a ret instruction
ld hl, SCENE_SETUP + 2
ld [hl], a
ld hl, SCENE_UPDATE + 2
ld [hl], a
ld hl, SCENE_DRAW + 2
ld [hl], a
ld hl, SCENE_TEARDOWN + 2
ld [hl], a
; set up our scene vectors
ld hl, SCENE_SETUP
ld de, CardReadSetup
ld a, e
ld [hl+], a
ld a, d
ld [hl+], a
ld hl, SCENE_UPDATE
ld de, CardReadUpdate
ld a, e
ld [hl+], a
ld a, d
ld [hl+], a
ld hl, SCENE_DRAW
ld de, CardReadDraw
ld a, e
ld [hl+], a
ld a, d
ld [hl+], a
ld hl, SCENE_TEARDOWN
ld de, CardReadTeardown
ld a, e
ld [hl+], a
ld a, d
ld [hl+], a
; Do not turn the LCD off outside of VBlank
WaitVBlank:
ld a, [rLY]
cp 144
jp c, WaitVBlank
call SCENE_SETUP - 1
Loop:
ld hl, rP1
ld [hl], P1F_GET_DPAD
ld a, [hl]
ld a, [hl]
ld a, [hl]
ld a, [hl]
cpl
and a, %00001111
ld b, a
ld [hl], P1F_GET_BTN
ld a, [hl]
ld a, [hl]
ld a, [hl]
ld a, [hl]
cpl
and a, %00001111
swap a
or a, b
ld b, a
ld a, [rMYBTN]
cpl
and a, b
ld [rMYBTNP], a
ld a, b
ld [rMYBTN], a
call SCENE_UPDATE - 1
ld b, 144
call AwaitLine
call SCENE_DRAW - 1
jp Loop
;; CARD READ PAGE STARTS HERE
CardReadSetup:
; Turn the LCD off
ld a, 0
ld [rLCDC], a
ld hl, UITiles ; source
ld de, $8800 ; destination of copy
ld bc, UITilesEnd - UITiles ; length to copy
call CopyRange
ld hl, LetterTiles ; map the small font into vram at ascii locations
ld de, $8000 + (127 + $21)*16
ld bc, LetterTilesEnd - LetterTiles
call CopyRange
ld hl, BigLetterTiles
ld de, $8000 + (128 + 16 + 32)*16
ld bc, BigLetterTilesEnd - BigLetterTiles
; call CopyRange
ld de, UITilemap ; origin
ld hl, $9800 ; destination
ld b, 18 ; height
ld c, 20 ; width
call CopyTilesToMap
ld de, BigLetters
ld hl, $9800 + 32*1 + 10
ld b, 2
ld c, 8
call CopyTilesToMap
ld a, $FF
ld [vPreviousCardIndex], a
ld a, 0
call LoadCardData
; Turn the LCD on
ld a, LCDCF_BLK01 | LCDCF_ON | LCDCF_BGON
ld [rLCDC], a
; During the first (blank) frame, initialize display registers
ld a, %11100100
ld [rBGP], a
ld a, 0
ldh [vSelectedTileIndex], a
ret ; return from cardreadsetup
CardReadUpdate:
ldh a, [rMYBTNP]
and a, %0000_1000 ; check if down is held
jp z, CardReadUpdateDoneDown
ldh a, [vSelectedTileIndex]
inc a ; increment when they press down because the stack has card 0 at the top
ldh [vSelectedTileIndex], a
CardReadUpdateDoneDown:
ldh a, [rMYBTNP]
and a, %0000_0100
jp z, CardReadUpdateDoneUp
ldh a, [vSelectedTileIndex]
dec a ; decrement when they press up because the stack has card 0 at the top
ldh [vSelectedTileIndex], a
CardReadUpdateDoneUp:
ldh a, [vSelectedTileIndex]
cp a, 22
jp nz, CardReadUpdateDoneZero
ld a, 0
ldh [vSelectedTileIndex], a
CardReadUpdateDoneZero:
cp a, $FF
jp nz, CardReadUpdateReturn
ld a, 21
ldh [vSelectedTileIndex], a
CardReadUpdateReturn:
ret
CardReadDraw:
ldh a, [vSelectedTileIndex]
call LoadCardData
ld b, 11 ; 11 rows, and we stop before drawing row zero
ld hl, $9800+32*4+19 ; start point
ld de, 32 ; stride
CardReadDrawCopyTile:
ld a, $81
ld [hl], a
add hl, de
dec b
jp nz, CardReadDrawCopyTile
ld a, $87
ld [hl], a ; draw the cap at the end
CardReadDrawSelectedTile:
ldh a, [vSelectedTileIndex]
ld b, a
srl b
ld hl, $9800+32*4+19 ; start point
ld de, 32 ; stride
jp z, CardReadDrawDrawSelectedTile
CardReadDrawCountDownTile:
add hl, de
dec b
jp nz, CardReadDrawCountDownTile
CardReadDrawDrawSelectedTile:
ldh a, [vSelectedTileIndex]
and a, 1
jp z, CardReadDraw_PickTileWithTop
ld a, $90
ld [hl], a
add hl, de
ld a, $81
cp a, [hl]
ld a, $91
ld [hl], a
jp z, CardReadDrawReturn
ld a, $92
ld [hl], a
jp CardReadDrawReturn
CardReadDraw_PickTileWithTop:
ld a, $82
ld [hl], a
CardReadDrawReturn:
ld a, [vSelectedTileIndex]
call LoadCardData
ret
CardReadTeardown:
ret
LoadCardData:
ld hl, vPreviousCardIndex
cp a, [hl]
ret z
ld [vPreviousCardIndex], a
ld [vSelectedTileIndex], a
ld a, [rLCDC]
cp 0
jp z, LoadCardData_DoneTurningOff
ld b, 144
call AwaitLine ; put the line you want to reach in b
ld a, 0
ld [rLCDC], a ; turn off the lcd so we don't cause memory corruption
LoadCardData_DoneTurningOff:
ld a, [vSelectedTileIndex]
ld b, 0
ld c, a ; load bc from a. coming into this we have the number of the card in the card array in a
ld hl, Cards + 1 ; skip the length prefix
add hl, bc
add hl, bc ; add this twice to double the offset because it's two bytes per address
; follow the pointer we're looking at
ld a, [hl+]
ld c, a
ld a, [hl+]
ld b, a
ld h, b
ld l, c ; hl now contains the address of the card data.
; hl points to a card struct.
; card struct starts with a sequence of length-prefixed strings in memory
; so when we're done writing one, hl will be correctly placed to read the next
; length-prefixed print doesn't require passing a length
; so all we have to set is the destination for each
ld de, $9800 + 32*4 + 10
call PrintString
ld de, $9800 + 32*5 + 10
call PrintString
ld de, $9800 + 32*6 + 10
call PrintString
ld de, $9800 + 32*7 + 10
call PrintString
ld de, $9800 + 32*8 + 10
call PrintString
; hl now contains the address after all the strings.
; [hl+] and [hl+] read the length first, into bc
ld a, [hl+]
ld c, a
ld a, [hl+]
ld b, a ; bc has length
ld a, [hl+]
ld e, a
ld a, [hl+]
ld d, a ; de has source of tile range copy
push hl ; save the pointer to the next bit of card data (tile map)
ld h, d
ld l, e ; hl takes the source
ld de, $8000 ; always load tile data into the same spot in vram
call CopyRange
pop hl
ld a, [hl+]
ld c, a
ld a, [hl+]
ld b, a ; bc has length
ld a, [hl+]
ld e, a
ld a, [hl+]
ld d, a ; de has source of tile range copy
ld h, d
ld l, e ; hl takes the source
; push hl ; we don't need to keep track of hl at this point and our stack is clean.
ld hl, $9800 + 32 + 1 ; destination
ld b, 16 ; height
ld c, 8 ; width
call CopyTilesToMap
ld a, LCDCF_BLK01 | LCDCF_ON | LCDCF_BGON
ld [rLCDC], a
Instructions:
call Instructions + 2
ret
; subroutines
PrintString: ; write ascii string which has been prefixed by its length.
ld b, [hl]
inc hl
PrintBChars: ;write ascii characters. will not respect newlines or anything like that
; hl should be the source of ascii text
; de should be the location in the tile map to start writing at
; b should be the length
ld a, [hli]
or a, %10000000
ld [de], a
inc de
dec b
jp nz, PrintBChars
ret
AwaitLine: ; put the line you want to reach in b
ld a, [rLY]
cp b
jp nz, AwaitLine
ret
CopyRange:
; hl is source
; de is destination
; bc is length to copy
ld a, [hli]
ld [de], a
inc de
dec bc
ld a, b
or a, c ; check if bc is zero
jp nz, CopyRange
ret
CopyTilesToMap:
; copy tiles from where they are linearly packed at an origin (de)
; to a rectangle in the tilemap in vram (hl)
; assuming it has height in b and width in c.
push bc
CopyTile:
ld a, [de] ; load from the tile map into a
ld [hl], a ; load from a into the destination
inc hl ; this is slower than using hli but i'm trying to work with this here
inc de
dec c
; check if we've completed a line?
ld a, 0
or a, c ; check if c is zero, if it's not zero go back and copy more bytes
jp nz, CopyTile
DoneWithLine:
pop bc
ld a, l
add a, 32
ld l, a
ld a, h
adc a, 0
ld h, a
ld a, l
sub a, c
ld l, a
ld a, h
sbc a, 0
ld h, a
dec b
jp nz, CopyTilesToMap
ret
SECTION "Card Data", ROM0
Cards:
db 2
dw TheFool
dw TheMagician
; this is a card struct
; starts with five length-prefixed strings in memory
; then a 16bit value of the offset between the tile set and the end
; then the 16bit address of the tile set
; then a 16bit value of the offset between tile map and end
; then the 16bit address of the tile map
TheFool:
db 8, "THE FOOL"
db 8, " "
db 9, "-begin "
db 9, "-leap "
db 9, "-naivete "
dw FoolTilesEnd - FoolTiles
dw FoolTiles
dw FoolMapEnd - FoolMap
dw FoolMap, FoolMapEnd
FoolTiles:
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,$01,$00,$01,$00,$02
db $00,$00,$00,$00,$00,$1f,$00,$60,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$c0,$00,$20,$00,$10,$00,$10,$00,$08
db $00,$02,$00,$02,$00,$02,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$60,$00,$1f
db $00,$08,$00,$08,$00,$08,$00,$10,$00,$10,$00,$20,$00,$c0,$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,$00,$01,$1f,$0e,$3e,$10,$60,$3c,$c4,$ff,$03
db $00,$00,$00,$00,$00,$00,$f8,$f8,$00,$3c,$7c,$7c,$00,$38,$20,$21
db $00,$01,$01,$02,$01,$02,$03,$04,$07,$08,$0f,$10,$1f,$20,$1f,$20
db $f0,$0c,$e0,$10,$e0,$10,$c0,$20,$c0,$21,$80,$43,$80,$42,$01,$85
db $f0,$fe,$20,$2b,$10,$53,$e8,$eb,$8c,$8e,$42,$43,$00,$01,$00,$03
db $00,$00,$00,$00,$00,$80,$00,$c0,$00,$40,$00,$20,$00,$60,$00,$20
db $3f,$40,$3e,$41,$1d,$22,$0a,$14,$01,$0c,$02,$08,$05,$08,$02,$08
db $00,$f4,$a0,$1a,$50,$05,$a8,$02,$50,$05,$aa,$00,$55,$00,$aa,$01
db $80,$85,$00,$05,$00,$81,$00,$63,$02,$3d,$1f,$e0,$1c,$e3,$bd,$3c
db $00,$20,$00,$a0,$00,$20,$00,$20,$1f,$3f,$00,$aa,$01,$ab,$01,$6b
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$c0,$c0,$c0,$c0
db $05,$08,$02,$08,$04,$0b,$00,$0c,$00,$08,$00,$00,$00,$00,$00,$00
db $54,$01,$a9,$02,$00,$fe,$01,$02,$00,$02,$01,$04,$02,$04,$01,$04
db $46,$5c,$8f,$8e,$82,$8e,$86,$8d,$8c,$89,$ca,$b9,$7c,$89,$72,$8d
db $a6,$1e,$50,$08,$a8,$04,$54,$02,$a8,$02,$54,$02,$a8,$02,$54,$02
db $20,$20,$10,$10,$08,$08,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04
db $02,$04,$01,$04,$02,$04,$01,$04,$02,$04,$01,$04,$02,$04,$01,$06
db $78,$85,$3c,$43,$bc,$43,$3c,$43,$be,$41,$5e,$21,$9e,$21,$5d,$22
db $a8,$02,$54,$02,$a8,$02,$54,$02,$a8,$02,$50,$04,$a8,$04,$50,$04
db $04,$04,$04,$04,$04,$04,$04,$04,$04,$0c,$08,$08,$08,$18,$10,$30
db $00,$02,$01,$02,$00,$03,$00,$07,$00,$18,$00,$60,$00,$80,$00,$00
db $9c,$22,$1d,$62,$0c,$b2,$05,$1a,$04,$0a,$01,$06,$00,$82,$01,$82
db $a8,$04,$50,$04,$a8,$05,$53,$0f,$a0,$08,$50,$08,$a0,$08,$50,$08
db $20,$60,$40,$c0,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$82,$01,$82,$00,$82,$01,$82,$00,$c1,$00,$c0,$00,$60,$00,$70
db $a0,$08,$40,$38,$80,$48,$00,$84,$00,$04,$00,$04,$00,$04,$00,$08
db $00,$30,$00,$30,$00,$30,$00,$10,$00,$10,$00,$10,$00,$10,$00,$10
db $00,$08,$00,$08,$00,$08,$00,$08,$00,$08,$00,$10,$00,$10,$00,$08
db $00,$10,$00,$10,$00,$10,$00,$10,$00,$10,$00,$08,$00,$04,$00,$06
db $00,$08,$00,$08,$00,$08,$00,$04,$00,$0c,$00,$0c,$00,$38,$38,$c4
db $00,$03,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $78,$84,$fc,$02,$7e,$81,$3e,$41,$1f,$20,$0f,$10,$07,$08,$03,$04
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$80,$40,$c0,$20
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$00,$18
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fc,$00,$03
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f0
db $01,$02,$00,$01,$00,$03,$00,$0f,$00,$70,$00,$80,$00,$c0,$00,$e0
db $c0,$30,$e0,$18,$00,$fc,$00,$0c,$00,$04,$00,$04,$00,$04,$00,$04
db $00,$08,$00,$04,$00,$04,$00,$04,$00,$04,$00,$04,$00,$03,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $00,$0f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$fc,$00,$83,$00,$7c,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$80,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$20,$00,$20,$00,$20
db $00,$20,$00,$20,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$02,$00,$03
db $00,$0c,$00,$10,$00,$20,$00,$40,$00,$80,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$02,$00,$0b,$00,$2f,$00,$b8,$00,$e0
db $00,$01,$01,$02,$01,$02,$03,$04,$07,$08,$07,$08,$0f,$10,$1f,$20
db $00,$30,$00,$30,$00,$18,$00,$0c,$00,$0e,$00,$06,$00,$03,$00,$01
db $1f,$e0,$3e,$41,$1c,$22,$18,$24,$00,$18,$00,$08,$00,$08,$00,$90
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3c,$00,$33
db $00,$e0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$83,$00,$8e,$00,$d8,$80,$70,$c0,$30,$c0,$20,$80,$40,$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,$00,$00,$01,$00,$06
db $00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
FoolTilesEnd:
FoolMap:
db $00, $00, $01, $02, $03, $00, $00, $00
db $00, $00, $04, $05, $06, $00, $00, $00
db $00, $00, $07, $08, $09, $00, $00, $00
db $00, $00, $0a, $0b, $0c, $0d, $00, $00
db $00, $00, $0e, $0f, $10, $11, $12, $00
db $00, $00, $13, $14, $15, $16, $17, $00
db $00, $00, $00, $18, $19, $1a, $1b, $00
db $00, $00, $42, $1c, $1d, $1e, $1f, $00
db $00, $38, $39, $3a, $20, $21, $00, $00
db $3e, $3b, $40, $00, $22, $23, $00, $00
db $3c, $3d, $41, $00, $24, $25, $00, $00
db $43, $3f, $00, $00, $26, $27, $28, $00
db $00, $29, $2a, $2b, $00, $2c, $2d, $00
db $00, $2e, $2f, $30, $31, $32, $33, $34
db $00, $35, $36, $00, $00, $00, $00, $00
db $00, $00, $37, $00, $00, $00, $00, $00
FoolMapEnd:
TheMagician:
db 8, "THE "
db 8, "MAGICIAN"
db 9, "-capacity"
db 9, "-knowing "
db 9, "-manifest"
dw MagicianTilesEnd - MagicianTiles
dw MagicianTiles
dw MagicianMapEnd - MagicianMap
dw MagicianMap
MagicianTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$1f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$21,$00,$23,$00,$22,$01,$3e,$00,$02,$01,$02,$00,$02,$01,$02
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$c0,$40,$a0,$00,$98,$70,$8e
db $00,$00,$00,$00,$00,$00,$00,$70,$00,$50,$00,$50,$00,$50,$00,$50
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$01,$00,$01,$00,$01
db $00,$50,$00,$50,$00,$50,$00,$d0,$00,$58,$00,$54,$00,$26,$00,$96
db $00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$56,$00,$ad,$00,$4b,$00,$b3,$00,$60,$00,$20,$00,$20,$00,$20
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$80,$00,$40
db $00,$40,$00,$40,$00,$40,$00,$20,$00,$10,$00,$08,$00,$07,$03,$04
db $00,$04,$03,$04,$00,$04,$03,$04,$00,$0c,$07,$88,$00,$58,$0f,$30
db $00,$00,$00,$00,$00,$3f,$00,$20,$00,$60,$00,$40,$00,$df,$00,$90
db $00,$00,$00,$00,$00,$fc,$00,$06,$00,$02,$00,$01,$00,$f1,$00,$19
db $00,$90,$00,$90,$00,$90,$00,$90,$00,$90,$00,$90,$00,$90,$00,$90
db $00,$09,$00,$09,$00,$09,$00,$09,$00,$09,$00,$09,$00,$09,$00,$09
db $00,$8b,$70,$89,$00,$89,$f0,$08,$00,$08,$e0,$18,$00,$10,$e0,$10
db $00,$20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$20,$00,$20
db $00,$90,$00,$88,$00,$86,$00,$87,$00,$84,$00,$84,$00,$87,$00,$84
db $00,$08,$00,$10,$00,$70,$00,$f0,$00,$10,$00,$10,$00,$f0,$00,$20
db $00,$10,$e0,$10,$00,$10,$e0,$10,$00,$10,$e0,$10,$00,$10,$e0,$10
db $00,$14,$e0,$14,$00,$14,$e0,$12,$00,$0a,$f0,$0a,$00,$0a,$f0,$09
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1f,$00,$00,$00,$00
db $00,$80,$00,$80,$00,$80,$00,$80,$00,$80,$00,$f8,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$f8,$00,$80,$00,$80,$00,$80,$00,$80,$00,$80
db $00,$20,$00,$30,$00,$08,$00,$04,$00,$03,$00,$00,$00,$00,$00,$00
db $00,$10,$0f,$10,$00,$30,$1f,$20,$00,$20,$1f,$20,$00,$20,$1f,$20
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00
db $00,$20,$1f,$20,$00,$20,$1f,$20,$00,$20,$00,$ff,$00,$00,$00,$7f
db $00,$20,$c0,$20,$00,$20,$e0,$10,$00,$10,$00,$ff,$00,$00,$00,$fe
db $00,$02,$01,$02,$00,$02,$01,$02,$00,$02,$01,$e2,$00,$22,$01,$12
db $00,$92,$01,$52,$00,$4a,$01,$4a,$00,$8a,$01,$ca,$00,$36,$01,$e6
db $00,$46,$01,$82,$00,$03,$00,$03,$00,$81,$00,$40,$00,$20,$00,$40
db $00,$09,$f0,$08,$00,$08,$78,$84,$00,$84,$78,$84,$00,$84,$78,$84
db $00,$84,$78,$84,$00,$04,$08,$f4,$00,$1c,$00,$06,$00,$03,$00,$01
db $00,$84,$00,$84,$00,$82,$00,$82,$00,$82,$00,$82,$00,$82,$00,$82
db $00,$82,$00,$c2,$00,$62,$c0,$3e,$00,$20,$c0,$20,$00,$20,$c0,$20
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80
db $00,$20,$00,$20,$00,$21,$00,$21,$00,$21,$00,$21,$00,$21,$00,$21
db $00,$04,$00,$04,$00,$04,$00,$02,$00,$02,$00,$02,$00,$02,$00,$02
db $00,$02,$00,$02,$00,$3e,$00,$62,$00,$42,$00,$c2,$00,$81,$00,$80
db $00,$84,$00,$a3,$00,$a9,$00,$7d,$00,$0d,$00,$05,$00,$05,$00,$07
db $00,$40,$00,$c0,$00,$03,$00,$0e,$00,$08,$00,$10,$00,$10,$00,$30
db $00,$02,$00,$00,$00,$01,$00,$07,$00,$18,$00,$30,$00,$60,$00,$c0
db $00,$10,$e0,$10,$00,$10,$e0,$10,$00,$18,$e0,$18,$00,$18,$e0,$18
db $00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$40,$00,$40,$00,$40
db $00,$20,$00,$20,$00,$20,$00,$10,$00,$10,$00,$10,$00,$08,$00,$08
db $00,$00,$00,$00,$00,$70,$00,$8c,$00,$02,$00,$03,$00,$8c,$00,$70
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$01,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$0e,$00,$31,$00,$c0,$00,$40,$00,$31,$00,$0e
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$80,$00,$00,$00,$00
db $00,$1f,$00,$20,$00,$1f,$00,$00,$00,$00,$00,$02,$00,$02,$00,$7f
db $00,$ff,$00,$00,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff
db $00,$80,$00,$00,$00,$80,$00,$7f,$00,$00,$00,$00,$00,$00,$00,$ff
db $00,$01,$00,$00,$00,$00,$00,$fe,$00,$01,$00,$07,$00,$18,$00,$ff
db $00,$42,$00,$7f,$00,$02,$00,$02,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$ff,$00,$00,$00,$1f,$00,$64,$00,$bb,$00,$8e,$00,$7b,$00,$1f
db $00,$84,$00,$02,$00,$01,$00,$c1,$00,$a3,$00,$25,$00,$c8,$00,$04
db $00,$03,$00,$ff,$00,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$80,$00,$ff,$00,$81,$00,$ff,$00,$47,$00,$6c,$00,$38,$00,$50
db $00,$00,$00,$ff,$00,$18,$00,$ff,$00,$c0,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$ff,$00,$00,$00,$ff,$00,$c0,$00,$40,$00,$61,$00,$27
db $00,$2c,$00,$38,$00,$00,$00,$00,$00,$00,$00,$e0,$00,$a0,$00,$20
db $00,$00,$00,$ff,$00,$06,$00,$fc,$00,$04,$00,$04,$00,$f8,$00,$0c
db $00,$06,$00,$02,$00,$03,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00
db $00,$d0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$01,$00,$03,$00,$02,$00,$00,$00,$00,$00,$00
db $00,$c0,$00,$80,$00,$80,$00,$00,$00,$00,$00,$1f,$00,$3e,$00,$26
db $00,$20,$00,$20,$00,$f8,$00,$0c,$00,$02,$00,$03,$00,$00,$00,$00
db $00,$64,$00,$7d,$00,$7d,$00,$66,$00,$4c,$00,$6b,$00,$3e,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$c0,$00,$60
db $00,$a0,$00,$60,$00,$40,$00,$c0,$00,$c0,$00,$00,$00,$00,$00,$00
db $00,$01,$00,$01,$00,$01,$00,$01,$00,$01,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$06,$00,$0f,$00,$08
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$00,$f8
db $00,$08,$00,$0e,$00,$1c,$00,$10,$00,$11,$00,$1b,$00,$0f,$00,$01
db $00,$88,$00,$08,$00,$08,$00,$78,$00,$10,$00,$10,$00,$30,$00,$e0
db $00,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$20,$00,$e0,$00,$60,$00,$20,$00,$60,$00,$c0,$00,$00,$00,$01
db $00,$00,$00,$00,$00,$00,$00,$3e,$00,$6f,$00,$cf,$00,$dc,$00,$d4
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$e0,$00,$60,$00,$70
db $00,$56,$00,$63,$00,$61,$00,$38,$00,$97,$00,$90,$00,$d1,$00,$7f
db $00,$70,$00,$f0,$00,$f0,$00,$20,$00,$e0,$00,$c0,$00,$80,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$0e,$00,$1a,$00,$11,$00,$19
db $00,$0c,$00,$30,$00,$62,$00,$46,$00,$6c,$00,$3f,$00,$00,$00,$00
db $00,$20,$1f,$20,$00,$20,$1f,$20,$00,$20,$1f,$20,$00,$20,$1f,$20
MagicianTilesEnd:
MagicianMap:
db $00, $04, $00, $00, $00, $00, $00, $00
db $05, $06, $30, $2f, $31, $32, $00, $00
db $07, $08, $09, $0c, $0d, $00, $00, $00
db $00, $11, $0a, $0e, $0f, $25, $00, $00
db $00, $19, $0b, $12, $13, $03, $00, $00
db $00, $00, $1a, $23, $26, $10, $2d, $00
db $00, $00, $56, $24, $02, $14, $2e, $00
db $1b, $1b, $1c, $1d, $1e, $2c, $27, $00
db $33, $34, $35, $36, $1f, $15, $28, $25
db $37, $38, $39, $3a, $20, $21, $29, $2a
db $3d, $3e, $40, $3b, $3c, $22, $2b, $45
db $54, $3f, $41, $00, $42, $43, $44, $47
db $55, $4f, $50, $51, $4a, $4b, $46, $48
db $00, $49, $52, $53, $4c, $4d, $00, $00
db $00, $00, $00, $01, $18, $4e, $00, $00
db $00, $00, $00, $16, $17, $00, $00, $00
MagicianMapEnd:
SECTION "Tile data", ROM0
Spreads:
UITiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $0f,$0f,$10,$10,$10,$10,$10,$10,$0f,$0f,$10,$10,$10,$10,$10,$10
db $7f,$7f,$80,$80,$80,$80,$80,$80,$7f,$7f,$10,$10,$10,$10,$10,$10
db $00,$3c,$3c,$7e,$42,$c3,$42,$c3,$42,$c3,$42,$c3,$42,$c3,$42,$c3
db $42,$c3,$42,$c3,$42,$c3,$42,$c3,$42,$c3,$42,$c3,$3c,$7e,$00,$3c
db $00,$3c,$3c,$7e,$42,$c3,$5a,$db,$5a,$db,$5a,$db,$5a,$db,$5a,$db
db $5a,$db,$5a,$db,$5a,$db,$5a,$db,$5a,$db,$42,$c3,$3c,$7e,$00,$3c
db $0f,$0f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ce,$f0,$c6,$f8,$0e,$f0,$16,$e8,$5e,$a0,$fe,$00,$fc,$00,$00,$00
db $ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8,$ce,$f0,$c6,$f8
db $00,$00,$fc,$00,$fe,$00,$ae,$50,$1e,$e0,$06,$f8,$ce,$f0,$c6,$f8
db $00,$00,$3f,$00,$7f,$00,$7a,$05,$68,$17,$70,$0f,$63,$1f,$73,$0f
db $63,$1f,$73,$0f,$60,$1f,$78,$07,$75,$0a,$7f,$00,$3f,$00,$00,$00
db $00,$00,$ff,$00,$ff,$00,$aa,$55,$00,$ff,$00,$ff,$ff,$ff,$ff,$ff
db $63,$1f,$73,$0f,$63,$1f,$73,$0f,$63,$1f,$73,$0f,$63,$1f,$73,$0f
db $ff,$ff,$ff,$ff,$00,$ff,$00,$ff,$55,$aa,$ff,$00,$ff,$00,$00,$00
db $0f,$0f,$10,$10,$10,$10,$10,$10,$7f,$7f,$80,$80,$80,$80,$80,$80
db $7f,$7f,$10,$10,$10,$10,$10,$10,$0f,$0f,$10,$10,$10,$10,$10,$10
db $7f,$7f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
UITilesEnd:
LetterTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$00,$00,$04,$04
db $28,$28,$28,$28,$28,$28,$08,$08,$00,$00,$00,$00,$00,$00,$00,$00
db $04,$04,$24,$24,$2c,$2c,$28,$28,$fc,$fc,$28,$28,$fe,$fe,$28,$28
db $38,$38,$60,$60,$e0,$e0,$70,$70,$30,$30,$20,$20,$e0,$e0,$60,$60
db $e0,$e0,$b0,$b0,$b2,$b2,$e4,$e4,$08,$08,$16,$16,$35,$35,$27,$27
db $1c,$1c,$74,$74,$60,$60,$38,$38,$3d,$3d,$37,$37,$3e,$3e,$3c,$3c
db $00,$00,$18,$18,$10,$10,$10,$10,$00,$00,$00,$00,$00,$00,$00,$00
db $08,$08,$10,$10,$20,$20,$20,$20,$20,$20,$20,$20,$30,$30,$10,$10
db $00,$00,$00,$00,$0e,$0e,$02,$02,$02,$02,$06,$06,$0c,$0c,$18,$18
db $02,$02,$46,$46,$6c,$6c,$78,$78,$7c,$7c,$68,$68,$0c,$0c,$00,$00
db $08,$08,$08,$08,$08,$08,$08,$08,$7c,$7c,$08,$08,$08,$08,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$08,$08,$08,$08,$18,$18,$10,$10
db $00,$00,$00,$00,$00,$00,$3c,$3c,$20,$20,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$20,$20,$00,$00
db $00,$00,$00,$00,$02,$02,$04,$04,$0c,$0c,$08,$08,$10,$10,$10,$10
db $00,$00,$00,$00,$3c,$3c,$24,$24,$24,$24,$3c,$3c,$00,$00,$00,$00
db $00,$00,$04,$04,$04,$04,$04,$04,$04,$04,$0c,$0c,$08,$08,$00,$00
db $00,$00,$0c,$0c,$12,$12,$12,$12,$02,$02,$0e,$0e,$07,$07,$00,$00
db $00,$00,$00,$00,$38,$38,$08,$08,$18,$18,$18,$18,$00,$00,$00,$00
db $02,$02,$32,$32,$26,$26,$3e,$3e,$24,$24,$04,$04,$00,$00,$00,$00
db $00,$00,$00,$00,$3e,$3e,$20,$20,$38,$38,$08,$08,$38,$38,$20,$20
db $00,$00,$00,$00,$30,$30,$20,$20,$58,$58,$68,$68,$7c,$7c,$3c,$3c
db $00,$00,$1e,$1e,$03,$03,$03,$03,$02,$02,$04,$04,$04,$04,$00,$00
db $00,$00,$3c,$3c,$24,$24,$38,$38,$18,$18,$1c,$1c,$38,$38,$00,$00
db $00,$00,$00,$00,$3e,$3e,$64,$64,$7c,$7c,$0c,$0c,$08,$08,$10,$10
db $00,$00,$00,$00,$10,$10,$00,$00,$00,$00,$10,$10,$10,$10,$00,$00
db $00,$00,$08,$08,$00,$00,$00,$00,$0c,$0c,$04,$04,$0c,$0c,$18,$18
db $00,$00,$04,$04,$1c,$1c,$30,$30,$60,$60,$78,$78,$1e,$1e,$02,$02
db $00,$00,$00,$00,$00,$00,$3c,$3c,$40,$40,$78,$78,$00,$00,$00,$00
db $00,$00,$20,$20,$30,$30,$18,$18,$0c,$0c,$1c,$1c,$30,$30,$00,$00
db $0c,$0c,$3c,$3c,$24,$24,$0c,$0c,$08,$08,$08,$08,$00,$00,$08,$08
db $00,$00,$04,$04,$1e,$1e,$3f,$3f,$36,$36,$3e,$3e,$1c,$1c,$00,$00
db $00,$00,$10,$10,$28,$28,$28,$28,$7c,$7c,$44,$44,$82,$82,$82,$82
db $00,$00,$7c,$7c,$22,$22,$22,$22,$3c,$3c,$22,$22,$22,$22,$7c,$7c
db $00,$00,$3c,$3c,$42,$42,$40,$40,$40,$40,$40,$40,$42,$42,$3c,$3c
db $00,$00,$78,$78,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$78,$78
db $00,$00,$7c,$7c,$44,$44,$40,$40,$78,$78,$40,$40,$44,$44,$7c,$7c
db $00,$00,$7c,$7c,$24,$24,$20,$20,$38,$38,$20,$20,$20,$20,$20,$20
db $00,$00,$38,$38,$44,$44,$40,$40,$4c,$4c,$44,$44,$44,$44,$38,$38
db $00,$00,$44,$44,$44,$44,$44,$44,$7c,$7c,$44,$44,$44,$44,$44,$44
db $00,$00,$38,$38,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$38,$38
db $00,$00,$0e,$0e,$04,$04,$04,$04,$04,$04,$04,$04,$44,$44,$38,$38
db $00,$00,$48,$48,$50,$50,$60,$60,$60,$60,$50,$50,$48,$48,$44,$44
db $00,$00,$70,$70,$20,$20,$20,$20,$20,$20,$20,$20,$22,$22,$7e,$7e
db $00,$00,$42,$42,$66,$66,$5a,$5a,$42,$42,$42,$42,$42,$42,$42,$42
db $00,$00,$64,$64,$64,$64,$54,$54,$54,$54,$4c,$4c,$4c,$4c,$44,$44
db $00,$00,$38,$38,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$38,$38
db $00,$00,$78,$78,$44,$44,$44,$44,$44,$44,$78,$78,$40,$40,$40,$40
db $00,$00,$38,$38,$44,$44,$44,$44,$44,$44,$4c,$4c,$44,$44,$3a,$3a
db $00,$00,$78,$78,$44,$44,$44,$44,$7c,$7c,$48,$48,$48,$48,$44,$44
db $00,$00,$1c,$1c,$22,$22,$20,$20,$1c,$1c,$02,$02,$62,$62,$1c,$1c
db $00,$00,$7c,$7c,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10
db $00,$00,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$3c,$3c
db $00,$00,$44,$44,$44,$44,$28,$28,$28,$28,$28,$28,$10,$10,$10,$10
db $00,$00,$82,$82,$82,$82,$44,$44,$54,$54,$54,$54,$28,$28,$28,$28
db $00,$00,$44,$44,$28,$28,$28,$28,$10,$10,$28,$28,$28,$28,$44,$44
db $00,$00,$44,$44,$28,$28,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10
db $00,$00,$7c,$7c,$08,$08,$08,$08,$10,$10,$20,$20,$20,$20,$7c,$7c
db $00,$00,$3c,$3c,$20,$20,$20,$20,$20,$20,$20,$20,$3c,$3c,$00,$00
db $00,$00,$c0,$c0,$c0,$c0,$40,$40,$60,$60,$20,$20,$10,$10,$18,$18
db $18,$18,$0f,$0f,$03,$03,$02,$02,$02,$02,$02,$02,$12,$12,$1e,$1e
db $08,$08,$1c,$1c,$34,$34,$04,$04,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3e,$3e,$00,$00
db $20,$20,$18,$18,$0c,$0c,$04,$04,$00,$00,$00,$00,$00,$00,$00,$00
db $00,$00,$00,$00,$38,$38,$0c,$0c,$3c,$3c,$4c,$4c,$3a,$3a,$00,$00
db $00,$00,$30,$30,$30,$30,$3c,$3c,$32,$32,$32,$32,$3c,$3c,$00,$00
db $00,$00,$00,$00,$1c,$1c,$30,$30,$30,$30,$30,$30,$1c,$1c,$00,$00
db $00,$00,$0c,$0c,$0c,$0c,$3c,$3c,$4c,$4c,$4c,$4c,$3c,$3c,$00,$00
db $00,$00,$00,$00,$38,$38,$64,$64,$78,$78,$60,$60,$3c,$3c,$00,$00
db $00,$00,$0e,$0e,$18,$18,$3c,$3c,$18,$18,$18,$18,$18,$18,$00,$00
db $00,$00,$00,$00,$3c,$3c,$4c,$4c,$4c,$4c,$3c,$3c,$0c,$0c,$38,$38
db $00,$00,$60,$60,$60,$60,$78,$78,$64,$64,$64,$64,$64,$64,$00,$00
db $00,$00,$10,$10,$00,$00,$38,$38,$18,$18,$18,$18,$3c,$3c,$00,$00
db $00,$00,$04,$04,$00,$00,$0c,$0c,$0c,$0c,$0c,$0c,$2c,$2c,$18,$18
db $00,$00,$60,$60,$68,$68,$68,$68,$70,$70,$68,$68,$64,$64,$00,$00
db $00,$00,$30,$30,$30,$30,$30,$30,$30,$30,$30,$30,$0c,$0c,$00,$00
db $00,$00,$00,$00,$74,$74,$6a,$6a,$6a,$6a,$6a,$6a,$6a,$6a,$00,$00
db $00,$00,$00,$00,$78,$78,$64,$64,$64,$64,$64,$64,$64,$64,$00,$00
db $00,$00,$00,$00,$38,$38,$64,$64,$64,$64,$64,$64,$38,$38,$00,$00
db $00,$00,$00,$00,$78,$78,$64,$64,$64,$64,$78,$78,$60,$60,$60,$60
db $00,$00,$00,$00,$3c,$3c,$4c,$4c,$4c,$4c,$3c,$3c,$0c,$0c,$0e,$0e
db $00,$00,$00,$00,$1c,$1c,$30,$30,$30,$30,$30,$30,$30,$30,$00,$00
db $00,$00,$00,$00,$38,$38,$60,$60,$38,$38,$0c,$0c,$78,$78,$00,$00
db $00,$00,$30,$30,$78,$78,$30,$30,$30,$30,$30,$30,$1c,$1c,$00,$00
db $00,$00,$00,$00,$64,$64,$64,$64,$64,$64,$64,$64,$3c,$3c,$00,$00
db $00,$00,$00,$00,$64,$64,$64,$64,$64,$64,$28,$28,$10,$10,$00,$00
db $00,$00,$00,$00,$62,$62,$6a,$6a,$6a,$6a,$6a,$6a,$34,$34,$00,$00
db $00,$00,$00,$00,$64,$64,$38,$38,$18,$18,$2c,$2c,$46,$46,$00,$00
db $00,$00,$00,$00,$4c,$4c,$4c,$4c,$4c,$4c,$3c,$3c,$0c,$0c,$38,$38
db $00,$00,$00,$00,$7e,$7e,$0c,$0c,$18,$18,$30,$30,$7e,$7e,$00,$00
db $0e,$0e,$18,$18,$0c,$0c,$0c,$0c,$38,$38,$08,$08,$18,$18,$1c,$1c
db $20,$20,$30,$30,$20,$20,$10,$10,$10,$10,$10,$10,$00,$00,$00,$00
db $30,$30,$38,$38,$10,$10,$10,$10,$10,$10,$18,$18,$18,$18,$30,$30
db $00,$00,$00,$00,$32,$32,$3c,$3c,$78,$78,$00,$00,$00,$00,$00,$00
db $06,$06,$7c,$7c,$5f,$5f,$5b,$5b,$5e,$5e,$72,$72,$03,$03,$00,$00
LetterTilesEnd:
BigLetterTiles:
db $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
db $ee,$ee,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44
db $7c,$7c,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$ee,$ee
db $10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$38,$38
db $38,$38,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10
db $70,$70,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$42,$42,$fe,$fe
db $fe,$fe,$42,$42,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40
db $48,$48,$44,$44,$44,$44,$44,$44,$44,$44,$42,$42,$42,$42,$e3,$e3
db $fc,$fc,$42,$42,$42,$42,$42,$42,$42,$42,$7c,$7c,$48,$48,$48,$48
db $42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$3c,$3c
db $3c,$3c,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42
db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$70,$70
db $7c,$7c,$22,$22,$22,$22,$22,$22,$22,$22,$3c,$3c,$20,$20,$20,$20
db $38,$38,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$ee,$ee
db $10,$10,$28,$28,$28,$28,$28,$28,$28,$28,$28,$28,$28,$28,$28,$28
db $ce,$ce,$44,$44,$64,$64,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54
db $54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$4c,$4c,$44,$44,$e6,$e6
db $fe,$fe,$92,$92,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10
db $7e,$7e,$22,$22,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20
db $38,$38,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$70,$70
db $70,$70,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20
db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$22,$22,$7e,$7e
db $42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$fc,$fc
db $f8,$f8,$44,$44,$42,$42,$42,$42,$44,$44,$78,$78,$44,$44,$42,$42
db $ee,$ee,$44,$44,$44,$44,$44,$44,$44,$44,$7c,$7c,$44,$44,$44,$44
db $44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$ee,$ee
db $7e,$7e,$22,$22,$20,$20,$20,$20,$20,$20,$38,$38,$20,$20,$20,$20
db $fe,$fe,$42,$42,$40,$40,$40,$40,$40,$40,$70,$70,$40,$40,$40,$40
db $40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$40,$42,$42,$fe,$fe
db $3c,$3c,$42,$42,$42,$42,$42,$42,$40,$40,$40,$40,$40,$40,$40,$40
db $40,$40,$40,$40,$40,$40,$40,$40,$42,$42,$42,$42,$42,$42,$3c,$3c
db $42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$44,$44,$f8,$f8
db $f8,$f8,$44,$44,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42,$42
db $80,$80,$80,$80,$8f,$8f,$8a,$8a,$82,$82,$82,$82,$44,$44,$38,$38
db $38,$38,$44,$44,$82,$82,$82,$82,$82,$82,$80,$80,$80,$80,$80,$80
db $04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$44,$44,$44,$44,$38,$38
db $0e,$0e,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04,$04
db $ee,$ee,$44,$44,$44,$44,$48,$48,$50,$50,$60,$60,$50,$50,$48,$48
db $54,$54,$54,$54,$54,$54,$54,$54,$44,$44,$44,$44,$44,$44,$ee,$ee
db $c6,$c6,$6c,$6c,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54
db $42,$42,$42,$42,$42,$42,$42,$42,$4a,$4a,$4c,$4c,$4c,$4c,$36,$36
db $3c,$3c,$42,$42,$42,$42,$40,$40,$40,$40,$3c,$3c,$02,$02,$02,$02
db $02,$02,$02,$02,$02,$02,$02,$02,$02,$02,$42,$42,$42,$42,$3c,$3c
db $44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$28,$28,$10,$10
db $44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$44,$38,$38
db $44,$44,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$54,$28,$28
db $10,$10,$10,$10,$28,$28,$28,$28,$28,$28,$44,$44,$44,$44,$ee,$ee
db $ee,$ee,$44,$44,$44,$44,$28,$28,$28,$28,$28,$28,$10,$10,$10,$10
db $ee,$ee,$44,$44,$44,$44,$28,$28,$10,$10,$10,$10,$10,$10,$10,$10
db $fe,$fe,$82,$82,$04,$04,$04,$04,$08,$08,$08,$08,$08,$08,$10,$10
db $10,$10,$20,$20,$20,$20,$20,$20,$40,$40,$40,$40,$82,$82,$fe,$fe
BigLetterTilesEnd:
SECTION "Tilemap", ROM0
UITilemap:
db $8b, $8d, $8d, $8d, $8d, $8d, $8d, $8d, $8d, $8a, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $85, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $83, $86, $83, $83, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $84, $83, $84, $84, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $84, $80, $80, $80, $80, $80, $80
db $8e, $80, $80, $80, $80, $80, $80, $80, $80, $89, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
db $8c, $8f, $8f, $8f, $8f, $8f, $8f, $8f, $8f, $88, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80
UITilemapEnd:
BigLetters:
db $c1, $b1, $b6, $b0, $c2, $ba, $ba, $c4
db $b3, $b2, $b5, $b0, $c3, $b9, $b9, $c5
BigLettersEnd: