kefir786"
@@ -0,0 +1,210 @@
|
||||
# sys-clk-OC
|
||||
|
||||
Switch sysmodule allowing you to set cpu/gpu clocks according to the running application and docked state.
|
||||
|
||||
|
||||
## Clock table (MHz)
|
||||
|
||||
### CPU clocks
|
||||
|
||||
* 2397 → approx. OC max for Mariko
|
||||
* 2295
|
||||
* 2193
|
||||
* 2091 → OC max for Erista
|
||||
* 1963 → official and safe max for Mariko
|
||||
* 1887
|
||||
* 1785 → official boost mode, OC max for Erista
|
||||
* 1683
|
||||
* 1581
|
||||
* 1428
|
||||
* 1326
|
||||
* 1224 → sdev oc
|
||||
* 1122
|
||||
* 1020 → official docked & handheld
|
||||
* 918
|
||||
* 816
|
||||
* 714
|
||||
* 612
|
||||
|
||||
### GPU clocks
|
||||
|
||||
* 1305 → OC max for Mariko
|
||||
* 1267 → official max for Mariko
|
||||
* 1228
|
||||
* 1152
|
||||
* 1075
|
||||
* 998 → safe max for Mariko due to power draw
|
||||
* 921 → OC max for Erista
|
||||
* 844
|
||||
* 768 → official docked
|
||||
* 691
|
||||
* 614
|
||||
* 537
|
||||
* 460 → max handheld
|
||||
* 384 → official handheld
|
||||
* 307 → official handheld
|
||||
* 230
|
||||
* 153
|
||||
* 76 → boost mode
|
||||
|
||||
### MEM clocks
|
||||
|
||||
From Hekate Minerva module [sys_sdrammtc.c](https://github.com/CTCaer/hekate/blob/197ed8c319bd4132e4d7571ce037d4a27f806bba/modules/hekate_libsys_minerva/sys_sdrammtc.c#L67)
|
||||
|
||||
- ????
|
||||
- 2131 → max for Erista and official max for Mariko
|
||||
- 2099
|
||||
- 2064
|
||||
- 1996 → stable for Mariko
|
||||
- 1932
|
||||
- 1894
|
||||
- 1862 → official max for Erista; Mariko without timing adjustment
|
||||
- 1795
|
||||
- 1728
|
||||
- 1600 → official docked & official boost mode
|
||||
- 1331 → official handheld
|
||||
- 1065
|
||||
- 800
|
||||
- 665
|
||||
|
||||
## Capping
|
||||
|
||||
To protect the battery from excessive strain, clocks requested from config may be capped before applying, depending on your current profile:
|
||||
|
||||
### Erista (Safe)
|
||||
| | Handheld | Charging (USB) | Charging (Official) | Docked |
|
||||
|:-------:|:--------:|:--------------:|:-------------------:|:------:|
|
||||
| **MEM** | - | - | - | - |
|
||||
| **CPU** | 1785 | 1785 | 1785 | 1785 |
|
||||
| **GPU** | 460 | 768 | - | - |
|
||||
|
||||
|
||||
### Erista (Unsafe allowed)
|
||||
| | Handheld | Charging (USB) | Charging (Official) | Docked |
|
||||
|:-------:|:--------:|:--------------:|:-------------------:|:------:|
|
||||
| **MEM** | - | - | - | - |
|
||||
| **CPU** | 1785 | - | - | - |
|
||||
| **GPU** | 460 | 768 | - | - |
|
||||
|
||||
|
||||
### Mariko (Safe)
|
||||
| | Handheld | Charging (USB) | Charging (Official) | Docked |
|
||||
|:-------:|:--------:|:--------------:|:-------------------:|:------:|
|
||||
| **MEM** | - | - | - | - |
|
||||
| **CPU** | 1963 | 1963 | 1963 | 1963 |
|
||||
| **GPU** | 998 | 998 | 998 | 998 |
|
||||
|
||||
|
||||
### Mariko (Unsafe allowed)
|
||||
| | Handheld | Charging (USB) | Charging (Official) | Docked |
|
||||
|:-------:|:--------:|:--------------:|:-------------------:|:------:|
|
||||
| **MEM** | - | - | - | - |
|
||||
| **CPU** | - | - | - | - |
|
||||
| **GPU** | 998 | - | - | - |
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
The following instructions assumes you have a Nintendo Switch running Atmosphère, updated to at least the latest stable version.
|
||||
Copy the `atmosphere`, and `switch` folders at the root of your sdcard, overwriting files if prompted. Also copy the `config` folder if you're not updating, to include default settings.
|
||||
|
||||
**Note:** sys-clk-overlay requires to have [Tesla](https://gbatemp.net/threads/tesla-the-nintendo-switch-overlay-menu.557362/) installed and running
|
||||
|
||||
## Relevant files
|
||||
|
||||
* Config file allows one to set custom clocks per docked state and title id, described below
|
||||
|
||||
`/config/sys-clk/config.ini`
|
||||
|
||||
* Log file where the logs are written if enabled
|
||||
|
||||
`/config/sys-clk/log.txt`
|
||||
|
||||
* Log flag file enables log writing if file exists
|
||||
|
||||
`/config/sys-clk/log.flag`
|
||||
|
||||
* CSV file where the title id, profile, clocks and temperatures are written if enabled
|
||||
|
||||
`/config/sys-clk/context.csv`
|
||||
|
||||
* sys-clk overlay (accessible from anywhere by invoking the [Tesla menu](https://gbatemp.net/threads/tesla-the-nintendo-switch-overlay-menu.557362/))
|
||||
|
||||
`/switch/.overlays/sys-clk-overlay.ovl`
|
||||
|
||||
* sys-clk core sysmodule
|
||||
|
||||
`/atmosphere/contents/00FF0000636C6BFF/exefs.nsp`
|
||||
`/atmosphere/contents/00FF0000636C6BFF/flags/boot2.flag`
|
||||
|
||||
## Config
|
||||
|
||||
Presets can be customized by adding them to the ini config file located at `/config/sys-clk/config.ini`, using the following template for each app
|
||||
|
||||
```
|
||||
[Application Title ID]
|
||||
docked_cpu=
|
||||
docked_gpu=
|
||||
docked_mem=
|
||||
handheld_charging_cpu=
|
||||
handheld_charging_gpu=
|
||||
handheld_charging_mem=
|
||||
handheld_charging_usb_cpu=
|
||||
handheld_charging_usb_gpu=
|
||||
handheld_charging_usb_mem=
|
||||
handheld_charging_official_cpu=
|
||||
handheld_charging_official_gpu=
|
||||
handheld_charging_official_mem=
|
||||
handheld_cpu=
|
||||
handheld_gpu=
|
||||
handheld_mem=
|
||||
governor_config=
|
||||
```
|
||||
|
||||
* Replace `Application Title ID` with the title id of the game/application you're interested in customizing.
|
||||
A list of games title id can be found in the [Switchbrew wiki](https://switchbrew.org/wiki/Title_list/Games).
|
||||
* Frequencies are expressed in mhz, and will be scaled to the nearest possible values, described in the clock table below.
|
||||
* If any key is omitted, value is empty or set to 0, it will be ignored, and stock clocks will apply.
|
||||
* If charging, sys-clk will look for the frequencies in that order, picking the first found
|
||||
1. Charger specific config (USB or Official) `handheld_charging_usb_X` or `handheld_charging_official_X`
|
||||
2. Non specific charging config `handheld_charging_X`
|
||||
3. Handheld config `handheld_X`
|
||||
|
||||
### Example 1: Zelda BOTW
|
||||
|
||||
* Overclock CPU when docked or charging
|
||||
|
||||
Leads to a smoother framerate overall (ex: in the korok forest)
|
||||
|
||||
```
|
||||
[01007EF00011E000]
|
||||
docked_cpu=1224
|
||||
handheld_charging_cpu=1224
|
||||
handheld_mem=1600
|
||||
```
|
||||
|
||||
### Example 2: Picross
|
||||
|
||||
* Underclocks on handheld to save battery
|
||||
|
||||
```
|
||||
[0100BA0003EEA000]
|
||||
handheld_cpu=816
|
||||
handheld_gpu=153
|
||||
```
|
||||
|
||||
### Advanced
|
||||
|
||||
The `[values]` section allows you to alter timings in sys-clk, you should not need to edit any of these unless you know what you are doing. Possible values are:
|
||||
|
||||
| Key | Desc | Default |
|
||||
|:------------------------:|-------------------------------------------------------------------------------|:---------:|
|
||||
|**allow_unsafe_freq** | Allow unsafe frequencies (CPU > 1963.5 MHz, GPU > 921.6 MHz) | OFF |
|
||||
|**auto_cpu_boost** | Auto-boost CPU when system Core #3 utilization ≥ 95% | OFF |
|
||||
|**sync_reversenx_mode** | Sync nominal profile (mode) with ReverseNX (-Tool and -RT) | ON |
|
||||
|**charging_current** | Charging current limit (100 mA - 2000 mA) | 2000 mA |
|
||||
|**charging_limit_perc** | Charging limit (20% - 100%) | 100%(OFF) |
|
||||
|**governor_experimental** | CPU & GPU frequency governor (Experimental) | OFF |
|
||||
|**temp_log_interval_ms** | Defines how often sys-clk log temperatures, in milliseconds (`0` to disable) | 0 ms |
|
||||
|**csv_write_interval_ms** | Defines how often sys-clk writes to the CSV, in milliseconds (`0` to disable) | 0 ms |
|
||||
|**poll_interval_ms** | Defines how fast sys-clk checks and applies profiles, in milliseconds | 500 ms |
|
||||
@@ -0,0 +1,16 @@
|
||||
[values]
|
||||
; Defines how often sys-clk log temperatures, in milliseconds (set 0 to disable)
|
||||
temp_log_interval_ms=0
|
||||
; Defines how often sys-clk writes to the CSV, in milliseconds (set 0 to disable)
|
||||
csv_write_interval_ms=0
|
||||
|
||||
; Example #1: BOTW
|
||||
; Overclock CPU when docked
|
||||
;[01007EF00011E000]
|
||||
;docked_cpu=1224
|
||||
|
||||
; Example #2: Picross
|
||||
; Underclock to save battery
|
||||
;[0100BA0003EEA000]
|
||||
;handheld_cpu=816
|
||||
;handheld_gpu=153
|
||||
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 695 KiB After Width: | Height: | Size: 695 KiB |
@@ -5,6 +5,14 @@
|
||||
|
||||
Чому бажано відкатити емунанд? На 21.0.0 можуть працювати не всі моди та переклади для ігор, через зменшений розмір вільної пам'яті в системі
|
||||
|
||||
Також нагадую, що для коректної роботи програм та модулів на Atmosphere 1.10.0, що встановлена в цьому релізі, вони мають бути перезібрані з ісходників, або [пропатчені](https://hbpatcher.alula.me/). Без цього вони будуть падати. Якщо при запуску кефіра в вас щось крашиться, відкатіться на kefir783, якийй використовує попередню версію Atmosphere
|
||||
|
||||
**786**
|
||||
* [**Оновлено**] [Sys-Patch Sysmodule 1.5.8 v5](https://github.com/impeeza/sys-patch/releases/tag/v1.5.8) — виправлена підтримка прошивки 21.0.0
|
||||
* [**Оновлено**] [Uberhand-Overlay 2.3.2](https://github.com/efosamark/Uberhand-Overlay/releases/tag/2.3.2) — виправлене вимкнення консолі на останній атмосфері
|
||||
* [**Оновлено**] [EdiZon-Overlay 1.0.13](https://github.com/proferabg/EdiZon-Overlay/releases/tag/v1.0.13) — виправлені баги
|
||||
* [**Змінено**] [Розгін] — вимикається та видаляється при оновлені кефіру для забезпечення сумісності. Встановіть наново, якщо використовуєте
|
||||
|
||||
**785**
|
||||
* [**Оновлено**] [hekate 6.4.1](https://github.com/CTCaer/hekate/tree/v6.4.1) — виправлені NOGC патчі для 21.0.0
|
||||
* [**Оновлено**] [MissionControl 0.14.0](https://github.com/ndeadly/MissionControl/releases/tag/v0.14.0) — підтримка прошивки 21.0.0
|
||||
@@ -24,13 +32,20 @@
|
||||
____
|
||||
|
||||
#### **ENG**
|
||||
**Partial support for 21.0.0x**
|
||||
|
||||
**Full support for 21.0.0**
|
||||
|
||||
This version can be used on a daily basis, however I would still recommend downgrading emuNAND (ONLY emuNAND) to 20.5.0 using this guide: https://youtu.be/38qxRRnLMGA
|
||||
This version can be used on a daily basis; however, I would still recommend downgrading emuNAND (ONLY emuNAND) to 20.5.0 using this guide: https://youtu.be/38qxRRnLMGA
|
||||
|
||||
Why is it better to downgrade emuNAND? On 21.0.0 some mods and game translations may not work correctly due to reduced free system memory.
|
||||
Why is it preferable to downgrade emuNAND? On firmware 21.0.0 some mods and game translations may not function due to reduced available system memory.
|
||||
|
||||
Also a reminder: for proper operation of apps and sysmodules on Atmosphere 1.10.0 included in this release, they must be rebuilt from source or [patched](https://hbpatcher.alula.me/). Otherwise, they will crash.
|
||||
If something crashes when launching Kefir, downgrade to kefir783, which uses the previous version of Atmosphere.
|
||||
|
||||
**786**
|
||||
* [**Updated**] [Sys-Patch Sysmodule 1.5.8 v5](https://github.com/impeeza/sys-patch/releases/tag/v1.5.8) — fixed support for firmware 21.0.0
|
||||
* [**Updated**] [Uberhand-Overlay 2.3.2](https://github.com/efosamark/Uberhand-Overlay/releases/tag/2.3.2) — fixed console shutdown on the latest Atmosphere
|
||||
* [**Updated**] [EdiZon-Overlay 1.0.13](https://github.com/proferabg/EdiZon-Overlay/releases/tag/v1.0.13) — bug fixes
|
||||
* [**Changed**] [Overclocking] — disabled and removed during the Kefir update to ensure compatibility. Reinstall manually if you use it
|
||||
|
||||
**785**
|
||||
* [**Updated**] [hekate 6.4.1](https://github.com/CTCaer/hekate/tree/v6.4.1) — fixed NOGC patches for 21.0.0
|
||||
|
||||
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
@@ -0,0 +1,16 @@
|
||||
[values]
|
||||
; Defines how often sys-clk log temperatures, in milliseconds (set 0 to disable)
|
||||
temp_log_interval_ms=0
|
||||
; Defines how often sys-clk writes to the CSV, in milliseconds (set 0 to disable)
|
||||
csv_write_interval_ms=0
|
||||
|
||||
; Example #1: BOTW
|
||||
; Overclock CPU when docked
|
||||
;[01007EF00011E000]
|
||||
;docked_cpu=1224
|
||||
|
||||
; Example #2: Picross
|
||||
; Underclock to save battery
|
||||
;[0100BA0003EEA000]
|
||||
;handheld_cpu=816
|
||||
;handheld_gpu=153
|
||||
@@ -65,6 +65,7 @@ if exist "%sd%:\bootloader\loader.kip" (set oc=1)
|
||||
rem Set mission control status
|
||||
@REM set missioncontrol=0
|
||||
@REM set syscon=0
|
||||
set oc=0
|
||||
|
||||
|
||||
echo ------------------------------------------------------------------------
|
||||
@@ -311,8 +312,11 @@ RD /s /q "%sd%:\oc"
|
||||
|
||||
if exist "%sd%:\hekate_ctcaer_*.bin" (del "%sd%:\hekate_ctcaer_*.bin")
|
||||
|
||||
if exist "Y:\Switch\\addons\themes" (xcopy "Y:\Switch\\addons\themes\*" "%sd%:\themes" /H /Y /C /R /S /E /I)
|
||||
if exist "Y:\Switch\\addons\atmosphere" (xcopy "Y:\Switch\\addons\atmosphere\*" "%sd%:\atmosphere" /H /Y /C /R /S /E /I)
|
||||
if exist "Y:\Switch\\addons\config" (xcopy "Y:\Switch\\addons\config\*" "%sd%:\config" /H /Y /C /R /S /E /I)
|
||||
if exist "Y:\Switch\\addons\emuMMC" (xcopy "Y:\Switch\\addons\emuMMC\*" "%sd%:\emuMMC" /H /Y /C /R /S /E /I)
|
||||
if exist "Y:\Switch\\addons\switch" (xcopy "Y:\Switch\\addons\switch\*" "%sd%:\switch" /H /Y /C /R /S /E /I)
|
||||
if exist "Y:\Switch\\addons\themes" (xcopy "Y:\Switch\\addons\themes\*" "%sd%:\themes" /H /Y /C /R /S /E /I)
|
||||
|
||||
if exist "%sd%:\.git" (RD /s /q "%sd%:\.git")
|
||||
|
||||
|
||||
@@ -307,7 +307,9 @@ if (fsexists("sd:/emummc/emummc.ini_bkp")) {
|
||||
movefile("sd:/emummc/emummc.ini_bkp", "sd:/emummc/emummc.ini")
|
||||
}
|
||||
|
||||
if (fsexists("sd:/bootloader/loader.kip")) {
|
||||
oc=0
|
||||
|
||||
if (oc) {
|
||||
copydir("sd:/config/uberhand/packages/oc/atmosphere", "sd:/")
|
||||
copydir("sd:/config/uberhand/packages/oc/bootloader", "sd:/")
|
||||
copydir("sd:/config/uberhand/packages/oc/config", "sd:/")
|
||||
|
||||
@@ -1 +1 @@
|
||||
785
|
||||
786
|
||||
@@ -0,0 +1,16 @@
|
||||
[values]
|
||||
; Defines how often sys-clk log temperatures, in milliseconds (set 0 to disable)
|
||||
temp_log_interval_ms=0
|
||||
; Defines how often sys-clk writes to the CSV, in milliseconds (set 0 to disable)
|
||||
csv_write_interval_ms=0
|
||||
|
||||
; Example #1: BOTW
|
||||
; Overclock CPU when docked
|
||||
;[01007EF00011E000]
|
||||
;docked_cpu=1224
|
||||
|
||||
; Example #2: Picross
|
||||
; Underclock to save battery
|
||||
;[0100BA0003EEA000]
|
||||
;handheld_cpu=816
|
||||
;handheld_gpu=153
|
||||