melonDS-emu / melonDS

DS emulator, sorta
https://melonds.kuribo64.net
GNU General Public License v3.0
2.99k stars 497 forks source link

Regression: system settings are not read properly when booting DSi firmware #1932

Open thesourcehim opened 6 months ago

thesourcehim commented 6 months ago

When booting DSi firmware initial setup routine pops up every time (clock and other settings are reset). Wasn't happening in 0.9.5 release.

Bisect results:

21590b070976f8fe343fdc44d4fee599cbda94f4 is the first bad commit
commit 21590b070976f8fe343fdc44d4fee599cbda94f4
Author: Jesse Talavera-Greenberg <jesse@jesse.tg>
Date:   Tue Oct 24 17:28:14 2023 -0400

    Miscellaneous DSi NAND fixes (#1852)

    * Replace some standard I/O calls with Platform equivalents

    - I missed a spot when I submitted that PR a few months ago

    * Include <memory> in DSi_NAND.h

    - Because it uses unique_ptr

    * Split DSi_NAND::ReadHardwareInfo into ReadSerialData and ReadHardwareInfoN

    * Add a RegionMask enum

    * Move DSi NAND patching to the frontend

    * Add DSiSupportedLanguageMask

    - Not currently used by the frontend, but I use it in melonDS DS

    * Remove some Platform::ConfigEntry values

    - The core no longer needs to know about them
    - The corresponding Config values are unchanged

    * Mark NANDMount's destructor as noexcept

Also worth mentioning that during bisect I got somewhat different result at that particular commit. Clock was not reset, but initial setup popped up anyway, so I marked it as bad, but maybe it completely broke a bit later.