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

  • Thread starter Thread starter Wolfvak
  • Start date Start date
  • Views Views 331,646
  • Replies Replies 1,434
  • Likes Likes 75
Status
Not open for further replies.
I'm wating for a release with screen init.

wait , does this not have screen init?

you want that implemented because of aurei or..?

cause i use it with aurei and the payloads and evreyhing works fine with it,

or is there something else with the screen init. that i do not know of.
 
wait , does this not have screen init?

you want that implemented because of aurei or..?

cause i use it with aurei and the payloads and evreyhing works fine with it,

or is there something else with the screen init. that i do not know of.
He probably has the original version of A9LH installed, the one without screen-init.

Personally, I recommend to just install the updated one because screen initialization code is at the bottom of my TODO list.
 
  • Like
Reactions: leonmagnus99
I've been thinking of doing an 'anim1', 'anim2', 'anim3', ... , 'animn' thing for a while now, as well as 'bottom_anim1', ... The only issue here would be the framerate: either all animations have the same framerate or theres multiple config files

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

BTW, two of my projects use the PRNG already :D

#define REG_PRNG (*(volatile u32*)0x10011000) // Pseudo Random Number Generator
https://github.com/Wolfvak/A9LH_Homebrew_Template/blob/master/source/main.h#L7
https://github.com/Wolfvak/FakeBrick9/blob/master/source/main.c#L12

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

I'm also working on a menuhax version, it's pretty much the same, though one issue remains: what should it do after displaying the boot animation?
If you make it an arm9 payload, you could use brahma and let it load a normal payload after the animation like it normaly does.
 
He probably has the original version of A9LH installed, the one without screen-init.

Personally, I recommend to just install the updated one because screen initialization code is at the bottom of my TODO list.
Since there are many people wanting to have a clean boot, and screen init only if its needed, I'm working on something like a arm11Api bgthread.
This way application would only need to set a value to one and the screen will be initialized.
The problem is to find the best place for communication, since most of the ram contend stays the same, when rebooting, so the control value will change, but maybe I will change how the control value is working, so that you white 0 to it, and if the arm11 thread is running it will change the value back to the control value.
 
Well, if we're going with multiple in-order options, I'd say:

boot2.3dsx, chain.3dsx, cfw.3dsx, hbmenu.3dsx.

I guess the issue is there's no standardized 3dsx names aside from boot.3dsx.
 
Well, if we're going with multiple in-order options, I'd say:

boot2.3dsx, chain.3dsx, cfw.3dsx, hbmenu.3dsx.

I guess the issue is there's no standardized 3dsx names aside from boot.3dsx.
Yeah, I might want to ask @smealum about this, or someone else who is directly involved with *hax development
 
I've been thinking of doing an 'anim1', 'anim2', 'anim3', ... , 'animn' thing for a while now, as well as 'bottom_anim1', ... The only issue here would be the framerate: either all animations have the same framerate or theres multiple config files

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

BTW, two of my projects use the PRNG already :D
oh great news :)
thanks! i think folders inside the anim folder if the best, each with there own config folders.
when settting the filenames, just get a random folder.
so /anim/1, or /anim/xyz
maybe numbers will be easier because i'm not sure if you can get all the dirs in the anim folder and pick a random one.
it's been a long time since i used c, it's a bit embarrassing sorry, forgot a lot
 
oh great news :)
thanks! i think folders inside the anim folder if the best, each with there own config folders.
when settting the filenames, just get a random folder.
so /anim/1, or /anim/xyz
maybe numbers will be easier because i'm not sure if you can get all the dirs in the anim folder and pick a random one.
it's been a long time since i used c, it's a bit embarrassing sorry, forgot a lot
You mean something like sdmc:/anim/0/{anim, bottom_anim, config} sdmc:/anim/1/{anim, bottom_anim, config} ... ?

Yeah, would reduce directory clutter and it's a nice idea, perfectly doable given how I implemented it for the video

Only issue would be getting the maximum amount of animations, I thought about setting this in sdmc:/anim/config (again, I used that for the video), but I think modifying a file in hex is a waste of time. Will probably have to study FatFS in depth to find this stuff out.
Or maybe you have a suggestion? (pls I need one I don't wanna study fatfs more than necessary...)
 
Last edited by Wolfvak,
You mean something like sdmc:/anim/0/{anim, bottom_anim, config} sdmc:/anim/1/{anim, bottom_anim, config} ... ?

Yeah, would reduce directory clutter and it's a nice idea, perfectly doable given how I implemented it for the video

Only issue would be getting the maximum amount of animations, I thought about setting this in sdmc:/anim/config (again, I used that for the video), but I think modifying a file in hex is a waste of time. Will probably have to study FatFS in depth to find this stuff out.
Or maybe you have a suggestion? (pls I need one I don't wanna study fatfs more than necessary...)
my network won't let me see your video, i didn't know you added this already, nice!
yes, i mean the numbers folders like you say in that first sentence, it keeps it neat.
my idea, check if subdir '1' exists, then '2', up until '9'. this is possible in the fs code.
then choose a random number between 1 and 9, load that folder's files.
if a folder doesn't exist, for example there is 1 2 3 but no fourth subfolder, then only pick the random number from 1 to 3.

if subdir 1 doesn't exist, simply load the files in the normal /anim/ dir as usual.

no need for more data in the config file.
if you wanted to ensure you don't pick the same aniation/subfolder again next boot, then yeah you need to save data somewhere, but hopefully the randomness is ok :)
 
Last edited by cearp,
my network won't let me see your video, i didn't know you added this already, nice!
yes, i mean the numbers folders like you say in that first sentence, it keeps it neat.
my idea, check if subdir '1' exists, then '2', up until '9'. this is possible in the fs code.
then choose a random number between 1 and 9, load that folder's files.
if a folder doesn't exist, for example there is 1 2 3 but no fourth subfolder, then only pick the random number from 1 to 3.

if subdir 1 doesn't exist, simply load the files in the normal /anim/ dir as usual.

no need for more data in the config file.
if you wanted to ensure you don't pick the same aniation/subfolder again next boot, then yeah you need to save data somewhere, but hopefully the randomness is ok :)
Kinda funny, it's already limited to 10 entries (0 - 9), and it's made so that if it can't find the files (say you have 0 1 2 3 5 but no 4, and the random number generator landed on 4) it'll just skip it.

Maybe I should make it so that it runs the entire finding loop again until the RNG lands on an existing animation?
 
Kinda funny, it's already limited to 10 entries (0 - 9), and it's made so that if it can't find the files (say you have 0 1 2 3 5 but no 4, and the random number generator landed on 4) it'll just skip it.

Maybe I should make it so that it runs the entire finding loop again until the RNG lands on an existing animation?
i'd say if you have 01235 and dont have a '4' folder, just break the loop and ignore after, but your choice :)
but it makes the rng easier, 0 to 3' instead of 0-3 but include 5.
you coukd just have any array of the existing subdir numbers though, and pick a random from that.
ideally it would work with any named folders, but not a big deal.
 
i'd say if you have 01235 and dont have a '4' folder, just break the loop and ignore after, but your choice :)
but it makes the rng easier, 0 to 3' instead of 0-3 but include 5.
you coukd just have any array of the existing subdir numbers though, and pick a random from that.
ideally it would work with any named folders, but not a big deal.

I'll just loop again, I don't want n00bs placing 0 and 9 and then complaining that it doesn't work :D
But thanks for the suggestion!
 
  • Like
Reactions: cearp
hello guys, I just wanna clear something up. So in order to use boot animations, first I will just rename my original "arm9loaderhax" to something like "arm9payload.bin" then copy the "arm9loaderhax" from the bootanim9 ,then put the animation that I downloaded in the "anim" folder? That's what I did yesterday, after that whenever I turn my 2ds , it immediately turns off :wtf::wtf: Im using emunand+aureinand a9lh :wtf::wtf:
 
Last edited by Jahhhhhh,
hello guys, I just wanna clear something up. So in order to use boot animations, first I will just rename my original "arm9payload.bin" to something like "arm9payload.bin" then copy the "arm9payload.bin" from the bootanim9 ,then put the animation that I downloaded in the "anim" folder? That's what I did yesterday, after that whenever I turn my 2ds , it immediately turns off :wtf::wtf: Im using emunand+aureinand a9lh :wtf::wtf:
-_- go back and re read the set up. The bin from this needs to be named arm9loaderhax.bin and the one for your cfw or boot manager needs to be named arm9payload.bin
 
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum