Ultra 2.3|R3

This commit is contained in:
redraz 2025-01-04 11:42:49 +03:00
parent 65461efd23
commit 9c3765e08c
69 changed files with 1116 additions and 372 deletions

View File

@ -71,8 +71,8 @@
* [Tinfoil](https://tinfoil.io) - Установщик и каталог игр. * [Tinfoil](https://tinfoil.io) - Установщик и каталог игр.
* [HB App Store](https://github.com/fortheusers/hb-appstore) - Бесплатный магазин для скачивания Homebrew приложений. * [HB App Store](https://github.com/fortheusers/hb-appstore) - Бесплатный магазин для скачивания Homebrew приложений.
* [PPSSPP](https://gbatemp.net/threads/ppsspp-switch-standalone-beta.544071/post-10492671) - Эмулятор PSP. * [PPSSPP](https://gbatemp.net/threads/ppsspp-switch-standalone-beta.544071/post-10492671) - Эмулятор PSP.
* [Moonlight Switch](https://github.com/XITRIX/Moonlight-Switch) - Клиент Moonlight, позволяет транслировать на консоль игры с PC.
* [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Поиск и установка тем на свитч. * [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Поиск и установка тем на свитч.
* [ReverseNX Tool](https://github.com/masagrator/ReverseNX-Tool) - Программа для управления ReverseNX.
* [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Программа для сброса контроллера батареи. Не используйте просто так! * [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Программа для сброса контроллера батареи. Не используйте просто так!
* [MemToolkitNX](https://discord.com/channels/854839758815363072/1173171845139288114/1276196700750479480) - Бенчмарк и Тестер памяти. Результат сильно зависит от разгона CPU. * [MemToolkitNX](https://discord.com/channels/854839758815363072/1173171845139288114/1276196700750479480) - Бенчмарк и Тестер памяти. Результат сильно зависит от разгона CPU.
* Overlays: * Overlays:

View File

@ -68,7 +68,6 @@
* [HB App Store](https://github.com/fortheusers/hb-appstore) - A free store for downloading Homebrew apps. * [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. * [PPSSPP](https://gbatemp.net/threads/ppsspp-switch-standalone-beta.544071/post-10492671) - PSP emulator.
* [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Searching and installing themes on Switch. * [ThemezerNX](https://github.com/suchmememanyskill/themezer-nx) + [NXThemes Installer](https://github.com/exelix11/SwitchThemeInjector) + [Theme Patches](https://github.com/exelix11/theme-patches) - Searching and installing themes on Switch.
* [ReverseNX Tool](https://github.com/masagrator/ReverseNX-Tool) - ReverseNX control program.
* [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Program to reset the battery controller. Do not use unnecessarily! * [Battery Desync Fix](https://github.com/CTCaer/battery_desync_fix_nx) - Program to reset the battery controller. Do not use unnecessarily!
* **`MemToolkitNX`** - Benchmark and Memory Tester. The result is highly dependent on CPU overclocking. * **`MemToolkitNX`** - Benchmark and Memory Tester. The result is highly dependent on CPU overclocking.

View File

@ -0,0 +1,30 @@
# S.T.A.L.K.E.R.: Call of Prypiat 1.0.2
# BID: BBA39C65C1CC6463
unsafeCheck: true
ALL_FPS:
# psLoadedFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x17F9784]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x18168A0]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitMs
-
type: evaluate_write
address: [MAIN, 0x1A8490C]
value_type: float
value: "1000 / FPS_LOCK_TARGET"
# ResolutionInfo::sDynresGPUBudgetMs
-
type: evaluate_write
address: [MAIN, 0x17F9760]
value_type: float
value: "0.99 * FRAMETIME_TARGET"

View File

@ -0,0 +1,24 @@
# Chernobylite 1.1
# BID: 2D2065AEBF94F9AE
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x641EAB8, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x644C838, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x5C83700, 0]
value_type: int32
value: [0, 0]

View File

@ -0,0 +1,27 @@
# Goat Simulator 3 1.0.7.5
# BID: C606C7DC1C0EC88F
unsafeCheck: false
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x954E2F8, 0]
value_type: float
value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x9573F60, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x8D7E218, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -1,4 +1,4 @@
# Farming Simulator 23 Nintendo Switch Edition 1.6.0.0 # Farming Simulator 23 Nintendo Switch Edition 1.6.0.0/1.7.0.0
# BID: 17F37A56B17DD9CC # BID: 17F37A56B17DD9CC
unsafeCheck: true unsafeCheck: true

View File

@ -0,0 +1,51 @@
# Momotaro Dentetsu: Showa, Heisei, Reiwa mo Teiban! Asia Edition 1.0.1
# BID: B2D4462B71536EC6
unsafeCheck: true
MASTER_WRITE:
# Remove double buffer
-
type: bytes
main_offset: 0x1B630
value_type: uint32
value: 0x52800061
-
type: bytes
main_offset: 0x5774C
value_type: uint32
value: 0x52800061
ALL_FPS:
# REF: 20 59 60 BC
# Internal FPS Lock
-
type: evaluate_write
address: [MAIN, 0xFF7090]
value_type: float
value: [FPS_TARGET, "60 / FPS_TARGET"]
# Blocking game to max 60 FPS because setting game speed ratio below 1 causes glitches
-
type: evaluate_compare
compare_address: [MAIN, 0xFF7090]
compare_type: ">"
compare_value_type: float
compare_value: 60
address: [MAIN, 0xFF7090]
value_type: float
value: 60
-
type: evaluate_compare
compare_address: [MAIN, 0xFF7090]
compare_type: "=="
compare_value_type: float
compare_value: 60
address: [MAIN, 0xFF7094]
value_type: float
value: 1
# Unknown value that is set based on FPS Lock function argument, 0 = 60 FPS, 1 = 30 FPS, 2 = 20 FPS, 3 = 15 FPS
# According to IDA is not used at all, but writing this anyway
-
type: evaluate_write
address: [MAIN, 0x10D8028]
value_type: uint32
value: "VSYNC_TARGET - 1"

View File

@ -0,0 +1,27 @@
# GUNDAM BREAKER 4 1.9.0
# BID: 0CC82881FF112C6D
unsafeCheck: false
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x9F98D48, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x9FC67E8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x97CADA8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# GUNDAM BREAKER 4 1.10.0
# BID: 6267E76E9540F2ED
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x9FA2D48, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x9FD07E8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x97D4E48, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,30 @@
# S.T.A.L.K.E.R.: Clear Sky 1.0.2
# BID: 227837B490A51033
unsafeCheck: true
ALL_FPS:
# psLoadedFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x17D4774]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x17F18E8]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitMs
-
type: evaluate_write
address: [MAIN, 0x1A5F36C]
value_type: float
value: "1000 / FPS_LOCK_TARGET"
# ResolutionInfo::sDynresGPUBudgetMs
-
type: evaluate_write
address: [MAIN, 0x17D4750]
value_type: float
value: "0.99 * FRAMETIME_TARGET"

View File

@ -0,0 +1,12 @@
# Shadowverse: Champion's Battle 1.3.0
# BID: 1F936E043FB8C349
unsafeCheck: true
ALL_FPS:
# UnityEngine.Time::fixedDeltaTime
-
type: evaluate_write
address: [MAIN, 0x64DB5C0, 0x48]
value_type: float
value: "1 / FPS_TARGET"

View File

@ -0,0 +1,17 @@
# MEGATON MUSASHI W: WIRED 3.2.2
# BID: 1EC3E6373D7DA9A6
unsafeCheck: true
ALL_FPS:
# fixedDeltaTime = 1/FPS
-
type: evaluate_write
address: [MAIN, 0xCAC9F20, 0x48]
value_type: float
value: "1 / FPS_TARGET"
- # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS)
type: write
address: [MAIN, 0xCAC9F20, 0x100]
value_type: float
value: 0.0666666666

View File

@ -0,0 +1,17 @@
# MEGATON MUSASHI W: WIRED 3.2.0
# BID: 8286C091117CAECF
unsafeCheck: true
ALL_FPS:
# fixedDeltaTime = 1/FPS
-
type: evaluate_write
address: [MAIN, 0xCAA1720, 0x48]
value_type: float
value: "1 / FPS_TARGET"
- # maximumDeltaTime = 1/15 (with this setting game will slow down below 15 FPS instead of 30 FPS)
type: write
address: [MAIN, 0xCAA1720, 0x100]
value_type: float
value: 0.0666666666

View File

@ -0,0 +1,12 @@
# MEGATON MUSASHI W: WIRED 3.2.3
# BID: D152798E91A87AE7
unsafeCheck: true
ALL_FPS:
# fixedDeltaTime = 1/FPS
-
type: evaluate_write
address: [MAIN, 0xCAC9F20, 0x48]
value_type: float
value: "1 / FPS_TARGET"

View File

@ -0,0 +1,27 @@
# Romancing SaGa 2: Revenge of the Seven 1.0.2
# BID: 1933FBAFE977FA75
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x6D1EA80, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0x7BFAC70, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x7C534C0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -0,0 +1,30 @@
# S.T.A.L.K.E.R.: Shadow Of Chornobyl 1.0.2
# BID: 8E8BFFE66292CFF1
unsafeCheck: true
ALL_FPS:
# psLoadedFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x165F4EC]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitFps
-
type: evaluate_write
address: [MAIN, 0x167B9F0]
value_type: float
value: FPS_LOCK_TARGET
# psCurrentFrameLimitMs
-
type: evaluate_write
address: [MAIN, 0x18E7ACC]
value_type: float
value: "1000 / FPS_LOCK_TARGET"
# ResolutionInfo::sDynresGPUBudgetMs
-
type: evaluate_write
address: [MAIN, 0x165F2F0]
value_type: float
value: "0.99 * FRAMETIME_TARGET"

View File

@ -0,0 +1,38 @@
# REYNATIS (US/EU) 1.0.6
# BID: 25A4C89527E7A6E6
unsafeCheck: true
MASTER_WRITE:
# Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00
# REF: 01 f0 67 1e
-
type: bytes
main_offset: 0x391CEEC
value_type: uint32
value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD
- 0xB0021794 # adrp x20, #0x7c0d000
- 0xFD478281 # ldr d1, [x20, #0xf00]
- 0x1E612010 # fcmpe d0, d1
- 0x2D482269 # ldp s9, s8, [x19, #0x40]
- 0x540002CD # b.le #0x391cf54
- 0xBD40626A # ldr s10, [x19, #0x60]
-
type: bytes
main_offset: 0x391CF54
value_type: uint32
value:
- 0xFD478681 # ldr d1, [x20, #0xf08]
# Default handheld value
-
type: bytes
main_offset: 0x7C0DF00
value_type: double
value: [31, 29]
ALL_FPS:
# Dynamic Resolution Timing
-
type: evaluate_write
address: [MAIN, 0x7C0DF00]
value_type: double
value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"]

View File

@ -0,0 +1,38 @@
# REYNATIS (US/EU) 1.0.7
# BID: 7C8FE1FD610E1F1F
unsafeCheck: true
MASTER_WRITE:
# Redirect reading DR timing in DynamicResolution::LowerResSW() to MAIN + 0x7C0DF00
# REF: 01 f0 67 1e
-
type: bytes
main_offset: 0x391CEEC
value_type: uint32
value: # 941702B0 818247FD 1020611E 6922482D CD020054 6A6240BD
- 0xB0021794 # adrp x20, #0x7c0d000
- 0xFD478281 # ldr d1, [x20, #0xf00]
- 0x1E612010 # fcmpe d0, d1
- 0x2D482269 # ldp s9, s8, [x19, #0x40]
- 0x540002CD # b.le #0x391cf54
- 0xBD40626A # ldr s10, [x19, #0x60]
-
type: bytes
main_offset: 0x391CF54
value_type: uint32
value:
- 0xFD478681 # ldr d1, [x20, #0xf08]
# Default handheld value
-
type: bytes
main_offset: 0x7C0DF00
value_type: double
value: [31, 29]
ALL_FPS:
# Dynamic Resolution Timing
-
type: evaluate_write
address: [MAIN, 0x7C0DF00]
value_type: double
value: ["0.93 * FRAMETIME_TARGET", "(0.93 * FRAMETIME_TARGET) - 2"]

View File

@ -0,0 +1,12 @@
# EA SPORTS FC 25 1.75.9499
# BID: 27BDC0166D5D5A1B
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
-
type: evaluate_write
address: [MAIN, 0xCE1DA68, 8]
value_type: double
value: FPS_TARGET

View File

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

View File

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

View File

@ -0,0 +1,21 @@
# Tales of Kenzera: TAU 1.5.0
# BID: 9E7FB72540D748BA
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x6917E78, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x611ADC8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,28 @@
# SONIC X SHADOW GENERATIONS Launcher / SHADOW GENERATIONS 1.1.0
# BID: C8CDBFD621A6B29B
# FPS Lock is used to determine dynamic resolution timing too, but it doesn't work properly when setting higher FPS.
# DR Timing Fix is applied for anything above 30 FPS as it seems to fix the most notorious issue - stucking at 360p.
# Turn off Window Sync for better performance
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
# REF: C8 AA 8A 52 A8 30 A8 72 first ADRP above it
-
type: evaluate_write
address: [MAIN, 0x3EAB7B8, 0x14]
value_type: float
value: FPS_TARGET
# DR Timing fix, applied only for handheld
# Ref: 00 01 3F D6 B4 02 00 F9 E0 03 13 AA 01 3E 80 52 first ADRP above it
-
type: evaluate_compare
compare_address: [MAIN, 0x3EAB7E0, 0x18, 0x260, 0x24]
compare_value_type: float
compare_type: "=="
compare_value: -2.8
address: [MAIN, 0x3EAB7E0, 0x18, 0x260, 0x24]
value_type: float
value: ["-1.4 * VSYNC_TARGET", "-0.6 * VSYNC_TARGET", "0.025 * VSYNC_TARGET", "0.04 * VSYNC_TARGET", "0.05 * VSYNC_TARGET", "0.15 * VSYNC_TARGET"]

View File

@ -1,4 +1,4 @@
# SONIC GENERATIONS 1.0.1 # SONIC GENERATIONS 1.0.1/1.1.0
# BID: D91C67509C6AED8D # BID: D91C67509C6AED8D
unsafeCheck: true unsafeCheck: true
@ -24,4 +24,4 @@ ALL_FPS:
type: write type: write
address: [MAIN, 0x5226F00] address: [MAIN, 0x5226F00]
value_type: uint8 value_type: uint8
value: 0 value: 0

View File

@ -0,0 +1,21 @@
# Cassette Beasts 1.7.2
# BID: 153D5A2ABB9C0BA6
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

@ -0,0 +1,21 @@
# Cassette Beasts 1.7.1
# BID: F09EAE79357E3032
unsafeCheck: true
ALL_FPS:
# physics/common/physics_fps
-
type: evaluate_write
address: [MAIN, 0x30AAAE0, 0x24]
value_type: int32
value: FPS_LOCK_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

@ -0,0 +1,21 @@
# Twilight Survivors 1.0.10
# BID: E3FBEB5A9C7788CD
unsafeCheck: true
ALL_FPS:
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x6583898, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x5D87128, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# F1 Manager 2024 1.10
# BID: 8A9EBE9FC405A31C
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0x7FC8A28, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x8002AA0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x7805AA8, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# LEGO Horizon Adventures 1.2.0
# BID: 675538722EE1FACB
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x9134990, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0xA103148, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xA13DAF0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# LEGO Horizon Adventures 1.3.0
# BID: B3DFF885ABB66B5C
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x913A990, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
-
type: evaluate_write
address: [MAIN, 0xA109148, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xA143AF0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -1,7 +1,7 @@
# Xenoblade Chronicles 3 2.2.0 # Xenoblade Chronicles 3 2.2.0
# BID: 82D187FE9EF9BE92 # BID: 82D187FE9EF9BE92
unsafeCheck: true unsafeCheck: false
MASTER_WRITE: MASTER_WRITE:
# Redirect DR frametime target reading to .bss code cave [MAIN, 0x236AB00] # Redirect DR frametime target reading to .bss code cave [MAIN, 0x236AB00]
@ -72,35 +72,7 @@ ALL_FPS:
compare_value: 0 compare_value: 0
address: [MAIN, 0x236AB00] address: [MAIN, 0x236AB00]
value_type: float value_type: float
value: "(1 / 30) / 2" value: "((1 / 30) / 2) * 0.78"
-
type: evaluate_compare
compare_address: [MAIN, 0x1BA1A98]
compare_type: "!="
compare_value_type: int8
compare_value: 0
address: [MAIN, 0x1BA1A90, 128]
value_type: float
value: "(1 / 30) / 2"
ALL_REFRESH_RATES:
-
type: compare
compare_address: [MAIN, 0x1BA1A98]
compare_type: "!="
compare_value_type: int8
compare_value: 0
address: [MAIN, 0x1B42DB0]
value_type: int32
value: [1, 1]
-
type: evaluate_compare
compare_address: [MAIN, 0x1BA1A98]
compare_type: "!="
compare_value_type: int8
compare_value: 0
address: [MAIN, 0x236AB00]
value_type: float
value: "1 / 30"
- -
type: evaluate_compare type: evaluate_compare
compare_address: [MAIN, 0x1BA1A98] compare_address: [MAIN, 0x1BA1A98]

View File

@ -1,7 +1,7 @@
# Stray 1.6.0 # Stray 1.6.0
# BID: 109D974E180A5AA1 # BID: 109D974E180A5AA1
unsafeCheck: true unsafeCheck: false
ALL_FPS: ALL_FPS:
# Disable bUseFixedFrameRate # Disable bUseFixedFrameRate
@ -30,4 +30,4 @@ ALL_FPS:
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
- -
type: block type: block
what: timing what: timing

View File

@ -95,8 +95,8 @@ MASTER_WRITE:
- 0xF9464422 - 0xF9464422
- 0xF9064420 - 0xF9064420
- 0xCB020000 - 0xCB020000
- 0x528502A2 - 0xD503201F
- 0x72A00FE2 - 0xB94D0822
- 0x52881541 - 0x52881541
- 0x72A07F21 - 0x72A07F21
- 0xEB01001F - 0xEB01001F
@ -193,6 +193,12 @@ MASTER_WRITE:
main_offset: 0x2D65C94 main_offset: 0x2D65C94
value_type: int32 value_type: int32
value: -2 value: -2
# Default min delta
-
type: bytes
main_offset: 0x2D65D08
value_type: int32
value: 33333333
ALL_FPS: ALL_FPS:
# DR GPU Time Factor # DR GPU Time Factor
- -
@ -200,13 +206,18 @@ ALL_FPS:
address: [MAIN, 0x2D65C80] address: [MAIN, 0x2D65C80]
value_type: float value_type: float
value: "(FPS_TARGET / 30) * 0.001" value: "(FPS_TARGET / 30) * 0.001"
# Set Min delta
-
type: evaluate_write
address: [MAIN, 0x2D65D08]
value_type: uint32
value: "FRAMETIME_TARGET * 1000000"
# Default vsync # Default vsync
- -
type: evaluate_write type: evaluate_write
address: [MAIN, 0x2D65C94] address: [MAIN, 0x2D65C94]
value_type: int32 value_type: int32
value: "VSYNC_TARGET * -1" value: "VSYNC_TARGET * -1"
ALL_REFRESH_RATES:
# Prerendered cutscenes must be played at 30 FPS # Prerendered cutscenes must be played at 30 FPS
- -
type: compare type: compare

View File

@ -0,0 +1,34 @@
# No Man's Sky 5.2.9
# BID: 1FEBABDBBDE0228B
unsafeCheck: true
MASTER_WRITE:
# REF: A8 AA 8A 52 A8 40 A8 72
# NOP "CMP W8, #0" before ref
-
type: bytes
main_offset: 0x1F9CEC8
value_type: uint32
value: 0xD503201F
# Redirect DR frametime target to MAIN+0x4964F00
-
type: bytes
main_offset: 0x1F9CED4
value_type: uint32
value: # 52 4E 01 90 08 00 40 B9 40 02 4F BD
- 0x90014E52 # adrp x18, #0x4964000
- 0xB9400008 # ldr w8, [x0]
- 0xBD4F0240 # ldr s0, [x18, #0xf00]
# default value
-
type: bytes
main_offset: 0x4964F00
value_type: float
value: 33.3333333333
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x4964F00]
value_type: float
value: FRAMETIME_TARGET

View File

@ -0,0 +1,32 @@
# No Man's Sky 5.2.8
# BID: 6488A67709988BD7
unsafeCheck: true
MASTER_WRITE:
# Redirect DR frametime target to MAIN+0x4963F00
-
type: bytes
main_offset: 0x1F9D198
value_type: uint32
value: 0xD503201F
-
type: bytes
main_offset: 0x1F9D1A4
value_type: uint32
value:
- 0xD0014E32
- 0xB9400408
- 0xBD4F0240
# default value
-
type: bytes
main_offset: 0x4963F00
value_type: float
value: 33.3333333333
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x4963F00]
value_type: float
value: FRAMETIME_TARGET

View File

@ -0,0 +1,32 @@
# No Man's Sky 5.2.6
# BID: 9761E793CBE5895F
unsafeCheck: true
MASTER_WRITE:
# Redirect DR frametime target to MAIN+0x4962F00
-
type: bytes
main_offset: 0x1F9C5C8
value_type: uint32
value: 0xD503201F
-
type: bytes
main_offset: 0x1F9C5D4
value_type: uint32
value:
- 0xD0014E32
- 0xB9400408
- 0xBD4F0240
# default value
-
type: bytes
main_offset: 0x4962F00
value_type: float
value: 33.3333333333
ALL_FPS:
-
type: evaluate_write
address: [MAIN, 0x4962F00]
value_type: float
value: FRAMETIME_TARGET

View File

@ -0,0 +1,12 @@
# PowerWash Simulator 1.9.2
# BID: B2395B882C2BCB24
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, 0x5FA0BD8, 0xB8, 0, 0x28]
value_type: int32
value: FPS_LOCK_TARGET

View File

@ -3,76 +3,10 @@
unsafeCheck: true unsafeCheck: true
15FPS: #TODO: Patch DR FPS targets directly, for now -1 = 30 FPS, 0 = 60 FPS
# Address that is used to determine if it should use dev's own classes to get vsync target ALL_FPS:
# If we change it to anything that is above or equal 0, it's using Unity class that always returns -1
# Returning from function getting vsync target anything else than 2 results in Dynamic Resolution target set to 60 FPS, otherwise it's 30 FPS
# We cannot patch those FPS targets directly with FPSLocker as they are hardcoded
- -
type: write type: evaluate_write
address: [MAIN, 0x5B18318, 0x944] address: [MAIN, 0x5B18318, 0x944]
value_type: int32 value_type: int32
value: -1 value: "(VSYNC_TARGET * -1) + 1"
20FPS:
#Vsync target (default value)
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: -1
25FPS:
#Vsync target (default value)
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: -1
30FPS:
#Vsync target (default value)
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: -1
35FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0
40FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0
45FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0
50FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0
55FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0
60FPS:
#Vsync target
-
type: write
address: [MAIN, 0x5B18318, 0x944]
value_type: int32
value: 0

View File

@ -0,0 +1,12 @@
# DAVE THE DIVER 1.0.3.972
# BID: 448820AF8E20D65D
unsafeCheck: true
ALL_FPS:
# UnityEngine.Time::fixedDeltaTime
-
type: evaluate_write
address: [MAIN, 0x9735300, 0x48]
value_type: float
value: "1 / FPS_TARGET"

View File

@ -0,0 +1,80 @@
# Another Crab's Treasure 1.0.103.9
# BID: 01CBDFDED43B80F5
unsafeCheck: true
MASTER_WRITE:
# Redirect updating various deltas to read frametime target from UnityEngine.Application::targetFrameRate, REF: 08 10 91 52 08 A1 A7 72
-
type: bytes
main_offset: 0x18EB7C8
value_type: uint32
value: # 08 EA 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e
- 0xD001EA08 # adrp x8, 0x562d000
- 0xB94B3908 # ldr w8, [x8, #0xb38]
- 0x1E230101 # ucvtf s1, w8
- 0x1E2E1000 # fmov s0, #1.00000000
- 0x1E211800 # fdiv s0, s0, s1
-
type: bytes
main_offset: 0x18EF310
value_type: uint32
value: # E8 E9 01 D0 08 39 4B B9 01 01 23 1E 00 10 2e 1e 00 18 21 1e
- 0xD001E9E8 # adrp x8, 0x562d000
- 0xB94B3908 # ldr w8, [x8, #0xb38]
- 0x1E230101 # ucvtf s1, w8
- 0x1E2E1000 # fmov s0, #1.00000000
- 0x1E211800 # fdiv s0, s0, s1
# Redirect Dynamic Resolution GPU Timing target in DynamicResolutionScaler::Update to MAIN+0x5AA3F08
-
type: bytes
main_offset: 0x3882694
value_type: uint32
value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5
- 0xB0011108 # adrp x8, #0x5aa3000
- 0xF9478508 # ldr x8, [x8, #0xf08]
- 0xD503201F # nop
- 0xD503201F # nop
-
type: bytes
main_offset: 0x3882714
value_type: uint32
value: # 08 11 01 B0 08 85 47 F9 60 2A 40 BD 1F 20 03 D5 1F 20 03 D5
- 0xB0011108 # adrp x8, #0x5aa3000
- 0xF9478508 # ldr x8, [x8, #0xf08]
- 0xBD402A60 # ldr s0, [x19, #0x28]
- 0xD503201F # nop
- 0xD503201F # nop
-
type: bytes
main_offset: 0x3882788
value_type: uint32
value: # 08 11 01 B0 08 85 47 F9 1F 20 03 D5 1F 20 03 D5
- 0xB0011108 # adrp x8, #0x5aa3000
- 0xF9478508 # ldr x8, [x8, #0xf08]
- 0xD503201F # nop
- 0xD503201F # nop
# Default values
-
type: bytes
main_offset: 0x562DB38
value_type: uint32
value: 30
-
type: bytes
main_offset: 0x5AA3F08
value_type: double
value: 28.57142857142857
ALL_FPS:
# UnityEngine.Application::targetFrameRate
-
type: evaluate_write
address: [MAIN, 0x562DB38]
value_type: uint32
value: FPS_TARGET
# GPU Timing Target
-
type: evaluate_write
address: [MAIN, 0x5AA3F08]
value_type: double
value: "1000 / (FPS_TARGET + 5)"

View File

@ -77,4 +77,4 @@ ALL_FPS:
type: evaluate_write type: evaluate_write
address: [MAIN, 0x5A8D908] address: [MAIN, 0x5A8D908]
value_type: double value_type: double
value: "1 / (FPS_TARGET + 5)" value: "1000 / (FPS_TARGET + 5)"

View File

@ -0,0 +1,21 @@
# Life is Strange: Double Exposure 1.0.2
# BID: FF8EFD0E0E71BB03
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x6910E90, 0]
value_type: int32
value: [0, 0]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x791E2D8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -0,0 +1,17 @@
# Yakuza Kiwami 1.01
# BID: AE90FD64E7B2FE1E
unsafeCheck: true
ALL_FPS:
# Block cutscenes to 30 FPS to fix glitches
# REF 6B 01 40 F9 2A 29 42 B9 69 B9 40 F9, any result, second LDR above (LDR X9)
-
type: compare
compare_type: "!="
compare_value_type: uint64
compare_address: [MAIN, 0x2597E00]
compare_value: 0
address: [MAIN]
value_type: refresh_rate
value: 30

View File

@ -1,6 +1,7 @@
# Valkyria Chronicles 1.0.0 # Valkyria Chronicles 1.0.0/1.0.1
# BID: FE77FFB8CBFB3A5C # BID: FE77FFB8CBFB3A5C
# 2D Animations speed is still tied to framerate # 2D Animations speed is still tied to framerate
# Buffers info is passed to fixed size class, making triple buffer patch requires effort
unsafeCheck: true unsafeCheck: true
@ -10,4 +11,4 @@ ALL_FPS:
type: evaluate_write type: evaluate_write
address: [MAIN, 0x95CA9C] address: [MAIN, 0x95CA9C]
value_type: float value_type: float
value: "60 / FPS_TARGET" value: "60 / FPS_TARGET"

View File

@ -0,0 +1,27 @@
# Monster Jam Showdown 1.0.6
# BID: 35FC3A7D13060376
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0xAC39688, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xAC74030, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x9C78970, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# Monster Jam Showdown 1.0.5
# BID: D07D96A610514C45
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0xAC34688, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0xAC6F030, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x9C73970, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,27 @@
# SOUTH PARK: SNOW DAY! 1.0.11
# BID: 4B7F793B8355C016
unsafeCheck: true
ALL_FPS:
# r.VSync
-
type: write
address: [MAIN, 0x7E97DC8, 0]
value_type: int32
value: [0, 0]
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal
-
type: evaluate_write
address: [MAIN, 0x8663488, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x8688EF8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
-
type: block
what: timing

View File

@ -0,0 +1,18 @@
# Caravan SandWitch 1.0.5
# BID: CE493FC8CDD3D7B2
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x7A4A190, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x7A838A0, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]

View File

@ -0,0 +1,27 @@
# Disney Epic Mickey: Rebrushed 1.0.4
# BID: 10844A7A20C5597E
unsafeCheck: true
ALL_FPS:
# r.DynamicRes.FrameTimeBudget
-
type: evaluate_write
address: [MAIN, 0x6E35A58, 0]
value_type: float
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
# t.MaxFPS
-
type: evaluate_write
address: [MAIN, 0x6E636F8, 0]
value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x6666668, 0]
value_type: uint32
value: [0, 0]
-
type: block
what: timing

View File

@ -0,0 +1,13 @@
# Card-en-Ciel 1.1.0
# BID: 27AB93A086868C70
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
# REF: look at nn::os::SleepThread() called in nnMain()
-
type: evaluate_write
address: [MAIN, 0x207F248, 0x5C]
value_type: float
value: 1 / FPS_LOCK_TARGET

View File

@ -0,0 +1,14 @@
# Card-en-Ciel 1.2.0
# BID: 59C5C45EF17ACADA
# Buffers are hardcoded line by line and put into fixed size heap allocation, so getting triple buffer requires effort
unsafeCheck: true
ALL_FPS:
# Internal FPS Lock
# REF: look at nn::os::SleepThread() called in nnMain()
-
type: evaluate_write
address: [MAIN, 0x20F2248, 0x5C]
value_type: float
value: 1 / FPS_LOCK_TARGET

View File

@ -0,0 +1,12 @@
# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.4.126
# BID: E7011BF08747297B
unsafeCheck: true
ALL_FPS:
# UnityEngine.Time::fixedDeltaTime (default is 0.03268)
-
type: evaluate_write
address: [MAIN, 0x95672B8, 0x48]
value_type: float
value: "(1 / FPS_TARGET) / 1.02"

View File

@ -165,7 +165,7 @@ ALL_FPS:
address: [MAIN, 0x472AAC4] address: [MAIN, 0x472AAC4]
value_type: float value_type: float
value: "(FPS_TARGET / 30) * 0.001" value: "(FPS_TARGET / 30) * 0.001"
ALL_REFRESH_RATES: # cutscenes must be played at 30 FPS
- -
type: compare type: compare
compare_address: [MAIN, 0x472AABC] compare_address: [MAIN, 0x472AABC]

View File

@ -10,6 +10,12 @@ ALL_FPS:
address: [MAIN, 0x8082C68, 0] address: [MAIN, 0x8082C68, 0]
value_type: float value_type: float
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
# r.VSync
-
type: write
address: [MAIN, 0x78412B0, 0]
value_type: uint32
value: [0, 0]
- -
type: block type: block
what: timing what: timing

View File

@ -1,7 +1,7 @@
# Xenoblade Chronicles 1.1.2 # Xenoblade Chronicles 1.1.2
# BID: 92C78BB3DCBBC3F7 # BID: 92C78BB3DCBBC3F7
unsafeCheck: true unsafeCheck: false
ALL_FPS: ALL_FPS:
- -

Binary file not shown.

Binary file not shown.

View File

@ -1,7 +1,7 @@
[atmosphere] [atmosphere]
dmnt_cheats_enabled_by_default=u8!0x0 dmnt_cheats_enabled_by_default=u8!0x0
dmnt_always_save_cheat_toggles=u8!0x1 dmnt_always_save_cheat_toggles=u8!0x1
fatal_auto_reboot_interval=u64!0x0 fatal_auto_reboot_interval=u64!0x3000
enable_external_bluetooth_db=u8!0x1 enable_external_bluetooth_db=u8!0x1
[contents_delivery] [contents_delivery]

View File

@ -1,8 +1,5 @@
127.0.0.1 *nintendo* 127.0.0.1 *nintendo*
127.0.0.1 ads.doubleclick.net 127.0.0.1 ads.doubleclick.net
127.0.0.1 s.ytimg.com
127.0.0.1 ad.youtube.com
127.0.0.1 ads.youtube.com
127.0.0.1 clients1.google.com 127.0.0.1 clients1.google.com
127.0.0.1 dts.innovid.com 127.0.0.1 dts.innovid.com
127.0.0.1 googleads4.g.doubleclick.net 127.0.0.1 googleads4.g.doubleclick.net
@ -23,7 +20,6 @@
127.0.0.1 files.adform.net 127.0.0.1 files.adform.net
127.0.0.1 secure-ds.serving-sys.com 127.0.0.1 secure-ds.serving-sys.com
127.0.0.1 securepubads.g.doubleclick.net 127.0.0.1 securepubads.g.doubleclick.net
127.0.0.1 s.youtube.com
127.0.0.1 2975c.v.fwmrm.net 127.0.0.1 2975c.v.fwmrm.net
127.0.0.1 static.doubleclick.net 127.0.0.1 static.doubleclick.net
127.0.0.1 googleadservices.com 127.0.0.1 googleadservices.com
@ -40,247 +36,5 @@
127.0.0.1 fwmrm.net 127.0.0.1 fwmrm.net
127.0.0.1 innovid.com 127.0.0.1 innovid.com
127.0.0.1 2mdn.net 127.0.0.1 2mdn.net
127.0.0.1 r8.sn-4g5ednzz.googlevideo.com
127.0.0.1 r8---sn-4g5ednzz.googlevideo.com
127.0.0.1 r6.sn-4g5ednll.googlevideo.com
127.0.0.1 r6.sn-4g5edney.googlevideo.com
127.0.0.1 r6.sn-4g5ednek.googlevideo.com
127.0.0.1 r6.sn-4g5ednee.googlevideo.com
127.0.0.1 r6.sn-4g5edn7e.googlevideo.com
127.0.0.1 r6.sn-4g5e6nez.googlevideo.com
127.0.0.1 r6---sn-4g5ednll.googlevideo.com
127.0.0.1 r6---sn-4g5edney.googlevideo.com
127.0.0.1 r6---sn-4g5ednek.googlevideo.com
127.0.0.1 r6---sn-4g5ednee.googlevideo.com
127.0.0.1 r6---sn-4g5edn7e.googlevideo.com
127.0.0.1 r6---sn-4g5e6nez.googlevideo.com
127.0.0.1 r5.sn-h0jeenek.googlevideo.com
127.0.0.1 r5.sn-4g5ednzz.googlevideo.com
127.0.0.1 r5.sn-4g5ednsz.googlevideo.com
127.0.0.1 r5.sn-4g5ednsy.googlevideo.com
127.0.0.1 r5.sn-4g5ednsr.googlevideo.com
127.0.0.1 r5.sn-4g5ednsl.googlevideo.com
127.0.0.1 r5.sn-4g5ednsd.googlevideo.com
127.0.0.1 r5.sn-4g5edns6.googlevideo.com
127.0.0.1 r5.sn-4g5ednly.googlevideo.com
127.0.0.1 r5.sn-4g5edn7s.googlevideo.com
127.0.0.1 r5.sn-4g5e6nzl.googlevideo.com
127.0.0.1 r5.sn-4g5e6nze.googlevideo.com
127.0.0.1 r5.sn-4g5e6nz7.googlevideo.com
127.0.0.1 r5.sn-4g5e6nsz.googlevideo.com
127.0.0.1 r5.sn-4g5e6nsy.googlevideo.com
127.0.0.1 r5.sn-4g5e6nss.googlevideo.com
127.0.0.1 r5.sn-4g5e6nsk.googlevideo.com
127.0.0.1 r5.sn-4g5e6ns7.googlevideo.com
127.0.0.1 r5.sn-4g5e6ns6.googlevideo.com
127.0.0.1 r5.sn-4g5e6nls.googlevideo.com
127.0.0.1 r5.sn-4g5e6ney.googlevideo.com
127.0.0.1 r5.sn-4g5e6n7r.googlevideo.com
127.0.0.1 r5.sn-4g5e6n7k.googlevideo.com
127.0.0.1 r5---sn-h0jeenek.googlevideo.com
127.0.0.1 r5---sn-4g5ednzz.googlevideo.com
127.0.0.1 r5---sn-4g5ednsz.googlevideo.com
127.0.0.1 r5---sn-4g5ednsy.googlevideo.com
127.0.0.1 r5---sn-4g5ednsr.googlevideo.com
127.0.0.1 r5---sn-4g5ednsl.googlevideo.com
127.0.0.1 r5---sn-4g5ednsd.googlevideo.com
127.0.0.1 r5---sn-4g5edns6.googlevideo.com
127.0.0.1 r5---sn-4g5ednly.googlevideo.com
127.0.0.1 r5---sn-4g5edn7s.googlevideo.com
127.0.0.1 r5---sn-4g5e6nzl.googlevideo.com
127.0.0.1 r5---sn-4g5e6nze.googlevideo.com
127.0.0.1 r5---sn-4g5e6nz7.googlevideo.com
127.0.0.1 r5---sn-4g5e6nsz.googlevideo.com
127.0.0.1 r5---sn-4g5e6nsy.googlevideo.com
127.0.0.1 r5---sn-4g5e6nss.googlevideo.com
127.0.0.1 r5---sn-4g5e6nsk.googlevideo.com
127.0.0.1 r5---sn-4g5e6ns7.googlevideo.com
127.0.0.1 r5---sn-4g5e6ns6.googlevideo.com
127.0.0.1 r5---sn-4g5e6nls.googlevideo.com
127.0.0.1 r5---sn-4g5e6ney.googlevideo.com
127.0.0.1 r5---sn-4g5e6n7r.googlevideo.com
127.0.0.1 r5---sn-4g5e6n7k.googlevideo.com
127.0.0.1 r4.sn-4g5ednz7.googlevideo.com
127.0.0.1 r4.sn-4g5ednsy.googlevideo.com
127.0.0.1 r4.sn-4g5ednsk.googlevideo.com
127.0.0.1 r4.sn-4g5ednsd.googlevideo.com
127.0.0.1 r4---sn-4g5ednz7.googlevideo.com
127.0.0.1 r4---sn-4g5ednsy.googlevideo.com
127.0.0.1 r4---sn-4g5ednsk.googlevideo.com
127.0.0.1 r4---sn-4g5ednsd.googlevideo.com
127.0.0.1 r3.sn-4g5ednz7.googlevideo.com
127.0.0.1 r3.sn-4g5ednss.googlevideo.com
127.0.0.1 r3.sn-4g5ednsd.googlevideo.com
127.0.0.1 r3.sn-4g5ednls.googlevideo.com
127.0.0.1 r3.sn-4g5ednll.googlevideo.com
127.0.0.1 r3.sn-4g5ednee.googlevideo.com
127.0.0.1 r3.sn-4g5edned.googlevideo.com
127.0.0.1 r3.sn-4g5edne7.googlevideo.com
127.0.0.1 r3.sn-4g5edne6.googlevideo.com
127.0.0.1 r3.sn-4g5e6nzz.googlevideo.com
127.0.0.1 r3.sn-4g5e6nzs.googlevideo.com
127.0.0.1 r3.sn-4g5e6nsz.googlevideo.com
127.0.0.1 r3.sn-4g5e6nsy.googlevideo.com
127.0.0.1 r3.sn-4g5e6nsk.googlevideo.com
127.0.0.1 r3.sn-4g5e6nle.googlevideo.com
127.0.0.1 r3.sn-4g5e6nld.googlevideo.com
127.0.0.1 r3---sn-4g5ednz7.googlevideo.com
127.0.0.1 r3---sn-4g5ednss.googlevideo.com
127.0.0.1 r3---sn-4g5ednsd.googlevideo.com
127.0.0.1 r3---sn-4g5ednls.googlevideo.com
127.0.0.1 r3---sn-4g5ednll.googlevideo.com
127.0.0.1 r3---sn-4g5ednee.googlevideo.com
127.0.0.1 r3---sn-4g5edned.googlevideo.com
127.0.0.1 r3---sn-4g5edne7.googlevideo.com
127.0.0.1 r3---sn-4g5edne6.googlevideo.com
127.0.0.1 r3---sn-4g5e6nzz.googlevideo.com
127.0.0.1 r3---sn-4g5e6nzs.googlevideo.com
127.0.0.1 r3---sn-4g5e6nsz.googlevideo.com
127.0.0.1 r3---sn-4g5e6nsy.googlevideo.com
127.0.0.1 r3---sn-4g5e6nsk.googlevideo.com
127.0.0.1 r3---sn-4g5e6nle.googlevideo.com
127.0.0.1 r3---sn-4g5e6nld.googlevideo.com
127.0.0.1 r2.sn-hp57kn6e.googlevideo.com
127.0.0.1 r2.sn-h0jeln7e.googlevideo.com
127.0.0.1 r2.sn-h0jeener.googlevideo.com
127.0.0.1 r2.sn-h0jeen76.googlevideo.com
127.0.0.1 r2.sn-4g5ednzz.googlevideo.com
127.0.0.1 r2.sn-4g5ednly.googlevideo.com
127.0.0.1 r2.sn-4g5ednls.googlevideo.com
127.0.0.1 r2.sn-4g5ednle.googlevideo.com
127.0.0.1 r2.sn-4g5ednee.googlevideo.com
127.0.0.1 r2.sn-4g5edned.googlevideo.com
127.0.0.1 r2.sn-4g5edn7y.googlevideo.com
127.0.0.1 r2.sn-4g5e6nsz.googlevideo.com
127.0.0.1 r2.sn-4g5e6nsy.googlevideo.com
127.0.0.1 r2.sn-4g5e6nsk.googlevideo.com
127.0.0.1 r2.sn-4g5e6ns6.googlevideo.com
127.0.0.1 r2.sn-4g5e6nl7.googlevideo.com
127.0.0.1 r2.sn-4g5e6ney.googlevideo.com
127.0.0.1 r2---sn-hp57kn6e.googlevideo.com
127.0.0.1 r2---sn-h0jeln7e.googlevideo.com
127.0.0.1 r2---sn-h0jeener.googlevideo.com
127.0.0.1 r2---sn-h0jeen76.googlevideo.com
127.0.0.1 r2---sn-4g5ednzz.googlevideo.com
127.0.0.1 r2---sn-4g5ednse.googlevideo.com
127.0.0.1 r2---sn-4g5ednly.googlevideo.com
127.0.0.1 r2---sn-4g5ednls.googlevideo.com
127.0.0.1 r2---sn-4g5ednle.googlevideo.com
127.0.0.1 r2---sn-4g5ednee.googlevideo.com
127.0.0.1 r2---sn-4g5edned.googlevideo.com
127.0.0.1 r2---sn-4g5edn7y.googlevideo.com
127.0.0.1 r2---sn-4g5e6nsz.googlevideo.com
127.0.0.1 r2---sn-4g5e6nsy.googlevideo.com
127.0.0.1 r2---sn-4g5e6nsk.googlevideo.com
127.0.0.1 r2---sn-4g5e6ns6.googlevideo.com
127.0.0.1 r2---sn-4g5e6nl7.googlevideo.com
127.0.0.1 r2---sn-4g5e6ney.googlevideo.com
127.0.0.1 r15.sn-4g5ednzz.googlevideo.com
127.0.0.1 r15---sn-4g5ednzz.googlevideo.com
127.0.0.1 r11.sn-4g5ednzz.googlevideo.com
127.0.0.1 r11---sn-4g5ednzz.googlevideo.com
127.0.0.1 r10.sn-4g5ednzz.googlevideo.com
127.0.0.1 r10---sn-4g5ednzz.googlevideo.com
127.0.0.1 r1.sn-h0jeln7e.googlevideo.com
127.0.0.1 r1.sn-h0jeened.googlevideo.com
127.0.0.1 r1.sn-h0jeen76.googlevideo.com
127.0.0.1 r1.sn-4g5ednsd.googlevideo.com
127.0.0.1 r1.sn-4g5ednly.googlevideo.com
127.0.0.1 r1.sn-4g5ednll.googlevideo.com
127.0.0.1 r1.sn-4g5edne6.googlevideo.com
127.0.0.1 r1.sn-4g5e6nzz.googlevideo.com
127.0.0.1 r1.sn-4g5e6nz7.googlevideo.com
127.0.0.1 r1.sn-4g5e6nsy.googlevideo.com
127.0.0.1 r1.sn-4g5e6nez.googlevideo.com
127.0.0.1 r1---sn-h0jeln7e.googlevideo.com
127.0.0.1 r1---sn-h0jeened.googlevideo.com
127.0.0.1 r1---sn-h0jeen76.googlevideo.com
127.0.0.1 r1---sn-4g5ednsd.googlevideo.com
127.0.0.1 r1---sn-4g5ednly.googlevideo.com
127.0.0.1 r1---sn-4g5ednll.googlevideo.com
127.0.0.1 r1---sn-4g5edne6.googlevideo.com
127.0.0.1 r1---sn-4g5e6nzz.googlevideo.com
127.0.0.1 r1---sn-4g5e6nz7.googlevideo.com
127.0.0.1 r1---sn-4g5e6nsy.googlevideo.com
127.0.0.1 r1---sn-4g5e6ns7.googlevideo.com
127.0.0.1 r1---sn-4g5e6nez.googlevideo.com
127.0.0.1 manifest.googlevideo.com
127.0.0.1 r8.sn-n02xgoxufvg3-2gbs.googlevideo.com
127.0.0.1 r8---sn-n02xgoxufvg3-2gbs.googlevideo.com
127.0.0.1 r6.sn-4g5edne7.googlevideo.com
127.0.0.1 r6---sn-4g5edne7.googlevideo.com
127.0.0.1 r5.sn-hp57yn7y.googlevideo.com
127.0.0.1 r5---sn-hp57yn7y.googlevideo.com
127.0.0.1 r4.sn-h0jeln7l.googlevideo.com
127.0.0.1 r4.sn-h0jeln7e.googlevideo.com
127.0.0.1 r4.sn-h0jeened.googlevideo.com
127.0.0.1 r4.sn-4g5ednzz.googlevideo.com
127.0.0.1 r4.sn-4g5edns7.googlevideo.com
127.0.0.1 r4.sn-4g5ednly.googlevideo.com
127.0.0.1 r4.sn-4g5ednld.googlevideo.com
127.0.0.1 r4.sn-4g5edney.googlevideo.com
127.0.0.1 r4.sn-4g5e6nzs.googlevideo.com
127.0.0.1 r4.sn-4g5e6ns6.googlevideo.com
127.0.0.1 r4.sn-4g5e6nez.googlevideo.com
127.0.0.1 r4---sn-h0jeln7l.googlevideo.com
127.0.0.1 r4---sn-h0jeln7e.googlevideo.com
127.0.0.1 r4---sn-h0jeened.googlevideo.com
127.0.0.1 r4---sn-4g5ednzz.googlevideo.com
127.0.0.1 r4---sn-4g5edns7.googlevideo.com
127.0.0.1 r4---sn-4g5ednly.googlevideo.com
127.0.0.1 r4---sn-4g5ednld.googlevideo.com
127.0.0.1 r4---sn-4g5edney.googlevideo.com
127.0.0.1 r4---sn-4g5e6nzs.googlevideo.com
127.0.0.1 r4---sn-4g5e6ns6.googlevideo.com
127.0.0.1 r4---sn-4g5e6nez.googlevideo.com
127.0.0.1 r3.sn-4g5ednzz.googlevideo.com
127.0.0.1 r3.sn-4g5ednsz.googlevideo.com
127.0.0.1 r3.sn-4g5edns6.googlevideo.com
127.0.0.1 r3.sn-4g5ednld.googlevideo.com
127.0.0.1 r3.sn-4g5e6nsr.googlevideo.com
127.0.0.1 r3.sn-4g5e6nl7.googlevideo.com
127.0.0.1 r3---sn-4g5ednzz.googlevideo.com
127.0.0.1 r3---sn-4g5ednsz.googlevideo.com
127.0.0.1 r3---sn-4g5edns6.googlevideo.com
127.0.0.1 r3---sn-4g5ednld.googlevideo.com
127.0.0.1 r3---sn-4g5e6nsr.googlevideo.com
127.0.0.1 r3---sn-4g5e6nl7.googlevideo.com
127.0.0.1 r2.sn-4g5ednse.googlevideo.com
127.0.0.1 r2.sn-4g5ednld.googlevideo.com
127.0.0.1 r2.sn-4g5e6nzl.googlevideo.com
127.0.0.1 r2.sn-4g5e6nez.googlevideo.com
127.0.0.1 r2---sn-4g5ednld.googlevideo.com
127.0.0.1 r2---sn-4g5e6nzl.googlevideo.com
127.0.0.1 r2---sn-4g5e6nez.googlevideo.com
127.0.0.1 r1.sn-4g5ednsr.googlevideo.com
127.0.0.1 r1.sn-4g5ednsl.googlevideo.com
127.0.0.1 r1.sn-4g5ednse.googlevideo.com
127.0.0.1 r1.sn-4g5edned.googlevideo.com
127.0.0.1 r1.sn-4g5e6ns7.googlevideo.com
127.0.0.1 r1.sn-4g5e6ns6.googlevideo.com
127.0.0.1 r1.sn-4g5e6nl6.googlevideo.com
127.0.0.1 r1.sn-4g5e6ne6.googlevideo.com
127.0.0.1 r1---sn-4g5ednsr.googlevideo.com
127.0.0.1 r1---sn-4g5ednsl.googlevideo.com
127.0.0.1 r1---sn-4g5ednse.googlevideo.com
127.0.0.1 r1---sn-4g5edned.googlevideo.com
127.0.0.1 r1---sn-4g5e6ns6.googlevideo.com
127.0.0.1 r1---sn-4g5e6nl6.googlevideo.com
127.0.0.1 r1---sn-4g5e6ne6.googlevideo.com
127.0.0.1 r2---sn-5hne6n7z.googlevideo.com
127.0.0.1 r2---sn-25ge7nsd.googlevideo.com
127.0.0.1 r4---sn-25ge7nsk.googlevideo.com
127.0.0.1 r6---sn-25ge7nsl.googlevideo.com
127.0.0.1 r1---sn-25glen7y.googlevideo.com
127.0.0.1 r1---sn-25glenez.googlevideo.com
127.0.0.1 r10---sn-4gxx-25gel.googlevideo.com
127.0.0.1 r11---sn-4gxx-25ge7.googlevideo.com
127.0.0.1 r4---sn-4gxx-25gee.googlevideo.com
127.0.0.1 r16---sn-4gxx-25ge7.googlevideo.com
127.0.0.1 r3---sn-4gxx-25gel.googlevideo.com
127.0.0.1 r1---sn-4gxx-25gel.googlevideo.com
127.0.0.1 r9---sn-4gxx-25gel.googlevideo.com
127.0.0.1 r9---sn-4gxx-25gy.googlevideo.com
127.0.0.1 r6---sn-4g5e6nes.googlevideo.com
95.216.149.205 *conntest.nintendowifi.net 95.216.149.205 *conntest.nintendowifi.net
95.216.149.205 *ctest.cdn.nintendo.net 95.216.149.205 *ctest.cdn.nintendo.net

Binary file not shown.

Binary file not shown.

View File

@ -1,14 +1,13 @@
[config] [config]
autoboot=1 autoboot=1
autoboot_list=0 autoboot_list=0
bootwait=3 bootwait=4
backlight=40 backlight=40
noticker=0 noticker=0
autohosoff=2 autohosoff=2
autonogc=0 autonogc=0
updater2p=0 updater2p=0
bootprotect=0 bootprotect=0
{}
[Atmosphere] [Atmosphere]
fss0=atmosphere/package3 fss0=atmosphere/package3
@ -16,12 +15,9 @@ cal0blank=1
kip1=atmosphere/kips/* kip1=atmosphere/kips/*
logopath=bootloader/res/bootscreen.bmp logopath=bootloader/res/bootscreen.bmp
icon=bootloader/res/atmo_cfw.bmp icon=bootloader/res/atmo_cfw.bmp
{}
[Safe Mode] [Safe Mode]
fss0=atmosphere/package3 fss0=atmosphere/package3
cal0blank=1 cal0blank=1
logopath=bootloader/res/bootscreen.bmp logopath=bootloader/res/bootscreen.bmp
icon=bootloader/res/atmo_sm.bmp icon=bootloader/res/atmo_sm.bmp
{}

View File

@ -1,4 +1,3 @@
[Semi Stock] [Semi Stock]
fss0=atmosphere/package3 fss0=atmosphere/package3
emummc_force_disable=1 emummc_force_disable=1
@ -6,7 +5,6 @@ cal0blank=0
kip1=atmosphere/kips/* kip1=atmosphere/kips/*
logopath=bootloader/res/bootscreen.bmp logopath=bootloader/res/bootscreen.bmp
icon=bootloader/res/sys_cfw.bmp icon=bootloader/res/sys_cfw.bmp
{}
[Semi Safe] [Semi Safe]
fss0=atmosphere/package3 fss0=atmosphere/package3
@ -14,7 +12,6 @@ emummc_force_disable=1
cal0blank=0 cal0blank=0
logopath=bootloader/res/bootscreen.bmp logopath=bootloader/res/bootscreen.bmp
icon=bootloader/res/sys_sm.bmp icon=bootloader/res/sys_sm.bmp
{}
[Full Stock] [Full Stock]
fss0=atmosphere/package3 fss0=atmosphere/package3
@ -22,4 +19,3 @@ emummc_force_disable=1
cal0blank=0 cal0blank=0
stock=1 stock=1
icon=bootloader/res/stock.bmp icon=bootloader/res/stock.bmp
{}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 MiB

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

View File

@ -4,17 +4,21 @@ set-ini-val /bootloader/hekate_ipl.ini config autoboot 1
set-ini-val /bootloader/hekate_ipl.ini config autoboot_list 0 set-ini-val /bootloader/hekate_ipl.ini config autoboot_list 0
reboot reboot
[Semi-Stock - Forced] [Semi Stock - Forced]
set-ini-val /bootloader/hekate_ipl.ini config autoboot 1 set-ini-val /bootloader/hekate_ipl.ini config autoboot 1
set-ini-val /bootloader/hekate_ipl.ini config autoboot_list 1 set-ini-val /bootloader/hekate_ipl.ini config autoboot_list 1
reboot reboot
[Hekate - Bootloader]
reboot HEKATE
[$] [$]
;mode=table ;mode=table
;background=false ;background=false
;gap=17 ;gap=17
[Other] [Other]
;mode=table ;mode=table
;background=false
;header_indent=true ;header_indent=true
;section_text_color=#FFFFFF ;section_text_color=#FFFFFF
;gap=20 ;gap=20