mirror of
https://github.com/Ultra-NX/UltraNX.git
synced 2025-05-05 20:02:49 +00:00
Ultra 2.3|R4+
This commit is contained in:
parent
b546edec8f
commit
b144b70918
@ -0,0 +1,27 @@
|
|||||||
|
# SWORD ART ONLINE Fractured Daydream JAP 1.2.2
|
||||||
|
# BID: 012A8C2C413E79B8
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8F57748, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8F92210, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x8791EC8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# SWORD ART ONLINE Fractured Daydream JAP 1.2.1
|
||||||
|
# BID: 26C1E658E9B5B612
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8F41748, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8F7C210, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x877BEC8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,24 @@
|
|||||||
|
# Chernobylite 1.2
|
||||||
|
# BID: 657F40EEBD955F31
|
||||||
|
|
||||||
|
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]
|
@ -0,0 +1,12 @@
|
|||||||
|
# DreadOut Remastered Collection 1.0.2
|
||||||
|
# BID: 725731C74E4CA6A9
|
||||||
|
|
||||||
|
unsafeCheck: false
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# REF: DynamicResolution::.cctor
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x3E01640, 0, 0xB8, 8]
|
||||||
|
value_type: double
|
||||||
|
value: [FPS_TARGET, FRAMETIME_TARGET]
|
@ -0,0 +1,27 @@
|
|||||||
|
# Session: Skate Sim 1.1.4
|
||||||
|
# BID: F327FFD8C2E85895
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7247868, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["FRAMETIME_TARGET", "FRAMETIME_TARGET"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7275438, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6A7A668, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# GUNDAM BREAKER 4 1.12.0
|
||||||
|
# BID: 0FF5CF27929E07F9
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA080D48, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA0AE7E8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x98B2D28, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# GUNDAM BREAKER 4 1.11.0
|
||||||
|
# BID: E82F8A34CCC706E7
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA03AD48, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA0687E8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x986C958, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# Expeditions: A Mudrunner Game 1.14.0.0
|
||||||
|
# BID: 08C88691FFA5407C
|
||||||
|
# REF: 01 04 0C 5E 00 10 2E 1E
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x36AEF00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1718A64
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xD000FCAC # adrp x12, #0x36AE000
|
||||||
|
- 0xBD4F0182 # ldr s2, [x12, #0xf00]
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x36AEF00
|
||||||
|
value_type: float
|
||||||
|
value: 33.3333333333
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x36AEF00]
|
||||||
|
value_type: float
|
||||||
|
value: FRAMETIME_TARGET
|
@ -0,0 +1,27 @@
|
|||||||
|
# Expeditions: A Mudrunner Game 1.13.0.0
|
||||||
|
# BID: ED20E42E41B58D88
|
||||||
|
# REF: 01 04 0C 5E 00 10 2E 1E
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x3628F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x16AFA80
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB000FBCC # adrp x12, #0x3628000
|
||||||
|
- 0xBD4F0182 # ldr s2, [x12, #0xf00]
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3628F00
|
||||||
|
value_type: float
|
||||||
|
value: 33.3333333333
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x3628F00]
|
||||||
|
value_type: float
|
||||||
|
value: FRAMETIME_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# ABYSS SEEKER――What Do You See Deep in Abyss 1.1.0.012
|
||||||
|
# BID: C17F9C48EEFAB9DF
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7B48F40, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
@ -0,0 +1,12 @@
|
|||||||
|
# ABYSS SEEKER――What Do You See Deep in Abyss 1.2.0.020
|
||||||
|
# BID: FE67FB035271B5E4
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7B62100, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
@ -0,0 +1,60 @@
|
|||||||
|
# Amnesia Collection 1.3.0
|
||||||
|
# BID: F6FB99E54347E740
|
||||||
|
# Double buffer is hardcoded line by line, it's hard to make it triple
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect FPS Lock and Dynamic Resolution target values to MAIN + 0x21036F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x13281C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90107828 # ADRP X8, 0x21036000
|
||||||
|
- 0xF9478108 # LDR X8, [X8, 0xF00]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3E324C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF0106288 # ADRP X8, 0x21036000
|
||||||
|
- 0xF9478108 # LDR X8, [X8, 0xF00]
|
||||||
|
# NOP updating Dynamic Resolution target value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2D94E8
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0106AE9 # ADRP X9, 0x21036000
|
||||||
|
- 0xB94F0929 # LDR W9, [X9, 0xF08]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x597C5C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF01054E9 # ADRP X9, 0x21036000
|
||||||
|
- 0xB94F0929 # LDR W9, [X9, 0xF08]
|
||||||
|
# Default values
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21036F00
|
||||||
|
value_type: double
|
||||||
|
value: 0.03333333333333333
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21036F08
|
||||||
|
value_type: float
|
||||||
|
value: 33.333333333333
|
||||||
|
ALL_FPS:
|
||||||
|
# FPS Lock
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x21036F00]
|
||||||
|
value_type: double
|
||||||
|
value: "1 / FPS_TARGET"
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x21036F08]
|
||||||
|
value_type: float
|
||||||
|
value: FRAMETIME_TARGET
|
@ -0,0 +1,21 @@
|
|||||||
|
# Big Helmet Heroes 1.0.3
|
||||||
|
# BID: 2CF926BBD5D1AB4D
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7012260, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x5BB0718, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,374 @@
|
|||||||
|
# Xenoblade Chronicles X: Definitive Edition 1.0.1
|
||||||
|
# BID: 3F2425864CF22684
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Dynamic speed mod for stuff like UI, lipsync, grass and rain
|
||||||
|
## Redirect nvnQueuePresentTexture call to code cave at MAIN+0x1744D90
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x96ECD8
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x1437582E
|
||||||
|
## Code Cave (save floats for speed factor to MAIN+0x47CD268, frametime as FPS in MAIN+0x47CD26C, frametime in s in MAIN+0x47CD270)
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744D90
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xD63F0100
|
||||||
|
- 0x97FFF52B
|
||||||
|
- 0xB0018448
|
||||||
|
- 0xF9413107
|
||||||
|
- 0xF9013100
|
||||||
|
- 0xB5000047
|
||||||
|
- 0x17C8A7CD
|
||||||
|
- 0xCB070000
|
||||||
|
- 0x97FFF528
|
||||||
|
- 0xB0018448
|
||||||
|
- 0xB9430101
|
||||||
|
- 0xEB00003F
|
||||||
|
- 0x5400004B
|
||||||
|
- 0xAA0103E0
|
||||||
|
- 0xD2881541
|
||||||
|
- 0xF2A07F21
|
||||||
|
- 0xEB00003F
|
||||||
|
- 0x5400004C
|
||||||
|
- 0xAA0103E0
|
||||||
|
- 0x9E630000
|
||||||
|
- 0xD00005A0
|
||||||
|
- 0xFD469C01
|
||||||
|
- 0x1E611800
|
||||||
|
- 0xD2807D00
|
||||||
|
- 0x9E630001
|
||||||
|
- 0x1E601821
|
||||||
|
- 0xB0018440
|
||||||
|
- 0x1E624021
|
||||||
|
- 0xBD026C01
|
||||||
|
- 0x1E27D002
|
||||||
|
- 0x1E211842
|
||||||
|
- 0xBD026802
|
||||||
|
- 0xD2807D01
|
||||||
|
- 0x9E630021
|
||||||
|
- 0x1E611801
|
||||||
|
- 0x1E624021
|
||||||
|
- 0xBD027001
|
||||||
|
- 0x17C8A7AE
|
||||||
|
## Default values for code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x47CD268
|
||||||
|
value_type: float
|
||||||
|
value: [1.0, 30.0, 0.033333333333]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x47CD300
|
||||||
|
value_type: uint32
|
||||||
|
value: 33333333
|
||||||
|
## Function 1 to speed factor // Usage unknown
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2864C8
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF0022A35
|
||||||
|
- 0xF9470D00
|
||||||
|
- 0xBD426AAA
|
||||||
|
## Function 2 to speed factor // Weather effects (rain, fog)
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2892AC
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90022A20
|
||||||
|
- 0xF000D828
|
||||||
|
- 0xBD426801
|
||||||
|
## Function 3 to speed factor // Usage unknown
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0xA26D00
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF001ED20
|
||||||
|
- 0xBD426808
|
||||||
|
## Function 4 to FPS // UI Speed
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0xA2EE60
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF001ECE0
|
||||||
|
- 0x1E270100
|
||||||
|
- 0xBD426C00
|
||||||
|
## Function 5 to FPS // Usage unknown
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x266E3C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xF0022B20
|
||||||
|
- 0x1E270100
|
||||||
|
- 0x7940D268
|
||||||
|
- 0xBD426C05
|
||||||
|
## Function 6 to FPS
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x26D6D0
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90022B00
|
||||||
|
- 0xBD426C00
|
||||||
|
- 0x1E390000
|
||||||
|
- 0x528000C9
|
||||||
|
- 0x1AC90808
|
||||||
|
## Function 7 to Frametime in s // Gameplay + cutscene speed
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E24E4
|
||||||
|
value_type: uint32
|
||||||
|
value: 0xF0022F49
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E24F8
|
||||||
|
value_type: uint32
|
||||||
|
value: 0xBD427120
|
||||||
|
# Adjust various elements related to fighting
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E8B08
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x145570EB
|
||||||
|
## Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744EB4
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0018449
|
||||||
|
- 0xBD426920
|
||||||
|
- 0x17AA8F14
|
||||||
|
## Fix gun speed
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x30F62C
|
||||||
|
value_type: uint32
|
||||||
|
value: 0xD503201F
|
||||||
|
# Redirect DR Target to MAIN+0x47CDF00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x13B8DF4
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB001A0A8
|
||||||
|
- 0xBD4F0100
|
||||||
|
## Default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x47CDF00
|
||||||
|
value_type: float
|
||||||
|
value: 0.01666666666
|
||||||
|
# Adjust camera speed rotation dynamically
|
||||||
|
## Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E48
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0018448
|
||||||
|
- 0xBD426908
|
||||||
|
- 0x1E200900
|
||||||
|
- 0x1E202008
|
||||||
|
- 0x540000AA
|
||||||
|
- 0x1E214000
|
||||||
|
- 0x1E21C000
|
||||||
|
- 0x1E214000
|
||||||
|
- 0xD65F03C0
|
||||||
|
- 0x1E21C000
|
||||||
|
- 0xD65F03C0
|
||||||
|
## Connect function 1
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E1360
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x94558EBA
|
||||||
|
## Connect function 2
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E1370
|
||||||
|
value_type: uint32
|
||||||
|
value: 0xAD7D03A1
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1E137C
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x94558EB3
|
||||||
|
# Force 1s sleep to synchronize audio if cutscene detected
|
||||||
|
## Use function responsible for writing type of cutscene to write its ID if it's 8 or 16 (or 0 for any other) to MAIN+0x47CDFFF
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2CFEB4
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x1451D3F7
|
||||||
|
### Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E90
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB9002279
|
||||||
|
- 0x121D0720
|
||||||
|
- 0xB0018448
|
||||||
|
- 0x340000A0
|
||||||
|
- 0x393FFD00
|
||||||
|
- 0xD2994000
|
||||||
|
- 0xF2A77340
|
||||||
|
- 0x97FFF3D9
|
||||||
|
- 0x17AE2C02
|
||||||
|
## "startEvent" to write uint8 1 to MAIN+0x47CDFFF
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3ECFD8
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x144D5FBF
|
||||||
|
### Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744ED4
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x910003FD
|
||||||
|
- 0xB0018448
|
||||||
|
- 0x52800020
|
||||||
|
- 0x393FFD00
|
||||||
|
- 0x17B2A03E
|
||||||
|
## "endEvent" to write uint8 0 to MAIN+0x47CDFFF
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3ED178
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x144D5F42
|
||||||
|
### Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E80
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x910003FD
|
||||||
|
- 0xB0018448
|
||||||
|
- 0x393FFD1F
|
||||||
|
- 0x17B2A0BC
|
||||||
|
# Adjust Field Action gauge bar speed
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0xE5B00
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90023740
|
||||||
|
- 0xD000E3E9
|
||||||
|
- 0xBD426808
|
||||||
|
## Fix for FN Site
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0xE5558
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x14597E34
|
||||||
|
### Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E28
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xBD40D260
|
||||||
|
- 0xB0018440
|
||||||
|
- 0xBD426801
|
||||||
|
- 0x1E210800
|
||||||
|
- 0x17A681C9
|
||||||
|
# Fix long jump when not running
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x23EAD0
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x145418DB
|
||||||
|
## Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E3C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x1E27D00B
|
||||||
|
- 0x1E2B296B
|
||||||
|
- 0x17ABE724
|
||||||
|
# Adjust QTE Speed
|
||||||
|
## Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744E74
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0018454
|
||||||
|
- 0xBD426A81
|
||||||
|
- 0x17BA027E
|
||||||
|
## Connect function
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x5C5870
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x1445FD81
|
||||||
|
# Adjust Overdrive counter, Follow Ball speed
|
||||||
|
## Code cave
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1744EC0
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0018440
|
||||||
|
- 0xBD427000
|
||||||
|
- 0xD65F03C0
|
||||||
|
## Connect function
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x67354
|
||||||
|
value_type: uint32
|
||||||
|
value: 0x945B76DB
|
||||||
|
ALL_FPS:
|
||||||
|
# FPS Target
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x47CD300]
|
||||||
|
value_type: uint32
|
||||||
|
value: "FRAMETIME_TARGET * 1000000"
|
||||||
|
# FPS Lock
|
||||||
|
# ref: 00 01 00 b9 2a 01 00 b9 c0 03 5f d6
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x1DA33A0]
|
||||||
|
value_type: int32
|
||||||
|
value: [1, 1]
|
||||||
|
# DR Target
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x47CDF00]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
||||||
|
# Lock game to 30 FPS when complex/prerendered cutscene is played
|
||||||
|
## Adjusts DR target
|
||||||
|
-
|
||||||
|
type: compare
|
||||||
|
compare_address: [MAIN, 0x47CDFFF]
|
||||||
|
compare_value_type: uint8
|
||||||
|
compare_type: "!="
|
||||||
|
compare_value: 0
|
||||||
|
address: [MAIN, 0x47CDF00]
|
||||||
|
value_type: float
|
||||||
|
value: 0.03333333333
|
||||||
|
## Force OS to run at 60 Hz with interval 2
|
||||||
|
-
|
||||||
|
type: compare
|
||||||
|
compare_address: [MAIN, 0x47CDFFF]
|
||||||
|
compare_value_type: uint8
|
||||||
|
compare_type: "!="
|
||||||
|
compare_value: 0
|
||||||
|
address: [MAIN]
|
||||||
|
value_type: refresh_rate
|
||||||
|
value: 30
|
@ -1,27 +0,0 @@
|
|||||||
# Immortals Fenyx Rising 1.3.4
|
|
||||||
# BID: 70F3F6751D73C644
|
|
||||||
|
|
||||||
unsafeCheck: true
|
|
||||||
|
|
||||||
MASTER_WRITE:
|
|
||||||
# Game switches resolution to 13/15 of normal resolution when moving camera with right stick and game cannot handle target FPS
|
|
||||||
# Redirect reading DR time target to MAIN + 0xA7E4F00
|
|
||||||
-
|
|
||||||
type: bytes
|
|
||||||
main_offset: 0x15A9F10
|
|
||||||
value_type: uint32
|
|
||||||
value:
|
|
||||||
- 0xF00491C8
|
|
||||||
- 0xBD4F0101
|
|
||||||
# Default value
|
|
||||||
-
|
|
||||||
type: bytes
|
|
||||||
main_offset: 0xA7E4F00
|
|
||||||
value_type: float
|
|
||||||
value: 33.3333333333
|
|
||||||
ALL_FPS:
|
|
||||||
-
|
|
||||||
type: evaluate_write
|
|
||||||
address: [MAIN, 0xA7E4F00]
|
|
||||||
value_type: float
|
|
||||||
value: FRAMETIME_TARGET
|
|
@ -0,0 +1,38 @@
|
|||||||
|
# REYNATIS (US/EU) 1.0.8
|
||||||
|
# BID: 11D6D6158B566A74
|
||||||
|
|
||||||
|
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"]
|
@ -0,0 +1,38 @@
|
|||||||
|
# REYNATIS (US/EU) 1.0.9
|
||||||
|
# BID: C59C89CCDF382602
|
||||||
|
|
||||||
|
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"]
|
@ -1,7 +1,7 @@
|
|||||||
# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.50
|
# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.50
|
||||||
# BID: 20503FA77FA416B7
|
# BID: 20503FA77FA416B7
|
||||||
|
|
||||||
unsafeCheck: true
|
unsafeCheck: false
|
||||||
|
|
||||||
ALL_FPS:
|
ALL_FPS:
|
||||||
# Disable bUseFixedFrameRate in cutscenes to unlock framerate
|
# Disable bUseFixedFrameRate in cutscenes to unlock framerate
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.51
|
# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.51
|
||||||
# BID: 389E38618E93A5E0
|
# BID: 389E38618E93A5E0
|
||||||
|
|
||||||
unsafeCheck: true
|
unsafeCheck: false
|
||||||
|
|
||||||
ALL_FPS:
|
ALL_FPS:
|
||||||
# Disable bUseFixedFrameRate in cutscenes to unlock framerate
|
# Disable bUseFixedFrameRate in cutscenes to unlock framerate
|
||||||
@ -32,4 +32,4 @@ ALL_FPS:
|
|||||||
type: write
|
type: write
|
||||||
address: [MAIN, 0x88C2C08, 0]
|
address: [MAIN, 0x88C2C08, 0]
|
||||||
value_type: int32
|
value_type: int32
|
||||||
value: [0, 0]
|
value: [0, 0]
|
||||||
|
@ -0,0 +1,35 @@
|
|||||||
|
# DRAGON BALL Z: KARAKOT + A NEW POWER AWAKENS SET 1.52
|
||||||
|
# BID: 72F6F8B54276185C
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Disable bUseFixedFrameRate in cutscenes to unlock framerate
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x945A538, 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, 0x9425478, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x945ADE8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x88C6FD8, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
@ -0,0 +1,13 @@
|
|||||||
|
# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.0.1
|
||||||
|
# BID: A947DDE7826A3562
|
||||||
|
|
||||||
|
unsafeCheck: false
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Disable FPS Lock
|
||||||
|
# REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x2E8AB00, 0xE0, 0x284]
|
||||||
|
value_type: uint8
|
||||||
|
value: 0
|
@ -0,0 +1,12 @@
|
|||||||
|
# EA SPORTS FC 25 1.78.24C5
|
||||||
|
# BID: 641E15F899C4A057
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Internal FPS Lock
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xCE66A68, 8]
|
||||||
|
value_type: double
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# EA SPORTS FC 25 1.78.9aa6
|
||||||
|
# BID: 7E587D3ADCFD66BC
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Internal FPS Lock
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xCE6FA68, 8]
|
||||||
|
value_type: double
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# EA SPORTS FC 25 1.77.4815
|
||||||
|
# BID: B8264CDBC1CBFFCF
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Internal FPS Lock
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xCE3CA68, 8]
|
||||||
|
value_type: double
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# EA SPORTS FC 25 1.76.fc6a
|
||||||
|
# BID: C953D6F477604662
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# Internal FPS Lock
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xCE3BA68, 8]
|
||||||
|
value_type: double
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,27 @@
|
|||||||
|
# Funko Fusion 2.6.2
|
||||||
|
# BID: BDB53001D5CAD0AE
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x752BA68, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8507078, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8534F60, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,75 @@
|
|||||||
|
# WARRIORS: Abyss 1.1.0
|
||||||
|
# BID: 50C9028B61A0BB7F
|
||||||
|
|
||||||
|
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: 0x6400D0
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90004441 # ADRP X1, 0xEC8000
|
||||||
|
- 0xBD44C021 # LDR S1, [X1, 0x4C0]
|
||||||
|
# Redirect DR Targets to MAIN+0x1359F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x640174
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00068C9 # ADRP X9, 0x1359000
|
||||||
|
- 0xBD4F0121 # LDR S1, [X9, 0xF00]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x640184
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00068C9 # ADRP X9, 0x1359000
|
||||||
|
- 0xBD4F0521 # LDR S1, [X9, 0xF04]
|
||||||
|
# Default values
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x1359F00
|
||||||
|
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, 0xEC84CC]
|
||||||
|
value_type: uint32
|
||||||
|
value: "120 / FPS_LOCK_TARGET"
|
||||||
|
# Prevent from setting it as 0, otherwise game crashes
|
||||||
|
-
|
||||||
|
type: evaluate_compare
|
||||||
|
compare_address: [MAIN, 0xEC84CC]
|
||||||
|
compare_type: "=="
|
||||||
|
compare_value_type: uint32
|
||||||
|
compare_value: 0
|
||||||
|
address: [MAIN, 0xEC84CC]
|
||||||
|
value_type: uint32
|
||||||
|
value: 1
|
||||||
|
# Others
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xEC84C0]
|
||||||
|
value_type: float
|
||||||
|
value: "FPS_TARGET"
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xEC84C4]
|
||||||
|
value_type: uint32
|
||||||
|
value: "FPS_TARGET"
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xEC84C8]
|
||||||
|
value_type: float
|
||||||
|
value: "FPS_TARGET"
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x1359F00]
|
||||||
|
value_type: float
|
||||||
|
value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"]
|
@ -0,0 +1,27 @@
|
|||||||
|
# Ghostbusters: Spirits Unleashed Ecto Edition 1.11.0
|
||||||
|
# BID: 49F6F257348A42A1
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xBBFBF70, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xBC21B48, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0xB42B9B8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,24 @@
|
|||||||
|
# Sword of the Necromancer: Resurrection 1.0.4
|
||||||
|
# BID: 7C37B073B19F3CCF
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7577E00, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x75AC298, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6DD3CB8, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
@ -0,0 +1,24 @@
|
|||||||
|
# Sword of the Necromancer: Resurrection 1.0.3
|
||||||
|
# BID: B70551B5A2D0F15F
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7573E00, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["0.9 * FRAMETIME_TARGET", "0.9 * FRAMETIME_TARGET"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x75A8298, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6DCFCB8, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
@ -0,0 +1,27 @@
|
|||||||
|
# The Plucky Squire 1.0.7
|
||||||
|
# BID: AFDEB128252898AC
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6C04668, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6C32348, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6434CE8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -1,4 +1,4 @@
|
|||||||
# DRAGON QUEST XI S: Echoes of an Elusive Age - Definitive Edition 1.0.3
|
# DRAGON QUEST XI S: Echoes of an Elusive Age - Definitive Edition 1.0.3/1.0.4
|
||||||
# BID: 1719AABFA5EAE42B
|
# BID: 1719AABFA5EAE42B
|
||||||
|
|
||||||
unsafeCheck: true
|
unsafeCheck: true
|
||||||
@ -34,6 +34,12 @@ ALL_FPS:
|
|||||||
address: [MAIN, 0x8501C48, 0]
|
address: [MAIN, 0x8501C48, 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, 0x7879500, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
-
|
-
|
||||||
type: block
|
type: block
|
||||||
what: timing
|
what: timing
|
||||||
|
@ -0,0 +1,21 @@
|
|||||||
|
# Mario & Luigi: Brothership 1.0.1
|
||||||
|
# BID: BF0607AC795B593A
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x651F708, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6D1A498, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# F1 Manager 2024 1.11
|
||||||
|
# BID: 85F60F87D19B5270
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x7FE9A28, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8023AA0, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x7826AA8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,48 @@
|
|||||||
|
# Amber Isle 1.0.2
|
||||||
|
# BID: D36459588F85315D
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect all hardcoded doubles in DynamicResolutionHandler::Update to MAIN+0x9093F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21FE24C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00374A8 # adrp x8, #0x9093000
|
||||||
|
- 0xFD478100 # ldr d0, [x8, #0xf00]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21FE1F0
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00374A8 # adrp x8, #0x9093000
|
||||||
|
- 0xFD478101 # ldr d1, [x8, #0xf00]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21FE360
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00374A8 # adrp x8, #0x9093000
|
||||||
|
- 0xFD478100 # ldr d0, [x8, #0xf00]
|
||||||
|
- 0x1E614000 # fneg d0, d0
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x21FE5E4
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB00374A8 # adrp x8, #0x9093000
|
||||||
|
- 0xFD478100 # ldr d0, [x8, #0xf00]
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x9093F00
|
||||||
|
value_type: double
|
||||||
|
value: 25.333333333333336
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x9093F00]
|
||||||
|
value_type: double
|
||||||
|
value: "FRAMETIME_TARGET * 0.76"
|
@ -0,0 +1,27 @@
|
|||||||
|
# LEGO Horizon Adventures 1.4.0
|
||||||
|
# BID: C6F56735E3837278
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x914A990, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA119148, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xA153AF0, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,47 @@
|
|||||||
|
# DRAGON BALL XENOVERSE 2 FOR NINTENDO SWITCH 1.23.03
|
||||||
|
# BID: 8263E738648A23E3
|
||||||
|
# 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, 0x4AE9D78, 0x698]
|
||||||
|
value_type: float
|
||||||
|
value: 0.0
|
||||||
|
# Unknown
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x4AE9D78, 0x6A4]
|
||||||
|
value_type: float
|
||||||
|
value: 0.0
|
||||||
|
# Game Battle Speed Factor
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4AE9D78, 0x6B0]
|
||||||
|
value_type: uint32
|
||||||
|
value: VSYNC_TARGET
|
||||||
|
# Cutscenes Speed Factor
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4AE9D78, 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, 0x24151D0]
|
||||||
|
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, 0x23F53C0, 0x1844]
|
||||||
|
value_type: float
|
||||||
|
value: "FPS_TARGET"
|
@ -0,0 +1,24 @@
|
|||||||
|
# Achilles Legends Untold 1.0.1
|
||||||
|
# BID: BDDD7E8FA07C8C75
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6967B08, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6995508, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6199738, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
@ -10,6 +10,12 @@ ALL_FPS:
|
|||||||
address: [MAIN, 0xB4E7838, 0]
|
address: [MAIN, 0xB4E7838, 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, 0xAD15960, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
-
|
-
|
||||||
type: block
|
type: block
|
||||||
what: timing
|
what: timing
|
||||||
|
@ -0,0 +1,28 @@
|
|||||||
|
# No Man's Sky 5.5.2
|
||||||
|
# BID: 63C5A645F3E5985A
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x4B90FF0
|
||||||
|
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2037260
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0015AC9 # adrp x9, #0x4b90000
|
||||||
|
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
|
||||||
|
- 0xD503201F # NOP
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x4B90FF0
|
||||||
|
value_type: float
|
||||||
|
value: 30
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4B90FF0]
|
||||||
|
value_type: float
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,28 @@
|
|||||||
|
# No Man's Sky 5.5.0
|
||||||
|
# BID: 909C5FD598A092B1
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x4B8AFF0
|
||||||
|
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2032F20
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90015AC9 # adrp x9, #0x4b8a000
|
||||||
|
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
|
||||||
|
- 0xD503201F # NOP
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x4B8AFF0
|
||||||
|
value_type: float
|
||||||
|
value: 30
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4B8AFF0]
|
||||||
|
value_type: float
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,28 @@
|
|||||||
|
# No Man's Sky 5.5.5
|
||||||
|
# BID: BC6CA2DEA3306522
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x4B92FF0
|
||||||
|
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x20391B0
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB0015AC9 # adrp x9, #0x4b92000
|
||||||
|
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
|
||||||
|
- 0xD503201F # NOP
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x4B92FF0
|
||||||
|
value_type: float
|
||||||
|
value: 30
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4B92FF0]
|
||||||
|
value_type: float
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,28 @@
|
|||||||
|
# No Man's Sky 5.5.8
|
||||||
|
# BID: FB1995474546F7C0
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x4B90FF0
|
||||||
|
# REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x201C7F8
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x90015BA9 # adrp x9, #0x4b90000
|
||||||
|
- 0xBD4FF120 # ldr s0, [x9, #0xff0]
|
||||||
|
- 0xD503201F # NOP
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x4B90FF0
|
||||||
|
value_type: float
|
||||||
|
value: 30
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x4B90FF0]
|
||||||
|
value_type: float
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# Cuisineer 2.0.27
|
||||||
|
# BID: ACD959FBAECADE00
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x525D5A0, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
@ -0,0 +1,12 @@
|
|||||||
|
# DAVE THE DIVER 1.0.3.978
|
||||||
|
# BID: 500A59C7C5A7C1E8
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x97367C0, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
@ -0,0 +1,27 @@
|
|||||||
|
# Borderlands 3 1.0.3
|
||||||
|
# BID: AFDEB128252898AC
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xDD56640, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["0.969 * FRAMETIME_TARGET", "0.969 * FRAMETIME_TARGET"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xDD857C0, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0xD0C52B8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# Nikoderiko: The Magical World 1.0.2
|
||||||
|
# BID: 6CFA2609A2D00FA5
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x64D9928, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x65075E8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x5D08BF8, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,21 @@
|
|||||||
|
# Life is Strange: Double Exposure 1.0.3
|
||||||
|
# BID: BBEA8745A7893750
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x6948E90, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x79562D8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,21 @@
|
|||||||
|
# Garden Witch Life 1.0.5
|
||||||
|
# BID: 13824B290C931FE5
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x863C140, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x7644978, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# Boti: Byteland Overclocked 1.0.1
|
||||||
|
# BID: E8EA74BE6221F2E4
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x72C9718, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8286DC8, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x82BF6D0, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,27 @@
|
|||||||
|
# Boti: Byteland Overclocked 1.0.2
|
||||||
|
# BID: 567A8410AE613885
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x72D4718, 0]
|
||||||
|
value_type: int32
|
||||||
|
value: [0, 0]
|
||||||
|
# r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x8291E38, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x82CB9E0, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,43 @@
|
|||||||
|
# FAIRY TAIL 2 1.4.1
|
||||||
|
# BID: A588F7BB864AAD5F
|
||||||
|
|
||||||
|
unsafeCheck: false
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect Dynamic Resolution target to MAIN+0x2C53F00
|
||||||
|
# REF: 6AC88252
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x138238C
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB000C68A # ADRP X10, 0x2c53000
|
||||||
|
- 0xB94F014A # LDR W10, [X10, 0xF00]
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x13823A8
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xB000C68A # ADRP X10, 0x2c53000
|
||||||
|
- 0xB94F054A # LDR W10, [X10, 0xF04]
|
||||||
|
# Default values
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x2C53F00
|
||||||
|
value_type: float
|
||||||
|
value: [0.043478, 0.037037]
|
||||||
|
ALL_FPS:
|
||||||
|
# FPS Lock
|
||||||
|
# REF: 1F 00 00 71 C8 03 80 52, first ADRP+ADD above it
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x2C0B558, 0x170, 0x18C]
|
||||||
|
value_type: int32
|
||||||
|
value: FPS_LOCK_TARGET
|
||||||
|
# Dynamic Resolution Target
|
||||||
|
# Game proritizes resolution over framerate, I changed it to prefer framerate
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x2C53F00]
|
||||||
|
value_type: float
|
||||||
|
value: ["1 / FPS_TARGET", "1 / (FPS_TARGET + 5)"]
|
@ -0,0 +1,27 @@
|
|||||||
|
# Monster Jam Showdown 1.0.7
|
||||||
|
# BID: 0CE2AE41BCCADC72
|
||||||
|
|
||||||
|
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
|
@ -0,0 +1,27 @@
|
|||||||
|
# Monster Jam Showdown 1.0.8
|
||||||
|
# BID: 1CE1386EAF0C5EF5
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# r.DynamicRes.FrameTimeBudget
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xAC3B688, 0]
|
||||||
|
value_type: float
|
||||||
|
value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"]
|
||||||
|
# t.MaxFPS
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0xAC76030, 0]
|
||||||
|
value_type: float
|
||||||
|
value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
|
||||||
|
# r.VSync
|
||||||
|
-
|
||||||
|
type: write
|
||||||
|
address: [MAIN, 0x9C7A970, 0]
|
||||||
|
value_type: uint32
|
||||||
|
value: [0, 0]
|
||||||
|
-
|
||||||
|
type: block
|
||||||
|
what: timing
|
@ -0,0 +1,12 @@
|
|||||||
|
# Call of Sentinels 1.0.1.7
|
||||||
|
# BID: 4A64A3713EEA60CA
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6CA3940, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "1 / FPS_TARGET"
|
@ -1,4 +1,4 @@
|
|||||||
# Othercide 1.3.0.5
|
# Othercide 1.3.0.5/1.3.1.0
|
||||||
# BID: A8BA2A8F93AAE647
|
# BID: A8BA2A8F93AAE647
|
||||||
|
|
||||||
unsafeCheck: true
|
unsafeCheck: true
|
||||||
|
@ -0,0 +1,15 @@
|
|||||||
|
# OCTOPATH TRAVELER 1.0.4 JPN
|
||||||
|
# BID: AA4277E6A92FEBE6
|
||||||
|
|
||||||
|
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
|
@ -0,0 +1,14 @@
|
|||||||
|
# Card-en-Ciel 1.3.1
|
||||||
|
# BID: 6A2E388EB364D4ED
|
||||||
|
# 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, 0x2165248, 0x5C]
|
||||||
|
value_type: float
|
||||||
|
value: 1 / FPS_LOCK_TARGET
|
@ -0,0 +1,14 @@
|
|||||||
|
# Card-en-Ciel 1.4.1
|
||||||
|
# BID: CB3C7EF8E279A22D
|
||||||
|
# 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, 0x219C248, 0x5C]
|
||||||
|
value_type: float
|
||||||
|
value: 1 / FPS_LOCK_TARGET
|
@ -0,0 +1,12 @@
|
|||||||
|
# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.5.130
|
||||||
|
# BID: 21B3E4EA75F16551
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime (default is 0.03268)
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x97D4478, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "(1 / FPS_TARGET) / 1.02"
|
@ -0,0 +1,12 @@
|
|||||||
|
# HEAVEN SEEKER ――The Savior of This Cruel World 1.0.5.134
|
||||||
|
# BID: AA3EDDE660D630AD
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# UnityEngine.Time::fixedDeltaTime (default is 0.03268)
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x9826738, 0x48]
|
||||||
|
value_type: float
|
||||||
|
value: "(1 / FPS_TARGET) / 1.02"
|
@ -0,0 +1,12 @@
|
|||||||
|
# The Legend of Heroes: Trails through Daybreak II 1.0.1
|
||||||
|
# BID: 7CE83658C7B53BB6
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
ALL_FPS:
|
||||||
|
# REF: 88 01 80 52 C1 03 80 52 28 4D 28 9B 29 00 80 52, first ADRP + ADD below it
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x6E2998, 0x34]
|
||||||
|
value_type: uint32
|
||||||
|
value: FPS_TARGET
|
@ -0,0 +1,27 @@
|
|||||||
|
# SnowRunner 1.0.36
|
||||||
|
# BID: 038858A1EC679156
|
||||||
|
# Just search for 0x42055555
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x3040F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x18F8174
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0x9000BA4A # adrp x10, #0x3040000
|
||||||
|
- 0xBD4F0142 # ldr s2, [x10, #0xf00]
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3040F00
|
||||||
|
value_type: float
|
||||||
|
value: 33.3333333333
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x3040F00]
|
||||||
|
value_type: float
|
||||||
|
value: FRAMETIME_TARGET
|
@ -0,0 +1,27 @@
|
|||||||
|
# SnowRunner 1.0.37
|
||||||
|
# BID: CD9E844E29E8CA80
|
||||||
|
# Just search for 0x42055555
|
||||||
|
|
||||||
|
unsafeCheck: true
|
||||||
|
|
||||||
|
MASTER_WRITE:
|
||||||
|
# Redirect DR frametime target to MAIN+0x3090F00
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x192A254
|
||||||
|
value_type: uint32
|
||||||
|
value:
|
||||||
|
- 0xD000BB2A # adrp x10, #0x3090000
|
||||||
|
- 0xBD4F0142 # ldr s2, [x10, #0xf00]
|
||||||
|
# default value
|
||||||
|
-
|
||||||
|
type: bytes
|
||||||
|
main_offset: 0x3090F00
|
||||||
|
value_type: float
|
||||||
|
value: 33.3333333333
|
||||||
|
ALL_FPS:
|
||||||
|
-
|
||||||
|
type: evaluate_write
|
||||||
|
address: [MAIN, 0x3090F00]
|
||||||
|
value_type: float
|
||||||
|
value: FRAMETIME_TARGET
|
Binary file not shown.
Binary file not shown.
@ -41,7 +41,7 @@ auto_add_controller=1
|
|||||||
|
|
||||||
; Default configuration is used as base of configuration for all controller (Do not change it)
|
; Default configuration is used as base of configuration for all controller (Do not change it)
|
||||||
; If you want to change the default configuration, it's better to change the configuration of the controller you want to use
|
; If you want to change the default configuration, it's better to change the configuration of the controller you want to use
|
||||||
;controller_type might be one of these ones: prowithbattery, tarragon, snes, pokeballplus, gamecube, pro, 3rdpartypro, n64, sega, nes, famicom
|
;controller_type might be one of these ones: prowithbattery, tarragon, snes, pokeballplus, gamecube (Not supported since 19.0.1), pro, 3rdpartypro, n64, sega, nes, famicom
|
||||||
|
|
||||||
[default]
|
[default]
|
||||||
driver=
|
driver=
|
||||||
@ -561,12 +561,39 @@ r=6
|
|||||||
minus=7
|
minus=7
|
||||||
plus=8
|
plus=8
|
||||||
|
|
||||||
|
[0d22-0c31] ; MSI GC30 V2 USB cable
|
||||||
|
b=2
|
||||||
|
a=3
|
||||||
|
x=4
|
||||||
|
y=1
|
||||||
|
l=5
|
||||||
|
r=6
|
||||||
|
zl=7
|
||||||
|
zr=8
|
||||||
|
minus=9
|
||||||
|
plus=10
|
||||||
|
lstick_click=11
|
||||||
|
rstick_click=12
|
||||||
|
|
||||||
|
[2dc8-3105] ;8BitDo Wireless Bluetooth USB Adapter 2 (Dinput mode)
|
||||||
|
B=1
|
||||||
|
A=2
|
||||||
|
Y=4
|
||||||
|
X=5
|
||||||
|
L=7
|
||||||
|
R=8
|
||||||
|
ZL=9
|
||||||
|
ZR=10
|
||||||
|
minus=11
|
||||||
|
plus=12
|
||||||
|
home=13
|
||||||
|
|
||||||
; ***************************************
|
; ***************************************
|
||||||
; N64 / GC adapter
|
; N64 / GC adapter
|
||||||
; ***************************************
|
; ***************************************
|
||||||
|
|
||||||
[0601-0101] ;GC controller adapter HS-WU025 (pc mode)
|
[0601-0101] ;GC controller adapter HS-WU025 (pc mode)
|
||||||
controller_type=gamecube
|
;controller_type=gamecube ;Not supported since 19.0.1
|
||||||
b=3
|
b=3
|
||||||
a=2
|
a=2
|
||||||
x=1
|
x=1
|
||||||
@ -579,7 +606,7 @@ dpad_up=13
|
|||||||
dpad_right=14
|
dpad_right=14
|
||||||
|
|
||||||
[0079-1846] ;GC controller adapter BX-W201C (pc mode)
|
[0079-1846] ;GC controller adapter BX-W201C (pc mode)
|
||||||
controller_type=gamecube
|
;controller_type=gamecube ;Not supported since 19.0.1
|
||||||
b=3
|
b=3
|
||||||
a=2
|
a=2
|
||||||
x=1
|
x=1
|
||||||
@ -954,6 +981,9 @@ profile=xbox360w
|
|||||||
; XBOX360 controllers
|
; XBOX360 controllers
|
||||||
; ***************************************
|
; ***************************************
|
||||||
|
|
||||||
|
[0d22-0c33] ; MSI GC30 V2 2.4G
|
||||||
|
profile=xbox360
|
||||||
|
|
||||||
[0079-18d4] ;GPD Win 2 X-Box Controller
|
[0079-18d4] ;GPD Win 2 X-Box Controller
|
||||||
profile=xbox360
|
profile=xbox360
|
||||||
|
|
||||||
|
Binary file not shown.
@ -54,12 +54,14 @@ ValidateSSL=false
|
|||||||
DBIUpdateURL=https://github.com/Ultra-NX/Ultra-Resources/releases/download/Homebrews/DBI.RU.zip
|
DBIUpdateURL=https://github.com/Ultra-NX/Ultra-Resources/releases/download/Homebrews/DBI.RU.zip
|
||||||
; Dump generated forwarders to configured dump location
|
; Dump generated forwarders to configured dump location
|
||||||
DumpForwarders=false
|
DumpForwarders=false
|
||||||
|
; Do not show folder.jpg in file browser
|
||||||
|
HideFolderJpg=true
|
||||||
|
|
||||||
[Filtering]
|
[Filtering]
|
||||||
; Apply filebrowser filter to directories
|
; Apply filebrowser filter to directories
|
||||||
FilterFolders=true
|
FilterFolders=true
|
||||||
; Inherit filter in subfolders
|
; Inherit filter in subfolders
|
||||||
InheritFilter=true
|
InheritFilter=false
|
||||||
|
|
||||||
; Visibility of main menu items
|
; Visibility of main menu items
|
||||||
[MainMenu]
|
[MainMenu]
|
||||||
@ -136,7 +138,7 @@ SingleURB=false
|
|||||||
; MTP transmission buffer size in KB
|
; MTP transmission buffer size in KB
|
||||||
BufferSize=512
|
BufferSize=512
|
||||||
; MTP transmission timeout in ms
|
; MTP transmission timeout in ms
|
||||||
NewBufferTimeout=2500
|
NewBufferTimeout=2000
|
||||||
; Send Object_Removed event for files copied to Install storages
|
; Send Object_Removed event for files copied to Install storages
|
||||||
AutoremoveInstalled=true
|
AutoremoveInstalled=true
|
||||||
|
|
||||||
@ -156,13 +158,15 @@ MaxPassivePort=40100
|
|||||||
CDIR=false
|
CDIR=false
|
||||||
; Force UTF8 usage
|
; Force UTF8 usage
|
||||||
ForceUtf8=true
|
ForceUtf8=true
|
||||||
|
; Use WaitAll option in recv. Can improve speed, incompatible with some clients.
|
||||||
|
UseWaitAll=true
|
||||||
|
|
||||||
;HTTP options
|
;HTTP options
|
||||||
[HTTP]
|
[HTTP]
|
||||||
; Use parallel downloading
|
|
||||||
UseParallelDownloading=true
|
|
||||||
; Access port
|
; Access port
|
||||||
Port=1234
|
Port=1234
|
||||||
|
; Data read timeout (seconds)
|
||||||
|
Timeout=3
|
||||||
|
|
||||||
; Access point options
|
; Access point options
|
||||||
[Access point]
|
[Access point]
|
||||||
@ -198,7 +202,7 @@ Orientation=0
|
|||||||
; Network install sources
|
; Network install sources
|
||||||
[Network sources]
|
[Network sources]
|
||||||
; <display name>=<type>|<URL>
|
; <display name>=<type>|<URL>
|
||||||
notUltraNX=ApacheHTTP|https://tinfoil.ultranx.ru/dbi/
|
notUltraNX=ApacheHTTP|https://dbi.ultranx.ru/
|
||||||
;NSP Indexer=URLList|http://192.168.1.47/nspindexer/index.php?DBI
|
;NSP Indexer=URLList|http://192.168.1.47/nspindexer/index.php?DBI
|
||||||
;Home server=ApacheHTTP|http://192.168.1.47/Nintendo/Switch/
|
;Home server=ApacheHTTP|http://192.168.1.47/Nintendo/Switch/
|
||||||
;WebDAV test=WebDAV|http://user:password@192.168.1.47/webdav/
|
;WebDAV test=WebDAV|http://user:password@192.168.1.47/webdav/
|
||||||
|
4
switch/DBI/dbi.locations
Normal file
4
switch/DBI/dbi.locations
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
[Location_0]
|
||||||
|
Name=notUltraNX
|
||||||
|
Type=ApacheHTTP
|
||||||
|
URL=https://dbi.ultranx.ru/
|
Loading…
x
Reference in New Issue
Block a user