mirror of https://github.com/PCSX2/pcsx2.git
Fixed a slight error in my last commit, fixed a bug from another previous commit and put in rama's hack for FFX which was bugged from r604, i know why its happening, but how to solve it properly is the issue.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@772 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
c8683cb350
commit
81b038ed41
|
@ -250,6 +250,13 @@ void GIFdma()
|
||||||
GIFchain(); //Transfers the data set by the switch
|
GIFchain(); //Transfers the data set by the switch
|
||||||
FreezeRegs(0);
|
FreezeRegs(0);
|
||||||
if(gif->qwc == 0 && (gif->chcr & 0xc) == 0) gspath3done = 1;
|
if(gif->qwc == 0 && (gif->chcr & 0xc) == 0) gspath3done = 1;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(psHu32(GIF_MODE) & 0x4)
|
||||||
|
CPU_INT(2, min( 8, (int)gif->qwc )/** BIAS*/);
|
||||||
|
else
|
||||||
|
CPU_INT(2, gif->qwc/* * BIAS*/);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -312,19 +319,24 @@ void GIFdma()
|
||||||
{
|
{
|
||||||
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
||||||
{
|
{
|
||||||
CPU_INT(2, min( 8, (int)gif->qwc )* BIAS);
|
CPU_INT(2, min( 8, (int)gif->qwc )/** BIAS*/);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ptag = (u32*)dmaGetAddr(gif->tadr); //Set memory pointer to TADR
|
ptag = (u32*)dmaGetAddr(gif->tadr); //Set memory pointer to TADR
|
||||||
gif->qwc = (u16)ptag[0]; //QWC set to lower 16bits of the tag
|
gif->qwc = (u16)ptag[0]; //QWC set to lower 16bits of the tag
|
||||||
gif->chcr = ( gif->chcr & 0xFFFF ) | ( (*ptag) & 0xFFFF0000 ); //Transfer upper part of tag to CHCR bits 31-15
|
gif->chcr = ( gif->chcr & 0xFFFF ) | ( (*ptag) & 0xFFFF0000 ); //Transfer upper part of tag to CHCR bits 31-15
|
||||||
CPU_INT(2, gif->qwc * BIAS);
|
|
||||||
|
if(psHu32(GIF_MODE) & 0x4)
|
||||||
|
CPU_INT(2, min( 8, (int)gif->qwc )/** BIAS*/);
|
||||||
|
else
|
||||||
|
CPU_INT(2, gif->qwc /** BIAS*/);
|
||||||
|
|
||||||
gif->qwc = 0;
|
gif->qwc = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//CPU_INT(2, gif->qwc * BIAS);
|
//CPU_INT(2, gif->qwc /** BIAS*/);
|
||||||
gscycles = 0;
|
gscycles = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -358,11 +370,11 @@ void dmaGIF() {
|
||||||
gif->chcr = ( gif->chcr & 0xFFFF ) | ( (*ptag) & 0xFFFF0000 ); //Transfer upper part of tag to CHCR bits 31-15
|
gif->chcr = ( gif->chcr & 0xFFFF ) | ( (*ptag) & 0xFFFF0000 ); //Transfer upper part of tag to CHCR bits 31-15
|
||||||
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
||||||
{
|
{
|
||||||
CPU_INT(2, min( 8, (int)gif->qwc ) * BIAS);
|
CPU_INT(2, min( 8, (int)gif->qwc ) /** BIAS*/);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CPU_INT(2, gif->qwc * BIAS);
|
CPU_INT(2, gif->qwc /** BIAS*/);
|
||||||
}
|
}
|
||||||
gif->qwc = 0;
|
gif->qwc = 0;
|
||||||
return;
|
return;
|
||||||
|
@ -373,13 +385,12 @@ void dmaGIF() {
|
||||||
gspath3done = 1; //Halflife sets a QWC amount in chain mode, no tadr set.
|
gspath3done = 1; //Halflife sets a QWC amount in chain mode, no tadr set.
|
||||||
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
||||||
{
|
{
|
||||||
CPU_INT(2, min( 8, (int)gif->qwc ) * BIAS);
|
CPU_INT(2, min( 8, (int)gif->qwc ) /** BIAS*/);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CPU_INT(2, gif->qwc * BIAS);
|
CPU_INT(2, gif->qwc /** BIAS*/);
|
||||||
}
|
}
|
||||||
GIFdma();
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -388,11 +399,11 @@ void dmaGIF() {
|
||||||
//GIFdma();
|
//GIFdma();
|
||||||
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
if((psHu32(GIF_MODE) & 0x4) && gif->qwc != 0)
|
||||||
{
|
{
|
||||||
CPU_INT(2, min( 8, (int)gif->qwc ) * BIAS);
|
CPU_INT(2, min( 8, (int)gif->qwc ) /** BIAS*/);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CPU_INT(2, gif->qwc * BIAS);
|
CPU_INT(2, gif->qwc /** BIAS*/);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue