[FE7/8] Skip the intro cutscene

,

A drop of water falls into a still pool…
ONCE, DRAGONS AND MEN COEXISTED. THEY SHARED—
A! B! Start! Skip, skip, skip!

It doesn’t matter if your hack has new characters!
It doesn’t matter if your hack has a new story line!
It doesn’t matter if your hack takes place in an entirely new universe!
That darn opera singer wants to tell you about Elibe’s Scouring regardless!
Well, no more!

Skip the intro cutscene:
At 0BC58E: edit 0DD0 → 0000
After the “2003 Nintendo Presents” message, the game jumps straight to the title screen.

Allow the first “2003 Nintendo Presents” message to be skipped:
At 0BC580: edit 14D0 → 0000
Normally, the 2003 message is unskippable the first time it’s shown. Combining this with the above edit will make the game start at the title screen.

Disable replay intro, but keep class roll:
At 0127A6: edit 00 → 01
If you wait on the title screen, the game alternates between showing the class roll and replaying the intro sequence. If you applied the skip intro edit, the intro won’t be replayed but the title screen will still fade to black and the music will restart. This edit prevents the title screen from being reset by the timer.

Disable both class roll and replay intro:
At 0BAA25: edit D1 → E0
The game will remain on the title screen.

19 Likes

And here are my notes for the intro/title stuff.

0801274C: Routine for handling screen transitions
02024E28+0x29 (02024E51) = screen (written to memory by routine 08012B48)
02024E28+0x2B (02024E53) = number of times the title screen timer has expired

If screen = 0x00: goto main menu (new game, restart chapter, extras)
If screen = 0x01 and time-outs are even: goto class roll
If screen = 0x01 and time-outs are odd: replay intro
If screen = 0x02: goto title screen
If screen = 0x03: goto animated title screen (durandal/armads animation)


080BC570: Routine that checks for input during intro

080BC582 ldr  r0,=#0x8B857F8
080BC584 ldr  r1,[r0]        // r1 = RAM offset 02024C78
080BC586 mov  r0,#0xB        // r0 = A(0x01) + B(0x02) + Start(0x08)
080BC588 ldrh r1,[r1,#0x8]   // read button input from 02024C78+0x08
080BC58A and  r0,r1
080BC58C cmp  r0,#0x0        // check if A, B, or Start was pressed.
080BC58E beq  #0x80BC5AC
080BC590 mov  r0,#0x2        // r0 = transition to title screen
080BC592 bl   #0x8012B48     // writes r0 to 02024E28+0x29 (02024E51)

080BA9B0: Title Screen Routine

080BA9DE to 080BA9EA: check if A or Start was pressed.
080BA9EC to 080BA9FA: Play 0x38D sfx when A/Start is pressed.
Also checks if the sfx option is off (0202BBF8+0x41)
080BA9FE mov r0,#0x0 // r0 = transition to main menu
080BAA00 bl #0x8012B48

080BAA1C ldr  r1,[r4,#0x54] // r1 = title screen timer
080BAA1E mov  r0,#0xF0
080BAA20 lsl  r0,r0,#0x1
080BAA22 cmp  r1,r0         // check if timer = 0x01E0
080BAA24 bne  #0x80BAA32
080BAA26 mov  r0,#0x1       // r0 = transition to class roll or replay intro
080BAA28 bl   #0x8012B48

080AEDF0: Class Roll Routine
080AEE56 to 080AEE62: check if A, B or Start was pressed.

When exiting out of class roll or the main menu, 0801274C isn’t called to transition back to the title screen. I guess that routine isn’t needed since there is only 1 possible screen to transition to.

3 Likes

Ooooh did you do this for EN, then?

Also, would it be possible to get a sister version for FE8?

Sweet, how did you go about finding these? I need a way to skip the new game intro text for FE8.

This will hopefully gather enough use that my sanity will be saved.
No more needing to hear the fucking opening ever again.

2 Likes

Great! Now we can use music 01 for our own uses.

Gryz has reached GOAT status with this.

Immediately doing this lmfao

1 Like

I actually had been meaning to do this for awhile. Arch’s Exalted Legacy update reminded me that I needed to stop being lazy and try it.

Yeah, I think a FE8 version should be possible. However, I am a bit wary of removing the HEALTH AND SAFETY screen. I don’t want anyone to get hurt while playing Fire Emblem.

Based on my research on how to remove the completed game requirement for super fast unit movement, I was able to find where the game read/store button input. I knew pressing A, B or Start ends the intro, so that’s what I looked for. Then I chased code in the debugger for several hours and cried.

4 Likes

This is literally the most important screen to remove. In fact, I’m 90% sure seeing that screen every soft reset is what gave me Cancer.

4 Likes

I swear I remember Ryru mentioning removing the health/safety screen lol

So that would be 02024C78? In FE8 it’s 02024CC4.

“Before playing, read the Health and Safety Precautions Booklet for important information about your health and safety.”
…What booklet? Those don’t even come with ROM patches!

3 Likes

So I didn’t manage to remove the health & safety screen, but you can auto skip it if you nop (write C0 46) at $CC3C4.

Also, to skip the new game opening text in FE8, write C0 46 at $C4928 (it still plays the music for about a second though)

And for the intro cutscene, write C0 46 at $C6714.

4 Likes

Sweet, now I don’t have to be reminded about how TRTR used to be an Elibe hack every time I boot up the ROM. Thanks, Gryz.

1 Like

Killer app confirrrrmed.

Seriously, the other day when I finished that opening for Exalted I was musing “man, it’d be great if someone just disabled that intro movie” on skype and lo and behold, Gryz must’ve heard me through the aether and our prayers have been answered. :smiley:

To disable intro replay but keep class roll for FE8: change $9B46 from 01 to 02.

3 Likes

You ought to change the topic title to reflect that you can disable FE8’s as well, and then add the information about FE8 to the OP.

Funny thing - actually the screen doesn’t show on a soft reset, only on a hard reset. Thanks to this I was able to identify how to get rid of it For All Time.

To remove the Health and Safety Screen, at 0xCC20C write 00 00. You’re welcome.

1 Like

Is there an easy way to remove the class rolls from FE8? Need to know for a… friend.

I dunno about getting rid of just the class roll, but to make the disable the roll and the intro (ie, remain on the title screen), change C63AD from D1 to E0.

1 Like