Skip to content

Commit

Permalink
docs/readme: update links & info
Browse files Browse the repository at this point in the history
readme: use new file paths
readme: separate between automatic builds and manual file placement
readme: minor grammar/word fixes
docs: update behaviour from #1
docs: fix a wrong word
  • Loading branch information
lilyuwuu committed Mar 14, 2024
1 parent d779515 commit 86c0974
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 13 deletions.
25 changes: 15 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

Scripts relating to Finalizing Setup on https://3ds.hacks.guide/finalizing-setup.

- [`/finalize/`](finalize): Files that are packed into `finalize.romfs`
- [`/finalize/img`](finalize/img): Images used for visual troubleshooting
- [`/finalize/finalize.gm9`](finalize/finalize.gm9): Script run after `finalize_helper.gm9` that:
- [`/romfs/finalize/`](romfs/finalize): Files that are packed into `finalize.romfs`
- [`/romfs/finalize/img`](romfs/finalize/img): Images used for visual troubleshooting
- [`/romfs/finalize/finalize.gm9`](romfs/finalize/finalize.gm9): Script run after `finalize_helper.gm9` that:
- Installs base homebrew applications to SYSNAND SD (see below for list)
- Copies GodMode9 to CTRNAND (`/rw/luma/payloads`)
- Backs up `essential.exefs` to `/gm9/backups`
- Deletes CFW installation files that are no longer necessary
- Backs up minsize NAND backup to `/gm9/backups`
- `/finalize/donor.db`: Empty title database used for consoles that do not have title database (i.e. no eShop software)
- `/romfs/finalize/donor.db`: Empty title database used for consoles that do not have title database (i.e. no eShop software)
- [`finalize_helper.gm9`](finalize_helper.gm9): Script that is compiled as GM9 scriptrunner (`finalize_helper.firm`); extracts `finalize.romfs`
- [`docs.md`](docs.md): Full error information / script documentation

Expand All @@ -24,27 +24,32 @@ The following repositories have their compiled builds in this software package:
- [ftpd](https://github.com/mtheall/ftpd)
- [Universal-Updater](https://github.com/Universal-Team/Universal-Updater/)
- [GodMode9](https://github.com/d0k3/GodMode9)
- [GM9Megascript](https://github.com/annson24/GM9Megascript) * Git repo deviates from GM9Megascript bundled with GM9
- [GM9Megascript](https://github.com/annson24/GM9Megascript) *Note: Git repo deviates from GM9Megascript bundled with GM9*

## Releases

Releases are tagged for reference (based on usage in the guide). **Releases in this repository are not intended to be for general use.** If you want to use them regardless:
Releases are tagged for reference (based on usage in the guide). **Releases in this repository are not intended to be for general use.** If you want to use them, you have two options:

### Automatically built binaries

Binaries are automatically built by [GitHub Actions](https://github.com/hacks-guide/finalize/actions/). Place `finalize_helper.firm` in `/luma/payloads/` and `finalize.romfs` on root of SD.

### Manual file placement

- Clone this repository (latest commit, or a tagged release if you are looking for a specific version)
- Copy the contents of `finalize` to the root of your console's SD card
- Copy the contents of `finalize` (inside of the `romfs` folder) to the root of your console's SD card
- Copy `finalize.gm9` from the `finalize` folder to `/gm9/scripts/`
- Copy `GodMode9.firm` from the `finalize` folder to `/luma/payloads/`
- Create any folders that do not exist
- Luma's `boot.firm` needs to be on root of SD for this to work

`finalize_helper` is not necessary unless you intend to use the RomFS build.


## Building

You need the following tools installed on your computer:
- [3dstool](https://github.com/dnasdw/3dstool/releases/latest)
- [devkitARM](https://devkitpro.org/wiki/Getting_Started)
- devkitARM is only required if you are building the FIRM, which you are going to want to anyway
- devkitARM is only required if you are building the FIRM, which you are going to want to do anyway
- Install the 3DS related packages

Clone the repository via the following commands:
Expand Down
5 changes: 2 additions & 3 deletions docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@
---

- **ERROR**: "Error #22: finalize.romfs is invalid"
- **CAUSE**: finalize.romfs does not match finalize_helper.firm's hardcoded checksum (corrupted SD? outdated file/)
- **CAUSE**: finalize.romfs does not match finalize_helper.firm's hardcoded checksum (corrupted SD? outdated file?)
- **FIX**: Replace finalize.romfs with freshly downloaded copy

---
Expand All @@ -152,7 +152,6 @@
- **ERROR**: "Error #24: SD is write-protected"
- **CAUSE**: Script failed to write "0:/WRITE" dummy file (thus, SD is locked)
- **FIX**: Tell user to unlock SD; if SD is unlocked, try tape-over-the-switch method, otherwise SD card is likely failing
- **NOTE** You can emulate this by creating a file named WRITE with no file extension on root of SD

---

Expand Down Expand Up @@ -190,7 +189,7 @@ The script checks for the instance of `SD:/gm9/flags/INSTALLFLAG` (no file exten

If BACKUPFLAG is triggered at the same time, "Setup complete!*" will take priority. The bottom screen will still warn the user that CIA installation has been skipped.

This flag can only be triggered by the user creating the file, and is intended to be used for debugging purposes (i.e. CIA installation works fine through GodMode9).
This flag can only be triggered by the user creating the file, and is intended to be used for debugging purposes (i.e. CIA installation works fine through FBI).

### Checksums (finalize.gm9) and changelog

Expand Down

0 comments on commit 86c0974

Please sign in to comment.