sprites
This commit is contained in:
parent
b29f44c1c0
commit
eab34d8f0b
|
@ -10,6 +10,4 @@ ROMNAME := out
|
||||||
ROMEXT := gb
|
ROMEXT := gb
|
||||||
ASFLAGS += -h
|
ASFLAGS += -h
|
||||||
LDFLAGS += -d
|
LDFLAGS += -d
|
||||||
ASFLAGS += -v
|
|
||||||
LDFLAGS += -v
|
|
||||||
LDFLAGS += -t
|
LDFLAGS += -t
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
; * Libraries and Defines *
|
; * Libraries and Defines *
|
||||||
; * *
|
; * *
|
||||||
; *****************************************************************************
|
; *****************************************************************************
|
||||||
INCLUDE "hardware.inc"
|
INCLUDE "vendor/hardware.inc"
|
||||||
INCLUDE "structs.asm"
|
INCLUDE "vendor/structs.asm"
|
||||||
|
|
||||||
; *****************************************************************************
|
; *****************************************************************************
|
||||||
; * *
|
; * *
|
||||||
|
@ -14,12 +14,37 @@ INCLUDE "structs.asm"
|
||||||
SECTION "General Game Variables", WRAM0
|
SECTION "General Game Variables", WRAM0
|
||||||
wLCDCCtr:: db
|
wLCDCCtr:: db
|
||||||
wEvenFrame:: db
|
wEvenFrame:: db
|
||||||
wField:: ds 200
|
wField:: ds (10*22)
|
||||||
wRNGSeed:: ds 4
|
wRNGSeed:: ds 4
|
||||||
wFill:: db
|
|
||||||
|
|
||||||
SECTION "Important Game Variables", HRAM
|
SECTION "Important Game Variables", HRAM
|
||||||
hUnused:: ds 126
|
hScore:: ds 6
|
||||||
|
hCLevel:: ds 6
|
||||||
|
hNLevel:: ds 6
|
||||||
|
|
||||||
|
|
||||||
|
; *****************************************************************************
|
||||||
|
; * *
|
||||||
|
; * Static Data *
|
||||||
|
; * *
|
||||||
|
; *****************************************************************************
|
||||||
|
SECTION "Static Data", ROM0
|
||||||
|
sPieceXOffsets::
|
||||||
|
db 0, 8, 16, 24 ; I
|
||||||
|
db 0, 8, 8, 16 ; Z
|
||||||
|
db 0, 8, 8, 16 ; S
|
||||||
|
db 0, 8, 16, 16 ; J
|
||||||
|
db 0, 0, 8, 16 ; L
|
||||||
|
db 8, 8, 16, 16 ; O
|
||||||
|
db 0, 8, 8, 16 ; T
|
||||||
|
sPieceYOffsets::
|
||||||
|
db 0, 0, 0, 0 ; I
|
||||||
|
db 0, 0, 7, 7 ; Z
|
||||||
|
db 7, 7, 0, 0 ; S
|
||||||
|
db 0, 0, 0, 7 ; J
|
||||||
|
db 0, 7, 0, 0 ; L
|
||||||
|
db 0, 7, 0, 7 ; O
|
||||||
|
db 0, 0, 7, 0 ; T
|
||||||
|
|
||||||
|
|
||||||
; *****************************************************************************
|
; *****************************************************************************
|
||||||
|
@ -41,6 +66,7 @@ DEF PALETTE_LIGHTER_0 EQU %11100100
|
||||||
DEF PALETTE_LIGHTER_1 EQU %10010000
|
DEF PALETTE_LIGHTER_1 EQU %10010000
|
||||||
DEF PALETTE_LIGHTER_2 EQU %01000000
|
DEF PALETTE_LIGHTER_2 EQU %01000000
|
||||||
DEF PALETTE_LIGHTER_3 EQU %00000000
|
DEF PALETTE_LIGHTER_3 EQU %00000000
|
||||||
|
DEF FIELD_TOP_LEFT EQU $9800+(0*32)+1
|
||||||
DEF FIELD_ROW_1 EQU $9800+(0*32)+1
|
DEF FIELD_ROW_1 EQU $9800+(0*32)+1
|
||||||
DEF FIELD_ROW_2 EQU $9800+(1*32)+1
|
DEF FIELD_ROW_2 EQU $9800+(1*32)+1
|
||||||
DEF FIELD_ROW_3 EQU $9800+(2*32)+1
|
DEF FIELD_ROW_3 EQU $9800+(2*32)+1
|
||||||
|
@ -61,6 +87,17 @@ DEF FIELD_ROW_17 EQU $9800+(16*32)+1
|
||||||
DEF FIELD_ROW_18 EQU $9800+(17*32)+1
|
DEF FIELD_ROW_18 EQU $9800+(17*32)+1
|
||||||
DEF FIELD_ROW_19 EQU $9800+(18*32)+1
|
DEF FIELD_ROW_19 EQU $9800+(18*32)+1
|
||||||
DEF FIELD_ROW_20 EQU $9800+(19*32)+1
|
DEF FIELD_ROW_20 EQU $9800+(19*32)+1
|
||||||
|
DEF TILE_FIELD_EMPTY EQU 7
|
||||||
|
DEF TILE_PIECE_0 EQU 10
|
||||||
|
DEF TILE_0 EQU 110
|
||||||
|
DEF NEXT_BASE_X EQU 120
|
||||||
|
DEF NEXT_BASE_Y EQU 40
|
||||||
|
DEF HOLD_BASE_X EQU 120
|
||||||
|
DEF HOLD_BASE_Y EQU 80
|
||||||
|
DEF DIGIT_BASE_X EQU 112
|
||||||
|
DEF SCORE_BASE_Y EQU 115
|
||||||
|
DEF CLEVEL_BASE_Y EQU 136
|
||||||
|
DEF NLEVEL_BASE_Y EQU 148
|
||||||
|
|
||||||
|
|
||||||
; *****************************************************************************
|
; *****************************************************************************
|
||||||
|
@ -94,6 +131,29 @@ MACRO wait_vblank_end
|
||||||
jr z, .waitvbe\@
|
jr z, .waitvbe\@
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
|
; Sets the background palette to A.
|
||||||
|
MACRO set_bg_palette
|
||||||
|
ldh [rBGP], a
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
; Sets the object0 palette to A.
|
||||||
|
MACRO set_obj0_palette
|
||||||
|
ldh [rOBP0], a
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
; Sets the object1 palette to A.
|
||||||
|
MACRO set_obj1_palette
|
||||||
|
ldh [rOBP1], a
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
; Sets all palettes to A.
|
||||||
|
MACRO set_all_palettes
|
||||||
|
set_bg_palette a
|
||||||
|
set_obj0_palette a
|
||||||
|
set_obj1_palette a
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
|
||||||
; Writes two bytes to a register pair.
|
; Writes two bytes to a register pair.
|
||||||
MACRO lb
|
MACRO lb
|
||||||
ld \1, (LOW(\2) << 8) | LOW(\3)
|
ld \1, (LOW(\2) << 8) | LOW(\3)
|
||||||
|
|
|
@ -1,15 +1,18 @@
|
||||||
SECTION "Hardware Control Functions", ROM0
|
SECTION "Hardware Control Functions", ROM0
|
||||||
SetBGPalette::
|
|
||||||
ldh [rBGP], a
|
|
||||||
ret
|
|
||||||
|
|
||||||
|
|
||||||
DisableAudio::
|
DisableAudio::
|
||||||
xor a, a
|
xor a, a
|
||||||
ldh [rNR52], a
|
ldh [rNR52], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
DisableLCDKeepingSettings::
|
||||||
|
ldh a, [rLCDC]
|
||||||
|
and LOW(~LCDCF_ON)
|
||||||
|
wait_vram
|
||||||
|
ldh [rLCDC], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
DisableLCD::
|
DisableLCD::
|
||||||
wait_vram
|
wait_vram
|
||||||
xor a, a
|
xor a, a
|
||||||
|
@ -18,6 +21,14 @@ DisableLCD::
|
||||||
|
|
||||||
|
|
||||||
EnableLCD::
|
EnableLCD::
|
||||||
ld a, LCDCF_ON | LCDCF_BGON
|
ldh a, [rLCDC]
|
||||||
|
or LCDCF_ON | LCDCF_BGON | LCDCF_OBJON
|
||||||
|
ldh [rLCDC], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
SetTileDataBanks::
|
||||||
|
ldh a, [rLCDC]
|
||||||
|
or LCDCF_BLK01
|
||||||
ldh [rLCDC], a
|
ldh [rLCDC], a
|
||||||
ret
|
ret
|
||||||
|
|
|
@ -22,3 +22,13 @@ SafeMemCopy::
|
||||||
or a, c
|
or a, c
|
||||||
jp nz, SafeMemCopy
|
jp nz, SafeMemCopy
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
; Sets memory from hl to hl+bc to d
|
||||||
|
UnsafeMemSet::
|
||||||
|
ld [hl], d
|
||||||
|
inc hl
|
||||||
|
dec bc
|
||||||
|
ld a, b
|
||||||
|
or a, c
|
||||||
|
jp nz, UnsafeMemSet
|
||||||
|
ret
|
||||||
|
|
|
@ -0,0 +1,322 @@
|
||||||
|
SECTION "Shadow OAM", WRAM0, ALIGN[8]
|
||||||
|
UNION
|
||||||
|
wShadowOAM:: ds 160
|
||||||
|
NEXTU
|
||||||
|
wSPRNext1:: ds 4
|
||||||
|
wSPRNext2:: ds 4
|
||||||
|
wSPRNext3:: ds 4
|
||||||
|
wSPRNext4:: ds 4
|
||||||
|
wSPRHold1:: ds 4
|
||||||
|
wSPRHold2:: ds 4
|
||||||
|
wSPRHold3:: ds 4
|
||||||
|
wSPRHold4:: ds 4
|
||||||
|
wSPRScore1:: ds 4
|
||||||
|
wSPRScore2:: ds 4
|
||||||
|
wSPRScore3:: ds 4
|
||||||
|
wSPRScore4:: ds 4
|
||||||
|
wSPRScore5:: ds 4
|
||||||
|
wSPRScore6:: ds 4
|
||||||
|
wSPRCLevel1:: ds 4
|
||||||
|
wSPRCLevel2:: ds 4
|
||||||
|
wSPRCLevel3:: ds 4
|
||||||
|
wSPRCLevel4:: ds 4
|
||||||
|
wSPRCLevel5:: ds 4
|
||||||
|
wSPRCLevel6:: ds 4
|
||||||
|
wSPRNLevel1:: ds 4
|
||||||
|
wSPRNLevel2:: ds 4
|
||||||
|
wSPRNLevel3:: ds 4
|
||||||
|
wSPRNLevel4:: ds 4
|
||||||
|
wSPRNLevel5:: ds 4
|
||||||
|
wSPRNLevel6:: ds 4
|
||||||
|
wSPRUnused:: ds (14 * 4)
|
||||||
|
ENDU
|
||||||
|
|
||||||
|
|
||||||
|
SECTION "OAM DMA Code", ROM0
|
||||||
|
OAMDMA::
|
||||||
|
LOAD "OAM DMA", HRAM
|
||||||
|
hOAMDMA::
|
||||||
|
ld a, HIGH(wShadowOAM)
|
||||||
|
ldh [rDMA], a
|
||||||
|
ld a, 40
|
||||||
|
: dec a
|
||||||
|
jr nz, :-
|
||||||
|
ret
|
||||||
|
ENDL
|
||||||
|
OAMDMAEnd::
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SECTION "OAM Functions", ROM0
|
||||||
|
CopyOAMHandler::
|
||||||
|
ld de, OAMDMA
|
||||||
|
ld hl, hOAMDMA
|
||||||
|
ld bc, OAMDMAEnd - OAMDMA
|
||||||
|
call UnsafeMemCopy
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
ClearOAM::
|
||||||
|
ld hl, _OAMRAM
|
||||||
|
ld bc, $9F
|
||||||
|
ld d, 0
|
||||||
|
call UnsafeMemSet
|
||||||
|
ld hl, wShadowOAM
|
||||||
|
ld bc, $9F
|
||||||
|
ld d, 0
|
||||||
|
call UnsafeMemSet
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SECTION "Domain Specific Functions", ROM0
|
||||||
|
; Index of next piece in A.
|
||||||
|
ApplyNext::
|
||||||
|
; Correct tile
|
||||||
|
add a, TILE_PIECE_0
|
||||||
|
ld [wSPRNext1+2], a
|
||||||
|
ld [wSPRNext2+2], a
|
||||||
|
ld [wSPRNext3+2], a
|
||||||
|
ld [wSPRNext4+2], a
|
||||||
|
sub a, TILE_PIECE_0
|
||||||
|
|
||||||
|
; X positions
|
||||||
|
ld hl, sPieceXOffsets
|
||||||
|
ld de, sPieceYOffsets
|
||||||
|
cp 0
|
||||||
|
jp z, .skipoffn
|
||||||
|
.getoffn
|
||||||
|
inc hl
|
||||||
|
inc de
|
||||||
|
dec a
|
||||||
|
jp nz, .getoffn
|
||||||
|
.skipoffn
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_X
|
||||||
|
ld [wSPRNext1+1], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_X
|
||||||
|
ld [wSPRNext2+1], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_X
|
||||||
|
ld [wSPRNext3+1], a
|
||||||
|
ld a, [hl]
|
||||||
|
add a, NEXT_BASE_X
|
||||||
|
ld [wSPRNext4+1], a
|
||||||
|
|
||||||
|
; Y positions
|
||||||
|
ld h, d
|
||||||
|
ld l, e
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_Y
|
||||||
|
ld [wSPRNext1+0], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_Y
|
||||||
|
ld [wSPRNext2+0], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, NEXT_BASE_Y
|
||||||
|
ld [wSPRNext3+0], a
|
||||||
|
ld a, [hl]
|
||||||
|
add a, NEXT_BASE_Y
|
||||||
|
ld [wSPRNext4+0], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
; Index of hold piece in A.
|
||||||
|
ApplyHold::
|
||||||
|
cp 255
|
||||||
|
jp nz, .doApplyHold
|
||||||
|
ld hl, wSPRHold1
|
||||||
|
ld bc, 16
|
||||||
|
ld d, 0
|
||||||
|
call UnsafeMemSet
|
||||||
|
ret
|
||||||
|
|
||||||
|
.doApplyHold
|
||||||
|
; Correct tile
|
||||||
|
add a, TILE_PIECE_0
|
||||||
|
ld [wSPRHold1+2], a
|
||||||
|
ld [wSPRHold2+2], a
|
||||||
|
ld [wSPRHold3+2], a
|
||||||
|
ld [wSPRHold4+2], a
|
||||||
|
sub a, TILE_PIECE_0
|
||||||
|
|
||||||
|
; X positions
|
||||||
|
ld hl, sPieceXOffsets
|
||||||
|
ld de, sPieceYOffsets
|
||||||
|
cp 0
|
||||||
|
jp z, .skipoffh
|
||||||
|
.getoffh
|
||||||
|
inc hl
|
||||||
|
inc de
|
||||||
|
dec a
|
||||||
|
jp nz, .getoffh
|
||||||
|
.skipoffh
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_X
|
||||||
|
ld [wSPRHold1+1], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_X
|
||||||
|
ld [wSPRHold2+1], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_X
|
||||||
|
ld [wSPRHold3+1], a
|
||||||
|
ld a, [hl]
|
||||||
|
add a, HOLD_BASE_X
|
||||||
|
ld [wSPRHold4+1], a
|
||||||
|
|
||||||
|
; Y positions
|
||||||
|
ld h, d
|
||||||
|
ld l, e
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_Y
|
||||||
|
ld [wSPRHold1+0], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_Y
|
||||||
|
ld [wSPRHold2+0], a
|
||||||
|
ld a, [hl+]
|
||||||
|
add a, HOLD_BASE_Y
|
||||||
|
ld [wSPRHold3+0], a
|
||||||
|
ld a, [hl]
|
||||||
|
add a, HOLD_BASE_Y
|
||||||
|
ld [wSPRHold4+0], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
; Address of first sprite in hl.
|
||||||
|
; Address of first digit in de.
|
||||||
|
ApplyNumbers::
|
||||||
|
inc hl
|
||||||
|
inc hl
|
||||||
|
ld bc, 4
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
|
||||||
|
ld a, [de]
|
||||||
|
add a, TILE_0
|
||||||
|
ld [hl], a
|
||||||
|
add hl, bc
|
||||||
|
inc de
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
SetNumberSpritePositions::
|
||||||
|
ld a, DIGIT_BASE_X
|
||||||
|
ld hl, wSPRScore1
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRScore2
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRScore3
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRScore4
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRScore5
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRScore6
|
||||||
|
ld [hl], SCORE_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
ld a, DIGIT_BASE_X
|
||||||
|
ld hl, wSPRCLevel1
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRCLevel2
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRCLevel3
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRCLevel4
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRCLevel5
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRCLevel6
|
||||||
|
ld [hl], CLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
ld a, DIGIT_BASE_X
|
||||||
|
ld hl, wSPRNLevel1
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRNLevel2
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRNLevel3
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRNLevel4
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRNLevel5
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ld hl, wSPRNLevel6
|
||||||
|
ld [hl], NLEVEL_BASE_Y
|
||||||
|
inc hl
|
||||||
|
ld [hl], a
|
||||||
|
add a, 8
|
||||||
|
ret
|
80
src/main.asm
80
src/main.asm
|
@ -2,6 +2,7 @@ INCLUDE "globals.asm"
|
||||||
INCLUDE "memcpy.asm"
|
INCLUDE "memcpy.asm"
|
||||||
INCLUDE "hardwarectl.asm"
|
INCLUDE "hardwarectl.asm"
|
||||||
INCLUDE "interrupts.asm"
|
INCLUDE "interrupts.asm"
|
||||||
|
INCLUDE "sprites.asm"
|
||||||
INCLUDE "res/tiles.inc"
|
INCLUDE "res/tiles.inc"
|
||||||
INCLUDE "res/gameplay_map.inc"
|
INCLUDE "res/gameplay_map.inc"
|
||||||
|
|
||||||
|
@ -9,27 +10,47 @@ SECTION "Code Entry Point", ROM0
|
||||||
MainEntryPoint::
|
MainEntryPoint::
|
||||||
; Turn off LCD during initialization.
|
; Turn off LCD during initialization.
|
||||||
call DisableLCD
|
call DisableLCD
|
||||||
|
|
||||||
|
; Save some power and turn off the audio.
|
||||||
call DisableAudio
|
call DisableAudio
|
||||||
|
|
||||||
; We use a single set of tiles for the entire game, so we copy it at the start.
|
; We use a single set of tiles for the entire game, so we copy it at the start.
|
||||||
ld de, Tiles
|
ld de, Tiles
|
||||||
ld hl, $9000
|
ld hl, _VRAM
|
||||||
ld bc, TilesEnd - Tiles
|
ld bc, TilesEnd - Tiles
|
||||||
call UnsafeMemCopy
|
call UnsafeMemCopy
|
||||||
|
|
||||||
|
; Also to the second bank of tile data.
|
||||||
|
ld de, Tiles
|
||||||
|
ld hl, _VRAM + $800
|
||||||
|
ld bc, TilesEnd - Tiles
|
||||||
|
call UnsafeMemCopy
|
||||||
|
|
||||||
|
; Make sure both sprites and bg use the same tile data.
|
||||||
|
call SetTileDataBanks
|
||||||
|
|
||||||
; The tilemap is just for testing for now.
|
; The tilemap is just for testing for now.
|
||||||
ld de, GameplayTilemap
|
ld de, GameplayTilemap
|
||||||
ld hl, $9800
|
ld hl, $9800
|
||||||
ld bc, GameplayTilemapEnd - GameplayTilemap
|
ld bc, GameplayTilemapEnd - GameplayTilemap
|
||||||
call UnsafeMemCopy
|
call UnsafeMemCopy
|
||||||
|
|
||||||
ld a, PALETTE_REGULAR
|
; Clear OAM.
|
||||||
call SetBGPalette
|
call ClearOAM
|
||||||
|
call CopyOAMHandler
|
||||||
|
call SetNumberSpritePositions
|
||||||
|
|
||||||
|
; Set up the palettes.
|
||||||
|
ld a, PALETTE_REGULAR
|
||||||
|
set_all_palettes
|
||||||
|
|
||||||
|
; Zero out the ram where needed.
|
||||||
call InitializeVariables
|
call InitializeVariables
|
||||||
|
|
||||||
|
; Set up the interrupt handlers.
|
||||||
call InitializeLCDCInterrupt
|
call InitializeLCDCInterrupt
|
||||||
|
|
||||||
; And turn it back on before we start.
|
; And turn the LCD back on before we start.
|
||||||
call EnableLCD
|
call EnableLCD
|
||||||
|
|
||||||
; Make sure the first game loop starts just like all the future ones.
|
; Make sure the first game loop starts just like all the future ones.
|
||||||
|
@ -41,27 +62,30 @@ GameLoop::
|
||||||
call GetInput
|
call GetInput
|
||||||
call HandleTimers
|
call HandleTimers
|
||||||
|
|
||||||
ld bc, 20*10
|
|
||||||
ld hl, wField
|
|
||||||
: ld a, [wFill]
|
|
||||||
ld [hl+], a
|
|
||||||
dec bc
|
|
||||||
ld a, b
|
|
||||||
or a, c
|
|
||||||
jp nz, :-
|
|
||||||
|
|
||||||
ld a, [wFill]
|
|
||||||
inc a
|
|
||||||
ld [wFill], a
|
|
||||||
|
|
||||||
; Handle gameplay here
|
; Handle gameplay here
|
||||||
; TODO
|
; TODO
|
||||||
|
|
||||||
|
ld a, 0
|
||||||
|
call ApplyNext
|
||||||
|
|
||||||
|
ld a, 4
|
||||||
|
call ApplyHold
|
||||||
|
|
||||||
|
ld hl, wSPRScore1
|
||||||
|
ld de, hScore
|
||||||
|
call ApplyNumbers
|
||||||
|
|
||||||
|
ld hl, wSPRCLevel1
|
||||||
|
ld de, hCLevel
|
||||||
|
call ApplyNumbers
|
||||||
|
|
||||||
|
ld hl, wSPRNLevel1
|
||||||
|
ld de, hNLevel
|
||||||
|
call ApplyNumbers
|
||||||
|
|
||||||
GameLoopEnd:
|
GameLoopEnd:
|
||||||
wait_vblank
|
wait_vblank
|
||||||
|
call hOAMDMA
|
||||||
call BlitField
|
call BlitField
|
||||||
jp GameLoop
|
jp GameLoop
|
||||||
|
|
||||||
|
@ -76,15 +100,23 @@ SECTION "Functions", ROM0
|
||||||
InitializeVariables:
|
InitializeVariables:
|
||||||
xor a, a
|
xor a, a
|
||||||
ld [wLCDCCtr], a
|
ld [wLCDCCtr], a
|
||||||
|
ld hl, wField
|
||||||
|
ld bc, 10*22
|
||||||
|
ld d, TILE_FIELD_EMPTY
|
||||||
|
call UnsafeMemSet
|
||||||
|
ld hl, hScore
|
||||||
|
ld bc, (6*3)
|
||||||
|
ld d, 0
|
||||||
|
call UnsafeMemSet
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
BlitField:
|
BlitField:
|
||||||
; The first 16 rows can be blitted without checking for vram access.
|
; The first 14 rows can be blitted without checking for vram access.
|
||||||
ld de, wField
|
ld de, wField + (2*10)
|
||||||
DEF row = 0
|
DEF row = 0
|
||||||
REPT 16
|
REPT 14
|
||||||
ld hl, FIELD_ROW_1+(32*row)
|
ld hl, FIELD_TOP_LEFT+(32*row)
|
||||||
REPT 10
|
REPT 10
|
||||||
ld a, [de]
|
ld a, [de]
|
||||||
ld [hl+], a
|
ld [hl+], a
|
||||||
|
@ -93,9 +125,9 @@ BlitField:
|
||||||
DEF row += 1
|
DEF row += 1
|
||||||
ENDR
|
ENDR
|
||||||
|
|
||||||
; The last 4 rows need some care.
|
; The last 6 rows need some care.
|
||||||
REPT 4
|
REPT 6
|
||||||
ld hl, FIELD_ROW_1+(32*row)
|
ld hl, FIELD_TOP_LEFT+(32*row)
|
||||||
REPT 2
|
REPT 2
|
||||||
: ldh a, [rSTAT]
|
: ldh a, [rSTAT]
|
||||||
and STATF_LCD
|
and STATF_LCD
|
||||||
|
|
Binary file not shown.
|
@ -240,18 +240,18 @@ Tiles::
|
||||||
DB $00,$C6,$00,$C6,$00,$7C,$00,$00
|
DB $00,$C6,$00,$C6,$00,$7C,$00,$00
|
||||||
DB $00,$7C,$00,$C6,$00,$C6,$00,$7E
|
DB $00,$7C,$00,$C6,$00,$C6,$00,$7E
|
||||||
DB $00,$06,$00,$C6,$00,$7C,$00,$00
|
DB $00,$06,$00,$C6,$00,$7C,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $3C,$FF,$3C,$FF,$3C,$FF,$3C,$FF
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $3C,$FF,$3C,$FF,$3C,$FF,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $99,$7E,$99,$7E,$99,$7E,$99,$7E
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $99,$7E,$99,$7E,$99,$7E,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $C3,$3C,$C3,$3C,$C3,$3C,$C3,$3C
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $C3,$3C,$C3,$3C,$C3,$3C,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $66,$18,$66,$18,$66,$18,$66,$18
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $66,$18,$66,$18,$66,$18,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $3C,$00,$3C,$00,$3C,$00,$3C,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $3C,$00,$3C,$00,$3C,$00,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $18,$00,$18,$00,$18,$00,$18,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $18,$00,$18,$00,$18,$00,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#Emulicious settings file
|
#Emulicious settings file
|
||||||
#Tue Oct 10 08:21:37 CEST 2023
|
#Wed Oct 11 08:17:53 CEST 2023
|
||||||
SouthPanelHeight=635
|
SouthPanelHeight=635
|
||||||
GameBoyErrorBreakpointMessage6=
|
GameBoyErrorBreakpointMessage6=
|
||||||
GameBoyErrorBreakpointMessage5=
|
GameBoyErrorBreakpointMessage5=
|
||||||
|
@ -18,7 +18,11 @@ Key19=72
|
||||||
GameBoyErrorBreakpointMessage0=
|
GameBoyErrorBreakpointMessage0=
|
||||||
Key18=71
|
Key18=71
|
||||||
Key17=76
|
Key17=76
|
||||||
|
WindowMemoryTracerWindowY=631
|
||||||
|
WindowPaletteViewerY=619
|
||||||
Key16=74
|
Key16=74
|
||||||
|
WindowMemoryTracerWindowX=383
|
||||||
|
WindowPaletteViewerX=262
|
||||||
GameBoyErrorBreakpointEnabled9=false
|
GameBoyErrorBreakpointEnabled9=false
|
||||||
DebuggerEventFiltersGameBoy=
|
DebuggerEventFiltersGameBoy=
|
||||||
Key15=75
|
Key15=75
|
||||||
|
@ -42,6 +46,7 @@ GameBoyErrorBreakpointEnabled3=false
|
||||||
Gamepad0Key5=-1
|
Gamepad0Key5=-1
|
||||||
GameBoyErrorBreakpointEnabled2=false
|
GameBoyErrorBreakpointEnabled2=false
|
||||||
Gamepad0Key4=-1
|
Gamepad0Key4=-1
|
||||||
|
WindowVideoViewerOpen=true
|
||||||
GameBoyErrorBreakpointEnabled1=false
|
GameBoyErrorBreakpointEnabled1=false
|
||||||
Gamepad0Key3=-1
|
Gamepad0Key3=-1
|
||||||
GameBoyErrorBreakpointEnabled0=false
|
GameBoyErrorBreakpointEnabled0=false
|
||||||
|
@ -49,14 +54,17 @@ Gamepad0Key2=-1
|
||||||
Gamepad0Key1=-1
|
Gamepad0Key1=-1
|
||||||
AudioSync=false
|
AudioSync=false
|
||||||
Gamepad0Key0=-1
|
Gamepad0Key0=-1
|
||||||
WindowTilemapViewerOpen=true
|
WindowTilemapViewerOpen=false
|
||||||
SMSInputDeviceB=1
|
SMSInputDeviceB=1
|
||||||
SMSInputDeviceA=1
|
SMSInputDeviceA=1
|
||||||
DataExecutionBreakpointEnabled=false
|
DataExecutionBreakpointEnabled=false
|
||||||
GameBoyErrorBreakpointCondition32=
|
GameBoyErrorBreakpointCondition32=
|
||||||
WindowEventViewerWindowY=489
|
WindowEventViewerWindowY=489
|
||||||
WindowEventViewerWindowX=1472
|
WindowEventViewerWindowX=1472
|
||||||
DebuggerWestPanelSelectedTab=0
|
WindowSpriteViewerHeight=527
|
||||||
|
WindowSpriteViewerWidth=370
|
||||||
|
DebuggerWestPanelSelectedTab=1
|
||||||
|
WindowMemoryTracerWindowHeight=289
|
||||||
Gamepad0Key37=-1
|
Gamepad0Key37=-1
|
||||||
Gamepad0Key36=-1
|
Gamepad0Key36=-1
|
||||||
SMSbuttonsGamepad=-1
|
SMSbuttonsGamepad=-1
|
||||||
|
@ -88,11 +96,15 @@ Gamepad0Key22=-1
|
||||||
Gamepad0Key21=-1
|
Gamepad0Key21=-1
|
||||||
Gamepad0Key20=-1
|
Gamepad0Key20=-1
|
||||||
UninitializedMemoryBreakpointEnabled=false
|
UninitializedMemoryBreakpointEnabled=false
|
||||||
|
RegistersGameBoy=AF,BC,DE,HL,SP,PC,LCDC,STAT,LY,DIV,IE,IF
|
||||||
|
WindowMemoryTracerWindowOpen=false
|
||||||
Gamepad0Key19=-1
|
Gamepad0Key19=-1
|
||||||
WindowDebuggerHeight=987
|
WindowDebuggerHeight=987
|
||||||
Gamepad0Key18=-1
|
Gamepad0Key18=-1
|
||||||
Gamepad0Key17=-1
|
Gamepad0Key17=-1
|
||||||
|
WindowSpriteViewerY=512
|
||||||
Gamepad0Key16=-1
|
Gamepad0Key16=-1
|
||||||
|
WindowSpriteViewerX=320
|
||||||
Gamepad0Key15=-1
|
Gamepad0Key15=-1
|
||||||
Gamepad0Key14=-1
|
Gamepad0Key14=-1
|
||||||
Gamepad0Key13=-1
|
Gamepad0Key13=-1
|
||||||
|
@ -104,6 +116,9 @@ DataExecutionBreakpointSuspend=true
|
||||||
SMSbuttonsKeyboard=false
|
SMSbuttonsKeyboard=false
|
||||||
GBGamepad=-1
|
GBGamepad=-1
|
||||||
WindowEventViewerWindowOpen=true
|
WindowEventViewerWindowOpen=true
|
||||||
|
WindowPaletteViewerHeight=313
|
||||||
|
WindowMemoryTracerWindowWidth=243
|
||||||
|
WindowVideoViewerWidth=980
|
||||||
StretchToWindow=false
|
StretchToWindow=false
|
||||||
Gamepad1Key37=-1
|
Gamepad1Key37=-1
|
||||||
Gamepad1Key36=-1
|
Gamepad1Key36=-1
|
||||||
|
@ -115,6 +130,7 @@ Gamepad1Key32=-1
|
||||||
Gamepad1Key31=-1
|
Gamepad1Key31=-1
|
||||||
Gamepad1Key30=-1
|
Gamepad1Key30=-1
|
||||||
InterruptBreakpointCondition=
|
InterruptBreakpointCondition=
|
||||||
|
WindowPaletteViewerOpen=false
|
||||||
SMSGamepadAThreshold=50
|
SMSGamepadAThreshold=50
|
||||||
Gamepad1Key29=-1
|
Gamepad1Key29=-1
|
||||||
Gamepad1Key28=-1
|
Gamepad1Key28=-1
|
||||||
|
@ -132,9 +148,11 @@ Gamepad1Key21=-1
|
||||||
Gamepad1Key20=-1
|
Gamepad1Key20=-1
|
||||||
StackSplitLocation=320
|
StackSplitLocation=320
|
||||||
FontSize=13
|
FontSize=13
|
||||||
|
CombineVideoViewers=true
|
||||||
WindowEmuliciousHeight=781
|
WindowEmuliciousHeight=781
|
||||||
CodeFontSize=13
|
CodeFontSize=13
|
||||||
WindowTilemapViewerY=544
|
WindowTilemapViewerY=544
|
||||||
|
MemoryTracer=true
|
||||||
GBGamepadKeyboard=false
|
GBGamepadKeyboard=false
|
||||||
UninitializedMemoryBreakpointSuspend=true
|
UninitializedMemoryBreakpointSuspend=true
|
||||||
WindowTilemapViewerX=1013
|
WindowTilemapViewerX=1013
|
||||||
|
@ -145,6 +163,7 @@ Gamepad1Key19=-1
|
||||||
Gamepad1Key18=-1
|
Gamepad1Key18=-1
|
||||||
BankSwapAtPCBreakpointEnabled=false
|
BankSwapAtPCBreakpointEnabled=false
|
||||||
Gamepad1Key17=-1
|
Gamepad1Key17=-1
|
||||||
|
WindowPaletteViewerWidth=485
|
||||||
Gamepad1Key16=-1
|
Gamepad1Key16=-1
|
||||||
Gamepad1Key15=-1
|
Gamepad1Key15=-1
|
||||||
Recent0=C\:\\workspace\\dmgtris\\bin\\out.gb
|
Recent0=C\:\\workspace\\dmgtris\\bin\\out.gb
|
||||||
|
@ -173,7 +192,9 @@ GameBoyErrorBreakpointMessage32=
|
||||||
BankSwapAtPCBreakpointCondition=
|
BankSwapAtPCBreakpointCondition=
|
||||||
WindowTilemapViewerWidth=404
|
WindowTilemapViewerWidth=404
|
||||||
SMSbuttonsThreshold=50
|
SMSbuttonsThreshold=50
|
||||||
|
WindowTileViewerY=549
|
||||||
Gamepad1Key9=-1
|
Gamepad1Key9=-1
|
||||||
|
WindowTileViewerX=271
|
||||||
Gamepad1Key8=-1
|
Gamepad1Key8=-1
|
||||||
UninitializedMemoryBreakpointCondition=
|
UninitializedMemoryBreakpointCondition=
|
||||||
Gamepad1Key7=-1
|
Gamepad1Key7=-1
|
||||||
|
@ -184,7 +205,9 @@ Gamepad1Key5=-1
|
||||||
GameBoyErrorBreakpointSuspend17=true
|
GameBoyErrorBreakpointSuspend17=true
|
||||||
Gamepad1Key4=-1
|
Gamepad1Key4=-1
|
||||||
GameBoyErrorBreakpointSuspend16=true
|
GameBoyErrorBreakpointSuspend16=true
|
||||||
|
WindowVideoViewerY=275
|
||||||
Gamepad1Key3=-1
|
Gamepad1Key3=-1
|
||||||
|
WindowVideoViewerX=946
|
||||||
Gamepad1Key2=-1
|
Gamepad1Key2=-1
|
||||||
Gamepad1Key1=-1
|
Gamepad1Key1=-1
|
||||||
Gamepad1Key0=-1
|
Gamepad1Key0=-1
|
||||||
|
@ -192,6 +215,8 @@ GameBoyErrorBreakpointSuspend10=true
|
||||||
WindowTilemapViewerHeight=744
|
WindowTilemapViewerHeight=744
|
||||||
WindowEventViewerWindowDivider=309
|
WindowEventViewerWindowDivider=309
|
||||||
GameBoyErrorBreakpointMessage20=
|
GameBoyErrorBreakpointMessage20=
|
||||||
|
MemoryTracerDisplayFileOffsetsForROM=true
|
||||||
|
WindowTileViewerWidth=467
|
||||||
WindowDebuggerY=158
|
WindowDebuggerY=158
|
||||||
WindowDebuggerX=939
|
WindowDebuggerX=939
|
||||||
Key37=-1
|
Key37=-1
|
||||||
|
@ -199,6 +224,7 @@ Key36=-1
|
||||||
Key35=-1
|
Key35=-1
|
||||||
GameBoyErrorBreakpointCondition9=
|
GameBoyErrorBreakpointCondition9=
|
||||||
GameBoyErrorBreakpointEnabled32=false
|
GameBoyErrorBreakpointEnabled32=false
|
||||||
|
WindowTileViewerOpen=false
|
||||||
Key34=-1
|
Key34=-1
|
||||||
GameBoyErrorBreakpointCondition8=
|
GameBoyErrorBreakpointCondition8=
|
||||||
Key33=-1
|
Key33=-1
|
||||||
|
@ -211,7 +237,7 @@ DebuggerMemoryTabVisibleRect=0,0,0,0
|
||||||
Key31=-1
|
Key31=-1
|
||||||
GameBoyErrorBreakpointCondition5=
|
GameBoyErrorBreakpointCondition5=
|
||||||
GameBoyErrorBreakpointMessage17=
|
GameBoyErrorBreakpointMessage17=
|
||||||
OutlineWidth=324
|
OutlineWidth=425
|
||||||
WindowEventViewerWindowWidth=930
|
WindowEventViewerWindowWidth=930
|
||||||
Key30=-1
|
Key30=-1
|
||||||
GameBoyErrorBreakpointCondition4=
|
GameBoyErrorBreakpointCondition4=
|
||||||
|
@ -231,22 +257,25 @@ Key3=10
|
||||||
Key2=192
|
Key2=192
|
||||||
Key1=75
|
Key1=75
|
||||||
Key0=74
|
Key0=74
|
||||||
|
WindowVideoViewerHeight=1027
|
||||||
Update=2
|
Update=2
|
||||||
Key29=-1
|
Key29=-1
|
||||||
Key28=10
|
Key28=10
|
||||||
Key27=-1
|
Key27=-1
|
||||||
|
WindowSpriteViewerOpen=false
|
||||||
Key26=-1
|
Key26=-1
|
||||||
Key25=-1
|
Key25=-1
|
||||||
Key24=-1
|
Key24=-1
|
||||||
|
WindowTileViewerHeight=453
|
||||||
Key23=10
|
Key23=10
|
||||||
GameBoyErrorBreakpointEnabled20=false
|
GameBoyErrorBreakpointEnabled20=false
|
||||||
Key22=-1
|
Key22=-1
|
||||||
Key21=-1
|
Key21=-1
|
||||||
Key20=-1
|
Key20=-1
|
||||||
BankSwapAtPCBreakpointSuspend=true
|
BankSwapAtPCBreakpointSuspend=true
|
||||||
WindowEmuliciousY=385
|
WindowEmuliciousY=376
|
||||||
WindowEmuliciousX=97
|
WindowEmuliciousX=146
|
||||||
DebuggerMemorySelectedTab=RAM
|
DebuggerMemorySelectedTab=HRAM
|
||||||
WindowDebuggerWidth=1110
|
WindowDebuggerWidth=1110
|
||||||
GameBoyErrorBreakpointMessage9=
|
GameBoyErrorBreakpointMessage9=
|
||||||
GameBoyErrorBreakpointMessage8=
|
GameBoyErrorBreakpointMessage8=
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[General]
|
[General]
|
||||||
GBRPath=c:\workspace\dmgtris\
|
GBRPath=c:\workspace\dmgtris\src\res\
|
||||||
[Recently used files]
|
[Recently used files]
|
||||||
F0=c:\workspace\dmgtris\tiles.gbr
|
F0=c:\workspace\dmgtris\src\res\tiles.gbr
|
||||||
|
F1=c:\workspace\dmgtris\tiles.gbr
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
; TILES.INC
|
|
||||||
;
|
|
||||||
; Include File.
|
|
||||||
;
|
|
||||||
; Info:
|
|
||||||
; Section : Tiles
|
|
||||||
; Bank : 0
|
|
||||||
; Form : All tiles as one unit.
|
|
||||||
; Format : Gameboy 4 color.
|
|
||||||
; Compression : None.
|
|
||||||
; Counter : None.
|
|
||||||
; Tile size : 8 x 8
|
|
||||||
; Tiles : 0 to 127
|
|
||||||
;
|
|
||||||
; Palette colors : None.
|
|
||||||
; SGB Palette : None.
|
|
||||||
; CGB Palette : None.
|
|
||||||
;
|
|
||||||
; Convert to metatiles : No.
|
|
||||||
;
|
|
||||||
; This file was generated by GBTD v2.2
|
|
||||||
|
|
||||||
|
|
||||||
; Bank of tiles.
|
|
||||||
TileLabelBank EQU 0
|
|
||||||
|
|
||||||
; Start of tile array.
|
|
||||||
GLOBAL TileLabel
|
|
||||||
|
|
||||||
; End of TILES.INC
|
|
|
@ -1,284 +0,0 @@
|
||||||
; TILES.Z80
|
|
||||||
;
|
|
||||||
; Tile Source File.
|
|
||||||
;
|
|
||||||
; Info:
|
|
||||||
; Section : Tiles
|
|
||||||
; Bank : 0
|
|
||||||
; Form : All tiles as one unit.
|
|
||||||
; Format : Gameboy 4 color.
|
|
||||||
; Compression : None.
|
|
||||||
; Counter : None.
|
|
||||||
; Tile size : 8 x 8
|
|
||||||
; Tiles : 0 to 127
|
|
||||||
;
|
|
||||||
; Palette colors : None.
|
|
||||||
; SGB Palette : None.
|
|
||||||
; CGB Palette : None.
|
|
||||||
;
|
|
||||||
; Convert to metatiles : No.
|
|
||||||
;
|
|
||||||
; This file was generated by GBTD v2.2
|
|
||||||
|
|
||||||
SECTION "Tiles", ROM0
|
|
||||||
|
|
||||||
; Start of tile array.
|
|
||||||
TileLabel::
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $67,$1F,$67,$1F,$67,$1F,$67,$1F
|
|
||||||
DB $67,$1F,$67,$1F,$67,$1F,$00,$00
|
|
||||||
DB $E6,$F8,$E6,$F8,$E6,$F8,$E6,$F8
|
|
||||||
DB $E6,$F8,$E6,$F8,$E6,$F8,$00,$00
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$FF
|
|
||||||
DB $00,$FF,$FF,$00,$FF,$00,$00,$00
|
|
||||||
DB $67,$1F,$67,$1F,$67,$1F,$60,$1F
|
|
||||||
DB $60,$1F,$7F,$00,$7F,$00,$00,$00
|
|
||||||
DB $E6,$F8,$E6,$F8,$E6,$F8,$06,$F8
|
|
||||||
DB $06,$F8,$FE,$00,$FE,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$01,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$FF,$FF,$FF
|
|
||||||
DB $00,$FF,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $80,$80,$E0,$E0,$F8,$F8,$FE,$FE
|
|
||||||
DB $F8,$F8,$E0,$E0,$80,$80,$00,$00
|
|
||||||
DB $00,$FF,$7E,$99,$66,$BD,$66,$BD
|
|
||||||
DB $66,$BD,$7E,$99,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$36,$C9,$6C,$93,$5A,$A5
|
|
||||||
DB $36,$C9,$6C,$93,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$00,$BD,$3C,$81,$00,$81
|
|
||||||
DB $3C,$81,$00,$BD,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$3C,$C3,$5A,$A5,$7E,$81
|
|
||||||
DB $5A,$A5,$3C,$C3,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$5A,$A5,$42,$BD,$42,$BD
|
|
||||||
DB $42,$BD,$5A,$A5,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$81,$7E,$81,$7E,$81
|
|
||||||
DB $7E,$81,$7E,$81,$00,$FF,$00,$00
|
|
||||||
DB $00,$FF,$54,$AB,$2A,$D5,$54,$AB
|
|
||||||
DB $2A,$D5,$54,$AB,$00,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$FF,$99,$E7,$BD,$E7,$BD
|
|
||||||
DB $E7,$BD,$FF,$99,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$B7,$C9,$ED,$93,$DB,$A5
|
|
||||||
DB $B7,$C9,$ED,$93,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$81,$BD,$BD,$81,$81,$81
|
|
||||||
DB $BD,$81,$81,$BD,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$BD,$C3,$DB,$A5,$FF,$81
|
|
||||||
DB $DB,$A5,$BD,$C3,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$DB,$A5,$C3,$BD,$C3,$BD
|
|
||||||
DB $C3,$BD,$DB,$A5,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$FF,$81,$FF,$81,$FF,$81
|
|
||||||
DB $FF,$81,$FF,$81,$FF,$FF,$00,$00
|
|
||||||
DB $FF,$FF,$D5,$AB,$AB,$D5,$D5,$AB
|
|
||||||
DB $AB,$D5,$D5,$AB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$99,$66,$BD,$66,$BD
|
|
||||||
DB $66,$BD,$FE,$BB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$36,$C9,$6C,$93,$5A,$A5
|
|
||||||
DB $36,$C9,$EE,$BB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$00,$BD,$3C,$81,$00,$81
|
|
||||||
DB $3C,$81,$AA,$BF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$3C,$C3,$5A,$A5,$7E,$81
|
|
||||||
DB $5A,$A5,$BE,$EB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$5A,$A5,$42,$BD,$42,$BD
|
|
||||||
DB $42,$BD,$FA,$AF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$81,$7E,$81,$7E,$81
|
|
||||||
DB $7E,$81,$FE,$AB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$54,$AB,$2A,$D5,$54,$AB
|
|
||||||
DB $2A,$D5,$FE,$AB,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$99,$66,$BD,$66,$BD
|
|
||||||
DB $EE,$BF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$36,$C9,$6C,$93,$5A,$A5
|
|
||||||
DB $BE,$EB,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$00,$BD,$3C,$81,$00,$81
|
|
||||||
DB $BE,$AB,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$3C,$C3,$5A,$A5,$7E,$81
|
|
||||||
DB $FA,$AF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$5A,$A5,$42,$BD,$42,$BD
|
|
||||||
DB $EA,$BF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$81,$7E,$81,$7E,$81
|
|
||||||
DB $FE,$AB,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$54,$AB,$2A,$D5,$54,$AB
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$99,$66,$BD,$EE,$BF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$36,$C9,$6C,$93,$FA,$AF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$00,$BD,$3C,$81,$AA,$AB
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$3C,$C3,$5A,$A5,$FE,$AB
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$5A,$A5,$42,$BD,$EA,$BF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$81,$7E,$81,$FE,$AB
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$54,$AB,$2A,$D5,$FE,$AB
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$99,$EE,$BF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$36,$C9,$EE,$BB,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$00,$BD,$BE,$AB,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$3C,$C3,$FA,$AF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$5A,$A5,$EA,$BF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$7E,$81,$FE,$AB,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$54,$AB,$AA,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$FE,$BB,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$BE,$EB,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$AA,$BF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$BE,$EB,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$FA,$AF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$FE,$AB,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$FF,$FE,$AB,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $AA,$FF,$FF,$FF,$FF,$FF,$FF,$FF
|
|
||||||
DB $FF,$FF,$FF,$FF,$FF,$FF,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$FF,$FF,$FF,$00
|
|
||||||
DB $FF,$FF,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$F0,$F0,$F8,$08
|
|
||||||
DB $FC,$E4,$1C,$14,$1C,$14,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$07,$07,$0F,$08
|
|
||||||
DB $1F,$13,$1C,$14,$1C,$14,$00,$00
|
|
||||||
DB $1C,$14,$1C,$14,$FC,$E4,$F8,$08
|
|
||||||
DB $F0,$F0,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $1C,$14,$1C,$14,$1F,$13,$0F,$08
|
|
||||||
DB $07,$07,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $1C,$14,$1C,$14,$FC,$E4,$F8,$08
|
|
||||||
DB $FC,$E4,$1C,$14,$1C,$14,$00,$00
|
|
||||||
DB $1C,$14,$1C,$14,$1F,$13,$0F,$08
|
|
||||||
DB $1F,$13,$1C,$14,$1C,$14,$00,$00
|
|
||||||
DB $1C,$14,$1C,$14,$1C,$14,$1C,$14
|
|
||||||
DB $1C,$14,$1C,$14,$1C,$14,$00,$00
|
|
||||||
DB $38,$38,$6C,$6C,$C6,$C6,$FE,$FE
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $FC,$FC,$C6,$C6,$C6,$C6,$FC,$FC
|
|
||||||
DB $C6,$C6,$C6,$C6,$FC,$FC,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C0,$C0,$C0,$C0
|
|
||||||
DB $C0,$C0,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $FC,$FC,$C6,$C6,$C6,$C6,$C6,$C6
|
|
||||||
DB $C6,$C6,$C6,$C6,$FC,$FC,$00,$00
|
|
||||||
DB $FE,$FE,$C0,$C0,$C0,$C0,$F8,$F8
|
|
||||||
DB $C0,$C0,$C0,$C0,$FE,$FE,$00,$00
|
|
||||||
DB $FE,$FE,$C0,$C0,$C0,$C0,$F8,$F8
|
|
||||||
DB $C0,$C0,$C0,$C0,$C0,$C0,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C0,$C0,$CE,$CE
|
|
||||||
DB $C6,$C6,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$FE,$FE
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $60,$60,$60,$60,$60,$60,$60,$60
|
|
||||||
DB $60,$60,$60,$60,$60,$60,$00,$00
|
|
||||||
DB $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C
|
|
||||||
DB $CC,$CC,$CC,$CC,$78,$78,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$CC,$CC,$F8,$F8
|
|
||||||
DB $CC,$CC,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $60,$60,$60,$60,$60,$60,$60,$60
|
|
||||||
DB $60,$60,$60,$60,$7C,$7C,$00,$00
|
|
||||||
DB $C6,$C6,$EE,$EE,$FE,$FE,$D6,$D6
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $C6,$C6,$E6,$E6,$F6,$F6,$DE,$DE
|
|
||||||
DB $CE,$CE,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C6,$C6,$C6,$C6
|
|
||||||
DB $C6,$C6,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $FC,$FC,$C6,$C6,$C6,$C6,$FC,$FC
|
|
||||||
DB $C0,$C0,$C0,$C0,$C0,$C0,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C6,$C6,$C6,$C6
|
|
||||||
DB $D6,$D6,$DE,$DE,$7C,$7C,$00,$00
|
|
||||||
DB $FC,$FC,$C6,$C6,$C6,$C6,$FC,$FC
|
|
||||||
DB $F8,$F8,$DC,$DC,$CE,$CE,$00,$00
|
|
||||||
DB $7E,$7E,$C0,$C0,$C0,$C0,$7C,$7C
|
|
||||||
DB $06,$06,$06,$06,$FC,$FC,$00,$00
|
|
||||||
DB $FC,$FC,$30,$30,$30,$30,$30,$30
|
|
||||||
DB $30,$30,$30,$30,$30,$30,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$C6,$C6
|
|
||||||
DB $C6,$C6,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$6C,$6C,$6C,$6C
|
|
||||||
DB $6C,$6C,$38,$38,$38,$38,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$C6,$C6,$C6,$C6
|
|
||||||
DB $D6,$D6,$D6,$D6,$6C,$6C,$00,$00
|
|
||||||
DB $C6,$C6,$C6,$C6,$6C,$6C,$38,$38
|
|
||||||
DB $6C,$6C,$C6,$C6,$C6,$C6,$00,$00
|
|
||||||
DB $C6,$C6,$EE,$EE,$7C,$7C,$38,$38
|
|
||||||
DB $70,$70,$E0,$E0,$C0,$C0,$00,$00
|
|
||||||
DB $FE,$FE,$0C,$0C,$18,$18,$30,$30
|
|
||||||
DB $60,$60,$C0,$C0,$FE,$FE,$00,$00
|
|
||||||
DB $7C,$7C,$CE,$CE,$D6,$D6,$D6,$D6
|
|
||||||
DB $D6,$D6,$E6,$E6,$7C,$7C,$00,$00
|
|
||||||
DB $38,$38,$78,$78,$D8,$D8,$18,$18
|
|
||||||
DB $18,$18,$18,$18,$18,$18,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C6,$C6,$0C,$0C
|
|
||||||
DB $38,$38,$E0,$E0,$FE,$FE,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$06,$06,$0C,$0C
|
|
||||||
DB $06,$06,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $1C,$1C,$3C,$3C,$6C,$6C,$CC,$CC
|
|
||||||
DB $FE,$FE,$0C,$0C,$0C,$0C,$00,$00
|
|
||||||
DB $FE,$FE,$C0,$C0,$C0,$C0,$FC,$FC
|
|
||||||
DB $06,$06,$06,$06,$FC,$FC,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C0,$C0,$FC,$FC
|
|
||||||
DB $C6,$C6,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $FE,$FE,$0C,$0C,$18,$18,$18,$18
|
|
||||||
DB $30,$30,$30,$30,$30,$30,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C6,$C6,$7C,$7C
|
|
||||||
DB $C6,$C6,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $7C,$7C,$C6,$C6,$C6,$C6,$7E,$7E
|
|
||||||
DB $06,$06,$C6,$C6,$7C,$7C,$00,$00
|
|
||||||
DB $00,$7C,$00,$CE,$00,$D6,$00,$D6
|
|
||||||
DB $00,$D6,$00,$E6,$00,$7C,$00,$00
|
|
||||||
DB $00,$38,$00,$78,$00,$D8,$00,$18
|
|
||||||
DB $00,$18,$00,$18,$00,$18,$00,$00
|
|
||||||
DB $00,$7C,$00,$C6,$00,$C6,$00,$0C
|
|
||||||
DB $00,$38,$00,$E0,$00,$FE,$00,$00
|
|
||||||
DB $00,$7C,$00,$C6,$00,$06,$00,$0C
|
|
||||||
DB $00,$06,$00,$C6,$00,$7C,$00,$00
|
|
||||||
DB $00,$1C,$00,$3C,$00,$6C,$00,$CC
|
|
||||||
DB $00,$FE,$00,$0C,$00,$0C,$00,$00
|
|
||||||
DB $00,$FE,$00,$C0,$00,$C0,$00,$FC
|
|
||||||
DB $00,$06,$00,$06,$00,$FC,$00,$00
|
|
||||||
DB $00,$7C,$00,$C6,$00,$C0,$00,$FC
|
|
||||||
DB $00,$C6,$00,$C6,$00,$7C,$00,$00
|
|
||||||
DB $00,$FE,$00,$0C,$00,$18,$00,$18
|
|
||||||
DB $00,$30,$00,$30,$00,$30,$00,$00
|
|
||||||
DB $00,$7C,$00,$C6,$00,$C6,$00,$7C
|
|
||||||
DB $00,$C6,$00,$C6,$00,$7C,$00,$00
|
|
||||||
DB $00,$7C,$00,$C6,$00,$C6,$00,$7E
|
|
||||||
DB $00,$06,$00,$C6,$00,$7C,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
|
||||||
|
|
||||||
; End of TILES.Z80
|
|
Loading…
Reference in New Issue