Homebrew [RELEASE] BAX - Boot animations for your 3DS!

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Made a bugfix release, thanks to @AyanamiRei0 for testing and @gamesgod for recognizing the bug *and* the fix.

https://gitlab.com/Wolfvak/BAX/tags/second_release

So I've been trying to convert a gif on Linux and it's not going so good for me. Would anyone be so kind as convert this gif for me? It's my personal favorite boot animation.
Check the attached file.
It doesn't look amazingly good because the source framerate is pretty low (10fps) but it still looks nice.
I also set up the background color to white, so the bottom screen matches the top screen background.
 

Attachments

  • kiss.zip
    900.9 KB · Views: 339

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
28,013
Trophies
4
Location
Making a non-binary fuss
XP
39,602
Country
Antarctica
Made a bugfix release, thanks to @AyanamiRei0 for testing and @gamesgod for recognizing the bug *and* the fix.

https://gitlab.com/Wolfvak/BAX/tags/second_release


Check the attached file.
It doesn't look amazingly good because the source framerate is pretty low (10fps) but it still looks nice.
I also set up the background color to white, so the bottom screen matches the top screen background.
Thanks for converting that for me! ^-^ It looks a lot better than the one I did.
Latest release is working with Luma3DS, Rei-Six, and CakesFW, all tested on my n3DS and with FB3DS. It should work with GM9 and or B9S.
 

gamesgod

Member
Newcomer
Joined
Aug 20, 2017
Messages
20
Trophies
0
XP
61
Country
China
Huh, that's odd. GodMode9 is sort of special in that it also does some ARM11 magic, which might help out. Could you try with fastboot3DS too? (as in, BAX -> luma chainloader -> fb3DS -> luma). If that works, then I might know what the problem is.

I tried "BAX -> luma chainloader -> fb3DS -> luma" and "BAX -> fb3DS -> luma", they all works OK!
 

gamesgod

Member
Newcomer
Joined
Aug 20, 2017
Messages
20
Trophies
0
XP
61
Country
China
There is still a bug.

When the animation is played for more than 10 seconds (maybe 5 seconds), press the X key(press and release), the animation stops, and 3DS will be no response to the halt.
 
D

Deleted User

Guest
@unipablojorge At first, your program was working, but now I can't get it to work after only one try. I also have a bunch of problems that may or may not be bugs. First off, if I am trying to convert a gif, it always aborts automatically once I choose my framerate. When I am trying to convert a mp4 file, I always get this:

BAX Converter v1.2
Enter file with extension, example: 'test.mp4'
> PowerlessBeneficialGlowworm.mp4
Enter output file name (no extension)
> jk
Your file extension is mp4
Select screen for the video
1. Top Screen
2. Bottom Screen
3. Both Screens
> 1
Select a framerate, recommended 60.
> 60
You want to convert PowerlessBeneficialGlowworm.mp4 to jk.bax at 60 fps.
The command used will be:
ffmpeg -i PowerlessBeneficialGlowworm.mp4 -f ivf -vf scale=400:240,fps=60 jk.ivf
Starting mp4 conversion with ffmpeg...
'ffmpeg' is not recognized as an internal or external command,
operable program or batch file.
Conversion to .ivf finished! starting conversion to .bax...
Command to be used: makebax jk.ivf jk.bax
makebax v0.1a
Couldn't open "jk.ivf" for reading.
Aborted
Done! Your output file is named jk.bax!
Press any key to continue . . .


And lastly, when I try to do either methods with the ffmpeg.exe in the folder, it always aborts due to an DDL error. I don't know what to do. This is all done using the 1.2 version. Also, question: How does the two screen option work since it only takes one file at a time?
 
Last edited by ,

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
There is still a bug.

When the animation is played for more than 10 seconds (maybe 5 seconds), press the X key(press and release), the animation stops, and 3DS will be no response to the halt.
Damn, I'm able to reproduce the bug, although in my case it happens independently on how much has been read already (actually, it seems to happen more consistently when pressed early on playback).

Gonna look into it and push a fix ASAP.

EDIT: I think I got it fixed, would you mind trying it out @gamesgod? It's the single attached file.
 

Attachments

  • BAX_skiplogicfix.zip
    20.2 KB · Views: 299
Last edited by Wolfvak, , Reason: potentially fix'd

gamesgod

Member
Newcomer
Joined
Aug 20, 2017
Messages
20
Trophies
0
XP
61
Country
China
Damn, I'm able to reproduce the bug, although in my case it happens independently on how much has been read already (actually, it seems to happen more consistently when pressed early on playback).

Gonna look into it and push a fix ASAP.

EDIT: I think I got it fixed, would you mind trying it out @gamesgod? It's the single attached file.

I tried, It still has bug. :(
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
28,013
Trophies
4
Location
Making a non-binary fuss
XP
39,602
Country
Antarctica
Thank you for testing! Pushed the fix and here's the latest release.
This release seems to no longer work with CFWs again.
Tested with New3DS on FB3DS
All CFWs tested (Luma3DS, Rei-Six, and CFW) all show their respective boot splashes/text and then just soft-lock on a black screen.
 
Last edited by The Catboy,

RednaxelaNnamtra

Well-Known Member
Member
Joined
Dec 8, 2011
Messages
1,210
Trophies
1
XP
3,365
Country
Germany
Nice work, I thought about using the arm11 as main processor and do some kind of communication between arm11 and arm9 in BootCTR9 in the past, but I had no idea how to start and not much time.
I will check out your code and maybe I will try to rework BootCTR9 and add bax animation support to it, but only if I find enough time for it.
 

Wolfvak

nyaa~
OP
Member
Joined
Oct 25, 2015
Messages
918
Trophies
1
XP
3,486
Country
Uruguay
Nice work, I thought about using the arm11 as main processor and do some kind of communication between arm11 and arm9 in BootCTR9 in the past, but I had no idea how to start and not much time.
I will check out your code and maybe I will try to rework BootCTR9 and add bax animation support to it, but only if I find enough time for it.
If you look at the commits you'll realize it's pretty hellish, but if you have a proper cache-aware interprocessor protocol it can be relatively easy.

I went as simple as possible, so it was easy to implement and debug but if I were to use this in a large scale project I'd probably just rewrite it. Not sure on how much you need IPC on BootCTR9, but you should probably look at better alternatives (IOW - don't look at my PXICMD code unless you really like long term pain)
 

RednaxelaNnamtra

Well-Known Member
Member
Joined
Dec 8, 2011
Messages
1,210
Trophies
1
XP
3,365
Country
Germany
If you look at the commits you'll realize it's pretty hellish, but if you have a proper cache-aware interprocessor protocol it can be relatively easy.

I went as simple as possible, so it was easy to implement and debug but if I were to use this in a large scale project I'd probably just rewrite it. Not sure on how much you need IPC on BootCTR9, but you should probably look at better alternatives (IOW - don't look at my PXICMD code unless you really like long term pain)
Thanks for the feedback :)
I think the only things I would need to do on the arm9 are loading the config file, loading the splash/animation, setting the keys if configured and prepare and load the firm.
On the Arm11 I could do everything else, like parsing the config, check the pressed keys and handle drawing(partially done already).
And since I had no idea how to start in a way which allows me to read from the sd on arm11, your code could still be a good starting point for research and future planning, even if its not the best implementation ^^
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
28,013
Trophies
4
Location
Making a non-binary fuss
XP
39,602
Country
Antarctica
This release seems to no longer work with CFWs again.
Tested with New3DS on FB3DS
All CFWs tested (Luma3DS, Rei-Six, and CFW) all show their respective boot splashes/text and then just soft-lock on a black screen.
Just a quick follow up, I have no idea what caused this issue. I am unable replicate this issue with further testing, so I am just going to consider it a fluke.
 
D

Deleted User

Guest
@Wolfvak Is there any way to make it so that an animation can play right after another animation? Or would i just have to combine the two files into one animation?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: WUt wUt in the butt