possible improvements

This commit is contained in:
R2DLiu 2020-08-02 01:47:43 -04:00
commit b2f94a9132
5 changed files with 7 additions and 11 deletions

View file

@ -112,7 +112,7 @@ struct SConfig
bool bFPRF = false; bool bFPRF = false;
bool bAccurateNaNs = false; bool bAccurateNaNs = false;
int iTimingVariance = 40; // in milli secounds int iTimingVariance = 12; // in milli secounds
bool bCPUThread = true; bool bCPUThread = true;
bool bDSPThread = false; bool bDSPThread = false;
bool bDSPHLE = true; bool bDSPHLE = true;

View file

@ -647,10 +647,6 @@ void UpdateDevices()
} }
} }
// Hinting NetPlay that all controllers will be polled in
// succession, in order to optimize networking
NetPlay::SetSIPollBatching(true);
// Update inputs at the rate of SI // Update inputs at the rate of SI
// Typically 120hz but is variable // Typically 120hz but is variable
g_controller_interface.UpdateInput(); g_controller_interface.UpdateInput();
@ -666,9 +662,6 @@ void UpdateDevices()
!!s_channel[3].device->GetData(s_channel[3].in_hi.hex, s_channel[3].in_lo.hex); !!s_channel[3].device->GetData(s_channel[3].in_hi.hex, s_channel[3].in_lo.hex);
UpdateInterrupts(); UpdateInterrupts();
// Polling finished
NetPlay::SetSIPollBatching(false);
} }
SIDevices GetDeviceType(int channel) SIDevices GetDeviceType(int channel)

View file

@ -132,7 +132,7 @@ void IPC_HLE_UpdateCallback(u64 userdata, s64 cyclesLate)
void VICallback(u64 userdata, s64 cyclesLate) void VICallback(u64 userdata, s64 cyclesLate)
{ {
VideoInterface::Update(CoreTiming::GetTicks() - cyclesLate); VideoInterface::Update(0);
CoreTiming::ScheduleEvent(VideoInterface::GetTicksPerHalfLine() - cyclesLate, et_VI); CoreTiming::ScheduleEvent(VideoInterface::GetTicksPerHalfLine() - cyclesLate, et_VI);
} }

View file

@ -817,6 +817,9 @@ static void EndField()
// Run when: When a frame is scanned (progressive/interlace) // Run when: When a frame is scanned (progressive/interlace)
void Update(u64 ticks) void Update(u64 ticks)
{ {
Core::UpdateInputGate(!SConfig::GetInstance().m_BackgroundInput);
SerialInterface::UpdateDevices();
// Movie's frame counter should be updated before actually rendering the frame, // Movie's frame counter should be updated before actually rendering the frame,
// in case frame counter display is enabled // in case frame counter display is enabled
@ -854,8 +857,6 @@ void Update(u64 ticks)
if (s_half_line_of_next_si_poll == s_half_line_count) if (s_half_line_of_next_si_poll == s_half_line_count)
{ {
Core::UpdateInputGate(!SConfig::GetInstance().m_BackgroundInput);
SerialInterface::UpdateDevices();
s_half_line_of_next_si_poll += 2 * SerialInterface::GetPollXLines(); s_half_line_of_next_si_poll += 2 * SerialInterface::GetPollXLines();
} }

View file

@ -276,7 +276,9 @@ static void BPWritten(const BPCmd& bp)
} }
else else
{ {
// Temp hack to get lag reduction code working
if (destAddr == 0x0) { destAddr = 0x4f0c00; } if (destAddr == 0x0) { destAddr = 0x4f0c00; }
// We should be able to get away with deactivating the current bbox tracking // We should be able to get away with deactivating the current bbox tracking
// here. Not sure if there's a better spot to put this. // here. Not sure if there's a better spot to put this.
// the number of lines copied is determined by the y scale * source efb height // the number of lines copied is determined by the y scale * source efb height