[3DS] Luma3DS V10.0 Released

The Italian developer AuroraWright after almost a year of absence on the scene Nintendo 3DS has released in great demand a new version of Luma3DS in version 10.0 It is a program to apply “on the fly” the system software of the (new) Nintendo 3DS portable consoles, adding features (such as language settings for gaming and debugging capabilities for developers) and removing restrictions imposed by Nintendo . It also allows you to perform unauthorized content (“homebrew”) by removing the signature controls. To use it, you need a console capable of running homebrews on the ARM9 processor.

This version is no longer compatible with NTR-CFW plugins! NTR is no longer officially supported by Luma3DS

Curiosity

Rosalina is a sysmodule customized with a myriad of features both for the developer and for the convenience of the end user, available after starting the 3DS. It consists of:

  • menu that can be opened at any time (combination: L + Down + Select , although it is possible to change it during execution), with:
    • A submenu with the list of processes (used to select the process to attack when the debugger is enabled)
    • A submenu of patch processes: FS and SM patches
    • A N3DS Clock + L2 submenu (hidden on O3DS)
    • A screenshot action. This is slow but it works
    • Other various options, see below
    • Displays the remaining battery percentage in the lower right of the screen, and in Luma3DS lower left
  • Input redirection :

    • Implementation thanks to @ Stary2001, based on ShinyQuagsire’s work
    • Allows you to control your 3DS using your PC, for example, an external controller (Xbox 360 controller, etc.)
    • It should work with every game with minimal delay
    • C-stick / ZL / ZR redirection is only on N3DS, perhaps only with newer games
    • Use  this client (compatible with XInput on Windows, evdev on Linux, it should be compatible with OSX) or this one
    • If you enable this feature in the Home menu, applications will be prevented from disconnecting the 3DS from the Internet while they are running. This takes effect until the next re-start
  • 3DSX upload

    • Thanks to @fincs
    • 3DSX files can now be loaded seamlessly, and work exactly like installed titles (meaning you can use the Home and applet menu while a 3DSX application is running, use the GDB stub (see below), etc. )!
    • No need for * HAX payloads!
    • By default, the title used for booting boot.3dsx is hblauncher_loader, but this can be changed at any time (Miscellaneous Options> Turn on the title hb for the current application ..): Simply launch any title, use this option, close the title; the next time you start that title, the will be executed boot.3dsx
    • HAX payloads no longer work. You must use the Homebrew menu version> = 2.0, which can be found here(and in the initial homebrew package later)
  • Improved  language emulation :
    • The emulation of the language (and region) should work for all games
    • It is now possible to specify a country (2 codes per letter) and a status ID (2 integer hexadecimal digits), for example: EUR FR FR 01
  • A full GDB stub functionality :
    • Network code and skeleton thanks to @ Stary2001
    • It can debug up to 3 processes simultaneously (the process of attaching must be selected in the process list menu)
      • Use the process menu when the debugger is able to select the processes to attach.
    • Use -lctrudand -lcitro3ddinstead of -lctruand -lcitro3d-Og instead of -O2,   -fomit-frame-pointer build debug versions of your applications.
    • Compatible with both GDB and IDA PRO:
      • The GDB stub requires a patch to work. This patch is finally integrated into devkitARM .
      • The GDB Stubs also work with IDA ( Use single-step support, in the specific debugger options that should be selected).
    • Breakpoint software, hardware watchpoints 2 (worldwide), all basic features and many more, such as catch syscallinfo os, etc.
    • He can access the 80000000..B0000000 strongly ordered mapping, as well as the privileged memory
    • If you enable this feature in the Home menu, applications will be prevented from disconnecting the 3DS from the Internet while they are running. This takes effect until the next restart

For developers and further technical details can be read at this link

CHANGELOG

v10.0

  • New feature: NTP client
    • Located in Rosalina’s “miscellaneous” submenu, this takes time from time1.google.com (hard-coded IP) by default
    • This sets the RTC offset of config savefile 0, so the displayed Home menu will also be the time that Arm9 programs such as GM9 will see
    • As a result, the Luma3DS Arm9 code will correctly set the date and time when changing or creating new files
  • New feature: blue light filters (thanks to  @panicbit  ,  # 1065  )
  • Lots of bug cheat engine fixes and improvements thanks to  @ piepie62  (plus PR), as well as  fixes by @ tstambaugh92  (  # 1116  ,  # 1117  )
    • most CTRPF-AR code types now supported
    • more cheats can be loaded simultaneously
  • New re-implemented sysmodule: pm
    • Number of max. pm: increased dbg sessions for using Rosalina
    • New pm commands: dbg: GetCurrentAppTitleIdAndPid, DebugNextApplicationByForce, LaunchTitleDebug (mainly for using gdbstub)
    • Debug restrictions resolved for gdbstub
    • Service restrictions revoked for Cubic Ninja
  • Many improvements to gdbstub:
    • Added support for startup debug application (new option in Debugger submenu)
    • Added support for target extended-remote
      • It is no longer necessary to select a process to connect to the process list using this, although it still works perfectly
      • You will see a nice list of processes in IDA
      • When launching new processes: it titleId [mediaType [launchFlags]]is only  supported, and the launched title should not rely on APT and all 3 parameters should be encoded in hexadecimal (see  e11cc09 )
    • Added support for accessing host files (including stdin / stdio / stderr) from target 3DS programs. Support for this has been added in libctru
    • Added support for accessing files on the destination SD card from the host (  remote put,  remote gete  remote delete)
    • Package size doubled
    • Many bug fixes
  • Fixed critical bugs in sm: one that caused a crash at the start of the camera applet when another title was using the camera, another could affect the sleep mode
  • Fixed a critical bug in which the Luma3DS Arm9 code sent spam to I2C requests, causing some particular commissions of Arm9 payloads on New3DS units with IPS screens to be disregarded. 
    If the problem still arises, put more payloads in the folder and use the chainloader menu to work around the problem
  • Reconstructed reconstruction system. Armor is no longer necessary  .
  • Always send errdisp errors to /luma/errdisp.txt
  • Updated FatFs to R0.13c
  • I2C driver updated in the Arm9 code
  • Correction screens that do not work on firm launch and signature errors will now be displayed on the screen
  • Patch 11.8+ Process9 NIM-related to send keys and IVs all-zero when the UNITINFO patch is enabled (thanks to  @luigoalma  ,  # 1142  )
  • Hide EmuNAND options when there are no EmuNANDs present on the console
  • Fix minor bugs involving automatic uploading of DS (i) titles
  • Many other bugfixes
  • Note: the reimplementation of pm currently breaks NTR CFW to some extent (particularly the game plugins). The abandoned “NTR CFW” is now not supported, although it may work.
    • We are working on a solution for future versions.
    • It may be possible to modify the NTR CFW source code in order not to inject itself into pm, since Luma3DS still removes the svc authorization checks, to mitigate the problem. We don’t have the time to do it alone
    • It is not possible to disable personalized pm

Also, thanks to  @fincs  , this version of Luma3DS comes bundled with version 2.1.0 of  the Homebrew menu  .

 

GUIDE

Because of censorship on the page Reddit  / r / 3DShacks you should use this guide  to  Plailect

The guide is reserved for retail consoles only (ie those purchased in-store, not those obtained through the Nintendo Developer Program)!

DOWNLOAD

Luma3DSv10.0.zip

SOURCE

Github