Tutorial  Updated

a9lh Boot Animations

image.jpg

Welcome to another kick-ass guide by cots. In this guide we're going to cover creating animating and static boot animations for the custom firmware loader that's all the rage - arm9loaderhax (a9lh). a9lh hijacks the arm9 chip during boot which allows 100% boot rate of the CFW Luma3DS, but you already knew that. Well, did you know you that you can create a custom boot animation that will load when you boot your console? It's also pretty easy to create and configure. So let's dive into it.

Requirements

Static Image(s) and/or Video(s)
Arm9LoaderHax Installed on your Nintendo 3DS (screeninit version)
BootAnim9 - https://github.com/Wolfvak/BootAnim9
makeanim - https://github.com/Docmudkipz/makeanim
ffmpeg - https://ffmpeg.org
imagemagick - http://www.imagemagick.org
Optional: ban9comp - https://github.com/d0k3/ban9comp

In this guide we'll be using 'C:\anim9' as the main folder where we'll work our magic. So extract makeanim and ffmpeg into this directory and then install imagemagick. If you're planning on building ban9comp to compress the output animations (if you're using a small sd card you might want to do this) then also copy ban9comp.exe into the folder.

Once this is done it's time to prepare the image/video file(s). The image/video file(s) will be automatically reduced in size (dimensions), but if you're creating them from scratch you'll want to keep the sizes listed below in mind. The color depth and number of colors are not limited in any fashion. Also note that both videos must have the same frame rate.

Top Screen - 400x240
Bottom Screen - 320x240

One major problem I ran into with creating boot animations using the included batch file was that it would not handle single images without first using ffmpeg to make them a video. In theory it should ask you how many seconds you want the single image to appear for, but it fails to do so. The workaround is to use ffmpeg to create an animation/video file out of your single image. So drop to a CMD prompt and run the following;

ffmpeg -framerate 1/5 -i image.png -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4

This will convert 'image.png' into a video (framerate of 30 frame per second).

Once you have your video file(s) you'll want to drag them (one at a time) onto the 'makeanim.bat' in the 'C:\anim9' folder.

image.jpg

The first thing it will ask is the frame rate of the video. If you have no idea what the frame rate is you can use mediainfo (link - https://mediaarea.net/en/MediaInfo) to find out. So type in your videos frame rate and then press enter.

The next thing it will prompt you to press 'A' for the top screen or 'B' for the bottom. The script will then ask you if this is an animation or not. In theory it should then prompt you for how many seconds to display the static image for (if you pressed N), but it fails to do so.

The script will then process the video and then finally will ask you if you want to compress it using 'ban9comp.exe'.

If you selected the top screen you will now have a file with no extension named 'anim' in the 'C:\anim9' folder and if you selected the bottom screen you will find a file with also no extension named 'bottom_anim ' in the 'C:\anim9' folder. There will also be a 'config' file with no extension. You can create a boot animation(s) for the top, bottom or both screens.

The first thing you're going to need to do to use the animation(s) is to rename your 'arm9loaderhax.bin' (yes, we're working with the Nintendo 3DS sd card now) to 'arm9payload.bin' and then copy the contents of the BootAnim9 archive into the root of your card.

You should now have a folder on the root of your card named 'anim'. Move 'arm9payload.bin' into the '\anim' folder. Inside of the '\anim' folder create a folder named '0' and place the 'anim', 'bottom_anim' and 'config' files (from 'C:\anim9') in the '0' folder (it's okay if you don't use both 'anim' and 'bottom_anim'). You can also create nine more folders named 1, 2, 3, 4, 5, 6, 7, 8 and 9 and place separate boot animations in each, but don't skip numbers (that means don't create a folder named 2 before creating a folder named 1).

image.jpg

Now you can boot your Nintendo 3DS and if all went well you'll be welcomed by your boot animation(s)! Enjoy!

pitt.gif
 
Last edited by cots,

Redferne

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
845
Trophies
0
XP
1,856
Country
United Kingdom
So I tried again without the aspect ratio fix and it works fine beside of course the aspect ratio being broken.
I guess the "fix" doesn't work as I think.
I replaced set res=400:240 with set res=-1:240

Edit: So i finally managed to get the result I wanted.
I replace line 86 with those two:
Code:
    IF %s%==-t ffmpeg -y -i %input% -vf fps=%fps%,scale="'if(gt(a,5/3),400,-2)':'if(gt(a,5/3),-2,240)'",pad=400:240:'if(gt(a,5/3),0,trunc((400-240*a)/2))':'if(gt(a,5/3),trunc((240-400/a)/2),0)':black,transpose=1 -pix_fmt bgr24 output.rgb
    IF %s%==-b ffmpeg -y -i %input% -vf fps=%fps%,scale="'if(gt(a,4/3),320,-2)':'if(gt(a,4/3),-2,240)'",pad=320:240:'if(gt(a,4/3),0,trunc((320-240*a)/2))':'if(gt(a,4/3),trunc((240-320/a)/2),0)':black,transpose=1 -pix_fmt bgr24 output.rgb
That way the input will be resized while keeping its aspect ratio and black bars will be added on left/right or up/down depending on what's missing to fit 400x240 if the animation is for the top screen or 320x240 if the animation is for bottom screen.
I had to remove the flag parameter because I couldn't figured how to put it back :)

I added my modified makeanim.bat
 

Attachments

  • makeanim.7z
    1.6 KB · Views: 196
Last edited by Redferne,

Redferne

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
845
Trophies
0
XP
1,856
Country
United Kingdom
I modified the batch again for people who don't want to keep the aspect ratio. You now have the choice.
I fixed the static image part. It will launch the proper part of the batch if you answered no to "Is this an animation?"
 

Attachments

  • makeanim_v0.1.2.rar
    1.6 KB · Views: 208
  • Like
Reactions: cots

Xanthe

Costco Executive Member
Member
Joined
Dec 23, 2015
Messages
932
Trophies
0
XP
1,549
Country
United States
Can you upload your version with out the new please? This looks awesome
I can make you one, if you'd like.
fx25TmN


--------------------- MERGED ---------------------------

For anyone interested in having an OLD 3DS boot animation picture, here you go:
fx25TmN.png
 
  • Like
Reactions: cots

Skyshadow101

The Sky Is The Limit!
Member
Joined
May 22, 2016
Messages
941
Trophies
0
Location
The Underground
XP
417
Country
United States
I have a question, If I wanna store animations on my sdcard, how would I switch a9lh to a bigger sd? Do I just move all the files to the bigger one? Or do I have to do something specific with it?
 

hudhair

Well-Known Member
Member
Joined
Apr 23, 2013
Messages
691
Trophies
1
XP
379
Country
United States
I tried to do this: "ffmpeg -framerate 1/5 -i hyrule-grass.gif -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4"
it gave me the error "hyrule-grass.gif: No such file or directory" Any ideas?
 

cots

Banned!
OP
Banned
Joined
Dec 29, 2014
Messages
1,533
Trophies
0
XP
1,952
Country
United States
still gives me the same error.

After you open up the CMD prompt you have to change the directory to "c:\anim9" by doing this.

Code:
cd\anim9

--------------------- MERGED ---------------------------

I have a question, If I wanna store animations on my sdcard, how would I switch a9lh to a bigger sd? Do I just move all the files to the bigger one? Or do I have to do something specific with it?

To move to a bigger sd card all you have to do is copy all of the files from your smaller one to the larger one.
 

Docmudkipz

Novice
Member
Joined
Mar 16, 2016
Messages
327
Trophies
0
Location
Staring at my computer case's window
XP
307
Country
United States
By the way @Docmudkipz , do you intent to add the modifications I made to the batch?
I've been thinking about it and just read over what you changed. As of current the entire script was rewritten so I can make room for it if I do

--------------------- MERGED ---------------------------

Why was the lanczos flag removed?
 

Docmudkipz

Novice
Member
Joined
Mar 16, 2016
Messages
327
Trophies
0
Location
Staring at my computer case's window
XP
307
Country
United States
Ah I see. Indeed it might not be necessary with the keep ratio line.
I've got version of the script, one for keeping AR now using what you edited to the batch script and one that worked like the original unedited scripts. Honestly, there may be some quality loss without the use of lanczos as that itself gave a big boost in quality when zes suggested it
 

Redferne

Well-Known Member
Member
Joined
Oct 28, 2015
Messages
845
Trophies
0
XP
1,856
Country
United Kingdom
I've got version of the script, one for keeping AR now using what you edited to the batch script and one that worked like the original unedited scripts. Honestly, there may be some quality loss without the use of lanczos as that itself gave a big boost in quality when zes suggested it
You could merge both scripts like I did so you don't have to maintain both.
For the quality loss, I don't know. I haven't see much of a difference on the files I used but they were gif so... :)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • RedColoredStars @ RedColoredStars:
    I'm 52 years old and one of my jobs in life was marketing research. Im well aware. I've been online for around 30 years. Everyone and their grandmother already has my personal information. One more having my email address isn't ruining my life or even effecting me in any way whatsoever.
    +1
  • RedColoredStars @ RedColoredStars:
    In fact. I freely give info. Stuff like gasoline apps, to save $, grocery apps, lots of cash back from rakuten, etc. etc.
    +1
  • RedColoredStars @ RedColoredStars:
    $300 back last year from Rakuten for allowing them to track my purchase. I'll take the money for them to know I bought a bunch of stuff for my cat and some video games. lol
  • K3Nv2 @ K3Nv2:
    No matter what you sign up for your info is out there
    +1
  • RedColoredStars @ RedColoredStars:
    Thats what im saying
  • SylverReZ @ SylverReZ:
    @K3Nv2, Exactly.
  • RedColoredStars @ RedColoredStars:
    And for people to say things like "But I use all fake info". No, they don't. lol. They use fake info for all of their banking and online shopping? Fake shipping address, fake payment info? lol
  • RedColoredStars @ RedColoredStars:
    Fake name, address and payment info for internet service, etc? lol. Ill say it again. Everyone freaks out about OMG WINDOWS!! But crickets on anything else they do.
  • RedColoredStars @ RedColoredStars:
    Other windows stuff people complain about hypocritically too. Like "But but but Windows bundle junk apps!!!!" Yeah?? So do many Linux distributions. Dont like it? Use one without them. Same with windows. Either find a pre-made version without the bundled stuff, or very easily make your own installer with what you want and do not want.
    +1
  • console @ console:
    I agree with all above! Microsoft made a biggest mess with us and everyone! I wish Microsoft company should be fired then lost it. LOL :rofl2:
    +1
  • RedColoredStars @ RedColoredStars:
    I dont like the stuff added either. I have zero use for copilot or recall. But I also just simply disable it and move on.
    +2
  • RedColoredStars @ RedColoredStars:
    Always disabled dumb cortana from day 1 too.
    +2
  • K3Nv2 @ K3Nv2:
    When you're a billion dollar company even upper management is just peons to the company
    +1
  • RedColoredStars @ RedColoredStars:
    MS is funny. Insider programs for both Windows and Xbox, where they listen to absolutely none of the insider feedback and just do what the fuck they want. lolol
    +1
  • K3Nv2 @ K3Nv2:
    Xbox idea to make midrange consoles saved them this Gen and buying your wife
  • SylverReZ @ SylverReZ:
    The Xbox is dying already. I don't know what to say, Microsoft takes the L for that one.
  • K3Nv2 @ K3Nv2:
    How is the Xbox dying?
  • K3Nv2 @ K3Nv2:
    Xbox one sold nearly 60 million units
  • SylverReZ @ SylverReZ:
    Remember when Phil was going to buy out more studios to work with them? I guess they couldn't keep up with demands.
  • K3Nv2 @ K3Nv2:
    They already have dozens of studios with big names why care about little Jim making your favorite indie point and click exclusive
  • Psionic Roshambo @ Psionic Roshambo:
    Florida just getting your driver's license.... They sell your phone number and address to marketing companies lol
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Like .3 cents a person or something
  • K3Nv2 @ K3Nv2:
    No psi that's a gun license they expect flordians to at least know how to break
  • K3Nv2 @ K3Nv2:
    Sorry officer I did not hear the body being dragged 20 miles out
    K3Nv2 @ K3Nv2: Sorry officer I did not hear the body being dragged 20 miles out