mirror of
https://github.com/hacks-guide/finalize.git
synced 2024-11-23 09:09:40 +00:00
commit
b8eed7ad38
26
docs.md
26
docs.md
@ -1,5 +1,5 @@
|
||||
# Troubleshooting script errors
|
||||
*As of v1.8.0 (2024/04/07)*
|
||||
*As of v1.9.0 (2024-09-15)
|
||||
|
||||
## Script-integrated error checking (finalize.gm9)
|
||||
|
||||
@ -97,7 +97,13 @@
|
||||
|
||||
- **ERROR**: "Error #14b: CIA install fail" (also: 14c, 14d, 14e, 14f)
|
||||
- **CAUSE**: CIA after Anemone3DS is corrupt, so at least one CIA succeeded installation but one of them failed
|
||||
- **FIX**: Most likely a corrupt file, so have user replace file in SD:/finalize (14b = Checkpoint; 14c = FBI; 14d = ftpd; 14e = HBL; 14f = U-U). Alternatively, title.db issue, so if possible, have user delete `Nintendo 3DS` folder, have 3DS regenerate it, and try again. Alternatively, sketchy SD card (check for errors).
|
||||
- **FIX**: Most likely a corrupt file, so have user replace file in SD:/finalize (14b = Checkpoint; 14c = FBI; 14d = ftpd; 14e = HBL; 14f = U-U). Alternatively, title.db issue, so if possible, have user delete `Nintendo 3DS` folder, have 3DS regenerate it, and try again. Alternatively, sketchy SD card (check for errors). INSTALLFLAG can also be used to skip CIA installation if you've already done so via FBI.
|
||||
|
||||
---
|
||||
|
||||
- **ERROR**: "Error #14g: CIA install fail"
|
||||
- **CAUSE**: Anemone3DS failed to install, but the graphics at the top (error14a.png) are also missing. Chances are files didn't get copied from finalize.romfs, somehow.
|
||||
- **FIX**: Re-run finalize_helper and try again.
|
||||
|
||||
---
|
||||
|
||||
@ -150,7 +156,21 @@
|
||||
|
||||
---
|
||||
|
||||
> NOTE: There is no error #20; I have no idea why I skipped them, I think I thought I already used them when I didn't
|
||||
- **ERROR**: "Fatal Error #30: Missing console-unique files"
|
||||
- **CAUSE**: Some console-unique files are missing from NAND. Chances are the console was tampered with at some point.
|
||||
- **FIX**: ??? (This probably shouldn't happen in the first place, and if console-uniques are permanently gone then there's probably not much that can be done in terms of recovering them)
|
||||
|
||||
- **ERROR**: "Fatal Error #31: Missing encryption key"
|
||||
- **CAUSE**: The console has no movable.sed on NAND. Chances are the console was tampered with at some point.
|
||||
- **FIX**: Try to find correct movable.sed (essentials backup, NAND backup), and move it to `1:/private`.
|
||||
|
||||
- **ERROR**: "Fatal Error #32: Nintendo 3DS folder is inaccessible"
|
||||
- **CAUSE**: Unknown. Possibly a wonky SD card?
|
||||
- **FIX**: Try another SD card?
|
||||
|
||||
- **ERROR**: "Information #33: Empty Nintendo 3DS folder"
|
||||
- **CAUSE**: Chances are the user created the Nintendo 3DS folder by themselves.
|
||||
- **FIX**: Boot into HOME Menu with SD inserted so that HOME Menu management data can be created. Then, re-run the script.
|
||||
|
||||
---
|
||||
|
||||
|
@ -1,13 +1,51 @@
|
||||
# Script for https://3ds.hacks.guide/finalizing-setup
|
||||
# Ver. 1.8.0 - Last modified: 2024-04-07
|
||||
# Ver. 1.9.0 - Last modified: 2024-09-15
|
||||
# GodMode9 scripts can be dangerous!
|
||||
# Visit https://gist.github.com/lilyuwuu/8a7ce43263fe498b7fb0a403ea5eaff3 to verify the integrity of this script.
|
||||
# Credits: GM9Megascript contributors ("Scripts from Plailect's Guide"), Mr. Burguers (SD card capacity check), ihaveamac (title.db stuff)
|
||||
# Visit https://github.com/hacks-guide/finalize/releases to verify the integrity of this script.
|
||||
# Credits: GM9Megascript contributors ("Scripts from Plailect's Guide"), Mr. Burguers (SD card capacity check), ihaveamac (title.db stuff), J0n_b0 (MSET9 check), Naim2000 (better Nintendo 3DS folder check)
|
||||
|
||||
rm -o -s 0:/luma/payloads/finalize_helper.firm
|
||||
rm -o -s 0:/luma/payloads/*_finalize_helper.firm
|
||||
|
||||
set PREVIEW_MODE "> Checking for problems...\nAsking for permission... ---\nInstalling homebrew... ---\nCopying GodMode9 to CTRNAND... ---\nCleaning up SD card... ---\nBacking up essential.exefs... ---\nBacking up NAND... ---"
|
||||
|
||||
# Check for missing essentials
|
||||
# BuildEssentialBackup() will return 1 (failure) if any of these files are missing. As well as nand_hdr.bin, but like lol
|
||||
|
||||
set MISSINGESSENTIAL ""
|
||||
set SEED ""
|
||||
|
||||
if find -s 1:/rw/sys/SecureInfo_A NULL
|
||||
elif find -s 1:/rw/sys/SecureInfo_B NULL
|
||||
else
|
||||
set MISSINGESSENTIAL "$[MISSINGESSENTIAL]SecureInfo\n" # Does GodMode9 support \t
|
||||
end
|
||||
|
||||
if find -s 1:/rw/sys/LocalFriendCodeSeed_B NULL
|
||||
elif find -s 1:/rw/sys/LocalFriendCodeSeed_A NULL
|
||||
else
|
||||
set MISSINGESSENTIAL "$[MISSINGESSENTIAL]LocalFriendCodeSeed\n"
|
||||
end
|
||||
|
||||
if find -s 1:/private/movable.sed SEED
|
||||
else
|
||||
set MISSINGESSENTIAL "$[MISSINGESSENTIAL]movable.sed\n"
|
||||
end
|
||||
|
||||
# Check for missing essential.exefs
|
||||
|
||||
if not find S:/essential.exefs NULL
|
||||
if chk -u $[MISSINGESSENTIAL] ""
|
||||
set PREVIEW_MODE "0:/finalize/img/error30.png"
|
||||
echo "Fatal Error #30: Missing console-unique files\n \nThe following files are missing from the NAND:\n$[MISSINGESSENTIAL]\n \nAsk for help on Discord:\nhttps://discord.gg/MWxPgEp"
|
||||
poweroff
|
||||
else
|
||||
set PREVIEW_MODE "0:/finalize/img/error02.png"
|
||||
echo "Error #02: Missing essential.exefs\n \nessential.exefs does not exist.\nClose and re-open GodMode9,\nmaking sure to say Yes to the\n'Create essential files' popup."
|
||||
poweroff
|
||||
end
|
||||
end
|
||||
|
||||
# Check for missing Nintendo 3DS folder
|
||||
|
||||
if not find "0:/Nintendo 3DS" NULL
|
||||
@ -17,9 +55,39 @@ if not find "0:/Nintendo 3DS" NULL
|
||||
goto NOSPACE
|
||||
end
|
||||
|
||||
# Check for and attempt to fix edited MSET9
|
||||
# Okay, at this point, we have the Nintendo 3DS folder. But do we have A: ?
|
||||
|
||||
if find "0:/Nintendo 3DS/$[SYSID0]/????????????????????????????????_user-id1" CURRENT
|
||||
@IS_SYSNAND_SD_OK
|
||||
|
||||
if isdir A:
|
||||
goto SYSNAND_SD_OK
|
||||
end
|
||||
|
||||
# We don't. Why not?
|
||||
|
||||
if not shaget $[SEED]@110:10 NULL # This should end up failing normally if SEED is "". I'd hope. Someone test this.
|
||||
set PREVIEW_MODE "0:/finalize/img/error31.png"
|
||||
echo "Fatal Error #31: Missing encryption key\n \nThe system is missing movable.sed from NAND.\n(How did this happen...?)\n \nAsk for help on Discord:\nhttps://discord.gg/MWxPgEp"
|
||||
# At this stage, we have essential.exefs.
|
||||
# I could copy it. But how do we know that this isn't like, a failed/cancelled Manual Movable Moveover? The user might have been doing something.
|
||||
poweroff
|
||||
end
|
||||
|
||||
# Okay, we have an ID0. Is it there?
|
||||
|
||||
if not find "0:/Nintendo 3DS/$[SYSID0]" SYSID0PATH
|
||||
if find 0:/finalize/nospace NULL
|
||||
goto NOSPACE
|
||||
end
|
||||
|
||||
set PREVIEW_MODE "0:/finalize/img/error33.png"
|
||||
echo "Information #33: Empty Nintendo 3DS folder\n \nThe Nintendo 3DS folder has no data for this console.\nTurn on your console with the SD inserted,\nallow it to reach the HOME Menu, then run\nthis script again."
|
||||
reboot
|
||||
end
|
||||
|
||||
# Check for and attempt to fix edited MSET9 ID1
|
||||
|
||||
if find "$[SYSID0PATH]/????????????????????????????????_user-id1" CURRENT
|
||||
set PREVIEW_MODE "0:/finalize/img/error18a.png"
|
||||
echo "Error #18a: MSET9 detected\n \nID1 still affected by MSET9.\nAttempting to fix it.\n \nPress (A) to continue, then\nenter the key combo if prompted."
|
||||
allow "0:/Nintendo 3DS"
|
||||
@ -29,7 +97,7 @@ if find "0:/Nintendo 3DS/$[SYSID0]/????????????????????????????????_user-id1" CU
|
||||
echo "Fatal Error #19a: Could not remove MSET9\n \nFailed to rename ID1.\nPlease remove MSET9 manually.\nIf you continue to see this prompt,\nask for help on Discord:\nhttps://discord.gg/MWxPgEp"
|
||||
poweroff
|
||||
end
|
||||
if find "0:/Nintendo 3DS/$[SYSID0]/*sdmc*b9" MSET9ID1
|
||||
if find "$[SYSID0PATH]/*sdmc*b9" MSET9ID1
|
||||
if not rm -s $[MSET9ID1]
|
||||
set PREVIEW_MODE "0:/finalize/img/error19b.png"
|
||||
echo "Fatal Error #19b: Could not remove MSET9\n \nFailed to remove hax'd ID1.\nPlease remove MSET9 manually.\nIf you continue to see this prompt,\nask for help on Discord:\nhttps://discord.gg/MWxPgEp"
|
||||
@ -41,7 +109,7 @@ end
|
||||
|
||||
# Check for and attempt to delete hax'd MSET9
|
||||
|
||||
if find "0:/Nintendo 3DS/$[SYSID0]/*sdmc*b9" MSET9ID1
|
||||
if find "$[SYSID0PATH]/*sdmc*b9" MSET9ID1
|
||||
set PREVIEW_MODE "0:/finalize/img/error18b.png"
|
||||
echo "Error #18b: MSET9 detected\n \nMSET9 hax'd ID1 is still present.\n \nAttempting to fix it.\n \nPress (A) to continue, then\nenter the key combo if prompted."
|
||||
allow "0:/Nintendo 3DS"
|
||||
@ -58,15 +126,16 @@ end
|
||||
if chk $[FIXEDMSET9] YES
|
||||
set PREVIEW_MODE "0:/finalize/img/mset9_reinsert.png"
|
||||
switchsd "MSET9 has been removed.\n \nEject and reinsert your SD card to continue."
|
||||
goto IS_SYSNAND_SD_OK
|
||||
end
|
||||
|
||||
# Check for missing essential.exefs
|
||||
# SYSID0 path exists at this point, yet not SYSNAND SD. Why?
|
||||
|
||||
if not find S:/essential.exefs NULL
|
||||
set PREVIEW_MODE "0:/finalize/img/error02.png"
|
||||
echo "Error #02: Missing essential.exefs\n \nessential.exefs does not exist.\nClose and re-open GodMode9,\nmaking sure to say Yes to the\n'Create essential files' popup."
|
||||
poweroff
|
||||
end
|
||||
set PREVIEW_MODE "0:/finalize/img/error32.png"
|
||||
echo "Fatal Error #32: Nintendo 3DS folder is inaccessible\n \nCould not access the Nintendo 3DS folder.\n(How did this happen..?)\n \nAsk for help on Discord:\nhttps://discord.gg/MWxPgEp"
|
||||
poweroff
|
||||
|
||||
@SYSNAND_SD_OK
|
||||
|
||||
# Check for sufficient SD space
|
||||
|
||||
@ -97,6 +166,7 @@ else
|
||||
goto SDFREE_NEXT
|
||||
end
|
||||
end
|
||||
fdummy -o -s 0:/finalize/nospace 400
|
||||
if chk $[ONTYPE] O3DS
|
||||
set PREVIEW_MODE "0:/finalize/img/error04.png"
|
||||
echo "Error #04: No space\n \nInsufficient space on SD card.\nYou need 1.0GB, but you have $[SDFREE].\nMake some space, then try again.\n \nTIP: You can temporarily remove the Nintendo 3DS\nand DCIM folders from your SD card\nto make enough space."
|
||||
@ -181,6 +251,10 @@ set PREVIEW_MODE "Checking for problems... DONE\nAsking for permission... DONE\n
|
||||
# Install base homebrew applications
|
||||
|
||||
if not install 0:/finalize/Anemone3DS.cia
|
||||
if not find 0:/finalize/img/error14a.png NULL
|
||||
echo "Error #14g: CIA install fail\n \nA CIA (Anemone3DS) failed to install.\nAlso, script graphics are missing.\n \nTry re-running finalize_helper, or ask for help\non Discord: https://discord.gg/MWxPgEp"
|
||||
poweroff
|
||||
end
|
||||
set PREVIEW_MODE "0:/finalize/img/error14a.png"
|
||||
echo "Error #14a: CIA install fail\n \nA CIA (Anemone3DS) failed to install.\n \nTry replacing it with a freshly\ndownloaded copy, or ask for help\non Discord: https://discord.gg/MWxPgEp"
|
||||
poweroff
|
||||
@ -327,6 +401,8 @@ rm -o -s 0:/petitcom_eu.icn
|
||||
|
||||
## MSET9
|
||||
|
||||
rm -o -s 0:/MSET9-Windows.bat
|
||||
rm -o -s 0:/MSET9-macOS.command
|
||||
rm -o -s 0:/mset9.bat
|
||||
rm -o -s 0:/mset9.command
|
||||
rm -o -s 0:/mset9.py
|
||||
|
BIN
romfs/finalize/img/error30.png
Normal file
BIN
romfs/finalize/img/error30.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 54 KiB |
BIN
romfs/finalize/img/error31.png
Normal file
BIN
romfs/finalize/img/error31.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 53 KiB |
BIN
romfs/finalize/img/error32.png
Normal file
BIN
romfs/finalize/img/error32.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 54 KiB |
BIN
romfs/finalize/img/error33.png
Normal file
BIN
romfs/finalize/img/error33.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 38 KiB |
Loading…
Reference in New Issue
Block a user