Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

3DS:Error screens/Luma3DS exception screen: Difference between revisions

From Hacks Guide Wiki
(insert exception pic and how to read it - page WIP removed, and now i'm going to figure out how to overhaul the formatting of this page. i'll be back with that in a few days lmao)
m (minor wording fixes. also, i know my info's not perfect here, i just can't tell what parts are wrong. so, uh, have fun fixing my mistakes? i guess?)
Line 1: Line 1:
This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues.
This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues.
==Reading a Luma3DS exception screen==
==Reading a Luma3DS exception screen==
A Luma3DS exception has at least four different parts to it that must be interpreted to find the cause of an error, as follows:
A Luma3DS exception has four (or five, in a few cases) different parts to it that help in finding its cause, as follows:
[[File:Luma3DS_exception.png|center]]
[[File:Luma3DS_exception.png|center]]
* '''Processor:''' What part of the system is causing the exception. The two processors are:
* '''Processor:''' What part of the system is causing the exception. The two processors are:
**'''Arm9:''' The 'security processor' of the system. These exceptions usually result from errors in NAND data or hardware faults in either the 3DS or its SD.
**'''Arm9:''' The 'security processor' of the system. These exceptions usually result from errors in NAND data or hardware faults in either the 3DS or its SD.
**'''Arm11:''' The 'userland' of the system. These exceptions have numerous causes but are often related to broken software or user data.
**'''Arm11:''' The 'userland' of the system. These exceptions have numerous causes but are often related to broken software or user data.
* '''Exception type:''' How the system is causing the exception. These are often too broad of categories to be helpful, but three types are more precise:
* '''Exception type:''' How the system is causing the exception. These categories are often too broad to be helpful, but three of them are more precise:
**'''data abort''': Oftentimes related to a broken mod or broken HOME Menu data. Occasionally related to custom firmware data being broken.
**'''data abort''': Oftentimes related to a broken mod or broken HOME Menu data. Occasionally related to custom firmware data being broken.
**'''prefetch abort (svcBreak)''': Oftentimes an issue with data on the NAND, even when Arm11. Can also happen when launching an out-of-region game.
**'''prefetch abort (svcBreak)''': Oftentimes an issue with data on the NAND, even when Arm11. Can also happen when launching an out-of-region game.
**'''undefined instruction''': Usually either a broken piece of software (if not on boot) or outdated <code>boot.firm</code> (if on boot).  
**'''undefined instruction''': Usually either a broken piece of software (if not on boot) or outdated <code>boot.firm</code> (if on boot).  
*'''Fault status:''' Why the system is causing the exception. Normally not helpful for end-users.
*'''Fault status:''' Why the system is causing the exception. Normally not helpful except for developers.
*'''Current process:''' Where the error is coming from in the system. Often the most helpful part of the exception. Common or unique processes are as follows:  
*'''Current process:''' Where the error is coming from in the system. Often the most helpful part of the exception. Common or unique processes are as follows:  
**'''hid''': Potential hardware problems.
**'''hid''': Potential hardware problems.
Line 19: Line 19:
*'''R0''': Usually just internal data that's not worth reading. There are two notable exceptions, however:  
*'''R0''': Usually just internal data that's not worth reading. There are two notable exceptions, however:  
**'''Arm11 loader exception''': If R0's contents start with a C or D, R0 is an error code. This code usually gives the exact cause of the issue.
**'''Arm11 loader exception''': If R0's contents start with a C or D, R0 is an error code. This code usually gives the exact cause of the issue.
**'''Arm11 pm exception''': If R0's contents are <code>E0E01BF5</code>, <code>boot.firm</code> is too outdated to work.
**'''Arm11 pm exception''': If R0's contents are <code>E0E01BF5</code>, <code>boot.firm</code> is guaranteed to be too outdated to work.


==Known Errors==
==Known Errors==

Revision as of 03:55, 24 November 2022

This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues.

Reading a Luma3DS exception screen

A Luma3DS exception has four (or five, in a few cases) different parts to it that help in finding its cause, as follows:

Luma3DS exception.png
  • Processor: What part of the system is causing the exception. The two processors are:
    • Arm9: The 'security processor' of the system. These exceptions usually result from errors in NAND data or hardware faults in either the 3DS or its SD.
    • Arm11: The 'userland' of the system. These exceptions have numerous causes but are often related to broken software or user data.
  • Exception type: How the system is causing the exception. These categories are often too broad to be helpful, but three of them are more precise:
    • data abort: Oftentimes related to a broken mod or broken HOME Menu data. Occasionally related to custom firmware data being broken.
    • prefetch abort (svcBreak): Oftentimes an issue with data on the NAND, even when Arm11. Can also happen when launching an out-of-region game.
    • undefined instruction: Usually either a broken piece of software (if not on boot) or outdated boot.firm (if on boot).
  • Fault status: Why the system is causing the exception. Normally not helpful except for developers.
  • Current process: Where the error is coming from in the system. Often the most helpful part of the exception. Common or unique processes are as follows:
    • hid: Potential hardware problems.
    • menu: Some of the data/extdata that's either associated with the HOME Menu or loaded at the same time is broken.
    • pm: Almost always, boot.firm is too outdated to work.
    • loader: The app you last tried to run has an error.
    • qtm: Your camera has a hardware issue.
  • R0: Usually just internal data that's not worth reading. There are two notable exceptions, however:
    • Arm11 loader exception: If R0's contents start with a C or D, R0 is an error code. This code usually gives the exact cause of the issue.
    • Arm11 pm exception: If R0's contents are E0E01BF5, boot.firm is guaranteed to be too outdated to work.

Known Errors

Note that the prefixes on file paths refer to the starting location. sdmc:/ refers to the SD card, and numbers in the format of [X:] refer to GodMode9's drive numbers.

Info icon If the below fixes do not solve your issue or you are unsure of what to do, join the [Nintendo Homebrew Discord] for further assistance.

Arm9

On boot

  • Files on the SD are corrupted.
  • A system save located on the NAND in [1:]/data has a problem.
  • System-unique files are missing from the NAND in [1:]/rw/sys.
Prefetch abort (svcBreak)
  • The system's movable, [1:]/private/movable.sed, is 288 bytes but its flag indicates otherwise.
  • SYSNAND CTRNAND has bad CMACs.
    • To fix, press R+A on the SYSNAND CTRNAND drive and Fix CMACs for drive. Your system will act like it has been formatted after this, and this is intended.
Data abort
  • SYSNAND TWLN's [2:]/shared2 folder is missing.
    • To fix, create this folder.
  • System titles have been deleted.

During use

Arm11

On boot

boss (0004013000003402), data abort
  • The current firmware version is too old for SpotPass to work.
fs (0000000000000000)
  • Can be anything from SD card problems to hardware issues.
hid (0004013000001D02)
  • Potential hardware problems.
menu (000400300000__02), data abort
  • Broken HOME Menu theme.
    • To fix, go into the folder sdmc:/Nintendo 3DS/<ID0>/<ID1>/extdata/00000000/ and delete the folder matching your region, one of the following:
      • USA: 000002cd
      • EUR: 000002ce
      • JPN: 000002cc
  • Broken HOME Menu extra data.
    • To fix, go into the folder sdmc:/Nintendo 3DS/<ID0>/<ID1>/extdata/00000000/ and delete the folder matching your region, one of the following:
      • USA: 0000008f
      • EUR: 00000098
      • JPN: 00000082
      • KOR: 000000A9
  • Broken HOME Menu application.
    • To fix, perform a Safe Mode update.
    • If this does not fix it, attempt to enter System Settings before the crash occurs and find the broken application in Data Management, if possible.
    • If this does not fix it, you may try to enter GodMode9 and use its title list to find the broken application - this is risky, however, and should not be attempted without guidance unless you know exactly what you are doing. For guidance, join the [Nintendo Homebrew Discord].
menu (000400300000__02), prefetch abort
  • An installation of menuhax is conflicting with your custom firmware.
    • To fix, place the menuhax67_installer.3dsx file from [this download] into sdmc:/3ds, run it through Homebrew Launcher, and choose REMOVE.
menu (000400300000__02), prefetch abort (svcBreak)
  • The f000000b folder in SYSNAND CTRNAND is broken, its exact location being at [1:]/data/<ID0>/extdata/00048000/f000000b.
    • To fix, backup that folder by pressing R+A while highlighting it, then select Copy to 0:/gm9/out. Once backed up, delete the folder. If this does not fix the issue, copy the folder back where it was.
pm (0000000000000000), undefined instruction
  • The installed version of Luma3DS does not support the current firmware version.


During use

loader (0000000000000000)

If the hexadecimal number next to R0 starts with 'C' or 'D', search for it as an error code or in 3DS:Error_screens/Luma3DS_ErrDisp.
These errors are usually due to corruption, such as a faulty SD card, dying game cartridge, or dirty cartridge reader.