Merge branch 'master' of git.villadelfia.org:villadelfia/dmgtris

This commit is contained in:
Randy Thiemann 2023-11-14 00:54:11 +01:00
commit 68d3684af0
21 changed files with 2544 additions and 2378 deletions

View File

@ -121,10 +121,22 @@ ScoreIncrement points are then awarded.
## Screenshots
![DMG Gameplay](https://villadelfia.org/i/xAAHfqDw.png)
![GBC Gameplay](https://villadelfia.org/i/Hj2P8Pk5.png)
Original Game Boy | Game Boy Color
:-: | :-:
<img src="https://villadelfia.org/i/xAAHfqDw.png" width="160" height="144" /> | <img src="https://villadelfia.org/i/Hj2P8Pk5.png" width="160" height="144" />
## Videos
### Original Game Boy
Normal Mode | Big Mode
:-: | :-:
[VIDEO](https://villadelfia.org/dmgtris/demo-dmg-normal.mp4) | [VIDEO](https://villadelfia.org/dmgtris/demo-dmg-big.mp4)
### Game Boy Color
Normal Mode | Big Mode
:-: | :-:
[VIDEO](https://villadelfia.org/dmgtris/demo-gbc-normal.mp4) | [VIDEO](https://villadelfia.org/dmgtris/demo-gbc-big.mp4)
## Building and Development
The game can be built using gnu make and the RGBDS toolchain.

BIN
assets/demo-dmg-big.mp4 Normal file

Binary file not shown.

BIN
assets/demo-dmg-normal.mp4 Normal file

Binary file not shown.

BIN
assets/demo-gbc-big.mp4 Normal file

Binary file not shown.

BIN
assets/demo-gbc-normal.mp4 Normal file

Binary file not shown.

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

@ -439,26 +439,29 @@ DEF TITLE_MAIN_SEL_RECORDS EQU 4
DEF TITLE_MAIN_SEL_CREDITS EQU 5
DEF TITLE_SETTINGS_OPTION_BASE EQU $9840
DEF TITLE_SETTINGS_OPTIONS EQU 9
DEF TITLE_SETTINGS_BUTTONS EQU $984F
DEF TITLE_SETTINGS_RNG EQU $986F
DEF TITLE_SETTINGS_ROT EQU $988F
DEF TITLE_SETTINGS_DROP EQU $98AF
DEF TITLE_SETTINGS_SCURVE EQU $98CF
DEF TITLE_SETTINGS_HIG EQU $98EF
DEF TITLE_SETTINGS_START EQU $990F
DEF TITLE_SETTINGS_FILTER EQU $992F
DEF TITLE_SETTINGS_OPTIONS EQU 7
DEF TITLE_SETTINGS_RNG EQU $984F
DEF TITLE_SETTINGS_ROT EQU $986F
DEF TITLE_SETTINGS_DROP EQU $988F
DEF TITLE_SETTINGS_SCURVE EQU $98AF
DEF TITLE_SETTINGS_HIG EQU $98CF
DEF TITLE_SETTINGS_START EQU $98EF
DEF TITLE_SETTINGS_TETRY EQU $99C0
DEF TITLE_SETTINGS_SEL_BACK EQU 8
DEF TITLE_SETTINGS_SEL_BACK EQU 6
DEF TITLE_PROFILE_OPTION_BASE EQU $9842
DEF TITLE_PROFILE_OPTIONS EQU 6
DEF TITLE_PROFILE_OPTION_BASE EQU $9840
DEF TITLE_PROFILE_OPTIONS EQU 8
DEF TITLE_PROFILE_INDEX EQU $984F
DEF TITLE_PROFILE_NAME_0 EQU $986F
DEF TITLE_PROFILE_NAME_1 EQU $988F
DEF TITLE_PROFILE_NAME_2 EQU $98AF
DEF TITLE_PROFILE_SEL_RESET EQU 4
DEF TITLE_PROFILE_SEL_BACK EQU 5
DEF TITLE_PROFILE_BUTTONS EQU $98CF
DEF TITLE_PROFILE_FILTER EQU $98EF
DEF TITLE_PROFILE_RESET EQU $990F
DEF TITLE_PROFILE_BACK EQU $992F
DEF TITLE_PROFILE_TETRY EQU $99C0
DEF TITLE_PROFILE_SEL_RESET EQU 6
DEF TITLE_PROFILE_SEL_BACK EQU 7
DEF TITLE_RECORDS_MODE EQU $9848
DEF TITLE_RECORDS_SCORE_BASE EQU $98A2

View File

@ -1065,6 +1065,15 @@ sTitleTiles::
DB $03,$03,$0F,$0F,$3F,$3F,$FF,$FF
DB $3F,$3F,$0F,$0F,$03,$03,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$CC,$CC,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $19,$19,$3F,$3F,$66,$66,$66,$66
DB $FF,$FF,$FF,$FF,$79,$79,$30,$30
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $80,$80,$C0,$C0,$60,$60,$60,$60
DB $F0,$F0,$F0,$F0,$E0,$E0,$C0,$C0
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
@ -1075,45 +1084,36 @@ sTitleTiles::
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 $80,$80,$80,$80,$00,$00,$00,$00
DB $80,$80,$80,$80,$00,$00,$00,$00
DB $80,$80,$80,$80,$03,$03,$0F,$0C
DB $9F,$9F,$90,$9F,$10,$1F,$10,$1F
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $1E,$1E,$FE,$FE,$E0,$E0,$00,$00
DB $1C,$1C,$3E,$22,$FF,$E3,$FF,$22
DB $E7,$FB,$26,$FB,$3E,$E3,$1C,$FF
DB $90,$9F,$90,$9F,$10,$1F,$10,$1F
DB $9F,$9F,$80,$80,$00,$00,$00,$00
DB $80,$80,$80,$80,$00,$00,$00,$00
DB $80,$80,$80,$80,$00,$00,$00,$00
DB $00,$FF,$00,$FF,$07,$FF,$07,$FC
DB $F7,$FC,$13,$1E,$11,$1F,$10,$1F
DB $10,$1F,$10,$1F,$10,$1F,$1F,$1F
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $1E,$1E,$1F,$1F,$01,$01,$00,$00
DB $0E,$0E,$1F,$11,$FF,$F1,$FF,$11
DB $F3,$FD,$13,$FD,$1F,$F1,$0E,$FF
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$C0,$C0,$C0,$C0,$00,$00
DB $00,$00,$00,$00,$FF,$FF,$FF,$0D
DB $FF,$F1,$1F,$F1,$1F,$F1,$1F,$F1
DB $00,$FF,$00,$FF,$E0,$FF,$E0,$3F
DB $FF,$3F,$DF,$71,$9F,$F1,$1F,$F1
DB $1F,$F1,$1F,$F3,$1C,$FC,$F0,$F0
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,$03,$03,$03,$03,$00,$00
DB $00,$00,$00,$00,$0F,$0F,$3F,$30
DB $7F,$7F,$40,$7F,$40,$7F,$40,$7F
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $78,$78,$F8,$F8,$80,$80,$00,$00
DB $70,$70,$F8,$88,$FF,$8F,$FF,$88
DB $9F,$EF,$98,$EF,$F8,$8F,$70,$FF
DB $40,$7F,$40,$7F,$40,$7F,$40,$7F
DB $7F,$7F,$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,$FF,$00,$FF,$1F,$FF,$1F,$F0
DB $DF,$F0,$4F,$79,$46,$7F,$40,$7F
DB $40,$7F,$40,$7F,$40,$7F,$7F,$7F
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $78,$78,$7F,$7F,$07,$07,$00,$00
DB $38,$38,$7C,$44,$FF,$C7,$FF,$44
DB $CF,$F7,$4C,$F7,$7C,$C7,$38,$FF
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$FC,$FC,$FC,$34
DB $FC,$C4,$7C,$C4,$7C,$C4,$7C,$C4
DB $00,$FF,$00,$FF,$80,$FF,$80,$FF
DB $FF,$FF,$7C,$C4,$7C,$C4,$7C,$C4
DB $7C,$C4,$7C,$CC,$70,$F0,$C0,$C0
DB $00,$00,$00,$00,$00,$00,$00,$00
DB $7C,$C4,$7C,$C4,$7C,$CC,$70,$F0
DB $C0,$C0,$00,$00,$00,$00,$00,$00
DB $1F,$F1,$1F,$F1,$1F,$F3,$1C,$FC
DB $F0,$F0,$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,$75,$00,$47,$00,$55,$00,$55

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -82,12 +82,6 @@ sFilterMode::
db "UDLR"
db "NONE"
sTetryButtons::
db "THIS OPTION WILL"
db "CHANGE WHICH WAY"
db "THE BUTTONS RO- "
db "TATE THE PIECE "
sTetryRNG::
db "THIS OPTION WILL"
db "CHANGE THE WAY "
@ -124,16 +118,58 @@ sTetrySTART::
db "START IN THE SP-"
db "EED CURVE "
sTetryEXITSettings::
db "OH OKAY THEN- "
db "BYE BYE! "
db " "
db " "
sTetryProfileNumber::
db "SELECT THE PRO- "
db "FILE YOU WOULD "
db "LIKE TO EDIT! "
db " "
sTetryProfileInitial1::
db "THIS IS THE "
db "FIRST INITIAL IN"
db "YOUR NAME! "
db " "
sTetryProfileInitial2::
db "THIS IS THE "
db "SECOND INITIAL "
db "IN YOUR NAME! "
db " "
sTetryProfileInitial3::
db "THIS IS THE "
db "THIRD INITIAL IN"
db "YOUR NAME! "
db " "
sTetryButtons::
db "THIS OPTION WILL"
db "CHANGE WHICH WAY"
db "THE BUTTONS RO- "
db "TATE THE PIECE "
sTetryFILTER::
db "THIS OPTION WILL"
db "DETERMINE WHICH "
db "D-PAD BUTTONS "
db "HAVE PRIORITY "
sTetryEXIT::
db "OH OKAY THEN- "
db "BYE BYE! "
db " "
sTetryReset::
db "THIS OPTION WILL"
db "RESET THIS PRO- "
db "FILE TO THE "
db "DEFAULT! "
sTetryEXITProfile::
db "ARE YOU LEAVING "
db "ALREADY? I'LL "
db "MISS YOU! "
db " "
sTitleScreenMainMap::
@ -163,17 +199,17 @@ sTitleScreenMainMap::
DB $1F,$0C,$1D,$1F,$01,$0D,$14,$12,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$5D
DB $01,$1B,$1D,$1A,$11,$14,$17,$10,$6F,$01
DB $01,$1B,$1D,$1A,$11,$14,$17,$10,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$5D,$01,$1E,$10,$1F,$1F,$14,$19,$12
DB $1E,$6F,$01,$01,$01,$01,$01,$01,$00,$00
DB $1E,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$5D,$01,$1D,$10,$0E,$1A,$1D
DB $0F,$1E,$6F,$01,$01,$01,$01,$01,$01,$01
DB $0F,$1E,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$5D,$01,$0E,$1D,$10
DB $0F,$14,$1F,$1E,$6F,$01,$01,$01,$01,$01
DB $0F,$14,$1F,$1E,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
@ -214,33 +250,33 @@ sTitleScreenSettingsMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$5D,$01,$0D,$20,$1F,$1F
DB $1A,$19,$1E,$01,$01,$01,$01,$01,$28,$01
DB $00,$00,$00,$00,$5D,$01,$1D,$19,$12,$01
DB $18,$1A,$0F,$10,$01,$01,$01,$01,$28,$01
DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$19
DB $12,$01,$18,$1A,$0F,$10,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$1A
DB $1F,$01,$18,$1A,$0F,$10,$01,$01,$01,$01
DB $28,$01,$01,$01,$01,$29,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
DB $1D,$1A,$1F,$01,$18,$1A,$0F,$10,$01,$01
DB $0F,$1D,$1A,$1B,$01,$18,$1A,$0F,$10,$01
DB $01,$01,$28,$01,$01,$01,$01,$29,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $5D,$01,$0F,$1D,$1A,$1B,$01,$18,$1A,$0F
DB $10,$01,$01,$01,$28,$01,$01,$01,$01,$29
DB $5D,$01,$1E,$1B,$10,$10,$0F,$01,$0E,$20
DB $1D,$21,$10,$01,$28,$01,$01,$01,$01,$29
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$5D,$01,$1E,$1B,$10,$10,$0F,$01
DB $0E,$20,$1D,$21,$10,$01,$28,$01,$01,$01
DB $00,$00,$5D,$01,$0C,$17,$22,$0C,$24,$1E
DB $01,$04,$02,$12,$01,$01,$28,$01,$01,$01
DB $01,$29,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$5D,$01,$0C,$17,$22,$0C
DB $24,$1E,$01,$04,$02,$12,$01,$01,$28,$01
DB $00,$00,$00,$00,$5D,$01,$1E,$1F,$0C,$1D
DB $1F,$01,$17,$10,$21,$10,$17,$01,$28,$01
DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$5D,$01,$1E,$1F
DB $0C,$1D,$1F,$01,$17,$10,$21,$10,$17,$01
DB $28,$01,$01,$01,$01,$29,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
DB $0F,$2A,$1B,$0C,$0F,$01,$11,$14,$17,$1F
DB $10,$1D,$28,$01,$01,$01,$01,$29,$00,$00
DB $00,$00,$00,$00,$00,$00,$5D,$01,$0D,$0C
DB $0E,$16,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $5D,$01,$0D,$0C,$0E,$16,$6F,$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 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
@ -285,49 +321,49 @@ sTitleScreenCreditsMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$0E,$1A,$0F,$10,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$22,$1D,$14,$1F,$1F,$10
DB $19,$01,$0D,$24,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$2A,$01,$1B,$0C
DB $19,$0F,$1A,$1D,$0C,$01,$19,$1A,$21,$0C
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
DB $0E,$1D,$10,$10,$1B,$10,$1D,$0E,$1D,$0C
DB $11,$1F,$24,$1F,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$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 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$18,$20,$1E,$14,$0E,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$2A,$01,$1B,$0C,$19,$0F
DB $1A,$1D,$0C,$01,$19,$1A,$21,$0C,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$1E,$11
DB $23,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $2A,$01,$1B,$0C,$19,$0F,$1A,$1D,$0C,$01
DB $19,$1A,$21,$0C,$01,$01,$01,$01,$01,$01
DB $22,$14,$1F,$13,$01,$13,$10,$17,$1B,$01
DB $11,$1D,$1A,$18,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$2A,$01,$1F,$10,$1B,$1B,$17,$10
DB $1E,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$2A,$01,$0E,$1D,$10,$10,$1B,$10
DB $1D,$0E,$1D,$0C,$11,$1F,$24,$1F,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$2A,$01,$1F,$10,$1B,$1B
DB $17,$10,$1E,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$12,$11,$23,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$2A,$01,$0C,$19
DB $1F,$1A,$19,$10,$1D,$12,$1A,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
DB $1B,$0C,$19,$0F,$1A,$1D,$0C,$01,$19,$1A
DB $21,$0C,$01,$01,$80,$82,$88,$8A,$00,$00
DB $17,$14,$19,$0F,$1F,$1A,$0D,$14,$0C,$1E
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $2A,$01,$25,$0C,$1B,$13,$1A,$0F,$09,$09
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$2A,$01,$0D,$0D,$0D,$0D,$0D,$1D
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$2A,$01,$0C,$23,$08,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$2A,$01,$0D,$10
DB $22,$0C,$1D,$10,$01,$01,$01,$01,$01,$01
DB $01,$01,$76,$76,$76,$76,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$2A,$01
DB $1F,$0C,$1B,$01,$78,$7A,$01,$01,$01,$01
DB $01,$01,$01,$01,$80,$82,$88,$8A,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $2A,$01,$12,$0D,$0F,$10,$21,$01,$78,$7A
DB $01,$01,$01,$01,$01,$01,$81,$83,$89,$8B
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
@ -356,46 +392,30 @@ sTitleScreenProfileMap::
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$5D,$01,$19,$20
DB $18,$0D,$10,$1D,$01,$01,$01,$01,$28,$01
DB $00,$00,$00,$00,$5D,$01,$19,$20,$18,$0D
DB $10,$1D,$01,$01,$01,$01,$01,$01,$28,$01
DB $29,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$5D,$01
DB $14,$19,$14,$1F,$14,$0C,$17,$01,$03,$01
DB $00,$00,$00,$00,$00,$00,$5D,$01,$14,$19
DB $14,$1F,$14,$0C,$17,$01,$03,$01,$01,$01
DB $28,$01,$29,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
DB $14,$19,$14,$1F,$14,$0C,$17,$01,$04,$01
DB $01,$01,$28,$01,$29,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $5D,$01,$14,$19,$14,$1F,$14,$0C,$17,$01
DB $04,$01,$28,$01,$29,$01,$01,$01,$00,$00
DB $05,$01,$01,$01,$28,$01,$29,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$5D,$01,$14,$19,$14,$1F,$14,$0C
DB $17,$01,$05,$01,$28,$01,$29,$01,$01,$01
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$5D,$01,$1D,$10,$1E,$10
DB $1F,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$5D,$01,$0D,$0C
DB $0E,$16,$6F,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$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 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $00,$00,$5D,$01,$0D,$20,$1F,$1F,$1A,$19
DB $1E,$01,$01,$01,$01,$01,$28,$01,$01,$01
DB $01,$29,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$5D,$01,$0F,$2A,$1B,$0C
DB $0F,$01,$11,$14,$17,$1F,$10,$1D,$28,$01
DB $01,$01,$01,$29,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$5D,$01,$1D,$10
DB $1E,$10,$1F,$01,$1B,$1D,$1A,$11,$14,$17
DB $10,$01,$01,$01,$01,$01,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$5D,$01
DB $0D,$0C,$0E,$16,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
@ -407,6 +427,22 @@ sTitleScreenProfileMap::
DB $00,$00,$00,$00,$0C,$2A,$0E,$1A,$19,$11
DB $01,$0D,$2A,$0D,$0C,$0E,$16,$01,$6D,$2A
DB $19,$0C,$21,$14,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$5E,$5E,$5E,$5E
DB $5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E,$5E
DB $5E,$5E,$5E,$5E,$5E,$5E,$00,$00,$00,$00
DB $00,$00,$00,$00,$00,$00,$00,$00,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$80,$82,$88,$8A,$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,$81,$83,$89,$8B
DB $00,$00,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$01,$01,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$84,$86
DB $8C,$8E,$00,$00,$00,$00,$00,$00,$00,$00
DB $00,$00,$00,$00,$01,$01,$01,$01,$01,$01
DB $01,$01,$01,$01,$01,$01,$01,$01,$01,$01
DB $85,$87,$8D,$8F,$00,$00,$00,$00,$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 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00

View File

@ -68,6 +68,7 @@ wSPRTimeCS1:: ds 4
wSPRTimeCS2:: ds 4
ENDU
wScratch: ds 2
wSpritePal: ds 1
SECTION "OAM DMA Code", ROM0
@ -113,6 +114,24 @@ ClearOAM::
SECTION "Domain Specific Functions", ROM0
SetPal::
ldh a, [hCurrentIntegerGravity]
cp a, 20
jr nz, .darker
ld hl, hFrameCtr
bit 4, [hl]
jr z, .lighter
.darker
ld a, OAMF_PAL0 | $07
ld [wSpritePal], a
ret
.lighter
ld a, OAMF_PAL1 | $07
ld [wSpritePal], a
ret
.setpal
; Puts the mode tells into sprites and displays them.
ApplyTells::
ld a, TELLS_BASE_Y
@ -485,7 +504,7 @@ ApplyTime::
ld [wSPRTimeCS2+1], a
; Set the palette of the time objects.
ld a, OAMF_PAL0 | $07
ld a, OAMF_PAL1 | $07
ld [wSPRTimeM1+3], a
ld [wSPRTimeM2+3], a
ld [wSPRTimeS1+3], a
@ -590,11 +609,6 @@ ApplyTime::
ld a, [de]
add a, TILE_SMALL_0
ld [hl], a
ret
@ -604,13 +618,15 @@ ApplyTime::
ApplyNumbers8::
inc hl
inc hl
ld bc, 4
ld bc, 2
ld a, [de]
or a, a
jr nz, .one
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -618,7 +634,9 @@ ApplyNumbers8::
or a, a
jr nz, .two
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -626,7 +644,9 @@ ApplyNumbers8::
or a, a
jr nz, .three
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -634,7 +654,9 @@ ApplyNumbers8::
or a, a
jr nz, .four
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -642,7 +664,9 @@ ApplyNumbers8::
or a, a
jr nz, .five
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -650,7 +674,9 @@ ApplyNumbers8::
or a, a
jr nz, .six
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -658,7 +684,9 @@ ApplyNumbers8::
or a, a
jr nz, .seven
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -667,56 +695,72 @@ ApplyNumbers8::
.one
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.two
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.three
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.four
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.five
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.six
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.seven
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.eight
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
ret
@ -726,13 +770,15 @@ ApplyNumbers8::
ApplyNumbers4::
inc hl
inc hl
ld bc, 4
ld bc, 2
ld a, [de]
or a, a
jr nz, .one
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -740,7 +786,9 @@ ApplyNumbers4::
or a, a
jr nz, .two
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -748,7 +796,9 @@ ApplyNumbers4::
or a, a
jr nz, .three
ld a, TILE_BLANK
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
@ -757,27 +807,35 @@ ApplyNumbers4::
.one
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.two
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.three
ld a, [de]
add a, TILE_0
ld [hl], a
ld [hl+], a
ld a, [wSpritePal]
ld [hl+], a
add hl, bc
inc de
.four
ld a, [de]
add a, TILE_0
ld [hl+], a
ld a, [wSpritePal]
ld [hl], a
ret
@ -795,7 +853,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -807,7 +865,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -819,7 +877,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -831,7 +889,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -843,7 +901,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -855,7 +913,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -867,7 +925,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -878,7 +936,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ldh a, [rSCX]
@ -892,7 +950,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -904,7 +962,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -916,7 +974,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -927,7 +985,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ldh a, [rSCX]
@ -941,7 +999,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -953,7 +1011,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -965,7 +1023,7 @@ SetNumberSpritePositions::
inc hl
inc hl
ld b, a
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ld a, b
add a, 8
@ -976,7 +1034,7 @@ SetNumberSpritePositions::
ld [hl], a
inc hl
inc hl
ld a, OAMF_PAL1 | $07
ld a, [wSpritePal]
ld [hl], a
ret
@ -1021,7 +1079,7 @@ GradeRendering::
ld a, [wSPRGrade1+3]
inc a
and a, OAMF_PALMASK
or a, OAMF_PAL1
or a, OAMF_PAL0
ld [wSPRGrade1+3], a
ld [wSPRGrade2+3], a
jr .drawgrade

View File

@ -772,6 +772,8 @@ GamePlayEventLoopHandlerB::
; Always draw the score, level, next piece, and held piece.
.drawStaticInfo
call SetPal
ldh a, [hNextPiece]
call ApplyNext
@ -1583,6 +1585,8 @@ GamePlayBigEventLoopHandlerB:
; Always draw the score, level, next piece, and held piece.
.drawStaticInfo
call SetPal
ldh a, [hNextPiece]
call ApplyNext

View File

@ -760,7 +760,59 @@ TitleVBlankHandlerB:
ld a, [wProfileName+2]
ld hl, TITLE_PROFILE_NAME_2
ld [hl], a
ret
.buttons
ld b, 0
ld a, [wSwapABState]
add a, a
add a, a
ld c, a
ld hl, sBUTTONSMode
add hl, bc
ld d, h
ld e, l
ld hl, TITLE_PROFILE_BUTTONS
ld bc, 4
call UnsafeMemCopy
.filter
ld b, 0
ldh a, [hFilterMode]
add a, a
add a, a
ld c, a
ld hl, sFilterMode
add hl, bc
ld d, h
ld e, l
ld hl, TITLE_PROFILE_FILTER
ld bc, 4
call UnsafeMemCopy
; Tetry!
ld a, [wSelected]
ld hl, sTetryProfileNumber
ld bc, 64
: or a, a
jr z, .donetetry2
dec a
add hl, bc
jr :-
.donetetry2
ld d, h
ld e, l
ld hl, TITLE_PROFILE_TETRY
ld bc, 16
call SafeMemCopy
ld hl, TITLE_PROFILE_TETRY+(1*32)
ld bc, 16
call SafeMemCopy
ld hl, TITLE_PROFILE_TETRY+(2*32)
ld bc, 16
call SafeMemCopy
ld hl, TITLE_PROFILE_TETRY+(3*32)
ld bc, 16
jp SafeMemCopy
.vblankSettings
@ -857,54 +909,27 @@ TitleVBlankHandlerB:
ld hl, TITLE_SETTINGS_HIG
ld bc, 4
call UnsafeMemCopy
jr .buttons
jr .start
.disabled1
ld de, sDisabled
ld hl, TITLE_SETTINGS_HIG
ld bc, 4
call UnsafeMemCopy
.buttons
ld b, 0
ld a, [wSwapABState]
add a, a
add a, a
ld c, a
ld hl, sBUTTONSMode
add hl, bc
ld d, h
ld e, l
ld hl, TITLE_SETTINGS_BUTTONS
ld bc, 4
call UnsafeMemCopy
.filter
ld b, 0
ldh a, [hFilterMode]
add a, a
add a, a
ld c, a
ld hl, sFilterMode
add hl, bc
ld d, h
ld e, l
ld hl, TITLE_SETTINGS_FILTER
ld bc, 4
call UnsafeMemCopy
; START level.
.start
call DrawSpeedSettings
; Tetry!
ld a, [wSelected]
ld hl, sTetryButtons
ld hl, sTetryRNG
ld bc, 64
: or a, a
jr z, .donetetry
jr z, .donetetry1
dec a
add hl, bc
jr :-
.donetetry
.donetetry1
ld d, h
ld e, l
ld hl, TITLE_SETTINGS_TETRY
@ -1080,29 +1105,14 @@ SettingsHandleLeft:
jp hl
.jumps
jp .buttons
jp .rng
jp .rot
jp .drop
jp .curve
jp .hig
jp DecrementLevel
jp .filter
no_jump
.buttons
ld a, [wSwapABState]
or a, a
jr z, :+
dec a
ld [wSwapABState], a
ld [rSwapABState], a
ret
: ld a, BUTTON_MODE_COUNT-1
ld [wSwapABState], a
ld [rSwapABState], a
ret
.rng
ld a, [wRNGModeState]
or a, a
@ -1170,20 +1180,6 @@ SettingsHandleLeft:
ld [rAlways20GState], a
ret
.filter
ldh a, [hFilterMode]
or a, a
jr z, :+
dec a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
: ld a, FILTER_MODE_COUNT-1
ldh [hFilterMode], a
ld [rFilterMode], a
ret
SettingsHandleRight:
ld a, [wSelected]
@ -1200,29 +1196,14 @@ SettingsHandleRight:
jp hl
.jumps
jp .buttons
jp .rng
jp .rot
jp .drop
jp .curve
jp .hig
jp IncrementLevel
jp .filter
no_jump
.buttons
ld a, [wSwapABState]
cp a, BUTTON_MODE_COUNT-1
jr z, :+
inc a
ld [wSwapABState], a
ld [rSwapABState], a
ret
: xor a, a
ld [wSwapABState], a
ld [rSwapABState], a
ret
.rng
ld a, [wRNGModeState]
cp a, RNG_MODE_COUNT-1
@ -1290,19 +1271,6 @@ SettingsHandleRight:
ld [rAlways20GState], a
ret
.filter
ldh a, [hFilterMode]
cp a, FILTER_MODE_COUNT-1
jr z, :+
inc a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
: xor a, a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
ProfileHandleA:
ld a, [wSelected]
@ -1337,6 +1305,9 @@ ProfileHandleRight:
jp .l0
jp .l1
jp .l2
jp .buttons
jp .filter
no_jump
no_jump
.idx
@ -1381,6 +1352,32 @@ ProfileHandleRight:
ld [rProfileName+2], a
ret
.buttons
ld a, [wSwapABState]
cp a, BUTTON_MODE_COUNT-1
jr z, :+
inc a
ld [wSwapABState], a
ld [rSwapABState], a
ret
: xor a, a
ld [wSwapABState], a
ld [rSwapABState], a
ret
.filter
ldh a, [hFilterMode]
cp a, FILTER_MODE_COUNT-1
jr z, :+
inc a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
: xor a, a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
ProfileHandleLeft:
ld a, [wSelected]
@ -1403,6 +1400,9 @@ ProfileHandleLeft:
jp .l0
jp .l1
jp .l2
jp .buttons
jp .filter
no_jump
no_jump
.idx
@ -1447,6 +1447,32 @@ ProfileHandleLeft:
ld [rProfileName+2], a
ret
.buttons
ld a, [wSwapABState]
or a, a
jr z, :+
dec a
ld [wSwapABState], a
ld [rSwapABState], a
ret
: ld a, BUTTON_MODE_COUNT-1
ld [wSwapABState], a
ld [rSwapABState], a
ret
.filter
ldh a, [hFilterMode]
or a, a
jr z, :+
dec a
ldh [hFilterMode], a
ld [rFilterMode], a
ret
: ld a, FILTER_MODE_COUNT-1
ldh [hFilterMode], a
ld [rFilterMode], a
ret
ProfileHandleDown:
ld a, [wSelected]