Homebrew [RELEASE] BootAnim9 - Custom boot animations for your 3DS!

  • Thread starter Thread starter Wolfvak
  • Start date Start date
  • Views Views 329,210
  • Replies Replies 1,434
  • Likes Likes 75
Status
Not open for further replies.
So, with this, can I replace the animated Nintendo 3DS logo that pops up as I boot up a game or app?

Sent from my SM-T280 using Tapatalk

No, this starts an animation when you're turning the 3DS itself on. If you want to create custom animations for 3DS Titles as they boot up, you'll have to do that manually for each game/title.
 
I made the upgrade to B9S, but now I'm bummed to find that (as of now anyway) it would appear that I can't use my boot animation with it like I could with A9LH. I loved the boot animation it really made my added to my overall joy with my 3DS.
 
  • Like
Reactions: lonewolf08
I wouldn't hold your breath for a b9s update for this. Unless someone forked his work somewhere I can't find, wolfvak's github no longer exists for whatever reason. Unless they still have the files somewhere and are working on them or someone else has them, we won't see an update.
 
I wouldn't hold your breath for a b9s update for this. Unless someone forked his work somewhere I can't find, wolfvak's github no longer exists for whatever reason. Unless they still have the files somewhere and are working on them or someone else has them, we won't see an update.
Damn, well then. Hopefully someone does. I tried editing the payloads/converting them to .firm and couldn't get it to work. Ah well.
 
@Wolfvak I made ba9 work with double-buffering quite awhile back (ported in some code from bootctr9 back in July '16), did you ever get that working?

In any case, I could update ba9 for b9s support, just post the current code (looks like github 404s.) I didn't keep source for my work I did last year (surfacebook had some trouble, lost it), but not tough to reimpl the working double-buffering, nor to impl the b9s support (pretty straightforward looking at luma source.)

If you don't want it out there for whatever reason, I'd appreciate just for my personal use (that's my main desire, save a little time for me upgrading to b9s). I'd just be fine putting out there if you're ok with it, in case it benefits others.
 
tqZUeGb.png

BootAnim9 - v0.6.2
Features
Play animations on boot:

  • Animations can be RAW or compressed (LZ + delta encoding, by @d0k3)
  • Configurable framerate (1 - 30, both animations must have the same framerate)
  • Luma3DS payload patching (doesn't need pathchanger, it's done automatically)
NOTE: Requires screen init arm9loaderhax - if you have a newer stage2 try renaming it to "arm9loaderhax_si.bin".

How to install
Place the downloaded/compiled payload in root and place the payload to chainload as "/anim/arm9payload.bin".

It also supports loading BootCTR9 - just drop "arm9bootloader.bin" into the SD card root as well as its configuration file and you're good to go. Please note that BootCTR9 will only load if neither "arm9payload.bin" nor "luma.bin" exist.

How to create an animation
Requires ffmpeg to be in PATH and ImageMagick to be installed.

Use @Docmudkipz' script, makeanim (requires PowerShell on Windows or dash-compatible interpreter). Follow the instructions in the script, and make sure to have a file source readable by ffmpeg (GIF/H.264/VP8/etc).

Or you can check out this thread for animations that others have made.

How to install animations
Create directories called '0' through '9' in the "/anim/" folder. Place whatever animations you downloaded/created inside said folders, making sure not to leave spaces between them (for example, you can't place animations in folder '0' and '2' without placing any in folder '1'). The randomizer will pick one of your animations and play it back on each coldboot (not when rebooting).

For example, a tree layout may be:

SD card root:
- arm9loaderhax.bin
- anim/
- 0/
- anim
- bottom_anim
- config

- 1/
- anim
- config

- arm9payload.bin

In the case above, there're two animations (0 and 1), animation 0 has both animations (top and bottom) and a config file, while animation 1 has only a top screen animation.



Credits

@chaoskagami for better code overall and @TheBaloneyboy for minor code edits

@Docmudkipz for makeanim

@d0k3 for his compression implementation

#Cakey for useful tips and pointers, as always

b1l1s for his ctr library full of useful fb snippets and Normmatt for sdmmc

Everyone else who supported me through these two awesome months! (yes, I'm looking at you /r/Nintendohax)

Special shoutout to @Housey for creating some epic music that helped me focus during some rough times. You can find his awesome stuff here

As well as @A_Random_Guy for asking me to make FB9 and getting me into this beautiful mess :P

Latest video showcasing the random animation feature

Note: The only reason the 3DS plays back the animation again after I press a key is a debug tool, in order to test whether randomness works fine


Old video by @Guy50570


Here's an early POC I recorded when I got both screens working


Have fun!



Will this work with the new Luma 7.1 update (Boot9Strap instead of arm9loaderhax)?
 
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum