Bring back GSnull, zzogl, and old plugins from the dead!

(they were crashing with the new Gif rewrite... shouldn't anymore)

Although Jake had added the new "GSgifTransfer" callback to these plugins in the past, he forgot to modify the .def files so pcsx2 can actually use them :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4832 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
cottonvibes 2011-07-27 08:16:51 +00:00
parent c918df60d2
commit a4059b45b5
5 changed files with 47 additions and 31 deletions

View File

@ -20,6 +20,7 @@
#include <wx/file.h>
#include "GS.h"
#include "Gif.h"
#include "CDVD/CDVDisoReader.h"
#include "Utilities/ScopedPtr.h"
@ -196,6 +197,7 @@ void CALLBACK GS_getTitleInfo2( char* dest, size_t length )
dest[2] = 0;
}
#if COPY_GS_PACKET_TO_MTGS == 1
// This legacy passthrough function is needed because the old GS plugins tended to assume that
// a PATH1 transfer that didn't EOP needed an automatic EOP (which was needed to avoid a crash
// in the BIOS when it starts an XGKICK prior to having an EOP written to VU1 memory). The new
@ -240,7 +242,15 @@ static void CALLBACK GS_gifTransferLegacy( const u32* src, u32 data )
}
}
}
#else
// In this case the MTGS thread will only be using the "GSgifTransfer"
// callback, which falls back to this function if its an old plugin.
// Since GSgifTransfer2 is the least hacky old call-back, and MTGS will
// just be using a single gif path, we'll just solely use path 2...
static void CALLBACK GS_gifTransferLegacy(const u32* src, u32 data) {
GSgifTransfer2((u32*)src, data);
}
#endif
// PAD
_PADinit PADinit;

View File

@ -1,4 +1,4 @@
; FireWire.def : Declares the module parameters for the DLL.
; GS.def : Declares the module parameters for the DLL.
;LIBRARY "GSnull"
@ -12,30 +12,31 @@ EXPORTS
GSclose @7
GSshutdown @8
GSvsync @9
GSgifTransfer1 @10
GSgifTransfer2 @11
GSgifTransfer3 @12
GSgetLastTag @13
GSgifSoftReset @14
GSreadFIFO @15
GSreadFIFO2 @16
GSkeyEvent @17
GSchangeSaveState @18
GSmakeSnapshot @19
GSmakeSnapshot2 @20
GSirqCallback @21
GSprintf @22
GSsetBaseMem @23
GSsetGameCRC @24
GSsetFrameSkip @25
GSsetupRecording @26
GSreset @27
GSwriteCSR @28
GSgetDriverInfo @29
GSsetWindowInfo @30
GSfreeze @31
GSconfigure @32
GSabout @33
GStest @34
GSgifTransfer @10
GSgifTransfer1 @11
GSgifTransfer2 @12
GSgifTransfer3 @13
GSgetLastTag @14
GSgifSoftReset @15
GSreadFIFO @16
GSreadFIFO2 @17
GSkeyEvent @18
GSchangeSaveState @19
GSmakeSnapshot @20
GSmakeSnapshot2 @21
GSirqCallback @22
GSprintf @23
GSsetBaseMem @24
GSsetGameCRC @25
GSsetFrameSkip @26
GSsetupRecording @27
GSreset @28
GSwriteCSR @29
GSgetDriverInfo @30
GSsetWindowInfo @31
GSfreeze @32
GSconfigure @33
GSabout @34
GStest @35

View File

@ -417,9 +417,9 @@ __forceinline void _TransferLocalLocal()
if (PSMT_BITMODE(gs.srcbuf.psm) == 0) widthlimit = 2;
if ((gs.imageWnew & widthlimit) != 0) return;
for(int i = gs.trxpos.sy, i2 = gs.trxpos.dy; i < maxY; i++, i2++)
for(u32 i = gs.trxpos.sy, i2 = gs.trxpos.dy; i < maxY; i++, i2++)
{
for(int j = gs.trxpos.sx, j2 = gs.trxpos.dx; j < maxX; j += widthlimit, j2 += widthlimit)
for(u32 j = gs.trxpos.sx, j2 = gs.trxpos.dx; j < maxX; j += widthlimit, j2 += widthlimit)
{
wp(pDstBuf, j2%2048, i2%2048,
rp(pSrcBuf, j%2048, i%2048, gs.srcbuf.bw), gs.dstbuf.bw);

View File

@ -12,6 +12,7 @@ EXPORTS
GSshutdown @6
GSopen @7
GSclose @8
GSgifTransfer @12
GSgifTransfer1 @13
GSgifTransfer2 @14
GSgifTransfer3 @15

View File

@ -558,6 +558,10 @@
RelativePath=".\zerogs.bmp"
>
</File>
<File
RelativePath=".\zerogs.def"
>
</File>
<File
RelativePath=".\zerogs.rc"
>
@ -572,11 +576,11 @@
</File>
</Filter>
<File
RelativePath="..\ps2hw.dat"
RelativePath=".\ps2hw.dat"
>
</File>
<File
RelativePath=".\ps2hw.dat"
RelativePath="..\ps2hw.dat"
>
</File>
</Files>