diff --git a/README.md b/README.md index bd6d525..520510f 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,7 @@ ## Особенности Ultra * Предварительно настроенный OC Switchcraft (Преемник OC-Suite) с пресетами. +* По умолчанию уже есть андервольт, который заметно снижает потребление консоли, и небольшой разгон памяти, который сделает игры плавнее. * Лучший кастомизатор разгона для Свитч - [Ultra-Tuner](https://github.com/Ultra-NX/Ultra/wiki/Tuner-RU#Ultra-Tuner), позволяющий настраивать разгон прямо с консоли. Был первым, и остается неповторимым. * Сборка максимально легкая и не нагруженная. В ней нет лишнего, минимум необходимый для разгона и комфортного использования. * Модульная конструкция. В составе минимум приложений/плагинов/оверлеев, но вы всегда можете поставить еще через [Ultra Tuner](https://github.com/Ultra-NX/Ultra/wiki/Tuner-RU#Updater). @@ -76,6 +77,7 @@ * [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Поиск и установка тем на свитч. * [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Программа для сброса контроллера батареи. Не используйте просто так! * [MemToolkitNX](https://discord.com/channels/854839758815363072/1173171845139288114/1324099100202766408) - Бенчмарк и Тестер памяти. Результат сильно зависит от разгона CPU. + * [MemToolkitNX OLD](https://discord.com/channels/854839758815363072/1173171845139288114/1276196700750479480) - Бенчмарк и Тестер памяти. Результат сильно зависит от разгона CPU. Старая версия, которая многим нравится больше новой. * Overlays: * [Status Monitor Ultra](https://github.com/Ultra-NX/Status-Monitor-Overlay) - Форк Status Monitor для UltraNX, поддерживает много пресетов Micro-оверлея, и обладает рядом уникальных фишек. diff --git a/README_ENG.md b/README_ENG.md index 146aa3d..a729af9 100644 --- a/README_ENG.md +++ b/README_ENG.md @@ -13,6 +13,7 @@ ## Features of Ultra * Pre-configured OC Switchcraft (Successor to OC-Suite) with presets. +* By default, there's already an undervolt that noticeably reduces the console's consumption, and a slight memory overclock that will make games smoother. * The best overclocking customizer for Switch - Ultra-Tuner, that allows you to customize overclocking right from the console. It was the first, and remains unique. * The CFW is as light as possible. There are no unnecessary things in it, only minimum necessary for overclocking and comfortable use. * Modular design. A minimum of applications/plugins/overlays are included, but you can always add more via the Ultra Tuner. @@ -72,6 +73,7 @@ * [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Searching and installing themes on Switch. * [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Program to reset the battery controller. Do not use unnecessarily! * [MemToolkitNX](https://discord.com/channels/854839758815363072/1173171845139288114/1324099100202766408) - Benchmark and Memory Tester. The result is highly dependent on CPU overclocking. + * [MemToolkitNX OLD](https://discord.com/channels/854839758815363072/1173171845139288114/1276196700750479480) - Benchmark and Memory Tester. The result is highly dependent on CPU overclocking. The old version, which many people like better than the new one. * Overlays: * [Status Monitor Ultra](https://github.com/Ultra-NX/Status-Monitor-Overlay) - Status Monitor fork for UltraNX, supports many Micro-overlay presets, and has a number of unique features. diff --git a/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml b/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml new file mode 100644 index 0000000..3d6b934 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010009D018A06000/46094C03E2EC668B.yaml @@ -0,0 +1,27 @@ +# SWORD ART ONLINE Fractured Daydream JAP 1.2.0 +# BID: 46094C03E2EC668B + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x8F3C748, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x8F77210, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x8776EC8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml b/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml index a3c0d4d..5d5b816 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100500012AB4000/118AA7B71E824B3B.yaml @@ -16,6 +16,12 @@ ALL_FPS: address: [MAIN, 0x7451B78, 0] value_type: float value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x6C85418, 0] + value_type: uint32 + value: [0, 0] - type: block what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml new file mode 100644 index 0000000..0d3d2f5 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/2213810D247A7293.yaml @@ -0,0 +1,12 @@ +# EA SPORTS FC 25 1.76.8f16 +# BID: 2213810D247A7293 + +unsafeCheck: true + +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0xCE36A68, 8] + value_type: double + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml new file mode 100644 index 0000000..73f32ea --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/AF76EBEDE6A89F89.yaml @@ -0,0 +1,12 @@ +# EA SPORTS FC 25 1.75.dd04 +# BID: AF76EBEDE6A89F89 + +unsafeCheck: true + +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0xCE25A68, 8] + value_type: double + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml b/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml new file mode 100644 index 0000000..a6a7b43 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01006BD018B54000/FD3AC4FFB1B769D5.yaml @@ -0,0 +1,27 @@ +# The Plucky Squire 1.0.6 +# BID: FD3AC4FFB1B769D5 + +unsafeCheck: true + +ALL_FPS: + # r.VSync + - + type: write + address: [MAIN, 0x63A7538, 0] + value_type: int32 + value: [0, 0] + # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal + - + type: evaluate_write + address: [MAIN, 0x6B76668, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x6BA4328, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml b/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml new file mode 100644 index 0000000..e80088d --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010081E01A45C000/36C7E946E6C11C8E.yaml @@ -0,0 +1,27 @@ +# Bang-On Balls: Chronicles 1.0.5 +# BID: 36C7E946E6C11C8E + +unsafeCheck: true + +ALL_FPS: + # r.VSync + - + type: write + address: [MAIN, 0x6DA4F38, 0] + value_type: int32 + value: [0, 0] + # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals + - + type: evaluate_write + address: [MAIN, 0x7574618, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x75A22D8, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml b/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml new file mode 100644 index 0000000..e0952a5 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010089A0117D4000/9B7A3AC5AF1A3B0D.yaml @@ -0,0 +1,56 @@ +# SAMURAI WARRIORS 5 JAP / 戦国無双5 1.03 +# BID: 9B7A3AC5AF1A3B0D + +unsafeCheck: true + +# Block updating FPS Lock +MASTER_WRITE: + - + type: bytes + main_offset: 0x1240DFC + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1240E10 + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1240E1C + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1240E24 + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1240E2C + value_type: uint32 + value: 0xBD41F100 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x1E761E0] + value_type: int32 + value: VSYNC_TARGET + - + type: evaluate_write + address: [MAIN, 0x1E761E4] + value_type: float + value: FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x1E761E8] + value_type: int32 + value: [VSYNC_TARGET, FPS_LOCK_TARGET] + - + type: evaluate_write + address: [MAIN, 0x1E761F0] + value_type: float + value: FPS_TARGET + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml b/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml new file mode 100644 index 0000000..2293a16 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100B7C01D480000/CCBDDB69038F76FC.yaml @@ -0,0 +1,27 @@ +# Boti: Byteland Overclocked 1.0.0 +# BID: CCBDDB69038F76FC + +unsafeCheck: true + +ALL_FPS: + # r.VSync + - + type: write + address: [MAIN, 0x72C6718, 0] + value_type: int32 + value: [0, 0] + # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals + - + type: evaluate_write + address: [MAIN, 0x8283E38, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x82BE2B0, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml b/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml index 7289d8c..190b571 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100CC80140F8000/9CB4490E8A718BAE.yaml @@ -1,4 +1,4 @@ -# Triangle Strategy 1.1.0 +# Triangle Strategy 1.1.0/1.1.1 # BID: 9CB4490E8A718BAE unsafeCheck: true @@ -16,6 +16,12 @@ ALL_FPS: address: [MAIN, 0x74A1408, 0] value_type: float value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x6CA6928, 0] + value_type: uint32 + value: [0, 0] - type: block what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml b/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml new file mode 100644 index 0000000..4da34c6 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/F2D03CFFB8DE5E4C.yaml @@ -0,0 +1,12 @@ +# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.4.127 +# BID: F2D03CFFB8DE5E4C + +unsafeCheck: true + +ALL_FPS: + # UnityEngine.Time::fixedDeltaTime (default is 0.03268) + - + type: evaluate_write + address: [MAIN, 0x97D2178, 0x48] + value_type: float + value: "(1 / FPS_TARGET) / 1.02" \ No newline at end of file diff --git a/SaltySD/saltysd_core.elf b/SaltySD/saltysd_core.elf index 6a2e841..0bf9aa2 100644 Binary files a/SaltySD/saltysd_core.elf and b/SaltySD/saltysd_core.elf differ diff --git a/SaltySD/saltysd_core32.elf b/SaltySD/saltysd_core32.elf index e37e541..83a8115 100644 Binary files a/SaltySD/saltysd_core32.elf and b/SaltySD/saltysd_core32.elf differ diff --git a/Ultra.zip b/Ultra.zip deleted file mode 100644 index d6e2d37..0000000 Binary files a/Ultra.zip and /dev/null differ diff --git a/atmosphere/contents/0000000000534C56/exefs.nsp b/atmosphere/contents/0000000000534C56/exefs.nsp index 2027329..3ebf1be 100644 Binary files a/atmosphere/contents/0000000000534C56/exefs.nsp and b/atmosphere/contents/0000000000534C56/exefs.nsp differ diff --git a/atmosphere/kips/loader.kip b/atmosphere/kips/loader.kip index 530cf4b..c0be350 100644 Binary files a/atmosphere/kips/loader.kip and b/atmosphere/kips/loader.kip differ diff --git a/atmosphere/package3 b/atmosphere/package3 index 179258e..200213b 100644 Binary files a/atmosphere/package3 and b/atmosphere/package3 differ diff --git a/atmosphere/reboot_payload.bin b/atmosphere/reboot_payload.bin index ceca7d5..cb4229b 100644 Binary files a/atmosphere/reboot_payload.bin and b/atmosphere/reboot_payload.bin differ diff --git a/bootloader/hekate_ipl.ini b/bootloader/hekate_ipl.ini index ba740ea..e4dc2ee 100644 --- a/bootloader/hekate_ipl.ini +++ b/bootloader/hekate_ipl.ini @@ -2,7 +2,7 @@ autoboot=1 autoboot_list=0 bootwait=4 -backlight=40 +backlight=90 noticker=0 autohosoff=2 autonogc=0 diff --git a/bootloader/ini/more_configs.ini b/bootloader/ini/more_configs.ini index c86fcf8..ad450d6 100644 --- a/bootloader/ini/more_configs.ini +++ b/bootloader/ini/more_configs.ini @@ -4,18 +4,18 @@ emummc_force_disable=1 cal0blank=0 kip1=atmosphere/kips/* logopath=bootloader/res/bootscreen.bmp -icon=bootloader/res/sys_cfw.bmp +icon=bootloader/res/sys_cfw_nobox.bmp [Semi Safe] fss0=atmosphere/package3 emummc_force_disable=1 cal0blank=0 logopath=bootloader/res/bootscreen.bmp -icon=bootloader/res/sys_sm.bmp +icon=bootloader/res/sys_sm_nobox.bmp [Full Stock] fss0=atmosphere/package3 emummc_force_disable=1 cal0blank=0 stock=1 -icon=bootloader/res/stock.bmp +icon=bootloader/res/stock_nobox.bmp diff --git a/bootloader/res/bootscreen.bmp b/bootloader/res/bootscreen.bmp index 6b6b076..b9e2eb7 100644 Binary files a/bootloader/res/bootscreen.bmp and b/bootloader/res/bootscreen.bmp differ diff --git a/bootloader/res/stock.bmp b/bootloader/res/stock_nobox.bmp similarity index 51% rename from bootloader/res/stock.bmp rename to bootloader/res/stock_nobox.bmp index 1ce9958..b4ff262 100644 Binary files a/bootloader/res/stock.bmp and b/bootloader/res/stock_nobox.bmp differ diff --git a/bootloader/res/sys_cfw.bmp b/bootloader/res/sys_cfw.bmp deleted file mode 100644 index ebb1c96..0000000 Binary files a/bootloader/res/sys_cfw.bmp and /dev/null differ diff --git a/bootloader/res/sys_cfw_nobox.bmp b/bootloader/res/sys_cfw_nobox.bmp new file mode 100644 index 0000000..fddfd79 Binary files /dev/null and b/bootloader/res/sys_cfw_nobox.bmp differ diff --git a/bootloader/res/sys_sm.bmp b/bootloader/res/sys_sm.bmp deleted file mode 100644 index c73c17c..0000000 Binary files a/bootloader/res/sys_sm.bmp and /dev/null differ diff --git a/bootloader/res/emu_cfw.bmp b/bootloader/res/sys_sm_nobox.bmp similarity index 55% rename from bootloader/res/emu_cfw.bmp rename to bootloader/res/sys_sm_nobox.bmp index ea30399..ca1054b 100644 Binary files a/bootloader/res/emu_cfw.bmp and b/bootloader/res/sys_sm_nobox.bmp differ diff --git a/switch/.overlays/FPSLocker.ovl b/switch/.overlays/FPSLocker.ovl index 4c38b8f..ebcaf97 100644 Binary files a/switch/.overlays/FPSLocker.ovl and b/switch/.overlays/FPSLocker.ovl differ diff --git a/switch/.packages/boot_package.ini b/switch/.packages/boot_package.ini index 97b1ea5..ca72f54 100644 --- a/switch/.packages/boot_package.ini +++ b/switch/.packages/boot_package.ini @@ -38,6 +38,10 @@ del '/bootloader/res/ku.bmp' del '/bootloader/res/4emi.bmp' del '/bootloader/res/4mosphere.bmp' del '/bootloader/res/4tock.bmp' +del '/bootloader/res/emu_cfw.bmp' +del '/bootloader/res/sys_cfw.bmp' +del '/bootloader/res/sys_sm.bmp' +del '/bootloader/res/stock.bmp' del '/bootloader/payloads/fusee.bin' del '/bootloader/bootlogo_kefir.bmp' del '/bootloader/updating.bmp' diff --git a/switch/DBI/dbi.config b/switch/DBI/dbi.config index 511c5ac..3a9f924 100644 --- a/switch/DBI/dbi.config +++ b/switch/DBI/dbi.config @@ -186,6 +186,14 @@ Hidden=false 8: Album=true 9: Gamecard=false +; FB2 rendering options +[FB2] +; Visul theme (Day, Night, Sepia, Darkroom) +Theme=Night +; Use word hyphenation +Hyphenation=true +; Default orientation +Orientation=0 ; Network install sources [Network sources]