sysclk: fix resolution driver again
This commit is contained in:
@@ -623,15 +623,15 @@ void ClockManager::HandleGovernor(uint32_t targetHz) {
|
||||
isVRREnabled = newVrrGovernorState;
|
||||
|
||||
if(newCpuGovernorState == false && lastCpuGovernorState == true) {
|
||||
svcSleepThread(50'000'000); // thread syncing. probably a cleaner way to do this but hey, it works!
|
||||
svcSleepThread(100'000'000); // thread syncing. probably a cleaner way to do this but hey, it works!
|
||||
Board::ResetToStockCpu();
|
||||
}
|
||||
if(newGpuGovernorState == false && lastGpuGovernorState == true) {
|
||||
svcSleepThread(50'000'000);
|
||||
svcSleepThread(100'000'000);
|
||||
Board::ResetToStockGpu();
|
||||
}
|
||||
if (newVrrGovernorState == false && lastVrrGovernorState == true) {
|
||||
svcSleepThread(50'000'000);
|
||||
svcSleepThread(100'000'000);
|
||||
Board::ResetToStockDisplay();
|
||||
}
|
||||
if(newCpuGovernorState != lastCpuGovernorState || newGpuGovernorState != lastGpuGovernorState || newVrrGovernorState != lastVrrGovernorState) {
|
||||
|
||||
@@ -110,19 +110,6 @@ u8 SaltyNXIntegration::GetFPS() {
|
||||
return NxFps ? NxFps->FPS : 254;
|
||||
}
|
||||
|
||||
struct resolutionCalls { // classes are bad :)
|
||||
uint16_t width;
|
||||
uint16_t height;
|
||||
uint16_t calls;
|
||||
};
|
||||
|
||||
resolutionCalls m_resolutionRenderCalls[8] = {0};
|
||||
|
||||
int compare (const void* elem1, const void* elem2) {
|
||||
if ((((resolutionCalls*)(elem1))->calls) > (((resolutionCalls*)(elem2))->calls)) return -1;
|
||||
else return 1;
|
||||
}
|
||||
|
||||
u16 SaltyNXIntegration::GetResolutionHeight() {
|
||||
if (!SharedMemoryUsed)
|
||||
return 0;
|
||||
@@ -141,13 +128,10 @@ u16 SaltyNXIntegration::GetResolutionHeight() {
|
||||
searchSharedMemoryBlock(base);
|
||||
}
|
||||
if(NxFps) {
|
||||
NxFps -> renderCalls[0].calls = 0xFFFF;
|
||||
NxFps->renderCalls[0].calls = 0xFFFF;
|
||||
svcSleepThread(10*1000);
|
||||
|
||||
memcpy(&m_resolutionRenderCalls, &(NxFps->renderCalls), sizeof(m_resolutionRenderCalls));
|
||||
qsort(m_resolutionRenderCalls, 8, sizeof(resolutionCalls), compare);
|
||||
|
||||
return NxFps->viewportCalls[0].height;
|
||||
|
||||
return NxFps->renderCalls[0].height == 0 ? NxFps->viewportCalls[0].height : NxFps->renderCalls[0].height;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user