More actions
(Created page with "{{Infobox Switch Homebrews |title=Hacbuild |image=hacbuildswitch.png |description=Build Nintendo Switch XCI and HFS0 files. |author=LucaCorigliano |lastupdated=2018/06/29 |type=PC Utilities |version=1.0.0.1 |license=MIT |download=https://dlhb.gamebrew.org/switchhomebrews/hacbuildswitch.7z |website=https://gbatemp.net/threads/hacbuild-the-xci-rebuilder.509412/ |source=https://github.com/LucaCorigliano/hacbuild |donation= }} {{#seo: |title=Switch Homebrew PC Tools (PC Util...") |
No edit summary |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox Switch Homebrews | {{Infobox Switch Homebrews | ||
|title= | |title=hacbuild | ||
|image= | |image=hacbuildnx.png | ||
|description=Build Nintendo Switch XCI and HFS0 files. | |description=Build Nintendo Switch XCI and HFS0 files. | ||
|author=LucaCorigliano | |author=LucaCorigliano, JulesOnTheRoad | ||
|lastupdated=2018/ | |lastupdated=2018/11/04 | ||
|type=PC Utilities | |type=PC Utilities | ||
|version=1 | |version=1.1 | ||
|license=MIT | |license=MIT | ||
|download=https://dlhb.gamebrew.org/switchhomebrews/ | |download=https://dlhb.gamebrew.org/switchhomebrews/hacbuildnx.7z | ||
|website=https://gbatemp.net/threads/hacbuild-the-xci-rebuilder.509412/ | |website=https://gbatemp.net/threads/hacbuild-the-xci-rebuilder.509412/post-8256146 | ||
|source=https://github.com/LucaCorigliano/hacbuild | |source=https://github.com/LucaCorigliano/hacbuild | ||
|donation= | |donation= | ||
}} | }} | ||
hacbuild is a utility to rebuild Switch GameCards (XCI) made by LucaFraga. | |||
Original version can be found [https://github.com/LucaFraga/hacbuild here]. | |||
This is the revised version made by JulesOnTheRoad. | |||
==Features== | |||
*Builds\rebuilds xci files and hfs0 partitions and root.hfs0 files. | |||
*Rebuilds hfs0 partitions with less padding than the official ones. | |||
*Reads xci files to obtain game_info files. | |||
*Can build empty hfs0 partitions. | |||
==User guide== | |||
xci auto builder: Builds a XCI from a directory containing the folders 'normal', 'secure' and 'update' and a 'game_info.ini' file. <br> | |||
<code>hacbuild.exe xci_auto <input_folder> <output_file></code> | |||
xci auto builder with file deletion while building: Same but with input folders and temporal file deletion while building. <br> | |||
<code>hacbuild.exe xci_auto_del <input_folder> <output_file></code> | |||
Manual builder for xci from root.hfs0: Builds a XCI from a directory containing 'root.hfs' and 'game_info.ini'. <br> | |||
<code>hacbuild.exe xci <input_folder> <output_file></code> | |||
root.hfs0 auto builder: Builds a root.hfs0 from a directory containing the folders 'normal', 'secure' and 'update'. <br> | |||
<code>hacbuild.exe rhfs0_auto <input_folder></code> | |||
root.hfs0 auto builder with file deletion while building: Same but with input folders and temporal file deletion while building. <br> | |||
<code>hacbuild.exe rhfs0_auto_del <input_folder></code> | |||
Manual builder for hfs0 (normal/secure/update): Builds a hfs0 partition. <br> | |||
<code>hacbuild.exe hfs0 <input_folder> <output_file></code> | |||
Manual builder for root.hfs0: Builds a hfs0 partition, currently it needs a multiplier, needs work to read the multiplier from input hfs0 files. <br> | |||
<code>hacbuild.exe root_hfs0 <input_folder> <output_file> <multiplier></code> | |||
Get 'game_info' file named as file input name: Get game_info file named as the input xci in the folder you set. <br> | |||
<code>hacbuild.exe read xci <input_file> <output_folder></code> | |||
Get 'game_info' file named as gameinfo.ini: Get game_info file named as gameinfo.ini in the folder you set. <br> | |||
< | <code>hacbuild.exe read xci <input_file> <output_folder></code> | ||
===Limitations=== | |||
*The Switch don't like secure partition with less than 4 files inside. | |||
*You can put several content inside the secure partition but you can't put more than 8 different games inside. It may be due to horizon qlauncher, it *May be able to read them without error with a custom launcher. | |||
*Only tickets for updates get read by horizon inside the secure partition. | |||
*Still need to make code to generate automatically the multiplier when building a root hfs0 from other hfs0 partitions | |||
==Screenshots== | ==Screenshots== | ||
https://dlhb.gamebrew.org/switchhomebrews/ | https://dlhb.gamebrew.org/switchhomebrews/hacbuildnx2.png | ||
==Changelog== | ==Changelog== | ||
''' | '''v1.1''' (by julesontheroad) | ||
* | * Erased need for XCI Header Key. | ||
* Readapted hfs0manager to build hfs0 partitions with hashregions bigger than 0x200. | |||
* Added new functions. | |||
'''v1.0.0.1 2019/06/29''' | |||
* Fixes buffer overflow with larger files. | |||
'''v1.0.0.1 2019/06/29''' (by LucaCorigliano) | |||
* This should fix Issue #5 for good now. | |||
* Removed all possibilities of UInt32 overflow. | |||
==Credits== | |||
Credits and useful links: | |||
*[https://github.com/LucaFraga/hacbuild Original hacbuild] by LucaFraga hacbuild was inspired by: | |||
*[https://github.com/SciresM/hactool hactool] by SciresM. | |||
*[https://github.com/jakcron/NXTools NXTools] by jackron We'd also like to thank [http://switchbrew.org/index.php?title=Main_Page SwitchBrew] for their extensive research and documentation of the Nintendo Switch. | |||
== External links == | == External links == | ||
* | * GitHub - https://github.com/julesontheroad/hacbuild | ||
* | * GitHub - https://github.com/LucaCorigliano/hacbuild | ||
* | * GBAtemp - https://gbatemp.net/threads/hacbuild-the-xci-rebuilder.509412/post-8256146 |
Latest revision as of 01:12, 7 Haziran 2023
hacbuild | |
---|---|
General | |
Author | LucaCorigliano, JulesOnTheRoad |
Type | PC Utilities |
Version | 1.1 |
License | MIT License |
Last Updated | 2018/11/04 |
Links | |
Download | |
Website | |
Source | |
hacbuild is a utility to rebuild Switch GameCards (XCI) made by LucaFraga.
Original version can be found here.
This is the revised version made by JulesOnTheRoad.
Features
- Builds\rebuilds xci files and hfs0 partitions and root.hfs0 files.
- Rebuilds hfs0 partitions with less padding than the official ones.
- Reads xci files to obtain game_info files.
- Can build empty hfs0 partitions.
User guide
xci auto builder: Builds a XCI from a directory containing the folders 'normal', 'secure' and 'update' and a 'game_info.ini' file.
hacbuild.exe xci_auto <input_folder> <output_file>
xci auto builder with file deletion while building: Same but with input folders and temporal file deletion while building.
hacbuild.exe xci_auto_del <input_folder> <output_file>
Manual builder for xci from root.hfs0: Builds a XCI from a directory containing 'root.hfs' and 'game_info.ini'.
hacbuild.exe xci <input_folder> <output_file>
root.hfs0 auto builder: Builds a root.hfs0 from a directory containing the folders 'normal', 'secure' and 'update'.
hacbuild.exe rhfs0_auto <input_folder>
root.hfs0 auto builder with file deletion while building: Same but with input folders and temporal file deletion while building.
hacbuild.exe rhfs0_auto_del <input_folder>
Manual builder for hfs0 (normal/secure/update): Builds a hfs0 partition.
hacbuild.exe hfs0 <input_folder> <output_file>
Manual builder for root.hfs0: Builds a hfs0 partition, currently it needs a multiplier, needs work to read the multiplier from input hfs0 files.
hacbuild.exe root_hfs0 <input_folder> <output_file> <multiplier>
Get 'game_info' file named as file input name: Get game_info file named as the input xci in the folder you set.
hacbuild.exe read xci <input_file> <output_folder>
Get 'game_info' file named as gameinfo.ini: Get game_info file named as gameinfo.ini in the folder you set.
hacbuild.exe read xci <input_file> <output_folder>
Limitations
- The Switch don't like secure partition with less than 4 files inside.
- You can put several content inside the secure partition but you can't put more than 8 different games inside. It may be due to horizon qlauncher, it *May be able to read them without error with a custom launcher.
- Only tickets for updates get read by horizon inside the secure partition.
- Still need to make code to generate automatically the multiplier when building a root hfs0 from other hfs0 partitions
Screenshots
Changelog
v1.1 (by julesontheroad)
- Erased need for XCI Header Key.
- Readapted hfs0manager to build hfs0 partitions with hashregions bigger than 0x200.
- Added new functions.
v1.0.0.1 2019/06/29
- Fixes buffer overflow with larger files.
v1.0.0.1 2019/06/29 (by LucaCorigliano)
- This should fix Issue #5 for good now.
- Removed all possibilities of UInt32 overflow.
Credits
Credits and useful links:
- Original hacbuild by LucaFraga hacbuild was inspired by:
- hactool by SciresM.
- NXTools by jackron We'd also like to thank SwitchBrew for their extensive research and documentation of the Nintendo Switch.