Die Bildschirmfilter wurden stark überarbeitet und einige Einstellungen im Rosalina-Menü angepasst und verbessert. Das Patchen von Spielen wurde massiv beschleunigt und Patches im "UPS"-Format können nun angewendet werden. Mehrere Patches lassen sich auch kombinieren, allerdings ist die Reihenfolge hier bewusst nicht festgelegt. LayeredFS-Modifikationen in Spielen, die ohne das "fsUnmountArchive"-Symbol ausgeliefert werden (wie bspw. Metroid: Samus Returns), wurden ebenfalls behoben.
Zudem wird ein neues CACert-Bundle mitgeliefert, welches die kompromittierten eMudhra- und von Sectigo cross-signierten Zertifikate entfernt. Es wird automatisch von allen Homebrew-Anwendungen benutzt, die Netzwerkanfragen per cURL durchführen.
Wegen Anpassungen in libctru in Bezug auf Modi, die der laufenden Applikation mehr RAM freigeben, müssen solche Anwendungen mit einer neuen Version von libctru rekompiliert werden.
Changelog
* Rosalina: significant improvements to screen filters: ** Add support for per-channel (red, green, blue) gamma and contrast adjustments, allowing for more precise screen color calibration ** By continuity in gamma, we now define 0 0 = 0 , as this provides a useful result instead of turning the entire screen white ** Greatly optimize color correction LUT generation (from ~700 µs to ~75 µs), and synchronize LUT writes with VBlank to prevent graphical glitches ** Remove the "brightness" adjustment from advanced screen filter settings as it prevents optimization * Rosalina: rework and extend several options in the "System configuration" menu ** Rework "Control volume" into "Set volume slider override...", adding stereo balance control (left/right, for I2S1 audio) *** The UI for this has been reworked *** Audio balance can only apply if the override is enabled, and does not apply to applets (I2S2) ** Add "Set audio routing..." to force audio output through speakers or headphones, or leave it on automatic ** Replace "Toggle LEDs" with "Set LED master brightness override...", allowing brightness adjustment from 0% to 100% *** The red POWER LED is not dimmable. While it can be disabled, we deliberately leave it on even at 0% to allow the user to be notified of the battery level being low *** The "charging" LED is not dimmable *** Setting LED brightness to 0% also keeps the LEDs off during sleep, except for the red POWER LED and the charging LED. Otherwise, the usual "breathing" pattern (alternating between 4% and 100% brightness) is used * Rosalina: display the current date and time in the top-right corner of the menu when the IP address isn't being displayed * Rosalina: add an option to display the battery temperature in Fahrenheit instead of Celsius * Loader: improve game and sysmodule patching: ** Add support for UPS patches (code.ups), in addition to IPS and BPS patches. Note that UPS CRC checks are currently skipped ** Massively speed up IPS patch loading, especially for patches containing large numbers of small records (from several minutes to less than 50 ms in some cases) ** Improve IPS handling of file size changes, zero-filled gaps, and the optional size field after the EOF marker ** Properly propagate the resulting code size between BPS, IPS and UPS patches, allowing multiple patches to be applied together (the application order is deliberately unspecified and should not be relied upon) ** Fix BPS patches failing on sysmodules due to excessive temporary memory allocation * Improve 3DS homebrew autoboot: ** Use the HOME Menu reboot mechanism by default, instead of directly launching the configured title through NS ** This fixes issues with the HOME/POWER buttons when using non-default application memory layouts, and allows normal booting if the configured title cannot be found ** Note: Due to a bug in older versions of libctru, using memory modes that provide more RAM to applications (such as Dev1) requires rebuilding homebrew applications with libctru v2.7.1 or later. The Homebrew Menu (boot.3dsx) included in this release archive has already been built with a compatible version ** The previous behavior can still be enabled through autoboot_3ds_use_ns = 1 in config.ini * LayeredFS: Fix patching of games that do not contain the fsUnmountArchive symbol, such as Metroid: Samus Returns (by @R-YaTian, #2245) * Plugin loader: Fix issues with plugin cleanup on process termination, which could leave plugin memory mapped and prevent subsequent applications from starting * This release archive ships with an updated cacert.pem which does not contain the compromised eMudhra and Sectigo certificates. cacert.pem is used by homebrew that uses cURL * Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience
















