Cache Disk Seek Timing Type into a global variable for optimization
This commit is contained in:
parent
5bdc3e11b1
commit
90d68dae52
|
@ -11,6 +11,7 @@
|
|||
// Based from MAME's N64DD driver code by Happy_
|
||||
#include "stdafx.h"
|
||||
#include "Disk.h"
|
||||
#include <Project64-core/N64System/N64Class.h>
|
||||
#include <Project64-core/N64System/N64DiskClass.h>
|
||||
#include <Project64-core/N64System/SystemGlobals.h>
|
||||
#include <Project64-core/N64System/Mips/RegisterClass.h>
|
||||
|
@ -107,7 +108,7 @@ void DiskCommand()
|
|||
|
||||
if (isSeek)
|
||||
{
|
||||
if ((DISK_SEEK_TYPE)g_Settings->LoadDword(Game_DiskSeekTiming) == DiskSeek_Turbo)
|
||||
if (g_System->DiskSeekTimingType() == DiskSeek_Turbo)
|
||||
{
|
||||
//Instant Response for Turbo
|
||||
|
||||
|
@ -117,7 +118,7 @@ void DiskCommand()
|
|||
//Set timer for motor
|
||||
g_SystemTimer->SetTimer(g_SystemTimer->DDMotorTimer, 0, false);
|
||||
}
|
||||
else /* if ((DISK_SEEK_TYPE)g_Settings->LoadDword(Game_DiskSeekTiming) == DiskSeek_Slow) */
|
||||
else /* if (g_System->DiskSeekTimingType() == DiskSeek_Slow) */
|
||||
{
|
||||
//Emulate Seek Times, send interrupt later
|
||||
uint32_t seektime = 0;
|
||||
|
|
|
@ -40,6 +40,7 @@ uint32_t CGameSettings::m_LookUpMode; //FUNC_LOOKUP_METHOD
|
|||
SYSTEM_TYPE CGameSettings::m_SystemType = SYSTEM_NTSC;
|
||||
CPU_TYPE CGameSettings::m_CpuType = CPU_Recompiler;
|
||||
uint32_t CGameSettings::m_OverClockModifier = 1;
|
||||
DISK_SEEK_TYPE CGameSettings::m_DiskSeekTimingType = DiskSeek_Turbo;
|
||||
|
||||
void CGameSettings::RefreshGameSettings()
|
||||
{
|
||||
|
@ -80,6 +81,7 @@ void CGameSettings::RefreshGameSettings()
|
|||
}
|
||||
if (m_OverClockModifier < 1) { m_OverClockModifier = 1; }
|
||||
if (m_OverClockModifier > 20) { m_OverClockModifier = 20; }
|
||||
m_DiskSeekTimingType = (DISK_SEEK_TYPE)g_Settings->LoadDword(Game_DiskSeekTiming);
|
||||
RefreshSyncToAudio();
|
||||
WriteTrace(TraceN64System, TraceDebug, "Done");
|
||||
}
|
||||
|
|
|
@ -45,6 +45,7 @@ public:
|
|||
inline static SYSTEM_TYPE SystemType(void) { return m_SystemType; }
|
||||
inline static CPU_TYPE CpuType(void) { return m_CpuType; }
|
||||
inline static uint32_t OverClockModifier(void) { return m_OverClockModifier; }
|
||||
inline static DISK_SEEK_TYPE DiskSeekTimingType(void) { return m_DiskSeekTimingType; };
|
||||
|
||||
void RefreshSyncToAudio(void);
|
||||
|
||||
|
@ -80,4 +81,5 @@ private:
|
|||
static SYSTEM_TYPE m_SystemType;
|
||||
static CPU_TYPE m_CpuType;
|
||||
static uint32_t m_OverClockModifier;
|
||||
static DISK_SEEK_TYPE m_DiskSeekTimingType;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue