Vesly's ASM / C

Meteo AVI to GBA / Custom Opening

I was curious about a custom opening after reading about it in these places:
https://feuniverse.us/t/custom-op-movie-insertion/5849
https://feuniverse.us/t/mokhas-hacks-sundries/16204/88
https://feuniverse.us/t/custom-game-opening-tutorial/27500

I’ve come to the conclusion that the Meteo tool by kran27 is still the ideal way to add a video opening to a gba game.

How I got there…
Linked in @MisakaMikoto’s repo was a recent video guide by AetherDust with some code to move the video into free space and repoint as necessary. Unfortunately, they were using vba-rr and didn’t notice that the game would reset in mgba when exiting the video. This was because interrupts were disabled, which @Leonarth helped me figure out. I tried several things for many hours before this which did not solve the reset. Lastly, AetherDust had only made repointing work for offsets below 16 mb, so I fixed that. After many hours and changing very little, I got it to work!

mGBA_kY0MoBVBvp-ezgif.com-optimize

I made a brief readme for the few steps here:
https://github.com/Veslyquix/ASM/tree/main/Meteo-AVI-to-GBA#readme

61 seconds of video + audio added 3.5 mb to the rom with the pokemon opening video I used as a test. By comparison, Mokha’s version is around 6 mb for the same thing without audio. However, I think Mokha’s work is still useful as it could potentially be called via events in the future. I am pretty doubtful that Meteo’s processed video could be called in an event and things could return to normal afterwards.

Installing a custom opening this way should be considered experimental for now. I recommend you install it before releases, but not permanently on your rom until many people have tried using it without experiencing issues.

Credits for this primarily goes to kran27 for making Meteo and AetherDust. All I did was debug AetherDust’s code and fix a couple issues. Additional thanks to Laqieer and Leonarth.

24 Likes