Revert "1.0.3"

This reverts commit 941b790a6f.
This commit is contained in:
souldbminersmwc
2025-09-03 11:45:59 -04:00
parent 187b2ceb96
commit 045b07da02
5 changed files with 69 additions and 101 deletions

View File

@@ -28,7 +28,7 @@ volatile CustomizeTable C = {
* NO_ADJ_ALL: No timing adjustment for both Erista and Mariko. * NO_ADJ_ALL: No timing adjustment for both Erista and Mariko.
* CUSTOMIZED_ALL: Replace with values in customized table for both Erista and Mariko. * CUSTOMIZED_ALL: Replace with values in customized table for both Erista and Mariko.
*/ */
.mtcConf = AUTO_ADJ_ALL, .mtcConf = CUSTOM_ADJ_ALL,
/* Common: /* Common:
* - Boost Clock in kHz: * - Boost Clock in kHz:
@@ -36,24 +36,21 @@ volatile CustomizeTable C = {
* Boost clock will be applied when applications request higher CPU frequency for quicker loading. * Boost clock will be applied when applications request higher CPU frequency for quicker loading.
* This will be set regardless of whether sys-clk is enabled. * This will be set regardless of whether sys-clk is enabled.
*/ */
.marikoCpuBoostClock = 1963500, .commonCpuBoostClock = 2295000,
.eristaCpuBoostClock = 1785000,
/* - EMC Vddq (Erista Only) and RAM Vdd2 Voltage in uV /* - EMC Vddq (Erista Only) and RAM Vdd2 Voltage in uV
* Range: 1100'000 to 1250'000 uV * Range: 1100'000 to 1250'000 uV
* Erista Default(HOS): 1175'000 (bootloader: 1100'000) * Erista Default(HOS): 1125'000 (bootloader: 1100'000)
* Mariko Default: 1175'000 (It will not work without sys-clk-OC.) * Mariko Default: 1100'000 (It will not work without sys-clk-OC.)
* Value should be divided evenly by 12'500. * Value should be divided evenly by 12'500.
* Not enabled by default. * Not enabled by default.
*/ */
.commonEmcMemVolt = 1175000, .commonEmcMemVolt = 1212500,
/* Erista CPU: /* Erista CPU:
* - Max Voltage in mV * - Max Voltage in mV
* - CpuVoltL4T: 1235 * - CpuVoltL4T: 1235
*/ */
.eristaCpuMaxVolt = 1257, .eristaCpuMaxVolt = 1235,
/* Erista EMC(RAM): /* Erista EMC(RAM):
* - RAM Clock in kHz * - RAM Clock in kHz
@@ -69,7 +66,7 @@ volatile CustomizeTable C = {
* - Max Voltage in mV: * - Max Voltage in mV:
* Default voltage: 1120 * Default voltage: 1120
*/ */
.marikoCpuMaxVolt = 1120, .marikoCpuMaxVolt = 1235,
/* Mariko EMC(RAM): /* Mariko EMC(RAM):
* - RAM Clock in kHz: * - RAM Clock in kHz:
@@ -92,40 +89,38 @@ volatile CustomizeTable C = {
.marikoCpuUV = 0, .marikoCpuUV = 0,
.marikoCpuHighUV = 0,
.marikoGpuUV = 0, .marikoGpuUV = 0,
.commonGpuVoltOffset = 0, .commonGpuVoltOffset = 0,
.marikoCpuHighVoltOffset = 0, .marikoCpuHighVoltOffset = 0,
.cpuMaxFreq = 1963, .marikoCpuHighUV = 0,
.gpuMaxFreq = 1152, .cpuMaxFreq = 1963500,
.EcpuMaxFreq = 1963, .gpuMaxFreq = 1267200,
.EgpuMaxFreq = 921,
.marikoEmcDvbShift = 0, .marikoEmcDvbShift = 0,
.ramTimingPresetOne = 0, // T1-3 EOS .ramTimingPresetOne = 4, // T1-3 EOS
.ramTimingPresetTwo = 0, // T4 .ramTimingPresetTwo = 2, // T4
.ramTimingPresetThree = 0, // Try all values from 0-6 .ramTimingPresetThree = 2, // Try all values from 0-6
.ramTimingPresetFour = 0, // EOS T5 .ramTimingPresetFour = 2, // EOS T5
.ramTimingPresetFive = 0, // EOS T7 .ramTimingPresetFive = 2, // EOS T7
.ramTimingPresetSix = 0, // EOS T8 .ramTimingPresetSix = 2, // EOS T8
.ramTimingPresetSeven = 0, .ramTimingPresetSeven = 2,
.marikoGpuVoltArray = {635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 660, 685, 715, 745, 765, 785}, .marikoGpuVoltArray = {635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 660, 685, 715, 745, 765, 785},
.marikoGpuVoltArray_RAM_OC = {635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 635, 660, 685, 715, 745, 765, 785},

View File

@@ -16,7 +16,7 @@
#pragma once #pragma once
#define CUST_REV 2 #define CUST_REV 1
#include "oc_common.hpp" #include "oc_common.hpp"
#include "pcv/pcv_common.hpp" #include "pcv/pcv_common.hpp"
@@ -45,10 +45,7 @@ typedef struct CustomizeTable {
u8 cust[4] = {'C', 'U', 'S', 'T'}; u8 cust[4] = {'C', 'U', 'S', 'T'};
u32 custRev = CUST_REV; u32 custRev = CUST_REV;
u32 mtcConf; u32 mtcConf;
u32 commonCpuBoostClock;
u32 marikoCpuBoostClock;
u32 eristaCpuBoostClock;
u32 commonEmcMemVolt; u32 commonEmcMemVolt;
u32 eristaCpuMaxVolt; u32 eristaCpuMaxVolt;
u32 eristaEmcMaxClock; u32 eristaEmcMaxClock;
@@ -56,15 +53,13 @@ typedef struct CustomizeTable {
u32 marikoEmcMaxClock; u32 marikoEmcMaxClock;
u32 marikoEmcVddqVolt; u32 marikoEmcVddqVolt;
u32 marikoCpuUV; u32 marikoCpuUV;
u32 marikoCpuHighUV;
u32 marikoGpuUV; u32 marikoGpuUV;
u32 commonGpuVoltOffset; u32 commonGpuVoltOffset;
u32 marikoCpuHighVoltOffset; u32 marikoCpuHighVoltOffset;
u32 marikoCpuHighUV;
u32 cpuMaxFreq; u32 cpuMaxFreq;
u32 gpuMaxFreq; u32 gpuMaxFreq;
u32 EcpuMaxFreq;
u32 EgpuMaxFreq;
// advanced config // advanced config
u32 marikoEmcDvbShift; u32 marikoEmcDvbShift;
u32 ramTimingPresetOne; u32 ramTimingPresetOne;

View File

@@ -111,17 +111,17 @@ void SafetyCheck() {
} }
sValidator validators[] = { sValidator validators[] = {
{ C.commonCpuBoostClock, 1020'000, 3010'000, true }, { C.commonCpuBoostClock, 1020'000, C.cpuMaxFreq + 1, true },
{ C.commonEmcMemVolt, 1000'000, C.MemVltMax + 1 }, { C.commonEmcMemVolt, 1000'000, C.MemVltMax + 1 },
{ C.eristaCpuMaxVolt, 1100, C.eristaCPUvMax + 1 }, { C.eristaCpuMaxVolt, 1100, C.eristaCPUvMax + 1 },
{ C.eristaEmcMaxClock, 1600'000, 2428'800 }, { C.eristaEmcMaxClock, 1600'000, 2428'800 },
{ C.marikoCpuMaxVolt, 800, C.marikoCPUvMax + 1 }, { C.marikoCpuMaxVolt, 800, C.marikoCPUvMax + 1 },
{ C.marikoEmcMaxClock, 1600'000, 3504'000 }, { C.marikoEmcMaxClock, 1600'000, 3504'000 },
{ C.marikoEmcVddqVolt, 550'000, C.marikoVDDQMax + 1 }, { C.marikoEmcVddqVolt, 550'000, C.marikoVDDQMax + 1 },
{ eristaCpuDvfsMaxFreq, 204'000, (C.EcpuMaxFreq * 1000) + 1000}, { eristaCpuDvfsMaxFreq, 1785'000, C.cpuMaxFreq + 1 },
{ marikoCpuDvfsMaxFreq, 204'000, (C.cpuMaxFreq * 1000) + 1000 }, { marikoCpuDvfsMaxFreq, 1785'000, C.cpuMaxFreq + 1 },
{ eristaGpuDvfsMaxFreq, 76'800, (C.EgpuMaxFreq * 1000) + 1000 }, { eristaGpuDvfsMaxFreq, 768'000, C.gpuMaxFreq + 1 },
{ marikoGpuDvfsMaxFreq, 76'800, (C.gpuMaxFreq * 1000) + 1000 }, { marikoGpuDvfsMaxFreq, 768'000, C.gpuMaxFreq + 1 },
}; };
for (auto& i : validators) { for (auto& i : validators) {

View File

@@ -17,20 +17,12 @@
#include "ptm.hpp" #include "ptm.hpp"
namespace ams::ldr::oc::ptm { namespace ams::ldr::oc::ptm {
#ifdef ATMOSPHERE_IS_STRATOSPHERE
bool isMariko = (spl::GetSocType() == spl::SocType_Mariko);
#else
bool isMariko = true;
#endif
Result CpuPtmBoost(perf_conf_entry* entry) { Result CpuPtmBoost(perf_conf_entry* entry) {
if (!C.commonCpuBoostClock) if (!C.commonCpuBoostClock)
R_SUCCEED(); R_SUCCEED();
u32 cpuPtmBoostNew;
if(isMariko) { u32 cpuPtmBoostNew = C.commonCpuBoostClock * 1000;
cpuPtmBoostNew = C.marikoCpuBoostClock * 1000;
} else {
cpuPtmBoostNew = C.eristaCpuBoostClock * 1000;
}
PATCH_OFFSET(&(entry->cpu_freq_1), cpuPtmBoostNew); PATCH_OFFSET(&(entry->cpu_freq_1), cpuPtmBoostNew);
PATCH_OFFSET(&(entry->cpu_freq_2), cpuPtmBoostNew); PATCH_OFFSET(&(entry->cpu_freq_2), cpuPtmBoostNew);
@@ -79,6 +71,13 @@ void Patch(uintptr_t mapped_nso, size_t nso_size) {
PatcherEntry<perf_conf_entry> cpuPtmBoostPatch = { "CPU Ptm Boost", &CpuPtmBoost, 2, }; PatcherEntry<perf_conf_entry> cpuPtmBoostPatch = { "CPU Ptm Boost", &CpuPtmBoost, 2, };
PatcherEntry<perf_conf_entry> memPtmPatch = { "MEM Ptm", &MemPtm, 16, }; PatcherEntry<perf_conf_entry> memPtmPatch = { "MEM Ptm", &MemPtm, 16, };
#ifdef ATMOSPHERE_IS_STRATOSPHERE
bool isMariko = (spl::GetSocType() == spl::SocType_Mariko);
#else
bool isMariko = true;
#endif
for (u32 i = 0; i < entryCnt; i++) { for (u32 i = 0; i < entryCnt; i++) {
perf_conf_entry* entry = confTable + i; perf_conf_entry* entry = confTable + i;

View File

@@ -25,7 +25,7 @@ var __awaiter = this && this.__awaiter || function(e, t, i, n) {
o((n = n.apply(e, t || [])).next()) o((n = n.apply(e, t || [])).next())
})) }))
}; };
const CUST_REV_ADV = 2; const CUST_REV_ADV = 1;
var CustPlatform; var CustPlatform;
! function(e) { ! function(e) {
e[e.Undefined = 0] = "Undefined", e[e.Erista = 1] = "Erista", e[e.Mariko = 2] = "Mariko", e[e.All = 3] = "All" e[e.Undefined = 0] = "Undefined", e[e.Erista = 1] = "Erista", e[e.Mariko = 2] = "Mariko", e[e.All = 3] = "All"
@@ -113,20 +113,14 @@ class GpuEntry extends CustEntry {
var CustTable = [ var CustTable = [
new CustEntry("mtcConf", "DRAM Timing", CustPlatform.All, 4, [ new CustEntry("mtcConf", "DRAM Timing", CustPlatform.All, 4, [
"<b>0</b>: AUTO_ADJ_ALL: Auto adjust mtc table with LPDDR4 3733 Mbps specs, 8Gb density. Change timing with Advanced Config (Default)", "<b>0</b>: AUTO_ADJ_ALL: Auto adjust mtc table with LPDDR4 3733 Mbps specs, 8Gb density. Change timing with Advanced Config (Default)",
"<b>1</b>: CUSTOM_ADJ_ALL: Adjust only non-zero preset timings in Advanced Config. This may not work on Erista units", "<b>1</b>: CUSTOM_ADJ_ALL: Adjust only non-zero preset timings in Advanced Config",
"<b>2</b>: NO_ADJ_ALL: Use 1600 mtc table wihout adjusting (Timing becomes tighter if you raise dram clock)." "<b>2</b>: NO_ADJ_ALL: Use 1600 mtc table wihout adjusting (Timing becomes tighter if you raise dram clock)."
], 0, [0, 2], 1), ], 0, [0, 2], 1),
new CustEntry("marikoCpuBoostClock", "Mariko Boost Clock in kHz", CustPlatform.Mariko, 4, [ new CustEntry("commonCpuBoostClock", "Boost Clock in kHz", CustPlatform.All, 4, [
"System default: 1785000", "System default: 1785000",
"Boost clock will be applied when applications request Boost Mode via performance configuration." "Boost clock will be applied when applications request Boost Mode via performance configuration."
], 1963500, [204000, 2907000], 1, !1), ], 2091e3, [204000, 2907000], 1, !1),
new CustEntry("eristaCpuBoostClock", "Erista Boost Clock in kHz", CustPlatform.Erista, 4, [
"System default: 1785000",
"Boost clock will be applied when applications request Boost Mode via performance configuration."
], 1963e3, [204000, 2907000], 1, !1),
new CustEntry("commonEmcMemVolt", "EMC Vdd2 Voltage in uV", CustPlatform.All, 4, [ new CustEntry("commonEmcMemVolt", "EMC Vdd2 Voltage in uV", CustPlatform.All, 4, [
"Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be divided evenly by 12500.", "Acceptable range: 1100000 ≤ x ≤ 1250000, and it should be divided evenly by 12500.",
@@ -145,13 +139,13 @@ var CustTable = [
"Values should be ≥ 1600000, and divided evenly by 3200.", "Values should be ≥ 1600000, and divided evenly by 3200.",
"Recommended Clocks: 1862400, 2131200 (JEDEC)", "Recommended Clocks: 1862400, 2131200 (JEDEC)",
"<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM" "<b>WARNING:</b> RAM overclock could be UNSTABLE if timing parameters are not suitable for your DRAM"
], 1862400, [16e5, 2500000], 3200), ], 1862400, [16e5, 2131200], 3200),
new CustEntry("marikoCpuMaxVolt", "Mariko CPU Max Voltage in mV", CustPlatform.Mariko, 4, [ new CustEntry("marikoCpuMaxVolt", "Mariko CPU Max Voltage in mV", CustPlatform.Mariko, 4, [
"System default: 1120", "System default: 1120",
"Acceptable range: 1120 ≤ x ≤ 1300", "Acceptable range: 1120 ≤ x ≤ 1300",
"Changing this value affects cpu voltage calculation" "Changing this value affects cpu voltage calculation"
], 1120, [1120, 1300], 5), ], 1235, [1120, 1300], 5),
new CustEntry("marikoEmcMaxClock", "Mariko RAM Max Clock in kHz", CustPlatform.Mariko, 4, [ new CustEntry("marikoEmcMaxClock", "Mariko RAM Max Clock in kHz", CustPlatform.Mariko, 4, [
"Values should be ≥ 1600000, and divided evenly by 9600.", "Values should be ≥ 1600000, and divided evenly by 9600.",
@@ -174,10 +168,6 @@ var CustTable = [
"<b>2</b> : Undervolt Level 1 (SLT - CPU speedo >= 1650)" "<b>2</b> : Undervolt Level 1 (SLT - CPU speedo >= 1650)"
], 0, [0, 2], 1), ], 0, [0, 2], 1),
new CustEntry("marikoCpuHighUV", "Enable Mariko CPU High Undervolt", CustPlatform.Mariko, 4, [
"Reduce CPU power draw at high clocks by offsetting the voltage sent to the CPU",
], 0, [0, 12], 1),
new CustEntry("marikoGpuUV", "Enable Mariko GPU Undervolt", CustPlatform.Mariko, 4, [ new CustEntry("marikoGpuUV", "Enable Mariko GPU Undervolt", CustPlatform.Mariko, 4, [
"Reduce GPU power draw", "Reduce GPU power draw",
"Your GPU might not withstand undervolt, and can hang your console, or crash games", "Your GPU might not withstand undervolt, and can hang your console, or crash games",
@@ -200,34 +190,23 @@ var CustTable = [
"Reduce CPU power draw at high clocks", "Reduce CPU power draw at high clocks",
], 0, [0, 100], 1), ], 0, [0, 100], 1),
new CustEntry("cpuMaxFreq", "Mariko Maximum allowed CPU Frequency (MHz)", CustPlatform.Mariko, 4, [ new CustEntry("marikoCpuHighUV", "Enable Mariko CPU High Undervolt", CustPlatform.Mariko, 4, [
"Default: 1963", "Reduce CPU power draw at high clocks by offsetting the voltage sent to the CPU",
], 0, [0, 12], 1),
new CustEntry("cpuMaxFreq", "Maximum allowed CPU Frequency (KHz)", CustPlatform.All, 4, [
"Default: 1963500",
"This is the maximum frequency for the CPU you can set in sys-clk-ocs2.", "This is the maximum frequency for the CPU you can set in sys-clk-ocs2.",
"The value for this setting is capped at 2907MHz", "The value for this setting is capped at 2091mhz for Erista units and 2907MHz for Mariko units",
"Anything above 1963MHz is unsafe without undervolting" "Anything above 1785MHz for Erista units and 1963MHz for Mariko units is unsafe without undervolting"
], 1963, [204, 2907], 1, !1), ], 1963500, [204000, 2907000], 1, !1),
new CustEntry("gpuMaxFreq", "Mariko Maximum allowed GPU Frequency (MHz)", CustPlatform.Mariko, 4, [ new CustEntry("gpuMaxFreq", "Maximum allowed GPU Frequency (KHz)", CustPlatform.All, 4, [
"Default: 1267", "Default: 1267200",
"This is the maximum frequency for the GPU you can set in sys-clk-ocs2.", "This is the maximum frequency for the GPU you can set in sys-clk-ocs2.",
"The value for this setting is capped at 998mhz", "The value for this setting is capped at 998mhz for Erista units, and 1305MHz on Mariko units",
"The maximum safe value without undervolt is 1152MHz" "The maximum safe value without undervolt is 844MHz for Erista units and 1152MHz for Mariko units"
], 1152, [76, 1305], 1, !1), ], 1152000, [76800, 1305600], 1, !1),
new CustEntry("EcpuMaxFreq", "Erista Maximum allowed CPU Frequency (MHz)", CustPlatform.Erista, 4, [
"Default: 1785",
"This is the maximum frequency for the CPU you can set in sys-clk-ocs2.",
"The value for this setting is capped at 2091mhz",
"Anything above 1785MHz is unsafe without undervolting"
], 1785, [204, 2091], 1, !1),
new CustEntry("EgpuMaxFreq", "Erista Maximum allowed GPU Frequency (MHz)", CustPlatform.Erista, 4, [
"Default: 921",
"This is the maximum frequency for the GPU you can set in sys-clk-ocs2.",
"The value for this setting is capped at 998mhz",
"The maximum safe value without undervolt is 921MHz"
], 921, [76, 998], 1, !1),
]; ];
var AdvTable = [ var AdvTable = [
@@ -252,7 +231,7 @@ var AdvTable = [
], 1, [0, 6], 1), ], 1, [0, 6], 1),
new AdvEntry("ramTimingPresetTwo", "Secondary RAM Timing Preset", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetTwo", "Secondary RAM Timing Preset", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ", "Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ",
"Values are : tRRD - tFAW", "Values are : tRRD - tFAW",
"<b>0</b> : Do Not Adjust (2400Mhz: 6.6 - 26.6) (CUST_ADJ only)", "<b>0</b> : Do Not Adjust (2400Mhz: 6.6 - 26.6) (CUST_ADJ only)",
@@ -264,7 +243,7 @@ var AdvTable = [
], 1, [0, 5], 1), ], 1, [0, 5], 1),
new AdvEntry("ramTimingPresetThree", "Secondary RAM Timing Preset", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetThree", "Secondary RAM Timing Preset", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ", "Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ",
"Values are : tWR - tRTP", "Values are : tWR - tRTP",
"<b>0</b> : Do Not Adjust (2400Mhz: ?? - 5) (CUST_ADJ only)", "<b>0</b> : Do Not Adjust (2400Mhz: ?? - 5) (CUST_ADJ only)",
@@ -277,7 +256,7 @@ var AdvTable = [
], 1, [0, 6], 1), ], 1, [0, 6], 1),
new AdvEntry("ramTimingPresetFour", "Secondary RAM Timing Preset", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetFour", "Secondary RAM Timing Preset", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ", "Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ",
"Values are : tRFC", "Values are : tRFC",
"<b>0</b> : Do Not Adjust (2400Mhz: 93.3) (CUST_ADJ only)", "<b>0</b> : Do Not Adjust (2400Mhz: 93.3) (CUST_ADJ only)",
@@ -290,7 +269,7 @@ var AdvTable = [
], 1, [0, 6], 1), ], 1, [0, 6], 1),
new AdvEntry("ramTimingPresetFive", "Secondary RAM Timing Preset", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetFive", "Secondary RAM Timing Preset", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ", "Secondary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ",
"Values are : tWTR", "Values are : tWTR",
"<b>0</b> : Do Not Adjust (2400Mhz: ??) (CUST_ADJ only)", "<b>0</b> : Do Not Adjust (2400Mhz: ??) (CUST_ADJ only)",
@@ -303,7 +282,7 @@ var AdvTable = [
], 1, [0, 6], 1), ], 1, [0, 6], 1),
new AdvEntry("ramTimingPresetSix", "Tertiary RAM Timing Preset", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetSix", "Tertiary RAM Timing Preset", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Tertiary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ", "Tertiary Timing Preset for both AUTO_ADJ and CUSTOM_ADJ",
"Values are : tREFpb", "Values are : tREFpb",
"<b>0</b> : Do Not Adjust (2400Mhz: 325) (CUST_ADJ only)", "<b>0</b> : Do Not Adjust (2400Mhz: 325) (CUST_ADJ only)",
@@ -315,7 +294,7 @@ var AdvTable = [
], 1, [0, 5], 1), ], 1, [0, 5], 1),
new AdvEntry("ramTimingPresetSeven", "Latency Decrement", CustPlatform.All, 4, [ new AdvEntry("ramTimingPresetSeven", "Latency Decrement", CustPlatform.All, 4, [
"<b>WARNING</b>: Unstable timings can corrupt your nand", "WARNING: Unstable timings can corrupt your nand",
"Latency decrement for both AUTO_ADJ and CUSTOM_ADJ", "Latency decrement for both AUTO_ADJ and CUSTOM_ADJ",
"This preset decreases Write/Read related delays. Values are Write - Read", "This preset decreases Write/Read related delays. Values are Write - Read",
"<b>0</b> : 0 - 0, Do Not Adjust for CUST_ADJ", "<b>0</b> : 0 - 0, Do Not Adjust for CUST_ADJ",
@@ -342,11 +321,11 @@ var GpuTable = [
new GpuEntry("10", "844.8"), new GpuEntry("10", "844.8"),
new GpuEntry("11", "921.6"), new GpuEntry("11", "921.6"),
new GpuEntry("12", "998.4"), new GpuEntry("12", "998.4"),
new GpuEntry("13", "1075.2", CustPlatform.Mariko), new GpuEntry("13", "1075.2"),
new GpuEntry("14", "1152.0", CustPlatform.Mariko), new GpuEntry("14", "1152.0"),
new GpuEntry("15", "1228.8", CustPlatform.Mariko), new GpuEntry("15", "1228.8"),
new GpuEntry("16", "1267.2", CustPlatform.Mariko), new GpuEntry("16", "1267.2"),
new GpuEntry("17", "1305.6 <b>(UNSAFE)</b>", CustPlatform.Mariko) new GpuEntry("17", "1305.6 (UNSAFE)")
]; ];
class ErrorToolTip { class ErrorToolTip {
@@ -491,7 +470,7 @@ class Cust {
} }
parse() { parse() {
let e = this.beginOffset + this.magicLen; let e = this.beginOffset + this.magicLen;
if (this.rev = this.mapper[4].get(e), CUST_REV_ADV != this.rev) throw new Error(`Unsupported custRev, expected: 1, got ${this.rev}`); if (this.rev = this.mapper[4].get(e), 1 != this.rev) throw new Error(`Unsupported custRev, expected: 1, got ${this.rev}`);
e += 4, document.getElementById("cust_rev").innerHTML = `Cust v${this.rev} is loaded.`; e += 4, document.getElementById("cust_rev").innerHTML = `Cust v${this.rev} is loaded.`;
let t = t => { let t = t => {
var i; var i;