Merge pull request #762 from mid-kid/master

Better document splash screen
This commit is contained in:
Rangi 2020-08-27 12:13:44 -04:00 committed by GitHub
commit a147c35540
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
32 changed files with 1091 additions and 1078 deletions

View File

@ -1,7 +1,7 @@
; battle_anim_struct members (see macros/wram.asm)
const_def
const BATTLEANIMSTRUCT_INDEX
const BATTLEANIMSTRUCT_01
const BATTLEANIMSTRUCT_OAMFLAGS
const BATTLEANIMSTRUCT_02
const BATTLEANIMSTRUCT_FRAMESET_ID
const BATTLEANIMSTRUCT_FUNCTION
@ -14,9 +14,9 @@
const BATTLEANIMSTRUCT_PARAM
const BATTLEANIMSTRUCT_DURATION
const BATTLEANIMSTRUCT_FRAME
const BATTLEANIMSTRUCT_ANON_JT_INDEX
const BATTLEANIMSTRUCT_0F
const BATTLEANIMSTRUCT_10
const BATTLEANIMSTRUCT_JUMPTABLE_INDEX
const BATTLEANIMSTRUCT_VAR1
const BATTLEANIMSTRUCT_VAR2
const_skip 7
BATTLEANIMSTRUCT_LENGTH EQU const_value
NUM_ANIM_OBJECTS EQU 10 ; see wActiveAnimObjects

View File

@ -12,10 +12,10 @@
const SPRITEANIMSTRUCT_DURATIONOFFSET ; 9
const SPRITEANIMSTRUCT_FRAME ; a
const SPRITEANIMSTRUCT_JUMPTABLE_INDEX ; b
const SPRITEANIMSTRUCT_0C ; c
const SPRITEANIMSTRUCT_0D ; d
const SPRITEANIMSTRUCT_0E ; e
const SPRITEANIMSTRUCT_0F ; f
const SPRITEANIMSTRUCT_VAR1 ; c
const SPRITEANIMSTRUCT_VAR2 ; d
const SPRITEANIMSTRUCT_VAR3 ; e
const SPRITEANIMSTRUCT_VAR4 ; f
SPRITEANIMSTRUCT_LENGTH EQU const_value
NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
@ -25,8 +25,8 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
const SPRITE_ANIM_INDEX_GS_TITLE_TRAIL ; 01
const SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR ; 02
const SPRITE_ANIM_INDEX_GAMEFREAK_LOGO ; 03
const SPRITE_ANIM_INDEX_GS_INTRO_STAR ; 04
const SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE ; 05
const SPRITE_ANIM_INDEX_GS_GAMEFREAK_LOGO_STAR ; 04
const SPRITE_ANIM_INDEX_GS_GAMEFREAK_LOGO_SPARKLE ; 05
const SPRITE_ANIM_INDEX_SLOTS_GOLEM ; 06
const SPRITE_ANIM_INDEX_SLOTS_CHANSEY ; 07
const SPRITE_ANIM_INDEX_SLOTS_EGG ; 08
@ -76,8 +76,8 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
const SPRITE_ANIM_SEQ_GS_TITLE_TRAIL ; 04
const SPRITE_ANIM_SEQ_NAMING_SCREEN_CURSOR ; 05
const SPRITE_ANIM_SEQ_GAMEFREAK_LOGO ; 06
const SPRITE_ANIM_SEQ_GS_INTRO_STAR ; 07
const SPRITE_ANIM_SEQ_GS_INTRO_SPARKLE ; 08
const SPRITE_ANIM_SEQ_GS_GAMEFREAK_LOGO_STAR ; 07
const SPRITE_ANIM_SEQ_GS_GAMEFREAK_LOGO_SPARKLE ; 08
const SPRITE_ANIM_SEQ_SLOTS_GOLEM ; 09
const SPRITE_ANIM_SEQ_SLOTS_CHANSEY ; 0a
const SPRITE_ANIM_SEQ_SLOTS_EGG ; 0b
@ -118,8 +118,8 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
const SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR ; 08
const SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR_BIG ; 09
const SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO ; 0a
const SPRITE_ANIM_FRAMESET_GS_INTRO_STAR ; 0b
const SPRITE_ANIM_FRAMESET_GS_INTRO_SPARKLE ; 0c
const SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_STAR ; 0b
const SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_SPARKLE ; 0c
const SPRITE_ANIM_FRAMESET_SLOTS_GOLEM ; 0d
const SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY ; 0e
const SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY_2 ; 0f
@ -210,11 +210,11 @@ NUM_SPRITE_ANIM_STRUCTS EQU 10 ; see wSpriteAnimationStructs
const SPRITE_ANIM_OAMSET_GS_TITLE_TRAIL_2 ; 1f
const SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR ; 20
const SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR_BIG ; 21
const SPRITE_ANIM_OAMSET_GS_INTRO_GAMEFREAK_LOGO ; 22
const SPRITE_ANIM_OAMSET_GS_INTRO_STAR ; 23
const SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_1 ; 24
const SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_2 ; 25
const SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_3 ; 26
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO ; 22
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR ; 23
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1 ; 24
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2 ; 25
const SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3 ; 26
const SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1 ; 27
const SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2 ; 28
const SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1 ; 29

View File

@ -11,8 +11,8 @@ SpriteAnimFrameData:
dw .Frameset_TextEntryCursor
dw .Frameset_TextEntryCursorBig
dw .Frameset_GameFreakLogo
dw .Frameset_GSIntroStar
dw .Frameset_GSIntroSparkle
dw .Frameset_GSGameFreakLogoStar
dw .Frameset_GSGameFreakLogoSparkle
dw .Frameset_SlotsGolem
dw .Frameset_SlotsChansey
dw .Frameset_SlotsChansey2
@ -155,16 +155,16 @@ SpriteAnimFrameData:
frame SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11, 7
endanim
.Frameset_GSIntroStar:
frame SPRITE_ANIM_OAMSET_GS_INTRO_STAR, 3
frame SPRITE_ANIM_OAMSET_GS_INTRO_STAR, 3, OAM_Y_FLIP
.Frameset_GSGameFreakLogoStar:
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR, 3
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR, 3, OAM_Y_FLIP
dorestart
.Frameset_GSIntroSparkle:
frame SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_1, 2
frame SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_2, 2
frame SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_3, 2
frame SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_2, 2
.Frameset_GSGameFreakLogoSparkle:
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1, 2
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2, 2
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3, 2
frame SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2, 2
dorestart
.Frameset_SlotsGolem:

View File

@ -35,11 +35,11 @@ SpriteAnimOAMData:
dbw $fa, .OAMData_GSTitleTrail ; SPRITE_ANIM_OAMSET_GS_TITLE_TRAIL_2
dbw $00, .OAMData_TextEntryCursor ; SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR
dbw $00, .OAMData_TextEntryCursorBig ; SPRITE_ANIM_OAMSET_TEXT_ENTRY_CURSOR_BIG
dbw $00, .OAMData_GSIntroGameFreakLogo ; SPRITE_ANIM_OAMSET_GS_INTRO_GAMEFREAK_LOGO
dbw $0f, .OAMData_GSIntroStar ; SPRITE_ANIM_OAMSET_GS_INTRO_STAR
dbw $11, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_1
dbw $12, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_2
dbw $13, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_INTRO_SPARKLE_3
dbw $00, .OAMData_GSGameFreakLogo ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO
dbw $0f, .OAMData_GSGameFreakLogoStar ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_STAR
dbw $11, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_1
dbw $12, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_2
dbw $13, .OAMData_1x1_Palette0 ; SPRITE_ANIM_OAMSET_GS_GAMEFREAK_LOGO_SPARKLE_3
dbw $00, .OAMData_SlotsGolem ; SPRITE_ANIM_OAMSET_SLOTS_GOLEM_1
dbw $08, .OAMData_SlotsGolem ; SPRITE_ANIM_OAMSET_SLOTS_GOLEM_2
dbw $10, .OAMData_SlotsChansey1 ; SPRITE_ANIM_OAMSET_SLOTS_CHANSEY_1
@ -153,7 +153,7 @@ SpriteAnimOAMData:
dbsprite -1, 0, 0, 0, $10, 0
dbsprite 0, 0, 0, 0, $11, 0
.OAMData_GSIntroStar:
.OAMData_GSGameFreakLogoStar:
db 4
dbsprite -1, -1, 0, 0, $00, 0
dbsprite 0, -1, 0, 0, $00, 0 | X_FLIP
@ -471,7 +471,7 @@ SpriteAnimOAMData:
dbsprite 3, 0, 0, 0, $01, 0 | Y_FLIP
dbsprite 4, 0, 0, 0, $00, 0 | X_FLIP | Y_FLIP
.OAMData_GSIntroGameFreakLogo:
.OAMData_GSGameFreakLogo:
db 15
dbsprite -2, -3, 4, 4, $00, 1 | OBP_NUM
dbsprite -1, -3, 4, 4, $01, 1 | OBP_NUM

View File

@ -5,8 +5,8 @@ SpriteAnimSeqData:
db SPRITE_ANIM_FRAMESET_GS_TITLE_TRAIL, SPRITE_ANIM_SEQ_GS_TITLE_TRAIL, $00 ; SPRITE_ANIM_INDEX_GS_TITLE_TRAIL
db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_SEQ_NAMING_SCREEN_CURSOR, $05 ; SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR
db SPRITE_ANIM_FRAMESET_GAMEFREAK_LOGO, SPRITE_ANIM_SEQ_GAMEFREAK_LOGO, $00 ; SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
db SPRITE_ANIM_FRAMESET_GS_INTRO_STAR, SPRITE_ANIM_SEQ_GS_INTRO_STAR, $06 ; SPRITE_ANIM_INDEX_GS_INTRO_STAR
db SPRITE_ANIM_FRAMESET_GS_INTRO_SPARKLE, SPRITE_ANIM_SEQ_GS_INTRO_SPARKLE, $06 ; SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE
db SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_STAR, SPRITE_ANIM_SEQ_GS_GAMEFREAK_LOGO_STAR, $06 ; SPRITE_ANIM_INDEX_GS_GAMEFREAK_LOGO_STAR
db SPRITE_ANIM_FRAMESET_GS_GAMEFREAK_LOGO_SPARKLE, SPRITE_ANIM_SEQ_GS_GAMEFREAK_LOGO_SPARKLE, $06 ; SPRITE_ANIM_INDEX_GS_GAMEFREAK_LOGO_SPARKLE
db SPRITE_ANIM_FRAMESET_SLOTS_GOLEM, SPRITE_ANIM_SEQ_SLOTS_GOLEM, $07 ; SPRITE_ANIM_INDEX_SLOTS_GOLEM
db SPRITE_ANIM_FRAMESET_SLOTS_CHANSEY, SPRITE_ANIM_SEQ_SLOTS_CHANSEY, $07 ; SPRITE_ANIM_INDEX_SLOTS_CHANSEY
db SPRITE_ANIM_FRAMESET_SLOTS_EGG, SPRITE_ANIM_SEQ_SLOTS_EGG, $07 ; SPRITE_ANIM_INDEX_SLOTS_EGG

View File

@ -319,7 +319,6 @@ RunBattleAnimCommand:
ld hl, BattleAnimCommands
add hl, de
add hl, de
ld a, [hli]
ld h, [hl]
ld l, a
@ -714,7 +713,7 @@ BattleAnimCmd_IncObj:
ret
.found
ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
ld hl, BATTLEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ret
@ -765,7 +764,7 @@ BattleAnimCmd_SetObj:
.found
call GetBattleAnimByte
ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
ld hl, BATTLEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
ld [hl], a
ret

View File

@ -39,42 +39,42 @@ endr
ld hl, BATTLEANIMSTRUCT_INDEX
add hl, bc
ld a, [wLastAnimObjectIndex]
ld [hli], a ; Index
ld [hli], a ; BATTLEANIMSTRUCT_INDEX
ld a, [de]
inc de
ld [hli], a ; 01
ld [hli], a ; BATTLEANIMSTRUCT_OAMFLAGS
ld a, [de]
inc de
ld [hli], a ; 02
ld [hli], a ; BATTLEANIMSTRUCT_02
ld a, [de]
inc de
ld [hli], a ; Frameset ID
ld [hli], a ; BATTLEANIMSTRUCT_FRAMESET_ID
ld a, [de]
inc de
ld [hli], a ; Function
ld [hli], a ; BATTLEANIMSTRUCT_FUNCTION
ld a, [de]
inc de
ld [hli], a ; 05
ld [hli], a ; BATTLEANIMSTRUCT_PALETTE
ld a, [de]
call GetBattleAnimTileOffset
ld [hli], a ; Tile ID
ld [hli], a ; BATTLEANIMSTRUCT_TILEID
ld a, [wBattleObjectTempXCoord]
ld [hli], a ; X Coord
ld [hli], a ; BATTLEANIMSTRUCT_XCOORD
ld a, [wBattleObjectTempYCoord]
ld [hli], a ; Y Coord
ld [hli], a ; BATTLEANIMSTRUCT_YCOORD
xor a
ld [hli], a ; X Offset
ld [hli], a ; Y Offset
ld [hli], a ; BATTLEANIMSTRUCT_XOFFSET
ld [hli], a ; BATTLEANIMSTRUCT_YOFFSET
ld a, [wBattleObjectTempParam]
ld [hli], a ; Param
ld [hli], a ; BATTLEANIMSTRUCT_PARAM
xor a
ld [hli], a ; 0c
ld [hli], a ; BATTLEANIMSTRUCT_DURATION
dec a
ld [hli], a ; 0d
ld [hli], a ; BATTLEANIMSTRUCT_FRAME
xor a
ld [hli], a ; 0e
ld [hli], a ; 0f
ld [hl], a ; 10
ld [hli], a ; BATTLEANIMSTRUCT_JUMPTABLE_INDEX
ld [hli], a ; BATTLEANIMSTRUCT_VAR1
ld [hl], a ; BATTLEANIMSTRUCT_VAR2
ret
BattleAnimOAMUpdate:
@ -199,7 +199,7 @@ BattleAnimOAMUpdate:
ret
InitBattleAnimBuffer:
ld hl, BATTLEANIMSTRUCT_01
ld hl, BATTLEANIMSTRUCT_OAMFLAGS
add hl, bc
ld a, [hl]
@ -232,7 +232,7 @@ InitBattleAnimBuffer:
and a
ret z
ld hl, BATTLEANIMSTRUCT_01
ld hl, BATTLEANIMSTRUCT_OAMFLAGS
add hl, bc
ld a, [hl]
ld [wBattleAnimTempOAMFlags], a

File diff suppressed because it is too large Load Diff

View File

@ -22,7 +22,7 @@ CelebiShrineEvent:
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
ld [hl], SPRITE_ANIM_SEQ_CELEBI
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld a, $80
ld [hl], a
@ -138,7 +138,7 @@ UpdateCelebiPosition:
ld hl, SPRITEANIMSTRUCT_YCOORD
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld a, [hl]
ld d, a
@ -148,7 +148,7 @@ UpdateCelebiPosition:
sub $3
ld [hl], a
.skip
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hl]
inc [hl]

View File

@ -222,11 +222,11 @@ Cut_SpawnLeaf:
ld hl, SPRITEANIMSTRUCT_TILE_ID
add hl, bc
ld [hl], FIELDMOVE_GRASS
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld [hl], $4
pop af
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
pop de
@ -346,7 +346,7 @@ FlyToAnim:
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
ld [hl], SPRITE_ANIM_SEQ_FLY_TO
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld [hl], 11 * 8
ld a, 64

View File

@ -523,7 +523,7 @@ DummyGame_InterpretJoypad_AnimateCursor:
ret
.pressed_a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
inc a
@ -538,7 +538,7 @@ DummyGame_InterpretJoypad_AnimateCursor:
ret z
sub 1 tiles
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
dec [hl]
ret
@ -551,7 +551,7 @@ DummyGame_InterpretJoypad_AnimateCursor:
ret z
add 1 tiles
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
inc [hl]
ret
@ -564,7 +564,7 @@ DummyGame_InterpretJoypad_AnimateCursor:
ret z
sub 1 tiles
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
sub 9
@ -579,7 +579,7 @@ DummyGame_InterpretJoypad_AnimateCursor:
ret z
add 1 tiles
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
add 9

View File

@ -1140,7 +1140,7 @@ ReelAction_InitGolem:
depixel 12, 13
ld a, SPRITE_ANIM_INDEX_SLOTS_GOLEM
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
pop af
ld [hl], a
@ -1968,7 +1968,7 @@ Slots_AnimateGolem:
dw .roll
.init
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hl]
and a
@ -1985,7 +1985,7 @@ Slots_AnimateGolem:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $30
ld hl, SPRITEANIMSTRUCT_XOFFSET
@ -1993,7 +1993,7 @@ Slots_AnimateGolem:
ld [hl], $0
.fall
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $20
@ -2012,7 +2012,7 @@ Slots_AnimateGolem:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], $2
ld a, 1
@ -2031,7 +2031,7 @@ Slots_AnimateGolem:
jr nc, .restart
and $3
ret nz
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
xor $ff
@ -2101,11 +2101,11 @@ Slots_AnimateChansey:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $8
.two
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
and a

View File

@ -886,10 +886,10 @@ _CGB_GamefreakLogo:
ld a, PREDEFPAL_GAMEFREAK_LOGO_BG
call GetPredefPal
call LoadHLPaletteIntoDE
ld hl, .GamefreakLogoOBPalette
ld hl, .GamefreakDittoPalette
ld de, wOBPals1
call LoadHLPaletteIntoDE
ld hl, .GamefreakLogoOBPalette
ld hl, .GamefreakDittoPalette
ld de, wOBPals1 palette 1
call LoadHLPaletteIntoDE
call WipeAttrmap
@ -897,8 +897,8 @@ _CGB_GamefreakLogo:
call ApplyPals
ret
.GamefreakLogoOBPalette:
INCLUDE "gfx/splash/logo.pal"
.GamefreakDittoPalette:
INCLUDE "gfx/splash/ditto.pal"
_CGB_PlayerOrMonFrontpicPals:
ld de, wBGPals1

View File

@ -194,7 +194,7 @@ SetPartyMonIconAnimSpeed:
ld [hl], a
rlca
rlca
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], a
ret

View File

@ -20,8 +20,8 @@ DoAnimFrame:
dw .GSTitleTrail
dw .NamingScreenCursor
dw .GameFreakLogo
dw .GSIntroStar
dw .GSIntroSparkle
dw .GSGameFreakLogoStar
dw .GSGameFreakLogoSparkle
dw .SlotsGolem
dw .SlotsChansey
dw .SlotsChanseyEgg
@ -74,7 +74,7 @@ DoAnimFrame:
add hl, bc
ld [hl], 8 * 3
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
ld d, a
@ -82,7 +82,7 @@ DoAnimFrame:
and $f
ret nz
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld e, [hl]
@ -145,14 +145,14 @@ DoAnimFrame:
add hl, bc
ld a, [hl]
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
and $3
ld [hl], a
inc [hl]
swap a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
@ -163,7 +163,7 @@ DoAnimFrame:
cp $a4
jr nc, .asm_8d356
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
add $4
@ -175,14 +175,14 @@ DoAnimFrame:
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
sla a
sla a
ld d, 2
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
add 3
@ -199,7 +199,7 @@ DoAnimFrame:
ret
.GSIntroHoOhLugia
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
inc a
@ -220,12 +220,12 @@ DoAnimFrame:
callfar ComposeMail_AnimateCursor
ret
.GameFreakLogo:
callfar PlaceGameFreakLogo
.GameFreakLogo
callfar GameFreakLogoSpriteAnim
ret
.GSIntroStar
ld hl, SPRITEANIMSTRUCT_0C
.GSGameFreakLogoStar
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
and a
@ -236,7 +236,7 @@ DoAnimFrame:
and $1f
jr nz, .asm_8d395
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
dec [hl]
.asm_8d395
@ -258,7 +258,7 @@ DoAnimFrame:
add hl, bc
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
@ -274,14 +274,14 @@ DoAnimFrame:
call DeinitializeSprite
ret
.GSIntroSparkle
ld hl, SPRITEANIMSTRUCT_0C
.GSGameFreakLogoSparkle
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hli]
or [hl]
jr z, .asm_8d41e
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld d, [hl]
@ -303,13 +303,13 @@ DoAnimFrame:
add hl, bc
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld e, [hl]
inc hl
ld d, [hl]
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hli]
ld h, [hl]
@ -318,13 +318,13 @@ DoAnimFrame:
ld e, l
ld d, h
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld [hl], e
inc hl
ld [hl], d
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hli]
ld h, [hl]
@ -334,7 +334,7 @@ DoAnimFrame:
ld e, l
ld d, h
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], e
inc hl
@ -431,13 +431,13 @@ DoAnimFrame:
add hl, bc
ld [hl], $2
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $20
ret
.TradePokeBall_two
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
and a
@ -448,12 +448,12 @@ DoAnimFrame:
.asm_8d4af
call .IncrementJumptableIndex
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $40
.TradePokeBall_three
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp 48
@ -477,24 +477,24 @@ DoAnimFrame:
add hl, bc
ld [hl], $4
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $30
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], $24
ret
.TradePokeBall_four
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
and a
jr z, .asm_8d51c
ld d, a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
call Sprites_Sine
@ -503,18 +503,18 @@ DoAnimFrame:
add hl, bc
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
inc [hl]
ld a, [hl]
and $3f
ret nz
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $20
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
sub $c
@ -559,7 +559,7 @@ DoAnimFrame:
ret
.RevealNewMon:
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $80
@ -600,7 +600,7 @@ DoAnimFrame:
ret
.CutLeaves
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld e, [hl]
inc hl
@ -610,13 +610,13 @@ DoAnimFrame:
ld e, l
ld d, h
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], e
inc hl
ld [hl], d
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
inc [hl]
@ -645,7 +645,7 @@ DoAnimFrame:
and a
ret z
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
inc [hl]
@ -657,7 +657,7 @@ DoAnimFrame:
dec [hl]
dec [hl]
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld a, [hl]
ld d, a
@ -666,7 +666,7 @@ DoAnimFrame:
add $8
ld [hl], a
.skip
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hl]
inc [hl]
@ -691,7 +691,7 @@ DoAnimFrame:
dec [hl]
ld d, $40
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
inc [hl]
@ -718,7 +718,7 @@ DoAnimFrame:
inc [hl]
inc [hl]
ld hl, SPRITEANIMSTRUCT_0F
ld hl, SPRITEANIMSTRUCT_VAR4
add hl, bc
ld a, [hl]
ld d, a
@ -727,7 +727,7 @@ DoAnimFrame:
sub $2
ld [hl], a
.asm_8d621
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hl]
inc [hl]
@ -756,7 +756,7 @@ DoAnimFrame:
add hl, bc
ld [hl], $0
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
add 2
@ -774,7 +774,7 @@ DoAnimFrame:
ret
.IntroPichuWooper
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp 20
@ -799,7 +799,7 @@ DoAnimFrame:
inc [hl]
inc [hl]
inc [hl]
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
push af

View File

@ -160,44 +160,45 @@ _InitSpriteAnimStruct::
add hl, bc
; Load the index.
ld a, [wSpriteAnimCount]
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_INDEX
; Copy the table entry to the next two fields.
ld a, [de]
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_FRAMESET_ID
inc de
ld a, [de]
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_ANIM_SEQ_ID
inc de
; Look up the third field from the table in the wSpriteAnimDict array (10x2).
; Take the value and load it in
ld a, [de]
call GetSpriteAnimVTile
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_TILE_ID
pop de
; Set hl to field 4 (X coordinate). Kinda pointless, because we're presumably already here.
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
; Load the original value of de into here.
ld a, e
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_XCOORD
ld a, d
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_YCOORD
; load 0 into the next four fields
xor a
ld [hli], a
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_XOFFSET
ld [hli], a ; SPRITEANIMSTRUCT_YOFFSET
xor a
ld [hli], a
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_DURATION
ld [hli], a ; SPRITEANIMSTRUCT_DURATIONOFFSET
; load -1 into the next field
dec a
ld [hli], a
ld [hli], a ; SPRITEANIMSTRUCT_FRAME
; load 0 into the last five fields
xor a
rept 4
ld [hli], a
endr
ld [hl], a
ld [hli], a ; SPRITEANIMSTRUCT_JUMPTABLE_INDEX
ld [hli], a ; SPRITEANIMSTRUCT_VAR1
ld [hli], a ; SPRITEANIMSTRUCT_VAR2
ld [hli], a ; SPRITEANIMSTRUCT_VAR3
ld [hl], a ; SPRITEANIMSTRUCT_VAR4
; back up the address of the first field to wSpriteAnimAddrBackup
ld a, c
ld [wSpriteAnimAddrBackup], a

View File

@ -969,7 +969,7 @@ Intro_PlacePlayerSprite:
NUM_TITLESCREENOPTIONS EQU const_value
IntroSequence:
callfar Copyright_GameFreakPresents
callfar SplashScreen
jr c, StartTitleScreen
farcall CrystalIntro

View File

@ -385,7 +385,7 @@ NamingScreenJoypadLoop:
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
add hl, bc
ld a, [hl]
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld [hl], a
ld hl, wJumptableIndex
@ -425,10 +425,10 @@ NamingScreenJoypadLoop:
ld c, [hl]
inc hl
ld b, [hl]
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $8
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], $4
call NamingScreen_IsTargetBox
@ -468,7 +468,7 @@ NamingScreenJoypadLoop:
ld b, [hl]
NamingScreen_GetCursorPosition:
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
push bc
@ -480,7 +480,7 @@ NamingScreen_GetCursorPosition:
cp b
pop bc
jr nz, .not_bottom_row
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $3
@ -504,7 +504,7 @@ NamingScreen_GetCursorPosition:
NamingScreen_AnimateCursor:
call .GetDPad
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
ld e, a
@ -524,13 +524,13 @@ NamingScreen_AnimateCursor:
ld de, .CaseDelEnd
ld a, SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR_BIG - SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR ; 1
.ok2
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
add [hl] ; default SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
add hl, bc
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld l, [hl]
ld h, $0
@ -567,7 +567,7 @@ NamingScreen_AnimateCursor:
call NamingScreen_GetCursorPosition
and a
jr nz, .asm_11ab7
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $8
@ -587,7 +587,7 @@ NamingScreen_AnimateCursor:
ld e, a
add a
add e
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
ret
@ -596,7 +596,7 @@ NamingScreen_AnimateCursor:
call NamingScreen_GetCursorPosition
and a
jr nz, .asm_11ad8
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
and a
@ -618,13 +618,13 @@ NamingScreen_AnimateCursor:
ld e, a
add a
add e
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
ret
.down
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
call NamingScreen_IsTargetBox
@ -645,7 +645,7 @@ NamingScreen_AnimateCursor:
ret
.up
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
and a
@ -1059,7 +1059,7 @@ INCBIN "gfx/icons/mail_big.2bpp"
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
add hl, bc
ld a, [hl]
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld [hl], a
ld hl, wJumptableIndex
@ -1109,10 +1109,10 @@ INCBIN "gfx/icons/mail_big.2bpp"
ld c, [hl]
inc hl
ld b, [hl]
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $9
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], $5
ret
@ -1155,7 +1155,7 @@ INCBIN "gfx/icons/mail_big.2bpp"
ComposeMail_AnimateCursor:
call .GetDPad
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
ld e, a
@ -1170,13 +1170,13 @@ ComposeMail_AnimateCursor:
ld de, .CaseDelEnd
ld a, 1
.got_pointer
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
add [hl]
ld hl, SPRITEANIMSTRUCT_FRAMESET_ID
add hl, bc
ld [hl], a
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld l, [hl]
ld h, 0
@ -1213,7 +1213,7 @@ ComposeMail_AnimateCursor:
call ComposeMail_GetCursorPosition
and a
jr nz, .case_del_done_right
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $9
@ -1233,7 +1233,7 @@ ComposeMail_AnimateCursor:
ld e, a
add a
add e
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
ret
@ -1242,7 +1242,7 @@ ComposeMail_AnimateCursor:
call ComposeMail_GetCursorPosition
and a
jr nz, .caps_del_done_left
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
and a
@ -1264,13 +1264,13 @@ ComposeMail_AnimateCursor:
ld e, a
add a
add e
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], a
ret
.down
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
cp $5
@ -1283,7 +1283,7 @@ ComposeMail_AnimateCursor:
ret
.up
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
and a
@ -1302,12 +1302,12 @@ NamingScreen_PressedA_GetCursorCommand:
ld b, [hl]
ComposeMail_GetCursorPosition:
ld hl, SPRITEANIMSTRUCT_0D
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld a, [hl]
cp $5
jr nz, .letter
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
cp $3

View File

@ -324,7 +324,7 @@ EvolutionAnimation:
ld hl, SPRITEANIMSTRUCT_TILE_ID
add hl, bc
ld [hl], $0
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $10
ret

View File

@ -1,332 +1,3 @@
Copyright_GameFreakPresents:
; Play the copyright screen and GameFreak Presents sequence.
; Return carry if user cancels animation by pressing a button.
ld de, MUSIC_NONE
call PlayMusic
call ClearBGPalettes
call ClearTilemap
ld a, HIGH(vBGMap0)
ldh [hBGMapAddress + 1], a
xor a ; LOW(vBGMap0)
ldh [hBGMapAddress], a
ldh [hJoyDown], a
ldh [hSCX], a
ldh [hSCY], a
ld a, SCREEN_HEIGHT_PX
ldh [hWY], a
call WaitBGMap
ld b, SCGB_GAMEFREAK_LOGO
call GetSGBLayout
call SetPalettes
ld c, 10
call DelayFrames
callfar Copyright
call WaitBGMap
ld c, 100
call DelayFrames
call ClearTilemap
farcall GBCOnlyScreen
call .GetGFLogoGFX
.joy_loop
call JoyTextDelay
ldh a, [hJoyLast]
and BUTTONS
jr nz, .pressed_button
ld a, [wJumptableIndex]
bit 7, a
jr nz, .finish
call PlaceGameFreakPresents
farcall PlaySpriteAnimations
call DelayFrame
jr .joy_loop
.pressed_button
call .StopGamefreakAnim
scf
ret
.finish
call .StopGamefreakAnim
and a
ret
.GetGFLogoGFX:
ld de, GameFreakLogo
ld hl, vTiles2
lb bc, BANK(GameFreakLogo), 28
call Get1bpp
ldh a, [rSVBK]
push af
ld a, BANK(wDecompressScratch)
ldh [rSVBK], a
ld hl, IntroLogoGFX
ld de, wDecompressScratch
ld a, BANK(IntroLogoGFX)
call FarDecompress
ld hl, vTiles0
ld de, wDecompressScratch
lb bc, 1, 8 tiles
call Request2bpp
ld hl, vTiles1
ld de, wDecompressScratch + $80 tiles
lb bc, 1, 8 tiles
call Request2bpp
pop af
ldh [rSVBK], a
farcall ClearSpriteAnims
depixel 10, 11, 4, 0
ld a, SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_YOFFSET
add hl, bc
ld [hl], $a0
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld [hl], $60
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld [hl], $30
xor a
ld [wJumptableIndex], a
ld [wIntroSceneFrameCounter], a
ld [wIntroSceneTimer], a
ldh [hSCX], a
ldh [hSCY], a
ld a, $1
ldh [hBGMapMode], a
ld a, $90
ldh [hWY], a
lb de, %11100100, %11100100
call DmgToCgbObjPals
ret
.StopGamefreakAnim:
farcall ClearSpriteAnims
call ClearTilemap
call ClearSprites
ld c, 16
call DelayFrames
ret
PlaceGameFreakPresents:
jumptable .scenes, wJumptableIndex
.scenes
dw GameFreakPresentsScene0
dw GameFreakPresentsScene1
dw GameFreakPresentsScene2
dw GameFreakPresentsScene3
PlaceGameFreakPresents_NextScene:
ld hl, wJumptableIndex
inc [hl]
ret
GameFreakPresentsScene0:
ret
GameFreakPresentsScene1:
ld hl, wIntroSceneTimer
ld a, [hl]
cp $20
jr nc, .PlaceGameFreak
inc [hl]
ret
.PlaceGameFreak:
ld [hl], 0
ld hl, .GAME_FREAK
decoord 5, 10
ld bc, .end - .GAME_FREAK
call CopyBytes
call PlaceGameFreakPresents_NextScene
ld de, SFX_GAME_FREAK_PRESENTS
call PlaySFX
ret
.GAME_FREAK:
; G A M E _ F R E A K
db 0, 1, 2, 3, 13, 4, 5, 3, 1, 6
.end
db "@"
GameFreakPresentsScene2:
ld hl, wIntroSceneTimer
ld a, [hl]
cp $40
jr nc, .place_presents
inc [hl]
ret
.place_presents
ld [hl], 0
ld hl, .presents
decoord 7, 11
ld bc, .end - .presents
call CopyBytes
call PlaceGameFreakPresents_NextScene
ret
.presents
db 7, 8, 9, 10, 11, 12
.end
db "@"
GameFreakPresentsScene3:
ld hl, wIntroSceneTimer
ld a, [hl]
cp $80
jr nc, .finish
inc [hl]
ret
.finish
ld hl, wJumptableIndex
set 7, [hl]
ret
PlaceGameFreakLogo:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
ld e, [hl]
ld d, 0
ld hl, .scenes
add hl, de
add hl, de
ld a, [hli]
ld h, [hl]
ld l, a
jp hl
.scenes:
dw GameFreakLogoScene1
dw GameFreakLogoScene2
dw GameFreakLogoScene3
dw GameFreakLogoScene4
dw GameFreakLogoScene5
GameFreakLogoScene1:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ret
GameFreakLogoScene2:
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
and a
jr z, .asm_e4747
ld d, a
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld a, [hl]
and %111111
cp %100000
jr nc, .asm_e4723
add %100000
.asm_e4723
ld e, a
farcall BattleAnim_Sine_e
ld hl, SPRITEANIMSTRUCT_YOFFSET
add hl, bc
ld [hl], e
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld a, [hl]
dec [hl]
and $1f
ret nz
ld hl, SPRITEANIMSTRUCT_0C
add hl, bc
ld a, [hl]
sub $30
ld [hl], a
ld de, SFX_DITTO_BOUNCE
call PlaySFX
ret
.asm_e4747
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld [hl], $0
ld de, SFX_DITTO_POP_UP
call PlaySFX
ret
GameFreakLogoScene3:
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld a, [hl]
cp $20
jr nc, .asm_e4764
inc [hl]
ret
.asm_e4764
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld [hl], $0
ld de, SFX_DITTO_TRANSFORM
call PlaySFX
ret
GameFreakLogoScene4:
ld hl, SPRITEANIMSTRUCT_0D
add hl, bc
ld a, [hl]
cp $40
jr z, .asm_e47a3
inc [hl]
srl a
srl a
ld e, a
ld d, $0
ld hl, GameFreakLogoPalettes
add hl, de
add hl, de
ldh a, [rSVBK]
push af
ld a, BANK(wOBPals2)
ldh [rSVBK], a
ld a, [hli]
ld [wOBPals2 + 12], a
ld a, [hli]
ld [wOBPals2 + 13], a
pop af
ldh [rSVBK], a
ld a, TRUE
ldh [hCGBPalUpdate], a
ret
.asm_e47a3
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
call PlaceGameFreakPresents_NextScene
GameFreakLogoScene5:
ret
GameFreakLogoPalettes:
INCLUDE "gfx/intro/gamefreak_logo.pal"
GameFreakLogo:
INCBIN "gfx/splash/logo1.1bpp"
INCBIN "gfx/splash/logo2.1bpp"
CrystalIntro:
ldh a, [rSVBK]
push af
@ -1519,7 +1190,7 @@ CrystalIntro_InitUnownAnim:
push de
ld a, SPRITE_ANIM_INDEX_INTRO_UNOWN
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $8
ld a, SPRITE_ANIM_FRAMESET_INTRO_UNOWN_4
@ -1529,7 +1200,7 @@ CrystalIntro_InitUnownAnim:
push de
ld a, SPRITE_ANIM_INDEX_INTRO_UNOWN
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $18
ld a, SPRITE_ANIM_FRAMESET_INTRO_UNOWN_3
@ -1539,7 +1210,7 @@ CrystalIntro_InitUnownAnim:
push de
ld a, SPRITE_ANIM_INDEX_INTRO_UNOWN
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $28
ld a, SPRITE_ANIM_FRAMESET_INTRO_UNOWN_1
@ -1548,7 +1219,7 @@ CrystalIntro_InitUnownAnim:
ld a, SPRITE_ANIM_INDEX_INTRO_UNOWN
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $38
ld a, SPRITE_ANIM_FRAMESET_INTRO_UNOWN_2

349
engine/movie/splash.asm Normal file
View File

@ -0,0 +1,349 @@
SplashScreen:
; Play the copyright screen and GameFreak Presents sequence.
; Return carry if user cancels animation by pressing a button.
; Reinitialize everything
ld de, MUSIC_NONE
call PlayMusic
call ClearBGPalettes
call ClearTilemap
ld a, HIGH(vBGMap0)
ldh [hBGMapAddress + 1], a
xor a ; LOW(vBGMap0)
ldh [hBGMapAddress], a
ldh [hJoyDown], a
ldh [hSCX], a
ldh [hSCY], a
ld a, SCREEN_HEIGHT_PX
ldh [hWY], a
call WaitBGMap
ld b, SCGB_GAMEFREAK_LOGO
call GetSGBLayout
call SetPalettes
ld c, 10
call DelayFrames
; Draw copyright screen
callfar Copyright
call WaitBGMap
ld c, 100
call DelayFrames
call ClearTilemap
; Stop here if not in GBC mode
farcall GBCOnlyScreen
; Play GameFreak logo animation
call GameFreakPresentsInit
.joy_loop
call JoyTextDelay
ldh a, [hJoyLast]
and BUTTONS
jr nz, .pressed_button
ld a, [wJumptableIndex]
bit 7, a
jr nz, .finish
call GameFreakPresentsScene
farcall PlaySpriteAnimations
call DelayFrame
jr .joy_loop
.pressed_button
call GameFreakPresentsEnd
scf
ret
.finish
call GameFreakPresentsEnd
and a
ret
GameFreakPresentsInit:
ld de, GameFreakLogoGFX
ld hl, vTiles2
lb bc, BANK(GameFreakLogoGFX), 28
call Get1bpp
ldh a, [rSVBK]
push af
ld a, BANK(wDecompressScratch)
ldh [rSVBK], a
ld hl, GameFreakDittoGFX
ld de, wDecompressScratch
ld a, BANK(GameFreakDittoGFX)
call FarDecompress
ld hl, vTiles0
ld de, wDecompressScratch
lb bc, 1, 8 tiles
call Request2bpp
ld hl, vTiles1
ld de, wDecompressScratch + $80 tiles
lb bc, 1, 8 tiles
call Request2bpp
pop af
ldh [rSVBK], a
farcall ClearSpriteAnims
depixel 10, 11, 4, 0
ld a, SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_YOFFSET
add hl, bc
ld [hl], 160
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], 96
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], 48
xor a
ld [wJumptableIndex], a
ld [wIntroSceneFrameCounter], a
ld [wIntroSceneTimer], a
ldh [hSCX], a
ldh [hSCY], a
ld a, 1
ldh [hBGMapMode], a
ld a, 144
ldh [hWY], a
lb de, %11100100, %11100100
call DmgToCgbObjPals
ret
GameFreakPresentsEnd:
farcall ClearSpriteAnims
call ClearTilemap
call ClearSprites
ld c, 16
call DelayFrames
ret
GameFreakPresentsScene:
jumptable .scenes, wJumptableIndex
.scenes
dw GameFreakPresents_WaitSpriteAnim
dw GameFreakPresents_PlaceGameFreak
dw GameFreakPresents_PlacePresents
dw GameFreakPresents_WaitForTimer
GameFreakPresents_NextScene:
ld hl, wJumptableIndex
inc [hl]
ret
GameFreakPresents_WaitSpriteAnim:
ret
GameFreakPresents_PlaceGameFreak:
ld hl, wIntroSceneTimer
ld a, [hl]
cp 32
jr nc, .PlaceGameFreak
inc [hl]
ret
.PlaceGameFreak:
ld [hl], 0
ld hl, .game_freak
decoord 5, 10
ld bc, .end - .game_freak
call CopyBytes
call GameFreakPresents_NextScene
ld de, SFX_GAME_FREAK_PRESENTS
call PlaySFX
ret
.game_freak
db $00, $01, $02, $03, $0d, $04, $05, $03, $01, $06
.end
db "@"
GameFreakPresents_PlacePresents:
ld hl, wIntroSceneTimer
ld a, [hl]
cp 64
jr nc, .place_presents
inc [hl]
ret
.place_presents
ld [hl], 0
ld hl, .presents
decoord 7, 11
ld bc, .end - .presents
call CopyBytes
call GameFreakPresents_NextScene
ret
.presents
db $07, $08, $09, $0a, $0b, $0c
.end
db "@"
GameFreakPresents_WaitForTimer:
ld hl, wIntroSceneTimer
ld a, [hl]
cp 128
jr nc, .finish
inc [hl]
ret
.finish
ld hl, wJumptableIndex
set 7, [hl]
ret
GameFreakLogoSpriteAnim:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
ld e, [hl]
ld d, 0
ld hl, .scenes
add hl, de
add hl, de
ld a, [hli]
ld h, [hl]
ld l, a
jp hl
.scenes:
dw GameFreakLogo_Init
dw GameFreakLogo_Bounce
dw GameFreakLogo_Ditto
dw GameFreakLogo_Transform
dw GameFreakLogo_Done
GameFreakLogo_Init:
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ret
GameFreakLogo_Bounce:
; Bounce with a height of 0C, 0C / 48 times.
; By default, this is twice, with a height of 96 pixels and 48 pixels.
; Sine offset starts at 48 (32+32/2, or pi+pi/2), so it starts at the maximum
; value of the sine wave (i.e. the top of the screen).
ld hl, SPRITEANIMSTRUCT_VAR1 ; jump height
add hl, bc
ld a, [hl]
and a
jr z, .done
; Load the sine offset, make sure it doesn't reach the negative part of the wave
ld d, a
ld hl, SPRITEANIMSTRUCT_VAR2 ; sine offset
add hl, bc
ld a, [hl]
and $3f ; full circle = 2*pi = 2*32
cp 32
jr nc, .no_negative
add 32
.no_negative
ld e, a
farcall BattleAnim_Sine_e ; e = d * sin(e * pi/32)
ld hl, SPRITEANIMSTRUCT_YOFFSET
add hl, bc
ld [hl], e
; Decrement the sine offset
ld hl, SPRITEANIMSTRUCT_VAR2 ; sine offset
add hl, bc
ld a, [hl]
dec [hl]
and $1f ; a%32 == 0
ret nz
; If the ditto's reached the ground, decrement the jump height and play the sfx
ld hl, SPRITEANIMSTRUCT_VAR1 ; jump height
add hl, bc
ld a, [hl]
sub 48
ld [hl], a
ld de, SFX_DITTO_BOUNCE
call PlaySFX
ret
.done
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], 0
ld de, SFX_DITTO_POP_UP
call PlaySFX
ret
GameFreakLogo_Ditto:
; Wait a little, then start transforming
ld hl, SPRITEANIMSTRUCT_VAR2 ; frame count
add hl, bc
ld a, [hl]
cp 32
jr nc, .start_transform
inc [hl]
ret
.start_transform
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
ld hl, SPRITEANIMSTRUCT_VAR2
add hl, bc
ld [hl], 0
ld de, SFX_DITTO_TRANSFORM
call PlaySFX
ret
GameFreakLogo_Transform:
ld hl, SPRITEANIMSTRUCT_VAR2 ; frame count
add hl, bc
ld a, [hl]
cp 64
jr z, .done
inc [hl]
; Fade ditto's palettes while it's transforming
srl a
srl a
ld e, a
ld d, 0
ld hl, GameFreakDittoPaletteFade
add hl, de
add hl, de
ldh a, [rSVBK]
push af
ld a, BANK(wOBPals2)
ldh [rSVBK], a
ld a, [hli]
ld [wOBPals2 + 12], a
ld a, [hli]
ld [wOBPals2 + 13], a
pop af
ldh [rSVBK], a
ld a, TRUE
ldh [hCGBPalUpdate], a
ret
.done
ld hl, SPRITEANIMSTRUCT_JUMPTABLE_INDEX
add hl, bc
inc [hl]
call GameFreakPresents_NextScene
GameFreakLogo_Done:
ret
GameFreakDittoPaletteFade:
INCLUDE "gfx/splash/ditto_fade.pal"
GameFreakLogoGFX:
INCBIN "gfx/splash/gamefreak_presents.1bpp"
INCBIN "gfx/splash/gamefreak_logo.1bpp"

View File

@ -1084,13 +1084,13 @@ TradeAnim_AnimateTrademonInTube:
.InitTimer:
call .JumptableNext
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $80
ret
.WaitTimer1:
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
dec [hl]
@ -1148,13 +1148,13 @@ TradeAnim_AnimateTrademonInTube:
.done_move_left
call .JumptableNext
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld [hl], $80
ret
.WaitTimer2:
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, [hl]
dec [hl]

View File

@ -11,7 +11,6 @@ gfx/diploma/diploma.2bpp.lz: LZFLAGS += --method 8 --align 1
gfx/dummy_game/dummy_game.2bpp.lz: LZFLAGS += --method 2 --align 4
gfx/intro/%.lz: LZFLAGS += --align 4
gfx/intro/logo.2bpp.lz: LZFLAGS += --method 2 --align 4
gfx/intro/suicune_close.2bpp.lz: LZFLAGS += --method 2 --align 4
gfx/intro/unown_back.2bpp.lz: LZFLAGS += --method 2 --align 4
@ -48,6 +47,8 @@ gfx/slots/slots_1.2bpp.lz: LZFLAGS += --method 2 --align 4
gfx/slots/slots_2.2bpp.lz: LZFLAGS += --align 4
gfx/slots/slots_3.2bpp.lz: LZFLAGS += --align 4
gfx/splash/ditto.2bpp.lz: LZFLAGS += --method 2 --align 4
gfx/tilesets/%.lz: LZFLAGS += --align 4
gfx/tilesets/aerodactyl_word_room.2bpp.lz: LZFLAGS = --compressor null --method 1 --align 1
gfx/tilesets/battle_tower_outside.2bpp.lz: LZFLAGS = --compressor null --method 1 --align 1

View File

Before

Width:  |  Height:  |  Size: 944 B

After

Width:  |  Height:  |  Size: 944 B

View File

@ -6,17 +6,14 @@
RGB 23, 12, 27
RGB 23, 13, 26
RGB 23, 13, 24
RGB 24, 14, 22
RGB 24, 14, 20
RGB 24, 15, 18
RGB 24, 15, 16
RGB 25, 16, 14
RGB 25, 16, 12
RGB 25, 17, 10
RGB 25, 17, 08
RGB 26, 18, 06
RGB 26, 18, 04
RGB 26, 19, 02

View File

Before

Width:  |  Height:  |  Size: 172 B

After

Width:  |  Height:  |  Size: 172 B

View File

Before

Width:  |  Height:  |  Size: 364 B

After

Width:  |  Height:  |  Size: 364 B

View File

@ -356,16 +356,16 @@ sprite_anim_struct: MACRO
\1DurationOffset:: db
\1FrameIndex:: db
\1JumptableIndex:: db
\1Field0c:: ds 1
\1Field0d:: ds 1
\1Field0e:: ds 1
\1Field0f:: ds 1
\1Var1:: ds 1
\1Var2:: ds 1
\1Var3:: ds 1
\1Var4:: ds 1
ENDM
battle_anim_struct: MACRO
; Placeholder until we can figure out what it all means
\1Index:: db
\1Field01:: ds 1
\1OAMFlags:: db
\1Field02:: ds 1
\1FramesetID:: db
\1Function:: db
@ -375,19 +375,13 @@ battle_anim_struct: MACRO
\1YCoord:: db
\1XOffset:: db
\1YOffset:: db
\1Field0b:: ds 1
\1Param:: db
\1Duration:: db
\1Frame:: db
\1AnonJumptableIndex:: db
\1Field0f:: ds 1
\1Field10:: ds 1
\1Field11:: ds 1
\1Field12:: ds 1
\1Field13:: ds 1
\1Field14:: ds 1
\1Field15:: ds 1
\1Field16:: ds 1
\1Field17:: ds 1
\1JumptableIndex:: db
\1Var1:: db
\1Var2:: db
ds 7
ENDM
battle_bg_effect: MACRO

View File

@ -493,6 +493,7 @@ CopyrightGFX::
INCBIN "gfx/splash/copyright.2bpp"
INCLUDE "engine/menus/options_menu.asm"
INCLUDE "engine/movie/splash.asm"
INCLUDE "engine/movie/intro.asm"
@ -540,8 +541,8 @@ INCLUDE "mobile/mobile_42.asm"
SECTION "Intro Logo", ROMX
IntroLogoGFX:
INCBIN "gfx/intro/logo.2bpp.lz"
GameFreakDittoGFX:
INCBIN "gfx/splash/ditto.2bpp.lz"
SECTION "Title", ROMX

View File

@ -418,7 +418,7 @@ EZChat_MasterLoop:
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $1
ld [hl], a
@ -426,7 +426,7 @@ EZChat_MasterLoop:
depixel 9, 2, 2, 0
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $3
ld [hl], a
@ -434,7 +434,7 @@ EZChat_MasterLoop:
depixel 10, 16
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $4
ld [hl], a
@ -442,7 +442,7 @@ EZChat_MasterLoop:
depixel 10, 4
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $5
ld [hl], a
@ -450,7 +450,7 @@ EZChat_MasterLoop:
depixel 10, 2
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $2
ld [hl], a
@ -2453,7 +2453,7 @@ Function11d035:
ret
AnimateEZChatCursor:
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
jumptable .Jumptable, hl
@ -2820,7 +2820,7 @@ AnimateEZChatCursor:
ld hl, wcd23
and [hl]
jr z, .reset_y_offset
ld hl, SPRITEANIMSTRUCT_0E
ld hl, SPRITEANIMSTRUCT_VAR3
add hl, bc
ld a, [hl]
and a

View File

@ -485,7 +485,7 @@ Function171b4b:
depixel 8, 2
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $8
ld [hl], a
@ -493,7 +493,7 @@ Function171b4b:
depixel 8, 19
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $9
ld [hl], a
@ -501,7 +501,7 @@ Function171b4b:
depixel 17, 14, 2, 0
ld a, SPRITE_ANIM_INDEX_EZCHAT_CURSOR
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_0C
ld hl, SPRITEANIMSTRUCT_VAR1
add hl, bc
ld a, $a
ld [hl], a