Also build inject .apps with banners
This commit is contained in:
parent
d48921c25d
commit
a325db2942
3 changed files with 16 additions and 10 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,4 +1,5 @@
|
|||
# Custom ignore files
|
||||
work/
|
||||
*.app
|
||||
*.cia
|
||||
*.zip
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
**Universal Inject Generator**
|
||||
|
||||
|
||||
This script will generate an inject-ready app to inject over the Health & Safety app in the 3DS console. The package includes code by @Syphurith, CTRtool (by profi200) and 3DStool (by dnasdw).
|
||||
This script will generate inject-ready apps from homebrew CIAs to inject over the Health & Safety app in the 3DS console. The package includes code by @Syphurith, CTRtool (by profi200) and 3DStool (by dnasdw).
|
||||
|
||||
This is used in conjunction with most recent (mine) Decrypt9's "Dump Health&Safety" and "Inject Health&Safety" features. You can only inject .apps smaller or equal in size to the original H&S app. Decrypt9 has a safety check build in and won't proceed with bigger ones. Per CIA, two inject apps will be created - with and without banner - the one with a banner is preferable, but may be to large to inject.
|
||||
|
||||
This is how it works:
|
||||
* This is used in conjunction with most recent (mine) Decrypt9's "Dump Health&Safety" and "Inject Health&Safety" features.
|
||||
* Put hs.app (dumped via Decrypt9) plus as many homebrew CIAs as you like into the input folder.
|
||||
* Run go.bat, you'll get one inject-ready .app per CIA.
|
||||
* If the last one for some reason doesn't work, you may try deep-decrypting (via Decrypt9) your CIAs first.
|
||||
* To inject, rename inject-ready .app to hs.app, put it into the root of your 3DS SD card and inject via Decrypt9.
|
||||
* You can only inject .apps smaller or equal in size to the original H&S app. Decrypt9 has a safety check build in and won't proceed with bigger ones.
|
||||
|
||||
You should always generate your inject-ready .apps yourself and never take ones from other persons. There might be a version mismatch in the H&S app, leading to it not working otherwise.
|
||||
|
||||
|
|
|
@ -25,9 +25,10 @@ tools\3dstool -x -f work\inject_exefs.bin --exefs-dir work\inject_exefs
|
|||
echo.
|
||||
echo [+] GENERATE NEW EXEFS
|
||||
copy /y /v work\inject_exefs\code.bin work\hs_exefs\code.bin
|
||||
rem copy /y /v work\inject_exefs\banner.bnr work\hs_exefs\banner.bnr
|
||||
rem copy /y /v work\inject_exefs\icon.icn work\hs_exefs\icon.icn
|
||||
tools\3dstool -c -z -t exefs -f work\hs_mod_exefs.bin --exefs-dir work\hs_exefs --header work\hs_exefs.bin
|
||||
copy /y /v work\inject_exefs\banner.bnr work\hs_exefs\banner.bnr
|
||||
copy /y /v work\inject_exefs\icon.icn work\hs_exefs\icon.icn
|
||||
tools\3dstool -c -z -t exefs -f work\hs_mod_banner_exefs.bin --exefs-dir work\hs_exefs --header work\hs_exefs.bin
|
||||
|
||||
echo.
|
||||
echo [+] GENERATE NEW ROMFS
|
||||
|
@ -41,9 +42,13 @@ tools\MergeExHeader work\inject_exhdr.bin work\hs_exhdr.bin work\merge_exhdr.bin
|
|||
|
||||
echo.
|
||||
echo [+] REBUILD HS INJECT APP
|
||||
if exist work\hs_logo.bin (tools\3dstool -c -t cxi -f %~n1.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --logo work\hs_logo.bin --exefs work\hs_mod_exefs.bin --romfs work\dummy_romfs.bin) else (tools\3dstool -c -t cxi -f %~n1.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --exefs work\hs_mod_exefs.bin --romfs work\dummy_romfs.bin)
|
||||
if exist work\hs_logo.bin (tools\3dstool -c -t cxi -f %~n1_inject_no_banner.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --logo work\hs_logo.bin --exefs work\hs_mod_exefs.bin --romfs work\dummy_romfs.bin) else (tools\3dstool -c -t cxi -f %~n1_inject_no_banner.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --exefs work\hs_mod_exefs.bin --romfs work\dummy_romfs.bin)
|
||||
if exist work\hs_logo.bin (tools\3dstool -c -t cxi -f %~n1_inject_with_banner.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --logo work\hs_logo.bin --exefs work\hs_mod_banner_exefs.bin --romfs work\dummy_romfs.bin) else (tools\3dstool -c -t cxi -f %~n1_inject_with_banner.app --header work\hs_hdr.bin --exh work\merge_exhdr.bin --plain work\hs_plain.bin --exefs work\hs_mod_banner_exefs.bin --romfs work\dummy_romfs.bin)
|
||||
for %%i in (work\hs.app) do set HS_ORIGINAL_SIZE=%%~zi
|
||||
for %%i in (%~n1.app) do set HS_INJECT_SIZE=%%~zi
|
||||
echo [*] HS APP ORIGINAL SIZE: %HS_ORIGINAL_SIZE% byte
|
||||
echo [*] HS APP INJECT SIZE : %HS_INJECT_SIZE% byte
|
||||
if HS_ORIGINAL_SIZE LSS HS_INJECT_SIZE (echo [!] INJECT APP IS BIGGER THAN HS APP) else (echo [+] SIZE IS OKAY!)
|
||||
for %%i in (%~n1_inject_no_banner.app) do set HS_INJECT_N_SIZE=%%~zi
|
||||
for %%i in (%~n1_inject_with_banner.app) do set HS_INJECT_B_SIZE=%%~zi
|
||||
echo [+] HS APP ORIGINAL SIZE : %HS_ORIGINAL_SIZE% byte
|
||||
echo [+] HS APP INJECT (N) SIZE: %HS_INJECT_N_SIZE% byte
|
||||
if HS_ORIGINAL_SIZE LSS HS_INJECT_N_SIZE (echo [!] INJECT APP IS BIGGER THAN HS APP)
|
||||
echo [+] HS APP INJECT (B) SIZE: %HS_INJECT_B_SIZE% byte
|
||||
if HS_ORIGINAL_SIZE LSS HS_INJECT_B_SIZE (echo [!] INJECT APP IS BIGGER THAN HS APP)
|
||||
|
|
Loading…
Reference in a new issue