mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-25 19:55:50 +00:00
Set some defaults for config. look into music bug
This commit is contained in:
parent
fcb44de8a4
commit
17950c77e2
7 changed files with 11 additions and 17 deletions
|
@ -145,7 +145,7 @@ const Info<bool> GFX_HACK_SKIP_EFB_COPY_TO_RAM{{System::GFX, "Hacks", "EFBToText
|
|||
const Info<bool> GFX_HACK_SKIP_XFB_COPY_TO_RAM{{System::GFX, "Hacks", "XFBToTextureEnable"}, true};
|
||||
const Info<bool> GFX_HACK_DISABLE_COPY_TO_VRAM{{System::GFX, "Hacks", "DisableCopyToVRAM"}, false};
|
||||
const Info<bool> GFX_HACK_DEFER_EFB_COPIES{{System::GFX, "Hacks", "DeferEFBCopies"}, true};
|
||||
const Info<bool> GFX_HACK_IMMEDIATE_XFB{{System::GFX, "Hacks", "ImmediateXFBEnable"}, false};
|
||||
const Info<bool> GFX_HACK_IMMEDIATE_XFB{{System::GFX, "Hacks", "ImmediateXFBEnable"}, true};
|
||||
const Info<bool> GFX_HACK_SKIP_DUPLICATE_XFBS{{System::GFX, "Hacks", "SkipDuplicateXFBs"}, true};
|
||||
const Info<bool> GFX_HACK_COPY_EFB_SCALED{{System::GFX, "Hacks", "EFBScaledCopy"}, true};
|
||||
const Info<bool> GFX_HACK_EFB_EMULATE_FORMAT_CHANGES{
|
||||
|
|
|
@ -1357,7 +1357,7 @@ static void ScheduleReads(u64 offset, u32 length, const DiscIO::Partition& parti
|
|||
u64 dvd_offset = DVDThread::PartitionOffsetToRawOffset(offset, partition);
|
||||
dvd_offset = Common::AlignDown(dvd_offset, DVD_ECC_BLOCK_SIZE);
|
||||
|
||||
if (SConfig::GetInstance().bFastDiscSpeed)
|
||||
if (SConfig::GetInstance().bFastDiscSpeed) // DVDThread::GetFileName(partition, dvd_offset).find("audio") == std::string::npos
|
||||
{
|
||||
// The SUDTR setting makes us act as if all reads are buffered
|
||||
buffer_start = std::numeric_limits<u64>::min();
|
||||
|
|
|
@ -411,4 +411,8 @@ void ReadFile(std::string& fileName, std::vector<u8>& buf)
|
|||
INFO_LOG(SLIPPI, "Failed to open file: %s", fileName.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
std::string GetFileName(const DiscIO::Partition &partition, u64 offset) {
|
||||
return s_disc->GetFileSystem(partition)->FindFileInfo(offset)->GetName();
|
||||
}
|
||||
} // namespace DVDThread
|
||||
|
|
|
@ -62,4 +62,5 @@ void StartReadToEmulatedRAM(u32 output_address, u64 dvd_offset, u32 length,
|
|||
s64 ticks_until_completion);
|
||||
|
||||
void ReadFile(std::string& fileName, std::vector<u8>& buf);
|
||||
std::string GetFileName(const DiscIO::Partition& partition, u64 offset);
|
||||
} // namespace DVDThread
|
||||
|
|
|
@ -88,6 +88,8 @@ void HacksWidget::CreateWidgets()
|
|||
m_store_xfb_copies = new GraphicsBool(tr("Store XFB Copies to Texture Only"),
|
||||
Config::GFX_HACK_SKIP_XFB_COPY_TO_RAM);
|
||||
m_immediate_xfb = new GraphicsBool(tr("Immediately Present XFB"), Config::GFX_HACK_IMMEDIATE_XFB);
|
||||
// Don't let people touch this
|
||||
m_immediate_xfb->setEnabled(false);
|
||||
m_skip_duplicate_xfbs = new GraphicsBool(tr("Skip Presenting Duplicate Frames"),
|
||||
Config::GFX_HACK_SKIP_DUPLICATE_XFBS);
|
||||
|
||||
|
|
|
@ -255,10 +255,12 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine
|
|||
}
|
||||
else
|
||||
{
|
||||
#ifndef IS_PLAYBACK
|
||||
if (Settings::Instance().IsBootDefaultISO() && !Settings::Instance().GetDefaultGame().isEmpty())
|
||||
{
|
||||
boot = BootParameters::GenerateFromFile(Settings::Instance().GetDefaultGame().toStdString(), save_state_path);
|
||||
}
|
||||
#endif
|
||||
|
||||
MainWindow win{std::move(boot), static_cast<const char*>(options.get("movie"))};
|
||||
if (options.is_set("debugger"))
|
||||
|
|
|
@ -300,28 +300,13 @@ static void BPWritten(const BPCmd& bp)
|
|||
destAddr, srcRect.left, srcRect.top, srcRect.right, srcRect.bottom,
|
||||
bpmem.copyTexSrcWH.x + 1, destStride, height, yScale);
|
||||
|
||||
#ifdef IS_PLAYBACK
|
||||
bool is_depth_copy = bpmem.zcontrol.pixel_format == PEControl::Z24;
|
||||
auto one = std::chrono::high_resolution_clock::now();
|
||||
g_texture_cache->CopyRenderTargetToTexture(
|
||||
destAddr, EFBCopyFormat::XFB, copy_width, height, destStride, is_depth_copy, srcRect,
|
||||
false, false, yScale, s_gammaLUT[PE_copy.gamma], bpmem.triggerEFBCopy.clamp_top,
|
||||
bpmem.triggerEFBCopy.clamp_bottom, bpmem.copyfilter.GetCoefficients());
|
||||
auto two = std::chrono::high_resolution_clock::now();
|
||||
WARN_LOG(SLIPPI, "timer: %d", (two - one).count());
|
||||
#endif
|
||||
|
||||
// This stays in to signal end of a "frame"
|
||||
g_renderer->RenderToXFB(destAddr, srcRect, destStride, height, s_gammaLUT[PE_copy.gamma]);
|
||||
|
||||
if (g_ActiveConfig.bImmediateXFB)
|
||||
{
|
||||
// below div two to convert from bytes to pixels - it expects width, not stride
|
||||
#ifdef IS_PLAYBACK
|
||||
g_renderer->Swap(destAddr, destStride / 2, destStride, height, CoreTiming::GetTicks(), s_gammaLUT[PE_copy.gamma], srcRect, bpmem.copyfilter.GetCoefficients(), yScale, bpmem.triggerEFBCopy.clamp_top, bpmem.triggerEFBCopy.clamp_bottom);
|
||||
#else
|
||||
g_renderer->Swap(destAddr, destStride / 2, destStride, height, CoreTiming::GetTicks(), s_gammaLUT[PE_copy.gamma], srcRect, bpmem.copyfilter.GetCoefficients(), yScale, bpmem.triggerEFBCopy.clamp_top, bpmem.triggerEFBCopy.clamp_bottom);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue