Qt: Update link

This commit is contained in:
Stenzek 2023-11-11 13:35:14 +10:00
parent 6d35d5983b
commit 3093d40869
No known key found for this signature in database
2 changed files with 7 additions and 12 deletions

View File

@ -2730,26 +2730,28 @@ bool CodeGenerator::Compile_cop0(Instruction instruction, const CodeCache::Instr
// Emit an interrupt check on load of CAUSE/SR. // Emit an interrupt check on load of CAUSE/SR.
Value sr_value = m_register_cache.AllocateScratch(RegSize_32); Value sr_value = m_register_cache.AllocateScratch(RegSize_32);
Value cause_value = m_register_cache.AllocateScratch(RegSize_32); Value cause_value = m_register_cache.AllocateScratch(RegSize_32);
m_register_cache.InhibitAllocation();
// m_cop0_regs.sr.IEc && ((m_cop0_regs.cause.Ip & m_cop0_regs.sr.Im) != 0) // m_cop0_regs.sr.IEc && ((m_cop0_regs.cause.Ip & m_cop0_regs.sr.Im) != 0)
LabelType no_interrupt; LabelType no_interrupt;
EmitLoadCPUStructField(sr_value.host_reg, sr_value.size, offsetof(State, cop0_regs.sr.bits)); EmitLoadCPUStructField(sr_value.host_reg, sr_value.size, offsetof(State, cop0_regs.sr.bits));
EmitLoadCPUStructField(cause_value.host_reg, cause_value.size, offsetof(State, cop0_regs.cause.bits)); EmitLoadCPUStructField(cause_value.host_reg, cause_value.size, offsetof(State, cop0_regs.cause.bits));
EmitBranchIfBitClear(sr_value.host_reg, sr_value.size, 0, &no_interrupt); EmitBranchIfBitClear(sr_value.host_reg, sr_value.size, 0, &no_interrupt);
m_register_cache.InhibitAllocation();
EmitAnd(sr_value.host_reg, sr_value.host_reg, cause_value); EmitAnd(sr_value.host_reg, sr_value.host_reg, cause_value);
EmitTest(sr_value.host_reg, Value::FromConstantU32(0xFF00)); EmitTest(sr_value.host_reg, Value::FromConstantU32(0xFF00));
EmitConditionalBranch(Condition::Zero, false, &no_interrupt); EmitConditionalBranch(Condition::Zero, false, &no_interrupt);
m_register_cache.UninhibitAllocation();
EmitBranch(GetCurrentFarCodePointer()); EmitBranch(GetCurrentFarCodePointer());
SwitchToFarCode(); SwitchToFarCode();
m_register_cache.PushState();
WriteNewPC(CalculatePC(), false); WriteNewPC(CalculatePC(), false);
EmitStoreCPUStructField(offsetof(State, downcount), Value::FromConstantU32(0)); EmitStoreCPUStructField(offsetof(State, downcount), Value::FromConstantU32(0));
EmitExceptionExit(); EmitExceptionExit();
m_register_cache.PopState();
SwitchToNearCode(); SwitchToNearCode();
EmitBindLabel(&no_interrupt); EmitBindLabel(&no_interrupt);
m_register_cache.UninhibitAllocation();
} }
else if (reg == Cop0Reg::DCIC && g_settings.cpu_recompiler_memory_exceptions) else if (reg == Cop0Reg::DCIC && g_settings.cpu_recompiler_memory_exceptions)
{ {
@ -2780,8 +2782,10 @@ bool CodeGenerator::Compile_cop0(Instruction instruction, const CodeCache::Instr
// exit block early if enabled // exit block early if enabled
EmitBranch(GetCurrentFarCodePointer()); EmitBranch(GetCurrentFarCodePointer());
SwitchToFarCode(); SwitchToFarCode();
m_register_cache.PushState();
WriteNewPC(CalculatePC(), false); WriteNewPC(CalculatePC(), false);
EmitExceptionExit(); EmitExceptionExit();
m_register_cache.PopState();
SwitchToNearCode(); SwitchToNearCode();
EmitBindLabel(&not_enabled); EmitBindLabel(&not_enabled);

View File

@ -1304,7 +1304,7 @@ void MainWindow::onGitHubRepositoryActionTriggered()
void MainWindow::onIssueTrackerActionTriggered() void MainWindow::onIssueTrackerActionTriggered()
{ {
QtUtils::OpenURL(this, "https://github.com/stenzek/duckstation/issues"); QtUtils::OpenURL(this, "https://www.duckstation.org/issues.html");
} }
void MainWindow::onDiscordServerActionTriggered() void MainWindow::onDiscordServerActionTriggered()
@ -1360,9 +1360,6 @@ void MainWindow::onGameListEntryActivated()
return; return;
} }
// we might still be saving a resume state...
// System::WaitForSaveStateFlush();
std::optional<std::string> save_path; std::optional<std::string> save_path;
if (!entry->serial.empty()) if (!entry->serial.empty())
{ {
@ -2644,12 +2641,6 @@ void MainWindow::requestExit(bool allow_confirm /* = true */)
void MainWindow::checkForSettingChanges() void MainWindow::checkForSettingChanges()
{ {
#if 0
// FIXME: Triggers incorrectly
if (m_display_widget)
m_display_widget->updateRelativeMode(s_system_valid && !s_system_paused);
#endif
LogWindow::updateSettings(); LogWindow::updateSettings();
updateWindowState(); updateWindowState();
} }