mirror of https://github.com/PCSX2/pcsx2.git
Small change to savestates when IPU is busy.
Dunno what this random IPU work/interrupt was supposed to fix. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2832 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
d617fe7927
commit
1361a872fd
|
@ -102,7 +102,7 @@ __forceinline void IPUProcessInterrupt()
|
||||||
if (ipuRegs->ctrl.BUSY && g_BP.IFC) IPUWorker();
|
if (ipuRegs->ctrl.BUSY && g_BP.IFC) IPUWorker();
|
||||||
}
|
}
|
||||||
|
|
||||||
__forceinline void init_g_decoder()
|
void init_g_decoder()
|
||||||
{
|
{
|
||||||
//other stuff
|
//other stuff
|
||||||
g_decoder.intra_quantizer_matrix = (u8*)iq;
|
g_decoder.intra_quantizer_matrix = (u8*)iq;
|
||||||
|
@ -115,7 +115,7 @@ __forceinline void init_g_decoder()
|
||||||
g_decoder.stride = 16;
|
g_decoder.stride = 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
__forceinline void mpeg2_init()
|
void mpeg2_init()
|
||||||
{
|
{
|
||||||
if (!mpeg2_inited)
|
if (!mpeg2_inited)
|
||||||
{
|
{
|
||||||
|
@ -181,8 +181,6 @@ void ReportIPU()
|
||||||
|
|
||||||
void SaveStateBase::ipuFreeze()
|
void SaveStateBase::ipuFreeze()
|
||||||
{
|
{
|
||||||
IPUProcessInterrupt();
|
|
||||||
|
|
||||||
// Get a report of the status of the ipu variables when saving and loading savestates.
|
// Get a report of the status of the ipu variables when saving and loading savestates.
|
||||||
//ReportIPU();
|
//ReportIPU();
|
||||||
FreezeTag("IPU");
|
FreezeTag("IPU");
|
||||||
|
@ -388,7 +386,7 @@ static void ipuBCLR(u32 val)
|
||||||
IPU_LOG("Clear IPU input FIFO. Set Bit offset=0x%X", g_BP.BP);
|
IPU_LOG("Clear IPU input FIFO. Set Bit offset=0x%X", g_BP.BP);
|
||||||
}
|
}
|
||||||
|
|
||||||
static __forceinline BOOL ipuIDEC(u32 val)
|
static BOOL ipuIDEC(u32 val)
|
||||||
{
|
{
|
||||||
tIPU_CMD_IDEC idec(val);
|
tIPU_CMD_IDEC idec(val);
|
||||||
|
|
||||||
|
@ -522,7 +520,7 @@ static BOOL __fastcall ipuVDEC(u32 val)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL ipuFDEC(u32 val)
|
static __forceinline BOOL ipuFDEC(u32 val)
|
||||||
{
|
{
|
||||||
if (!getBits32((u8*)&ipuRegs->cmd.DATA, 0)) return FALSE;
|
if (!getBits32((u8*)&ipuRegs->cmd.DATA, 0)) return FALSE;
|
||||||
|
|
||||||
|
@ -534,7 +532,7 @@ static BOOL ipuFDEC(u32 val)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static __forceinline BOOL ipuSETIQ(u32 val)
|
static BOOL ipuSETIQ(u32 val)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
@ -566,7 +564,7 @@ static __forceinline BOOL ipuSETIQ(u32 val)
|
||||||
return ipu_cmd.pos[0] == 64;
|
return ipu_cmd.pos[0] == 64;
|
||||||
}
|
}
|
||||||
|
|
||||||
static __forceinline BOOL ipuSETVQ(u32 val)
|
static BOOL ipuSETVQ(u32 val)
|
||||||
{
|
{
|
||||||
ipu_cmd.pos[0] += getBits((u8*)vqclut + ipu_cmd.pos[0], 256 - 8 * ipu_cmd.pos[0], 1); // 16*2*8
|
ipu_cmd.pos[0] += getBits((u8*)vqclut + ipu_cmd.pos[0], 256 - 8 * ipu_cmd.pos[0], 1); // 16*2*8
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue