Skip to content

2099-12-31 crash #2234

@piplupness

Description

@piplupness

System model:

Old 2DS, but every model is affected by this

SysNAND version (+emu/redNAND version if applicable):

11.17.0-50E SysNAND

Entrypoint (How/what you're using to boot Luma3DS):

boot9strap

Luma3DS version:

v13.4

Luma3DS configuration/options:

Default EmuNAND: ( )

Screen brightness: (4)

Splash: (Off)

Splash duration: (3000 ms)

PIN lock: (Off)

New 3DS CPU: ( )

Hbmenu autoboot: ( )

--

Autoboot EmuNAND: ( )

Enable loading external FIRMs and modules: ( )

Enable game patching: ( )

Redirect app. syscore threads to core2: ( )

Show NAND or user string in System Settings: (X)

Show GBA boot screen in patched AGB_FIRM: ( )

--

Explanation of the issue:
Luma3DS 13.4 introduced the option to finally allow the end user to set any date from 2000-01-01 to 2099-12-31. Knowing the issues I already experienced by forcing 2099-12-31 using Godmode9 a year ago, I replicated it using the date and time settings on Luma3DS. Setting any date from 2000-01-01 to 2099-12-30 works just fine, console will not crash, but if changed to 2099-12-31, an arm11 exception occurs, with a mset crash. Mset crash can be avoided by setting the date to 2099-12-30 23:59 and waiting for the rollover, but the home menu can't handle that date and it will also crash. If the date is already set to 2099-12-31, changing the date to the same 2099-12-31 will not lead to a crash.
After the crash due to the date, the console will be unable to boot, returning arm11 exception with menu crash until the user decides to mess around in Godmode9 and changes the RTC date, or just waits maximum 24 hours for the system to rollover to 2000-01-01.

From the experiment I have done using Godmode9 a year ago, just the advance to 2099-12-31 will not crash, but once the console tries to load or open another process, it will crash. For example letting the date advance on 2099-12-31 in Pokémon Omega Ruby didn't result in a crash, game worked fine until the home button was pressed, that's what led to the exception.

Steps to reproduce:

  1. Open System Settings

  2. Select Other Settings

  3. Select Date & Time

  4. Select Today's Date

  5. Set the date to 2099-12-31

  6. Press OK on the Activity Log warning

Dump file (if applicable):
00000002.dmp = mset crash after confirming the date
00000003.dmp = menu crash after booting on 2099-12-31

crash_dump_00000002.dmp
crash_dump_00000003.dmp

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions