diff --git a/README.md b/README.md index 90be340..1242824 100644 --- a/README.md +++ b/README.md @@ -25,9 +25,7 @@ * Подробная [Wiki](https://github.com/Ultra-NX/Ultra/wiki) в которой есть ответы почти на все вопросы. * [Форки](https://github.com/Ultra-NX/Ultra-Resources/tree/main/patches) (свои модификации) программ и компонентов, нужные для удобства, безопасности и расширения возможностей: * Форк Атмосферы с прописанной версией Ультры в информации о системе, и отключенными репортами, обычно засоряющими сд карту, тратящими ее ресурс и ломающими файловую систему. Так же исправлена работа старых форвардеров (важно для хоумбрю игр/эмуляторов). - * Форки SaltyNX и FPSLocker, с поддержкой изменения частоты обновления экрана и с поддержкой OLED. * Форк Mission Control, с вырезанной "пасхалкой", делающей джойконы жовто-блакитными. - * Форк Status Monitor с отображением текущих вольтажей и уникальными модулями Микро Оверлея, пресеты которых можно менять через Ultra Tuner. @@ -53,17 +51,17 @@ 1. **Установленные модули** * [SaltyNX](https://github.com/masagrator/SaltyNX) - Фоновый модуль, позволяющий модифицировать файлы\процессы в консоли, поддерживает плагины. Не совместим с 32-х битными играми (список на гитхабе проекта). - * [sys-clk](https://github.com/halop/OC_Toolkit_SC_EOS) - Модуль отвечающий за разгон процессора, памяти и видеочипа - для лучшей производительности. Периодически меняю версии от разных авторов. Оригинальные авторы: Meha/hanai3Bi, lineon, p-sam. + * [sys-clk](https://github.com/ppkantorski/sys-clk) - Модуль отвечающий за разгон процессора, памяти и видеочипа - для лучшей производительности. Периодически меняю версии от разных авторов. Оригинальные авторы: Meha/hanai3Bi, lineon, p-sam. * [nx-ovlloader](https://github.com/ppkantorski/nx-ovlloader) - С помощью этого модуля осуществляется переключение установленных модулей. * [sys-patch](https://github.com/impeeza/sys-patch) - Патчит систему на работу неподписанного софта вместо сигпатчей. * [Mission Control](https://github.com/ndeadly/MissionControl) - Модуль, позволяющий подключать практически любые геймпады к консоли по Bluetooth. * [sys-con](https://github.com/o0Zz/sys-con) - Модуль, позволяющий подключать практически любые геймпады к консоли по USB. * [Ultrahand Overlay](https://github.com/ppkantorski/Ultrahand-Overlay) - Специальное оверлей-меню для взаимодействия с системой: разгон, управление режимами через ReverseNX, включение читов, прочее. Так же позволяет использовать самописные пакеты, например - Ultra Tuner. - - **`Ultra OC (sys-clk)`**, мод [sys-clk](https://github.com/halop/OC_Toolkit_SC_EOS) - Оверлей для управления модулем sys-clk. Немного изменен мной, но без копания в исходниках (Так как они закрыты). - - [Status Monitor](https://github.com/Ultra-NX/Status-Monitor-Overlay), форк [Status Monitor](https://github.com/hanai3Bi/Status-Monitor-Overlay) - Оверлей позволяющий следить за параметрами консоли в реальном времени. Может выступать в качестве счетчика FPS. Сменить пресет Micro-оверлея можно в Updater. + - **`Ultra OC (sys-clk)`**, мод [sys-clk](https://github.com/ppkantorski/sys-clk) - Оверлей для управления модулем sys-clk. Немного изменен мной, но без копания в исходниках (Так как они закрыты). + - [Status Monitor](https://github.com/ppkantorski/Status-Monitor-Overlay), форк [Status Monitor](https://github.com/hanai3Bi/Status-Monitor-Overlay) - Оверлей позволяющий следить за параметрами консоли в реальном времени. Может выступать в качестве счетчика FPS. Сменить пресет Micro-оверлея можно в Updater. - [FPSLocker](https://github.com/masagrator/FPSLocker) - Оверлей, позволяющий разблокировать 60 FPS в играх. - [EdiZon](https://github.com/proferabg/EdiZon-Overlay) - Оверлей для использования читов. - - [ReverseNX-RT](https://github.com/masagrator/ReverseNX-RT) - Оверлей для управления ReverseNX. + - [ReverseNX-RT](https://github.com/ppkantorski/ReverseNX-RT) - Оверлей для управления ReverseNX. - [Sysmodules](https://github.com/ppkantorski/ovl-sysmodules) - Оверлей для включения и отключения установленных системных модулей. @@ -81,7 +79,7 @@ * [MicroMemBench](https://github.com/rashevskyv/4IFIR) - Бенчмарк. Результат сильно зависит от разгона CPU. Версия из Чифира которая в реальном времени тестирует CPU Copy, что позволяет быстро узнать результат после изменения таймингов. * Overlays: - * [Status Monitor Ultra](https://github.com/Ultra-NX/Status-Monitor-Overlay) - Форк Status Monitor для UltraNX, поддерживает много пресетов Micro-оверлея, и обладает рядом уникальных фишек. + * [Status Monitor](https://github.com/ppkantorski/Status-Monitor-Overlay) - Форк Status Monitor от kantorski. * [Tetris](https://github.com/ppkantorski/Tetris-Overlay) - Та самая игра в виде оверлея. Работает только на последних версиях Ultrahand. * [MasterVolume](https://github.com/averne/MasterVolume) - Регулировка глобальной громкости, позволяет поднять громкость выше максимума. Использовать аккуратно! * [NX-FanControl](https://github.com/Zathawo/NX-FanControl) - Модуль для ручной регулировки оборотов кулера. Изменения применяются сразу, модуль смотрит на температуру SOC а не Skin, как Атмосфера. diff --git a/README_ENG.md b/README_ENG.md index 9e57f1c..46a2644 100644 --- a/README_ENG.md +++ b/README_ENG.md @@ -21,9 +21,7 @@ * Regular updates, and an active community. * [Forks](https://github.com/Ultra-NX/Ultra-Resources/tree/main/patches) (own modifications) of programs and components needed for convenience, security and empowerment: * Atmosphere fork with Ultra version in system information, and disabled reports, which usually clogs up the SD card, wastes its resource and breaks the file system. - * SaltyNX and FPSLocker forks, with support for changing screen refresh rate and with OLED support. * Mission Control fork, with the “easter egg” cut out, making the joycons yellow-blue. - * Status Monitor fork with display of current voltages and unique Micro Overlay modules, whose presets can be changed via Ultra Tuner. @@ -49,17 +47,17 @@ 1. **Installed Modules** * [SaltyNX](https://github.com/masagrator/SaltyNX) - Background module allowing to modify files/processes in console, supports plugins. Not compatible with 32-bit games (list on the project's github). - * [sys-clk](https://github.com/halop/OC_Toolkit_SC_EOS) - Module responsible for overclocking CPU, memory and GPU - for better performance. I change versions from different authors from time to time. Original authors: Meha/hanai3Bi, lineon, p-sam. + * [sys-clk](https://github.com/ppkantorski/sys-clk) - Module responsible for overclocking CPU, memory and GPU - for better performance. I change versions from different authors from time to time. Original authors: Meha/hanai3Bi, lineon, p-sam. * [nx-ovlloader](https://github.com/ppkantorski/nx-ovlloader) - This module is used to switch the installed modules. * [sys-patch](https://github.com/impeeza/sys-patch) - Patches the system to run unsigned software instead of sigpatches. * [Mission Control](https://github.com/ndeadly/MissionControl) - A module that allows you to connect almost any gamepads to the console via bluetooth. * [sys-con](https://github.com/o0Zz/sys-con) - A module that allows you to connect almost any gamepads to the console via USB. * [Ultrahand Overlay](https://github.com/ppkantorski/Ultrahand-Overlay) - Special overlay-menu for interacting with the system: overclocking, controlling modes via ReverseNX, enabling cheats, etc. Also allows to use your own packages, for example, Ultra Tuner. - - **`Ultra OC (sys-clk)`**, a mod of [sys-clk](https://github.com/halop/OC_Toolkit_SC_EOS) - Overlay for controlling sys-clk module. Slightly modified by me, but without digging into sources (Since they're closed). - - [Status Monitor](https://github.com/Ultra-NX/Status-Monitor-Overlay), a fork of [Status Monitor](https://github.com/masagrator/Status-Monitor-Overlay) - Overlay that allows you to monitor console parameters in real time. It can act as an FPS counter. You change preset of Micro-overlay appearance in Updater. + - **`Ultra OC (sys-clk)`**, a mod of [sys-clk](https://github.com/ppkantorski/sys-clk) - Overlay for controlling sys-clk module. Slightly modified by me, but without digging into sources (Since they're closed). + - [Status Monitor](https://github.com/ppkantorski/Status-Monitor-Overlay), a fork of [Status Monitor](https://github.com/masagrator/Status-Monitor-Overlay) - Overlay that allows you to monitor console parameters in real time. It can act as an FPS counter. You change preset of Micro-overlay appearance in Updater. - [FPSLocker](https://github.com/masagrator/FPSLocker) - An overlay that allows you to unlock 60 FPS in games. - [EdiZon](https://github.com/proferabg/EdiZon-Overlay) - An overlay for using cheats. - - [ReverseNX-RT](https://github.com/masagrator/ReverseNX-RT) - ReverseNX control overlay. + - [ReverseNX-RT](https://github.com/ppkantorski/ReverseNX-RT) - ReverseNX control overlay. - [Sysmodules](https://github.com/ppkantorski/ovl-sysmodules) - Overlay for enabling and disabling installed system modules. @@ -77,7 +75,7 @@ * [MicroMemBench](https://github.com/rashevskyv/4IFIR) - Benchmark. The result is highly dependent on CPU overclocking. A version from 4ifir that tests CPU Copy in real time, which allows you to quickly find out the result after changing timings. * 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. + * [Status Monitor](https://github.com/ppkantorski/Status-Monitor-Overlay) - Status Monitor fork from kantorski. * [Tetris](https://github.com/ppkantorski/Tetris-Overlay/) - "That" game in the form of an overlay. Works only on the latest versions of Ultrahand. * [MasterVolume](https://github.com/averne/MasterVolume) - Global volume control, allows you to raise the volume above the maximum. Use with care! * [NX-FanControl](https://github.com/Zathawo/NX-FanControl) - Module for manually adjusting the speed of the cooler. The changes are applied immediately, the module works from SOC temperature and not Skin temperature like Atmosphere. diff --git a/SaltySD/exceptions.txt b/SaltySD/exceptions.txt index 8ea870c..ead1e5e 100644 --- a/SaltySD/exceptions.txt +++ b/SaltySD/exceptions.txt @@ -24,7 +24,7 @@ X0100964012528000 ;Olympic Games Tokyo 2020 – The Official Video Game ;1.0.0 crash on boot -X010034B00E14C000 +010034B00E14C000 ;Mario Strikers: Battle League ;1.0.0 crash on boot diff --git a/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml b/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml new file mode 100644 index 0000000..ddf81ef --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010008301AA96000/88CC45A195E0BDA8.yaml @@ -0,0 +1,36 @@ +# Tiebreak+: Official Game of the ATP and WTA 1.3.0 +# BID: 88CC45A195E0BDA8 + +unsafeCheck: true + +MASTER_WRITE: + # Triple buffer + # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 + - + type: bytes + main_offset: 0x1A82F0C + value_type: uint32 + value: 3 + # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 + # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E + - + type: bytes + main_offset: 0x147BE04 + value_type: uint32 + value: + - 0x9000E248 # ADRP X8, 0x30C3000 + - 0xBD4F0103 # LDR S3, [X8, 0xF00] + - 0xD503201F # NOP + ## Default values + - + type: bytes + main_offset: 0x30C3F00 + value_type: float + value: 0.03333333333 +ALL_FPS: + # Adjust Dynamic Resolution target, we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x30C3F00] + value_type: float + value: "0.8 / FPS_TARGET" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml b/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml new file mode 100644 index 0000000..1327b39 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01000AD01F94A000/A31FE9B8AF1156D4.yaml @@ -0,0 +1,27 @@ +# Tony Hawk's Pro Skater 3 + 4 1.0.3 +# BID: A31FE9B8AF1156D4 + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x77CF4B8, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x77FD6A0, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x6FF83C8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml b/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml new file mode 100644 index 0000000..319d9da --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010021601C496000/7A450848CFDEC18E.yaml @@ -0,0 +1,53 @@ +# Kingdom Come: Deliverance - Royal Edition JP 1.9.6H +# BID: 7A450848CFDEC18E +# Some prerendered cutscenes are still pushed at 30 FPS + +unsafeCheck: true + +MASTER_WRITE: + # Block updating DR timings, REF: 00 01 27 1E 48 40 A8 52 + - + type: bytes + main_offset: 0x1CA806C + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1CA8074 + value_type: uint32 + value: 0xD503201F + - + type: bytes + main_offset: 0x1CA8094 + value_type: uint32 + value: + - 0xD503201F + - 0xD503201F + # Write default DR timings + - + type: bytes + main_offset: 0x56FF9C8 + value_type: float + value: [32.5, 30.5, 31.5, 28.5, 33.5] +ALL_FPS: + # sys_MaxFPS + - + type: evaluate_write + address: [MAIN, 0x56FD1C8] + value_type: int32 + value: FPS_LOCK_TARGET + # Renderer thread delay + - + type: write + address: [MAIN, 0x5704028] + value_type: float + value: 0.01 + # DR timings + - + type: evaluate_write + address: [MAIN, 0x56FF9C8] + value_type: float + value: ["FRAMETIME_TARGET * 0.975", "FRAMETIME_TARGET * 0.915", "FRAMETIME_TARGET * 0.945", "FRAMETIME_TARGET * 0.855", "FRAMETIME_TARGET * 1.005"] + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml b/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml new file mode 100644 index 0000000..87c64b9 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01002C101C1AA000/471546458FD9E43D.yaml @@ -0,0 +1,27 @@ +# Expeditions: A Mudrunner Game 1.17.0.0 +# BID: 471546458FD9E43D +# REF: 01 04 0C 5E 00 10 2E 1E + +unsafeCheck: true + +MASTER_WRITE: +# Redirect DR frametime target to MAIN+0x36D4F00 + - + type: bytes + main_offset: 0x17358B4 + value_type: uint32 + value: + - 0xF000FCED # adrp x13, #0x36D4000 + - 0xBD4F01A2 # ldr s2, [x13, #0xf00] + # default value + - + type: bytes + main_offset: 0x36D4F00 + value_type: float + value: 33.3333333333 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x36D4F00] + value_type: float + value: FRAMETIME_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml new file mode 100644 index 0000000..8ca9894 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/E43BBBBFACE60867.yaml @@ -0,0 +1,27 @@ +# Rune Factory: Guardians of Azuma 1.0.5 +# BID: E43BBBBFACE60867 + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x8F4AD40, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x8F84470, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x7F636E8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml b/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml new file mode 100644 index 0000000..beb781d --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010045301B86C000/D7A32C718E9D6363.yaml @@ -0,0 +1,27 @@ +# Romancing SaGa 2: Revenge of the Seven 1.1.0 +# BID: D7A32C718E9D6363 + +unsafeCheck: true + +ALL_FPS: + # r.VSync + - + type: write + address: [MAIN, 0x6D25AE0, 0] + value_type: int32 + value: [0, 0] + # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals + - + type: evaluate_write + address: [MAIN, 0x7C01C70, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x7C5A4C0, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml b/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml new file mode 100644 index 0000000..b701946 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010050F00BC1A000/6BEC9B23B09DF46C.yaml @@ -0,0 +1,57 @@ +# Resident Evil 1.0.0 +# BID: 6BEC9B23B09DF46C + +unsafeCheck: true + +MASTER_WRITE: + # Detect prerendered cutscenes + - + type: bytes + main_offset: 0xB1A810 + value_type: uint32 + value: 0x14005CF6 + - + type: bytes + main_offset: 0xB31BE8 + value_type: uint32 + value: + - 0xF81E0FF3 + - 0x52800021 + - 0xD000CDB3 + - 0xB90FF261 + - 0xAA0003F3 + - 0x52994000 + - 0x72A77340 + - 0xD4000161 + - 0xAA1303E0 + - 0x17FFA302 + - + type: bytes + main_offset: 0xB1A9BC + value_type: uint32 + value: 0x14005C95 + - + type: bytes + main_offset: 0xB31C10 + value_type: uint32 + value: + - 0x2A1F03E1 + - 0xD000CDA2 + - 0xB90FF041 + - 0x17FFCCA9 +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0x1EC6CF0, 0x4C] + value_type: float + value: "FPS_LOCK_TARGET" + - + type: compare + compare_type: "==" + compare_value_type: uint32 + compare_value: 1 + compare_address: [MAIN, 0x24E7FF0] + address: [MAIN] + value_type: refresh_rate + value: 30 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml b/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml new file mode 100644 index 0000000..87af62e --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010051C0134F8000/BC99D4D0A9474360.yaml @@ -0,0 +1,35 @@ +# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.60 +# BID: BC99D4D0A9474360 + +unsafeCheck: true + +ALL_FPS: + # Disable bUseFixedFrameRate in cutscenes to unlock framerate + - + type: write + address: [MAIN, 0x996A558, 0x810] + value_type: uint32 + # Default is 0x47 in cutscenes, bUseFixedFrameRate |= 0x40 + # By writing 7 we are making sure that other flags are maintained: + # bAllowMultiThreadedAnimationUpdate |= 4 + # bOptimizeAnimBlueprintMemberVariableAccess |= 2 + # bCanBlueprintsTickByDefault |= 1 + value: 7 + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x9935498, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x996AE08, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x8DD7418, 0] + value_type: int32 + value: [0, 0] \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml new file mode 100644 index 0000000..4f94176 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/E60B4F857609BD49.yaml @@ -0,0 +1,12 @@ +# EA SPORTS FC 25 1.7d.c638 +# BID: E60B4F857609BD49 + +unsafeCheck: true + +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0xCEEFA88, 8] + value_type: double + value: FPS_TARGET diff --git a/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml b/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml new file mode 100644 index 0000000..4476d63 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01006C7021024000/03DBE839CAA0632B.yaml @@ -0,0 +1,27 @@ +# MotoGP 25 1.0.3 +# BID: 03DBE839CAA0632B + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0xA058518, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0xA093DD0, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x9074C00, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml b/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml new file mode 100644 index 0000000..e7c7425 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100781020710000/C7BD9BFC5F202073.yaml @@ -0,0 +1,12 @@ +# NINJA GAIDEN: Ragebound 1.0.3 +# BID: C7BD9BFC5F202073 + +unsafeCheck: true + +ALL_FPS: + # UnityEngine.Time::fixedDeltaTime + - + type: evaluate_write + address: [MAIN, 0x58410E0, 0x48] + value_type: float + value: "1 / FPS_TARGET" diff --git a/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml b/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml new file mode 100644 index 0000000..ab9dcaa --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010078D000F88000/82C912DDD4663022.yaml @@ -0,0 +1,47 @@ +# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.24.03 +# BID: 82C912DDD4663022 +# Double buffer is hardcoded in class, getting triple buffer is hard. +# Some graphical effects like aura have wrong speed outside of 15, 20, 30 and 60 FPS + +unsafeCheck: false + +ALL_FPS: + # Search those in Edizon by searching for 1/60 in title menu, then 1/30 when FPS lock is applied. + # FPS Lock + - + type: write + address: [MAIN, 0x4AC8AD8, 0x698] + value_type: float + value: 0.0 + # Unknown + - + type: write + address: [MAIN, 0x4AC8AD8, 0x6A4] + value_type: float + value: 0.0 + # Game Battle Speed Factor + - + type: evaluate_write + address: [MAIN, 0x4AC8AD8, 0x6B0] + value_type: uint32 + value: VSYNC_TARGET + # Cutscenes Speed Factor + - + type: evaluate_write + address: [MAIN, 0x4AC8AD8, 0x6B4] + value_type: uint32 + value: VSYNC_TARGET + # Target Speed + # REF: E9 03 00 32 09 01 00 39 C0 03 5F D6, first result, LDR instruction + - + type: evaluate_write + address: [MAIN, 0x23F51C0] + value_type: float + value: "(1 / FPS_TARGET) * VSYNC_TARGET" + # Dynamic Resolution FPS Target + # REF: 16 4E A8 52 F7 03 60 B2, first ADRP + LDR above it + - + type: evaluate_write + address: [MAIN, 0x23D53C8, 0x1844] + value_type: float + value: "FPS_TARGET" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml index 513398c..720da50 100644 --- a/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml +++ b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml @@ -11,14 +11,15 @@ MASTER_WRITE: main_offset: 0xD80748 value_type: uint32 value: 0x52800021 - # Change pointer of GPU time factor for DR calculations to MAIN + 0x1D36C80 - ## REF: XREF 0x46823555, replace loading for 0.001 + # Change pointer of time factor for DR calculations to MAIN + 0x1D36FF4 + ## REF: 01 01 27 1E 08 59 A8 52 03 08 21 1E, replace hardcoded 100.0 float - type: bytes - main_offset: 0xE6F140 + main_offset: 0x1153314 value_type: uint32 value: - - 0xF0007628 + - 0xF0005F08 + - 0x1E210803 - 0xBD4FF501 # Dynamic speed ## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964 @@ -122,7 +123,7 @@ MASTER_WRITE: type: bytes main_offset: 0x1D36FF4 value_type: float - value: 0.001 + value: 100.0 ALL_FPS: # Scrolling speed ## REF: 68 16 41 B9 D8 22 D5 1A @@ -143,7 +144,7 @@ ALL_FPS: type: evaluate_write address: [MAIN, 0x1D36FF4] value_type: float - value: "(FPS_TARGET / 30) * 0.001" + value: "(FPS_TARGET / 30) * 100" # Prerendered cutscenes must be played at 30 FPS - type: compare diff --git a/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml new file mode 100644 index 0000000..7db78fb --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/D5C5F47DFABD0812.yaml @@ -0,0 +1,28 @@ +# No Man's Sky 5.7.5 +# BID: D5C5F47DFABD0812 + +unsafeCheck: true + +MASTER_WRITE: + # Redirect DR frametime target to MAIN+0x47E0FF0 + # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that + - + type: bytes + main_offset: 0x1F9BC40 + value_type: uint32 + value: + - 0xB0014229 # adrp x9, #0x47E0000 + - 0xBD4FF120 # ldr s0, [x9, #0xff0] + - 0xD503201F # NOP + # default value + - + type: bytes + main_offset: 0x47E0FF0 + value_type: float + value: 30 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x47E0FF0] + value_type: float + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml b/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml new file mode 100644 index 0000000..388a7f1 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/EAADF33F510C5853.yaml @@ -0,0 +1,21 @@ +# The Hundred Line -Last Defense Academy- 1.1.1 +# BID: EAADF33F510C5853 +# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. + +unsafeCheck: true + +ALL_FPS: + # FPS Lock + # REF: 1B 41 00 00 + - + type: evaluate_write + address: [MAIN, 0xC95D10] + value_type: uint32 + value: FRAMETIME_TARGET * 1000 + # Unknown value, but set in the same function as FPS lock, so it may be important + # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 + - + type: evaluate_write + address: [MAIN, 0xC95CDC] + value_type: uint32 + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml b/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml new file mode 100644 index 0000000..ed86f76 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010097000BC10000/FB4239AA962B429B.yaml @@ -0,0 +1,57 @@ +# resident evil 0 1.0.0 +# BID: FB4239AA962B429B + +unsafeCheck: true + +MASTER_WRITE: + # Detect prerendered cutscenes + - + type: bytes + main_offset: 0x9F2540 + value_type: uint32 + value: 0x14004E9A + - + type: bytes + main_offset: 0xA05FA8 + value_type: uint32 + value: + - 0xB0008DE8 + - 0x52800021 + - 0xB90FF101 + - 0xF81E0FF3 + - 0xAA0003F3 + - 0x52994000 + - 0x72A77340 + - 0xD4000161 + - 0xAA1303E0 + - 0x17FFB15E + - + type: bytes + main_offset: 0x9F26EC + value_type: uint32 + value: 0x14004E39 + - + type: bytes + main_offset: 0xA05FD0 + value_type: uint32 + value: + - 0x2A1F03E3 + - 0xB0008DE4 + - 0xB90FF083 + - 0x17FFDB0D +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0x1BAAC60, 0x4C] + value_type: float + value: "FPS_LOCK_TARGET" + - + type: compare + compare_type: "==" + compare_value_type: uint32 + compare_value: 1 + compare_address: [MAIN, 0x1BC2FF0] + address: [MAIN] + value_type: refresh_rate + value: 30 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml b/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml new file mode 100644 index 0000000..750a957 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010097F018538000/8ACF8D236ADAB16F.yaml @@ -0,0 +1,12 @@ +# DAVE THE DIVER 1.0.4.1040 +# BID: 8ACF8D236ADAB16F + +unsafeCheck: true + +ALL_FPS: + # UnityEngine.Time::fixedDeltaTime + - + type: evaluate_write + address: [MAIN, 0x98E8680, 0x48] + value_type: float + value: "1 / FPS_TARGET" diff --git a/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml b/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml index 53c77a4..f7a07cf 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100E5600D446000/C32B29CB5FBA96D9.yaml @@ -6,11 +6,15 @@ unsafeCheck: true ALL_FPS: # Game speed value - - type: evaluate_write + type: evaluate_compare + compare_type: "==" + compare_value_type: uint32 + compare_value: 2 + compare_address: [MAIN, 0x2218B44, 0x10] address: [MAIN, 0x2218B44, 0x20] value_type: float value: "1 / FPS_TARGET" - # Play prerendered cutscenes only at 60 FPS + # Block prerendered cutscenes to 30 FPS - type: compare compare_address: [MAIN, 0x1728B58] @@ -19,4 +23,4 @@ ALL_FPS: compare_value: 0 address: [MAIN] value_type: refresh_rate - value: 60 + value: 60 \ No newline at end of file diff --git a/SaltySD/saltysd_bootstrap32_3k.elf b/SaltySD/saltysd_bootstrap32_3k.elf index 943dd4b..88b44ce 100644 Binary files a/SaltySD/saltysd_bootstrap32_3k.elf and b/SaltySD/saltysd_bootstrap32_3k.elf differ diff --git a/SaltySD/saltysd_bootstrap32_5k.elf b/SaltySD/saltysd_bootstrap32_5k.elf index e16d32f..bc03cf9 100644 Binary files a/SaltySD/saltysd_bootstrap32_5k.elf and b/SaltySD/saltysd_bootstrap32_5k.elf differ diff --git a/SaltySD/saltysd_core.elf b/SaltySD/saltysd_core.elf index 55b3930..9ff8992 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 b3218dd..e2772ff 100644 Binary files a/SaltySD/saltysd_core32.elf and b/SaltySD/saltysd_core32.elf differ diff --git a/atmosphere/contents/0000000000534C56/exefs.nsp b/atmosphere/contents/0000000000534C56/exefs.nsp index ded223d..016127a 100644 Binary files a/atmosphere/contents/0000000000534C56/exefs.nsp and b/atmosphere/contents/0000000000534C56/exefs.nsp differ diff --git a/atmosphere/contents/010000000000bd00/exefs.nsp b/atmosphere/contents/010000000000bd00/exefs.nsp index 6ea2039..bf607c0 100644 Binary files a/atmosphere/contents/010000000000bd00/exefs.nsp and b/atmosphere/contents/010000000000bd00/exefs.nsp differ diff --git a/atmosphere/contents/420000000007E51A/exefs.nsp b/atmosphere/contents/420000000007E51A/exefs.nsp index 4373a00..4d9993a 100644 Binary files a/atmosphere/contents/420000000007E51A/exefs.nsp and b/atmosphere/contents/420000000007E51A/exefs.nsp differ diff --git a/atmosphere/contents/690000000000000D/exefs.nsp b/atmosphere/contents/690000000000000D/exefs.nsp index fc43c2e..221a213 100644 Binary files a/atmosphere/contents/690000000000000D/exefs.nsp and b/atmosphere/contents/690000000000000D/exefs.nsp differ diff --git a/atmosphere/hbl.nsp b/atmosphere/hbl.nsp index 085f362..2b002e6 100644 Binary files a/atmosphere/hbl.nsp and b/atmosphere/hbl.nsp differ diff --git a/atmosphere/kips/loader.kip b/atmosphere/kips/loader.kip index af92839..bf191f1 100644 Binary files a/atmosphere/kips/loader.kip and b/atmosphere/kips/loader.kip differ diff --git a/atmosphere/package3 b/atmosphere/package3 index b62a3ab..18af868 100644 Binary files a/atmosphere/package3 and b/atmosphere/package3 differ diff --git a/atmosphere/stratosphere.romfs b/atmosphere/stratosphere.romfs index a4da1e3..21f1922 100644 Binary files a/atmosphere/stratosphere.romfs and b/atmosphere/stratosphere.romfs differ diff --git a/config/sphaira/config.ini b/config/sphaira/config.ini index c00333a..70f063e 100644 --- a/config/sphaira/config.ini +++ b/config/sphaira/config.ini @@ -1,10 +1,13 @@ [config] theme=romfs:/themes/oled_black_theme.ini mtp_enabled=1 -replace_hbmenu=1 +replace_hbmenu=0 install_emummc=1 install_prompt=0 + [homebrew] layout=1 +hide_sphaira=0 + [filebrowser] show_hidden=1 diff --git a/config/sphaira/i18n/ru.json b/config/sphaira/i18n/ru.json new file mode 100644 index 0000000..48bf0b1 --- /dev/null +++ b/config/sphaira/i18n/ru.json @@ -0,0 +1,477 @@ +{ + "[Applet Mode]": "[Режим Applet]", + "No Internet": "Нет интернета", + "Switch-Handheld!": "Режим Портатива", + "Switch-Docked!": "Режим Дока", + "Warning! Logs are enabled, Sphaira will run slowly!": "Внимание! Включены логи, Sphaira будет работать медленно!", + "Audio disabled due to suspended game": "Звук отключён из-за приостановки игры", + "Are you sure you wish to cancel?": "Вы уверены, что хотите отменить?", + "An error occurred": "Произошла ошибка", + "If this message appears repeatedly, please open an issue.": "Если ошибка появляется неоднократно, пожалуйста, откройте issue", + + "Menu Options": "Опции меню", + "Menu": "Меню", + "Theme": "Тема", + "Theme Options": "Опции темы", + "Select Theme": "Выбор темы", + "Music": "Музыка", + "12 Hour Time": "12-часовое время", + "Download Default Music": "Скачать стандартную музыку", + "Failed to download default_music.bfstm, please try again": "Не удалось загрузить default_music.bfstm, попробуйте снова", + "Overwrite current default music?": "Переписать текущую стандартную музыку?", + + "Network": "Сеть", + "Network Options": "Опции сети", + "Ftp": "FTP", + "Mtp": "MTP", + "Nxlink": "NXLink", + "Nxlink Connected": "NXLink подключён", + "Nxlink Upload": "NXLink отправка", + "Nxlink Finished": "NXLink завершено", + "Hdd": "HDD", + "Hdd write protect": "Защита HDD от записи", + + "Language": "Язык", + "Auto": "Авто", + "English": "English", + "Japanese": "日本語", + "French": "Français", + "German": "Deutsch", + "Italian": "Italiano", + "Spanish": "Español", + "Chinese": "中文", + "Korean": "한국어", + "Dutch": "Dutch", + "Portuguese": "Português", + "Russian": "Русский", + "Swedish": "Svenska", + "Vietnamese": "Vietnamese", + "Ukrainian": "Українська", + + "Misc": "Прочее", + "Misc Options": "Прочие опции", + "Games": "Игры", + "Game Options": "Опции игр", + "Hide forwarders": "Скрыть форвардеры", + "Launch random game": "Запустить случайную игру", + "List meta records": "Список мета-записей", + "Entries": "Записи", + "Failed to list application meta entries": "Не удалось получить список мета-записей приложений", + "No meta entries found...\n": "Мета-записей не найдено...\n", + "Updating application record list": "Обновление списка записей приложений", + "Dump": "Дамп", + "Dump options": "Опции дампа", + "Dump Options": "Опции дампа", + "Select content to dump": "Выберите содержимое для дампа", + "Dump All": "Дамп всего", + "Dump Application": "Дамп приложения", + "Dump Patch": "Дамп патча", + "Dump AddOnContent": "Дамп дополнительного контента", + "Dump DataPatch": "Дамп патча данных", + "Created nested folder": "Создать вложенную папку", + "Append folder with .xci": "Добавить папку с .xci", + "Trim XCI": "Обрезать .xci", + "Label trimmed XCI": "Пометить обрезанный .xci", + "Multi-threaded USB transfer": "Многоядерная USB передача", + "Dump All Bins": "Дамп всех BIN-файлов", + "Dump XCI": "Дамп XCI", + "Dump Card ID Set": "Дамп набора ID карты", + "Dump Card UID": "Дамп UID карты", + "Dump Certificate": "Дамп сертификата", + "Dump Initial Data": "Дамп начальных данных", + "Select dump location": "Выберите место для дампа", + "microSD card (/dumps/)": "microSD (/dumps/)", + "USB transfer (Switch 2 Switch)": "Передача по USB (Switch 2 Switch)", + "/dev/null (Speed Test)": "/dev/null (тест скорости)", + "Dumping": "Снятие дампа", + "Dump successfull!": "Дамп выполнен успешно!", + "Dump failed!": "Сбой дампа!", + "Delete successfull!": "Удаление успешно!", + "Delete failed!": "Ошибка удаления!", + "Success": "Успех", + "Refresh": "Обновить", + "Create contents folder": "Создать папку \"Contents\"", + "Create save": "Создать сохранение", + "Title cache": "Кэш заголовков", + "Delete title cache": "Удалить кэш заголовков", + + "Saves": "Сохранения", + "Save Options": "Опции сохранений", + "Account": "Пользователь", + "Data Type": "Тип данных", + "System": "Система", + "BCAT": "BCAT", + "Device": "Устройство", + "Temporary": "Временные", + "Cache": "Кэш", + "System BCAT": "BCAT (Система)", + "Backup": "Сделать бэкап", + "Auto backup": "Автоматический бэкап", + "Auto backup on restore": "Бэкап при восстановлении", + "Compress backup": "Сжимать бэкапы", + "Are you sure you want to backup save(s)?": "Вы уверены, что хотите сделать бэкап(ы)?", + "No saves found in ": "Сохранения не найдены в ", + "Backed up to ": "Бэкап сохранен в ", + "Backup successfull!": "Бэкап успешно создан!", + "Backup failed!": "Ошибка бэкапа!", + "Select backup location": "Выберите место для бэкапа", + "Select restore location": "Выберите место для восстановления", + "Restore save for: ": "Восстановить сохранение для: ", + "Are you sure you want to restore ": "Вы уверены, что хотите восстановить ", + "Restore successfull!": "Восстановление успешно!", + "Restore failed!": "Ошибка восстановления!", + + "Themezer": "Themezer", + "Themezer Options": "Опции Themezer", + "Nsfw": "NSFW", + "Page": "Страница", + "Page %zu / %zu": "Страница %zu / %zu", + "Enter Page Number": "Номер страницы", + "Bad Page": "Неверная страница", + "Download theme?": "Скачать тему?", + + "GitHub": "GitHub", + "Downloading json": "Загрузка json", + "Select asset to download for ": "Выберите ресурс для загрузки: ", + "Failed to download json": "Не удалось загрузить json", + "Failed to download app!": "Не удалось загрузить приложение!", + + "FTP Install": "Установка по FTP", + "Connection Type: WiFi | Strength: ": "Тип подключения: WiFi | Сигнал: ", + "Connection Type: Ethernet": "Тип подключения: Ethernet", + "Connection Type: None": "Нет подключения", + "Host:": "Хост:", + "Port:": "Порт:", + "Username:": "Имя пользователя:", + "Password:": "Пароль:", + "SSID:": "SSID:", + "Passphrase:": "Пароль:", + "Failed to install, press B to exit...": "Не удалось установить по FTP, нажмите B для выхода...", + "Install success!": "Установка по FTP прошла успешно!", + "Install failed!": "Сбой установки по FTP!", + "MTP Install": "Установка по MTP", + "State: %s | Speed: %s": "Состояние: %s | Скорость: %s", + "Detached": "Отключено", + "Attached": "Подключено", + "Powered": "Заряжается", + "Default": "По умолчанию", + "Address": "Адрес", + "Configured": "Настроено", + "Suspended": "Приостановлено", + "USB 1.0 Low Speed": "USB 1.0", + "USB 1.1 Full Speed": "USB 1.1", + "USB 2.0 High Speed": "USB 2.0", + "USB 3.0 Super Speed": "USB 3.0", + "Drag'n'Drop (NSP, XCI, NSZ, XCZ) to the install folder": "Перетащите (NSP, XCI, NSZ, XCZ) в папку установки", + "Failed to install via MTP, press B to exit...": "Не удалось установить по MTP, нажмите B для выхода...", + "MTP install success!": "Установка по MTP успешна!", + "MTP install failed!": "Сбой установки по MTP!", + "USB Install": "Установка по USB", + "USB": "USB", + "Connected, waiting for file list...": "Подключено, ожидание списка файлов...", + "Connected, starting transfer...": "Подключено, начало передачи...", + "Failed to init usb, press B to exit...": "Не удалось инициализировать USB, нажмите B для выхода...", + "Waiting for connection...": "Ожидание подключения...", + "Transferring data...": "Передача данных...", + "USB connected, sending file list": "USB подключено, отправка списка файлов", + "Sent file list, waiting for command...": "Список файлов отправлен, ожидание команды...", + "waiting for usb connection...": "ожидание подключения USB...", + "Disable MTP for usb install": "MTP отключён для установки по USB", + "Re-enabled MTP": "MTP снова включен", + "Installed via usb": "Установлено по USB", + "Usb install success!": "Установка по USB успешна!", + "Usb install failed!": "Сбой установки по USB!", + "Press B to exit...": "Нажмите B для выхода...", + "GameCard Install": "Установка с картриджа", + "GameCard": "Картридж", + "GC": "GC", + "System memory %.1f GB": "NAND %.1f ГБ", + "microSD card %.1f GB": "microSD %.1f ГБ", + "Exit": "Выход", + "Install disabled...\nPlease enable installing via the install options.": "Установка отключена...\nПожалуйста, включите установку в опциях установки.", + "No GameCard inserted": "Картридж не вставлен", + "GameCard is already trimmed!": "Картридж уже обрезан!", + "WARNING: GameCard is already trimmed!": "ВНИМАНИЕ: Картридж уже обрезан!", + "Continue": "Продолжить", + "Gc install success!": "Установка с картриджа успешна!", + "Gc install failed!": "Сбой установки с картриджа!", + + "IRS (Infrared Joycon Camera)": "IRS (инфракрасная камера JoyCon)", + "IRS": "IRS", + "Irs": "IRS", + "Ambient Noise Level: ": "Уровень фонового шума: ", + "Controller": "Контроллер", + "Pad ": "Геймпад ", + "HandHeld": "Портатив", + " (Available)": " (Доступно)", + " (Unsupported)": " (Не поддерживается)", + " (Unconnected)": " (Не подключено)", + "Rotation": "Поворот", + "0 (Sideways)": "0 (боком)", + "90 (Flat)": "90 (ровно)", + "180 (-Sideways)": "180 (-боком)", + "270 (Upside down)": "270 (перевернуто)", + "Colour": "Цвет", + "Grey": "Серый", + "Ironbow": "Фьюжн", + "Green": "Зеленый", + "Red": "Красный", + "Blue": "Синий", + "Light Target": "Светодиоды", + "All leds": "Все", + "Bright group": "Яркие", + "Dim group": "Тусклые", + "None": "Отключены", + "Gain": "Яркость", + "Negative Image": "Негатив", + "Normal image": "Отключён", + "Negative image": "Включен", + "Format": "Разрешение", + "Trimming Format": "Обрезка", + "External Light Filter": "Внешний светофильтр", + "Load Default": "По умолчанию", + + "Web": "Браузер", + "Select URL": "Выберите URL", + "Enter custom URL": "Введите свой URL", + "Enter URL": "Введите URL", + + "Advanced": "Продвинутые опции", + "Advanced Options": "Расширенные опции", + "Advanced options": "Расширенные опции", + "Logging": "Логи", + "Replace hbmenu on exit": "Замена hbmenu при выходе", + "Restore hbmenu?": "Восстановить hbmenu?", + "Restore": "Восстановить", + "Failed to find /switch/hbmenu.nro\nUse the Appstore to re-install hbmenu": "Не удалось найти /switch/hbmenu.nro\nИспользуйте Appstore для переустановки hbmenu", + "Failed to restore hbmenu, please re-download hbmenu": "Не удалось восстановить hbmenu, пожалуйста, загрузите его снова", + "Failed to restore hbmenu, using sphaira instead": "Не удалось восстановить hbmenu, используется sphaira", + "Restored hbmenu, closing sphaira": "hbmenu восстановлен, закрытие sphaira", + "Restored hbmenu": "hbmenu восстановлен", + "Restart Sphaira?": "Перезапустить Sphaira?", + "Press OK to restart Sphaira": "Нажмите OK для перезапуска Sphaira", + "Boost CPU during transfer": "Разгон CPU при передаче", + "Text scroll speed": "Скорость текста", + "Slow": "Медленная", + "Normal": "Обычная", + "Fast": "Быстрая", + "Set left-side menu": "Меню слева", + "Set right-side menu": "Меню справа", + "Install options": "Опции установки", + "Install Options": "Опции установки", + "Enable sysmmc": "Включить на сиснанде", + "Enable emummc": "Включить на эмунанде", + "Show install warning": "Предупрежд. при установке", + "Install location": "Место установки", + "System memory": "NAND", + "microSD card": "microSD", + "Allow downgrade": "Разрешить даунгрейд", + "Skip if already installed": "Пропуск установленного", + "Ticket only": "Только тикет", + "Skip base": "Пропустить базу игры", + "Skip patch": "Пропустить патч", + "Skip dlc": "Пропустить DLC", + "Skip data patch": "Пропустить патч данных", + "Skip ticket": "Пропустить тикет", + "Skip NCA hash verify": "Не проверять NCA hash", + "Skip RSA header verify": "Не проверять RSA header", + "Skip RSA NPDM verify": "Не проверять RSA NPDM", + "Ignore distribution bit": "Игнор. битa распределения", + "Convert to common ticket": "Конверт. в общий тикет", + "Convert to standard crypto": "Конверт. в стандарт. крипт.", + "Lower master key": "Снизить мастер-ключ", + "Lower system version": "Снизить версию системы", + "Disable erpt_reports": "Отключить \"erpt_reports\"", + + "Homebrew": "Homebrew", + "Apps": "Приложения", + "Homebrew Options": "Опции Homebrew", + "Hide Sphaira": "Скрыть Sphaira", + "Install Forwarder": "Установить форвардер", + "Hide": "Скрыть", + "Show hidden": "Показать скрытые", + "WARNING: Installing forwarders will lead to a ban!": "ВНИМАНИЕ: \nУстановка в сиснанд приведет к бану!", + "Installing Forwarder": "Установка форвардера", + "Creating Program": "Создание программы", + "Creating Control": "Создание элемента управления", + "Creating Meta": "Создание меты", + "Writing Nca": "Запись NCA", + "Updating ncm database": "Обновление базы данных NCM", + "Pushing application record": "Добавление записи приложения", + "Failed to install forwarder": "Не удалось установить форвардер", + "Unstar": "Убрать из избранного", + "Star": "Добавить в избранное", + "Unstarred ": "Удалено из избранного: ", + "Starred ": "Добавлено в избранное: ", + "Failed to remove old forwarder, please manually remove it!": "Не удалось удалить старый форвардер, удалите его вручную!", + + "AppStore": "AppStore", + "Appstore": "AppStore", + "Store": "Магазин", + "Filter: %s | Sort: %s | Order: %s": "Показывать: %s | Сортировка: %s | Порядок: %s", + "AppStore Options": "Опции AppStore", + "Info": "Информация", + "Changelog": "Список изменений", + "Details": "Подробности", + "version: %s": "версия: %s", + "updated: %s": "обновлено: %s", + "category: %s": "категория: %s", + "extracted: %.2f MiB": "извлечено: %.2f MiB", + "app_dls: %s": "app_dls: %s", + "More by Author": "Другое от автора", + "Leave Feedback": "Оставить отзыв", + "Visit Website": "Посетить сайт", + + "FileBrowser": "Файлы", + "Files": "Файлы", + "%zd files": "%zd файлы", + "%zd dirs": "%zd разделы", + "File Options": "Опции файла", + "Show Hidden": "Показать скрытые", + "Folders First": "Папки в начале", + "Hidden Last": "Скрытые в конце", + "Split": "Разделить", + "Cut": "Вырезать", + "Copy": "Копировать", + "Copying ": "Копирование ", + "Paste": "Вставить", + "Paste file(s)?": "Вставить файл(ы)?", + "Pasting ": "Вставка ", + "Pasting": "Вставка", + "Rename": "Переименовать", + "Set New File Name": "Задайте новое имя файла", + "Failed to delete directory": "Не удалось удалить папку", + "Failed to delete file": "Не удалось удалить файл", + "Extract zip": "Распаковать .zip", + "Extract Options": "Опции распаковки", + "Extract here": "Распаковать сюда", + "Extract to root": "Распаковать в корень", + "Are you sure you want to extract to root?": "Вы уверены, что хотите распаковать в корень?", + "Extract to...": "Распаковать в...", + "Enter the path to the folder to extract into": "Введите путь к папке для распаковки", + "Extracting ": "Распаковка ", + "Extract success!": "Распаковка успешна!", + "Extract failed!": "Сбой распаковки!", + "Compress to zip": "Сжать в .zip", + "Compress Options": "Опции сжатия", + "Compress": "Сжать", + "Compress to...": "Сжать в...", + "Compressing ": "Сжатие ", + "Compress success!": "Сжатие успешно!", + "Compress failed!": "Сбой сжатия!", + "Create File": "Создать файл", + "Set File Name": "Укажите имя файла", + "Create Folder": "Создать папку", + "Set Folder Name": "Укажите имя папки", + "Creating ": "Создание ", + "View as text (unfinished)": "Открыть как текст (не доделано)", + "Upload": "Отправить", + "Select upload location": "Выберите место загрузки", + "No upload locations set!": "Места загрузки не заданы!", + "Uploading": "Отправка", + "Upload successfull!": "Отправка успешна!", + "Upload failed!": "Сбой Отправки!", + "Hash": "Хэш", + "Hash Options": "Опции хэша", + "Hashing": "Вычисление хэша", + "Failed to hash file...": "Не удалось вычислить хэш файла...", + "Ignore read only": "Игнор. только для чтения", + "Mount": "Монтировать", + "Sd": "Micro SD", + "Image System memory": "Альбом Сиснанда", + "Image microSD card": "Альбом Эмунанда", + "Empty...": "Пусто...", + "Open with DayBreak?": "Открыть с помощью DayBreak?", + "Launch ": "Запуск ", + "Launch option for: ": "Опции запуска для: ", + "Select launcher for: ": "Выберите загрузчик для: ", + "Close FileBrowser?": "Закрыть Файлы?", + + "Sort By": "Сортировка", + "Sort Options": "Опции сортировки", + "Filter": "Показывать", + "All": "Всё", + "Emulators": "Эмуляторы", + "Tools": "Инструменты", + "Themes": "Темы", + "Legacy": "Легаси", + "Sort": "Сортировать", + "Size": "По размеру", + "Size (Star)": "По размеру (избр.)", + "Alphabetical": "По имени", + "Alphabetical (Star)": "По имени (избр.)", + "Updated": "По дате", + "Updated (Star)": "По дате (избр.)", + "Downloads": "По загрузкам", + "Likes": "По лайкам", + "ID": "По ID", + "Order": "Порядок", + "Descending": "По убыванию", + "Descending (down)": "По убыванию", + "Desc": "По убыванию", + "Ascending": "По возрастанию", + "Ascending (Up)": "По возрастанию", + "Asc": "По возрастанию", + "Layout": "Макет", + "List": "Список", + "Icon": "Иконки", + "Grid": "Сетка", + "Search": "Поиск", + + "Options": "Опции", + "Split": "Разделить", + "OK": "ОК", + "Back": "Назад", + "Select": "Выбрать", + "Open": "Открыть", + "Close": "Закрыть", + "Launch": "Запуск", + "Restart": "Перезапустить", + "Next": "Далее", + "Prev": "Назад", + "Yes": "Да", + "No": "Нет", + "On": "Вкл", + "Off": "Выкл", + + "Install": "Установить", + "Install Selected files?": "Установить выбранные файлы?", + "Installing ": "Установка ", + "Installed ": "Установлено ", + "Installed!": "Установлено!", + "Trying to load ": "Попытка загрузить ", + "Checking MD5": "Проверка MD5", + + "Delete": "Удалить", + "Delete Selected files?": "Удалить выбранные файлы?", + "Are you sure you want to delete ": "Вы уверены, что хотите удалить ", + "Scanning ": "Сканирование ", + "Deleting ": "Удаление ", + "Deleting": "Удаление", + "Remove": "Удалить", + "Completely remove ": "Полностью удалить ", + "Removing ": "Удаляется ", + "Uninstalling ": "Деинсталляция ", + "Removed ": "Удалено ", + + "Download": "Скачать", + "Downloading ": "Загрузка ", + "Downloaded ": "Загружено ", + "Download via the Network options!": "Скачайте через: Меню - Сеть", + + "Update": "Обновить", + "Update avaliable: ": "Доступно обновление: ", + "Download update: ": "Скачать обновление: ", + "Updated to ": "Обновлено до ", + "Failed to download update": "Не удалось загрузить обновление", + + "%zu hours %zu minutes remaining": "Осталось %zu ч %zu мин", + "%zu minutes %zu seconds remaining": "Осталось %zu мин %zu сек", + "%zu seconds remaining": "Осталось %zu сек", + + "Loading...": "Загрузка...", + "Loading": "Загрузка", + "Empty!": "Пусто!", + "Not Ready...": "Не готово...", + "Error loading page!": "Ошибка загрузки страницы!" +} diff --git a/config/status-monitor/config.ini b/config/status-monitor/config.ini index 6c72735..3518279 100644 --- a/config/status-monitor/config.ini +++ b/config/status-monitor/config.ini @@ -1,8 +1,8 @@ [status-monitor] -ultra=Ultra +preset=Ultra battery_avg_iir_filter=false battery_time_left_refreshrate=60 -average_gpu_load=true +average_gpu_load=false [full] refresh_rate=1 @@ -10,18 +10,24 @@ layer_width_align=left show_real_freqs=true show_deltas=true show_target_freqs=true +show_fps=true +show_res=true [mini] refresh_rate=1 layer_width_align=left layer_height_align=top -handheld_font_size=15 -docked_font_size=15 +handheld_font_size=14 +docked_font_size=14 +spacing=4 real_freqs=true real_volts=true -show=CPU+GPU+RAM+TEMP+DRAW+RES+FPS -replace_MB_with_RAM_load=true +show=CPU+GPU+RAM+TMP+BAT+RES+FPS +show_full_cpu=true +show_full_res=true +#replace_MB_with_RAM_load=true background_color=#1117 +separator_color=2DFF cat_color=#CDEF text_color=#FFFF @@ -33,34 +39,35 @@ docked_font_size=12 text_align=left real_freqs=true real_volts=true -show=CPU+GPU+RAM+BRDB+FPS+BATE -;all modules: CPU GPU RAM (SOC BRD BRDB) FAN (BAT BATB BATE) (FPS FPSE) -replace_GB_with_RAM_load=true +show=CPU+GPU+RAM+TMP+RES+FPS+BAT show_full_cpu=true +show_full_res=false +#replace_GB_with_RAM_load=true background_color=#1113 +separator_color=#2DFF cat_color=#BDFF text_color=#FFFF [fps-counter] layer_width_align=left layer_height_align=top -handheld_font_size=28 -docked_font_size=28 +handheld_font_size=24 +docked_font_size=24 text_color=#0F0F -background_color=#1117 +background_color=#111A [fps-graph] layer_width_align=left layer_height_align=top max_fps_text_color=#FFFF min_fps_text_color=#FFFF -background_color=#1117 +background_color=#111A fps_counter_color=#4444 border_color=#F77F dashed_line_color=#8888 main_line_color=#FFFF -rounded_line_color=#0C0F -perfect_line_color=#F0FF +rounded_line_color=#F0FF +perfect_line_color=#0C0F show_info=true [game_resolutions] diff --git a/config/sys-clk/config.ini b/config/sys-clk/config.ini index 39c4a1f..bba842d 100644 --- a/config/sys-clk/config.ini +++ b/config/sys-clk/config.ini @@ -1,4 +1,4 @@ [values] -gpu_dvfs=1 +gpu_dvfs=2 sync_reversenx=1 uncapped_clocks=1 diff --git a/config/sys-clk/lang/de.json b/config/sys-clk/lang/de.json new file mode 100644 index 0000000..bcc4d45 --- /dev/null +++ b/config/sys-clk/lang/de.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "App-Profil bearbeiten", + "Advanced": "Erweitert", + "Edit Global Profile": "Globales Profil bearbeiten", + "Temporary Overrides": "Temporäre Überschreibungen", + "Settings": "Einstellungen", + "Enable": "Aktivieren", + "Uncapped Clocks": "Unbegrenzte Taktraten", + "Override Boost Mode": "Boost-Modus überschreiben", + "Auto CPU Boost": "Automatischer CPU-Boost", + "Sync ReverseNX": "ReverseNX synchronisieren", + "GPU DVFS": "GPU-DVFS", + "Off": "Aus", + "Official Service Method": "Offizielle Servicemethode", + "Hijack Method": "Hijack-Methode", + "App ID": "App-ID", + "EOS mode": "EOS-Modus", + "Skin": "Look", + "Now": "Jetzt", + "Avg": "Ø", + "Docked": "Gedockt", + "Handheld": "Handheld", + "Charging": "Lädt", + "Official Charger": "Offizielles Ladegerät", + "USB Charger": "USB-Ladegerät", + "Memory": "Speicher", + "Do not override": "Nicht überschreiben", + "Profile": "Profil" +} diff --git a/config/sys-clk/lang/en.json b/config/sys-clk/lang/en.json new file mode 100644 index 0000000..baa348c --- /dev/null +++ b/config/sys-clk/lang/en.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Edit App Profile", + "Advanced": "Advanced", + "Edit Global Profile": "Edit Global Profile", + "Temporary Overrides": "Temporary Overrides", + "Settings": "Settings", + "Enable": "Enable", + "Uncapped Clocks": "Uncapped Clocks", + "Override Boost Mode": "Override Boost Mode", + "Auto CPU Boost": "Auto CPU Boost", + "Sync ReverseNX": "Sync ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Off", + "Official Service Method": "Official Service Method", + "Hijack Method": "Hijack Method", + "App ID": "App ID", + "EOS mode": "EOS mode", + "Skin": "Skin", + "Now": "Now", + "Avg": "Avg", + "Docked": "Docked", + "Handheld": "Handheld", + "Charging": "Charging", + "Official Charger": "Official Charger", + "USB Charger": "USB Charger", + "Memory": "Memory", + "Do not override": "Do not overrride", + "Profile": "Profile" +} diff --git a/config/sys-clk/lang/es.json b/config/sys-clk/lang/es.json new file mode 100644 index 0000000..cfc32d4 --- /dev/null +++ b/config/sys-clk/lang/es.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Editar perfil de la app", + "Advanced": "Avanzado", + "Edit Global Profile": "Editar perfil global", + "Temporary Overrides": "Anulaciones temporales", + "Settings": "Configuración", + "Enable": "Habilitar", + "Uncapped Clocks": "Relojes sin límite", + "Override Boost Mode": "Sobrescribir modo Boost", + "Auto CPU Boost": "Impulso automático de CPU", + "Sync ReverseNX": "Sincronizar con ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Apagado", + "Official Service Method": "Método de servicio oficial", + "Hijack Method": "Método de secuestro", + "App ID": "ID App", + "EOS mode": "Modo EOS", + "Skin": "Tema", + "Now": "Ahora", + "Avg": "Med", + "Docked": "Conectado al dock", + "Handheld": "Portátil", + "Charging": "Cargando", + "Official Charger": "Cargador oficial", + "USB Charger": "Cargador USB", + "Memory": "Memoria", + "Do not override": "No sobrescribir", + "Profile": "Perfil" +} diff --git a/config/sys-clk/lang/fr.json b/config/sys-clk/lang/fr.json new file mode 100644 index 0000000..c1eb418 --- /dev/null +++ b/config/sys-clk/lang/fr.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Modifier profil", + "Advanced": "Avancé", + "Edit Global Profile": "Modifier global", + "Temporary Overrides": "Remplacements temporaires", + "Settings": "Paramètres", + "Enable": "Activer", + "Uncapped Clocks": "Horloges sans limite", + "Override Boost Mode": "Forcer mode Boost", + "Auto CPU Boost": "Boost CPU auto", + "Sync ReverseNX": "Synchroniser ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Éteint", + "Official Service Method": "Service officiel", + "Hijack Method": "Détournement", + "App ID": "ID App", + "EOS mode": "Mode EOS", + "Skin": "Skin", + "Now": "Act", + "Avg": "Moy", + "Docked": "Ancré", + "Handheld": "Portable", + "Charging": "En charge", + "Official Charger": "Chargeur off.", + "USB Charger": "Chargeur USB", + "Memory": "Mémoire", + "Do not override": "Ne pas remplacer", + "Profile": "Profil" +} diff --git a/config/sys-clk/lang/it.json b/config/sys-clk/lang/it.json new file mode 100644 index 0000000..fe9ed3f --- /dev/null +++ b/config/sys-clk/lang/it.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Modifica profilo app", + "Advanced": "Avanzate", + "Edit Global Profile": "Modifica profilo globale", + "Temporary Overrides": "Sostituzioni temporanee", + "Settings": "Impostazioni", + "Enable": "Abilita", + "Uncapped Clocks": "Clock senza limiti", + "Override Boost Mode": "Forza modalità Boost", + "Auto CPU Boost": "Boost CPU automatico", + "Sync ReverseNX": "Sincronizza con ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Spento", + "Official Service Method": "Servizio ufficiale", + "Hijack Method": "Dirottamento", + "App ID": "ID App", + "EOS mode": "Modalità EOS", + "Skin": "Tema", + "Now": "Ora", + "Avg": "Media", + "Docked": "In modalità dock", + "Handheld": "Portatile", + "Charging": "In carica", + "Official Charger": "Caricatore ufficiale", + "USB Charger": "Caricatore USB", + "Memory": "Memoria", + "Do not override": "Non sovrascrivere", + "Profile": "Profilo" +} diff --git a/config/sys-clk/lang/ja.json b/config/sys-clk/lang/ja.json new file mode 100644 index 0000000..48b67f1 --- /dev/null +++ b/config/sys-clk/lang/ja.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "アプリプロフィールを編集", + "Advanced": "詳細設定", + "Edit Global Profile": "グローバルプロフィールを編集", + "Temporary Overrides": "一時的なオーバーライド", + "Settings": "設定", + "Enable": "有効化", + "Uncapped Clocks": "クロック制限解除", + "Override Boost Mode": "ブーストモードをオーバーライド", + "Auto CPU Boost": "自動CPUブースト", + "Sync ReverseNX": "ReverseNXと同期", + "GPU DVFS": "GPU DVFS", + "Off": "オフ", + "Official Service Method": "公式サービス", + "Hijack Method": "ハイジャック", + "App ID": "アプリID", + "EOS mode": "EOSモード", + "Skin": "スキン", + "Now": "現在", + "Avg": "平均", + "Docked": "ドックモード", + "Handheld": "携帯モード", + "Charging": "充電中", + "Official Charger": "公式充電器", + "USB Charger": "USB充電器", + "Memory": "メモリ", + "Do not override": "オーバーライドしない", + "Profile": "プロフィール" +} diff --git a/config/sys-clk/lang/ko.json b/config/sys-clk/lang/ko.json new file mode 100644 index 0000000..485be7c --- /dev/null +++ b/config/sys-clk/lang/ko.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "앱 프로필 편집", + "Advanced": "고급 설정", + "Edit Global Profile": "글로벌 프로필 편집", + "Temporary Overrides": "임시 오버라이드", + "Settings": "설정", + "Enable": "활성화", + "Uncapped Clocks": "클럭 제한 해제", + "Override Boost Mode": "부스트 모드 오버라이드", + "Auto CPU Boost": "자동 CPU 부스트", + "Sync ReverseNX": "ReverseNX 동기화", + "GPU DVFS": "GPU DVFS", + "Off": "끔", + "Official Service Method": "공식 서비스", + "Hijack Method": "하이재킹", + "App ID": "앱 ID", + "EOS mode": "EOS 모드", + "Skin": "스킨", + "Now": "현재", + "Avg": "평균", + "Docked": "독 모드", + "Handheld": "휴대 모드", + "Charging": "충전 중", + "Official Charger": "공식 충전기", + "USB Charger": "USB 충전기", + "Memory": "메모리", + "Do not override": "오버라이드 안 함", + "Profile": "프로필" +} diff --git a/config/sys-clk/lang/nl.json b/config/sys-clk/lang/nl.json new file mode 100644 index 0000000..cbc2f48 --- /dev/null +++ b/config/sys-clk/lang/nl.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "App-profiel bewerken", + "Advanced": "Geavanceerd", + "Edit Global Profile": "Globaal profiel bewerken", + "Temporary Overrides": "Tijdelijke overschrijvingen", + "Settings": "Instellingen", + "Enable": "Inschakelen", + "Uncapped Clocks": "Ongelimiteerde kloksnelheden", + "Override Boost Mode": "Boostmodus overschrijven", + "Auto CPU Boost": "Automatische CPU-boost", + "Sync ReverseNX": "ReverseNX synchroniseren", + "GPU DVFS": "GPU DVFS", + "Off": "Uit", + "Official Service Method": "Officiële service", + "Hijack Method": "Kapingsmethode", + "App ID": "App-ID", + "EOS mode": "EOS-modus", + "Skin": "Thema", + "Now": "Nu", + "Avg": "Gem", + "Docked": "In dockingstation", + "Handheld": "Handheld", + "Charging": "Bezig met opladen", + "Official Charger": "Officiële oplader", + "USB Charger": "USB-oplader", + "Memory": "Geheugen", + "Do not override": "Niet overschrijven", + "Profile": "Profiel" +} diff --git a/config/sys-clk/lang/pl.json b/config/sys-clk/lang/pl.json new file mode 100644 index 0000000..b5bc9a4 --- /dev/null +++ b/config/sys-clk/lang/pl.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Edytuj profil aplikacji", + "Advanced": "Zaawansowane", + "Edit Global Profile": "Edytuj profil globalny", + "Temporary Overrides": "Tymczasowe nadpisania", + "Settings": "Ustawienia", + "Enable": "Włącz", + "Uncapped Clocks": "Nieograniczone taktowanie", + "Override Boost Mode": "Nadpisz tryb Boost", + "Auto CPU Boost": "Automatyczny Boost CPU", + "Sync ReverseNX": "Synchronizuj z ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Wył.", + "Official Service Method": "Oficjalna usługa", + "Hijack Method": "Przejęcie", + "App ID": "ID app", + "EOS mode": "Tryb EOS", + "Skin": "Motyw", + "Now": "Teraz", + "Avg": "Średnia", + "Docked": "W dokowaniu", + "Handheld": "Tryb przenośny", + "Charging": "Ładowanie", + "Official Charger": "Oficjalna ładowarka", + "USB Charger": "Ładowarka USB", + "Memory": "Pamięć", + "Do not override": "Nie nadpisuj", + "Profile": "Profil" +} diff --git a/config/sys-clk/lang/pt.json b/config/sys-clk/lang/pt.json new file mode 100644 index 0000000..119357f --- /dev/null +++ b/config/sys-clk/lang/pt.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Editar perfil do app", + "Advanced": "Avançado", + "Edit Global Profile": "Editar perfil global", + "Temporary Overrides": "Substituições temporárias", + "Settings": "Configurações", + "Enable": "Ativar", + "Uncapped Clocks": "Clock ilimitado", + "Override Boost Mode": "Substituir modo Boost", + "Auto CPU Boost": "Boost automático CPU", + "Sync ReverseNX": "Sync ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Desligado", + "Official Service Method": "Serviço oficial", + "Hijack Method": "Sequestro", + "App ID": "ID app", + "EOS mode": "Modo EOS", + "Skin": "Tema", + "Now": "Ag", + "Avg": "Méd", + "Docked": "Acoplado", + "Handheld": "Portátil", + "Charging": "Carregando", + "Official Charger": "Carreg. of.", + "USB Charger": "Carregador USB", + "Memory": "Memória", + "Do not override": "Não substituir", + "Profile": "Perfil" +} diff --git a/config/sys-clk/lang/ru.json b/config/sys-clk/lang/ru.json new file mode 100644 index 0000000..e320dc5 --- /dev/null +++ b/config/sys-clk/lang/ru.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Профиль приложения", + "Advanced": "Продвинутые", + "Edit Global Profile": "Глобальный профиль", + "Temporary Overrides": "Временный профиль", + "Settings": "Настройки", + "Enable": "sys-clk", + "Uncapped Clocks": "Не ограничивать MHz", + "Override Boost Mode": "Замещать Boost", + "Auto CPU Boost": "Авто Boost CPU", + "Sync ReverseNX": "Синхр. с ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Отключен", + "Official Service Method": "Сервисный метод", + "Hijack Method": "Метод перехвата", + "App ID": "App ID", + "EOS mode": "Режим EOS", + "Skin": "Плата", + "Now": "Сейчас", + "Avg": "Средн.", + "Docked": "В доке", + "Handheld": "Портатив", + "Charging": "На зарядке", + "Official Charger": "Офиц. зарядка", + "USB Charger": "USB зарядка", + "Memory": "RAM", + "Do not override": "По умолчанию", + "Profile": "Профиль" +} diff --git a/config/sys-clk/lang/uk.json b/config/sys-clk/lang/uk.json new file mode 100644 index 0000000..b332d72 --- /dev/null +++ b/config/sys-clk/lang/uk.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "Редагувати профіль", + "Advanced": "Розширені", + "Edit Global Profile": "Редагувати глобальний", + "Temporary Overrides": "Тимчасові заміни", + "Settings": "Налаштування", + "Enable": "Увімкнути", + "Uncapped Clocks": "Без обмежень", + "Override Boost Mode": "Перезапис Boost", + "Auto CPU Boost": "Авто Boost CPU", + "Sync ReverseNX": "Синхр. ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "Вимкнено", + "Official Service Method": "Офіційний сервіс", + "Hijack Method": "Захоплення", + "App ID": "ID ап.", + "EOS mode": "Режим EOS", + "Skin": "Тема", + "Now": "Зараз", + "Avg": "Середн.", + "Docked": "У доку", + "Handheld": "Портативний", + "Charging": "Зарядка", + "Official Charger": "Оф. зарядка", + "USB Charger": "USB зарядка", + "Memory": "Пам’ять", + "Do not override": "Не змінювати", + "Profile": "Профіль" +} diff --git a/config/sys-clk/lang/zh-cn.json b/config/sys-clk/lang/zh-cn.json new file mode 100644 index 0000000..0760353 --- /dev/null +++ b/config/sys-clk/lang/zh-cn.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "编辑应用配置", + "Advanced": "高级", + "Edit Global Profile": "编辑全局配置", + "Temporary Overrides": "临时覆盖", + "Settings": "设置", + "Enable": "启用", + "Uncapped Clocks": "无限时钟", + "Override Boost Mode": "覆盖加速模式", + "Auto CPU Boost": "自动CPU加速", + "Sync ReverseNX": "同步ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "关闭", + "Official Service Method": "官方服务", + "Hijack Method": "劫持", + "App ID": "应用ID", + "EOS mode": "EOS模式", + "Skin": "皮肤", + "Now": "当前", + "Avg": "平均", + "Docked": "底座模式", + "Handheld": "手持模式", + "Charging": "充电中", + "Official Charger": "官方充电器", + "USB Charger": "USB充电器", + "Memory": "内存", + "Do not override": "不覆盖", + "Profile": "配置文件" +} diff --git a/config/sys-clk/lang/zh-tw.json b/config/sys-clk/lang/zh-tw.json new file mode 100644 index 0000000..5fa1df9 --- /dev/null +++ b/config/sys-clk/lang/zh-tw.json @@ -0,0 +1,29 @@ +{ + "Edit App Profile": "編輯應用設定", + "Advanced": "進階", + "Edit Global Profile": "編輯全域設定", + "Temporary Overrides": "臨時覆蓋", + "Settings": "設定", + "Enable": "啟用", + "Uncapped Clocks": "無限制時脈", + "Override Boost Mode": "覆蓋加速模式", + "Auto CPU Boost": "自動CPU加速", + "Sync ReverseNX": "同步ReverseNX", + "GPU DVFS": "GPU DVFS", + "Off": "關閉", + "Official Service Method": "官方服務", + "Hijack Method": "劫持", + "App ID": "應用ID", + "EOS mode": "EOS模式", + "Skin": "外觀主題", + "Now": "目前", + "Avg": "平均", + "Docked": "座充模式", + "Handheld": "手持模式", + "Charging": "充電中", + "Official Charger": "官方充電器", + "USB Charger": "USB充電器", + "Memory": "記憶體", + "Do not override": "不覆蓋", + "Profile": "設定檔" +} diff --git a/config/sys-con/config.ini b/config/sys-con/config.ini index 6d44fbb..8a9c6d2 100644 --- a/config/sys-con/config.ini +++ b/config/sys-con/config.ini @@ -14,7 +14,7 @@ polling_timeout_ms=10 ; 44 is the usual priority of the main thread ; 59 is a special priority on cores 0..2 that enables preemptive multithreading ; 63 is a special priority on core 3 that enables preemptive multithreading -polling_thread_priority=30 +polling_thread_priority=41 ;log_level Trace=0, Debug=1, Performance=2, Info=3, Warning=4, Error=5 log_level=3 @@ -1424,3 +1424,10 @@ profile=xbox360 [2f24-0050] profile=xbox360 + +[03eb-8041] ;L-TEK Dance Pad PRO +dpad_left=1 +dpad_right=2 +dpad_up=3 +dpad_down=4 +a=11 diff --git a/config/ultrahand/overlays.ini b/config/ultrahand/overlays.ini index 0cefbaf..b112a1a 100644 --- a/config/ultrahand/overlays.ini +++ b/config/ultrahand/overlays.ini @@ -1,8 +1,12 @@ -[Ultra.ovl] +[sys-clk-overlay.ovl] priority=0 +key_combo=L+R+DLEFT [Status-Monitor-Overlay.ovl] priority=1 +mode_args=(-mini, -micro) +mode_labels=(Mini, Micro) +mode_combos=(, L+R+DDOWN) [FPSLocker.ovl] priority=2 diff --git a/config/ultrahand/packages.ini b/config/ultrahand/packages.ini index 7b27c80..df691ea 100644 --- a/config/ultrahand/packages.ini +++ b/config/ultrahand/packages.ini @@ -1,2 +1,3 @@ [Ultra Tuner] priority=0 +key_combo=L+R+DRIGHT diff --git a/config/ultrahand/theme.ini b/config/ultrahand/theme.ini index 30114c0..5470751 100644 --- a/config/ultrahand/theme.ini +++ b/config/ultrahand/theme.ini @@ -1,5 +1,9 @@ [theme] +bad_ram_text_color=FF0000 +banner_version_text_color=AAAAAA +battery_charging_color=00FF00 battery_color=#FFFFFF +battery_low_color=FF0000 bg_alpha=13 bg_color=#000000 bottom_button_color=#FFFFFF @@ -18,6 +22,7 @@ dynamic_logo_color_1=#00AAFF dynamic_logo_color_2=#FFFFFF header_separator_color=#FFFFFF header_text_color=#FFFFFF +healthy_ram_text_color=00FF00 highlight_color_1=#00AAFF highlight_color_2=#FFFFFF highlight_color_3=#00AAFF @@ -27,14 +32,25 @@ invalid_text_color=#FF0000 invert_bg_click_color=false logo_color_1=#FFFFFF logo_color_2=#FFFFFF +neutral_ram_text_color=FFAA00 off_text_color=#AAAAAA on_text_color=#00DDFF +ovl_entry_highlight_text_color=#FFFFFF +ovl_entry_text_color=#FFFFFF +ovl_version_highlight_text_color=#AADDFF +ovl_version_text_color=AAAAAA +pkg_entry_highlight_text_color=#FFFFFF +pkg_entry_text_color=#FFFFFF +pkg_version_highlight_text_color=#AADDFF +pkg_version_text_color=AAAAAA progress_alpha=7 progress_color=#777777 selection_bg_alpha=13 selection_bg_color=#000000 selection_star_color=#FFFFFF selection_text_color=#FFFFFF +separator_alpha=15 +separator_color=404040 seperator_alpha=7 seperator_color=#777777 star_color=#FFFFFF @@ -42,7 +58,10 @@ table_bg_alpha=10 table_bg_color=#303030 table_info_text_color=#AADDFF table_section_text_color=#FFFFFF +temperature_color=#FFFFFF text_color=#FFFFFF +text_separator_color=404040 +top_separator_color=404040 trackbar_color=#555555 trackbar_empty_color=#404040 trackbar_full_color=#AADDFF @@ -51,3 +70,6 @@ trackbar_slider_color=#606060 trackbar_slider_malleable_color=#A0A0A0 version_text_color=#AAAAAA warning_text_color=#FF7777 +widget_backdrop_alpha=15 +widget_backdrop_color=#000000 + diff --git a/config/ultrahand/themes/Ultra Paw.ini b/config/ultrahand/themes/Ultra Paw.ini index 30114c0..5470751 100644 --- a/config/ultrahand/themes/Ultra Paw.ini +++ b/config/ultrahand/themes/Ultra Paw.ini @@ -1,5 +1,9 @@ [theme] +bad_ram_text_color=FF0000 +banner_version_text_color=AAAAAA +battery_charging_color=00FF00 battery_color=#FFFFFF +battery_low_color=FF0000 bg_alpha=13 bg_color=#000000 bottom_button_color=#FFFFFF @@ -18,6 +22,7 @@ dynamic_logo_color_1=#00AAFF dynamic_logo_color_2=#FFFFFF header_separator_color=#FFFFFF header_text_color=#FFFFFF +healthy_ram_text_color=00FF00 highlight_color_1=#00AAFF highlight_color_2=#FFFFFF highlight_color_3=#00AAFF @@ -27,14 +32,25 @@ invalid_text_color=#FF0000 invert_bg_click_color=false logo_color_1=#FFFFFF logo_color_2=#FFFFFF +neutral_ram_text_color=FFAA00 off_text_color=#AAAAAA on_text_color=#00DDFF +ovl_entry_highlight_text_color=#FFFFFF +ovl_entry_text_color=#FFFFFF +ovl_version_highlight_text_color=#AADDFF +ovl_version_text_color=AAAAAA +pkg_entry_highlight_text_color=#FFFFFF +pkg_entry_text_color=#FFFFFF +pkg_version_highlight_text_color=#AADDFF +pkg_version_text_color=AAAAAA progress_alpha=7 progress_color=#777777 selection_bg_alpha=13 selection_bg_color=#000000 selection_star_color=#FFFFFF selection_text_color=#FFFFFF +separator_alpha=15 +separator_color=404040 seperator_alpha=7 seperator_color=#777777 star_color=#FFFFFF @@ -42,7 +58,10 @@ table_bg_alpha=10 table_bg_color=#303030 table_info_text_color=#AADDFF table_section_text_color=#FFFFFF +temperature_color=#FFFFFF text_color=#FFFFFF +text_separator_color=404040 +top_separator_color=404040 trackbar_color=#555555 trackbar_empty_color=#404040 trackbar_full_color=#AADDFF @@ -51,3 +70,6 @@ trackbar_slider_color=#606060 trackbar_slider_malleable_color=#A0A0A0 version_text_color=#AAAAAA warning_text_color=#FF7777 +widget_backdrop_alpha=15 +widget_backdrop_color=#000000 + diff --git a/switch/.overlays/FPSLocker.ovl b/switch/.overlays/FPSLocker.ovl index 5edec8b..d06d181 100644 Binary files a/switch/.overlays/FPSLocker.ovl and b/switch/.overlays/FPSLocker.ovl differ diff --git a/switch/.overlays/ReverseNX-RT-ovl.ovl b/switch/.overlays/ReverseNX-RT-ovl.ovl index 0242eaa..247e948 100644 Binary files a/switch/.overlays/ReverseNX-RT-ovl.ovl and b/switch/.overlays/ReverseNX-RT-ovl.ovl differ diff --git a/switch/.overlays/Status-Monitor-Overlay.ovl b/switch/.overlays/Status-Monitor-Overlay.ovl index 39a1a24..238fa1b 100644 Binary files a/switch/.overlays/Status-Monitor-Overlay.ovl and b/switch/.overlays/Status-Monitor-Overlay.ovl differ diff --git a/switch/.overlays/Ultra.ovl b/switch/.overlays/Ultra.ovl deleted file mode 100644 index 50ea482..0000000 Binary files a/switch/.overlays/Ultra.ovl and /dev/null differ diff --git a/switch/.overlays/ovlSysmodules.ovl b/switch/.overlays/ovlSysmodules.ovl index 4b62d4f..23cb838 100644 Binary files a/switch/.overlays/ovlSysmodules.ovl and b/switch/.overlays/ovlSysmodules.ovl differ diff --git a/switch/.overlays/ovlmenu.ovl b/switch/.overlays/ovlmenu.ovl index d7602be..123d29b 100644 Binary files a/switch/.overlays/ovlmenu.ovl and b/switch/.overlays/ovlmenu.ovl differ diff --git a/switch/.overlays/sys-clk-overlay.ovl b/switch/.overlays/sys-clk-overlay.ovl new file mode 100644 index 0000000..aa28478 Binary files /dev/null and b/switch/.overlays/sys-clk-overlay.ovl differ diff --git a/switch/.packages/boot_package.ini b/switch/.packages/boot_package.ini index 3124994..a4ec8d8 100644 --- a/switch/.packages/boot_package.ini +++ b/switch/.packages/boot_package.ini @@ -1,7 +1,16 @@ [boot] clear hex_sum_cache +set-ini-val /config/sphaira/config.ini config replace_hbmenu 0 set-ini-val /config/sphaira/config.ini homebrew hide_sphaira 0 +set-ini-val /config/sys-clk/config.ini values gpu_dvfs 2 + + +hex-by-swap /switch/.overlays/sys-clk-overlay.ovl 4D656D6F7279 52414D000000 +hex-by-swap /switch/.overlays/sys-clk-overlay.ovl 4D454D 52414D +hex-by-swap /switch/.overlays/sys-clk-overlay.ovl 446F206E6F74206F76657272696465 44656661756C740000000000000000 +hex-by-swap /switch/.overlays/sys-clk-overlay.ovl 7379732D636C6B2D6F630000000000000000 556C747261204F4320287379732D636C6B29 +hex-by-swap /switch/.overlays/sys-clk-overlay.ovl 7379732D636C6B0000000000000000000000 556C747261204F4320287379732D636C6B29 del '/atmosphere/config_templates/' @@ -77,7 +86,7 @@ del '/switch/RaytracingNX.nro' del '/switch/.overlays/4IFIR.ovl' del '/switch/.overlays/InfoNX-ovl.ovl' del '/switch/.overlays/Ultra-Status-Monitor.ovl' -del '/switch/.overlays/sys-clk-overlay.ovl' +del '/switch/.overlays/Ultra.ovl' del '/switch/.packages/Ultra Cleaner/' diff --git a/switch/DBI/DBI.nro b/switch/DBI/DBI.nro index d8e7998..83ffadb 100644 Binary files a/switch/DBI/DBI.nro and b/switch/DBI/DBI.nro differ diff --git a/hbmenu.nro b/switch/sphaira/sphaira.nro similarity index 56% rename from hbmenu.nro rename to switch/sphaira/sphaira.nro index f6bbd87..53dc888 100644 Binary files a/hbmenu.nro and b/switch/sphaira/sphaira.nro differ