Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

BAX 3DS: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 8: Line 8:
|version=3rd
|version=3rd
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrew/bax.rar
|download=https://dlhb.gamebrew.org/3dshomebrews/bax3ds.7z
|website=https://gitlab.com/Wolfvak/BAX
|website=https://gitlab.com/Wolfvak/BAX
|source=https://gitlab.com/Wolfvak/BAX
|source=https://gitlab.com/Wolfvak/BAX
}}
}}
<youtube>8I9suzqc_ug</youtube>
BAX is a homebrew program for the Nintendo 3DS that allows you to display video streams on load. It is named after its predecessor, BootAnim9 - Boot Anim X/10 (although the 9 had nothing to do with the version).
 
== BAX ==
 
'''Successor to BootAnim9'''
 
=== What is this? ===
 
BAX is a homebrew program for the Nintendo 3DS (compatible with all models) that allows you to display video streams on load.


Thanks to boot-time entrypoints, this can be done on boot, giving a similar impression to the loading animation of a PC or a mobile smartphone.
Thanks to boot-time entrypoints, this can be done on boot, giving a similar impression to the loading animation of a PC or a mobile smartphone.


Please note that while it's designed to boot another program, it does ''not'' allow both itself and the other to run concurrently, but rather sequentially. Therefore, any time that is &quot;taken&quot; by loading/playing the animation file will not be somehow &quot;given&quot; to the next program (f.e. independently of the time taken by the animation, the FIRM will take the same amount of time to load).
Please note that while it's designed to boot another program, it does not allow both itself and the other to run concurrently, but rather sequentially. Therefore, any time that is taken by loading/playing the animation file will not be somehow given to the next program (f.e. independently of the time taken by the animation, the FIRM will take the same amount of time to load).
 
=== How do I use it? ===


==User guide==
===How to use===
Download the BAX FIRM from the release archive, and set up your bootloader so that it's the first thing that gets loaded (or at least as early as possible).
Download the BAX FIRM from the release archive, and set up your bootloader so that it's the first thing that gets loaded (or at least as early as possible).


Copy any BAX animation files to <code>sdmc:/bax/</code> (&quot;bax&quot; folder on the SD card). BAX will randomly choose one animation from all animations found in the folder.
Copy any BAX animation files to sdmc:/bax/ ("bax" folder on the SD card). BAX will randomly choose one animation from all animations found in the folder.
 
Put the FIRM to be loaded afterwards (CFW, secondary bootloader, Linux, etc) on <code>sdmc:/bax/boot.firm</code>. If for some reason you want to keep the FIRM elsewhere (easier to maintain/update, etc) you can also create a file <code>sdmc:/bax/boot.txt</code> that contains the plaintext ASCII path to the FIRM (f.e. <code>boot.txt</code> can contain the text <code>&quot;sdmc:/firm/cfw.firm&quot;</code> without the quotes). Compatibility appears to be perfect, although further testing is required.
 
If you want to skip the animation playback, press <code>X</code> during playback. The animation will halt until you let go, giving you time to press any other necessary buttons until the next FIRM is loaded and executed.
 
'''''WARNING: BAX can not be booted from a FIRM partition or an NTRboot cart. Don't even try.'''''
 
=== What does the name even mean? ===
 
'''B'''oot '''A'''nim X/10 (since it's the successor to BootAnim9, even though the 9 had nothing to do with the version).


=== How do I create my own animations? ===
Put the FIRM to be loaded afterwards (CFW, secondary bootloader, Linux, etc) on sdmc:/bax/boot.firm. If for some reason you want to keep the FIRM elsewhere (easier to maintain/update, etc) you can also create a file sdmc:/bax/boot.txt that contains the plaintext ASCII path to the FIRM (f.e. boot.txt can contain the text "sdmc:/firm/cfw.firm" without the quotes). Compatibility appears to be perfect, although further testing is required.


Read <code>/makebax/README.md</code>.
If you want to skip the animation playback, press X during playback. The animation will halt until you let go, giving you time to press any other necessary buttons until the next FIRM is loaded and executed.


==== Example setups: ====
'''Note:''' BAX can not be booted from a FIRM partition or an NTRboot cart. Do not even try.


===Example setups===
'''B9S:'''
'''B9S:'''
* boot9strap installed on FIRM0.
* boot9strap installed on FIRM0.
* BAX in <code>sdmc:/boot.firm</code>.
* BAX in <code>sdmc:/boot.firm</code>.
Line 56: Line 38:


'''FB3DS:'''
'''FB3DS:'''
* fastboot3DS installed on FIRM0.
* fastboot3DS installed on FIRM0.
* BAX in <code>sdmc:/firm/bax.firm</code> (with fastboot3DS default bootslot pointing to this).
* BAX in <code>sdmc:/firm/bax.firm</code> (with fastboot3DS default bootslot pointing to this).
Line 64: Line 45:
These are only examples, you can mix and match as you wish - the only requirement is to have BAX somewhere in the boot process, preferably as early as possible.
These are only examples, you can mix and match as you wish - the only requirement is to have BAX somewhere in the boot process, preferably as early as possible.


=== I get a &quot;BUG!&quot; thing, some text and a weird error code! What do I do? ===
===Other notes===
Due to how Horizon/NATIVE_FIRM works, if you reboot from AGB_FIRM (GBA Virtual Console) the save game will not be saved until you reboot back into it again.
 
BAX performs no GPU initialization, only register tweaks and assumes the GPU has already been initialized by the time it boots.
 
Any B9S-compatible loaders _should_ do this, given the proper bit is set in the FIRM (it certainly is in BAX), but I can not realistically provide support for every existing loader out there.


Read <code>docs/bug.md</code>.
===FAQ===
'''Q. How do I create my own animations?'''


=== Why would I use this? ===
Read <code>/makebax/README.md</code>.


I honestly have no idea. Do I really have to tell you what you can and can't do? Just give it a shot - if you like it, keep it. Don't like it - remove it.
'''Q. I get a "BUG!" thing, some text and a weird error code! What do I do?'''


==== Other notes: ====
Read docs/bug.md.


Due to how Horizon/NATIVE_FIRM works, if you reboot from AGB_FIRM (GBA Virtual Console) the save game '''will not''' be saved until you reboot back into it again.
==Compatibility==
Compatible with all models.


BAX performs no GPU initialization, only register tweaks and assumes the GPU has already been initialized by the time it boots.
==Changelog==
'''Third release'''
* Fix early exit edge cases.
* Very light performance improvements.
 
* Second release'''
* Fixed framebuffer addresses (no more garbage on screen after firmlaunch).
* Fixed ARM11 interrupts being left on an undefined state(?).
 
==External links==
* GitLab - https://gitlab.com/Wolfvak/BAX
* GBAtemp - https://gbatemp.net/threads/release-bax-boot-animations-for-your-3ds.497717
* GBAtemp - https://gbatemp.net/threads/release-bootanim9-custom-boot-animations-for-your-3ds.420202/post-7852508


Any B9S-compatible loaders ''should'' do this, given the proper bit is set in the FIRM (it certainly is in BAX), but I can not realistically provide support for every existing loader out there.
[[Category:3DS homebrew applications]]
[[Category:PC utilities for 3DS homebrew]]

Revision as of 03:25, 10 March 2022

BAX
File:Bax.jpg
General
AuthorWolfvak
TypePC Utilities
Version3rd
LicenseMixed
Last Updated2018/03/19
Links
Download
Website
Source

BAX is a homebrew program for the Nintendo 3DS that allows you to display video streams on load. It is named after its predecessor, BootAnim9 - Boot Anim X/10 (although the 9 had nothing to do with the version).

Thanks to boot-time entrypoints, this can be done on boot, giving a similar impression to the loading animation of a PC or a mobile smartphone.

Please note that while it's designed to boot another program, it does not allow both itself and the other to run concurrently, but rather sequentially. Therefore, any time that is taken by loading/playing the animation file will not be somehow given to the next program (f.e. independently of the time taken by the animation, the FIRM will take the same amount of time to load).

User guide

How to use

Download the BAX FIRM from the release archive, and set up your bootloader so that it's the first thing that gets loaded (or at least as early as possible).

Copy any BAX animation files to sdmc:/bax/ ("bax" folder on the SD card). BAX will randomly choose one animation from all animations found in the folder.

Put the FIRM to be loaded afterwards (CFW, secondary bootloader, Linux, etc) on sdmc:/bax/boot.firm. If for some reason you want to keep the FIRM elsewhere (easier to maintain/update, etc) you can also create a file sdmc:/bax/boot.txt that contains the plaintext ASCII path to the FIRM (f.e. boot.txt can contain the text "sdmc:/firm/cfw.firm" without the quotes). Compatibility appears to be perfect, although further testing is required.

If you want to skip the animation playback, press X during playback. The animation will halt until you let go, giving you time to press any other necessary buttons until the next FIRM is loaded and executed.

Note: BAX can not be booted from a FIRM partition or an NTRboot cart. Do not even try.

Example setups

B9S:

  • boot9strap installed on FIRM0.
  • BAX in sdmc:/boot.firm.
  • Luma3DS in sdmc:/bax/boot.firm.
  • Other FIRMs in sdmc:/luma/payloads.

FB3DS:

  • fastboot3DS installed on FIRM0.
  • BAX in sdmc:/firm/bax.firm (with fastboot3DS default bootslot pointing to this).
  • Rei-Six in sdmc:/bax/boot.firm.
  • Other FIRMs in sdmc:/firm, selectable through fastboot3DS if desired.

These are only examples, you can mix and match as you wish - the only requirement is to have BAX somewhere in the boot process, preferably as early as possible.

Other notes

Due to how Horizon/NATIVE_FIRM works, if you reboot from AGB_FIRM (GBA Virtual Console) the save game will not be saved until you reboot back into it again.

BAX performs no GPU initialization, only register tweaks and assumes the GPU has already been initialized by the time it boots.

Any B9S-compatible loaders _should_ do this, given the proper bit is set in the FIRM (it certainly is in BAX), but I can not realistically provide support for every existing loader out there.

FAQ

Q. How do I create my own animations?

Read /makebax/README.md.

Q. I get a "BUG!" thing, some text and a weird error code! What do I do?

Read docs/bug.md.

Compatibility

Compatible with all models.

Changelog

Third release

  • Fix early exit edge cases.
  • Very light performance improvements.
  • Second release
  • Fixed framebuffer addresses (no more garbage on screen after firmlaunch).
  • Fixed ARM11 interrupts being left on an undefined state(?).

External links

Advertising: