custom-install - Install CIAs to a Nintendo 3DS SD card entirely on PC

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by ihaveamac, Nov 4, 2019.

  1. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
    custom-install is a Python 3.6+ tool that will install CIA files to a Nintendo 3DS SD card entirely on a PC. This completely bypasses the slow wireless and I/O speeds of the hardware.

    This has no GUI at the moment, so you are expected to know how to use a command-line interface. It also currently does not verify CIAs, so corrupted CIAs may not show errors during install.

    Example speeds installing Pokémon Ultra Moon, about 3.45 GB (does not include final step to install a ticket and seed):
    • Class 4 SD: 15 minutes, 15 seconds
    • Class 10 UHS-1 microSD: 2 minutes, 58 seconds
    • For comparison, FBI network install to a New 3DS with a Class 10 UHS-1 microSD: 48 minutes, 14 seconds
    Thanks to wwylele and his work on save3ds which has made modifying title.db on PC possible.

    Please read the README for usage details.
    https://github.com/ihaveamac/custom-install
     
  2. CPG

    CPG nut.jpg

    Member
    4
    GBAtemp Patron
    CPG is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Aug 9, 2016
    Canada
    GBATemp why are you letting us write anything here
    Seems really cool! Going to try it out right now!!
     
  3. Nomi20

    Nomi20 GBAtemp Regular

    Member
    4
    May 14, 2016
    United States
    Montana
    This is awesome! I will test it out as soon as possible!
     
  4. raxadian

    raxadian GBAtemp Maniac

    Member
    5
    Nov 10, 2018
    Argentina
    This is sure convenient and might save time. That being said I do tend to do other things when my 3DS is installing Cias, like play with my PSP, my Switch or in my PC. Or watch videos on Youtube using my smartphone.
     
  5. osaka35

    osaka35 Instructional Designer

    Moderator
    12
    GBAtemp Patron
    osaka35 is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Nov 20, 2009
    United States
    Silent Hill
    brilliant. this is what i needed to get my 3ds back out of its case. excellent work.
     
    silvershadow likes this.
  6. wownmnpare

    wownmnpare GBAtemp Fan

    Member
    5
    Jan 9, 2014
    United States
    So no more double size needed to install?
     
  7. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
    Double size was required if you copied the file to the SD and installed from that. It wasn't required for network install as the file was being installed during the transfer.

    What this does differently is write the contents of the CIA directly to the SD, which is much faster than waiting for the 3DS to do it. This wasn't possible for a long time since there didn't exist any tools to read and write to "title.db" which is what keeps track of installed titles, as well as to generate "cmd" files which verify installed contents.
     
    Last edited by ihaveamac, Nov 4, 2019
  8. lone_wolf323

    lone_wolf323 GBAtemp Addict

    Member
    9
    May 27, 2011
    Canada
    Does the custom install finalize need to be ran after each game installed this way or just once after you got what ya want done?
     
  9. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
    custom-install-finalize is used to install tickets and seeds. It only has to be run once after using the script. custom-install.py writes a file to the SD card (cifinish.bin) containing this information.
     
    Last edited by ihaveamac, Nov 4, 2019
  10. Reploid

    Reploid GBAtemp Advanced Maniac

    Member
    10
    Jan 20, 2010
    Serbia, Republic of
    I wish we had it for years
     
  11. PokemonTotalWar

    PokemonTotalWar Member

    Newcomer
    1
    Oct 9, 2018
    United States
    Meadville, PA
    This might be a silly question, but if someone were to pull moveable.sed and boot9.bin, and not finish installing any CFW, would this still work, or does it rely on anything CFW provides? Essentially, provided the files are from the 3DS, would this work on stock FW?

    EDIT: Looks like no, because we need to be able to run a 3dsx file?
     
    Last edited by PokemonTotalWar, Nov 4, 2019
  12. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
    If you only ever install signed games that the system already has a ticket for from the eShop, you could do that, if you somehow obtain the title contents without having a system to get them from. This is not really worth it though.
     
  13. PokemonTotalWar

    PokemonTotalWar Member

    Newcomer
    1
    Oct 9, 2018
    United States
    Meadville, PA
    Interesting, okay. Yeah, I'm not sure if there's any real use-case for that, I was just curious. Thanks! Great work. If I'm ever installing any sizeable CIAs in the future, I know how I'm doing it.
     
  14. Kwyjor

    Kwyjor GBAtemp Advanced Fan

    Member
    5
    May 23, 2018
    Canada
    So does this that title.db has no more mysteries? It seems like there are many tales out there of title.db getting corrupted (leaving mysterious entries in the list of installed titles that wreak havoc when people try to remove them).

    A much sillier question: will custom-install-finalize.3dsx run if you chainload Luma from ntrboot? (It is of course a very silly question because nobody chainloads Luma from ntrboot.)
     
  15. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
    Probably, we have all the resources to re-build a title.db from existing title contents. There's still the chance of titles doing something weird that our own title info entries don't have.
    As long as you can run 3dsx homebrew with the required permissions I don't see why it wouldn't.
     
  16. b17bomber

    b17bomber GBAtemp Advanced Fan

    Member
    6
    Jun 15, 2009
    United States
    How does one dump boot9.bin and movable.sed?
     
  17. ihaveamac
    OP

    ihaveamac GBAtemp Guru

    Member
    16
    Apr 20, 2015
    United States
  18. b17bomber

    b17bomber GBAtemp Advanced Fan

    Member
    6
    Jun 15, 2009
    United States
    thank you. I think maybe I should wait for a GUI though. I did do the command prompt setups though at the beginning.
     
  19. KirovAir

    KirovAir Dutch Alcoholic Programmer

    Member
    6
    Dec 7, 2006
    Netherlands
    Netherlands
    Yes! This will make setting up a ‘fresh’ 3DS a breeze! Thanks a lot for this.
     
  20. iron_man99

    iron_man99 Advanced Member

    Newcomer
    3
    Mar 19, 2010
    United States
    Ocarina of Time Install reduced from 20-30 minutes to just under 10-20 seconds. That's what i call revolutionary.
     
    ry755, Subtle Demise and Loko4 like this.
Quick Reply
Draft saved Draft deleted
Loading...