A few more revs for the 1.0 branch.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/1.0@5454 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
sudonim1@gmail.com 2012-11-14 18:36:45 +00:00
parent de989426d3
commit 1a5cf2eb9e
4 changed files with 24 additions and 3 deletions

View File

@ -3,9 +3,12 @@ Bug fix release 1.0.1:
System: System:
Fixed incorrect handling of framerate adjustment percentage settings. Fixed incorrect handling of framerate adjustment percentage settings.
Fixed cases in which GS window settings do not apply until the PCSX2 is restarted. Fixed cases in which GS window settings do not apply until the PCSX2 is restarted.
Hidden disable GS output option as isn't currently stable and is only meant for testing.
Core: Core:
Fixed crash on startup when virtual memory for SuperVU cannot be allocated. Fixed crash on startup when virtual memory for SuperVU cannot be allocated.
Fixed scratchpad DMA access to VU1 memory.
SPU2-X: SPU2-X:
Fixed out of bounds array access in ADPCM decoding causing bad audio. (Multiple Crash Bandicoot games.) Fixed out of bounds array access in ADPCM decoding causing bad audio. (Multiple Crash Bandicoot games.)
Disable digital effects when the effects buffer has an illegal address until we know what to do with it. Prevents crash / memory corruption.

View File

@ -313,6 +313,8 @@ Panels::VideoPanel::VideoPanel( wxWindow* parent ) :
L"Warning: This option can be enabled on-the-fly but typically cannot be disabled on-the-fly (video will typically be garbage)." L"Warning: This option can be enabled on-the-fly but typically cannot be disabled on-the-fly (video will typically be garbage)."
) ); ) );
m_check_DisableOutput->Hide(); // Band-aid fix since currently broken
//GSWindowSettingsPanel* winpan = new GSWindowSettingsPanel( left ); //GSWindowSettingsPanel* winpan = new GSWindowSettingsPanel( left );
//winpan->AddFrame(_("Display/Window")); //winpan->AddFrame(_("Display/Window"));

View File

@ -120,7 +120,20 @@ __fi tDMA_TAG* SPRdmaGetAddr(u32 addr, bool write)
vu1Thread.WaitVU(); vu1Thread.WaitVU();
} }
//Access for VU Memory //Access for VU Memory
return (tDMA_TAG*)vtlb_GetPhyPtr(addr & 0x1FFFFFF0);
if((addr >= 0x1100c000) && (addr < 0x11010000))
return (tDMA_TAG*)VU1.Mem + (addr & 0x3ff0);
//Possibly not needed but the manual doesn't say SPR cannot access it.
if((addr >= 0x11008000) && (addr < 0x1100c000))
return (tDMA_TAG*)VU1.Micro + (addr & 0x3ff0);
if ((addr >= 0x11000000) && (addr < 0x11004000))
return (tDMA_TAG*)VU0.Micro + (addr & 0xff0);
if ((addr >= 0x11004000) && (addr < 0x11008000))
return (tDMA_TAG*)VU0.Mem + (addr & 0xff0);
} }
else else
{ {

View File

@ -702,7 +702,10 @@ StereoOut32 V_Core::Mix( const VoiceMixSet& inVoices, const StereoOut32& Input,
// On the other hand, updating the buffer is cheap and easy, so might as well. ;) // On the other hand, updating the buffer is cheap and easy, so might as well. ;)
Reverb_AdvanceBuffer(); // Updates the reverb work area as well, if needed. Reverb_AdvanceBuffer(); // Updates the reverb work area as well, if needed.
if (!FxEnable) return TD;
// ToDo:
// Bad EndA causes memory corruption. Bad for us, unknown on PS2!
if (!FxEnable || EffectsEndA >= 0x100000) return TD;
StereoOut32 TW; StereoOut32 TW;