Tile system.

This commit is contained in:
Randy Thiemann 2023-11-02 19:10:51 +01:00
parent a1331228f2
commit 2063d0c5d1
20 changed files with 3976 additions and 3130 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -100,12 +100,12 @@ BlitField::
; The last 6 rows need some care. ; The last 6 rows need some care.
REPT 7 REPT 7
; Wait until start of drawing, then insert 35 nops. ; Wait until start of drawing, then insert nops.
: ldh a, [rSTAT] : ldh a, [rSTAT]
and a, 3 and a, 3
cp a, 3 cp a, 3
jr nz, :- jr nz, :-
REPT 38 REPT 40
nop nop
ENDR ENDR
@ -157,12 +157,12 @@ BigBlitField::
; The last 6 rows need some care. ; The last 6 rows need some care.
REPT 7 REPT 7
; Wait until start of drawing, then insert 35 nops. ; Wait until start of drawing, then insert nops.
: ldh a, [rSTAT] : ldh a, [rSTAT]
and a, 3 and a, 3
cp a, 3 cp a, 3
jr nz, :- jr nz, :-
REPT 38 REPT 40
nop nop
ENDR ENDR

View File

@ -435,23 +435,23 @@ GBCGameplayProcess::
ld [wInnerReps], a ld [wInnerReps], a
.inner2 .inner2
ld a, [de] ld a, [de]
cp a, 10 cp a, TILE_PIECE_0
jr c, .empty jr c, .empty
cp a, 10 + (1*7) cp a, TILE_PIECE_0 + (1*7)
jr c, .sub10 jr c, .sub10
cp a, 10 + (2*7) cp a, TILE_PIECE_0 + (2*7)
jr c, .sub17 jr c, .sub17
cp a, 10 + (3*7) cp a, TILE_PIECE_0 + (3*7)
jr c, .sub24 jr c, .sub24
cp a, 10 + (4*7) cp a, TILE_PIECE_0 + (4*7)
jr c, .sub31 jr c, .sub31
cp a, 10 + (5*7) cp a, TILE_PIECE_0 + (5*7)
jr c, .sub38 jr c, .sub38
cp a, 10 + (6*7) cp a, TILE_PIECE_0 + (6*7)
jr c, .sub45 jr c, .sub45
cp a, 10 + (7*7) cp a, TILE_PIECE_0 + (7*7)
jr c, .sub52 jr c, .sub52
cp a, 10 + (8*7) cp a, TILE_PIECE_0 + (8*7)
jr c, .sub59 jr c, .sub59
.empty .empty
ld a, $07 ld a, $07
@ -471,7 +471,7 @@ GBCGameplayProcess::
.sub17 .sub17
sub a, 7 sub a, 7
.sub10 .sub10
sub a, 10 sub a, TILE_PIECE_0
.done .done
ld [hl+], a ld [hl+], a
inc de inc de
@ -672,23 +672,23 @@ GBCBigGameplayProcess::
ld [wInnerReps], a ld [wInnerReps], a
.inner2 .inner2
ld a, [de] ld a, [de]
cp a, 10 cp a, TILE_PIECE_0
jr c, .empty jr c, .empty
cp a, 10 + (1*7) cp a, TILE_PIECE_0 + (1*7)
jr c, .sub10 jr c, .sub10
cp a, 10 + (2*7) cp a, TILE_PIECE_0 + (2*7)
jr c, .sub17 jr c, .sub17
cp a, 10 + (3*7) cp a, TILE_PIECE_0 + (3*7)
jr c, .sub24 jr c, .sub24
cp a, 10 + (4*7) cp a, TILE_PIECE_0 + (4*7)
jr c, .sub31 jr c, .sub31
cp a, 10 + (5*7) cp a, TILE_PIECE_0 + (5*7)
jr c, .sub38 jr c, .sub38
cp a, 10 + (6*7) cp a, TILE_PIECE_0 + (6*7)
jr c, .sub45 jr c, .sub45
cp a, 10 + (7*7) cp a, TILE_PIECE_0 + (7*7)
jr c, .sub52 jr c, .sub52
cp a, 10 + (8*7) cp a, TILE_PIECE_0 + (8*7)
jr c, .sub59 jr c, .sub59
.empty .empty
ld a, $07 ld a, $07
@ -708,7 +708,7 @@ GBCBigGameplayProcess::
.sub17 .sub17
sub a, 7 sub a, 7
.sub10 .sub10
sub a, 10 sub a, TILE_PIECE_0
.done .done
ld [hl+], a ld [hl+], a
inc de inc de

View File

@ -26,51 +26,52 @@ INCLUDE "rgb555.asm"
; Set up charmap. ; Set up charmap.
CHARMAP " ", 1 CHARMAP " ", 1
CHARMAP "0", 66 CHARMAP "0", 2
CHARMAP "1", 67 CHARMAP "1", 3
CHARMAP "2", 68 CHARMAP "2", 4
CHARMAP "3", 69 CHARMAP "3", 5
CHARMAP "4", 70 CHARMAP "4", 6
CHARMAP "5", 71 CHARMAP "5", 7
CHARMAP "6", 72 CHARMAP "6", 8
CHARMAP "7", 73 CHARMAP "7", 9
CHARMAP "8", 74 CHARMAP "8", 10
CHARMAP "9", 75 CHARMAP "9", 11
CHARMAP "A", 76 CHARMAP "A", 12
CHARMAP "B", 77 CHARMAP "B", 13
CHARMAP "C", 78 CHARMAP "C", 14
CHARMAP "D", 79 CHARMAP "D", 15
CHARMAP "E", 80 CHARMAP "E", 16
CHARMAP "F", 81 CHARMAP "F", 17
CHARMAP "G", 82 CHARMAP "G", 18
CHARMAP "H", 83 CHARMAP "H", 19
CHARMAP "I", 84 CHARMAP "I", 20
CHARMAP "J", 85 CHARMAP "J", 21
CHARMAP "K", 86 CHARMAP "K", 22
CHARMAP "L", 87 CHARMAP "L", 23
CHARMAP "M", 88 CHARMAP "M", 24
CHARMAP "N", 89 CHARMAP "N", 25
CHARMAP "O", 90 CHARMAP "O", 26
CHARMAP "P", 91 CHARMAP "P", 27
CHARMAP "Q", 92 CHARMAP "Q", 28
CHARMAP "R", 93 CHARMAP "R", 29
CHARMAP "S", 94 CHARMAP "S", 30
CHARMAP "T", 95 CHARMAP "T", 31
CHARMAP "U", 96 CHARMAP "U", 32
CHARMAP "V", 97 CHARMAP "V", 33
CHARMAP "W", 98 CHARMAP "W", 34
CHARMAP "X", 99 CHARMAP "X", 35
CHARMAP "Y", 100 CHARMAP "Y", 36
CHARMAP "Z", 101 CHARMAP "Z", 37
CHARMAP "!", 102 CHARMAP "!", 38
CHARMAP "?", 103 CHARMAP "?", 39
CHARMAP "[", 129 CHARMAP "[", 40
CHARMAP "]", 130 CHARMAP "]", 41
CHARMAP "/", 128 CHARMAP "-", 42
CHARMAP "-", 127 CHARMAP "a", 207
CHARMAP "#", 126 CHARMAP "b", 208
CHARMAP ".", 216 CHARMAP "c", 209
CHARMAP ":", 222 CHARMAP "d", 210
CHARMAP "m", 211
; Waits for PPU mode to be 0 or 1. ; Waits for PPU mode to be 0 or 1.
@ -163,20 +164,20 @@ DEF PALETTE_LIGHTER_2 EQU %01000000
DEF PALETTE_LIGHTER_3 EQU %00000000 DEF PALETTE_LIGHTER_3 EQU %00000000
; Sprite base positions. ; Sprite base positions.
DEF NEXT_BASE_X EQU 102 DEF NEXT_BASE_X EQU 100
DEF NEXT_BASE_Y EQU 37 DEF NEXT_BASE_Y EQU 37
DEF HOLD_BASE_X EQU 102 DEF HOLD_BASE_X EQU 100
DEF HOLD_BASE_Y EQU 77 DEF HOLD_BASE_Y EQU 77
DEF QUEUE_BASE_X EQU 135 DEF QUEUE_BASE_X EQU 133
DEF QUEUE_BASE_Y EQU 35 DEF QUEUE_BASE_Y EQU 35
DEF SCORE_BASE_X EQU 114 DEF SCORE_BASE_X EQU 112
DEF SCORE_BASE_Y EQU 112 DEF SCORE_BASE_Y EQU 112
DEF LEVEL_BASE_X EQU 114 DEF LEVEL_BASE_X EQU 112
DEF CLEVEL_BASE_Y EQU 133 DEF CLEVEL_BASE_Y EQU 133
DEF NLEVEL_BASE_Y EQU 145 DEF NLEVEL_BASE_Y EQU 145
DEF GRADE_BASE_X EQU 147 DEF GRADE_BASE_X EQU 145
DEF GRADE_BASE_Y EQU 20 DEF GRADE_BASE_Y EQU 20
DEF TELLS_BASE_X EQU 156 DEF TELLS_BASE_X EQU 154
DEF TELLS_BASE_Y EQU 61 DEF TELLS_BASE_Y EQU 61
DEF TELLS_Y_DIST EQU 10 DEF TELLS_Y_DIST EQU 10
@ -203,20 +204,25 @@ DEF SFX_RANKGM EQU 18
DEF MUSIC_MENU EQU $EE DEF MUSIC_MENU EQU $EE
; Tile data offsets ; Tile data offsets
DEF GAME_OVER_R10 EQU 133 ; Shared
DEF GAME_OVER_R12 EQU 153
DEF GAME_OVER_R14 EQU 173
DEF GAME_OVER_OTHER EQU 131
DEF TILE_FIELD_EMPTY EQU 4
DEF TILE_PIECE_0 EQU 10
DEF TILE_0 EQU 66
DEF TILE_CLEARING EQU 124
DEF TILE_GHOST EQU 125
DEF TILE_SELECTED EQU 193
DEF TILE_UNSELECTED EQU 194
DEF TILE_BLANK EQU 1 DEF TILE_BLANK EQU 1
DEF TILE_PIECE_SMALL_0 EQU 233 DEF TILE_0 EQU 2
DEF TILE_PIECE_BONE EQU 126
; Title
DEF TILE_SELECTED EQU 92
DEF TILE_UNSELECTED EQU 93
; Gameplay
DEF TILE_FIELD_EMPTY EQU 108
DEF TILE_PIECE_0 EQU 48
DEF TILE_CLEARING EQU 106
DEF TILE_GHOST EQU 107
DEF TILE_PIECE_SMALL_0 EQU 116
DEF TILE_PIECE_BONE EQU 104
DEF GAME_OVER_R10 EQU 147
DEF GAME_OVER_R12 EQU 167
DEF GAME_OVER_R14 EQU 187
DEF GAME_OVER_OTHER EQU 145
; Button mode. ; Button mode.
DEF BUTTON_MODE_NORM EQU 0 DEF BUTTON_MODE_NORM EQU 0
@ -224,7 +230,7 @@ DEF BUTTON_MODE_INVR EQU 1
DEF BUTTON_MODE_COUNT EQU 2 DEF BUTTON_MODE_COUNT EQU 2
; RNG mode. ; RNG mode.
DEF TILE_RNG_MODE_BASE EQU 218 DEF TILE_RNG_MODE_BASE EQU 130
DEF RNG_MODE_TGM1 EQU 0 DEF RNG_MODE_TGM1 EQU 0
DEF RNG_MODE_TGM2 EQU 1 DEF RNG_MODE_TGM2 EQU 1
DEF RNG_MODE_TGM3 EQU 2 DEF RNG_MODE_TGM3 EQU 2
@ -233,14 +239,14 @@ DEF RNG_MODE_NES EQU 4
DEF RNG_MODE_COUNT EQU 5 DEF RNG_MODE_COUNT EQU 5
; Rotation mode. ; Rotation mode.
DEF TILE_ROT_MODE_BASE EQU 223 DEF TILE_ROT_MODE_BASE EQU 135
DEF ROT_MODE_ARS EQU 0 DEF ROT_MODE_ARS EQU 0
DEF ROT_MODE_ARSTI EQU 1 DEF ROT_MODE_ARSTI EQU 1
DEF ROT_MODE_NES EQU 2 DEF ROT_MODE_NES EQU 2
DEF ROT_MODE_COUNT EQU 3 DEF ROT_MODE_COUNT EQU 3
; Drop mode. ; Drop mode.
DEF TILE_DROP_MODE_BASE EQU 226 DEF TILE_DROP_MODE_BASE EQU 138
DEF DROP_MODE_FIRM EQU 0 DEF DROP_MODE_FIRM EQU 0
DEF DROP_MODE_SNIC EQU 1 DEF DROP_MODE_SNIC EQU 1
DEF DROP_MODE_HARD EQU 2 DEF DROP_MODE_HARD EQU 2
@ -259,7 +265,7 @@ DEF SCURVE_CHIL EQU 5
DEF SCURVE_COUNT EQU 6 DEF SCURVE_COUNT EQU 6
; 20G mode. ; 20G mode.
DEF TILE_HIG_MODE_BASE EQU 231 DEF TILE_HIG_MODE_BASE EQU 143
DEF HIG_MODE_OFF EQU 0 DEF HIG_MODE_OFF EQU 0
DEF HIG_MODE_ON EQU 1 DEF HIG_MODE_ON EQU 1
DEF HIG_MODE_COUNT EQU 2 DEF HIG_MODE_COUNT EQU 2
@ -303,7 +309,7 @@ DEF STATE_GAMEPLAY_BIG EQU 6
DEF STACK_SIZE EQU 64 DEF STACK_SIZE EQU 64
DEF EASTER_0 EQU $9865 DEF EASTER_0 EQU $9865
DEF EASTER_1 EQU $9885 DEF EASTER_1 EQU $9885
DEF SLAM_ANIMATION_LEN EQU 11 DEF SLAM_ANIMATION_LEN EQU 8
; Magic location for bank id. ; Magic location for bank id.
DEF rBANKID EQU $4007 DEF rBANKID EQU $4007

View File

@ -86,22 +86,6 @@ Main::
ld a, BANK_OTHER ld a, BANK_OTHER
ld [rROMB0], a ld [rROMB0], a
; We use a single set of tiles for the entire game, so we copy it at the start.
ld de, sTiles
ld hl, _VRAM
ld bc, sTilesEnd - sTiles
call SafeMemCopy
; GBC uses a few different tiles.
ld a, [wInitialA]
cp a, $11
jr nz, .nocolortiles
ld de, sColorTiles
ld hl, _VRAM + (TILE_PIECE_0 * 16)
ld bc, sColorTilesEnd - sColorTiles
call SafeMemCopy
.nocolortiles
; Clear OAM. ; Clear OAM.
call ClearOAM call ClearOAM
call SetNumberSpritePositions call SetNumberSpritePositions

View File

@ -26,9 +26,9 @@ SECTION "Gameplay Big Static Data", ROMX, BANK[BANK_GAMEPLAY_BIG]
sBigLeftDasSlam:: sBigLeftDasSlam::
db -1 db -1
db 0 db 0
db 1, 1 db 1
db 0, 0 db 0
db 1, 1 db 1
db 0 db 0
db -1 db -1
db -2 db -2
@ -36,9 +36,9 @@ sBigLeftDasSlam::
sBigRightDasSlam:: sBigRightDasSlam::
db -3 db -3
db -4 db -4
db -5, -5 db -5
db -4, -4 db -4
db -5, -5 db -5
db -4 db -4
db -3 db -3
db -2 db -2
@ -262,71 +262,71 @@ sBigPieceRotationStates:: ; How each piece is rotated.
sBigGameplayTileMap:: sBigGameplayTileMap::
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$59,$50,$63,$5F,$01,$01,$01 DB $01,$01,$6D,$19,$10,$23,$1F,$01,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$6D,$01,$01,$01,$01,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$01
DB $01,$01,$01,$01,$01,$09,$00,$00,$00,$00 DB $01,$01,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$08,$06,$06,$06,$06,$06,$06,$06 DB $01,$01,$6E,$70,$70,$70,$70,$70,$70,$70
DB $06,$07,$00,$00,$00,$00,$00,$00,$00,$00 DB $70,$71,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$53,$5A,$57,$4F,$01 DB $01,$01,$01,$01,$6D,$13,$1A,$17,$0F,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$01
DB $01,$01,$01,$01,$01,$09,$00,$00,$00,$00 DB $01,$01,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$6D,$01,$01,$01,$01,$01,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$08,$06,$06,$06,$06,$06 DB $01,$01,$01,$01,$6E,$70,$70,$70,$70,$70
DB $06,$06,$06,$07,$00,$00,$00,$00,$00,$00 DB $70,$70,$70,$71,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$5E,$4E,$5A DB $01,$01,$01,$01,$01,$01,$6D,$1E,$0E,$1A
DB $5D,$50,$01,$01,$01,$09,$00,$00,$00,$00 DB $1D,$10,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $08,$06,$06,$06,$06,$06,$06,$06,$06,$07 DB $6E,$70,$70,$70,$70,$70,$70,$70,$70,$71
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$57,$50,$61,$50,$57,$01,$01 DB $01,$01,$6D,$17,$10,$21,$10,$17,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$6D,$01,$01,$01,$01,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$05 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$72
DB $05,$05,$05,$01,$01,$09,$00,$00,$00,$00 DB $72,$72,$72,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00 DB $00,$00
sBigGameplayTileMapEnd:: sBigGameplayTileMapEnd::

View File

@ -26,9 +26,9 @@ SECTION "Gameplay Static Data", ROMX, BANK[BANK_GAMEPLAY]
sLeftDasSlam:: sLeftDasSlam::
db -1 db -1
db 0 db 0
db 1, 1 db 1
db 0, 0 db 0
db 1, 1 db 1
db 0 db 0
db -1 db -1
db -2 db -2
@ -36,9 +36,9 @@ sLeftDasSlam::
sRightDasSlam:: sRightDasSlam::
db -3 db -3
db -4 db -4
db -5, -5 db -5
db -4, -4 db -4
db -5, -5 db -5
db -4 db -4
db -3 db -3
db -2 db -2
@ -274,71 +274,71 @@ sTGM3Droughts::
sGameplayTileMap:: sGameplayTileMap::
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$59,$50,$63,$5F,$01,$01,$01 DB $01,$01,$6D,$19,$10,$23,$1F,$01,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$6D,$01,$01,$01,$01,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$01
DB $01,$01,$01,$01,$01,$09,$00,$00,$00,$00 DB $01,$01,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$08,$06,$06,$06,$06,$06,$06,$06 DB $01,$01,$6E,$70,$70,$70,$70,$70,$70,$70
DB $06,$07,$00,$00,$00,$00,$00,$00,$00,$00 DB $70,$71,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$53,$5A,$57,$4F,$01 DB $01,$01,$01,$01,$6D,$13,$1A,$17,$0F,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$01
DB $01,$01,$01,$01,$01,$09,$00,$00,$00,$00 DB $01,$01,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$6D,$01,$01,$01,$01,$01,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$08,$06,$06,$06,$06,$06 DB $01,$01,$01,$01,$6E,$70,$70,$70,$70,$70
DB $06,$06,$06,$07,$00,$00,$00,$00,$00,$00 DB $70,$70,$70,$71,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$5E,$4E,$5A DB $01,$01,$01,$01,$01,$01,$6D,$1E,$0E,$1A
DB $5D,$50,$01,$01,$01,$09,$00,$00,$00,$00 DB $1D,$10,$01,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $08,$06,$06,$06,$06,$06,$06,$06,$06,$07 DB $6E,$70,$70,$70,$70,$70,$70,$70,$70,$71
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01 DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$03,$57,$50,$61,$50,$57,$01,$01 DB $01,$01,$6D,$17,$10,$21,$10,$17,$01,$01
DB $01,$09,$00,$00,$00,$00,$00,$00,$00,$00 DB $01,$6F,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01 DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$03,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$6D,$01,$01,$01,$01,$01
DB $01,$01,$01,$09,$00,$00,$00,$00,$00,$00 DB $01,$01,$01,$6F,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01 DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$03,$01,$01,$05 DB $01,$01,$01,$01,$01,$01,$6D,$01,$01,$72
DB $05,$05,$05,$01,$01,$09,$00,$00,$00,$00 DB $72,$72,$72,$01,$01,$6F,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01 DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$03,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$6D,$01
DB $01,$01,$01,$01,$01,$01,$01,$09,$00,$00 DB $01,$01,$01,$01,$01,$01,$01,$6F,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $03,$01,$01,$01,$01,$01,$01,$01,$01,$09 DB $6D,$01,$01,$01,$01,$01,$01,$01,$01,$6F
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00 DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00 DB $00,$00
sGameplayTileMapEnd:: sGameplayTileMapEnd::

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -23,17 +23,17 @@ INCLUDE "globals.asm"
SECTION "Title Screen Static Data", ROMX, BANK[BANK_TITLE] SECTION "Title Screen Static Data", ROMX, BANK[BANK_TITLE]
sEasterM0:: db $C4, $C6, $C8, $CA, $CC sEasterM0:: db $44, $46, $48, $4A, $4C
sEasterM1:: db $C5, $C7, $C9, $CB, $CD sEasterM1:: db $45, $47, $49, $4B, $4D
sEasterC0:: db $CE, $D0, $C8, $CA, $CC, $72, $74, $76, $78, $7A, $D6, $D7 sEasterC0:: db $4E, $50, $48, $4A, $4C, $3A, $3C, $3E, $40, $42, $5A, $5B
sEasterC1:: db $CF, $D1, $C9, $CB, $CD, $73, $75, $77, $79, $7B, $01, $01 sEasterC1:: db $4F, $51, $49, $4B, $4D, $3B, $3D, $3F, $41, $43, $01, $01
sEasterA0:: db $D2, $D4, $C8, $CA, $CC, $72, $74, $76, $78, $7A, $D6, $D7 sEasterA0:: db $52, $54, $48, $4A, $4C, $3A, $3C, $3E, $40, $42, $5A, $5B
sEasterA1:: db $D3, $D5, $C9, $CB, $CD, $73, $75, $77, $79, $7B, $01, $01 sEasterA1:: db $53, $55, $49, $4B, $4D, $3B, $3D, $3F, $41, $43, $01, $01
sEasterS0:: db $F7, $F9, $C8, $CA, $CC sEasterS0:: db $56, $58, $C8, $CA, $CC
sEasterS1:: db $F8, $FA, $C9, $CB, $CD sEasterS1:: db $57, $59, $49, $4B, $4D
sOption0:: sOption0::
db "NORM" db "NORM"
@ -77,69 +77,69 @@ sTitleScreenTileMap::
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$C3,$5B,$4C,$59,$4F,$5A,$5D,$4C DB $01,$01,$5E,$1B,$0C,$19,$0F,$1A,$1D,$0C
DB $01,$59,$5A,$61,$4C,$01,$01,$FB,$FC,$FD DB $01,$19,$1A,$21,$0C,$01,$01,$5F,$60,$61
DB $FE,$FF,$01,$01,$01,$01,$01,$01,$01,$01 DB $62,$63,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$68,$6A,$6C,$6E,$70,$72,$74,$76,$78 DB $01,$30,$32,$34,$36,$38,$3A,$3C,$3E,$40
DB $7A,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $42,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$69,$6B,$6D,$6F,$71,$73,$75 DB $01,$01,$01,$31,$33,$35,$37,$39,$3B,$3D
DB $77,$79,$7B,$01,$01,$01,$01,$01,$01,$01 DB $3F,$41,$43,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$5B,$5D,$50,$5E DB $01,$01,$01,$01,$01,$01,$1B,$1D,$10,$1E
DB $5E,$01,$5E,$5F,$4C,$5D,$5F,$66,$01,$01 DB $1E,$01,$1E,$1F,$0C,$1D,$1F,$26,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$C1,$01,$4D,$60 DB $01,$01,$01,$01,$01,$01,$5D,$01,$0D,$20
DB $5F,$5F,$5A,$59,$5E,$01,$01,$01,$01,$01 DB $1F,$1F,$1A,$19,$1E,$01,$01,$01,$01,$01
DB $81,$01,$01,$01,$01,$82,$01,$01,$01,$01 DB $28,$01,$01,$01,$01,$29,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $C2,$01,$5D,$59,$52,$01,$58,$5A,$4F,$50 DB $5D,$01,$1D,$19,$12,$01,$18,$1A,$0F,$10
DB $01,$01,$01,$01,$81,$01,$01,$01,$01,$82 DB $01,$01,$01,$01,$28,$01,$01,$01,$01,$29
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$C2,$01,$5D,$5A,$5F,$01 DB $01,$01,$01,$01,$5D,$01,$1D,$1A,$1F,$01
DB $58,$5A,$4F,$50,$01,$01,$01,$01,$81,$01 DB $18,$1A,$0F,$10,$01,$01,$01,$01,$28,$01
DB $01,$01,$01,$82,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$29,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$C2,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$5D,$01
DB $4F,$5D,$5A,$5B,$01,$58,$5A,$4F,$50,$01 DB $0F,$1D,$1A,$1B,$01,$18,$1A,$0F,$10,$01
DB $01,$01,$81,$01,$01,$01,$01,$82,$01,$01 DB $01,$01,$28,$01,$01,$01,$01,$29,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$C2,$01,$5E,$5B,$50,$50,$4F,$01 DB $01,$01,$5D,$01,$1E,$1B,$10,$10,$0F,$01
DB $4E,$60,$5D,$61,$50,$01,$81,$01,$01,$01 DB $0E,$20,$1D,$21,$10,$01,$28,$01,$01,$01
DB $01,$82,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$29,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$C2,$01,$4C,$57 DB $01,$01,$01,$01,$01,$01,$5D,$01,$0C,$17
DB $62,$4C,$64,$5E,$01,$44,$42,$52,$01,$01 DB $22,$0C,$24,$1E,$01,$04,$02,$12,$01,$01
DB $81,$01,$01,$01,$01,$82,$01,$01,$01,$01 DB $28,$01,$01,$01,$01,$29,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $C2,$01,$5E,$5F,$4C,$5D,$5F,$01,$57,$50 DB $5D,$01,$1E,$1F,$0C,$1D,$1F,$01,$17,$10
DB $61,$50,$57,$01,$81,$01,$01,$01,$01,$82 DB $21,$10,$17,$01,$28,$01,$01,$01,$01,$29
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01 DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01 DB $01,$01
sTitleScreenTileMapEnd:: sTitleScreenTileMapEnd::

View File

@ -123,7 +123,10 @@ ApplyTells::
add a, TELLS_Y_DIST add a, TELLS_Y_DIST
ld [wSPRModeHiG], a ld [wSPRModeHiG], a
ldh a, [rSCX]
ld b, a
ld a, TELLS_BASE_X ld a, TELLS_BASE_X
sub a, b
ld [wSPRModeRNG+1], a ld [wSPRModeRNG+1], a
ld [wSPRModeRot+1], a ld [wSPRModeRot+1], a
ld [wSPRModeDrop+1], a ld [wSPRModeDrop+1], a
@ -202,17 +205,23 @@ ApplyNext::
dec a dec a
jr nz, .getoffn jr nz, .getoffn
.skipoffn .skipoffn
ldh a, [rSCX]
ld b, a
ld a, [hl+] ld a, [hl+]
add a, NEXT_BASE_X add a, NEXT_BASE_X
sub a, b
ld [wSPRNext1+1], a ld [wSPRNext1+1], a
ld a, [hl+] ld a, [hl+]
add a, NEXT_BASE_X add a, NEXT_BASE_X
sub a, b
ld [wSPRNext2+1], a ld [wSPRNext2+1], a
ld a, [hl+] ld a, [hl+]
add a, NEXT_BASE_X add a, NEXT_BASE_X
sub a, b
ld [wSPRNext3+1], a ld [wSPRNext3+1], a
ld a, [hl] ld a, [hl]
add a, NEXT_BASE_X add a, NEXT_BASE_X
sub a, b
ld [wSPRNext4+1], a ld [wSPRNext4+1], a
; Y positions ; Y positions
@ -239,7 +248,10 @@ ApplyNext::
ld [wSPRQueue2A], a ld [wSPRQueue2A], a
ld [wSPRQueue2B], a ld [wSPRQueue2B], a
ldh a, [rSCX]
ld b, a
ld a, QUEUE_BASE_X ld a, QUEUE_BASE_X
sub a, b
ld [wSPRQueue1A+1], a ld [wSPRQueue1A+1], a
ld [wSPRQueue2A+1], a ld [wSPRQueue2A+1], a
add a, 8 add a, 8
@ -332,17 +344,23 @@ ApplyHold::
dec a dec a
jr nz, .getoffh jr nz, .getoffh
.skipoffh .skipoffh
ldh a, [rSCX]
ld b, a
ld a, [hl+] ld a, [hl+]
add a, HOLD_BASE_X add a, HOLD_BASE_X
sub a, b
ld [wSPRHold1+1], a ld [wSPRHold1+1], a
ld a, [hl+] ld a, [hl+]
add a, HOLD_BASE_X add a, HOLD_BASE_X
sub a, b
ld [wSPRHold2+1], a ld [wSPRHold2+1], a
ld a, [hl+] ld a, [hl+]
add a, HOLD_BASE_X add a, HOLD_BASE_X
sub a, b
ld [wSPRHold3+1], a ld [wSPRHold3+1], a
ld a, [hl] ld a, [hl]
add a, HOLD_BASE_X add a, HOLD_BASE_X
sub a, b
ld [wSPRHold4+1], a ld [wSPRHold4+1], a
; Y positions ; Y positions
@ -440,7 +458,10 @@ ApplyNumbers4::
; Positions all number sprites for gameplay. ; Positions all number sprites for gameplay.
SetNumberSpritePositions:: SetNumberSpritePositions::
ldh a, [rSCX]
ld b, a
ld a, SCORE_BASE_X ld a, SCORE_BASE_X
sub a, b
ld hl, wSPRScore1 ld hl, wSPRScore1
ld [hl], SCORE_BASE_Y ld [hl], SCORE_BASE_Y
inc hl inc hl
@ -510,7 +531,10 @@ SetNumberSpritePositions::
ld a, OAMF_PAL1 | $07 ld a, OAMF_PAL1 | $07
ld [hl], a ld [hl], a
ldh a, [rSCX]
ld b, a
ld a, LEVEL_BASE_X ld a, LEVEL_BASE_X
sub a, b
ld hl, wSPRCLevel1 ld hl, wSPRCLevel1
ld [hl], CLEVEL_BASE_Y ld [hl], CLEVEL_BASE_Y
inc hl inc hl
@ -556,7 +580,10 @@ SetNumberSpritePositions::
ld a, OAMF_PAL1 | $07 ld a, OAMF_PAL1 | $07
ld [hl], a ld [hl], a
ldh a, [rSCX]
ld b, a
ld a, LEVEL_BASE_X ld a, LEVEL_BASE_X
sub a, b
ld hl, wSPRNLevel1 ld hl, wSPRNLevel1
ld [hl], NLEVEL_BASE_Y ld [hl], NLEVEL_BASE_Y
inc hl inc hl
@ -610,7 +637,10 @@ GradeRendering::
ld [wGrade1], a ld [wGrade1], a
; Set the X position of the grade objects. ; Set the X position of the grade objects.
ldh a, [rSCX]
ld b, a
ld a, GRADE_BASE_X ld a, GRADE_BASE_X
sub a, b
ld [wGrade0+1], a ld [wGrade0+1], a
add a, $8 add a, $8
ld [wGrade1+1], a ld [wGrade1+1], a

View File

@ -101,6 +101,9 @@ SwitchToGameplayB:
ld bc, sGameplayTileMapEnd - sGameplayTileMap ld bc, sGameplayTileMapEnd - sGameplayTileMap
call UnsafeMemCopy call UnsafeMemCopy
; And the tiles.
call LoadGameplayTiles
; Zero out SCX. ; Zero out SCX.
ld a, -2 ld a, -2
ldh [rSCX], a ldh [rSCX], a
@ -633,6 +636,9 @@ GamePlayEventLoopHandlerB::
ld de, hNLevel ld de, hNLevel
call ApplyNumbers4 call ApplyNumbers4
call SetNumberSpritePositions
call ApplyTells
jp GBCGameplayProcess jp GBCGameplayProcess
@ -730,6 +736,9 @@ SwitchToGameplayBigB:
ld bc, sBigGameplayTileMapEnd - sBigGameplayTileMap ld bc, sBigGameplayTileMapEnd - sBigGameplayTileMap
call UnsafeMemCopy call UnsafeMemCopy
; And the tiles.
call LoadGameplayTiles
; Zero out SCX. ; Zero out SCX.
ld a, -2 ld a, -2
ldh [rSCX], a ldh [rSCX], a
@ -1256,6 +1265,9 @@ GamePlayBigEventLoopHandlerB:
ld de, hNLevel ld de, hNLevel
call ApplyNumbers4 call ApplyNumbers4
call SetNumberSpritePositions
call ApplyTells
jp GBCBigGameplayProcess jp GBCBigGameplayProcess

View File

@ -127,6 +127,9 @@ SwitchToTitleB:
ld bc, sTitleScreenTileMapEnd - sTitleScreenTileMap ld bc, sTitleScreenTileMapEnd - sTitleScreenTileMap
call UnsafeMemCopy call UnsafeMemCopy
; And the tiles.
call LoadTitleTiles
; Zero out SCX. ; Zero out SCX.
xor a, a xor a, a
ldh [rSCX], a ldh [rSCX], a

70
src/tiles.asm Normal file
View File

@ -0,0 +1,70 @@
; DMGTRIS
; Copyright (C) 2023 - Randy Thiemann <randy.thiemann@gmail.com>
; This program is free software: you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation, either version 3 of the License, or
; (at your option) any later version.
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <https://www.gnu.org/licenses/>.
IF !DEF(TILES_ASM)
DEF TILES_ASM EQU 1
INCLUDE "globals.asm"
SECTION "Tile Functions", ROM0
LoadTitleTiles::
ld b, BANK_OTHER
rst RSTSwitchBank
ld de, sSharedTiles
ld hl, _VRAM
ld bc, sSharedTilesEnd - sSharedTiles
call SafeMemCopy
ld de, sTitleTiles
ld hl, _VRAM + (48*16)
ld bc, sTitleTilesEnd - sTitleTiles
call SafeMemCopy
jp RSTRestoreBank
LoadGameplayTiles::
ld b, BANK_OTHER
rst RSTSwitchBank
ld de, sSharedTiles
ld hl, _VRAM
ld bc, sSharedTilesEnd - sSharedTiles
call SafeMemCopy
ld a, [wInitialA]
cp a, $11
jr nz, .dmg
.gbc
ld de, sGameplayTilesC
ld hl, _VRAM + (48*16)
ld bc, sGameplayTilesCEnd - sGameplayTilesC
call SafeMemCopy
jp RSTRestoreBank
.dmg
ld de, sGameplayTilesM
ld hl, _VRAM + (48*16)
ld bc, sGameplayTilesMEnd - sGameplayTilesM
call SafeMemCopy
jp RSTRestoreBank
ENDC