[RELEASE] BootAnim9 - Custom boot animations for arm9loaderhax!

Discussion in '3DS - Homebrew Development and Emulators' started by Wolfvak, Mar 24, 2016.

  1. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    [​IMG]
    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:
    Warning: Spoilers inside!

    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
    Warning: Spoilers inside!

    Old video by @Guy50570
    Warning: Spoilers inside!

    Here's an early POC I recorded when I got both screens working
    Warning: Spoilers inside!

    Have fun!
     
    Last edited by Wolfvak, Nov 10, 2016


  2. iAqua

    Member iAqua Is Your Worst Nightmare

    Joined:
    Dec 7, 2015
    Messages:
    2,162
    Location:
    Gotham City
    Country:
    Canada
    Nice work! Ooooh first :)
     
    Last edited by iAqua, Aug 8, 2016
  3. MAXLEMPIRA

    Member MAXLEMPIRA Legends are Made from True Stories...

    Joined:
    Jun 24, 2012
    Messages:
    848
    Location:
    Kanto <- Hyrule -> Unova
    Country:
    Mexico
    just what I was waiting :D excelent!
     
    'Don likes this.
  4. Just Passing By

    Member Just Passing By GBAtemp Advanced Maniac

    Joined:
    Jan 3, 2016
    Messages:
    1,562
    Country:
    United States
    Oh wow! This is so cool! I'm gonna try it out later.
     
  5. JR_44

    Newcomer JR_44 Advanced Member

    Joined:
    Aug 23, 2014
    Messages:
    56
    Location:
    Indiana
    Country:
    United States
  6. squee666

    Member squee666 Advanced Tech Pleb

    Joined:
    Sep 17, 2010
    Messages:
    1,585
    Location:
    Belfast
    Country:
    United Kingdom
    @Wolfvak Im assuming there is a file length limit also raw .rgb files hows the 3ds handle the framerate?


    im assuming it replace splash
     
  7. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    Check out the GitHub page, 50MB is the limit (between both screens)
     
    MAXLEMPIRA likes this.
  8. Faru

    Member Faru GBAtemp Regular

    Joined:
    Nov 13, 2015
    Messages:
    148
    Country:
    United States
    Testing right now.
     
  9. hobbledehoy899

    Member hobbledehoy899 mmm wahtcha smea

    Joined:
    Nov 13, 2015
    Messages:
    2,220
    Location:
    Linux 4.11.0-041100rc8-generic
    Country:
    United States
    And you can still boot into Decrypt9 with this?
     
  10. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    Yeah, if you name it arm9payload.bin

    EDIT: You can load ANY (ARM9) payload as long as you name it arm9payload.bin
     
    Last edited by Wolfvak, Mar 24, 2016
  11. hobbledehoy899

    Member hobbledehoy899 mmm wahtcha smea

    Joined:
    Nov 13, 2015
    Messages:
    2,220
    Location:
    Linux 4.11.0-041100rc8-generic
    Country:
    United States
    yeeeeeeeeee
     
  12. Faru

    Member Faru GBAtemp Regular

    Joined:
    Nov 13, 2015
    Messages:
    148
    Country:
    United States
    Just tested it!

    It works but the animation is jank
     
  13. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    It's only 10fps as of right now, trying to implement a better system to detect fps accordingly, this is due to the fact that some files can get HUGE
     
    fr3quency likes this.
  14. Faru

    Member Faru GBAtemp Regular

    Joined:
    Nov 13, 2015
    Messages:
    148
    Country:
    United States
    I see...

    Well we can only improve from here right?
     
  15. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    Hopefully :)
     
    Faru likes this.
  16. Logan Pockrus

    Member Logan Pockrus Knawledge is key.

    Joined:
    Jan 1, 2016
    Messages:
    1,332
    Country:
    United States
    The animation runs, but it's all garbled....
     
  17. Wolfvak
    OP

    Member Wolfvak <(o_o<) <(o_o)> (>o_o)>

    Joined:
    Oct 25, 2015
    Messages:
    781
    Location:
    Littleroot Town
    Country:
    Uruguay
    Can you post a pic?
     
  18. Faru

    Member Faru GBAtemp Regular

    Joined:
    Nov 13, 2015
    Messages:
    148
    Country:
    United States
    Yeeeee this is what I was talking about
     
  19. Logan Pockrus

    Member Logan Pockrus Knawledge is key.

    Joined:
    Jan 1, 2016
    Messages:
    1,332
    Country:
    United States
    Sure, just a moment or two (I don't mind anyway, this is the initial release. There will be bugs).
     
  20. GBAFail

    Member GBAFail I can't stand stupid.

    Joined:
    Oct 26, 2015
    Messages:
    472
    Location:
    Ur mum m8
    Country:
    United States

Share This Page