// some PAD or SPU plugins would not work anymore)\r
////////////////////////////////////////////////////////////////////////\r
\r
-long CALLBACK GPUopen(int hwndGPU)\r
+long CALLBACK GPUopen(unsigned long *disp, char *cap, char *cfg)\r
{\r
iResX=800;iResY=480;\r
iColDepth=8;\r
if(count>0) GPUwriteDataMem(&baseAddrL[dmaMem>>2],count);\r
\r
addr = baseAddrL[addr>>2]&0xffffff;\r
- }\r
-while (addr != 0xffffff);\r
-\r
+ } while (!(addr & 0x800000)); // contrary to some documentation, the end-of-linked-list marker is not actually 0xFF'FFFF\r
+ // any pointer with bit 23 set will do.\r
GPUIsIdle;\r
\r
return 0;\r