Nintendo 3DS "Custom Firmware"
GPL-3.0 License
Bot releases are visible (Hide)
Published by AuroraWright almost 7 years ago
Here's our holiday gift to you :)
Note: BootNTR is broken in this version, unless you use the latest commit, not release from this repo: https://github.com/Nanquitas/BootNTR
Edit (20/12/17 18:28 EST): BootNTR Selector v2.10 has been released with support for Luma v9.0, you can now use the latest release instead of needing to manually compile the latest commit!
Notes on the changes made to Rosalina's debugger:
P.S: IDA 7.0 added client support for no-ack mode (Debugging options > Set specific options), which should be enabled to make debugging twice as smooth. "Use stepping support" should be unchecked.
Published by AuroraWright about 7 years ago
Note: given the efforts in supporting two separate codebases and the lack of confirmed issues which can be attributed to the changes in 8.1 compared to "legacy" Luma, we're discontinuing that branch. If you have an issue which you can reproduce on this release (test at least twice to make sure it can be reproduced) but not on a "legacy" build, please submit an issue to this GitHub repository. We will fully discontinue the "legacy" codebase in 2 weeks from now if no such issue is reported and verified.
We're taking donations to help a homeless friend who is in dire need for help.
Published by AuroraWright over 7 years ago
Existing software compatible with InputRedirection are InputRedirectionClient-Qt, InputClient-SDL, TPPFLUSH
We're taking donations to help a friend.
Published by TuxSH over 7 years ago
This major release introduces Rosalina, Luma3DS's custom system module, the functionalities of which are described below.
You'll need to upgrade to boot9strap v1.2 or higher.
Edit: please use newer releases!
boot.3dsx
is hblauncher_loader, but this can be changed at any time (Miscellaneous options > Switch the hb. title to the current app.) : simply launch any title, use that option, close the title ; the next time you launch that title, it will run boot.3dsx
EUR FR FR 01
-lctrud
and -lcitro3dd
instead of -lctru
and -lcitro3d
, -Og
instead of -O2
, drop -fomit-frame-pointer
build debug versions of your own applications.Use single-step support
, in the specific debugger options prompt, should be unchecked).catch syscall
, info os
, etc.80000000..B0000000
strongly ordered mapping (see below) as well as privileged memoryNow for some developer/technical details:
svcGetProcessInfo
: 0x10000 to get a process's name, 0x10001 to get a process's title ID, 0x10002 to 0x10007 for section attributes, 0x10008 for TTBR1, etc.svcGetSystemInfo
: 0x10000 for CFW info, 0x10001 for N3DS-related info, 0x10002 for TTBCR and TTBR0 per core, etc.svcGetThreadInfo
: 0x10000 for thread local storagecsvc.h
( ͡° ͜ʖ ͡°)svc 0xFE
svcKernelSetState
as well as the official debug handlers always believe that the unit is a development one. This is needed for the below itemsvcKernelSetState(6, 1, 1LL)
for user-specified exception handlers anymore.PA 00000000..30000000 -> VA 80000000..B0000000 [ Priv: RWX, User: RWX ] [ Shared, Strongly Ordered ]
(accessible from the GDB stub)ErrDisp
is not launched; err:f
has been reimplemented.Minor issues: the menu can sometime freeze in some games (that will be attempted to be fixed before next release), versions < 9.0 haven't been tested.
Published by AuroraWright over 7 years ago
Published by AuroraWright over 7 years ago
Published by AuroraWright over 7 years ago
Unfortunate events related to moderator censorship have occurred regarding the /r/3DShacks subreddit (read more on Plailect's guide). Given this we cannot, in good faith, support this subreddit or its IRC until there is a change in leadership and will no longer be participating.
Sorry for the many close releases, but some bugs were discovered regarding LayeredFS.
Published by AuroraWright over 7 years ago
Unfortunate events related to moderator censorship have occurred regarding the /r/3DShacks subreddit (read more on Plailect's guide). Given this we cannot, in good faith, support this subreddit or its IRC until there is a change in leadership and will no longer be participating.
Published by AuroraWright over 7 years ago
Unfortunate events related to moderator censorship have occurred regarding the /r/3DShacks subreddit (read more on Plailect's guide). Given this we cannot, in good faith, support this subreddit or its IRC until there is a change in leadership and will no longer be participating.
Published by AuroraWright over 7 years ago
Published by AuroraWright over 7 years ago
/luma/titles/<titleID>/code.ips
./luma/titles/<titleID>/romfs/
. Coupled with IPS code patching, this allows for easy legal distribution of game translations/hacks.We would like to thank anyone who helped testing LayeredFS!
Published by AuroraWright almost 8 years ago
Published by AuroraWright almost 8 years ago
luma
folder is located in /rw
and can be managed with tools like FBI and GodMode9. The EmuNAND options will also be automatically hidden.Please note that starting with this release, Luma won't support pre-patched FIRMs or other system titles with the same patches Luma does. Common pre-patched titles include NS, Home Menu, TWL_FIRM and AGB_FIRM (in these cases you will either get a svcBreak in loader or a shutdown when launching DS/GBA games). Clean versions of these titles need to be reinstalled before upgrading (the wiki will be updated with a walkthrough soon™).
Published by AuroraWright about 8 years ago
Luma3DS.dat
file isn't needed anymore with the new .3dsx (*hax, menuhax) launchers, arm9loaderhax.bin
(or the filename specified with the custom payload path) will be loaded directly.Reuploaded because people reported the CakeBrah .3dsx launchers wrongly displaying the .dat filename when arm9loaderhax.bin
was not found, Luma3DS itself was not updated.
Published by AuroraWright about 8 years ago
/luma/customversion_sys.txt
, /luma/customversion_emu.txt
, /luma/customversion_emu2.txt
. /luma/customversion_emu3.txt
. /luma/customversion_emu4.txt
)./luma/cetk
for /luma/firmware.bin
, /luma/cetk_twl
for /luma/firmware_twl.bin
, /luma/cetk_agb
for /luma/firmware_agb.bin
. /luma/cetk_safe
for /luma/firmware_safe.bin
) and New 3DS ARM9bin-decrypted firmware.bins./luma/path.txt
file, it must start with a /
. This path is also picked up by the above mentioned .dat chainloader.Reuploaded to fix a confusing typo in the config
Published by AuroraWright about 8 years ago
Both versions:
Published by AuroraWright about 8 years ago
Both versions:
Autoboot SysNAND
was unchecked, it became impossible to select the EmuNAND if having a corresponding directional pad payload. Now it's possible to do this by holding A + the directional pad button.customversion.txt
. You can now use symbols, including those special Nintendo font ones :Pv6.2.2: Fixed question marks at the beginning of the custom strings with files created by Windows Notepad.
Published by AuroraWright about 8 years ago
Both versions:
legacy
layout the minsize
layout (for RedNANDs only) and the default
layout are now also supportedb_NAME.bin
) to the chainloaderpinmessage.txt
in luma
(800 characters maximum)Ver.
string, it needs to be in a text file named customversion.txt
(19 characters maximum) in luma
, with the stock Nintendo string being Ver. %d.%d.%d-%d%ls
Use SysNAND FIRM if booting with R
option is selected, FIRM will be loaded from the default EmuNAND instead of the first one and you can choose a different one with the directional pad, in the same way you would select the EmuNANDNew 3DS CPU
setting on Old 3DSDev version:
Published by AuroraWright about 8 years ago
On both branches:
On dev branch only:
Published by AuroraWright about 8 years ago
On both branches:
On dev branch only: