More actions
No edit summary |
m (Text replacement - "Category:Homebrew utility applications on 3DS" to "") |
||
(25 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox 3DS | {{Infobox 3DS Homebrews | ||
| title = 3DS | |title=3DS homemenu ext data Tool | ||
| image = | |image=3dsomemenuextdatatool2.png | ||
| type = | |description=Tool for accessing the SD extdata which Home Menu uses. This essentially allows writing custom themes to extdata which get loaded at Home Menu startup. | ||
| version = | |author=yellows8 | ||
| | |lastupdated=2015/07/09 | ||
| | |type=System Tools | ||
|version=1.1.1 | |||
| | |license=Mixed | ||
| source = https:// | |download=https://dlhb.gamebrew.org/3dshomebrews/3dshomemenuextdatatool.7z | ||
|website=https://github.com/yellows8/3ds_homemenu_extdatatool | |||
|source=https://github.com/yellows8/3ds_homemenu_extdatatool | |||
}} | }} | ||
3DS HomeMenu extdata Tool is a Nintendo 3DS homebrew tool for accessing the Home Menu SD extdata, this is usable from Ninjhax. This allows reading/writing the home-menu SD extdata SaveData.dat, and the extdata theme-cache. | |||
This essentially allows user to write custom themes to SD extdata, which home-menu will automatically load at Home Menu process next startup. | |||
==Installation== | |||
===Installing=== | |||
Available as 3DSX/SMDH. | |||
== Compiling == | ===Compiling=== | ||
This requires the latest ctrulib from git. | |||
If you build a CXI/CIA for this, the accessinfo must have bitmask 0x01 set (in the RSF that's <code>FileSystemAccess</code> with field <code>- CategorySystemApplication</code>). | |||
==User guide== | |||
===Before modifying=== | |||
Backing up [http://3dbrew.org/wiki/Extdata extdata] before modifying is recommended. | |||
You can copy the data from <code>sdmc:/Nintendo 3DS/{ID0}/{ID1}/extdata/00000000/{extdataIDlow}/</code> to elsewhere, where extdataIDlow is the extdataIDs for home-menu extdata and theme extdata. | |||
This | ===Theme-data=== | ||
The data this app reads/writes to/from sdmc is located in the same directory that the app runs from (SD root for CXI/CIA). The theme-data this app uses on sdmc is the following. | |||
'''ThemeManage.bin:''' | |||
* Copied from extdata to sdmc. | |||
* This can be copied to extdata from sdmc, if it doesn't exist on sdmc for that then data is generated for it then writen to extdata. | |||
'''BodyCache.bin, body_LZ.bin:''' | |||
* The former is copied from extdata to sdmc. | |||
* When copying from sdmc to extdata, the app will first attempt to use BodyCache.bin, then body_LZ.bin. | |||
* When ThemeManage.bin exists on sdmc with sdmc->extdata, this body-data is only copied when the size field in ThemeManage.bin for this is non-zero. | |||
* When copying to extdata, the filesize must be smaller than or exactly 0x150000-bytes. | |||
'''BgmCache.bin, bgm.bcstm:''' | |||
* Handled basically the same way as the body-data, except with the bgm sizes. | |||
* When copying to extdata, the filesize must be smaller than or exactly 0x337000-bytes. | |||
* When writing BGM to extdata, Home Menu must not be already using any BGM from the theme-cache (prior to when this tool wrote anything to extdata). | |||
===Main menu=== | |||
* Copy extdata SaveData.dat to sd - Option to backup your SaveData.dat to SD (this contains the current theme settings and other things). | |||
* Copy SaveData.dat from sd to extdata - Option to restore your SaveData.dat from SD. | |||
* Enable normal theme-cache - Enable using the theme-data from SD. Do not use this if you don't have any theme DLC installed, use the below menu option instead. | |||
* Enable persistent theme-cache - Same as above except the custom themes are persistent even without any theme DLC installed. | |||
* Copy theme-data from extdata to sd - Option to backup the theme-data stored in extdata. | |||
* Copy theme-data from sd to extdata - Option to write a custom theme to extdata. | |||
===How to import custom theme=== | |||
Place your edited body_LZ.bin from Theme Customisation Tools in sd:\3ds\3ds_homemenu_extdatatool or wherever your theme folder is. | |||
If you have a custom BCSTM file, rename it to BGM.bcstm and place it in the same folder. Then open 3ds_homemenu_extdatatool, enable theme cache and import theme cache from SD to ExtData. | |||
===Disable theme-cache=== | |||
To disable using the theme-cache, you can: | |||
* Either enter home-menu theme-settings then select none, restore a backup of SaveData.dat with this tool, restore the entire home-menu and/or theme extdata with the above backup. | |||
* Or delete the homemenu and/or theme extdata. | |||
== | ==Controls== | ||
D-Pad/C-Pad - Select a menu entry | |||
A - Enter a menu | |||
B - Return to the hbmenu | |||
==Known issues== | |||
Please refer to [https://github.com/yellows8/3ds_homemenu_extdatatool/issues reported issues]. | |||
== | ==Changelog== | ||
'''v1.1.1 2015/07/09''' | |||
* Updated for latest ctrulib+devkitARM. | |||
* Set the icon strings to proper values. | |||
* Replaced the 5-second-delay with a press-button-wait. | |||
'''v1.1 2015/01/06''' | |||
* Custom theme persistence even without any theme DLC installed, and other minor fixes/changes. | |||
* | |||
''' | '''v1.0 2014/12/31''' | ||
* Initial release. Extract this to the root of your SD for use with ninjhax. | |||
==External links== | |||
* | * GitHub - https://github.com/yellows8/3ds_homemenu_extdatatool | ||
* | * 3dbrew - http://3dbrew.org/wiki/Home_Menu |
Latest revision as of 05:41, 6 Mayıs 2024
3DS homemenu ext data Tool | |
---|---|
General | |
Author | yellows8 |
Type | System Tools |
Version | 1.1.1 |
License | Mixed |
Last Updated | 2015/07/09 |
Links | |
Download | |
Website | |
Source | |
3DS HomeMenu extdata Tool is a Nintendo 3DS homebrew tool for accessing the Home Menu SD extdata, this is usable from Ninjhax. This allows reading/writing the home-menu SD extdata SaveData.dat, and the extdata theme-cache.
This essentially allows user to write custom themes to SD extdata, which home-menu will automatically load at Home Menu process next startup.
Installation
Installing
Available as 3DSX/SMDH.
Compiling
This requires the latest ctrulib from git.
If you build a CXI/CIA for this, the accessinfo must have bitmask 0x01 set (in the RSF that's FileSystemAccess
with field - CategorySystemApplication
).
User guide
Before modifying
Backing up extdata before modifying is recommended.
You can copy the data from sdmc:/Nintendo 3DS/{ID0}/{ID1}/extdata/00000000/{extdataIDlow}/
to elsewhere, where extdataIDlow is the extdataIDs for home-menu extdata and theme extdata.
Theme-data
The data this app reads/writes to/from sdmc is located in the same directory that the app runs from (SD root for CXI/CIA). The theme-data this app uses on sdmc is the following.
ThemeManage.bin:
- Copied from extdata to sdmc.
- This can be copied to extdata from sdmc, if it doesn't exist on sdmc for that then data is generated for it then writen to extdata.
BodyCache.bin, body_LZ.bin:
- The former is copied from extdata to sdmc.
- When copying from sdmc to extdata, the app will first attempt to use BodyCache.bin, then body_LZ.bin.
- When ThemeManage.bin exists on sdmc with sdmc->extdata, this body-data is only copied when the size field in ThemeManage.bin for this is non-zero.
- When copying to extdata, the filesize must be smaller than or exactly 0x150000-bytes.
BgmCache.bin, bgm.bcstm:
- Handled basically the same way as the body-data, except with the bgm sizes.
- When copying to extdata, the filesize must be smaller than or exactly 0x337000-bytes.
- When writing BGM to extdata, Home Menu must not be already using any BGM from the theme-cache (prior to when this tool wrote anything to extdata).
- Copy extdata SaveData.dat to sd - Option to backup your SaveData.dat to SD (this contains the current theme settings and other things).
- Copy SaveData.dat from sd to extdata - Option to restore your SaveData.dat from SD.
- Enable normal theme-cache - Enable using the theme-data from SD. Do not use this if you don't have any theme DLC installed, use the below menu option instead.
- Enable persistent theme-cache - Same as above except the custom themes are persistent even without any theme DLC installed.
- Copy theme-data from extdata to sd - Option to backup the theme-data stored in extdata.
- Copy theme-data from sd to extdata - Option to write a custom theme to extdata.
How to import custom theme
Place your edited body_LZ.bin from Theme Customisation Tools in sd:\3ds\3ds_homemenu_extdatatool or wherever your theme folder is.
If you have a custom BCSTM file, rename it to BGM.bcstm and place it in the same folder. Then open 3ds_homemenu_extdatatool, enable theme cache and import theme cache from SD to ExtData.
Disable theme-cache
To disable using the theme-cache, you can:
- Either enter home-menu theme-settings then select none, restore a backup of SaveData.dat with this tool, restore the entire home-menu and/or theme extdata with the above backup.
- Or delete the homemenu and/or theme extdata.
Controls
D-Pad/C-Pad - Select a menu entry
A - Enter a menu
B - Return to the hbmenu
Known issues
Please refer to reported issues.
Changelog
v1.1.1 2015/07/09
- Updated for latest ctrulib+devkitARM.
- Set the icon strings to proper values.
- Replaced the 5-second-delay with a press-button-wait.
v1.1 2015/01/06
- Custom theme persistence even without any theme DLC installed, and other minor fixes/changes.
v1.0 2014/12/31
- Initial release. Extract this to the root of your SD for use with ninjhax.