diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/engine/bank07.asm | 217 | ||||
-rw-r--r-- | src/wram.asm | 4 |
2 files changed, 109 insertions, 112 deletions
diff --git a/src/engine/bank07.asm b/src/engine/bank07.asm index 953d8a8..9716ee5 100644 --- a/src/engine/bank07.asm +++ b/src/engine/bank07.asm @@ -2280,10 +2280,10 @@ Func_1d335: ; 1d335 (7:5335) ld hl, HandleAllSpriteAnimations call SetDoFrameFunction call LoadTitleScreenSprites - ld a, LOW(Data_1d59d) - ld [wd631 + 0], a - ld a, HIGH(Data_1d59d) - ld [wd631 + 1], a + ld a, LOW(OpeningSequence) + ld [wSequenceCmdPtr + 0], a + ld a, HIGH(OpeningSequence) + ld [wSequenceCmdPtr + 1], a xor a ld [wd317], a @@ -2382,9 +2382,9 @@ Func_1d408: ; 1d408 (7:5408) ret .call_function - ld a, [wd631 + 0] + ld a, [wSequenceCmdPtr + 0] ld l, a - ld a, [wd631 + 1] + ld a, [wSequenceCmdPtr + 1] ld h, a ld a, [hli] ld e, a @@ -2401,21 +2401,21 @@ Func_1d408: ; 1d408 (7:5408) ret ; 0x1d42e -Func_1d42e: ; 1d42e (7:542e) - ld a, $02 - jr Func_1d438 +AdvanceOpeningSequenceCmdPtrBy2: ; 1d42e (7:542e) + ld a, 2 + jr AdvanceOpeningSequenceCmdPtr -Func_1d432: ; 1d432 (7:5432) - ld a, $03 - jr Func_1d438 +AdvanceOpeningSequenceCmdPtrBy3: ; 1d432 (7:5432) + ld a, 3 + jr AdvanceOpeningSequenceCmdPtr -Func_1d436: ; 1d436 (7:5436) - ld a, $04 +AdvanceOpeningSequenceCmdPtrBy4: ; 1d436 (7:5436) + ld a, 4 ; fallthrough -Func_1d438: ; 1d438 (7:5438) +AdvanceOpeningSequenceCmdPtr: ; 1d438 (7:5438) push hl - ld hl, wd631 + ld hl, wSequenceCmdPtr add [hl] ld [hli], a ld a, [hl] @@ -2425,7 +2425,7 @@ Func_1d438: ; 1d438 (7:5438) ret ; 0x1d444 -Func_1d444: ; 1d444 (7:5444) +OpeningSequenceCmd_WaitOrbsAnimation: ; 1d444 (7:5444) ld c, $7 ld de, wTitleScreenSprites .loop @@ -2437,7 +2437,7 @@ Func_1d444: ; 1d444 (7:5444) inc de dec c jr nz, .loop - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 scf ret @@ -2446,15 +2446,15 @@ Func_1d444: ; 1d444 (7:5444) ret ; 0x1d460 -Func_1d460: ; 1d460 (7:5460) +OpeningSequenceCmd_Delay: ; 1d460 (7:5460) ld a, c ld [wd633], a - call Func_1d432 + call AdvanceOpeningSequenceCmdPtrBy3 scf ret ; 0x1d469 -Func_1d469: ; 1d469 (7:5469) +OpeningSequenceCmd_SetOrbsAnimations: ; 1d469 (7:5469) ld l, c ld h, b @@ -2473,12 +2473,12 @@ Func_1d469: ; 1d469 (7:5469) dec c jr nz, .loop - call Func_1d436 + call AdvanceOpeningSequenceCmdPtrBy4 scf ret ; 0x1d486 -Func_1d486: ; 1d486 (7:5486) +OpeningSequenceCmd_SetOrbsCoordinates: ; 1d486 (7:5486) ld l, c ld h, b @@ -2508,13 +2508,12 @@ Func_1d486: ; 1d486 (7:5486) dec c jr nz, .loop - call Func_1d436 + call AdvanceOpeningSequenceCmdPtrBy4 scf ret ; 0x1d4b0 -; list of sprite animations -Data_1d4b0: ; 1d4b0 (7:54b0) +OpeningOrbAnimations_CharizardScene: ; 1d4b0 (7:54b0) db $c0 ; GRASS db $c1 ; FIRE db $c1 ; WATER @@ -2524,7 +2523,7 @@ Data_1d4b0: ; 1d4b0 (7:54b0) db $c1 ; FIGHTING ; 0x1d4b7 -Data_1d4b7: ; 1d4b7 (7:54b7) +OpeningOrbCoordinates_CharizardScene: ; 1d4b7 (7:54b7) ; x coord, y coord db 240, 28 ; GRASS db 160, 120 ; FIRE @@ -2535,8 +2534,7 @@ Data_1d4b7: ; 1d4b7 (7:54b7) db 160, 44 ; FIGHTING ; 0x1d4c5 -; list of sprite animations -Data_1d4c5: ; 1d4c5 (7:54c5) +OpeningOrbAnimations_ScytherScene: ; 1d4c5 (7:54c5) db $c1 ; GRASS db $c0 ; FIRE db $c0 ; WATER @@ -2546,7 +2544,7 @@ Data_1d4c5: ; 1d4c5 (7:54c5) db $c0 ; FIGHTING ; 0x1d4cc -Data_1d4cc: ; 1d4cc (7:54cc) +OpeningOrbCoordinates_ScytherScene: ; 1d4cc (7:54cc) ; x coord, y coord db 160, 28 ; GRASS db 240, 120 ; FIRE @@ -2557,8 +2555,7 @@ Data_1d4cc: ; 1d4cc (7:54cc) db 240, 44 ; FIGHTING ; 0x1d4da -; list of sprite animations -Data_1d4da: ; 1d4da (7:54da) +OpeningOrbAnimations_AerodactylScene: ; 1d4da (7:54da) db $c2 ; GRASS db $c5 ; FIRE db $c8 ; WATER @@ -2568,7 +2565,7 @@ Data_1d4da: ; 1d4da (7:54da) db $d4 ; FIGHTING ; 0x1d4e1 -Data_1d4e1: ; 1d4e1 (7:54e1) +OpeningOrbCoordinates_AerodactylScene: ; 1d4e1 (7:54e1) ; x coord, y coord db 240, 32 ; GRASS db 160, 112 ; FIRE @@ -2579,8 +2576,7 @@ Data_1d4e1: ; 1d4e1 (7:54e1) db 160, 48 ; FIGHTING ; 0x1d4ef -; list of sprite animations -Data_1d4ef: ; 1d4ef (7:54ef) +OpeningOrbAnimations_InitialTitleScreen: ; 1d4ef (7:54ef) db $c3 ; GRASS db $c6 ; FIRE db $c9 ; WATER @@ -2590,7 +2586,7 @@ Data_1d4ef: ; 1d4ef (7:54ef) db $d5 ; FIGHTING ; 0x1d4f6 -Data_1d4f6: ; 1d4f6 (7:54f6) +OpeningOrbCoordinates_InitialTitleScreen: ; 1d4f6 (7:54f6) ; x coord, y coord db 112, 144 ; GRASS db 12, 144 ; FIRE @@ -2601,8 +2597,7 @@ Data_1d4f6: ; 1d4f6 (7:54f6) db 72, 144 ; FIGHTING ; 0x1d504 -; list of sprite animations -Data_1d504: ; 1d504 (7:5504) +OpeningOrbAnimations_InTitleScreen: ; 1d504 (7:5504) db $c4 ; GRASS db $c7 ; FIRE db $ca ; WATER @@ -2612,7 +2607,7 @@ Data_1d504: ; 1d504 (7:5504) db $d6 ; FIGHTING ; 0x1d50b -Data_1d50b: ; 1d50b (7:550b) +OpeningOrbCoordinates_InTitleScreen: ; 1d50b (7:550b) ; x coord, y coord db 112, 76 ; GRASS db 0, 28 ; FIRE @@ -2623,19 +2618,19 @@ Data_1d50b: ; 1d50b (7:550b) db 72, 76 ; FIGHTING ; 0x1d519 -Titlescreen_1d519: ; 1d519 (7:5519) +OpeningSequenceCmd_PlayTitleScreenMusic: ; 1d519 (7:5519) ld a, MUSIC_TITLESCREEN call PlaySong - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 scf ret ; 0x1d523 -Func_1d523: ; 1d523 (7:5523) +OpeningSequenceCmd_WaitSFX: ; 1d523 (7:5523) call AssertSFXFinished or a jr nz, .no_carry - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 scf ret @@ -2644,48 +2639,48 @@ Func_1d523: ; 1d523 (7:5523) ret ; 0x1d530 -Func_1d530: ; 1d530 (7:5530) +OpeningSequenceCmd_PlaySFX: ; 1d530 (7:5530) ld a, c call PlaySFX - call Func_1d432 + call AdvanceOpeningSequenceCmdPtrBy3 scf ret ; 0x1d539 -Func_1d539: ; 1d539 (7:5539) +OpeningSequenceCmd_FadeIn: ; 1d539 (7:5539) ld a, $01 ld [wd634], a - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 scf ret ; 0x1d543 -Func_1d543: ; 1d543 (7:5543) +OpeningSequenceCmd_FadeOut: ; 1d543 (7:5543) farcall Func_10d50 ld a, $01 ld [wd634], a - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 scf ret ; 0x1d551 -ShowCharizardIntro: ; 1d551 (7:5551) +OpeningSequenceCmd_ShowCharizardScene: ; 1d551 (7:5551) lb bc, 6, 3 ld a, SCENE_CHARIZARD_INTRO - jr LoadIntroSceneAndUpdateSGBBorder + jr LoadOpeningSceneAndUpdateSGBBorder -ShowScytherIntro: ; 1d558 (7:5558) +OpeningSequenceCmd_ShowScytherScene: ; 1d558 (7:5558) lb bc, 6, 3 ld a, SCENE_SCYTHER_INTRO - jr LoadIntroSceneAndUpdateSGBBorder + jr LoadOpeningSceneAndUpdateSGBBorder -ShowAerodactylIntro: ; 1d55f (7:555f) +OpeningSequenceCmd_ShowAerodactylScene: ; 1d55f (7:555f) lb bc, 6, 3 ld a, SCENE_AERODACTYL_INTRO ; fallthrough -LoadIntroSceneAndUpdateSGBBorder: ; 1d564 (7:5564) - call LoadIntroScene +LoadOpeningSceneAndUpdateSGBBorder: ; 1d564 (7:5564) + call LoadOpeningScene ld l, %001010 lb bc, 0, 0 lb de, 20, 18 @@ -2694,10 +2689,10 @@ LoadIntroSceneAndUpdateSGBBorder: ; 1d564 (7:5564) ret ; 0x1d575 -Func_1d575: ; 1d575 (7:5575) +OpeningSequenceCmd_ShowTitleScreenScene: ; 1d575 (7:5575) lb bc, 0, 0 ld a, SCENE_TITLE_SCREEN - call LoadIntroScene + call LoadOpeningScene call Func_1d59c scf ret @@ -2705,7 +2700,7 @@ Func_1d575: ; 1d575 (7:5575) ; a = scene ID ; bc = coordinates for scene -LoadIntroScene: ; 1d582 (7:5582) +LoadOpeningScene: ; 1d582 (7:5582) push af push bc call DisableLCD @@ -2717,7 +2712,7 @@ LoadIntroScene: ; 1d582 (7:5582) xor a ld [wd634], a - call Func_1d42e + call AdvanceOpeningSequenceCmdPtrBy2 call EnableLCD ret ; 0x1d59c @@ -2726,52 +2721,52 @@ Func_1d59c: ; 1d59c (7:559c) ret ; 0x1d59d -Data_1d59d: ; 1d59d (7:559d) - dw ShowCharizardIntro - dwb Func_1d530, SFX_58 - dw Func_1d486, Data_1d4b7 - dw Func_1d469, Data_1d4b0 - dwb Func_1d460, $2c - dw Func_1d539 - dwb Func_1d460, $2c - dw Func_1d543 - dwb Func_1d460, $1e - - dw ShowScytherIntro - dwb Func_1d530, SFX_58 - dw Func_1d486, Data_1d4cc - dw Func_1d469, Data_1d4c5 - dwb Func_1d460, $2c - dw Func_1d539 - dwb Func_1d460, $2c - dw Func_1d543 - dwb Func_1d460, $1e +OpeningSequence: ; 1d59d (7:559d) + dw OpeningSequenceCmd_ShowCharizardScene + dwb OpeningSequenceCmd_PlaySFX, SFX_58 + dw OpeningSequenceCmd_SetOrbsCoordinates, OpeningOrbCoordinates_CharizardScene + dw OpeningSequenceCmd_SetOrbsAnimations, OpeningOrbAnimations_CharizardScene + dwb OpeningSequenceCmd_Delay, 44 + dw OpeningSequenceCmd_FadeIn + dwb OpeningSequenceCmd_Delay, 44 + dw OpeningSequenceCmd_FadeOut + dwb OpeningSequenceCmd_Delay, 30 + + dw OpeningSequenceCmd_ShowScytherScene + dwb OpeningSequenceCmd_PlaySFX, SFX_58 + dw OpeningSequenceCmd_SetOrbsCoordinates, OpeningOrbCoordinates_ScytherScene + dw OpeningSequenceCmd_SetOrbsAnimations, OpeningOrbAnimations_ScytherScene + dwb OpeningSequenceCmd_Delay, 44 + dw OpeningSequenceCmd_FadeIn + dwb OpeningSequenceCmd_Delay, 44 + dw OpeningSequenceCmd_FadeOut + dwb OpeningSequenceCmd_Delay, 30 - dw ShowAerodactylIntro - dwb Func_1d530, SFX_59 - dw Func_1d486, Data_1d4e1 - dw Func_1d469, Data_1d4da - dwb Func_1d460, $2c - dw Func_1d539 - dwb Func_1d460, $64 - dw Func_1d543 - dwb Func_1d460, $3c - - dw Func_1d575 - dwb Func_1d530, SFX_5A - dw Func_1d486, Data_1d4f6 - dw Func_1d469, Data_1d4ef - dw Func_1d444 - dw Func_1d539 - dwb Func_1d460, $10 - dwb Func_1d530, SFX_5B - dw Func_1d486, Data_1d50b - dw Func_1d469, Data_1d504 - dw Func_1d523 - dw Titlescreen_1d519 - dwb Func_1d460, $3c - dwb Func_1d460, $ff - ; 0x1d614 + dw OpeningSequenceCmd_ShowAerodactylScene + dwb OpeningSequenceCmd_PlaySFX, SFX_59 + dw OpeningSequenceCmd_SetOrbsCoordinates, OpeningOrbCoordinates_AerodactylScene + dw OpeningSequenceCmd_SetOrbsAnimations, OpeningOrbAnimations_AerodactylScene + dwb OpeningSequenceCmd_Delay, 44 + dw OpeningSequenceCmd_FadeIn + dwb OpeningSequenceCmd_Delay, 100 + dw OpeningSequenceCmd_FadeOut + dwb OpeningSequenceCmd_Delay, 60 + + dw OpeningSequenceCmd_ShowTitleScreenScene + dwb OpeningSequenceCmd_PlaySFX, SFX_5A + dw OpeningSequenceCmd_SetOrbsCoordinates, OpeningOrbCoordinates_InitialTitleScreen + dw OpeningSequenceCmd_SetOrbsAnimations, OpeningOrbAnimations_InitialTitleScreen + dw OpeningSequenceCmd_WaitOrbsAnimation + dw OpeningSequenceCmd_FadeIn + dwb OpeningSequenceCmd_Delay, 16 + dwb OpeningSequenceCmd_PlaySFX, SFX_5B + dw OpeningSequenceCmd_SetOrbsCoordinates, OpeningOrbCoordinates_InTitleScreen + dw OpeningSequenceCmd_SetOrbsAnimations, OpeningOrbAnimations_InTitleScreen + dw OpeningSequenceCmd_WaitSFX + dw OpeningSequenceCmd_PlayTitleScreenMusic + dwb OpeningSequenceCmd_Delay, 60 + dwb OpeningSequenceCmd_Delay, $ff +; 0x1d614 Func_1d614: ; 1d614 (7:5614) INCROM $1d614, $1d6ad @@ -2821,10 +2816,10 @@ Func_1d765: ; 1d765 (7:5765) INCROM $1d765, $1d7fc Func_1d7fc: ; 1d7fc (7:57fc) - ld a, LOW(Data_1daef) - ld [wd631 + 0], a - ld a, HIGH(Data_1daef) - ld [wd631 + 1], a + ld a, LOW(CreditsSequence) + ld [wSequenceCmdPtr + 0], a + ld a, HIGH(CreditsSequence) + ld [wSequenceCmdPtr + 1], a xor a ld [wd633], a ret @@ -2855,7 +2850,7 @@ Func_1d845: ; 1d845 (7:5845) Func_1d847: ; 1d847 (7:5847) push hl - ld hl, wd631 + ld hl, wSequenceCmdPtr add [hl] ld [hli], a ld a, [hl] @@ -2903,7 +2898,7 @@ Func_1d9db: ; 1d9db (7:59db) INCROM $1d9e1, $1daef -Data_1daef: ; 1daef (7:5aef) +CreditsSequence: ; 1daef (7:5aef) dw Func_1d9db dw Func_1d9d5 ; 0x1daf3 diff --git a/src/wram.asm b/src/wram.asm index 1f9d686..8195f2e 100644 --- a/src/wram.asm +++ b/src/wram.asm @@ -3035,7 +3035,9 @@ wTitleScreenSprites:: ; d629 ds $1 -wd631:: ; d631 +; pointer to commands used by opening and credits sequence +; (see OpeningSequence and CreditsSequence) +wSequenceCmdPtr:: ; d631 ds $2 wd633:: ; d633 |