diff --git a/README.md b/README.md index 087577c..90be340 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ ### Ultra - это функциональная кастомная прошивка для Nintendo Switch, с упором в разгон и улучшенный пользовательский опыт. -### [Ultra 2.4|R2.1](https://github.com/Ultra-NX/UltraNX/releases) Поддерживает HOS 20.1.5 и все ревизии консолей +### [Ultra 2.5|R1](https://github.com/Ultra-NX/UltraNX/releases) Поддерживает HOS 20.2.0 и все ревизии консолей diff --git a/README_ENG.md b/README_ENG.md index 33cc00b..9e57f1c 100644 --- a/README_ENG.md +++ b/README_ENG.md @@ -6,7 +6,7 @@ # ### Ultra is a functional custom firmware for Nintendo Switch, with a focus on overclocking and an improved user experience. -### [Ultra 2.4|R2.1](https://github.com/Ultra-NX/UltraNX/releases) Supports HOS 20.1.5 and all console revisions +### [Ultra 2.5|R1](https://github.com/Ultra-NX/UltraNX/releases) Supports HOS 20.2.0 and all console revisions diff --git a/SaltySD/exceptions.txt b/SaltySD/exceptions.txt index a514855..8ea870c 100644 --- a/SaltySD/exceptions.txt +++ b/SaltySD/exceptions.txt @@ -24,7 +24,7 @@ X0100964012528000 ;Olympic Games Tokyo 2020 – The Official Video Game ;1.0.0 crash on boot -010034B00E14C000 +X010034B00E14C000 ;Mario Strikers: Battle League ;1.0.0 crash on boot @@ -54,3 +54,7 @@ X0100C1F0051B6000 ;Death Road to Canada ;1.0.8 crash X0100423009358000 + +;Splatoon 3 +;10.0.0 upwards crashes after online match +X0100C2500FC20000 diff --git a/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml b/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml new file mode 100644 index 0000000..20ced82 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010008301AA96000/5BCA5C20C8F8A9B4.yaml @@ -0,0 +1,36 @@ +# Tiebreak+: Official Game of the ATP and WTA 1.2.0 +# BID: 5BCA5C20C8F8A9B4 + +unsafeCheck: true + +MASTER_WRITE: + # Triple buffer + # REF: 00 40 00 00 00 04 00 00 00 88 00 00 02 00 00 00 + - + type: bytes + main_offset: 0x1A82EAC + value_type: uint32 + value: 3 + # Redirect Dynamic Resolution target reading to MAIN + 0x30C3F00 + # REF: 28 11 91 52 08 A1 A7 72 03 01 27 1E + - + type: bytes + main_offset: 0x147B474 + value_type: uint32 + value: + - 0x9000E248 # ADRP X8, 0x30C3000 + - 0xBD4F0103 # LDR S3, [X8, 0xF00] + - 0xD503201F # NOP + ## Default values + - + type: bytes + main_offset: 0x30C3F00 + value_type: float + value: 0.03333333333 +ALL_FPS: + # Adjust Dynamic Resolution target, we are using this trick because function is overengineered and it's not easy to just use standard 1 / FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x30C3F00] + value_type: float + value: "0.8 / FPS_TARGET" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml b/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml new file mode 100644 index 0000000..46a6652 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01000E200DC58000/9E6B0D0023F9DB3B.yaml @@ -0,0 +1,15 @@ +# OCTOPATH TRAVELER 歧路旅人 1.0.5 +# BID: 9E6B0D0023F9DB3B + +unsafeCheck: true + +ALL_FPS: + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x50B5698, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml b/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml index 2f3c1e0..8d1a882 100644 --- a/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml +++ b/SaltySD/plugins/FPSLocker/patches/010016A00AEC0000/5C9CCD358BE85FC9.yaml @@ -1,12 +1,83 @@ # WARRIORS OROCHI 4 1.0.13 # BID: 5C9CCD358BE85FC9 # Credits to Hazerou for figuring out the offset +# Main offset stores address to start of .bss of NRO +## REF: 02 00 00 00 3C 00 00 00 unsafeCheck: true ALL_FPS: + # Without DLC Ultimate Edition installed - - type: write + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x934A8] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x934A0] + value_type: float + value: FPS_TARGET + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x9349C] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x93494] + value_type: float + value: FPS_TARGET + # With DLC Ultimate Edition installed + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x93200] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x931F8] + value_type: float + value: FPS_TARGET + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] address: [MAIN, 0x3AF80, -0x931F4] - value_type: int32 - value: 1 + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0xE2CFDAC9EAC20398 + compare_address: [MAIN, 0x3AF80, -0x1A92FC0] + address: [MAIN, 0x3AF80, -0x931EC] + value_type: float + value: FPS_TARGET diff --git a/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml b/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml index 1d6e079..876c9b9 100644 --- a/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml +++ b/SaltySD/plugins/FPSLocker/patches/010017A0128C4000/3D4E3A9252AA6C63.yaml @@ -23,6 +23,3 @@ ALL_FPS: address: [MAIN, 0x2AEF6D0, 2554] value_type: uint8 value: FPS_TARGET - - - type: block - what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml b/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml new file mode 100644 index 0000000..3e50d0c --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01001CC01B2D4000/A45BCB8A63C50DC8.yaml @@ -0,0 +1,27 @@ +# Goat Simulator 3 1.0.7.8 +# BID: A45BCB8A63C50DC8 + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x99DC468, 0] + value_type: float + value: ["0.81 * FRAMETIME_TARGET", "0.81 * FRAMETIME_TARGET"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x9A02290, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x920CBF8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml b/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml index 1801881..da6e512 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100300012F2A000/320A17744AEFD67F.yaml @@ -9,4 +9,4 @@ ALL_FPS: type: write address: [MAIN, 0x481B2F8, 0xB8, 0] value_type: int32 - value: 1 + value: -1 diff --git a/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml new file mode 100644 index 0000000..e920bb3 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/5F96AEDEA20AE78F.yaml @@ -0,0 +1,27 @@ +# Rune Factory: Guardians of Azuma 1.0.4 +# BID: 5F96AEDEA20AE78F + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x8F48D40, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x8F82470, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x7F616E8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml new file mode 100644 index 0000000..97ddd04 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01003AF0200B0000/7F731AAE7DDCAF66.yaml @@ -0,0 +1,27 @@ +# Rune Factory: Guardians of Azuma 1.0.3 +# BID: 7F731AAE7DDCAF66 + +unsafeCheck: true + +ALL_FPS: + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x8F48D40, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x8F82470, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x7F616E8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml b/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml new file mode 100644 index 0000000..0d3195e --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010040601A9B8000/9ACE779510EC93C9.yaml @@ -0,0 +1,12 @@ +# Tamagotchi Plaza 1.0.2 +# BID: 9ACE779510EC93C9 + +unsafeCheck: true + +ALL_FPS: + # UnityEngine.Rendering.OnDemandRendering_TypeInfo + - + type: write + address: [MAIN, 0x683BB20, 0xB8, 0] + value_type: int32 + value: -1 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml b/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml index 969120c..6275466 100644 --- a/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml +++ b/SaltySD/plugins/FPSLocker/patches/010047E01EA24000/728D92CB9E54CE7A.yaml @@ -1,4 +1,4 @@ -# Star Overdrive 1.0.6 +# Star Overdrive 1.0.6/1.0.7/1.0.8 # BID: 728D92CB9E54CE7A unsafeCheck: true diff --git a/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml b/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml new file mode 100644 index 0000000..6410cb0 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100544020572000/3B2CB1C8865E7B1E.yaml @@ -0,0 +1,36 @@ +# Atelier Yumia: The Alchemist of Memories & the Envisioned Land 1.2.1 +# BID: 3B2CB1C8865E7B1E + +unsafeCheck: false + +MASTER_WRITE: + # Redirect DR to MAIN + 0x2F4CFF0 + # REF: A9 24 89 52 49 A2 A7 72, second REF + - + type: bytes + main_offset: 0x10B2424 + value_type: uint32 + value: + - 0xD000F4C9 # adrp x9, 0x2F4C000 + - 0xBD4FF121 # ldr s1, [x9, 0xFF0] + - 0xD503201F # nop + ## Default value + - + type: bytes + main_offset: 0x2F4CFF0 + value_type: float + value: 0.035714 +ALL_FPS: + # Disable FPS Lock + # REF: 88 46 40 F9 03 11 40 F9, first ADRP+LDR above it + - + type: write + address: [MAIN, 0x2F13D80, 0xE0, 0x284] + value_type: uint8 + value: 0 + # DR Target + - + type: evaluate_write + address: [MAIN, 0x2F4CFF0] + value_type: float + value: "1.01 / FPS_TARGET" diff --git a/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml new file mode 100644 index 0000000..23b9e58 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/8AB0BBEBB5F628E6.yaml @@ -0,0 +1,12 @@ +# EA SPORTS FC 25 1.7c.d76a +# BID: 8AB0BBEBB5F628E6 + +unsafeCheck: true + +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0xCEEDA68, 8] + value_type: double + value: FPS_TARGET diff --git a/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml new file mode 100644 index 0000000..8aefc22 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010054E01D878000/DF4B53A8F7EA6FB6.yaml @@ -0,0 +1,12 @@ +# EA SPORTS FC 25 1.7c.7841 +# BID: DF4B53A8F7EA6FB6 + +unsafeCheck: true + +ALL_FPS: + # Internal FPS Lock + - + type: evaluate_write + address: [MAIN, 0xCEECA68, 8] + value_type: double + value: FPS_TARGET diff --git a/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml b/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml new file mode 100644 index 0000000..f688d0b --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010058F01DF8C000/F5E599C889DF733A.yaml @@ -0,0 +1,27 @@ +# Funko Fusion 3.1.1 +# BID: F5E599C889DF733A + +unsafeCheck: true + +ALL_FPS: + # r.VSync + - + type: write + address: [MAIN, 0x7541A68, 0] + value_type: int32 + value: [0, 0] + # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals + - + type: evaluate_write + address: [MAIN, 0x851D078, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x854AF60, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml b/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml new file mode 100644 index 0000000..45b618b --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01005AE0209A8000/36B692C0FA9F6F46.yaml @@ -0,0 +1,75 @@ +# WARRIORS: Abyss 1.4.0 +# BID: 36B692C0FA9F6F46 + +unsafeCheck: true + +MASTER_WRITE: + # REF: 09 49 A8 52 21 01 27 1E 00 20 21 1E + # Use FPS Target instead of vsync value for Dynamic Resolution max delta + - + type: bytes + main_offset: 0x6E3AF0 + value_type: uint32 + value: + - 0xD00049E1 # ADRP X1, 0x1021000 + - 0xBD4E1021 # LDR S1, [X1, 0xE10] + # Redirect DR Targets to MAIN+0x1477F00 + - + type: bytes + main_offset: 0x6E3B94 + value_type: uint32 + value: + - 0x90006EE9 # ADRP X9, 0x14BF000 + - 0xBD4F0121 # LDR S1, [X9, 0xF00] + - + type: bytes + main_offset: 0x6E3BA4 + value_type: uint32 + value: + - 0x90006EE9 # ADRP X9, 0x14BF000 + - 0xBD4F0521 # LDR S1, [X9, 0xF04] + # Default values + - + type: bytes + main_offset: 0x14BFF00 + value_type: float + value: [50, 40] +ALL_FPS: + # REF: 00 00 F0 42 78 00 00 00 00 00 F0 42 04 00 00 00 + # FPS Lock + - + type: evaluate_write + address: [MAIN, 0x1021E1C] + value_type: uint32 + value: "120 / FPS_LOCK_TARGET" + # Prevent from setting it as 0, otherwise game crashes + - + type: evaluate_compare + compare_address: [MAIN, 0x1021E1C] + compare_type: "==" + compare_value_type: uint32 + compare_value: 0 + address: [MAIN, 0x1021E1C] + value_type: uint32 + value: 1 + # Others + - + type: evaluate_write + address: [MAIN, 0x1021E10] + value_type: float + value: "FPS_TARGET" + - + type: evaluate_write + address: [MAIN, 0x1021E14] + value_type: uint32 + value: "FPS_TARGET" + - + type: evaluate_write + address: [MAIN, 0x1021E18] + value_type: float + value: "FPS_TARGET" + - + type: evaluate_write + address: [MAIN, 0x14BFF00] + value_type: float + value: ["1.5 * FRAMETIME_TARGET", "1.2 * FRAMETIME_TARGET"] \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml b/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml new file mode 100644 index 0000000..4a2c22b --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01005BD010872000/496A2F5A9CE4FBEB.yaml @@ -0,0 +1,24 @@ +# 女神異聞錄5 亂戰:魅影攻手 1.0.1 +# BID: 496A2F5A9CE4FBEB + +unsafeCheck: true + +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x1D11158] + value_type: int32 + value: [FPS_LOCK_TARGET, VSYNC_TARGET] + - + type: evaluate_write + address: [MAIN, 0x1D24BE8] + value_type: float + value: FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x2A848D0] + value_type: int32 + value: "VSYNC_TARGET - 1" + - + type: block + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml b/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml new file mode 100644 index 0000000..a320d11 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010066F01A0E0000/768428355C994280.yaml @@ -0,0 +1,21 @@ +# Cassette Beasts 1.8.2 +# BID: 768428355C994280 + +unsafeCheck: true + +ALL_FPS: + # physics/common/physics_fps + - + type: evaluate_write + address: [MAIN, 0x30AAAE0, 0x24] + value_type: int32 + value: FPS_TARGET + # debug/settings/fps/force_fps + - + type: evaluate_write + address: [MAIN, 0x30AAAE0, 0x30] + value_type: int32 + value: FPS_LOCK_TARGET + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml b/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml new file mode 100644 index 0000000..85b628d --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010073601DF1A000/E8BF195297B63BA2.yaml @@ -0,0 +1,57 @@ +# Amber Isle 1.0.3 +# BID: E8BF195297B63BA2 + +unsafeCheck: true + +MASTER_WRITE: +# Redirect all hardcoded doubles in DynamicResolutionHandler::Update to MAIN+0x909EF00 +## REF: c8 aa 8a f2 28 07 e8 f2 + - + type: bytes + main_offset: 0x21FE1E4 + value_type: uint32 + value: + - 0x90037508 # adrp x8, #0x909E000 + - 0xFD478100 # ldr d0, [x8, #0xf00] + - + type: bytes + main_offset: 0x21FE3E0 + value_type: uint32 + value: + - 0x90037508 # adrp x8, #0x909E000 + - 0xFD478101 # ldr d1, [x8, #0xf00] + - + type: bytes + main_offset: 0x21FE43C + value_type: uint32 + value: + - 0x90037508 # adrp x8, #0x909E000 + - 0xFD478101 # ldr d1, [x8, #0xf00] + - + type: bytes + main_offset: 0x21FE7D4 + value_type: uint32 + value: + - 0x90037508 # adrp x8, #0x909E000 + - 0xFD478100 # ldr d0, [x8, #0xf00] + ## REF: c8 aa 8a f2 28 07 f8 f2 + - + type: bytes + main_offset: 0x21fE550 + value_type: uint32 + value: + - 0x90037508 # adrp x8, #0x909E000 + - 0xFD478100 # ldr d0, [x8, #0xf00] + - 0x1E614000 # fneg d0, d0 + # default value + - + type: bytes + main_offset: 0x909EF00 + value_type: double + value: 25.333333333333336 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x909EF00] + value_type: double + value: "FRAMETIME_TARGET * 0.76" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml b/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml index 7d5a64b..eb41055 100644 --- a/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml +++ b/SaltySD/plugins/FPSLocker/patches/010074F013262000/82D187FE9EF9BE92.yaml @@ -1,4 +1,4 @@ -# Xenoblade Chronicles 3 2.2.0 +# Xenoblade Chronicles 3 2.2.0/2.2.1 # BID: 82D187FE9EF9BE92 unsafeCheck: false diff --git a/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml new file mode 100644 index 0000000..8d38091 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/061A7341077C0974.yaml @@ -0,0 +1,21 @@ +# FANTASY LIFE i: The Girl Who Steals Time 1.4.0 +# BID: 061A7341077C0974 + +unsafeCheck: true + +ALL_FPS: + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0xAD71938, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x9D51728, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml new file mode 100644 index 0000000..418ffc0 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/546820C12D88850D.yaml @@ -0,0 +1,21 @@ +# FANTASY LIFE i: The Girl Who Steals Time 1.3.3 +# BID: 546820C12D88850D + +unsafeCheck: true + +ALL_FPS: + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0xAD09938, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x9CE9728, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml new file mode 100644 index 0000000..fbe97c6 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100755017EE0000/9DBA6AA32721CAB9.yaml @@ -0,0 +1,27 @@ +# FANTASY LIFE i: The Girl Who Steals Time 1.3.0 +# BID: 9DBA6AA32721CAB9 + +unsafeCheck: false + +ALL_FPS: + # Disable FixedFrameRate + - + type: write + address: [MAIN, 0xACF23E0, 0xAA4] + value_type: uint32 + value: 7 + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0xACF3938, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x9CD3728, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml b/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml index 74345e5..8b83764 100644 --- a/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml +++ b/SaltySD/plugins/FPSLocker/patches/01007E3006DDA000/D55608916FA56C18.yaml @@ -1,4 +1,4 @@ -# Kirby Star Allies 4.0.0 +# Kirby Star Allies 4.0.0/4.0.0a # BID: D55608916FA56C18 # Thanks to Kirby567Fan for finding offsets of interval diff --git a/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml new file mode 100644 index 0000000..e7bac07 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/A12F75F49B36F4B8.yaml @@ -0,0 +1,148 @@ +# The Legend of Zelda: Breath of the Wild 1.8.1 +# BID: A12F75F49B36F4B8 + +unsafeCheck: true + +MASTER_WRITE: + # Remove double buffer + ## REF: 61 F6 42 39 + - + type: bytes + main_offset: 0xD80748 + value_type: uint32 + value: 0x52800021 + # Change pointer of GPU time factor for DR calculations to MAIN + 0x1D36C80 + ## REF: XREF 0x46823555, replace loading for 0.001 + - + type: bytes + main_offset: 0xE6F140 + value_type: uint32 + value: + - 0xF0007628 + - 0xBD4FF501 + # Dynamic speed + ## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964 + - + type: bytes + main_offset: 0xD874FC + value_type: uint32 + value: 0x141C191A + ## Patch game speed function to use speed from MAIN+0x1D36FF0 + - + type: bytes + main_offset: 0x14092A8 + value_type: uint32 + value: 0x14000003 + - + type: bytes + main_offset: 0x14092CC + value_type: uint32 + value: + - 0xB0004969 + - 0xBD4FF121 + ## Patch UI speed function to use speeed from MAIN+0x1D36FF0 + - + type: bytes + main_offset: 0x116D0D8 + value_type: uint32 + value: 0xB0005E47 + - + type: bytes + main_offset: 0x116D0E4 + value_type: uint32 + value: 0xBD4FF0E0 + ## CODE CAVE + - + type: bytes + main_offset: 0x148D964 + value_type: uint32 + value: + - 0xD63F0100 + - 0xD53BE022 + - 0xB0004548 + - 0xF947FD01 + - 0xEB1F003F + - 0x54000061 + - 0xF907FD02 + - 0x17E3E6E0 + - 0xCB010040 + - 0x97FFFBB6 # BL nn::os::ConvertToTimeSpan(nn::os::Tick) + - 0x9E230000 + - 0x52940AA0 + - 0x72A03F80 + - 0x1E230001 + - 0x1E211800 + - 0x1E201001 + - 0x1E212000 + - 0x5400004B + - 0x1E204020 + - 0xB0004548 + - 0xBD4FED01 + - 0x1E212000 + - 0x5400004C + - 0x1E204020 + - 0xBD0FF100 + - 0x17FFFFED + - 0xB0004540 + - 0xB94FF000 + - 0xD65F03C0 + - 0xB0004547 + - 0xB90FE8E1 + - 0x17DDA966 + # Signal Cutscenes playing + - + type: bytes + main_offset: 0xC00680 + value_type: uint32 + value: 0x942234D6 + - + type: bytes + main_offset: 0xC00E40 + value_type: uint32 + value: 0x942232E6 + # Default speed + - + type: bytes + main_offset: 0x1D36FF0 + value_type: float + value: 1.0 + - + type: bytes + main_offset: 0x1D36FEC + value_type: float + value: 1.0 + # Default cutscene state + - + type: bytes + main_offset: 0x1D36FE8 + value_type: uint8 + value: 1 + # Default DR factor + - + type: bytes + main_offset: 0x1D36FF4 + value_type: float + value: 0.001 +ALL_FPS: + # Min Delta + - + type: evaluate_write + address: [MAIN, 0x1D36FEC] + value_type: float + value: "30 / FPS_TARGET" + # DR factor + - + type: evaluate_write + address: [MAIN, 0x1D36FF4] + value_type: float + value: "(FPS_TARGET / 30) * 0.001" + # Prerendered cutscenes must be played at 30 FPS + - + type: compare + compare_address: [MAIN, 0x1D36FE8] + compare_type: "==" + compare_value_type: uint8 + compare_value: 0 + address: [MAIN] + value_type: refresh_rate + value: 30 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml new file mode 100644 index 0000000..513398c --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/01007EF00011E000/DE0B6AC4EFC1DDA7.yaml @@ -0,0 +1,156 @@ +# The Legend of Zelda: Breath of the Wild 1.8.2 +# BID: DE0B6AC4EFC1DDA7 + +unsafeCheck: true + +MASTER_WRITE: + # Remove double buffer + ## REF: 61 F6 42 39 + - + type: bytes + main_offset: 0xD80748 + value_type: uint32 + value: 0x52800021 + # Change pointer of GPU time factor for DR calculations to MAIN + 0x1D36C80 + ## REF: XREF 0x46823555, replace loading for 0.001 + - + type: bytes + main_offset: 0xE6F140 + value_type: uint32 + value: + - 0xF0007628 + - 0xBD4FF501 + # Dynamic speed + ## Replace nvnQueuePresentTexture call to code cave at MAIN+0x148D964 + - + type: bytes + main_offset: 0xD874FC + value_type: uint32 + value: 0x141C191A + ## Patch game speed function to use speed from MAIN+0x1D36FF0 + - + type: bytes + main_offset: 0x14092A8 + value_type: uint32 + value: 0x14000003 + - + type: bytes + main_offset: 0x14092CC + value_type: uint32 + value: + - 0xB0004969 + - 0xBD4FF121 + ## Patch UI speed function to use speeed from MAIN+0x1D36FF0 + - + type: bytes + main_offset: 0x116D0D8 + value_type: uint32 + value: 0xB0005E47 + - + type: bytes + main_offset: 0x116D0E4 + value_type: uint32 + value: 0xBD4FF0E0 + ## CODE CAVE + - + type: bytes + main_offset: 0x148D964 + value_type: uint32 + value: + - 0xD63F0100 + - 0xD53BE022 + - 0xB0004548 + - 0xF947FD01 + - 0xEB1F003F + - 0x54000061 + - 0xF907FD02 + - 0x17E3E6E0 + - 0xCB010040 + - 0x97FFFBB6 # BL nn::os::ConvertToTimeSpan(nn::os::Tick) + - 0x9E230000 + - 0x52940AA0 + - 0x72A03F80 + - 0x1E230001 + - 0x1E211800 + - 0x1E201001 + - 0x1E212000 + - 0x5400004B + - 0x1E204020 + - 0xB0004548 + - 0xBD4FED01 + - 0x1E212000 + - 0x5400004C + - 0x1E204020 + - 0xBD0FF100 + - 0x17FFFFED + - 0xB0004540 + - 0xB94FF000 + - 0xD65F03C0 + - 0xB0004547 + - 0xB90FE8E1 + - 0x17DDA966 + # Signal Cutscenes playing + - + type: bytes + main_offset: 0xC00680 + value_type: uint32 + value: 0x942234D6 + - + type: bytes + main_offset: 0xC00E40 + value_type: uint32 + value: 0x942232E6 + # Default speed + - + type: bytes + main_offset: 0x1D36FF0 + value_type: float + value: 1.0 + - + type: bytes + main_offset: 0x1D36FEC + value_type: float + value: 1.0 + # Default cutscene state + - + type: bytes + main_offset: 0x1D36FE8 + value_type: uint8 + value: 1 + # Default DR factor + - + type: bytes + main_offset: 0x1D36FF4 + value_type: float + value: 0.001 +ALL_FPS: + # Scrolling speed + ## REF: 68 16 41 B9 D8 22 D5 1A + ## ADRP + LDR above it + - + type: evaluate_write + address: [MAIN, 0x1C4BA40] + value_type: float + value: "30 / FPS_TARGET" + # Min Delta + - + type: evaluate_write + address: [MAIN, 0x1D36FEC] + value_type: float + value: "30 / FPS_TARGET" + # DR factor + - + type: evaluate_write + address: [MAIN, 0x1D36FF4] + value_type: float + value: "(FPS_TARGET / 30) * 0.001" + # Prerendered cutscenes must be played at 30 FPS + - + type: compare + compare_address: [MAIN, 0x1D36FE8] + compare_type: "==" + compare_value_type: uint8 + compare_value: 0 + address: [MAIN] + value_type: refresh_rate + value: 30 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml new file mode 100644 index 0000000..831947e --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/22D0D857A4DAEBBC.yaml @@ -0,0 +1,28 @@ +# No Man's Sky 5.7.1 +# BID: 22D0D857A4DAEBBC + +unsafeCheck: true + +MASTER_WRITE: + # Redirect DR frametime target to MAIN+0x47D7FF0 + # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that + - + type: bytes + main_offset: 0x1F95A70 + value_type: uint32 + value: + - 0xD0014209 # adrp x9, #0x47D7000 + - 0xBD4FF120 # ldr s0, [x9, #0xff0] + - 0xD503201F # NOP + # default value + - + type: bytes + main_offset: 0x47D7FF0 + value_type: float + value: 30 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x47D7FF0] + value_type: float + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml new file mode 100644 index 0000000..71508e9 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100853015E86000/CF94B485A949F8D1.yaml @@ -0,0 +1,28 @@ +# No Man's Sky 5.7.01 +# BID: CF94B485A949F8D1 + +unsafeCheck: true + +MASTER_WRITE: + # Redirect DR frametime target to MAIN+0x47DBFF0 + # REF: 08 4E A8 52 00 01 27 1E 48 8F A8 52, ADRP + ADD + LDR above that + - + type: bytes + main_offset: 0x1F99B90 + value_type: uint32 + value: + - 0xD0014209 # adrp x9, #0x47DB000 + - 0xBD4FF120 # ldr s0, [x9, #0xff0] + - 0xD503201F # NOP + # default value + - + type: bytes + main_offset: 0x47DBFF0 + value_type: float + value: 30 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x47DBFF0] + value_type: float + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml b/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml index 37dbcdb..2e351f4 100644 --- a/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml +++ b/SaltySD/plugins/FPSLocker/patches/01008E401E6D0000/E08769D5B56A5A25.yaml @@ -1,4 +1,4 @@ -# The Smurfs - Dreams 1.0.2 +# The Smurfs - Dreams 1.0.2/1.0.3 # BID: E08769D5B56A5A25 unsafeCheck: true @@ -10,12 +10,6 @@ ALL_FPS: address: [MAIN, 0x8321958, 0] value_type: int32 value: [0, 0] - # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 2 decimals - - - type: evaluate_write - address: [MAIN, 0x92DEDE8, 0] - value_type: float - value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] # t.MaxFPS - type: evaluate_write @@ -24,4 +18,4 @@ ALL_FPS: value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] - type: block - what: timing \ No newline at end of file + what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml b/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml new file mode 100644 index 0000000..ca77963 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100926016012000/561B0F485E699E4E.yaml @@ -0,0 +1,12 @@ +# PowerWash Simulator 1.11.0 +# BID: 561B0F485E699E4E + +unsafeCheck: false + +ALL_FPS: + # FuturLab.SingletonMonoBehaviour_TypeInfo (don't block FPSlocker internal lock because game's lock is kinda shit) + - + type: evaluate_write + address: [MAIN, 0x606A350, 0xB8, 0, 0x28] + value_type: int32 + value: FPS_LOCK_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml b/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml new file mode 100644 index 0000000..7255dc2 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/010093C0215B4000/5AF690F4A8BFCC67.yaml @@ -0,0 +1,21 @@ +# The Hundred Line -Last Defense Academy- 1.0.6 +# BID: 5AF690F4A8BFCC67 +# Last found function with REF: FD 7B BE A9 F3 0B 00 F9 FD 03 00 91 E0 03 01 2A stores some code related to playing above 60 FPS. Look at it if someone will have an issue playing above 60 FPS. + +unsafeCheck: true + +ALL_FPS: + # FPS Lock + # REF: 1B 41 00 00 + - + type: evaluate_write + address: [MAIN, 0xC8CC78] + value_type: uint32 + value: FRAMETIME_TARGET * 1000 + # Unknown value, but set in the same function as FPS lock, so it may be important + # REF: 3C 00 00 00 01 00 00 00 00 00 00 00 + - + type: evaluate_write + address: [MAIN, 0xC8CC44] + value_type: uint32 + value: FPS_TARGET \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml b/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml index 0878510..8899a7a 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100A8E016236000/82AF4E16BBC0BEC8.yaml @@ -1,4 +1,4 @@ -# Kirby's Dream Buffet 1.0.0 +# Kirby's Dream Buffet 1.0.0/1.0.0a # BID: 82AF4E16BBC0BEC8 # Thanks to Hazerou for finding offsets # Game was patched to use triple buffer, and to avoid flickering with some 2D transparent elements, I have disabled transparency in them. diff --git a/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml b/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml index 5517932..2d78b60 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100C1300BBC6000/59719CFCD1671B98.yaml @@ -1,4 +1,4 @@ -# ABZU 1.0.0 +# ABZU 1.0.0/1.0.01 # BID: 59719CFCD1671B98 unsafeCheck: true @@ -10,6 +10,12 @@ ALL_FPS: address: [MAIN, 0x6228EE0, 0] value_type: float value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: write + address: [MAIN, 0x5996FC0, 0] + value_type: uint32 + value: [0, 0] - type: block what: timing diff --git a/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml b/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml index 0045f92..8f58a64 100644 --- a/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml +++ b/SaltySD/plugins/FPSLocker/patches/0100C1E01CDEE000/27BB06DD145F39F5.yaml @@ -9,7 +9,7 @@ ALL_FPS: type: write address: [MAIN, 0x3482FB0, 0xB8, 0] value_type: int32 - value: 1 + value: -1 # maxFixedDeltaTime, ref: UnityEngine.Time::get_timeScale - type: write diff --git a/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml b/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml new file mode 100644 index 0000000..243731f --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100CA3014ADE000/372AB37327DB2C31.yaml @@ -0,0 +1,30 @@ +# Umurangi Generation 1.6.6.0 +# BID: 372AB37327DB2C31 + +unsafeCheck: true + +MASTER_WRITE: + # Read FPS Lock from MAIN+0x49FCFF0 + ## REF: 81 1a 40 bd 02 10 2e 1e + ## REF: FPSTarget.<>d__6::MoveNext() + - + type: bytes + main_offset: 0x2DF1E60 + value_type: uint32 + value: + - 0xF000E048 # adrp x8, #0x49fc000 + - 0xBD4FF101 # ldr s1, [x8, #0xff0] + - 0xD503201F # NOP + ## Default value + - + type: bytes + main_offset: 0x49FCFF0 + value_type: float + value: 0.03333333333 +ALL_FPS: + # FPS Lock + - + type: evaluate_write + address: [MAIN, 0x49FCFF0] + value_type: float + value: "1 / FPS_TARGET" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml b/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml new file mode 100644 index 0000000..1d3265b --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100D7C021496000/7926A67119144CFD.yaml @@ -0,0 +1,37 @@ +# Twilight Monk 1.2.0 +# BID: 7926A67119144CFD + +unsafeCheck: true + +ALL_FPS: + # Disable bUseFixedFrameRate to untie game speed from framerate and unlock FPS + - + type: write + address: [MAIN, 0x5DC2688, 0x7A4] + value_type: uint32 + # Default is 0x46, bUseFixedFrameRate |= 0x40 + # By writing 7 we are making sure that other flags are maintained: + # bAllowMultiThreadedAnimationUpdate |= 4 + # bOptimizeAnimBlueprintMemberVariableAccess |= 2 + value: 6 + # r.DynamicRes.FrameTimeBudget + - + type: evaluate_write + address: [MAIN, 0x5D952E8, 0] + value_type: float + value: ["TruncDec(FRAMETIME_TARGET, 2)", "TruncDec(FRAMETIME_TARGET, 2)"] + # t.MaxFPS + - + type: evaluate_write + address: [MAIN, 0x5DC2FA8, 0] + value_type: float + value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET] + # r.VSync + - + type: evaluate_write + address: [MAIN, 0x55C62F8, 0] + value_type: uint32 + value: [0, 0] + - + type: block + what: timing \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml b/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml new file mode 100644 index 0000000..db3a05b --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100E8500AD58000/07650FD5E5E2B82C.yaml @@ -0,0 +1,83 @@ +# 無双OROCHI3 1.0.13 +# BID: 07650FD5E5E2B82C +# Credits to Hazerou for figuring out the offset +# Main offset stores address to start of .bss of NRO +## REF: 02 00 00 00 3C 00 00 00 + +unsafeCheck: true + +ALL_FPS: + # Without DLC Ultimate Edition installed + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x92BB8] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x92BB0] + value_type: float + value: FPS_TARGET + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x92BAC] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "==" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x92BA4] + value_type: float + value: FPS_TARGET + # With DLC Ultimate Edition installed + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x93480] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x93478] + value_type: float + value: FPS_TARGET + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x93474] + value_type: uint32 + value: [VSYNC_TARGET, FPS_TARGET] + - + type: evaluate_compare + compare_value_type: uint64 + compare_type: "!=" + compare_value: 0x379B4590A7C2BC1F + compare_address: [MAIN, 0x3AF80, -0x1B80FC0] + address: [MAIN, 0x3AF80, -0x9346C] + value_type: float + value: FPS_TARGET diff --git a/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml b/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml new file mode 100644 index 0000000..9b9d560 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100EE00205BA000/135595BF76F46B1B.yaml @@ -0,0 +1,12 @@ +# HEAVEN SEEKER ――The Savior of This Cruel World 1.2.0.139 +# BID: 135595BF76F46B1B + +unsafeCheck: true + +ALL_FPS: + # UnityEngine.Time::fixedDeltaTime (default is 0.033) + - + type: evaluate_write + address: [MAIN, 0x9888E78, 0x48] + value_type: float + value: "(1 / FPS_TARGET) * 0.99" \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml b/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml new file mode 100644 index 0000000..aa507ed --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/5CB42B1CF25469FB.yaml @@ -0,0 +1,180 @@ +# The Legend of Zelda: Tears of The Kingdom 1.4.2 +# BID: 5CB42B1CF25469FB + +Addons: + - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm + +unsafeCheck: true + +MASTER_WRITE: + # Remove double buffer + ## REF: A0 2A 40 F9 61 A2 40 39 + - + type: bytes + main_offset: 0xBBF258 + value_type: uint32 + value: 0x52800021 + # Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculation int, + # $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function + ## MAIN + 0x3ACCFFC = FPS target for reference + ## REF: nvnWindowSetPresentInterval + - + type: bytes + main_offset: 0x2D4E68 + value_type: uint32 + value: + - 0x9001BFC2 + - 0xBD4FFC49 + - 0xAA0003F4 + - 0xAA0103F5 + - 0xF9406C20 + - 0x94A33E6D # BL nn::os::ConvertToTimeSpan(nn::os::Tick) + - 0x52994002 + - 0x72A77342 + - 0x1E220042 + - 0x9E220001 + - 0x1E211841 + - 0x1E292020 + - 0x1E21CD21 + - 0x1E25D009 + - 0x1E292020 + - 0x1E21BD21 + - 0x1E390022 + - 0xB9005282 + - 0xBD002681 + - 0x1400002B + ## Use our fps target + ## REF: 60 52 42 BD 08 4E A8 52 + ### Replace LDR S0, [X22,#0x250] + - + type: bytes + main_offset: 0x2D4730 + value_type: uint32 + value: 0xBD422660 + ### Replace SCVTF S0, S0 + - + type: bytes + main_offset: 0x2D4748 + value_type: uint32 + value: 0xD503201F + ## REF: 14 01 40 F9 08 4E A8 52 + ### Replace LDR S0, [X22,#0x250] + - + type: bytes + main_offset: 0x37EA5C + value_type: uint32 + value: 0xBD4226C0 + ### Replace SCVTF S0, S0 + - + type: bytes + main_offset: 0x37EA68 + value_type: uint32 + value: 0xD503201F + # When prerendered cutscene is active write flag to MAIN + 0x3ACCFFB + ## REF: 68 52 40 79 08 01 19 32 68 52 00 79 + ## BL to Code Cave 1 + - + type: bytes + main_offset: 0x2B238B4 + value_type: uint32 + value: 0x975EC581 + ## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call + ## B to Code Cave 2 + - + type: bytes + main_offset: 0x2B210CC + value_type: uint32 + value: 0x175ECF7F + ## CODE CAVE 1, offset +0x50 relative to start of previous code cave + - + type: bytes + main_offset: 0x2D4EB8 + value_type: uint32 + value: + - 0x52800022 + - 0x9001BFC3 + - 0x393FEC62 + - 0x17F62A71 # Jump to original BL as B + ## CODE CAVE 2, offset +0x10 relative to start of previous code cave + - + type: bytes + main_offset: 0x2D4EC8 + value_type: uint32 + value: + - 0x9001BFC3 + - 0x393FEC60 + - 0x14A343EC # B nn::oe::SetUserInactivityDetectionTimeExtended(bool) + # Adjust DR timing to factor from MAIN + 0x3ACCFF4 + # REF: 88 02 15 CB 00 01 23 9E + - + type: bytes + main_offset: 0xEED54 + value_type: uint32 + value: + - 0xD001CEE8 + - 0xBD4FF501 + # Fix black background for D-pad menu + ## REF: 21 03 5E BC + - + type: bytes + main_offset: 0x387390 + value_type: uint32 + value: + - 0x17FD36D1 # Jump to Code Cave 3 + - 0x1E202008 + ## CODE CAVE 3, offset +0xC relative to start of previous code cave + - + type: bytes + main_offset: 0x2D4ED4 + value_type: uint32 + value: + - 0x1E202028 + - 0x54000101 + - 0x785FA328 + - 0x7100151F + - 0x540000A1 + - 0x785F8328 + - 0x7100151F + - 0x54000041 + - 0x1E2E1008 + - 0x1F080409 + - 0x1402C926 # Go back + # Default values + ## FPS Target + - + type: bytes + main_offset: 0x3ACCFFC + value_type: float + value: 30 + ## Cutscene flag + - + type: bytes + main_offset: 0x3ACCFFB + value_type: uint8 + value: 0 + ## Dynamic Resolution timing factor + - + type: bytes + main_offset: 0x3ACCFF4 + value_type: float + value: 0.001 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x3ACCFFC] + value_type: float + value: FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x3ACCFF4] + value_type: float + value: "0.001 * (FPS_TARGET / 30)" + - + type: compare + compare_address: [MAIN, 0x3ACCFFB] + compare_value_type: uint8 + compare_value: 1 + compare_type: "==" + address: [MAIN] + value_type: refresh_rate + value: 30 diff --git a/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml b/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml new file mode 100644 index 0000000..756d019 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100F2C0115B6000/965EAB9CEB8EB867.yaml @@ -0,0 +1,174 @@ +# The Legend of Zelda: Tears of The Kingdom 1.4.1 +# BID: 965EAB9CEB8EB867 + +Addons: + - atmosphere/contents/0100F2C0115B6000/exefs/main.npdm + +unsafeCheck: true + +MASTER_WRITE: + # Remove double buffer + ## REF: A0 2A 40 F9 61 A2 40 39 + - + type: bytes + main_offset: 0xBC9088 + value_type: uint32 + value: 0x52800021 + # Code Injected, $x1 + 0xD8 - last frametime without compensation long ticks, $x0 + 0x50 - fps target used for calculatuon int, + # $x0 + 0x24 - our fps target used for calculation but as float, originally is stored there 30 FPS int that seems to do nothing outside of this function + ## MAIN + 0x3ACAFFC = FPS target for reference + ## REF: nvnWindowSetPresentInterval + - + type: bytes + main_offset: 0x38A3C4 + value_type: uint32 + value: + - 0x9001BA02 + - 0xBD4FFC49 + - 0xAA0003F4 + - 0xAA0103F5 + - 0xF9406C20 + - 0x94A066EA # BL nn::os::ConvertToTimeSpan(nn::os::Tick) + - 0x52994002 + - 0x72A77342 + - 0x1E220042 + - 0x9E220001 + - 0x1E211841 + - 0x1E292020 + - 0x1E21CD21 + - 0x1E25D009 + - 0x1E292020 + - 0x1E21BD21 + - 0x1E390022 + - 0xB9005282 + - 0xBD002681 + - 0x1400002B + ## Use our fps target + ## REF: 60 52 42 BD 08 4E A8 52 + - + type: bytes + main_offset: 0x389C8C + value_type: uint32 + value: 0xBD422660 + - + type: bytes + main_offset: 0x389CA4 + value_type: uint32 + value: 0xD503201F + ## REF: 14 01 40 F9 08 4E A8 52 + - + type: bytes + main_offset: 0x4916DC + value_type: uint32 + value: 0xBD4226C0 + - + type: bytes + main_offset: 0x4916E8 + value_type: uint32 + value: 0xD503201F + # When prerendered cutscene is active write flag to MAIN + 0x3ACAFFB + ## REF: 68 52 40 79 08 01 19 32 68 52 00 79 + - + type: bytes + main_offset: 0x2B23988 + value_type: uint32 + value: 0x97619AA3 + ## REF: 68 52 40 79 08 79 18 12 68 52 00 79, inside call + - + type: bytes + main_offset: 0x2B211A0 + value_type: uint32 + value: 0x1761A4A1 + ## CODE CAVE, offset +0x50 relative to start of previous code cave + - + type: bytes + main_offset: 0x38A414 + value_type: uint32 + value: + - 0x52800022 + - 0x9001BA03 + - 0x393FEC62 + - 0x141ADBE3 + ## CODE CAVE, offset +0x10 relative to start of previous code cave + - + type: bytes + main_offset: 0x38A424 + value_type: uint32 + value: + - 0x9001BA03 + - 0x393FEC60 + - 0x14A06C69 # B nn::oe::SetUserInactivityDetectionTimeExtended(bool) + # Adjust DR timing to factor from MAIN + 0x3ACAFF4 + # REF: 88 02 15 CB 00 01 23 9E + - + type: bytes + main_offset: 0x17AC04 + value_type: uint32 + value: + - 0x9001CA88 + - 0xBD4FF501 + # Fix black background for D-pad menu + ## REF: 21 03 5E BC + - + type: bytes + main_offset: 0x48DDD0 + value_type: uint32 + value: + - 0x17FBF198 + - 0x1E202008 + ## CODE CAVE, offset +0xC relative to start of previous code cave + - + type: bytes + main_offset: 0x38A430 + value_type: uint32 + value: + - 0x1E202028 + - 0x54000101 + - 0x785FA328 + - 0x7100151F + - 0x540000A1 + - 0x785F8328 + - 0x7100151F + - 0x54000041 + - 0x1E2E1008 + - 0x1F080409 + - 0x14040E5F + # Default values + ## FPS Target + - + type: bytes + main_offset: 0x3ACAFFC + value_type: float + value: 30 + ## Cutscene flag + - + type: bytes + main_offset: 0x3ACAFFB + value_type: uint8 + value: 0 + ## Dynamic Resolution timing factor + - + type: bytes + main_offset: 0x3ACAFF4 + value_type: float + value: 0.001 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x3ACAFFC] + value_type: float + value: FPS_TARGET + - + type: evaluate_write + address: [MAIN, 0x3ACAFF4] + value_type: float + value: "0.001 * (FPS_TARGET / 30)" + - + type: compare + compare_address: [MAIN, 0x3ACAFFB] + compare_value_type: uint8 + compare_value: 1 + compare_type: "==" + address: [MAIN] + value_type: refresh_rate + value: 30 \ No newline at end of file diff --git a/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml b/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml new file mode 100644 index 0000000..63f5c80 --- /dev/null +++ b/SaltySD/plugins/FPSLocker/patches/0100FBD013AB6000/54551AEABF6E1F41.yaml @@ -0,0 +1,27 @@ +# SnowRunner 1.0.40 +# BID: 54551AEABF6E1F41 +# Just search for 0x42055555 + +unsafeCheck: true + +MASTER_WRITE: +# Redirect DR frametime target to MAIN+0x30A7F00 + - + type: bytes + main_offset: 0x193CEA8 + value_type: uint32 + value: + - 0xF000BB4A # adrp x10, #0x30A7000 + - 0xBD4F0142 # ldr s2, [x10, #0xf00] + # default value + - + type: bytes + main_offset: 0x30A7F00 + value_type: float + value: 33.3333333333 +ALL_FPS: + - + type: evaluate_write + address: [MAIN, 0x30A7F00] + value_type: float + value: FRAMETIME_TARGET \ No newline at end of file diff --git a/SaltySD/saltysd_core.elf b/SaltySD/saltysd_core.elf index 219bf3e..55b3930 100644 Binary files a/SaltySD/saltysd_core.elf and b/SaltySD/saltysd_core.elf differ diff --git a/SaltySD/saltysd_core32.elf b/SaltySD/saltysd_core32.elf index 8413577..b3218dd 100644 Binary files a/SaltySD/saltysd_core32.elf and b/SaltySD/saltysd_core32.elf differ diff --git a/atmosphere/contents/0000000000534C56/exefs.nsp b/atmosphere/contents/0000000000534C56/exefs.nsp index 45f6dad..ded223d 100644 Binary files a/atmosphere/contents/0000000000534C56/exefs.nsp and b/atmosphere/contents/0000000000534C56/exefs.nsp differ diff --git a/atmosphere/contents/00FF0000636C6BFF/exefs.nsp b/atmosphere/contents/00FF0000636C6BFF/exefs.nsp index 0294e6a..ec297f5 100644 Binary files a/atmosphere/contents/00FF0000636C6BFF/exefs.nsp and b/atmosphere/contents/00FF0000636C6BFF/exefs.nsp differ diff --git a/atmosphere/contents/010000000000bd00/exefs.nsp b/atmosphere/contents/010000000000bd00/exefs.nsp index bfdadbd..6ea2039 100644 Binary files a/atmosphere/contents/010000000000bd00/exefs.nsp and b/atmosphere/contents/010000000000bd00/exefs.nsp differ diff --git a/atmosphere/contents/420000000007E51A/exefs.nsp b/atmosphere/contents/420000000007E51A/exefs.nsp index 7e9c6ec..4373a00 100644 Binary files a/atmosphere/contents/420000000007E51A/exefs.nsp and b/atmosphere/contents/420000000007E51A/exefs.nsp differ diff --git a/atmosphere/exefs_patches/bluetooth_patches/532B667232B3992A0A3D007AA85E4944C4138D15.ips b/atmosphere/exefs_patches/bluetooth_patches/532B667232B3992A0A3D007AA85E4944C4138D15.ips index b058158..101989f 100644 Binary files a/atmosphere/exefs_patches/bluetooth_patches/532B667232B3992A0A3D007AA85E4944C4138D15.ips and b/atmosphere/exefs_patches/bluetooth_patches/532B667232B3992A0A3D007AA85E4944C4138D15.ips differ diff --git a/atmosphere/exefs_patches/bluetooth_patches/935E9D4099CE74FC162915E7CA4952E64FAD6671.ips b/atmosphere/exefs_patches/bluetooth_patches/935E9D4099CE74FC162915E7CA4952E64FAD6671.ips index b058158..6e5ffe1 100644 Binary files a/atmosphere/exefs_patches/bluetooth_patches/935E9D4099CE74FC162915E7CA4952E64FAD6671.ips and b/atmosphere/exefs_patches/bluetooth_patches/935E9D4099CE74FC162915E7CA4952E64FAD6671.ips differ diff --git a/atmosphere/exefs_patches/hid_patches/12DB6C7DF6BF40BC02695C611EC46F458504A5AD.ips b/atmosphere/exefs_patches/hid_patches/12DB6C7DF6BF40BC02695C611EC46F458504A5AD.ips new file mode 100644 index 0000000..e70e8aa Binary files /dev/null and b/atmosphere/exefs_patches/hid_patches/12DB6C7DF6BF40BC02695C611EC46F458504A5AD.ips differ diff --git a/atmosphere/exefs_patches/hid_patches/403978CD2BC64E4ACB3BF1A5E556F582BFC3498B.ips b/atmosphere/exefs_patches/hid_patches/403978CD2BC64E4ACB3BF1A5E556F582BFC3498B.ips new file mode 100644 index 0000000..e70e8aa Binary files /dev/null and b/atmosphere/exefs_patches/hid_patches/403978CD2BC64E4ACB3BF1A5E556F582BFC3498B.ips differ diff --git a/atmosphere/exefs_patches/hid_patches/8BDBD223E61D122E98CDBFC77C231BBB5CBE56E3.ips b/atmosphere/exefs_patches/hid_patches/8BDBD223E61D122E98CDBFC77C231BBB5CBE56E3.ips new file mode 100644 index 0000000..e70e8aa Binary files /dev/null and b/atmosphere/exefs_patches/hid_patches/8BDBD223E61D122E98CDBFC77C231BBB5CBE56E3.ips differ diff --git a/atmosphere/kips/loader.kip b/atmosphere/kips/loader.kip index c34aec0..af92839 100644 Binary files a/atmosphere/kips/loader.kip and b/atmosphere/kips/loader.kip differ diff --git a/atmosphere/package3 b/atmosphere/package3 index dc0baa9..b62a3ab 100644 Binary files a/atmosphere/package3 and b/atmosphere/package3 differ diff --git a/atmosphere/stratosphere.romfs b/atmosphere/stratosphere.romfs index cbbea8f..a4da1e3 100644 Binary files a/atmosphere/stratosphere.romfs and b/atmosphere/stratosphere.romfs differ diff --git a/config/sphaira/config.ini b/config/sphaira/config.ini index 549f6e8..c00333a 100644 --- a/config/sphaira/config.ini +++ b/config/sphaira/config.ini @@ -6,6 +6,5 @@ install_emummc=1 install_prompt=0 [homebrew] layout=1 -hide_sphaira=1 [filebrowser] show_hidden=1 diff --git a/config/sys-clk/config.ini b/config/sys-clk/config.ini index a797b85..39c4a1f 100644 --- a/config/sys-clk/config.ini +++ b/config/sys-clk/config.ini @@ -1,3 +1,4 @@ [values] +gpu_dvfs=1 +sync_reversenx=1 uncapped_clocks=1 -reversenx_sync=1 diff --git a/config/ultrahand/lang/de.json b/config/ultrahand/lang/de.json index ca2f1b7..97d8ecc 100644 --- a/config/ultrahand/lang/de.json +++ b/config/ultrahand/lang/de.json @@ -9,12 +9,14 @@ "DUTCH": "Niederländisch", "PORTUGUESE": "Portugiesisch", "RUSSIAN": "Russisch", + "UKRAINIAN": "Ukrainisch", "POLISH": "Polnisch", "SIMPLIFIED_CHINESE": "Vereinfachtes Chinesisch", "TRADITIONAL_CHINESE": "Traditionelles Chinesisch", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Nicht verfügbar", "OVERLAYS": "Overlays", + "OVERLAYS_ABBR": "Overlays", "OVERLAY": "Overlay", "HIDDEN_OVERLAYS": "Verborgene Overlays", "PACKAGES": "Pakete", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Grundlegende Optionen", "UI_SETTINGS": "Ultrahand UI-Optionen", "WIDGET": "Widget für...", + "WIDGET_ITEMS": "Widget-Elemente", + "WIDGET_SETTINGS": "Widget-Einstellungen", "CLOCK": "Datum & Uhrzeit", "BATTERY": "Akkustandanzeige", "SOC_TEMPERATURE": "SOC Temperatur", "PCB_TEMPERATURE": "PCB Temperatur", + "BACKDROP": "Hintergrund", + "DYNAMIC_COLORS": "Dynamische Farben", + "CENTER_ALIGNMENT": "Zentrierte Ausrichtung", + "EXTENDED_BACKDROP": "Erweiterter Hintergrund", "MISCELLANEOUS": "Diverse Optionen", "MENU_ITEMS": "Menüpunkte", "USER_GUIDE": "Hilfe", + "SHOW_HIDDEN": "Versteckte Anzeigen", "VERSION_LABELS": "Versionsnummern Anzeige", "KEY_COMBO": "Tasten-Kombi ändern", + "MODE": "Modus", "LANGUAGE": "Sprache", "OVERLAY_INFO": "Infos zu Ultrahand", "SOFTWARE_UPDATE": "Ultrahand Updates", @@ -71,6 +81,7 @@ "CLEAN_VERSIONS": "Versionskürzel (v) ausblenden", "OVERLAY_VERSIONS": "Overlay Versionsnr.", "PACKAGE_VERSIONS": "Paket Versionsnr.", + "LAUNCH_COMBOS": "Start-Kombos", "OPAQUE_SCREENSHOTS": "Undurchsichtige Screenshots", "PAGE_SWAP": "Seitenwechsel", "DYNAMIC_LOGO": "Dynamisches Logo", @@ -83,13 +94,15 @@ "CREDITS": "Credits", "OK": "OK", "BACK": "Zurück", + "HIDE": "Ausblenden", + "CANCEL": "Abbrechen", "REBOOT_TO": "Neustart zu", "REBOOT": "Neustart", "SHUTDOWN": "Ausschalten", "BOOT_ENTRY": "Start Eintrag", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "176", "SETTINGS_MENU": "Options-Menü", "SCRIPT_OVERLAY": "OVL-Skript wählen", "STAR_FAVORITE": "Favorit wählen", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "Auf Hauptmenü", "ON_A_COMMAND": "Auf einem Befehl", "ON_OVERLAY_PACKAGE": "Auf einem OVL/PKT", - "EFFECTS": "Effekte", + "FEATURES": "Funktionen", "SWIPE_TO_OPEN": "Zum Öffnen wischen", "RIGHT_SIDE_MODE": "Rechtsmodus", "PROGRESS_ANIMATION": "Fortschrittsanimation", diff --git a/config/ultrahand/lang/en.json b/config/ultrahand/lang/en.json index 7b6f876..98b6346 100644 --- a/config/ultrahand/lang/en.json +++ b/config/ultrahand/lang/en.json @@ -9,12 +9,14 @@ "DUTCH": "Dutch", "PORTUGUESE": "Portuguese", "RUSSIAN": "Russian", + "UKRAINIAN": "Ukrainian", "POLISH": "Polish", "SIMPLIFIED_CHINESE": "Simplified Chinese", "TRADITIONAL_CHINESE": "Traditional Chinese", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Not available", "OVERLAYS": "Overlays", + "OVERLAYS_ABBR": "Overlays", "OVERLAY": "Overlay", "HIDDEN_OVERLAYS": "Hidden Overlays", "PACKAGES": "Packages", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Main Settings", "UI_SETTINGS": "UI Settings", "WIDGET": "Widget", + "WIDGET_ITEMS": "Widget Items", + "WIDGET_SETTINGS": "Widget Settings", "CLOCK": "Clock", "BATTERY": "Battery", "SOC_TEMPERATURE": "SOC Temperature", "PCB_TEMPERATURE": "PCB Temperature", + "BACKDROP": "Backdrop", + "DYNAMIC_COLORS": "Dynamic Colors", + "CENTER_ALIGNMENT": "Center Alignment", + "EXTENDED_BACKDROP": "Extended Backdrop", "MISCELLANEOUS": "Miscellaneous", "MENU_ITEMS": "Menu Items", "USER_GUIDE": "User Guide", + "SHOW_HIDDEN": "Show Hidden", "VERSION_LABELS": "Version Labels", "KEY_COMBO": "Key Combo", + "MODE": "Mode", "LANGUAGE": "Language", "OVERLAY_INFO": "Overlay Info", "SOFTWARE_UPDATE": "Software Update", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "Clean Versions", "OVERLAY_VERSIONS": "Overlay Versions", "PACKAGE_VERSIONS": "Package Versions", + "LAUNCH_COMBOS": "Launch Combos", "OPAQUE_SCREENSHOTS": "Opaque Screenshots", "PAGE_SWAP": "Page Swap", "DYNAMIC_LOGO": "Dynamic Logo", @@ -83,13 +94,15 @@ "CREDITS": "Credits", "OK": "OK", "BACK": "Back", + "HIDE": "Hide", + "CANCEL": "Cancel", "REBOOT_TO": "Reboot To", "REBOOT": "Reboot", "SHUTDOWN": "Shutdown", "BOOT_ENTRY": "Boot Entry", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "175", + "USERGUIDE_OFFSET": "176", "SETTINGS_MENU": "Settings Menu", "SCRIPT_OVERLAY": "Script Overlay", "STAR_FAVORITE": "Star/Favorite", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "on Main Menu", "ON_A_COMMAND": "on a command", "ON_OVERLAY_PACKAGE": "on overlay/package", - "EFFECTS": "Effects", + "FEATURES": "Features", "SWIPE_TO_OPEN": "Swipe to Open", "RIGHT_SIDE_MODE": "Right-side Mode", "PROGRESS_ANIMATION": "Progress Animation", diff --git a/config/ultrahand/lang/es.json b/config/ultrahand/lang/es.json index c6387f9..ddbcf4d 100644 --- a/config/ultrahand/lang/es.json +++ b/config/ultrahand/lang/es.json @@ -9,45 +9,55 @@ "DUTCH": "Holandés", "PORTUGUESE": "Portugués", "RUSSIAN": "Ruso", + "UKRAINIAN": "Ucraniano", "POLISH": "Polaco", "SIMPLIFIED_CHINESE": "Chino Simplificado", "TRADITIONAL_CHINESE": "Chino Tradicional", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "No disponible", - "OVERLAYS": "Superposiciones", + "OVERLAYS": "Superposicións", + "OVERLAYS_ABBR": "Superp.s", "OVERLAY": "Superposición", - "HIDDEN_OVERLAYS": "Superposiciones Ocultas", + "HIDDEN_OVERLAYS": "Ocultas", "PACKAGES": "Paquetes", "PACKAGE": "Paquete", - "HIDDEN_PACKAGES": "Paquetes Ocultos", + "HIDDEN_PACKAGES": "Paq. Ocultos", "HIDDEN": "Oculto", "HIDE_OVERLAY": "Ocultar Superposición", "HIDE_PACKAGE": "Ocultar Paquete", "LAUNCH_ARGUMENTS": "Argumentos de Inicio", "BOOT_COMMANDS": "Comandos de Arranque", "EXIT_COMMANDS": "Comandos de Salida", - "ERROR_LOGGING": "Registro de Errores", + "ERROR_LOGGING": "Reg. de Errores", "COMMANDS": "Comandos", "SETTINGS": "Configuración", - "MAIN_SETTINGS": "Configuración Principal", - "UI_SETTINGS": "Configuración de la UI", + "MAIN_SETTINGS": "Conf. Principal", + "UI_SETTINGS": "Conf. de la UI", "WIDGET": "Widget", + "WIDGET_ITEMS": "Elementos del Widget", + "WIDGET_SETTINGS": "Configuración del Widget", "CLOCK": "Reloj", "BATTERY": "Batería", - "SOC_TEMPERATURE": "Temperatura del SOC", - "PCB_TEMPERATURE": "Temperatura de la PCB", + "SOC_TEMPERATURE": "Tª SOC", + "PCB_TEMPERATURE": "Tª PCB", + "BACKDROP": "Fondo", + "DYNAMIC_COLORS": "Colores Dinámicos", + "CENTER_ALIGNMENT": "Alineación Centrada", + "EXTENDED_BACKDROP": "Fondo Extendido", "MISCELLANEOUS": "Varios", "MENU_ITEMS": "Elementos del menú", "USER_GUIDE": "Guía del usuario", + "SHOW_HIDDEN": "Mostrar Ocultos", "VERSION_LABELS": "Etiquetas de versión", "KEY_COMBO": "Combinación de Teclas", + "MODE": "Modo", "LANGUAGE": "Idioma", - "OVERLAY_INFO": "Información de la superposición", - "SOFTWARE_UPDATE": "Actualización de Software", - "UPDATE_ULTRAHAND": "Actualizar Ultrahand", - "UPDATE_LANGUAGES": "Actualizar Idiomas", + "OVERLAY_INFO": "Inf. de la superposición", + "SOFTWARE_UPDATE": "Act. de Software", + "UPDATE_ULTRAHAND": "Act. Ultrahand", + "UPDATE_LANGUAGES": "Act. Idiomas", "SYSTEM": "Sistema", - "DEVICE_INFO": "Información del dispositivo", + "DEVICE_INFO": "Inf. del dispositivo", "FIRMWARE": "Firmware", "BOOTLOADER": "Gestor de arranque", "HARDWARE": "Hardware", @@ -58,38 +68,41 @@ "NOTICE": "Aviso", "UTILIZES": "Utiliza", "FREE": "libre", - "MEMORY_EXPANSION": "Expansión de Memoria", + "MEMORY_EXPANSION": "Exp. de Memoria", "REBOOT_REQUIRED": "*Reinicio requerido.", "LOCAL_IP": "IP local", - "WALLPAPER": "Fondo de pantalla", + "WALLPAPER": "Fondo", "THEME": "Tema", "DEFAULT": "defecto", "ROOT_PACKAGE": "Paquete Raíz", "SORT_PRIORITY": "Prioridad de Orden", - "FAILED_TO_OPEN": "No se pudo abrir el archivo", + "FAILED_TO_OPEN": "No se pudo abrir", "CLEAN_VERSIONS": "Etiquetas Limpias", "OVERLAY_VERSIONS": "Etiquetas de Superposición", "PACKAGE_VERSIONS": "Etiquetas de Paquete", - "OPAQUE_SCREENSHOTS": "Capturas de Pantalla Opacas", - "PAGE_SWAP": "Intercambio de Página", + "LAUNCH_COMBOS": "Combos de Inicio", + "OPAQUE_SCREENSHOTS": "Capturas Opacas", + "PAGE_SWAP": "Cambio de Página", "DYNAMIC_LOGO": "Logo Dinámico", "ON": "Encendido", "OFF": "Apagado", - "PACKAGE_INFO": "Información del Paquete", + "PACKAGE_INFO": "Inf. del Paquete", "TITLE": "Título", "VERSION": "Versión", "CREATOR": "Creador(es)", "ABOUT": "Acerca de", "CREDITS": "Créditos", - "OK": "Aceptar", + "OK": "Ok", "BACK": "Atrás", + "HIDE": "Ocultar", + "CANCEL": "Cancelar", "REBOOT_TO": "Reiniciar a", "REBOOT": "Reiniciar", "SHUTDOWN": "Apagar", "BOOT_ENTRY": "Entrada de arranque", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "178", "SETTINGS_MENU": "Menú Config.", "SCRIPT_OVERLAY": "Superposición Script", "STAR_FAVORITE": "Favorito", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "en Menú Principal", "ON_A_COMMAND": "en un comando", "ON_OVERLAY_PACKAGE": "en paquete/superp.", - "EFFECTS": "Efectos", + "FEATURES": "Funciones", "SWIPE_TO_OPEN": "Desliza para abrir", "RIGHT_SIDE_MODE": "Modo derecho", "PROGRESS_ANIMATION": "Animación de progreso", diff --git a/config/ultrahand/lang/fr.json b/config/ultrahand/lang/fr.json index 0c52f79..d269c7a 100644 --- a/config/ultrahand/lang/fr.json +++ b/config/ultrahand/lang/fr.json @@ -9,12 +9,14 @@ "DUTCH": "Néerlandais", "PORTUGUESE": "Portugais", "RUSSIAN": "Russe", + "UKRAINIAN": "Ukrainien", "POLISH": "Polonais", "SIMPLIFIED_CHINESE": "Chinois Simplifié", "TRADITIONAL_CHINESE": "Chinois Traditionnel", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Sélection non disponible", "OVERLAYS": "Superpositions", + "OVERLAYS_ABBR": "Superp.s", "OVERLAY": "Superposition", "HIDDEN_OVERLAYS": "Superpositions Cachées", "PACKAGES": "Paquets", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Paramètres principaux", "UI_SETTINGS": "Paramètres de l'interface utilisateur", "WIDGET": "Widget", + "WIDGET_ITEMS": "Éléments du Widget", + "WIDGET_SETTINGS": "Paramètres du Widget", "CLOCK": "Horloge", "BATTERY": "Batterie", "SOC_TEMPERATURE": "Température SOC", "PCB_TEMPERATURE": "Température PCB", + "BACKDROP": "Fond", + "DYNAMIC_COLORS": "Couleurs Dynamiques", + "CENTER_ALIGNMENT": "Alignement au Centre", + "EXTENDED_BACKDROP": "Fond Étendu", "MISCELLANEOUS": "Divers", "MENU_ITEMS": "Éléments du menu", "USER_GUIDE": "Guide de l'utilisateur", + "SHOW_HIDDEN": "Afficher Cachés", "VERSION_LABELS": "Étiquettes de version", "KEY_COMBO": "Combinaison de touches", + "MODE": "Mode", "LANGUAGE": "Langue", "OVERLAY_INFO": "Informations sur la superposition", "SOFTWARE_UPDATE": "Mise à jour logicielle", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "Étiquettes propres", "OVERLAY_VERSIONS": "Étiquettes de superposition", "PACKAGE_VERSIONS": "Étiquettes de paquet", + "LAUNCH_COMBOS": "Combinaisons de Lancement", "OPAQUE_SCREENSHOTS": "Captures D’écran Opaques", "PAGE_SWAP": "Échange de Page", "DYNAMIC_LOGO": "Logo Dynamique", @@ -83,21 +94,23 @@ "CREDITS": "Crédits", "OK": "OK", "BACK": "Retour", + "HIDE": "Masquer", + "CANCEL": "Annuler", "REBOOT_TO": "Redémarrer vers", "REBOOT": "Redémarrer", "SHUTDOWN": "Arrêter", "BOOT_ENTRY": "Entrée de Démarrage", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "151", "SETTINGS_MENU": "Menu Paramètres", - "SCRIPT_OVERLAY": "Superposition Script", + "SCRIPT_OVERLAY": "Sup. Script", "STAR_FAVORITE": "Favori/Étoile", "APP_SETTINGS": "Paramètres Appli", "ON_MAIN_MENU": "sur Menu Principal", "ON_A_COMMAND": "sur une commande", "ON_OVERLAY_PACKAGE": "sur un package/overlay", - "EFFECTS": "Effets", + "FEATURES": "Fonctionnalités", "SWIPE_TO_OPEN": "Glisser pour Ouvrir", "RIGHT_SIDE_MODE": "Mode Côté Droit", "PROGRESS_ANIMATION": "Animation de progression", diff --git a/config/ultrahand/lang/it.json b/config/ultrahand/lang/it.json index 8d4d5dc..f284823 100644 --- a/config/ultrahand/lang/it.json +++ b/config/ultrahand/lang/it.json @@ -9,12 +9,14 @@ "DUTCH": "Olandese", "PORTUGUESE": "Portoghese", "RUSSIAN": "Russo", + "UKRAINIAN": "Ucraino", "POLISH": "Polacco", "SIMPLIFIED_CHINESE": "Cinese Semplificato", "TRADITIONAL_CHINESE": "Cinese Tradizionale", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Selezione non disponibile", "OVERLAYS": "Sovrapposizioni", + "OVERLAYS_ABBR": "Sovrap.s", "OVERLAY": "Sovrapposizione", "HIDDEN_OVERLAYS": "Sovrapposizioni nascoste", "PACKAGES": "Pacchetti", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Impostazioni Principali", "UI_SETTINGS": "Impostazioni UI", "WIDGET": "Widget", + "WIDGET_ITEMS": "Elementi del Widget", + "WIDGET_SETTINGS": "Impostazioni del Widget", "CLOCK": "Orologio", "BATTERY": "Batteria", "SOC_TEMPERATURE": "Temperatura SOC", "PCB_TEMPERATURE": "Temperatura PCB", + "BACKDROP": "Sfondo", + "DYNAMIC_COLORS": "Colori Dinamici", + "CENTER_ALIGNMENT": "Allineamento al Centro", + "EXTENDED_BACKDROP": "Sfondo Esteso", "MISCELLANEOUS": "Varie", "MENU_ITEMS": "Elementi del menu", "USER_GUIDE": "Guida dell'utente", + "SHOW_HIDDEN": "Mostra Nascosti", "VERSION_LABELS": "Etichette di Versione", "KEY_COMBO": "Combinazione di Tasti", + "MODE": "Modalità", "LANGUAGE": "Lingua", "OVERLAY_INFO": "Informazioni Overlay", "SOFTWARE_UPDATE": "Aggiornamento Software", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "Etichette Pulite", "OVERLAY_VERSIONS": "Etichette Sovrapposte", "PACKAGE_VERSIONS": "Etichette Pacchetto", + "LAUNCH_COMBOS": "Combinazioni di Avvio", "OPAQUE_SCREENSHOTS": "Screenshot Opachi", "PAGE_SWAP": "Scambio di Pagina", "DYNAMIC_LOGO": "Logo Dinamico", @@ -83,13 +94,15 @@ "CREDITS": "Crediti", "OK": "OK", "BACK": "Indietro", + "HIDE": "Nascondi", + "CANCEL": "Annulla", "REBOOT_TO": "Riavvia In", "REBOOT": "Riavvia", "SHUTDOWN": "Spegni", "BOOT_ENTRY": "Voce di Avvio", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "166", "SETTINGS_MENU": "Menu Impostazioni", "SCRIPT_OVERLAY": "Overlay Script", "STAR_FAVORITE": "Preferito", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "nel Menu Principale", "ON_A_COMMAND": "su un comando", "ON_OVERLAY_PACKAGE": "su overlay/pacchetto", - "EFFECTS": "Effetti", + "FEATURES": "Funzionalità", "SWIPE_TO_OPEN": "Scorri per Aprire", "RIGHT_SIDE_MODE": "Modalità Lato Destro", "PROGRESS_ANIMATION": "Animazione di progresso", diff --git a/config/ultrahand/lang/ja.json b/config/ultrahand/lang/ja.json index 8ac7865..54c1fe3 100644 --- a/config/ultrahand/lang/ja.json +++ b/config/ultrahand/lang/ja.json @@ -9,12 +9,14 @@ "DUTCH": "オランダ語", "PORTUGUESE": "ポルトガル語", "RUSSIAN": "ロシア語", + "UKRAINIAN": "ウクライナ語", "POLISH": "ポーランド語", "SIMPLIFIED_CHINESE": "簡体字中国語", "TRADITIONAL_CHINESE": "繁体字中国語", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "利用不可", "OVERLAYS": "オーバーレイ", + "OVERLAYS_ABBR": "オーバーレイ", "OVERLAY": "オーバーレイ", "HIDDEN_OVERLAYS": "非表示のオーバーレイ", "PACKAGES": "パッケージ", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "メイン設定", "UI_SETTINGS": "UI設定", "WIDGET": "ウィジェット", + "WIDGET_ITEMS": "ウィジェット項目", + "WIDGET_SETTINGS": "ウィジェット設定", "CLOCK": "時計", "BATTERY": "バッテリー", "SOC_TEMPERATURE": "SOC温度", "PCB_TEMPERATURE": "PCB温度", + "BACKDROP": "背景", + "DYNAMIC_COLORS": "ダイナミックカラー", + "CENTER_ALIGNMENT": "中央揃え", + "EXTENDED_BACKDROP": "拡張背景", "MISCELLANEOUS": "その他", "MENU_ITEMS": "メニューアイテム", "USER_GUIDE": "ユーザーガイド", + "SHOW_HIDDEN": "非表示を表示", "VERSION_LABELS": "バージョンラベル", "KEY_COMBO": "キーコンボ", + "MODE": "モード", "LANGUAGE": "言語", "OVERLAY_INFO": "オーバーレイ情報", "SOFTWARE_UPDATE": "ソフトウェアアップデート", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "クリーンバージョン", "OVERLAY_VERSIONS": "オーバーレイバージョン", "PACKAGE_VERSIONS": "パッケージバージョン", + "LAUNCH_COMBOS": "起動コンボ", "OPAQUE_SCREENSHOTS": "不透明なスクリーンショット", "PAGE_SWAP": "ページ切り替え", "DYNAMIC_LOGO": "動的ロゴ", @@ -83,13 +94,15 @@ "CREDITS": "クレジット", "OK": "決定", "BACK": "戻る", + "HIDE": "非表示", + "CANCEL": "キャンセル", "REBOOT_TO": "再起動先", "REBOOT": "再起動", "SHUTDOWN": "シャットダウン", "BOOT_ENTRY": "ブートエントリ", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "190", + "USERGUIDE_OFFSET": "198", "SETTINGS_MENU": "設定メニュー", "SCRIPT_OVERLAY": "スクリプトOL", "STAR_FAVORITE": "スター/お気に入り", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "メインメニューで", "ON_A_COMMAND": "コマンド実行時に", "ON_OVERLAY_PACKAGE": "オンOL/PK", - "EFFECTS": "エフェクト", + "FEATURES": "機能", "SWIPE_TO_OPEN": "スワイプして開く", "RIGHT_SIDE_MODE": "右側モード", "PROGRESS_ANIMATION": "進行状況のアニメーション", diff --git a/config/ultrahand/lang/ko.json b/config/ultrahand/lang/ko.json index e3db070..335124a 100644 --- a/config/ultrahand/lang/ko.json +++ b/config/ultrahand/lang/ko.json @@ -9,12 +9,14 @@ "DUTCH": "네덜란드어", "PORTUGUESE": "포르투갈어", "RUSSIAN": "러시아어", + "UKRAINIAN": "우크라이나어", "POLISH": "폴란드어", "SIMPLIFIED_CHINESE": "간체 중국어", "TRADITIONAL_CHINESE": "번체 중국어", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "사용 불가", "OVERLAYS": "오버레이", + "OVERLAYS_ABBR": "오버레이", "OVERLAY": "오버레이", "HIDDEN_OVERLAYS": "숨겨진 오버레이", "PACKAGES": "패키지", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "기본 설정", "UI_SETTINGS": "UI 설정", "WIDGET": "위젯", + "WIDGET_ITEMS": "위젯 항목", + "WIDGET_SETTINGS": "위젯 설정", "CLOCK": "시계", "BATTERY": "배터리", "SOC_TEMPERATURE": "SOC 온도", "PCB_TEMPERATURE": "PCB 온도", + "BACKDROP": "배경", + "DYNAMIC_COLORS": "동적 색상", + "CENTER_ALIGNMENT": "가운데 정렬", + "EXTENDED_BACKDROP": "확장 배경", "MISCELLANEOUS": "기타", "MENU_ITEMS": "메뉴 항목", "USER_GUIDE": "사용자 가이드", + "SHOW_HIDDEN": "숨김 항목 표시", "VERSION_LABELS": "버전 라벨", "KEY_COMBO": "키 조합", + "MODE": "모드", "LANGUAGE": "언어", "OVERLAY_INFO": "오버레이 정보", "SOFTWARE_UPDATE": "소프트웨어 업데이트", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "정리된 라벨", "OVERLAY_VERSIONS": "오버레이 라벨", "PACKAGE_VERSIONS": "패키지 라벨", + "LAUNCH_COMBOS": "실행 콤보", "OPAQUE_SCREENSHOTS": "불투명한 스크린샷", "PAGE_SWAP": "페이지 전환", "DYNAMIC_LOGO": "동적 로고", @@ -83,13 +94,15 @@ "CREDITS": "크레딧", "OK": "확인", "BACK": "뒤로", + "HIDE": "숨기기", + "CANCEL": "취소", "REBOOT_TO": "재부팅 대상", "REBOOT": "재부팅", "SHUTDOWN": "종료", "BOOT_ENTRY": "부트 항목", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "174", "SETTINGS_MENU": "설정 메뉴", "SCRIPT_OVERLAY": "스크립트 오버레이", "STAR_FAVORITE": "별 표시/즐겨찾기", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "메인 메뉴", "ON_A_COMMAND": "명령어", "ON_OVERLAY_PACKAGE": "오버레이/패키지", - "EFFECTS": "효과", + "FEATURES": "기능", "SWIPE_TO_OPEN": "스와이프하여 열기", "RIGHT_SIDE_MODE": "오른쪽 모드", "PROGRESS_ANIMATION": "진행 애니메이션", diff --git a/config/ultrahand/lang/nl.json b/config/ultrahand/lang/nl.json index d6b7e0f..4fd45f4 100644 --- a/config/ultrahand/lang/nl.json +++ b/config/ultrahand/lang/nl.json @@ -9,12 +9,14 @@ "DUTCH": "Nederlands", "PORTUGUESE": "Portugees", "RUSSIAN": "Russisch", + "UKRAINIAN": "Oekraïens", "POLISH": "Pools", "SIMPLIFIED_CHINESE": "Vereenvoudigd Chinees", "TRADITIONAL_CHINESE": "Traditioneel Chinees", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Niet beschikbaar", "OVERLAYS": "Overlays", + "OVERLAYS_ABBR": "Overlays", "OVERLAY": "Overlay", "HIDDEN_OVERLAYS": "Verborgen overlays", "PACKAGES": "Pakketten", @@ -23,7 +25,7 @@ "HIDDEN": "Verborgen", "HIDE_OVERLAY": "Verberg Overlay", "HIDE_PACKAGE": "Verberg Pakket", - "LAUNCH_ARGUMENTS": "Start Argumenten", + "LAUNCH_ARGUMENTS": "Startargumenten", "BOOT_COMMANDS": "Opstartcommando's", "EXIT_COMMANDS": "Afsluitcommando's", "ERROR_LOGGING": "Foutlogboek", @@ -32,20 +34,28 @@ "MAIN_SETTINGS": "Hoofdinstellingen", "UI_SETTINGS": "UI-instellingen", "WIDGET": "Widget", + "WIDGET_ITEMS": "Widget-items", + "WIDGET_SETTINGS": "Widget-instellingen", "CLOCK": "Klok", "BATTERY": "Batterij", "SOC_TEMPERATURE": "SOC Temperatuur", "PCB_TEMPERATURE": "PCB Temperatuur", + "BACKDROP": "Achtergrond", + "DYNAMIC_COLORS": "Dynamische kleuren", + "CENTER_ALIGNMENT": "Centrale uitlijning", + "EXTENDED_BACKDROP": "Uitgebreide achtergrond", "MISCELLANEOUS": "Overige", "MENU_ITEMS": "Menu-items", "USER_GUIDE": "Gebruikershandleiding", + "SHOW_HIDDEN": "Verborgen Tonen", "VERSION_LABELS": "Versie Labels", "KEY_COMBO": "Toetscombinatie", + "MODE": "Modus", "LANGUAGE": "Taal", "OVERLAY_INFO": "Overlay-informatie", - "SOFTWARE_UPDATE": "Software-update", - "UPDATE_ULTRAHAND": "Bijwerken Ultrahand", - "UPDATE_LANGUAGES": "Bijwerken Talen", + "SOFTWARE_UPDATE": "Software Bijwerken", + "UPDATE_ULTRAHAND": "Ultrahand Bijwerken", + "UPDATE_LANGUAGES": "Talen Bijwerken", "SYSTEM": "Systeem", "DEVICE_INFO": "Apparaatinformatie", "FIRMWARE": "Firmware", @@ -55,21 +65,22 @@ "VENDOR": "Leverancier", "MODEL": "Model", "STORAGE": "Opslag", - "NOTICE": "Kennisgeving", + "NOTICE": "Mededeling", "UTILIZES": "Gebruikt", "FREE": "vrij", "MEMORY_EXPANSION": "Geheugenuitbreiding", - "REBOOT_REQUIRED": "*Herstart vereist.", + "REBOOT_REQUIRED": "*Opnieuw opstarten vereist.", "LOCAL_IP": "Lokale IP", "WALLPAPER": "Achtergrondafbeelding", "THEME": "Thema", "DEFAULT": "standaard", "ROOT_PACKAGE": "Hoofdpakket", - "SORT_PRIORITY": "Sorteer prioriteit", + "SORT_PRIORITY": "Prioriteit sorteren", "FAILED_TO_OPEN": "Kon bestand niet openen", - "CLEAN_VERSIONS": "Schone Labels", - "OVERLAY_VERSIONS": "Overlay Labels", - "PACKAGE_VERSIONS": "Pakket Labels", + "CLEAN_VERSIONS": "Schone Versies", + "OVERLAY_VERSIONS": "Overlay Versies", + "PACKAGE_VERSIONS": "Pakket Versies", + "LAUNCH_COMBOS": "Startcombinaties", "OPAQUE_SCREENSHOTS": "Ondoorzichtige Screenshots", "PAGE_SWAP": "Pagina Wisselen", "DYNAMIC_LOGO": "Dynamisch Logo", @@ -80,16 +91,18 @@ "VERSION": "Versie", "CREATOR": "Maker(s)", "ABOUT": "Over", - "CREDITS": "Kredieten", + "CREDITS": "Credits", "OK": "OK", "BACK": "Terug", + "HIDE": "Verbergen", + "CANCEL": "Annuleren", "REBOOT_TO": "Herstart naar", - "REBOOT": "Herstarten", - "SHUTDOWN": "Afsluiten", - "BOOT_ENTRY": "Opstartinvoer", + "REBOOT": "Opnieuw opstarten", + "SHUTDOWN": "Uitzetten", + "BOOT_ENTRY": "Boot Entry", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "182", "SETTINGS_MENU": "Instellingen", "SCRIPT_OVERLAY": "Scriptoverlay", "STAR_FAVORITE": "Ster/Favoriet", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "op Hoofdmenu", "ON_A_COMMAND": "op een commando", "ON_OVERLAY_PACKAGE": "op overlay/pakket", - "EFFECTS": "Effecten", + "FEATURES": "Functies", "SWIPE_TO_OPEN": "Veeg om te Openen", "RIGHT_SIDE_MODE": "Rechterkant Modus", "PROGRESS_ANIMATION": "Voortgangsanimatie", @@ -121,13 +134,13 @@ "OCTOBER": "Oktober", "NOVEMBER": "November", "DECEMBER": "December", - "SUN": "Zon", - "MON": "Maa", - "TUE": "Din", + "SUN": "Zo", + "MON": "Ma", + "TUE": "Di", "WED": "Woe", - "THU": "Don", - "FRI": "Vri", - "SAT": "Zat", + "THU": "Do", + "FRI": "Vr", + "SAT": "Za", "JAN": "Jan", "FEB": "Feb", "MAR": "Mrt", diff --git a/config/ultrahand/lang/pl.json b/config/ultrahand/lang/pl.json index 4cfc45b..bf04d9e 100644 --- a/config/ultrahand/lang/pl.json +++ b/config/ultrahand/lang/pl.json @@ -9,12 +9,14 @@ "DUTCH": "Niderlandzki", "PORTUGUESE": "Portugalski", "RUSSIAN": "Rosyjski", + "UKRAINIAN": "Ukraiński", "POLISH": "Polski", "SIMPLIFIED_CHINESE": "Uproszczony chiński", "TRADITIONAL_CHINESE": "Tradycyjny chiński", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Niedostępne", "OVERLAYS": "Nakładki", + "OVERLAYS_ABBR": "Nakładki", "OVERLAY": "Nakładka", "HIDDEN_OVERLAYS": "Ukryte Nakładki", "PACKAGES": "Paczki", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Ustawienia główne", "UI_SETTINGS": "Ustawienia interfejsu", "WIDGET": "Widżet", + "WIDGET_ITEMS": "Elementy widżetu", + "WIDGET_SETTINGS": "Ustawienia widżetu", "CLOCK": "Zegar", "BATTERY": "Bateria", "SOC_TEMPERATURE": "Temperatura SOC", "PCB_TEMPERATURE": "Temperatura PCB", + "BACKDROP": "Tło", + "DYNAMIC_COLORS": "Dynamiczne kolory", + "CENTER_ALIGNMENT": "Wyrównanie do środka", + "EXTENDED_BACKDROP": "Rozszerzone tło", "MISCELLANEOUS": "Różne", "MENU_ITEMS": "Elementy menu", "USER_GUIDE": "Przewodnik użytkownika", + "SHOW_HIDDEN": "Pokaż ukryte", "VERSION_LABELS": "Etykiety wersji", "KEY_COMBO": "Kombinacja klawiszy", + "MODE": "Tryb", "LANGUAGE": "Język", "OVERLAY_INFO": "Informacje o nakładce", "SOFTWARE_UPDATE": "Aktualizacja oprogramowania", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "Usuń Prefiks Wersji", "OVERLAY_VERSIONS": "Wersje Nakładek", "PACKAGE_VERSIONS": "Wersje Paczek", + "LAUNCH_COMBOS": "Kombinacje startowe", "OPAQUE_SCREENSHOTS": "Nieprzezroczyste zrzuty ekranu", "PAGE_SWAP": "Zamiana Stron", "DYNAMIC_LOGO": "Dynamiczne Logo", @@ -83,13 +94,15 @@ "CREDITS": "Pomoc", "OK": "OK", "BACK": "Wstecz", + "HIDE": "Ukryj", + "CANCEL": "Anuluj", "REBOOT_TO": "Uruchom ponownie do", "REBOOT": "Restartuj", "SHUTDOWN": "Zamknij", "BOOT_ENTRY": "Boot Entry", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "162", + "USERGUIDE_OFFSET": "173", "SETTINGS_MENU": "Menu ustawień", "SCRIPT_OVERLAY": "Nakładka skryptu", "STAR_FAVORITE": "Gwiazda/Ulubione", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "w menu głównym", "ON_A_COMMAND": "na poleceniu", "ON_OVERLAY_PACKAGE": "na nakładce/paczce", - "EFFECTS": "Efekty", + "FEATURES": "Funkcje", "SWIPE_TO_OPEN": "Przesuń, aby otworzyć", "RIGHT_SIDE_MODE": "Tryb prawej strony", "PROGRESS_ANIMATION": "Animacja postępu", diff --git a/config/ultrahand/lang/pt.json b/config/ultrahand/lang/pt.json index 21cc3d3..11cf8da 100644 --- a/config/ultrahand/lang/pt.json +++ b/config/ultrahand/lang/pt.json @@ -9,12 +9,14 @@ "DUTCH": "Holandês", "PORTUGUESE": "Português", "RUSSIAN": "Russo", + "UKRAINIAN": "Ucraniano", "POLISH": "Polonês", "SIMPLIFIED_CHINESE": "Chinês Simplificado", "TRADITIONAL_CHINESE": "Chinês Tradicional", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Indisponível", "OVERLAYS": "Sobreposições", + "OVERLAYS_ABBR": "Sobrep.s", "OVERLAY": "Sobreposição", "HIDDEN_OVERLAYS": "Sobreposições Ocultas", "PACKAGES": "Pacotes", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "Configurações Principais", "UI_SETTINGS": "Configurações de Interface do Usuário", "WIDGET": "Widget", + "WIDGET_ITEMS": "Itens do widget", + "WIDGET_SETTINGS": "Configurações do widget", "CLOCK": "Relógio", "BATTERY": "Bateria", "SOC_TEMPERATURE": "Temperatura do SOC", "PCB_TEMPERATURE": "Temperatura da PCB", + "BACKDROP": "Fundo", + "DYNAMIC_COLORS": "Cores dinâmicas", + "CENTER_ALIGNMENT": "Alinhamento central", + "EXTENDED_BACKDROP": "Plano de fundo estendido", "MISCELLANEOUS": "Diversos", "MENU_ITEMS": "Itens do Menu", "USER_GUIDE": "Guia do Usuário", + "SHOW_HIDDEN": "Mostrar Ocultos", "VERSION_LABELS": "Rótulos de Versão", "KEY_COMBO": "Combinação de Teclas", + "MODE": "Modo", "LANGUAGE": "Idioma", "OVERLAY_INFO": "Informações da Sobreposição", "SOFTWARE_UPDATE": "Atualização de Software", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "Rótulos Limpos", "OVERLAY_VERSIONS": "Rótulos de Sobreposição", "PACKAGE_VERSIONS": "Rótulos de Pacote", + "LAUNCH_COMBOS": "Combinações de lançamento", "OPAQUE_SCREENSHOTS": "Capturas de Tela Opaques", "PAGE_SWAP": "Troca de Página", "DYNAMIC_LOGO": "Logo Dinâmico", @@ -83,13 +94,15 @@ "CREDITS": "Créditos", "OK": "OK", "BACK": "Voltar", + "HIDE": "Esconder", + "CANCEL": "Cancelar", "REBOOT_TO": "Reiniciar para", "REBOOT": "Reiniciar", "SHUTDOWN": "Desligar", "BOOT_ENTRY": "Entrada de Inicialização", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "154", + "USERGUIDE_OFFSET": "136", "SETTINGS_MENU": "Configurações", "SCRIPT_OVERLAY": "Sobreposição", "STAR_FAVORITE": "Favorito", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "no Menu", "ON_A_COMMAND": "em comando", "ON_OVERLAY_PACKAGE": "em sobreposição/pacote", - "EFFECTS": "Efeitos", + "FEATURES": "Recursos", "SWIPE_TO_OPEN": "Swipe to Open", "RIGHT_SIDE_MODE": "Right-side Mode", "PROGRESS_ANIMATION": "Animação de progresso", diff --git a/config/ultrahand/lang/ru.json b/config/ultrahand/lang/ru.json index 201a78b..b2f0555 100644 --- a/config/ultrahand/lang/ru.json +++ b/config/ultrahand/lang/ru.json @@ -9,43 +9,53 @@ "DUTCH": "Голландский", "PORTUGUESE": "Португальский", "RUSSIAN": "Русский", + "UKRAINIAN": "Украинский", "POLISH": "Польский", - "SIMPLIFIED_CHINESE": "Упрощенный китайский", + "SIMPLIFIED_CHINESE": "Упрощённый китайский", "TRADITIONAL_CHINESE": "Традиционный китайский", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "Недоступно", "OVERLAYS": "Оверлеи", + "OVERLAYS_ABBR": "Оверлеи", "OVERLAY": "Оверлей", - "HIDDEN_OVERLAYS": "Скрытые Оверлеи", + "HIDDEN_OVERLAYS": "Скрытые оверлеи", "PACKAGES": "Пакеты", "PACKAGE": "Пакет", - "HIDDEN_PACKAGES": "Скрытые Пакеты", + "HIDDEN_PACKAGES": "Скрытые пакеты", "HIDDEN": "Скрыто", - "HIDE_OVERLAY": "Скрыть Оверлей", - "HIDE_PACKAGE": "Скрыть Пакет", - "LAUNCH_ARGUMENTS": "Параметры Запуска", + "HIDE_OVERLAY": "Скрыть оверлей", + "HIDE_PACKAGE": "Скрыть пакет", + "LAUNCH_ARGUMENTS": "Параметры запуска", "BOOT_COMMANDS": "Команды загрузки", "EXIT_COMMANDS": "Команды выхода", "ERROR_LOGGING": "Журнал ошибок", "COMMANDS": "Команды", "SETTINGS": "Настройки", - "MAIN_SETTINGS": "Главные Настройки", - "UI_SETTINGS": "Настройки Интерфейса", + "MAIN_SETTINGS": "Главные настройки", + "UI_SETTINGS": "Настройки интерфейса", "WIDGET": "Виджеты", + "WIDGET_ITEMS": "Элементы виджета", + "WIDGET_SETTINGS": "Настройки виджета", "CLOCK": "Часы", "BATTERY": "Аккумулятор", "SOC_TEMPERATURE": "Температура SOC", "PCB_TEMPERATURE": "Температура PCB", + "BACKDROP": "Фон", + "DYNAMIC_COLORS": "Динамические цвета", + "CENTER_ALIGNMENT": "Выравнивание по центру", + "EXTENDED_BACKDROP": "Расширенный фон", "MISCELLANEOUS": "Прочее", - "MENU_ITEMS": "Элементы Меню", + "MENU_ITEMS": "Элементы меню", "USER_GUIDE": "Руководство", - "VERSION_LABELS": "Метки Версий", + "SHOW_HIDDEN": "Показать скрытые", + "VERSION_LABELS": "Метки версий", "KEY_COMBO": "Комбинация", + "MODE": "Режим", "LANGUAGE": "Язык", "OVERLAY_INFO": "Информация", "SOFTWARE_UPDATE": "Обновление", "UPDATE_ULTRAHAND": "Обновить Ultrahand", - "UPDATE_LANGUAGES": "Обновить Локализацию", + "UPDATE_LANGUAGES": "Обновить локализацию", "SYSTEM": "Система", "DEVICE_INFO": "Данные устройства", "FIRMWARE": "Прошивка", @@ -57,20 +67,21 @@ "STORAGE": "Хранилище", "NOTICE": "Уведомление", "UTILIZES": "Использует", - "FREE": "свободно", + "FREE": "Свободно", "MEMORY_EXPANSION": "Расширение памяти", "REBOOT_REQUIRED": "*Требуется перезагрузка.", "LOCAL_IP": "Локальный IP", "WALLPAPER": "Обои", "THEME": "Тема", "DEFAULT": "Стандартная", - "ROOT_PACKAGE": "Корневой Пакет", - "SORT_PRIORITY": "Приоритет Сортировки", + "ROOT_PACKAGE": "Корневой пакет", + "SORT_PRIORITY": "Приоритет сортировки", "FAILED_TO_OPEN": "Файл не открывается", - "CLEAN_VERSIONS": "Аккуратные Версии", - "OVERLAY_VERSIONS": "Версии Оверлеев", - "PACKAGE_VERSIONS": "Версии Пакетов", - "OPAQUE_SCREENSHOTS": "Непрозрачные Скриншоты", + "CLEAN_VERSIONS": "Аккуратные версии", + "OVERLAY_VERSIONS": "Версии оверлеев", + "PACKAGE_VERSIONS": "Версии пакетов", + "LAUNCH_COMBOS": "Комбинации запуска", + "OPAQUE_SCREENSHOTS": "Непрозрачные скриншоты", "PAGE_SWAP": "Переключение страниц", "DYNAMIC_LOGO": "Динамический логотип", "ON": "Вкл", @@ -83,24 +94,26 @@ "CREDITS": "Заслуги", "OK": "ОК", "BACK": "Назад", + "HIDE": "Скрыть", + "CANCEL": "Отмена", "REBOOT_TO": "Перезагрузить в", "REBOOT": "Перезагрузка", "SHUTDOWN": "Выключение", "BOOT_ENTRY": "Запись загрузки", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "172", + "USERGUIDE_OFFSET": "177", "SETTINGS_MENU": "Настройки", - "SCRIPT_OVERLAY": "Смотреть Скрипты", + "SCRIPT_OVERLAY": "Смотреть скрипты", "STAR_FAVORITE": "Избранное", - "APP_SETTINGS": "Настройки Пункта", - "ON_MAIN_MENU": "В Главном Меню", - "ON_A_COMMAND": "на команде", - "ON_OVERLAY_PACKAGE": "на оверлее/пакете", - "EFFECTS": "Эффекты", + "APP_SETTINGS": "Настройки пункта", + "ON_MAIN_MENU": "В главном меню", + "ON_A_COMMAND": "На команде", + "ON_OVERLAY_PACKAGE": "На оверлее/пакете", + "FEATURES": "Функции", "SWIPE_TO_OPEN": "Свайп для открытия", "RIGHT_SIDE_MODE": "Режим правой стороны", - "PROGRESS_ANIMATION": "Анимация Прогресса", + "PROGRESS_ANIMATION": "Анимация прогресса", "EMPTY": "Пустой", "SUNDAY": "Воскресенье", "MONDAY": "Понедельник", diff --git a/config/ultrahand/lang/uk.json b/config/ultrahand/lang/uk.json new file mode 100644 index 0000000..d436167 --- /dev/null +++ b/config/ultrahand/lang/uk.json @@ -0,0 +1,156 @@ +{ + "ENGLISH": "Англійська", + "SPANISH": "Іспанська", + "FRENCH": "Французька", + "GERMAN": "Німецька", + "JAPANESE": "Японська", + "KOREAN": "Корейська", + "ITALIAN": "Італійська", + "DUTCH": "Голландська", + "PORTUGUESE": "Португальська", + "RUSSIAN": "Російська", + "UKRAINIAN": "Українська", + "POLISH": "Польська", + "SIMPLIFIED_CHINESE": "Спрощена китайська", + "TRADITIONAL_CHINESE": "Традиційна китайська", + "DEFAULT_CHAR_WIDTH": "0.33", + "UNAVAILABLE_SELECTION": "Недоступно", + "OVERLAYS": "Оверлеї", + "OVERLAYS_ABBR": "Оверлеї", + "OVERLAY": "Оверлей", + "HIDDEN_OVERLAYS": "Приховані оверлеї", + "PACKAGES": "Пакети", + "PACKAGE": "Пакет", + "HIDDEN_PACKAGES": "Приховані пакети", + "HIDDEN": "Приховано", + "HIDE_OVERLAY": "Сховати оверлей", + "HIDE_PACKAGE": "Сховати пакет", + "LAUNCH_ARGUMENTS": "Параметри запуску", + "BOOT_COMMANDS": "Команди завантаження", + "EXIT_COMMANDS": "Команди виходу", + "ERROR_LOGGING": "Журнал помилок", + "COMMANDS": "Команди", + "SETTINGS": "Налаштування", + "MAIN_SETTINGS": "Головні налаштування", + "UI_SETTINGS": "Налаштування інтерфейсу", + "WIDGET": "Віджет", + "WIDGET_ITEMS": "Елементи віджета", + "WIDGET_SETTINGS": "Налаштування віджета", + "CLOCK": "Годинник", + "BATTERY": "Акумулятор", + "SOC_TEMPERATURE": "Температура SOC", + "PCB_TEMPERATURE": "Температура PCB", + "BACKDROP": "Фон", + "DYNAMIC_COLORS": "Динамічні кольори", + "CENTER_ALIGNMENT": "Вирівнювання по центру", + "EXTENDED_BACKDROP": "Розширений фон", + "MISCELLANEOUS": "Інше", + "MENU_ITEMS": "Пункти меню", + "USER_GUIDE": "Інструкція", + "SHOW_HIDDEN": "Показати приховані", + "VERSION_LABELS": "Мітки версій", + "KEY_COMBO": "Комбінація клавіш", + "MODE": "Режим", + "LANGUAGE": "Мова", + "OVERLAY_INFO": "Інформація", + "SOFTWARE_UPDATE": "Оновлення", + "UPDATE_ULTRAHAND": "Оновити Ultrahand", + "UPDATE_LANGUAGES": "Оновити локалізацію", + "SYSTEM": "Система", + "DEVICE_INFO": "Дані пристрою", + "FIRMWARE": "Прошивка", + "BOOTLOADER": "Завантажувач", + "HARDWARE": "Обладнання", + "MEMORY": "Памʼять", + "VENDOR": "Виробник", + "MODEL": "Модель", + "STORAGE": "Сховище", + "NOTICE": "Сповіщення", + "UTILIZES": "Використовує", + "FREE": "Вільно", + "MEMORY_EXPANSION": "Розширення памʼяті", + "REBOOT_REQUIRED": "*Потрібне перезавантаження.", + "LOCAL_IP": "Локальний IP", + "WALLPAPER": "Шпалери", + "THEME": "Тема", + "DEFAULT": "Стандартна", + "ROOT_PACKAGE": "Кореневий пакет", + "SORT_PRIORITY": "Пріоритет сортування", + "FAILED_TO_OPEN": "Файл не відкривається", + "CLEAN_VERSIONS": "Чисті версії", + "OVERLAY_VERSIONS": "Версії оверлеїв", + "PACKAGE_VERSIONS": "Версії пакетів", + "LAUNCH_COMBOS": "Комбінації запуску", + "OPAQUE_SCREENSHOTS": "Непрозорі скріншоти", + "PAGE_SWAP": "Перемикання сторінок", + "DYNAMIC_LOGO": "Динамічний логотип", + "ON": "Увімк.", + "OFF": "Вимк.", + "PACKAGE_INFO": "Інформація", + "TITLE": "Назва", + "VERSION": "Версія", + "CREATOR": "Автор(и)", + "ABOUT": "Опис", + "CREDITS": "Заслуги", + "OK": "ОК", + "BACK": "Назад", + "HIDE": "Приховати", + "CANCEL": "Скасувати", + "REBOOT_TO": "Перезавантажити в", + "REBOOT": "Перезавантаження", + "SHUTDOWN": "Вимкнення", + "BOOT_ENTRY": "Запис завантаження", + "GAP_1": " ", + "GAP_2": " ", + "USERGUIDE_OFFSET": "184", + "SETTINGS_MENU": "Налаштування", + "SCRIPT_OVERLAY": "Перегляд скриптів", + "STAR_FAVORITE": "Улюблене", + "APP_SETTINGS": "Налаштування пункту", + "ON_MAIN_MENU": "в головному меню", + "ON_A_COMMAND": "на команді", + "ON_OVERLAY_PACKAGE": "на оверлеї/пакеті", + "FEATURES": "Функції", + "SWIPE_TO_OPEN": "Проведіть для відкриття", + "RIGHT_SIDE_MODE": "Режим правої сторони", + "PROGRESS_ANIMATION": "Анімація прогресу", + "EMPTY": "Порожньо", + "SUNDAY": "Неділя", + "MONDAY": "Понеділок", + "TUESDAY": "Вівторок", + "WEDNESDAY": "Середа", + "THURSDAY": "Четвер", + "FRIDAY": "Пʼятниця", + "SATURDAY": "Субота", + "JANUARY": "Січень", + "FEBRUARY": "Лютий", + "MARCH": "Березень", + "APRIL": "Квітень", + "MAY": "Травень", + "JUNE": "Червень", + "JULY": "Липень", + "AUGUST": "Серпень", + "SEPTEMBER": "Вересень", + "OCTOBER": "Жовтень", + "NOVEMBER": "Листопад", + "DECEMBER": "Грудень", + "SUN": "Нд", + "MON": "Пн", + "TUE": "Вт", + "WED": "Ср", + "THU": "Чт", + "FRI": "Пт", + "SAT": "Сб", + "JAN": "Січ", + "FEB": "Лют", + "MAR": "Бер", + "APR": "Квіт", + "MAY_ABBR": "Трав", + "JUN": "Чер", + "JUL": "Лип", + "AUG": "Серп", + "SEP": "Вер", + "OCT": "Жовт", + "NOV": "Лист", + "DEC": "Груд" +} diff --git a/config/ultrahand/lang/zh-cn.json b/config/ultrahand/lang/zh-cn.json index f969f1c..edf86d2 100644 --- a/config/ultrahand/lang/zh-cn.json +++ b/config/ultrahand/lang/zh-cn.json @@ -9,12 +9,14 @@ "DUTCH": "土耳其语", "PORTUGUESE": "葡萄牙语", "RUSSIAN": "俄语", + "UKRAINIAN": "乌克兰语", "POLISH": "波兰语", "SIMPLIFIED_CHINESE": "简体中文", "TRADITIONAL_CHINESE": "繁体中文", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "没有可供选择的文件", "OVERLAYS": "插件列表", + "OVERLAYS_ABBR": "插件列表", "OVERLAY": "插件", "HIDDEN_OVERLAYS": "不常用插件", "PACKAGES": "更多插件包", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "主要设置", "UI_SETTINGS": "界面风格设置", "WIDGET": "窗口组件设置", + "WIDGET_ITEMS": "小部件项", + "WIDGET_SETTINGS": "小部件设置", "CLOCK": "时间日期显示", "BATTERY": "电池电量显示", "SOC_TEMPERATURE": "芯片温度显示", "PCB_TEMPERATURE": "主板温度显示", + "BACKDROP": "背景", + "DYNAMIC_COLORS": "动态颜色", + "CENTER_ALIGNMENT": "居中对齐", + "EXTENDED_BACKDROP": "扩展背景", "MISCELLANEOUS": "其他模块设置", "MENU_ITEMS": "菜单功能显示", "USER_GUIDE": "用户指南", + "SHOW_HIDDEN": "显示隐藏项", "VERSION_LABELS": "版本标签显示", "KEY_COMBO": "设置按键组合", + "MODE": "模式", "LANGUAGE": "选择系统语言", "OVERLAY_INFO": "插件信息", "SOFTWARE_UPDATE": "项目更新菜单", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "刪除插件标签", "OVERLAY_VERSIONS": "插件版本显示", "PACKAGE_VERSIONS": "插件包版本显示", + "LAUNCH_COMBOS": "启动组合键", "OPAQUE_SCREENSHOTS": "不透明的截图”", "PAGE_SWAP": "页面切换", "DYNAMIC_LOGO": "动态徽标", @@ -83,13 +94,15 @@ "CREDITS": "贡献", "OK": "确定", "BACK": "返回", + "HIDE": "隐藏", + "CANCEL": "取消", "REBOOT_TO": "重启机器", "REBOOT": "重启机器", "SHUTDOWN": "关闭机器", "BOOT_ENTRY": "引导选项", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "136", + "USERGUIDE_OFFSET": "150", "SETTINGS_MENU": "项目主要设置", "SCRIPT_OVERLAY": "查看命令脚本", "STAR_FAVORITE": "设置偏好插件", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "在所有插件列表中", "ON_A_COMMAND": "在插件包的命令中", "ON_OVERLAY_PACKAGE": "在单个插件或者插件包中", - "EFFECTS": "命令效果显示", + "FEATURES": "功能", "SWIPE_TO_OPEN": "滑动打开", "RIGHT_SIDE_MODE": "右侧模式", "PROGRESS_ANIMATION": "进度条震动特效", diff --git a/config/ultrahand/lang/zh-tw.json b/config/ultrahand/lang/zh-tw.json index cd68c75..9224512 100644 --- a/config/ultrahand/lang/zh-tw.json +++ b/config/ultrahand/lang/zh-tw.json @@ -9,12 +9,14 @@ "DUTCH": "荷兰语", "PORTUGUESE": "葡萄牙语", "RUSSIAN": "俄语", + "UKRAINIAN": "烏克蘭語", "POLISH": "波蘭語", "SIMPLIFIED_CHINESE": "简体中文", "TRADITIONAL_CHINESE": "繁体中文", "DEFAULT_CHAR_WIDTH": "0.33", "UNAVAILABLE_SELECTION": "沒有可選擇的文件", "OVERLAYS": "插件列表", + "OVERLAYS_ABBR": "插件列表", "OVERLAY": "插件", "HIDDEN_OVERLAYS": "不常用插件", "PACKAGES": "更多插件包", @@ -32,15 +34,23 @@ "MAIN_SETTINGS": "主要設置", "UI_SETTINGS": "界面風格設置", "WIDGET": "窗口組件設置", + "WIDGET_ITEMS": "小工具項目", + "WIDGET_SETTINGS": "小工具設定", "CLOCK": "時間日期顯示", "BATTERY": "電池電量顯示", "SOC_TEMPERATURE": "芯片溫度顯示", "PCB_TEMPERATURE": "主板溫度顯示", + "BACKDROP": "背景", + "DYNAMIC_COLORS": "動態顏色", + "CENTER_ALIGNMENT": "置中對齊", + "EXTENDED_BACKDROP": "延伸背景", "MISCELLANEOUS": "其他模塊設置", "MENU_ITEMS": "菜單功能顯示", "USER_GUIDE": "用戶指南", + "SHOW_HIDDEN": "顯示隱藏項", "VERSION_LABELS": "版本標簽顯示", "KEY_COMBO": "設置按鍵組合", + "MODE": "模式", "LANGUAGE": "選擇系統語言", "OVERLAY_INFO": "插件信息", "SOFTWARE_UPDATE": "項目更新菜單", @@ -70,6 +80,7 @@ "CLEAN_VERSIONS": "刪除插件標簽", "OVERLAY_VERSIONS": "插件的標簽", "PACKAGE_VERSIONS": "插件包的標簽", + "LAUNCH_COMBOS": "啟動組合鍵", "OPAQUE_SCREENSHOTS": "不透明的截圖", "PAGE_SWAP": "頁面切換", "DYNAMIC_LOGO": "動態徽標", @@ -83,13 +94,15 @@ "CREDITS": "貢獻", "OK": "確定", "BACK": "返回", + "HIDE": "隱藏", + "CANCEL": "取消", "REBOOT_TO": "重新啟動到", "REBOOT": "重啟機器", "SHUTDOWN": "關閉機器", "BOOT_ENTRY": "啟動條目", "GAP_1": " ", "GAP_2": " ", - "USERGUIDE_OFFSET": "136", + "USERGUIDE_OFFSET": "150", "SETTINGS_MENU": "項目主要設置", "SCRIPT_OVERLAY": "查看命令脚本", "STAR_FAVORITE": "設置喜好插件", @@ -97,7 +110,7 @@ "ON_MAIN_MENU": "在所有插件列表中", "ON_A_COMMAND": "在插件包的命令中", "ON_OVERLAY_PACKAGE": "在單個插件或者插件包中", - "EFFECTS": "效果", + "FEATURES": "功能", "SWIPE_TO_OPEN": "滑動打開", "RIGHT_SIDE_MODE": "右側模式", "PROGRESS_ANIMATION": "進度動畫", diff --git a/hbmenu.nro b/hbmenu.nro index f08ca4d..f6bbd87 100644 Binary files a/hbmenu.nro and b/hbmenu.nro differ diff --git a/switch/.overlays/FPSLocker.ovl b/switch/.overlays/FPSLocker.ovl index d2200fa..5edec8b 100644 Binary files a/switch/.overlays/FPSLocker.ovl and b/switch/.overlays/FPSLocker.ovl differ diff --git a/switch/.overlays/Ultra.ovl b/switch/.overlays/Ultra.ovl index 8eba64c..50ea482 100644 Binary files a/switch/.overlays/Ultra.ovl and b/switch/.overlays/Ultra.ovl differ diff --git a/switch/.overlays/ovlEdiZon.ovl b/switch/.overlays/ovlEdiZon.ovl index 72a795d..5807b88 100644 Binary files a/switch/.overlays/ovlEdiZon.ovl and b/switch/.overlays/ovlEdiZon.ovl differ diff --git a/switch/.overlays/ovlSysmodules.ovl b/switch/.overlays/ovlSysmodules.ovl index 3b21d4d..4b62d4f 100644 Binary files a/switch/.overlays/ovlSysmodules.ovl and b/switch/.overlays/ovlSysmodules.ovl differ diff --git a/switch/.overlays/ovlmenu.ovl b/switch/.overlays/ovlmenu.ovl index d142164..d7602be 100644 Binary files a/switch/.overlays/ovlmenu.ovl and b/switch/.overlays/ovlmenu.ovl differ diff --git a/switch/.packages/boot_package.ini b/switch/.packages/boot_package.ini index f1077d1..3124994 100644 --- a/switch/.packages/boot_package.ini +++ b/switch/.packages/boot_package.ini @@ -1,6 +1,8 @@ [boot] clear hex_sum_cache +set-ini-val /config/sphaira/config.ini homebrew hide_sphaira 0 + del '/atmosphere/config_templates/' del '/atmosphere/contents/00FF0000636C6BFF/toolbox.json' diff --git a/switch/DBI/DBI.nro b/switch/DBI/DBI.nro index 987e411..d8e7998 100644 Binary files a/switch/DBI/DBI.nro and b/switch/DBI/DBI.nro differ