Compare commits

..

No commits in common. "main" and "2.4-R2" have entirely different histories.
main ... 2.4-R2

145 changed files with 382 additions and 4193 deletions

View File

@ -1,4 +1,4 @@
# UltraNX by **[redraz](https://github.com/redraz)**
# Ultra-NX by **[redraz](https://github.com/redraz)**
![](https://github.com/Ultra-NX/Ultra-Resources/raw/main/Ultra.png)
@ -8,8 +8,7 @@
### Ultra - это функциональная кастомная прошивка для Nintendo Switch, с упором в разгон и улучшенный пользовательский опыт.
### [Ultra 2.5|R1](https://github.com/Ultra-NX/UltraNX/releases) Поддерживает HOS 20.2.0
### [Ultra 2.5|Pre2](https://github.com/Ultra-NX/UltraNX/releases/tag/2.5-R2) Частично поддерживает HOS 20.3.0 (Только Safe Mode)
### [Ultra 2.4|R2](https://github.com/Ultra-NX/UltraNX/releases) Поддерживает HOS 20.1.0 и все ревизии консолей
@ -26,7 +25,9 @@
* Подробная [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.
@ -47,28 +48,28 @@
* [Sphaira](https://github.com/ITotalJustice/sphaira) - Современное Хоумбрю Меню, аналог nx-hbmenu
* [AiO Switch Updater](https://github.com/HamletDuFromage/aio-switch-updater) - Программа для обновления Ultra до актуальной версии, а так же для скачивания читов.
* [Daybreak](https://github.com/Atmosphere-NX/Atmosphere) - Программа для обновления системного ПО.
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1100#entry86288632) - Лучший файловый менеджер, менеджер сохранений и установщик программ на консоль.
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1120#entry86288632) - Лучший файловый менеджер, менеджер сохранений и установщик программ на консоль.
1. **Установленные модули**
* [SaltyNX](https://github.com/masagrator/SaltyNX) - Фоновый модуль, позволяющий модифицировать файлы\процессы в консоли, поддерживает плагины. Не совместим с 32-х битными играми (список на гитхабе проекта).
* [sys-clk](https://github.com/ppkantorski/sys-clk) - Модуль отвечающий за разгон процессора, памяти и видеочипа - для лучшей производительности. Периодически меняю версии от разных авторов. Оригинальные авторы: Meha/hanai3Bi, lineon, p-sam.
* [sys-clk](https://github.com/halop/OC_Toolkit_SC_EOS) - Модуль отвечающий за разгон процессора, памяти и видеочипа - для лучшей производительности. Периодически меняю версии от разных авторов. Оригинальные авторы: 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/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.
- **`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.
- [FPSLocker](https://github.com/masagrator/FPSLocker) - Оверлей, позволяющий разблокировать 60 FPS в играх.
- [EdiZon](https://github.com/proferabg/EdiZon-Overlay) - Оверлей для использования читов.
- [ReverseNX-RT](https://github.com/ppkantorski/ReverseNX-RT) - Оверлей для управления ReverseNX.
- [ReverseNX-RT](https://github.com/masagrator/ReverseNX-RT) - Оверлей для управления ReverseNX.
- [Sysmodules](https://github.com/ppkantorski/ovl-sysmodules) - Оверлей для включения и отключения установленных системных модулей.
1. **Доступные для скачивания через [Ultra Tuner](https://github.com/Ultra-NX/UltraNX/wiki/Tuner-RU#ultra-tuner)**
* Homebrews:
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1100#entry86288632) - Здесь можно скачать DBI или обновить имеющийся.
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1120#entry86288632) - Здесь можно скачать DBI или обновить имеющийся.
* [Linkalho](https://gbatemp.net/download/linkalho.38822) - Программа для привязки аккаунта.
* [HB App Store](https://github.com/fortheusers/hb-appstore) - Бесплатный магазин для скачивания Homebrew приложений.
* [PPSSPP](https://gbatemp.net/threads/ppsspp-switch-standalone-beta.544071/post-10492671) - Эмулятор PSP.
@ -80,7 +81,7 @@
* [MicroMemBench](https://github.com/rashevskyv/4IFIR) - Бенчмарк. Результат сильно зависит от разгона CPU. Версия из Чифира которая в реальном времени тестирует CPU Copy, что позволяет быстро узнать результат после изменения таймингов.
* Overlays:
* [Status Monitor](https://github.com/ppkantorski/Status-Monitor-Overlay) - Форк Status Monitor от kantorski.
* [Status Monitor Ultra](https://github.com/Ultra-NX/Status-Monitor-Overlay) - Форк Status Monitor для UltraNX, поддерживает много пресетов Micro-оверлея, и обладает рядом уникальных фишек.
* [Tetris](https://github.com/ppkantorski/Tetris-Overlay) - Та самая игра в виде оверлея. Работает только на последних версиях Ultrahand.
* [MasterVolume](https://github.com/averne/MasterVolume) - Регулировка глобальной громкости, позволяет поднять громкость выше максимума. Использовать аккуратно!
* [NX-FanControl](https://github.com/Zathawo/NX-FanControl) - Модуль для ручной регулировки оборотов кулера. Изменения применяются сразу, модуль смотрит на температуру SOC а не Skin, как Атмосфера.
@ -91,7 +92,6 @@
* Other:
* [FPSLocker Patches](https://github.com/masagrator/FPSLocker-Warehouse) - Патчи для FPSLocker, что бы не качать отдельно патч для каждой игры через оверлей.
* [DVR Patches](https://github.com/exelix11/dvr-patches) - Патчи SysDVR, работают и без системного модуля, активируя фоновую запись в играх, где это изначально запрещено.
* [Mod Alchemist](https://github.com/ppkantorski/Mod-Alchemist) - Пакет для скачивания, установки и управления модами для игр.
* [sys-ftpd](https://github.com/tomvita/sys-ftpd-light) - FTP сервер, работающий на фоне.
@ -118,6 +118,8 @@
* Meha
* duckbill
* snupt
* Cooler3D
* 4PDA
#### А так же - отдельная благодарность администрации и участникам Ultra Group
@ -127,15 +129,14 @@
Если вам нравится проект, и у вас появилось желание поддержать меня копеечкой - я буду очень благодарен.
У меня в данный момент нет других заработков, так что любая денежная помощь очень ценна для меня.
```
TON: UQDioCnnPI5sk4KvxWzfPWsWbAyWCkzwhaYjy8Qpg2QwWMiL
BTC: 1HsC4z8X1YkZzcSKZz1t7MXRa7rPi8qChV
USDT: TQi3qLVrNGcr6avfVQBXRjpPTyvp5JZ7i2
СБП : +79168089980
Альфа : 2200152336577997
Tinkoff : 2200700170486970
Сбер : 2202200513345833
TON: UQA9My51bkGZHbYhbdRZfp6B60N7VJfsnKl0sakgw9YhAPct
BTC: 18K6NN8NEavvMJL5Do3VTyJbL8NeZPHo93
USDT TRC20: TUZ5szAmRsnvBuC4rFB8RaAoCbN6Ucy4sL
```
### Tinkoff QR

View File

@ -1,4 +1,4 @@
# UltraNX by **[redraz](https://github.com/redraz)**
# Ultra-NX by **[redraz](https://github.com/redraz)**
![](https://github.com/Ultra-NX/Ultra-Resources/raw/main/Ultra.png)
@ -6,8 +6,7 @@
#
### Ultra is a functional custom firmware for Nintendo Switch, with a focus on overclocking and an improved user experience.
### [Ultra 2.5|R1](https://github.com/Ultra-NX/UltraNX/releases) Supports HOS 20.2.0
### [Ultra 2.5|Pre2](https://github.com/Ultra-NX/UltraNX/releases/tag/2.5-R2) Partially supports HOS 20.3.0 (Safe Mode Only)
### [Ultra 2.4|R2](https://github.com/Ultra-NX/UltraNX/releases) Supports HOS 20.1.0 and all console revisions
@ -22,7 +21,9 @@
* 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.
@ -43,28 +44,28 @@
* [Sphaira](https://github.com/ITotalJustice/sphaira) - Modern Homebrew Menu, analogous to nx-hbmenu
* [AiO Switch Updater](https://github.com/HamletDuFromage/aio-switch-updater) - Program to update Ultra to the current version, as well as to download cheats.
* [Daybreak](https://github.com/Atmosphere-NX/Atmosphere) - A program for updating OS.
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1100#entry86288632) - The best file manager, save manager and program installer on the console.
* [DBI](https://github.com/rashevskyv/dbi) - The best file manager, save manager and program installer on the console.
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/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.
* [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.
* [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/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.
- **`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.
- [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/ppkantorski/ReverseNX-RT) - ReverseNX control overlay.
- [ReverseNX-RT](https://github.com/masagrator/ReverseNX-RT) - ReverseNX control overlay.
- [Sysmodules](https://github.com/ppkantorski/ovl-sysmodules) - Overlay for enabling and disabling installed system modules.
1. **Available for download via [Updater](https://github.com/Ultra-NX/Ultra/wiki/Tuner-RU#Updater)**
* Homebrews:
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1100#entry86288632) - Here you can download a DBI or update an existing one.
* [DBI](https://4pda.to/forum/index.php?showtopic=939714&st=1120#entry86288632) - Here you can download a DBI or update an existing one.
* [Linkalho](https://gbatemp.net/download/linkalho.38822/) - Account linking program.
* [HB App Store](https://github.com/fortheusers/hb-appstore) - A free store for downloading Homebrew apps.
* [PPSSPP](https://gbatemp.net/threads/ppsspp-switch-standalone-beta.544071/post-10492671) - PSP emulator.
@ -76,7 +77,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](https://github.com/ppkantorski/Status-Monitor-Overlay) - Status Monitor fork from kantorski.
* [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.
* [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.
@ -87,7 +88,6 @@
* Other:
* [FPSLocker Patches](https://github.com/masagrator/FPSLocker-Warehouse) - Patches for FPSLocker, so you don't have to download a separate patch for each game through the overlay.
* [DVR Patches](https://github.com/exelix11/dvr-patches) - SysDVR patches, work without the system module, activating background recording in games where it is initially prohibited.
* [Mod Alchemist](https://github.com/ppkantorski/Mod-Alchemist) - A package for downloading, installing, and managing mods for games.
* [sys-ftpd](https://github.com/cathery/sys-ftpd) - FTP server running in background.
@ -112,6 +112,8 @@ Listed below are the licenses of those programs that have been modified specific
* Meha
* duckbill
* snupt
* Cooler3D
* 4PDA
#### And also - a special thanks to the administration and members of Ultra Group
@ -121,7 +123,7 @@ Listed below are the licenses of those programs that have been modified specific
If you like the project and you have a desire to support me with a penny - I will be very grateful.
I have no other income at the moment, so any monetary help is very valuable to me.
```
TON: UQA9My51bkGZHbYhbdRZfp6B60N7VJfsnKl0sakgw9YhAPct
BTC: 18K6NN8NEavvMJL5Do3VTyJbL8NeZPHo93
USDT TRC20: TUZ5szAmRsnvBuC4rFB8RaAoCbN6Ucy4sL
TON: UQDioCnnPI5sk4KvxWzfPWsWbAyWCkzwhaYjy8Qpg2QwWMiL
BTC: 1HsC4z8X1YkZzcSKZz1t7MXRa7rPi8qChV
USDT: TQi3qLVrNGcr6avfVQBXRjpPTyvp5JZ7i2
```

View File

@ -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
@ -54,7 +54,3 @@ X0100C1F0051B6000
;Death Road to Canada
;1.0.8 crash
X0100423009358000
;Splatoon 3
;10.0.0 upwards crashes after online match
X0100C2500FC20000

View File

@ -1,4 +1,4 @@
# Rad Rodgers: Radical Edition 1.2.0
# Rad Rogers: Radical Edition 1.2.0
# BID: 78885A1CA987C04C
unsafeCheck: true
@ -13,4 +13,3 @@ ALL_FPS:
-
type: block
what: timing

View File

@ -1,36 +0,0 @@
# Tiebreak+: Official Game of the ATP and WTA 1.2.0
# BID: 5BCA5C20C8F8A9B4
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: 0x1A82EAC
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: 0x147B474
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"

View File

@ -1,36 +0,0 @@
# 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"

View File

@ -1,27 +0,0 @@
# Tony Hawk's Pro Skater 3 + 4 1.05
# BID: 65A9705A4BB35AA2
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x77DD4B8, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x780B6A0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x7006068, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# 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

View File

@ -1,15 +0,0 @@
# OCTOPATH TRAVELER 歧路旅人 1.0.5
# BID: 9E6B0D0023F9DB3B
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x50B5698, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -1,83 +1,12 @@
# WARRIORS OROCHI 4 1.0.13
# BID: 5C9CCD358BE85FC9
# Credits to Hazerou for figuring out the offset
# Main offset stores address to start of .bss of NRO
## REF: 02 00 00 00 3C 00 00 00
unsafeCheck: true
ALL_FPS:
# Without DLC Ultimate Edition installed
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x934A8]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x934A0]
value_type: float
value: FPS_TARGET
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x9349C]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x93494]
value_type: float
value: FPS_TARGET
# With DLC Ultimate Edition installed
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x93200]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x931F8]
value_type: float
value: FPS_TARGET
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
type: write
address: [MAIN, 0x3AF80, -0x931F4]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0xE2CFDAC9EAC20398
compare_address: [MAIN, 0x3AF80, -0x1A92FC0]
address: [MAIN, 0x3AF80, -0x931EC]
value_type: float
value: FPS_TARGET
value_type: int32
value: 1

View File

@ -23,3 +23,6 @@ ALL_FPS:
address: [MAIN, 0x2AEF6D0, 2554]
value_type: uint8
value: FPS_TARGET
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Goat Simulator 3 1.0.7.8
# BID: A45BCB8A63C50DC8
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x99DC468, 0]
value_type: float
value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x9A02290, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x920CBF8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,53 +0,0 @@
# 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

View File

@ -1,27 +0,0 @@
# 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

View File

@ -9,4 +9,4 @@ ALL_FPS:
type: write
address: [MAIN, 0x481B2F8, 0xB8, 0]
value_type: int32
value: -1
value: 1

View File

@ -9,8 +9,7 @@ ALL_FPS:
type: evaluate_write
address: [MAIN, 0x24924D8, 0x504C]
value_type: float
value: FPS_TARGET
value: FPS_LOCK_TARGET
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Rune Factory: Guardians of Azuma 1.0.4
# BID: 5F96AEDEA20AE78F
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x8F48D40, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x8F82470, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x7F616E8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Rune Factory: Guardians of Azuma 1.0.3
# BID: 7F731AAE7DDCAF66
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x8F48D40, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x8F82470, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x7F616E8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# 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

View File

@ -1,12 +0,0 @@
# Tamagotchi Plaza 1.0.2
# BID: 9ACE779510EC93C9
unsafeCheck: true
ALL_FPS:
# UnityEngine.Rendering.OnDemandRendering_TypeInfo
-
type: write
address: [MAIN, 0x683BB20, 0xB8, 0]
value_type: int32
value: -1

View File

@ -1,27 +0,0 @@
# 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

View File

@ -1,27 +0,0 @@
# Star Overdrive 1.0.10
# BID: 6D05923E7005E182
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x674C6E8, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0x77322F0, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x776C850, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -1,4 +1,4 @@
# Star Overdrive 1.0.6/1.0.7/1.0.8
# Star Overdrive 1.0.6
# BID: 728D92CB9E54CE7A
unsafeCheck: true

View File

@ -1,57 +0,0 @@
# 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

View File

@ -1,35 +0,0 @@
# 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]

View File

@ -1,36 +0,0 @@
# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.3.0
# BID: 1CEA83A1E6684665
unsafeCheck: false
MASTER_WRITE:
# Redirect DR to MAIN + 0x2F5CFF0
# REF: A9 24 89 52 49 A2 A7 72, second REF
-
type: bytes
main_offset: 0x10AAEE4
value_type: uint32
value:
- 0xD000F589 # adrp x9, 0x2F5C000
- 0xBD4FF121 # ldr s1, [x9, 0xFF0]
- 0xD503201F # nop
## Default value
-
type: bytes
main_offset: 0x2F5CFF0
value_type: float
value: 0.035714
ALL_FPS:
# Disable FPS Lock
# REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it
-
type: write
address: [MAIN, 0x2F23C00, 0xE0, 0x294]
value_type: uint8
value: 0
# DR Target
-
type: evaluate_write
address: [MAIN, 0x2F5CFF0]
value_type: float
value: "1.01 / FPS_TARGET"

View File

@ -1,36 +0,0 @@
# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.2.1
# BID: 3B2CB1C8865E7B1E
unsafeCheck: false
MASTER_WRITE:
# Redirect DR to MAIN + 0x2F4CFF0
# REF: A9 24 89 52 49 A2 A7 72, second REF
-
type: bytes
main_offset: 0x10B2424
value_type: uint32
value:
- 0xD000F4C9 # adrp x9, 0x2F4C000
- 0xBD4FF121 # ldr s1, [x9, 0xFF0]
- 0xD503201F # nop
## Default value
-
type: bytes
main_offset: 0x2F4CFF0
value_type: float
value: 0.035714
ALL_FPS:
# Disable FPS Lock
# REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it
-
type: write
address: [MAIN, 0x2F13D80, 0xE0, 0x284]
value_type: uint8
value: 0
# DR Target
-
type: evaluate_write
address: [MAIN, 0x2F4CFF0]
value_type: float
value: "1.01 / FPS_TARGET"

View File

@ -1,12 +0,0 @@
# EA SPORTS FC 25 1.7c.d76a
# BID: 8AB0BBEBB5F628E6
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
-
type: evaluate_write
address: [MAIN, 0xCEEDA68, 8]
value_type: double
value: FPS_TARGET

View File

@ -1,12 +0,0 @@
# EA SPORTS FC 25 1.7c.7841
# BID: DF4B53A8F7EA6FB6
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
-
type: evaluate_write
address: [MAIN, 0xCEECA68, 8]
value_type: double
value: FPS_TARGET

View File

@ -1,12 +0,0 @@
# 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

View File

@ -1,12 +0,0 @@
# EA SPORTS FC 25 1.7b.3ca3
# BID: EE92CAF016873D08
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
-
type: evaluate_write
address: [MAIN, 0xCE91A68, 8]
value_type: double
value: FPS_TARGET

View File

@ -9,8 +9,7 @@ ALL_FPS:
type: evaluate_write
address: [MAIN, 0x2495500, 0x304C]
value_type: float
value: FPS_TARGET
value: FPS_LOCK_TARGET
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Funko Fusion 3.1.1
# BID: F5E599C889DF733A
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x7541A68, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0x851D078, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x854AF60, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -1,75 +0,0 @@
# WARRIORS: Abyss 1.4.0
# BID: 36B692C0FA9F6F46
unsafeCheck: true
MASTER_WRITE:
# REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E
# Use FPS Target instead of vsync value for Dynamic Resolution max delta
-
type: bytes
main_offset: 0x6E3AF0
value_type: uint32
value:
- 0xD00049E1 # ADRP X1, 0x1021000
- 0xBD4E1021 # LDR S1, [X1, 0xE10]
# Redirect DR Targets to MAIN+0x1477F00
-
type: bytes
main_offset: 0x6E3B94
value_type: uint32
value:
- 0x90006EE9 # ADRP X9, 0x14BF000
- 0xBD4F0121 # LDR S1, [X9, 0xF00]
-
type: bytes
main_offset: 0x6E3BA4
value_type: uint32
value:
- 0x90006EE9 # ADRP X9, 0x14BF000
- 0xBD4F0521 # LDR S1, [X9, 0xF04]
# Default values
-
type: bytes
main_offset: 0x14BFF00
value_type: float
value: [50, 40]
ALL_FPS:
# REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00
# FPS Lock
-
type: evaluate_write
address: [MAIN, 0x1021E1C]
value_type: uint32
value: "120 / FPS_LOCK_TARGET"
# Prevent from setting it as 0, otherwise game crashes
-
type: evaluate_compare
compare_address: [MAIN, 0x1021E1C]
compare_type: "=="
compare_value_type: uint32
compare_value: 0
address: [MAIN, 0x1021E1C]
value_type: uint32
value: 1
# Others
-
type: evaluate_write
address: [MAIN, 0x1021E10]
value_type: float
value: "FPS_TARGET"
-
type: evaluate_write
address: [MAIN, 0x1021E14]
value_type: uint32
value: "FPS_TARGET"
-
type: evaluate_write
address: [MAIN, 0x1021E18]
value_type: float
value: "FPS_TARGET"
-
type: evaluate_write
address: [MAIN, 0x14BFF00]
value_type: float
value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"]

View File

@ -1,24 +0,0 @@
# 女神異聞錄5 亂戰:魅影攻手 1.0.1
# BID: 496A2F5A9CE4FBEB
unsafeCheck: true
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x1D11158]
value_type: int32
value: [FPS_LOCK_TARGET, VSYNC_TARGET]
-
type: evaluate_write
address: [MAIN, 0x1D24BE8]
value_type: float
value: FPS_TARGET
-
type: evaluate_write
address: [MAIN, 0x2A848D0]
value_type: int32
value: "VSYNC_TARGET - 1"
-
type: block
what: timing

View File

@ -1,21 +0,0 @@
# Cassette Beasts 1.8.2
# BID: 768428355C994280
unsafeCheck: true
ALL_FPS:
# physics/common/physics_fps
-
type: evaluate_write
address: [MAIN, 0x30AAAE0, 0x24]
value_type: int32
value: FPS_TARGET
# debug/settings/fps/force_fps
-
type: evaluate_write
address: [MAIN, 0x30AAAE0, 0x30]
value_type: int32
value: FPS_LOCK_TARGET
-
type: block
what: timing

View File

@ -1,21 +0,0 @@
# Pumpkin Jack 1.4.4
# BID: 0F73F1D52820F90B
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x60F3B68, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x592B218, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# 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

View File

@ -1,57 +0,0 @@
# Amber Isle 1.0.3
# BID: E8BF195297B63BA2
unsafeCheck: true
MASTER_WRITE:
# Redirect all hardcoded doubles in DynamicResolutionHandler::Update to MAIN+0x909EF00
## REF: c8 aa 8a f2 28 07 e8 f2
-
type: bytes
main_offset: 0x21FE1E4
value_type: uint32
value:
- 0x90037508 # adrp x8, #0x909E000
- 0xFD478100 # ldr d0, [x8, #0xf00]
-
type: bytes
main_offset: 0x21FE3E0
value_type: uint32
value:
- 0x90037508 # adrp x8, #0x909E000
- 0xFD478101 # ldr d1, [x8, #0xf00]
-
type: bytes
main_offset: 0x21FE43C
value_type: uint32
value:
- 0x90037508 # adrp x8, #0x909E000
- 0xFD478101 # ldr d1, [x8, #0xf00]
-
type: bytes
main_offset: 0x21FE7D4
value_type: uint32
value:
- 0x90037508 # adrp x8, #0x909E000
- 0xFD478100 # ldr d0, [x8, #0xf00]
## REF: c8 aa 8a f2 28 07 f8 f2
-
type: bytes
main_offset: 0x21fE550
value_type: uint32
value:
- 0x90037508 # adrp x8, #0x909E000
- 0xFD478100 # ldr d0, [x8, #0xf00]
- 0x1E614000 # fneg d0, d0
# default value
-
type: bytes
main_offset: 0x909EF00
value_type: double
value: 25.333333333333336
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x909EF00]
value_type: double
value: "FRAMETIME_TARGET * 0.76"

View File

@ -1,4 +1,4 @@
# Xenoblade Chronicles 3 2.2.0/2.2.1
# Xenoblade Chronicles 3 2.2.0
# BID: 82D187FE9EF9BE92
unsafeCheck: false

View File

@ -1,21 +0,0 @@
# FANTASY LIFE i: The Girl Who Steals Time 1.4.0
# BID: 061A7341077C0974
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xAD71938, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x9D51728, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,21 +0,0 @@
# FANTASY LIFE i: The Girl Who Steals Time 1.3.3
# BID: 546820C12D88850D
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xAD09938, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x9CE9728, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# FANTASY LIFE i: The Girl Who Steals Time 1.3.0
# BID: 9DBA6AA32721CAB9
unsafeCheck: false
ALL_FPS:
# Disable FixedFrameRate
-
type: write
address: [MAIN, 0xACF23E0, 0xAA4]
value_type: uint32
value: 7
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xACF3938, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x9CD3728, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,12 +0,0 @@
# 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"

View File

@ -1,47 +0,0 @@
# 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"

View File

@ -1,4 +1,4 @@
# Achilles Legends Untold 1.0.1/1.0.2
# Achilles Legends Untold 1.0.1
# BID: BDDD7E8FA07C8C75
unsafeCheck: true
@ -21,5 +21,4 @@ ALL_FPS:
type: write
address: [MAIN, 0x6199738, 0]
value_type: int32
value: [0, 0]
value: [0, 0]

View File

@ -1,4 +1,4 @@
# Kirby Star Allies 4.0.0/4.0.0a
# Kirby Star Allies 4.0.0
# BID: D55608916FA56C18
# Thanks to Kirby567Fan for finding offsets of interval

View File

@ -1,148 +0,0 @@
# The Legend of Zelda: Breath of the Wild 1.8.1
# BID: A12F75F49B36F4B8
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
## REF: 61 F6 42 39
-
type: bytes
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
-
type: bytes
main_offset: 0xE6F140
value_type: uint32
value:
- 0xF0007628
- 0xBD4FF501
# Dynamic speed
## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964
-
type: bytes
main_offset: 0xD874FC
value_type: uint32
value: 0x141C191A
## Patch game speed function to use speed from MAIN+0x1D36FF0
-
type: bytes
main_offset: 0x14092A8
value_type: uint32
value: 0x14000003
-
type: bytes
main_offset: 0x14092CC
value_type: uint32
value:
- 0xB0004969
- 0xBD4FF121
## Patch UI speed function to use speeed from MAIN+0x1D36FF0
-
type: bytes
main_offset: 0x116D0D8
value_type: uint32
value: 0xB0005E47
-
type: bytes
main_offset: 0x116D0E4
value_type: uint32
value: 0xBD4FF0E0
## CODE CAVE
-
type: bytes
main_offset: 0x148D964
value_type: uint32
value:
- 0xD63F0100
- 0xD53BE022
- 0xB0004548
- 0xF947FD01
- 0xEB1F003F
- 0x54000061
- 0xF907FD02
- 0x17E3E6E0
- 0xCB010040
- 0x97FFFBB6 # BL nn::os::ConvertToTimeSpan(nn::os::Tick)
- 0x9E230000
- 0x52940AA0
- 0x72A03F80
- 0x1E230001
- 0x1E211800
- 0x1E201001
- 0x1E212000
- 0x5400004B
- 0x1E204020
- 0xB0004548
- 0xBD4FED01
- 0x1E212000
- 0x5400004C
- 0x1E204020
- 0xBD0FF100
- 0x17FFFFED
- 0xB0004540
- 0xB94FF000
- 0xD65F03C0
- 0xB0004547
- 0xB90FE8E1
- 0x17DDA966
# Signal Cutscenes playing
-
type: bytes
main_offset: 0xC00680
value_type: uint32
value: 0x942234D6
-
type: bytes
main_offset: 0xC00E40
value_type: uint32
value: 0x942232E6
# Default speed
-
type: bytes
main_offset: 0x1D36FF0
value_type: float
value: 1.0
-
type: bytes
main_offset: 0x1D36FEC
value_type: float
value: 1.0
# Default cutscene state
-
type: bytes
main_offset: 0x1D36FE8
value_type: uint8
value: 1
# Default DR factor
-
type: bytes
main_offset: 0x1D36FF4
value_type: float
value: 0.001
ALL_FPS:
# Min Delta
-
type: evaluate_write
address: [MAIN, 0x1D36FEC]
value_type: float
value: "30 / FPS_TARGET"
# DR factor
-
type: evaluate_write
address: [MAIN, 0x1D36FF4]
value_type: float
value: "(FPS_TARGET / 30) * 0.001"
# Prerendered cutscenes must be played at 30 FPS
-
type: compare
compare_address: [MAIN, 0x1D36FE8]
compare_type: "=="
compare_value_type: uint8
compare_value: 0
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,157 +0,0 @@
# The Legend of Zelda: Breath of the Wild 1.8.2
# BID: DE0B6AC4EFC1DDA7
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
## REF: 61 F6 42 39
-
type: bytes
main_offset: 0xD80748
value_type: uint32
value: 0x52800021
# 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: 0x1153314
value_type: uint32
value:
- 0xF0005F08
- 0x1E210803
- 0xBD4FF501
# Dynamic speed
## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964
-
type: bytes
main_offset: 0xD874FC
value_type: uint32
value: 0x141C191A
## Patch game speed function to use speed from MAIN+0x1D36FF0
-
type: bytes
main_offset: 0x14092A8
value_type: uint32
value: 0x14000003
-
type: bytes
main_offset: 0x14092CC
value_type: uint32
value:
- 0xB0004969
- 0xBD4FF121
## Patch UI speed function to use speeed from MAIN+0x1D36FF0
-
type: bytes
main_offset: 0x116D0D8
value_type: uint32
value: 0xB0005E47
-
type: bytes
main_offset: 0x116D0E4
value_type: uint32
value: 0xBD4FF0E0
## CODE CAVE
-
type: bytes
main_offset: 0x148D964
value_type: uint32
value:
- 0xD63F0100
- 0xD53BE022
- 0xB0004548
- 0xF947FD01
- 0xEB1F003F
- 0x54000061
- 0xF907FD02
- 0x17E3E6E0
- 0xCB010040
- 0x97FFFBB6 # BL nn::os::ConvertToTimeSpan(nn::os::Tick)
- 0x9E230000
- 0x52940AA0
- 0x72A03F80
- 0x1E230001
- 0x1E211800
- 0x1E201001
- 0x1E212000
- 0x5400004B
- 0x1E204020
- 0xB0004548
- 0xBD4FED01
- 0x1E212000
- 0x5400004C
- 0x1E204020
- 0xBD0FF100
- 0x17FFFFED
- 0xB0004540
- 0xB94FF000
- 0xD65F03C0
- 0xB0004547
- 0xB90FE8E1
- 0x17DDA966
# Signal Cutscenes playing
-
type: bytes
main_offset: 0xC00680
value_type: uint32
value: 0x942234D6
-
type: bytes
main_offset: 0xC00E40
value_type: uint32
value: 0x942232E6
# Default speed
-
type: bytes
main_offset: 0x1D36FF0
value_type: float
value: 1.0
-
type: bytes
main_offset: 0x1D36FEC
value_type: float
value: 1.0
# Default cutscene state
-
type: bytes
main_offset: 0x1D36FE8
value_type: uint8
value: 1
# Default DR factor
-
type: bytes
main_offset: 0x1D36FF4
value_type: float
value: 100.0
ALL_FPS:
# Scrolling speed
## REF: 68 16 41 B9 D8 22 D5 1A
## ADRP + LDR above it
-
type: evaluate_write
address: [MAIN, 0x1C4BA40]
value_type: float
value: "30 / FPS_TARGET"
# Min Delta
-
type: evaluate_write
address: [MAIN, 0x1D36FEC]
value_type: float
value: "30 / FPS_TARGET"
# DR factor
-
type: evaluate_write
address: [MAIN, 0x1D36FF4]
value_type: float
value: "(FPS_TARGET / 30) * 100"
# Prerendered cutscenes must be played at 30 FPS
-
type: compare
compare_address: [MAIN, 0x1D36FE8]
compare_type: "=="
compare_value_type: uint8
compare_value: 0
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,28 +0,0 @@
# No Man's Sky 5.7.1
# BID: 22D0D857A4DAEBBC
unsafeCheck: true
MASTER_WRITE:
# Redirect DR frametime target to MAIN+0x47D7FF0
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
-
type: bytes
main_offset: 0x1F95A70
value_type: uint32
value:
- 0xD0014209 # adrp x9, #0x47D7000
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
- 0xD503201F # NOP
# default value
-
type: bytes
main_offset: 0x47D7FF0
value_type: float
value: 30
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x47D7FF0]
value_type: float
value: FPS_TARGET

View File

@ -1,28 +0,0 @@
# No Man's Sky 5.7.01
# BID: CF94B485A949F8D1
unsafeCheck: true
MASTER_WRITE:
# Redirect DR frametime target to MAIN+0x47DBFF0
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
-
type: bytes
main_offset: 0x1F99B90
value_type: uint32
value:
- 0xD0014209 # adrp x9, #0x47DB000
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
- 0xD503201F # NOP
# default value
-
type: bytes
main_offset: 0x47DBFF0
value_type: float
value: 30
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x47DBFF0]
value_type: float
value: FPS_TARGET

View File

@ -1,28 +0,0 @@
# 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

View File

@ -1,4 +1,4 @@
# The Smurfs - Dreams 1.0.2/1.0.3
# The Smurfs - Dreams 1.0.2
# BID: E08769D5B56A5A25
unsafeCheck: true
@ -10,6 +10,12 @@ ALL_FPS:
address: [MAIN, 0x8321958, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0x92DEDE8, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
@ -18,4 +24,4 @@ ALL_FPS:
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing
what: timing

View File

@ -1,12 +0,0 @@
# PowerWash Simulator 1.11.0
# BID: 561B0F485E699E4E
unsafeCheck: false
ALL_FPS:
# FuturLab.SingletonMonoBehaviour<FrameRateLimiter>_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit)
-
type: evaluate_write
address: [MAIN, 0x606A350, 0xB8, 0, 0x28]
value_type: int32
value: FPS_LOCK_TARGET

View File

@ -1,21 +0,0 @@
# The Hundred Line -Last Defense Academy- 1.0.6
# BID: 5AF690F4A8BFCC67
# 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, 0xC8CC78]
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, 0xC8CC44]
value_type: uint32
value: FPS_TARGET

View File

@ -1,21 +0,0 @@
# 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

View File

@ -1,57 +0,0 @@
# 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

View File

@ -1,12 +0,0 @@
# 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"

View File

@ -1,28 +0,0 @@
# City of Brass 1.2.0
# BID: 53116900DC7BBE11
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x6257960, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 4)", "TruncDec(FRAMETIME_TARGET, 4)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x627BE28, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x5A2B258, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Misc. A Tiny Tale 1.0.4
# BID: 0E9D849EF47198D8
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x4C25100, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x4C4B980, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x43F6548, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,27 +0,0 @@
# Misc. A Tiny Tale 1.0.5
# BID: D24A46A2618C9E38
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x4C25100, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x4C4B980, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x43F6548, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,4 +1,4 @@
# Kirby's Dream Buffet 1.0.0/1.0.0a
# Kirby's Dream Buffet 1.0.0
# BID: 82AF4E16BBC0BEC8
# Thanks to Hazerou for finding offsets
# Game was patched to use triple buffer, and to avoid flickering with some 2D transparent elements, I have disabled transparency in them.

View File

@ -1,4 +1,4 @@
# ABZU 1.0.0/1.0.01
# ABZU 1.0.0
# BID: 59719CFCD1671B98
unsafeCheck: true
@ -10,12 +10,6 @@ ALL_FPS:
address: [MAIN, 0x6228EE0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x5996FC0, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -9,7 +9,7 @@ ALL_FPS:
type: write
address: [MAIN, 0x3482FB0, 0xB8, 0]
value_type: int32
value: -1
value: 1
# maxFixedDeltaTime, ref: UnityEngine.Time::get_timeScale
-
type: write

View File

@ -1,30 +0,0 @@
# Umurangi Generation 1.6.6.0
# BID: 372AB37327DB2C31
unsafeCheck: true
MASTER_WRITE:
# Read FPS Lock from MAIN+0x49FCFF0
## REF: 81 1a 40 bd 02 10 2e 1e
## REF: FPSTarget.<>d__6::MoveNext()
-
type: bytes
main_offset: 0x2DF1E60
value_type: uint32
value:
- 0xF000E048 # adrp x8, #0x49fc000
- 0xBD4FF101 # ldr s1, [x8, #0xff0]
- 0xD503201F # NOP
## Default value
-
type: bytes
main_offset: 0x49FCFF0
value_type: float
value: 0.03333333333
ALL_FPS:
# FPS Lock
-
type: evaluate_write
address: [MAIN, 0x49FCFF0]
value_type: float
value: "1 / FPS_TARGET"

View File

@ -1,37 +0,0 @@
# Twilight Monk 1.2.0
# BID: 7926A67119144CFD
unsafeCheck: true
ALL_FPS:
# Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS
-
type: write
address: [MAIN, 0x5DC2688, 0x7A4]
value_type: uint32
# Default is 0x46, bUseFixedFrameRate |= 0x40
# By writing 7 we are making sure that other flags are maintained:
# bAllowMultiThreadedAnimationUpdate |= 4
# bOptimizeAnimBlueprintMemberVariableAccess |= 2
value: 6
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x5D952E8, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x5DC2FA8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: evaluate_write
address: [MAIN, 0x55C62F8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,37 +0,0 @@
# Twilight Monk 1.3.0
# BID: E9A189C0CA87A30C
unsafeCheck: true
ALL_FPS:
# Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS
-
type: write
address: [MAIN, 0x5E04268, 0x7A4]
value_type: uint32
# Default is 0x46, bUseFixedFrameRate |= 0x40
# By writing 7 we are making sure that other flags are maintained:
# bAllowMultiThreadedAnimationUpdate |= 4
# bOptimizeAnimBlueprintMemberVariableAccess |= 2
value: 6
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x5DD6EC8, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x5E04B88, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: evaluate_write
address: [MAIN, 0x5608AB8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -6,15 +6,11 @@ unsafeCheck: true
ALL_FPS:
# Game speed value
-
type: evaluate_compare
compare_type: "=="
compare_value_type: uint32
compare_value: 2
compare_address: [MAIN, 0x2218B44, 0x10]
type: evaluate_write
address: [MAIN, 0x2218B44, 0x20]
value_type: float
value: "1 / FPS_TARGET"
# Block prerendered cutscenes to 30 FPS
# Play prerendered cutscenes only at 60 FPS
-
type: compare
compare_address: [MAIN, 0x1728B58]
@ -23,4 +19,4 @@ ALL_FPS:
compare_value: 0
address: [MAIN]
value_type: refresh_rate
value: 60
value: 60

View File

@ -1,83 +0,0 @@
# 無双OROCHI 1.0.13
# BID: 07650FD5E5E2B82C
# Credits to Hazerou for figuring out the offset
# Main offset stores address to start of .bss of NRO
## REF: 02 00 00 00 3C 00 00 00
unsafeCheck: true
ALL_FPS:
# Without DLC Ultimate Edition installed
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x92BB8]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x92BB0]
value_type: float
value: FPS_TARGET
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x92BAC]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "=="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x92BA4]
value_type: float
value: FPS_TARGET
# With DLC Ultimate Edition installed
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x93480]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x93478]
value_type: float
value: FPS_TARGET
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x93474]
value_type: uint32
value: [VSYNC_TARGET, FPS_TARGET]
-
type: evaluate_compare
compare_value_type: uint64
compare_type: "!="
compare_value: 0x379B4590A7C2BC1F
compare_address: [MAIN, 0x3AF80, -0x1B80FC0]
address: [MAIN, 0x3AF80, -0x9346C]
value_type: float
value: FPS_TARGET

View File

@ -1,12 +0,0 @@
# HEAVEN SEEKER ――The Savior of This Cruel World 1.2.0.139
# BID: 135595BF76F46B1B
unsafeCheck: true
ALL_FPS:
# UnityEngine.Time::fixedDeltaTime (default is 0.033)
-
type: evaluate_write
address: [MAIN, 0x9888E78, 0x48]
value_type: float
value: "(1 / FPS_TARGET) * 0.99"

View File

@ -1,180 +0,0 @@
# The Legend of Zelda: Tears of The Kingdom 1.4.2
# BID: 5CB42B1CF25469FB
Addons:
- atmosphere/contents/0100F2C0115B6000/exefs/main.npdm
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
## REF: A0 2A 40 F9 61 A2 40 39
-
type: bytes
main_offset: 0xBBF258
value_type: uint32
value: 0x52800021
# Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculation int,
# $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function
## MAIN + 0x3ACCFFC = FPS target for reference
## REF: nvnWindowSetPresentInterval
-
type: bytes
main_offset: 0x2D4E68
value_type: uint32
value:
- 0x9001BFC2
- 0xBD4FFC49
- 0xAA0003F4
- 0xAA0103F5
- 0xF9406C20
- 0x94A33E6D # BL nn::os::ConvertToTimeSpan(nn::os::Tick)
- 0x52994002
- 0x72A77342
- 0x1E220042
- 0x9E220001
- 0x1E211841
- 0x1E292020
- 0x1E21CD21
- 0x1E25D009
- 0x1E292020
- 0x1E21BD21
- 0x1E390022
- 0xB9005282
- 0xBD002681
- 0x1400002B
## Use our fps target
## REF: 60 52 42 BD 08 4E A8 52
### Replace LDR S0, [X22,#0x250]
-
type: bytes
main_offset: 0x2D4730
value_type: uint32
value: 0xBD422660
### Replace SCVTF S0, S0
-
type: bytes
main_offset: 0x2D4748
value_type: uint32
value: 0xD503201F
## REF: 14 01 40 F9 08 4E A8 52
### Replace LDR S0, [X22,#0x250]
-
type: bytes
main_offset: 0x37EA5C
value_type: uint32
value: 0xBD4226C0
### Replace SCVTF S0, S0
-
type: bytes
main_offset: 0x37EA68
value_type: uint32
value: 0xD503201F
# When prerendered cutscene is active write flag to MAIN + 0x3ACCFFB
## REF: 68 52 40 79 08 01 19 32 68 52 00 79
## BL to Code Cave 1
-
type: bytes
main_offset: 0x2B238B4
value_type: uint32
value: 0x975EC581
## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call
## B to Code Cave 2
-
type: bytes
main_offset: 0x2B210CC
value_type: uint32
value: 0x175ECF7F
## CODE CAVE 1, offset +0x50 relative to start of previous code cave
-
type: bytes
main_offset: 0x2D4EB8
value_type: uint32
value:
- 0x52800022
- 0x9001BFC3
- 0x393FEC62
- 0x17F62A71 # Jump to original BL as B
## CODE CAVE 2, offset +0x10 relative to start of previous code cave
-
type: bytes
main_offset: 0x2D4EC8
value_type: uint32
value:
- 0x9001BFC3
- 0x393FEC60
- 0x14A343EC # B nn::oe::SetUserInactivityDetectionTimeExtended(bool)
# Adjust DR timing to factor from MAIN + 0x3ACCFF4
# REF: 88 02 15 CB 00 01 23 9E
-
type: bytes
main_offset: 0xEED54
value_type: uint32
value:
- 0xD001CEE8
- 0xBD4FF501
# Fix black background for D-pad menu
## REF: 21 03 5E BC
-
type: bytes
main_offset: 0x387390
value_type: uint32
value:
- 0x17FD36D1 # Jump to Code Cave 3
- 0x1E202008
## CODE CAVE 3, offset +0xC relative to start of previous code cave
-
type: bytes
main_offset: 0x2D4ED4
value_type: uint32
value:
- 0x1E202028
- 0x54000101
- 0x785FA328
- 0x7100151F
- 0x540000A1
- 0x785F8328
- 0x7100151F
- 0x54000041
- 0x1E2E1008
- 0x1F080409
- 0x1402C926 # Go back
# Default values
## FPS Target
-
type: bytes
main_offset: 0x3ACCFFC
value_type: float
value: 30
## Cutscene flag
-
type: bytes
main_offset: 0x3ACCFFB
value_type: uint8
value: 0
## Dynamic Resolution timing factor
-
type: bytes
main_offset: 0x3ACCFF4
value_type: float
value: 0.001
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x3ACCFFC]
value_type: float
value: FPS_TARGET
-
type: evaluate_write
address: [MAIN, 0x3ACCFF4]
value_type: float
value: "0.001 * (FPS_TARGET / 30)"
-
type: compare
compare_address: [MAIN, 0x3ACCFFB]
compare_value_type: uint8
compare_value: 1
compare_type: "=="
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,170 +0,0 @@
# The Legend of Zelda: Tears of The Kingdom 1.4.0
# BID: 6265F94D606242CE
Addons:
- atmosphere/contents/0100F2C0115B6000/exefs/main.npdm
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
## REF: A0 2A 40 F9 61 A2 40 39
-
type: bytes
main_offset: 0xBD1F08
value_type: uint32
value: 0x52800021
# Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculatuon int,
# $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function
## MAIN + 0x3ACFFFC = FPS target for reference
## REF: nvnWindowSetPresentInterval
-
type: bytes
main_offset: 0x3E0F64
value_type: uint32
value:
- 0xF001B762
- 0xBD4FFC49
- 0xAA0003F4
- 0xAA0103F5
- 0xF9406C20
- 0x949F20BE
- 0xF0014902
- 0xB9480842
- 0x1E220042
- 0x9E220001
- 0x1E211841
- 0x1E292020
- 0x1E21CD21
- 0x1E25D009
- 0x1E292020
- 0x1E21BD21
- 0x1E390022
- 0xB9005282
- 0xBD002681
- 0x1400002B
## Use our fps target
-
type: bytes
main_offset: 0x3E082C
value_type: uint32
value: 0xBD422660
-
type: bytes
main_offset: 0x3E0844
value_type: uint32
value: 0xD503201F
-
type: bytes
main_offset: 0x4B4F8C
value_type: uint32
value: 0xBD4226C0
-
type: bytes
main_offset: 0x4B4F98
value_type: uint32
value: 0xD503201F
# When prerendered cutscene is active write flag to MAIN + 0x3ACFFFB
## REF: 68 52 40 79 08 01 19 32 68 52 00 79
-
type: bytes
main_offset: 0x2B2A608
value_type: uint32
value: 0x9762DA6E
## REF: 68 52 40 79 08 79 18 12 68 52 00 79
-
type: bytes
main_offset: 0x2B27E20
value_type: uint32
value: 0x1762E46C
## CODE CAVE
-
type: bytes
main_offset: 0x3E0FC0
value_type: uint32
value:
- 0x52800022
- 0xF001B763
- 0x393FEC62
- 0x14196AF3
-
type: bytes
main_offset: 0x3E0FD0
value_type: uint32
value:
- 0xF001B763
- 0x393FEC60
- 0x149F263A
# Adjust DR timing to factor from MAIN + 0x3ACFFF4
# REF: 0x46823555
-
type: bytes
main_offset: 0x18CB20
value_type: uint32
value:
- 0xF001CA08
- 0xBD4FF501
# Fix black background for D-pad menu
-
type: bytes
main_offset: 0x5ECA90
value_type: uint32
value:
- 0x17F7D153
- 0x1E202008
## CODE CAVE
-
type: bytes
main_offset: 0x3E0FDC
value_type: uint32
value:
- 0x1E202028
- 0x54000101
- 0x785FA328
- 0x7100151F
- 0x540000A1
- 0x785F8328
- 0x7100151F
- 0x54000041
- 0x1E2E1008
- 0x1F080409
- 0x14082EA4
# Default values
## FPS Target
-
type: bytes
main_offset: 0x3ACFFFC
value_type: float
value: 30
## Cutscene flag
-
type: bytes
main_offset: 0x3ACFFFB
value_type: uint8
value: 0
## Dynamic Resolution timing factor
-
type: bytes
main_offset: 0x3ACFFF4
value_type: float
value: 0.001
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x3ACFFFC]
value_type: float
value: FPS_TARGET
-
type: evaluate_write
address: [MAIN, 0x3ACFFF4]
value_type: float
value: "0.001 * (FPS_TARGET / 30)"
-
type: compare
compare_address: [MAIN, 0x3ACFFFB]
compare_value_type: uint8
compare_value: 1
compare_type: "=="
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,174 +0,0 @@
# The Legend of Zelda: Tears of The Kingdom 1.4.1
# BID: 965EAB9CEB8EB867
Addons:
- atmosphere/contents/0100F2C0115B6000/exefs/main.npdm
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
## REF: A0 2A 40 F9 61 A2 40 39
-
type: bytes
main_offset: 0xBC9088
value_type: uint32
value: 0x52800021
# Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculatuon int,
# $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function
## MAIN + 0x3ACAFFC = FPS target for reference
## REF: nvnWindowSetPresentInterval
-
type: bytes
main_offset: 0x38A3C4
value_type: uint32
value:
- 0x9001BA02
- 0xBD4FFC49
- 0xAA0003F4
- 0xAA0103F5
- 0xF9406C20
- 0x94A066EA # BL nn::os::ConvertToTimeSpan(nn::os::Tick)
- 0x52994002
- 0x72A77342
- 0x1E220042
- 0x9E220001
- 0x1E211841
- 0x1E292020
- 0x1E21CD21
- 0x1E25D009
- 0x1E292020
- 0x1E21BD21
- 0x1E390022
- 0xB9005282
- 0xBD002681
- 0x1400002B
## Use our fps target
## REF: 60 52 42 BD 08 4E A8 52
-
type: bytes
main_offset: 0x389C8C
value_type: uint32
value: 0xBD422660
-
type: bytes
main_offset: 0x389CA4
value_type: uint32
value: 0xD503201F
## REF: 14 01 40 F9 08 4E A8 52
-
type: bytes
main_offset: 0x4916DC
value_type: uint32
value: 0xBD4226C0
-
type: bytes
main_offset: 0x4916E8
value_type: uint32
value: 0xD503201F
# When prerendered cutscene is active write flag to MAIN + 0x3ACAFFB
## REF: 68 52 40 79 08 01 19 32 68 52 00 79
-
type: bytes
main_offset: 0x2B23988
value_type: uint32
value: 0x97619AA3
## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call
-
type: bytes
main_offset: 0x2B211A0
value_type: uint32
value: 0x1761A4A1
## CODE CAVE, offset +0x50 relative to start of previous code cave
-
type: bytes
main_offset: 0x38A414
value_type: uint32
value:
- 0x52800022
- 0x9001BA03
- 0x393FEC62
- 0x141ADBE3
## CODE CAVE, offset +0x10 relative to start of previous code cave
-
type: bytes
main_offset: 0x38A424
value_type: uint32
value:
- 0x9001BA03
- 0x393FEC60
- 0x14A06C69 # B nn::oe::SetUserInactivityDetectionTimeExtended(bool)
# Adjust DR timing to factor from MAIN + 0x3ACAFF4
# REF: 88 02 15 CB 00 01 23 9E
-
type: bytes
main_offset: 0x17AC04
value_type: uint32
value:
- 0x9001CA88
- 0xBD4FF501
# Fix black background for D-pad menu
## REF: 21 03 5E BC
-
type: bytes
main_offset: 0x48DDD0
value_type: uint32
value:
- 0x17FBF198
- 0x1E202008
## CODE CAVE, offset +0xC relative to start of previous code cave
-
type: bytes
main_offset: 0x38A430
value_type: uint32
value:
- 0x1E202028
- 0x54000101
- 0x785FA328
- 0x7100151F
- 0x540000A1
- 0x785F8328
- 0x7100151F
- 0x54000041
- 0x1E2E1008
- 0x1F080409
- 0x14040E5F
# Default values
## FPS Target
-
type: bytes
main_offset: 0x3ACAFFC
value_type: float
value: 30
## Cutscene flag
-
type: bytes
main_offset: 0x3ACAFFB
value_type: uint8
value: 0
## Dynamic Resolution timing factor
-
type: bytes
main_offset: 0x3ACAFF4
value_type: float
value: 0.001
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x3ACAFFC]
value_type: float
value: FPS_TARGET
-
type: evaluate_write
address: [MAIN, 0x3ACAFF4]
value_type: float
value: "0.001 * (FPS_TARGET / 30)"
-
type: compare
compare_address: [MAIN, 0x3ACAFFB]
compare_value_type: uint8
compare_value: 1
compare_type: "=="
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,27 +0,0 @@
# SnowRunner 1.0.40
# BID: 54551AEABF6E1F41
# Just search for 0x42055555
unsafeCheck: true
MASTER_WRITE:
# Redirect DR frametime target to MAIN+0x30A7F00
-
type: bytes
main_offset: 0x193CEA8
value_type: uint32
value:
- 0xF000BB4A # adrp x10, #0x30A7000
- 0xBD4F0142 # ldr s2, [x10, #0xf00]
# default value
-
type: bytes
main_offset: 0x30A7F00
value_type: float
value: 33.3333333333
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x30A7F00]
value_type: float
value: FRAMETIME_TARGET

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,13 +1,11 @@
[config]
theme=romfs:/themes/oled_black_theme.ini
mtp_enabled=1
replace_hbmenu=0
replace_hbmenu=1
install_emummc=1
install_prompt=0
[homebrew]
layout=1
hide_sphaira=0
hide_sphaira=1
[filebrowser]
show_hidden=1

View File

@ -1,477 +0,0 @@
{
"[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!": "Ошибка загрузки страницы!"
}

View File

@ -1,8 +1,8 @@
[status-monitor]
preset=Ultra
ultra=Ultra
battery_avg_iir_filter=false
battery_time_left_refreshrate=60
average_gpu_load=false
average_gpu_load=true
[full]
refresh_rate=1
@ -10,24 +10,18 @@ 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=14
docked_font_size=14
spacing=4
handheld_font_size=15
docked_font_size=15
real_freqs=true
real_volts=true
show=CPU+GPU+RAM+TMP+BAT+RES+FPS
show_full_cpu=true
show_full_res=true
#replace_MB_with_RAM_load=true
show=CPU+GPU+RAM+TEMP+DRAW+RES+FPS
replace_MB_with_RAM_load=true
background_color=#1117
separator_color=2DFF
cat_color=#CDEF
text_color=#FFFF
@ -39,35 +33,34 @@ docked_font_size=12
text_align=left
real_freqs=true
real_volts=true
show=CPU+GPU+RAM+TMP+RES+FPS+BAT
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_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=24
docked_font_size=24
handheld_font_size=28
docked_font_size=28
text_color=#0F0F
background_color=#111A
background_color=#1117
[fps-graph]
layer_width_align=left
layer_height_align=top
max_fps_text_color=#FFFF
min_fps_text_color=#FFFF
background_color=#111A
background_color=#1117
fps_counter_color=#4444
border_color=#F77F
dashed_line_color=#8888
main_line_color=#FFFF
rounded_line_color=#F0FF
perfect_line_color=#0C0F
rounded_line_color=#0C0F
perfect_line_color=#F0FF
show_info=true
[game_resolutions]

View File

@ -1,4 +1,3 @@
[values]
gpu_dvfs=2
sync_reversenx=1
uncapped_clocks=1
reversenx_sync=1

View File

@ -1,29 +0,0 @@
{
"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"
}

View File

@ -1,29 +0,0 @@
{
"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"
}

View File

@ -1,29 +0,0 @@
{
"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"
}

View File

@ -1,29 +0,0 @@
{
"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"
}

Some files were not shown because too many files have changed in this diff Show More