Luma3DS firmware, patched to enable support for 3GX plugins.
This repository has been archived on 2022-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Asuka Amari 8f03234e58 screenshots now use timestamps as name
Instead of being called top_XXXX.bmp where XXXX means nothing,
screenshots are now called YYYY-MM-DD_HH-MM-SS.mmm_top.bmp (and same
idea for bot and top_right).

First obvious consequence, this is easier to manage in a file browser.
Now you have screenshots grouped by time, and you also have the 2 or 3
related screenshots (top, bot, top_right) close one to another.

Another consequence is that there is no need to go through existing
screenshots to find an unused number. Now osGetTime takes care of
everything. And going through files was a very time consuming process.
Now screenshots only need 4 (or 6 if 3D) seconds to be saved (instead of
40 seconds if you had 200 screenshots in your directory already).

Conflicts may happen when people change the date and time on their 3DS,
but that's why I even included milliseconds in the timestamp. People
don't set date and time everyday and they'd be unlucky to take a
screenshot at the exact time, milliseconds included, as another
screenshot right after setting the time one hour earlier...

Source for converting seconds since 1970 (or 1900...) to date and time:
https://stackoverflow.com/questions/21593692/
2017-11-18 16:37:35 +01:00
.github fix discord invite link 2017-10-14 10:10:03 -07:00
arm11 Detect NTRCARD and FIRM1 boot sources properly... 2017-08-19 01:40:55 +02:00
chainloader Update FIRM loading magic, only deinit LCDs if they are inited, fix ntrboot naming 2017-09-07 05:24:43 +02:00
exceptions Update makefile 2017-10-12 20:56:47 +02:00
k11_extension Always patch FS and P9, remove SM service checks 2017-11-02 21:52:14 +01:00
patches Fix firmlaunch payload path bug 2017-06-14 02:05:32 +02:00
source Always patch FS and P9, remove SM service checks 2017-11-02 21:52:14 +01:00
sysmodules screenshots now use timestamps as name 2017-11-18 16:37:35 +01:00
.gitignore Add macOS building support (you need to install coreutils and gnu-sed with homebrew) 2017-06-26 16:29:04 +02:00
LICENSE.txt LICENSE update (GPLv3) 2015-08-14 22:47:21 -04:00
linker.ld Begin turning Luma3DS into a proper firm 2017-06-02 19:34:46 +02:00
Makefile Integrate 3ds_pxi and 3ds_sm 2017-11-02 15:11:55 +01:00
README.md Update README.md 2017-09-26 14:44:14 -07:00

Luma3DS

Noob-proof (N)3DS "Custom Firmware"

What it is

Luma3DS is a program to patch the system software of (New) Nintendo 3DS handheld consoles "on the fly", adding features (such as per-game language settings and debugging capabilities for developers) and removing restrictions enforced by Nintendo (such as the region lock). It also allows you to run unauthorized ("homebrew") content by removing signature checks.
To use it, you will need a console capable of running homebrew software on the ARM9 processor. We recommend Plailect's guide for details on how to get your system ready.

Since Luma3DS v8.0, Luma3DS has its own in-game menu, triggerable by L+Down+Select (see the release notes).


Compiling

First you need to clone the repository with: git clone https://github.com/AuroraWright/Luma3DS.git
To compile, you'll need armips and a build of a recent commit of makerom added to your PATH. You'll also need to install firmtool, its README contains installation instructions. You'll also need to update your libctru install, building from the latest commit.
Here are Windows and Linux builds of armips (thanks to who compiled them!) and makerom (thanks @Steveice10!).
Run make and everything should work!
You can find the compiled files in the out folder.


Setup / Usage / Features

See https://github.com/AuroraWright/Luma3DS/wiki


Credits

See https://github.com/AuroraWright/Luma3DS/wiki/Credits


Licensing

This software is licensed under the terms of the GPLv3.
You can find a copy of the license in the LICENSE.txt file.