diff --git a/Include/dxwnd.h b/Include/dxwnd.h index e825a0e..b141e9a 100644 --- a/Include/dxwnd.h +++ b/Include/dxwnd.h @@ -123,7 +123,7 @@ #define DISABLEFOGGING 0x00000080 // Disable D3D fogging #define NOPOWER2FIX 0x00000100 // Handle textures whose size is not a power of 2 (32, 64, 128 ...) #define NOPERFCOUNTER 0x00000200 // Disables the GetPerfCounter performance metrics API,as if it was not supported.... -#define ADDPROXYLIBS 0x00000400 // Add proxy libs to otherwise hook-resilient system libraries (e.g. d3d9.dll) +//#define ADDPROXYLIBS 0x00000400 // Add proxy libs to otherwise hook-resilient system libraries (e.g. d3d9.dll) #define INTERCEPTRDTSC 0x00000800 // Intercapts RDTSC opcodes to hook at assembly level #define LIMITSCREENRES 0x00001000 // Limit available screen resolution up to defined maximum #define NOFILLRECT 0x00002000 // Suppress FillRect calls @@ -131,6 +131,7 @@ #define HIDEDESKTOP 0x00008000 // Hide desktop background #define STRETCHTIMERS 0x00010000 // Enables timers stretching when TIMESTRETCH is on #define NOFLIPEMULATION 0x00020000 // Compensate the effect of Flip-ping through Blt operations +#define NOTEXTURES 0x00040000 // Disabled (whitened) textures // logging Tflags DWORD: #define OUTTRACE 0x00000001 // enables tracing to dxwnd.log in general diff --git a/build/d3d9.dll b/build/d3d9.dll deleted file mode 100644 index 4accda6..0000000 --- a/build/d3d9.dll +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2886c8ffed47b9881f488c1ff15fac4653f83576d77cb1f4462caf7ebe2ded94 -size 556544 diff --git a/build/dxwnd.dll b/build/dxwnd.dll index 2a3b826..c4cc231 100644 --- a/build/dxwnd.dll +++ b/build/dxwnd.dll @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d99c6a80bd9c8ad4d82a995f662236e7a452ad2317a55eda538c7d2ea4ed3bb6 -size 463872 +oid sha256:61f2f3aab11ece5bb74593c0728de708356a37ad7b7bc1e45b03ae361c87419c +size 464896 diff --git a/build/dxwnd.exe b/build/dxwnd.exe index 455ed96..2b44df2 100644 --- a/build/dxwnd.exe +++ b/build/dxwnd.exe @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9eab6b03785ebc8bf84e56c3a16897517ad0b7b5f77bdba87630c6157b63dba6 +oid sha256:7fb261f28e57f5293398249aa0f1f27910f581d0cd30c6fb2108160f5da36f01 size 535552 diff --git a/build/dxwnd.ini b/build/dxwnd.ini deleted file mode 100644 index 91aeb61..0000000 --- a/build/dxwnd.ini +++ /dev/null @@ -1,3931 +0,0 @@ -[target] -title0=007 NightFire -path0=D:\Games\007_NightFire\Bond.exe -module0= -opengllib0= -ver0=0 -coord0=0 -flag0=134234150 -flagg0=1207959552 -flagh0=20 -flagi0=4 -tflag0=0 -initx0=0 -inity0=0 -minx0=0 -miny0=0 -maxx0=0 -maxy0=0 -posx0=50 -posy0=50 -sizx0=800 -sizy0=600 -maxfps0=0 -initts0=0 -winver0=0 -maxres0=0 -title1=101 The Airborne Invasion of Normandy -path1=D:\Games\101air\101.exe -module1= -opengllib1= -ver1=0 -coord1=0 -flag1=134234146 -flagg1=134217728 -flagh1=20 -flagi1=0 -tflag1=192 -initx1=0 -inity1=0 -minx1=0 -miny1=0 -maxx1=0 -maxy1=0 -posx1=50 -posy1=50 -sizx1=800 -sizy1=600 -maxfps1=0 -initts1=0 -winver1=0 -maxres1=0 -title2=A10 Cuba -path2=D:\Games\A10\A10Cuba.exe -module2= -opengllib2= -ver2=0 -coord2=0 -flag2=671096866 -flagg2=1207959568 -flagh2=20 -flagi2=4 -tflag2=2 -initx2=0 -inity2=0 -minx2=0 -miny2=0 -maxx2=0 -maxy2=0 -posx2=50 -posy2=50 -sizx2=800 -sizy2=600 -maxfps2=0 -initts2=0 -winver2=0 -maxres2=0 -title3=Actua Soccer 3 -path3=D:\Games\ActuaSoccer3\SOCCER3D.EXE -module3= -opengllib3= -ver3=0 -coord3=0 -flag3=671088674 -flagg3=-939524096 -flagh3=20 -flagi3=4 -tflag3=2 -initx3=0 -inity3=0 -minx3=0 -miny3=0 -maxx3=0 -maxy3=0 -posx3=50 -posy3=50 -sizx3=800 -sizy3=600 -maxfps3=0 -initts3=0 -winver3=0 -maxres3=0 -title4=Age of Empires III -path4=D:\Games\Age of Empires III\age3.exe -module4= -opengllib4= -ver4=0 -coord4=0 -flag4=1753358370 -flagg4=134217728 -flagh4=20 -flagi4=0 -tflag4=2 -initx4=0 -inity4=0 -minx4=0 -miny4=0 -maxx4=0 -maxy4=0 -posx4=50 -posy4=50 -sizx4=800 -sizy4=600 -maxfps4=0 -initts4=0 -winver4=0 -maxres4=0 -title5=Amerzone -path5=D:\Games\Amerzone\amerzone.exe -module5= -opengllib5= -ver5=0 -coord5=0 -flag5=134234114 -flagg5=1207959568 -flagh5=20 -flagi5=4 -tflag5=0 -initx5=0 -inity5=0 -minx5=0 -miny5=0 -maxx5=0 -maxy5=0 -posx5=50 -posy5=50 -sizx5=800 -sizy5=600 -maxfps5=0 -initts5=0 -winver5=0 -maxres5=0 -title6=Ancient Evil (DEMO) -path6=D:\Games\Ancient Evil (Demo)\aecsc-demo.exe -module6= -opengllib6= -ver6=0 -coord6=0 -flag6=203440160 -flagg6=134217744 -flagh6=20 -flagi6=0 -tflag6=258 -initx6=0 -inity6=0 -minx6=0 -miny6=0 -maxx6=0 -maxy6=0 -posx6=50 -posy6=50 -sizx6=800 -sizy6=600 -maxfps6=0 -initts6=0 -winver6=0 -maxres6=0 -title7=Army Men RTS -path7=D:\Games\Army Men RTS\amrts.exe -module7= -opengllib7= -ver7=0 -coord7=0 -flag7=671105060 -flagg7=1207959552 -flagh7=20 -flagi7=4 -tflag7=0 -initx7=0 -inity7=0 -minx7=0 -miny7=0 -maxx7=0 -maxy7=0 -posx7=50 -posy7=50 -sizx7=800 -sizy7=600 -maxfps7=0 -initts7=0 -winver7=0 -maxres7=0 -title8=Beavis & Butthead Do U. -path8=D:\Games\B_b\BEAVIS.EXE -module8= -opengllib8= -ver8=0 -coord8=0 -flag8=671090722 -flagg8=1207959552 -flagh8=32788 -flagi8=0 -tflag8=2 -initx8=0 -inity8=0 -minx8=0 -miny8=0 -maxx8=0 -maxy8=0 -posx8=50 -posy8=50 -sizx8=800 -sizy8=600 -maxfps8=0 -initts8=0 -winver8=0 -maxres8=0 -title9=Black & White -path9=D:\Games\Black & White\runblack.exe -module9= -opengllib9= -ver9=0 -coord9=1 -flag9=679477280 -flagg9=1207959568 -flagh9=20 -flagi9=4 -tflag9=258 -initx9=0 -inity9=0 -minx9=0 -miny9=0 -maxx9=0 -maxy9=0 -posx9=50 -posy9=50 -sizx9=800 -sizy9=600 -maxfps9=0 -initts9=0 -winver9=0 -maxres9=0 -title10=Black Moon Chronicles -path10=D:\Games\Black Moon Chronicles\Lune noire\Engine.exe -module10= -opengllib10= -ver10=0 -coord10=0 -flag10=134234146 -flagg10=1207959568 -flagh10=32788 -flagi10=4 -tflag10=6210 -initx10=0 -inity10=0 -minx10=0 -miny10=0 -maxx10=0 -maxy10=0 -posx10=50 -posy10=50 -sizx10=800 -sizy10=600 -maxfps10=0 -initts10=0 -winver10=0 -maxres10=-1 -title11=Bomberbabe -path11=D:\Games\Ludonic\Bomberbabe.exe -module11= -opengllib11= -ver11=0 -coord11=0 -flag11=671088674 -flagg11=1207959552 -flagh11=20 -flagi11=4 -tflag11=0 -initx11=0 -inity11=0 -minx11=0 -miny11=0 -maxx11=0 -maxy11=0 -posx11=50 -posy11=50 -sizx11=800 -sizy11=600 -maxfps11=0 -initts11=0 -winver11=0 -maxres11=0 -title12=Bunnies must die -path12=D:\Games\Bunnies must die\bmd.exe -module12= -opengllib12= -ver12=1 -coord12=0 -flag12=142606370 -flagg12=1744830465 -flagh12=65556 -flagi12=4 -tflag12=258 -initx12=0 -inity12=0 -minx12=0 -miny12=0 -maxx12=0 -maxy12=0 -posx12=50 -posy12=50 -sizx12=800 -sizy12=600 -maxfps12=0 -initts12=0 -winver12=0 -maxres12=0 -title13=Carmageddon 2 (GLIDE) -path13=D:\Games\Carmageddon_2\carma2_HW.exe -module13= -opengllib13= -ver13=0 -coord13=0 -flag13=134217730 -flagg13=1208025088 -flagh13=20 -flagi13=12 -tflag13=0 -initx13=0 -inity13=0 -minx13=0 -miny13=0 -maxx13=0 -maxy13=0 -posx13=50 -posy13=50 -sizx13=800 -sizy13=600 -maxfps13=0 -initts13=0 -winver13=0 -maxres13=0 -title14=Carmageddon 2 (SW) -path14=D:\Games\Carmageddon_2\carma2_SW.exe -module14= -opengllib14= -ver14=0 -coord14=0 -flag14=671088674 -flagg14=1208025088 -flagh14=33562644 -flagi14=12 -tflag14=0 -initx14=0 -inity14=0 -minx14=0 -miny14=0 -maxx14=0 -maxy14=0 -posx14=50 -posy14=50 -sizx14=800 -sizy14=600 -maxfps14=0 -initts14=0 -winver14=0 -maxres14=0 -title15=Cave Story -path15=D:\Games\Cave Story\Doukutsu.exe -module15= -opengllib15= -ver15=0 -coord15=0 -flag15=134217762 -flagg15=1207959552 -flagh15=20 -flagi15=4 -tflag15=0 -initx15=0 -inity15=0 -minx15=0 -miny15=0 -maxx15=0 -maxy15=0 -posx15=50 -posy15=50 -sizx15=800 -sizy15=600 -maxfps15=0 -initts15=0 -winver15=0 -maxres15=0 -title16=Crimson Skies -path16=D:\Games\Crimson_Skies\crimson.exe -module16= -opengllib16= -ver16=7 -coord16=0 -flag16=134234148 -flagg16=-939524096 -flagh16=20 -flagi16=36 -tflag16=258 -initx16=0 -inity16=0 -minx16=0 -miny16=0 -maxx16=0 -maxy16=0 -posx16=50 -posy16=50 -sizx16=800 -sizy16=600 -maxfps16=0 -initts16=0 -winver16=0 -maxres16=0 -title17=Daikatana -path17=D:\Games\Daikatana\daikatana.exe -module17= -opengllib17= -ver17=12 -coord17=0 -flag17=269492742 -flagg17=537002497 -flagh17=20 -flagi17=0 -tflag17=2 -initx17=0 -inity17=0 -minx17=0 -miny17=0 -maxx17=0 -maxy17=0 -posx17=50 -posy17=50 -sizx17=800 -sizy17=600 -maxfps17=0 -initts17=0 -winver17=0 -maxres17=0 -title18=Dark Reign 1.7 -path18=D:\Games\Dark Reign 1.7\dkreign.exe -module18= -opengllib18= -ver18=0 -coord18=2 -flag18=134217762 -flagg18=1208025104 -flagh18=20 -flagi18=4 -tflag18=0 -initx18=0 -inity18=0 -minx18=0 -miny18=0 -maxx18=0 -maxy18=0 -posx18=50 -posy18=50 -sizx18=800 -sizy18=600 -maxfps18=0 -initts18=-4 -winver18=0 -maxres18=-1 -title19=Dark Vengeance -path19=D:\Games\dark_vengeance\dv.exe -module19= -opengllib19= -ver19=0 -coord19=0 -flag19=136314915 -flagg19=1476395008 -flagh19=65556 -flagi19=4 -tflag19=2048 -initx19=0 -inity19=0 -minx19=0 -miny19=0 -maxx19=0 -maxy19=0 -posx19=50 -posy19=50 -sizx19=800 -sizy19=600 -maxfps19=0 -initts19=0 -winver19=0 -maxres19=-1 -title20=Devastation -path20=D:\Games\Devastation\System\Devastation.exe -module20= -opengllib20= -ver20=0 -coord20=0 -flag20=167772198 -flagg20=1209008128 -flagh20=65556 -flagi20=2 -tflag20=322 -initx20=0 -inity20=0 -minx20=0 -miny20=0 -maxx20=0 -maxy20=0 -posx20=50 -posy20=50 -sizx20=320 -sizy20=240 -maxfps20=0 -initts20=0 -winver20=0 -maxres20=0 -title21=Doom Shareware for Windows 95 -path21=D:\Games\Doom Shareware for Windows 95\Doom95.exe -module21= -opengllib21= -ver21=0 -coord21=2 -flag21=134217762 -flagg21=1207959568 -flagh21=20 -flagi21=0 -tflag21=0 -initx21=0 -inity21=0 -minx21=0 -miny21=0 -maxx21=0 -maxy21=0 -posx21=50 -posy21=50 -sizx21=800 -sizy21=600 -maxfps21=0 -initts21=0 -winver21=0 -maxres21=0 -title22=Dracula Twins -path22=D:\Games\Dracula Twins\DraculaTwins.exe -module22= -opengllib22= -ver22=0 -coord22=0 -flag22=134217762 -flagg22=1207959552 -flagh22=20 -flagi22=4 -tflag22=0 -initx22=0 -inity22=0 -minx22=0 -miny22=0 -maxx22=0 -maxy22=0 -posx22=50 -posy22=50 -sizx22=800 -sizy22=600 -maxfps22=0 -initts22=0 -winver22=0 -maxres22=0 -title23=Duckman -path23=D:\Games\Duckman\DUCKMAN.EXE -module23= -opengllib23= -ver23=0 -coord23=0 -flag23=134217762 -flagg23=1209008128 -flagh23=33554452 -flagi23=4 -tflag23=2 -initx23=0 -inity23=0 -minx23=0 -miny23=0 -maxx23=0 -maxy23=0 -posx23=50 -posy23=50 -sizx23=800 -sizy23=600 -maxfps23=0 -initts23=0 -winver23=0 -maxres23=0 -title24=Duke Nukem - Manhattan Project (D3D8) -path24=D:\Games\Duke Nukem - Manhattan Project\prism3d.exe -module24=p3shared -opengllib24= -ver24=8 -coord24=0 -flag24=134217762 -flagg24=1208090624 -flagh24=20 -flagi24=4 -tflag24=0 -initx24=0 -inity24=0 -minx24=0 -miny24=0 -maxx24=0 -maxy24=0 -posx24=50 -posy24=50 -sizx24=800 -sizy24=600 -maxfps24=0 -initts24=0 -winver24=0 -maxres24=-1 -title25=Duke Nukem 3D -path25=D:\Games\Duke3d\DUKE3D.EXE -module25= -opengllib25= -ver25=0 -coord25=0 -flag25=134217762 -flagg25=1207959552 -flagh25=20 -flagi25=4 -tflag25=0 -initx25=0 -inity25=0 -minx25=0 -miny25=0 -maxx25=0 -maxy25=0 -posx25=50 -posy25=50 -sizx25=800 -sizy25=600 -maxfps25=0 -initts25=0 -winver25=0 -maxres25=0 -title26=Dungeon Keeper 2 (GOG) -path26=D:\Games\Dungeon Keeper 2 (GOG)\DKII.EXE -module26= -opengllib26= -ver26=0 -coord26=0 -flag26=136331298 -flagg26=1241513984 -flagh26=20 -flagi26=0 -tflag26=258 -initx26=0 -inity26=0 -minx26=0 -miny26=0 -maxx26=0 -maxy26=0 -posx26=50 -posy26=50 -sizx26=800 -sizy26=600 -maxfps26=0 -initts26=0 -winver26=0 -maxres26=0 -title27=Dungeon Lords MMXII -path27=D:\Games\Dungeon Lords MMXII\dlords2012.exe -module27= -opengllib27= -ver27=0 -coord27=0 -flag27=134217762 -flagg27=1207959552 -flagh27=20 -flagi27=4 -tflag27=0 -initx27=0 -inity27=0 -minx27=0 -miny27=0 -maxx27=0 -maxy27=0 -posx27=50 -posy27=50 -sizx27=800 -sizy27=600 -maxfps27=0 -initts27=0 -winver27=0 -maxres27=0 -title28=Empire Earth -path28=D:\Games\Empire Earth\Empire Earth.exe -module28= -opengllib28= -ver28=0 -coord28=0 -flag28=-1459617632 -flagg28=201326848 -flagh28=84 -flagi28=0 -tflag28=262 -initx28=0 -inity28=0 -minx28=0 -miny28=0 -maxx28=0 -maxy28=0 -posx28=50 -posy28=50 -sizx28=0 -sizy28=0 -maxfps28=0 -initts28=0 -winver28=0 -maxres28=0 -title29=F-16 Fighting Falcon -path29=D:\Games\F16\f1695.exe -module29= -opengllib29= -ver29=0 -coord29=0 -flag29=134217826 -flagg29=1209008128 -flagh29=20 -flagi29=4 -tflag29=258 -initx29=0 -inity29=0 -minx29=0 -miny29=0 -maxx29=0 -maxy29=0 -posx29=50 -posy29=50 -sizx29=800 -sizy29=600 -maxfps29=0 -initts29=0 -winver29=0 -maxres29=0 -title30=Fate -path30=D:\Games\Fate\Fate.exe -module30= -opengllib30= -ver30=0 -coord30=0 -flag30=134217762 -flagg30=1207959552 -flagh30=20 -flagi30=4 -tflag30=0 -initx30=0 -inity30=0 -minx30=0 -miny30=0 -maxx30=0 -maxy30=0 -posx30=50 -posy30=50 -sizx30=800 -sizy30=600 -maxfps30=0 -initts30=0 -winver30=0 -maxres30=0 -title31=Fighting Force -path31=D:\Games\Fighting Force\game\fforce.exe -module31= -opengllib31= -ver31=0 -coord31=0 -flag31=134217824 -flagg31=1207959552 -flagh31=20 -flagi31=4 -tflag31=6162 -initx31=0 -inity31=0 -minx31=0 -miny31=0 -maxx31=0 -maxy31=0 -posx31=50 -posy31=50 -sizx31=800 -sizy31=600 -maxfps31=0 -initts31=0 -winver31=0 -maxres31=0 -title32=Gangsters -path32=D:\Games\Gangsters\gangsters.exe -module32= -opengllib32= -ver32=0 -coord32=0 -flag32=1208483874 -flagg32=1209008128 -flagh32=20 -flagi32=4 -tflag32=0 -initx32=0 -inity32=0 -minx32=0 -miny32=0 -maxx32=0 -maxy32=0 -posx32=50 -posy32=50 -sizx32=800 -sizy32=600 -maxfps32=0 -initts32=0 -winver32=0 -maxres32=0 -title33=Grand Prix Legends -path33=D:\Games\gpl\gpl.exe -module33= -opengllib33= -ver33=0 -coord33=0 -flag33=679485472 -flagg33=-939524096 -flagh33=20 -flagi33=4 -tflag33=0 -initx33=0 -inity33=0 -minx33=0 -miny33=0 -maxx33=0 -maxy33=0 -posx33=50 -posy33=50 -sizx33=800 -sizy33=600 -maxfps33=0 -initts33=0 -winver33=0 -maxres33=0 -title34=Grand Prix World -path34=D:\Games\Grand Prix World\gpwxp2.exe -module34= -opengllib34= -ver34=0 -coord34=0 -flag34=134217762 -flagg34=135266432 -flagh34=20 -flagi34=0 -tflag34=0 -initx34=0 -inity34=0 -minx34=0 -miny34=0 -maxx34=0 -maxy34=0 -posx34=50 -posy34=50 -sizx34=800 -sizy34=600 -maxfps34=0 -initts34=0 -winver34=0 -maxres34=0 -title35=GTA 3 -path35=D:\Games\GTA3\gta3.exe -module35= -opengllib35= -ver35=0 -coord35=0 -flag35=134217762 -flagg35=1207959552 -flagh35=20 -flagi35=4 -tflag35=258 -initx35=0 -inity35=0 -minx35=0 -miny35=0 -maxx35=0 -maxy35=0 -posx35=50 -posy35=50 -sizx35=800 -sizy35=600 -maxfps35=0 -initts35=0 -winver35=0 -maxres35=0 -title36=Half-Life -path36=D:\Games\Half-Life\hl.exe -module36= -opengllib36= -ver36=12 -coord36=0 -flag36=1207959584 -flagg36=1209139200 -flagh36=16 -flagi36=2060 -tflag36=4096 -initx36=0 -inity36=0 -minx36=0 -miny36=0 -maxx36=0 -maxy36=0 -posx36=50 -posy36=50 -sizx36=800 -sizy36=600 -maxfps36=0 -initts36=0 -winver36=0 -maxres36=0 -title37=Hearts of Iron 2 -path37=D:\Games\Hearts of Iron 2\HoI2.exe -module37= -opengllib37= -ver37=0 -coord37=2 -flag37=939526179 -flagg37=1207959568 -flagh37=32788 -flagi37=2 -tflag37=2 -initx37=0 -inity37=0 -minx37=0 -miny37=0 -maxx37=0 -maxy37=0 -posx37=50 -posy37=50 -sizx37=800 -sizy37=600 -maxfps37=0 -initts37=0 -winver37=0 -maxres37=0 -title38=Heroes of Might and Magic IV -path38=D:\Games\Heroes of Might and Magic IV\heroes4.exe -module38= -opengllib38= -ver38=0 -coord38=2 -flag38=671350818 -flagg38=1207959568 -flagh38=-2147418092 -flagi38=1 -tflag38=258 -initx38=0 -inity38=0 -minx38=0 -miny38=0 -maxx38=0 -maxy38=0 -posx38=50 -posy38=50 -sizx38=800 -sizy38=600 -maxfps38=0 -initts38=0 -winver38=0 -maxres38=0 -title39=Hitman - Codename 47 -path39=D:\Games\Hitman - Codename 47\Hitman.Exe -module39= -opengllib39= -ver39=1 -coord39=0 -flag39=134234144 -flagg39=1207959808 -flagh39=20 -flagi39=4 -tflag39=2 -initx39=0 -inity39=0 -minx39=0 -miny39=0 -maxx39=0 -maxy39=0 -posx39=50 -posy39=50 -sizx39=800 -sizy39=600 -maxfps39=0 -initts39=0 -winver39=0 -maxres39=0 -title40=Hitman 2 Silent Assassin -path40=D:\Games\Hitman 2 Silent Assassin\hitman2.exe -module40= -opengllib40= -ver40=0 -coord40=2 -flag40=134234150 -flagg40=1207959568 -flagh40=20 -flagi40=4 -tflag40=0 -initx40=0 -inity40=0 -minx40=0 -miny40=0 -maxx40=0 -maxy40=0 -posx40=50 -posy40=50 -sizx40=800 -sizy40=600 -maxfps40=0 -initts40=0 -winver40=0 -maxres40=0 -title41=Homeworld 2 -path41=D:\Games\Homeworld2\Bin\Release\Homeworld2.exe -module41= -opengllib41= -ver41=0 -coord41=0 -flag41=671154178 -flagg41=134217728 -flagh41=285 -flagi41=0 -tflag41=0 -initx41=0 -inity41=0 -minx41=0 -miny41=0 -maxx41=0 -maxy41=0 -posx41=50 -posy41=50 -sizx41=800 -sizy41=600 -maxfps41=0 -initts41=0 -winver41=0 -maxres41=0 -title42=Imperialism -path42=D:\Games\Imperialism\Imperialism.exe -module42= -opengllib42= -ver42=0 -coord42=0 -flag42=-1467998173 -flagg42=1209008128 -flagh42=20 -flagi42=4 -tflag42=4102 -initx42=0 -inity42=0 -minx42=0 -miny42=0 -maxx42=0 -maxy42=0 -posx42=50 -posy42=50 -sizx42=800 -sizy42=600 -maxfps42=0 -initts42=0 -winver42=0 -maxres42=0 -title43=Imperialism II -path43=D:\Games\Imperialism 2\imperialism II.exe -module43= -opengllib43= -ver43=0 -coord43=0 -flag43=-1434181598 -flagg43=134217728 -flagh43=20 -flagi43=4 -tflag43=6146 -initx43=0 -inity43=0 -minx43=0 -miny43=0 -maxx43=0 -maxy43=0 -posx43=50 -posy43=50 -sizx43=1200 -sizy43=900 -maxfps43=0 -initts43=0 -winver43=0 -maxres43=0 -title44=International Football 2000 -path44=D:\Games\International Football 2000\MSIF2000.ICD -module44= -opengllib44= -ver44=0 -coord44=0 -flag44=150994976 -flagg44=1207959552 -flagh44=20 -flagi44=4 -tflag44=258 -initx44=0 -inity44=0 -minx44=0 -miny44=0 -maxx44=0 -maxy44=0 -posx44=50 -posy44=50 -sizx44=800 -sizy44=600 -maxfps44=0 -initts44=0 -winver44=0 -maxres44=0 -title45=Jet Moto -path45=D:\Games\Jet_Moto\JETMOTO.EXE -module45= -opengllib45= -ver45=0 -coord45=0 -flag45=671088674 -flagg45=1207959568 -flagh45=20 -flagi45=0 -tflag45=0 -initx45=0 -inity45=0 -minx45=0 -miny45=0 -maxx45=0 -maxy45=0 -posx45=50 -posy45=50 -sizx45=800 -sizy45=600 -maxfps45=0 -initts45=0 -winver45=0 -maxres45=0 -title46=KISS Pinball -path46=D:\Games\KISS Pinball\kisspin.exe -module46= -opengllib46= -ver46=1 -coord46=0 -flag46=679616546 -flagg46=1207959552 -flagh46=98324 -flagi46=4 -tflag46=258 -initx46=0 -inity46=0 -minx46=0 -miny46=0 -maxx46=0 -maxy46=0 -posx46=50 -posy46=50 -sizx46=800 -sizy46=600 -maxfps46=0 -initts46=0 -winver46=0 -maxres46=0 -title47=Kiss Psycho Circus -path47=D:\Games\Kiss\client.exe -module47= -opengllib47= -ver47=0 -coord47=0 -flag47=134234148 -flagg47=1207959808 -flagh47=20 -flagi47=384 -tflag47=2 -initx47=0 -inity47=0 -minx47=0 -miny47=0 -maxx47=0 -maxy47=0 -posx47=50 -posy47=50 -sizx47=800 -sizy47=600 -maxfps47=0 -initts47=0 -winver47=0 -maxres47=0 -title48=KKND Xtreme -path48=D:\Games\KKNDXtreme\KKND.exe -module48= -opengllib48= -ver48=0 -coord48=0 -flag48=134234146 -flagg48=1207959552 -flagh48=20 -flagi48=4 -tflag48=0 -initx48=0 -inity48=0 -minx48=0 -miny48=0 -maxx48=0 -maxy48=0 -posx48=50 -posy48=50 -sizx48=800 -sizy48=600 -maxfps48=0 -initts48=0 -winver48=0 -maxres48=-1 -title49=Knights Of Honor -path49=D:\Games\Knights Of Honor\KoH.exe -module49= -opengllib49= -ver49=0 -coord49=0 -flag49=-402382814 -flagg49=1207959552 -flagh49=65556 -flagi49=4 -tflag49=6430 -initx49=0 -inity49=0 -minx49=0 -miny49=0 -maxx49=0 -maxy49=0 -posx49=50 -posy49=50 -sizx49=800 -sizy49=600 -maxfps49=0 -initts49=0 -winver49=0 -maxres49=0 -title50=KnightShift -path50=D:\Games\knightshift\KnightShift.ex1 -module50= -opengllib50= -ver50=8 -coord50=0 -flag50=134217760 -flagg50=1207959552 -flagh50=20 -flagi50=4 -tflag50=2 -initx50=0 -inity50=0 -minx50=0 -miny50=0 -maxx50=0 -maxy50=0 -posx50=50 -posy50=50 -sizx50=800 -sizy50=600 -maxfps50=0 -initts50=0 -winver50=0 -maxres50=0 -title51=Kohan II Kings of War -path51=D:\Games\Kohan II Kings of War\k2.exe -module51= -opengllib51= -ver51=9 -coord51=0 -flag51=134217762 -flagg51=1207959552 -flagh51=20 -flagi51=1028 -tflag51=6162 -initx51=0 -inity51=0 -minx51=0 -miny51=0 -maxx51=0 -maxy51=0 -posx51=50 -posy51=50 -sizx51=800 -sizy51=600 -maxfps51=0 -initts51=0 -winver51=0 -maxres51=0 -title52=kxtzcfr.exe -path52=D:\Games\Awakening of dreamless castle\Awakening - The Dreamless Castle\kxtzcfr.exe -module52= -opengllib52= -ver52=0 -coord52=0 -flag52=134217762 -flagg52=1207959552 -flagh52=20 -flagi52=4 -tflag52=6226 -initx52=0 -inity52=0 -minx52=0 -miny52=0 -maxx52=0 -maxy52=0 -posx52=50 -posy52=50 -sizx52=800 -sizy52=600 -maxfps52=0 -initts52=0 -winver52=0 -maxres52=-1 -title53=L.E.D. Wars (not working) -path53=D:\Games\l.e.d._wars\LED.EXE -module53= -opengllib53= -ver53=1 -coord53=0 -flag53=679477282 -flagg53=1744830480 -flagh53=65540 -flagi53=4 -tflag53=258 -initx53=0 -inity53=0 -minx53=0 -miny53=0 -maxx53=0 -maxy53=0 -posx53=50 -posy53=50 -sizx53=800 -sizy53=600 -maxfps53=0 -initts53=0 -winver53=0 -maxres53=0 -title54=Land of the Dead -path54=D:\Games\Land of the Dead\System\LOTD.exe -module54= -opengllib54= -ver54=0 -coord54=2 -flag54=134217766 -flagg54=1207959568 -flagh54=20 -flagi54=0 -tflag54=64 -initx54=0 -inity54=0 -minx54=0 -miny54=0 -maxx54=0 -maxy54=0 -posx54=50 -posy54=50 -sizx54=800 -sizy54=600 -maxfps54=0 -initts54=0 -winver54=0 -maxres54=0 -title55=Last Bronx -path55=D:\Games\Last_Bronx\LB.EXE -module55= -opengllib55= -ver55=0 -coord55=0 -flag55=134217762 -flagg55=-939520000 -flagh55=20 -flagi55=4 -tflag55=0 -initx55=0 -inity55=0 -minx55=0 -miny55=0 -maxx55=0 -maxy55=0 -posx55=50 -posy55=50 -sizx55=800 -sizy55=600 -maxfps55=20 -initts55=4 -winver55=0 -maxres55=0 -title56=Le Mans 24 Hours -path56=D:\Games\Le Mans 24 Hours\Bin\lemans.exe -module56=glidedll avicap -opengllib56= -ver56=1 -coord56=0 -flag56=201326627 -flagg56=1241513984 -flagh56=532 -flagi56=4 -tflag56=4162 -initx56=0 -inity56=0 -minx56=0 -miny56=0 -maxx56=0 -maxy56=0 -posx56=50 -posy56=50 -sizx56=800 -sizy56=600 -maxfps56=0 -initts56=0 -winver56=0 -maxres56=-1 -title57=LEGO Star Wars -path57=D:\Games\LEGO Star Wars Game\LegoStarwars.crack.exe -module57= -opengllib57= -ver57=0 -coord57=0 -flag57=134217762 -flagg57=1207959552 -flagh57=20 -flagi57=4 -tflag57=64 -initx57=0 -inity57=0 -minx57=0 -miny57=0 -maxx57=0 -maxy57=0 -posx57=50 -posy57=50 -sizx57=800 -sizy57=600 -maxfps57=0 -initts57=0 -winver57=0 -maxres57=-1 -title58=LEGO® Marvel Super Heroes Demo -path58=C:\Program Files (x86)\Warner Bros. Interactive Entertainment\LEGO® Marvel Super Heroes Demo\LEGOMarvelDemo.exe -module58= -opengllib58= -ver58=0 -coord58=0 -flag58=134217762 -flagg58=1207959552 -flagh58=20 -flagi58=4 -tflag58=0 -initx58=0 -inity58=0 -minx58=0 -miny58=0 -maxx58=0 -maxy58=0 -posx58=50 -posy58=50 -sizx58=800 -sizy58=600 -maxfps58=0 -initts58=0 -winver58=0 -maxres58=0 -title59=L'Elefante a Strisce -path59=D:\Games\L'Elefante a Strisce\Pilots1I.EXE -module59= -opengllib59= -ver59=0 -coord59=0 -flag59=134217762 -flagg59=135266368 -flagh59=20 -flagi59=0 -tflag59=64 -initx59=0 -inity59=0 -minx59=0 -miny59=0 -maxx59=0 -maxy59=0 -posx59=50 -posy59=50 -sizx59=800 -sizy59=600 -maxfps59=0 -initts59=0 -winver59=0 -maxres59=0 -title60=Lords of Magic Special Edition -path60=D:\Games\LoM\SIERRA\LOMSE\lomse.exe -module60= -opengllib60= -ver60=0 -coord60=0 -flag60=402669603 -flagg60=1207959568 -flagh60=6291476 -flagi60=0 -tflag60=6418 -initx60=0 -inity60=0 -minx60=0 -miny60=0 -maxx60=0 -maxy60=0 -posx60=50 -posy60=50 -sizx60=800 -sizy60=600 -maxfps60=0 -initts60=0 -winver60=0 -maxres60=0 -title61=Lords of the Realm 2 -path61=D:\Games\Lords of the Realm 2\LORDS2.EXE -module61= -opengllib61= -ver61=0 -coord61=0 -flag61=134217762 -flagg61=1209008128 -flagh61=65556 -flagi61=4 -tflag61=0 -initx61=0 -inity61=0 -minx61=0 -miny61=0 -maxx61=0 -maxy61=0 -posx61=50 -posy61=50 -sizx61=800 -sizy61=600 -maxfps61=0 -initts61=0 -winver61=0 -maxres61=0 -title62=Lost Valley -path62=D:\Games\Lost Valley\lost valley\lost valley data.exe -module62= -opengllib62= -ver62=0 -coord62=0 -flag62=679485474 -flagg62=1207959552 -flagh62=-2080374764 -flagi62=0 -tflag62=0 -initx62=0 -inity62=0 -minx62=0 -miny62=0 -maxx62=0 -maxy62=0 -posx62=50 -posy62=50 -sizx62=800 -sizy62=600 -maxfps62=0 -initts62=0 -winver62=0 -maxres62=0 -title63=Mageslayer -path63=D:\Games\MAGE\MAGESLAY.EXE -module63= -opengllib63= -ver63=0 -coord63=0 -flag63=134234146 -flagg63=402653216 -flagh63=8212 -flagi63=1 -tflag63=6210 -initx63=0 -inity63=0 -minx63=0 -miny63=0 -maxx63=0 -maxy63=0 -posx63=50 -posy63=50 -sizx63=800 -sizy63=600 -maxfps63=0 -initts63=0 -winver63=0 -maxres63=0 -title64=Magic & Mayhem -path64=D:\Games\Magic_&_Mayhem\Chaos.exe -module64= -opengllib64= -ver64=0 -coord64=0 -flag64=134217762 -flagg64=1207959552 -flagh64=20 -flagi64=4 -tflag64=0 -initx64=0 -inity64=0 -minx64=0 -miny64=0 -maxx64=0 -maxy64=0 -posx64=50 -posy64=50 -sizx64=800 -sizy64=600 -maxfps64=0 -initts64=0 -winver64=0 -maxres64=0 -title65=Martian Gothic Unification -path65=D:\Games\Martian Gothic\martian gothic.exe -module65= -opengllib65= -ver65=0 -coord65=0 -flag65=203423776 -flagg65=1476395008 -flagh65=20 -flagi65=5 -tflag65=6162 -initx65=0 -inity65=0 -minx65=0 -miny65=0 -maxx65=0 -maxy65=0 -posx65=50 -posy65=50 -sizx65=800 -sizy65=600 -maxfps65=0 -initts65=0 -winver65=0 -maxres65=0 -title66=Millennium Racer Y2K fighters -path66=D:\Games\Millennium Racer\MRacer.exe -module66= -opengllib66= -ver66=0 -coord66=0 -flag66=671105056 -flagg66=1476395024 -flagh66=20 -flagi66=4 -tflag66=0 -initx66=0 -inity66=0 -minx66=0 -miny66=0 -maxx66=0 -maxy66=0 -posx66=50 -posy66=50 -sizx66=800 -sizy66=600 -maxfps66=0 -initts66=0 -winver66=0 -maxres66=-1 -title67=Motocross Madness (DEMO) -path67=D:\Games\Motocross Madness Trial\mcm.exe -module67= -opengllib67= -ver67=0 -coord67=0 -flag67=134217760 -flagg67=1207959552 -flagh67=20 -flagi67=0 -tflag67=0 -initx67=0 -inity67=0 -minx67=0 -miny67=0 -maxx67=0 -maxy67=0 -posx67=50 -posy67=50 -sizx67=800 -sizy67=600 -maxfps67=0 -initts67=0 -winver67=0 -maxres67=0 -title68=Nascar Racing 3 -path68=D:\Games\Nascar Racing 3\NASCAR Racing 3.exe -module68= -opengllib68= -ver68=0 -coord68=0 -flag68=671105056 -flagg68=1207959552 -flagh68=20 -flagi68=4 -tflag68=6162 -initx68=0 -inity68=0 -minx68=0 -miny68=0 -maxx68=0 -maxy68=0 -posx68=50 -posy68=50 -sizx68=800 -sizy68=600 -maxfps68=0 -initts68=0 -winver68=0 -maxres68=0 -title69=Need for Speed 2SE -path69=D:\Games\Need for Speed 2SE\NFS2SEN.EXE -module69= -opengllib69= -ver69=0 -coord69=0 -flag69=134217826 -flagg69=1480589312 -flagh69=20 -flagi69=4 -tflag69=6162 -initx69=0 -inity69=0 -minx69=0 -miny69=0 -maxx69=0 -maxy69=0 -posx69=50 -posy69=50 -sizx69=800 -sizy69=600 -maxfps69=0 -initts69=0 -winver69=0 -maxres69=0 -title70=Need for Speed 2SE (3dfx) -path70=D:\Games\Need for Speed 2SE\nfs2sea.exe -module70= -opengllib70= -ver70=0 -coord70=0 -flag70=134217760 -flagg70=1207959552 -flagh70=20 -flagi70=4 -tflag70=6146 -initx70=0 -inity70=0 -minx70=0 -miny70=0 -maxx70=0 -maxy70=0 -posx70=50 -posy70=50 -sizx70=800 -sizy70=600 -maxfps70=0 -initts70=0 -winver70=0 -maxres70=0 -title71=Need for Speed 3 -path71=D:\Games\Need for Speed 3\nfs3.exe -module71= -opengllib71= -ver71=1 -coord71=0 -flag71=134217762 -flagg71=1207959552 -flagh71=20 -flagi71=4 -tflag71=0 -initx71=0 -inity71=0 -minx71=0 -miny71=0 -maxx71=0 -maxy71=0 -posx71=50 -posy71=50 -sizx71=800 -sizy71=600 -maxfps71=0 -initts71=0 -winver71=0 -maxres71=0 -title72=Need For Speed Underground -path72=D:\Games\Need For Speed Underground\speed.exe -module72= -opengllib72= -ver72=9 -coord72=0 -flag72=134217762 -flagg72=1207959552 -flagh72=20 -flagi72=1028 -tflag72=0 -initx72=0 -inity72=0 -minx72=0 -miny72=0 -maxx72=0 -maxy72=0 -posx72=50 -posy72=50 -sizx72=800 -sizy72=600 -maxfps72=0 -initts72=0 -winver72=0 -maxres72=0 -title73=Need for Speed Underground 2 -path73=D:\Games\Need for Speed Underground 2\SPEED2.EXE -module73= -opengllib73= -ver73=9 -coord73=0 -flag73=134217762 -flagg73=1207959552 -flagh73=20 -flagi73=4 -tflag73=0 -initx73=0 -inity73=0 -minx73=0 -miny73=0 -maxx73=0 -maxy73=0 -posx73=50 -posy73=50 -sizx73=800 -sizy73=600 -maxfps73=0 -initts73=0 -winver73=0 -maxres73=0 -title74=Neophyte Koplio's Story -path74=D:\Games\Neophyte Koplio's Story\KOPLIO.exe -module74= -opengllib74= -ver74=1 -coord74=0 -flag74=134234146 -flagg74=1207959552 -flagh74=20 -flagi74=4 -tflag74=0 -initx74=0 -inity74=0 -minx74=0 -miny74=0 -maxx74=0 -maxy74=0 -posx74=50 -posy74=50 -sizx74=800 -sizy74=600 -maxfps74=0 -initts74=0 -winver74=0 -maxres74=0 -title75=NetStorm - Islands at War -path75=D:\Games\NetStorm - Islands at War\Netstorm.exe -module75= -opengllib75= -ver75=0 -coord75=0 -flag75=679608354 -flagg75=1209008384 -flagh75=20 -flagi75=4 -tflag75=0 -initx75=0 -inity75=0 -minx75=0 -miny75=0 -maxx75=0 -maxy75=0 -posx75=50 -posy75=50 -sizx75=800 -sizy75=600 -maxfps75=0 -initts75=0 -winver75=0 -maxres75=0 -title76=O.R.B. Offword Rescue Base -path76=D:\Games\O.R.B\orb.exe -module76= -opengllib76= -ver76=0 -coord76=2 -flag76=134234144 -flagg76=1207959568 -flagh76=20 -flagi76=4 -tflag76=6162 -initx76=0 -inity76=0 -minx76=0 -miny76=0 -maxx76=0 -maxy76=0 -posx76=50 -posy76=50 -sizx76=800 -sizy76=600 -maxfps76=0 -initts76=0 -winver76=0 -maxres76=-1 -title77=Pandemonium 2 (GLIDE) -path77=D:\Games\Pandemonium 2\pandy.exe -module77= -opengllib77= -ver77=0 -coord77=0 -flag77=134217762 -flagg77=1207959552 -flagh77=65556 -flagi77=4 -tflag77=0 -initx77=0 -inity77=0 -minx77=0 -miny77=0 -maxx77=0 -maxy77=0 -posx77=50 -posy77=50 -sizx77=800 -sizy77=600 -maxfps77=0 -initts77=0 -winver77=0 -maxres77=0 -title78=Panzer Dragoon -path78=D:\Games\Panzer Dragoon\game\PANZERDG.EXE -module78= -opengllib78= -ver78=0 -coord78=0 -flag78=134217762 -flagg78=1207959552 -flagh78=20 -flagi78=4 -tflag78=66 -initx78=0 -inity78=0 -minx78=0 -miny78=0 -maxx78=0 -maxy78=0 -posx78=50 -posy78=50 -sizx78=800 -sizy78=600 -maxfps78=0 -initts78=0 -winver78=0 -maxres78=0 -title79=Port Royale 2 -path79=D:\Games\Port Royale 2\PR2.exe -module79= -opengllib79= -ver79=8 -coord79=0 -flag79=671096866 -flagg79=1207959552 -flagh79=65556 -flagi79=4 -tflag79=0 -initx79=0 -inity79=0 -minx79=0 -miny79=0 -maxx79=0 -maxy79=0 -posx79=50 -posy79=50 -sizx79=800 -sizy79=600 -maxfps79=0 -initts79=0 -winver79=0 -maxres79=-1 -title80=Praetorians -path80=D:\games\Praetorians\Praetorians.exe -module80= -opengllib80= -ver80=0 -coord80=2 -flag80=134217760 -flagg80=1209008144 -flagh80=22 -flagi80=4 -tflag80=2 -initx80=0 -inity80=0 -minx80=0 -miny80=0 -maxx80=0 -maxy80=0 -posx80=50 -posy80=50 -sizx80=800 -sizy80=600 -maxfps80=0 -initts80=0 -winver80=0 -maxres80=0 -title81=Praetorians (DEMO) -path81=D:\Games\Praetorians Demo\Praetorians.exe -module81= -opengllib81= -ver81=0 -coord81=0 -flag81=150994976 -flagg81=1209008128 -flagh81=65556 -flagi81=4 -tflag81=6418 -initx81=0 -inity81=0 -minx81=0 -miny81=0 -maxx81=0 -maxy81=0 -posx81=50 -posy81=50 -sizx81=800 -sizy81=600 -maxfps81=0 -initts81=0 -winver81=0 -maxres81=0 -title82=Premier Manager 98 -path82=D:\Games\Premier Manager 98\MANAGER.EXE -module82= -opengllib82= -ver82=0 -coord82=0 -flag82=671092770 -flagg82=1207959552 -flagh82=16 -flagi82=0 -tflag82=0 -initx82=0 -inity82=0 -minx82=0 -miny82=0 -maxx82=0 -maxy82=0 -posx82=50 -posy82=50 -sizx82=800 -sizy82=600 -maxfps82=0 -initts82=0 -winver82=0 -maxres82=0 -title83=Primitive Wars -path83=D:\Games\Primitive Wars\Pw.exe -module83= -opengllib83= -ver83=0 -coord83=0 -flag83=671088674 -flagg83=134217728 -flagh83=20 -flagi83=0 -tflag83=0 -initx83=0 -inity83=0 -minx83=0 -miny83=0 -maxx83=0 -maxy83=0 -posx83=50 -posy83=50 -sizx83=800 -sizy83=600 -maxfps83=0 -initts83=0 -winver83=0 -maxres83=0 -title84=Project Eden -path84=D:\Games\Project Eden\Eden.exe -module84= -opengllib84= -ver84=0 -coord84=0 -flag84=134217763 -flagg84=1207959552 -flagh84=20 -flagi84=4 -tflag84=64 -initx84=0 -inity84=0 -minx84=0 -miny84=0 -maxx84=0 -maxy84=0 -posx84=50 -posy84=50 -sizx84=800 -sizy84=600 -maxfps84=0 -initts84=0 -winver84=0 -maxres84=-1 -title85=Project IGI -path85=D:\Games\Project IGI\pc\IGI.exe -module85= -opengllib85= -ver85=0 -coord85=0 -flag85=671105060 -flagg85=-939524096 -flagh85=20 -flagi85=4 -tflag85=66 -initx85=0 -inity85=0 -minx85=0 -miny85=0 -maxx85=0 -maxy85=0 -posx85=50 -posy85=50 -sizx85=800 -sizy85=600 -maxfps85=0 -initts85=0 -winver85=0 -maxres85=0 -title86=Project Nomads (DEMO) -path86=D:\Games\Project Nomads Demo\bin\win32\nomads.exe -module86= -opengllib86= -ver86=8 -coord86=0 -flag86=-1476394974 -flagg86=1207959808 -flagh86=4 -flagi86=0 -tflag86=274 -initx86=0 -inity86=0 -minx86=0 -miny86=0 -maxx86=0 -maxy86=0 -posx86=50 -posy86=50 -sizx86=800 -sizy86=600 -maxfps86=0 -initts86=0 -winver86=0 -maxres86=0 -title87=Quake 2 -path87=D:\Games\QUAKE2\quake2.exe -module87= -opengllib87= -ver87=0 -coord87=0 -flag87=134234114 -flagg87=1208090624 -flagh87=20 -flagi87=4 -tflag87=0 -initx87=0 -inity87=0 -minx87=0 -miny87=0 -maxx87=0 -maxy87=0 -posx87=50 -posy87=50 -sizx87=800 -sizy87=600 -maxfps87=0 -initts87=0 -winver87=0 -maxres87=0 -title88=Railroad Tycoon II -path88=D:\Games\Railroad.Tycoon.II\RT2.EXE -module88= -opengllib88= -ver88=0 -coord88=0 -flag88=134217762 -flagg88=1207959552 -flagh88=20 -flagi88=4 -tflag88=0 -initx88=0 -inity88=0 -minx88=0 -miny88=0 -maxx88=0 -maxy88=0 -posx88=50 -posy88=50 -sizx88=800 -sizy88=600 -maxfps88=0 -initts88=0 -winver88=0 -maxres88=0 -title89=Rayman 2 Demo -path89=D:\Games\Rayman2Demo\Rayman2Demo.exe -module89= -opengllib89= -ver89=7 -coord89=0 -flag89=402653217 -flagg89=1208025088 -flagh89=2097172 -flagi89=0 -tflag89=6418 -initx89=0 -inity89=0 -minx89=0 -miny89=0 -maxx89=0 -maxy89=0 -posx89=50 -posy89=50 -sizx89=800 -sizy89=600 -maxfps89=0 -initts89=4 -winver89=0 -maxres89=0 -title90=Serious Sam - The Second Encounter Demo -path90=D:\Games\Serious Sam - The Second Encounter Demo\Bin\SeriousSam.exe -module90= -opengllib90= -ver90=0 -coord90=0 -flag90=671088674 -flagg90=1208156160 -flagh90=20 -flagi90=4 -tflag90=64 -initx90=0 -inity90=0 -minx90=0 -miny90=0 -maxx90=0 -maxy90=0 -posx90=50 -posy90=50 -sizx90=800 -sizy90=600 -maxfps90=0 -initts90=4 -winver90=0 -maxres90=0 -title91=Shadows of the Empire (DEMO) -path91=D:\Games\Shadows of the Empire\shadows.exe -module91= -opengllib91= -ver91=0 -coord91=2 -flag91=134479906 -flagg91=1207959568 -flagh91=33554452 -flagi91=0 -tflag91=274 -initx91=0 -inity91=0 -minx91=0 -miny91=0 -maxx91=0 -maxy91=0 -posx91=50 -posy91=50 -sizx91=800 -sizy91=600 -maxfps91=0 -initts91=0 -winver91=0 -maxres91=0 -title92=Sid Meier's Civilization III Complete -path92=D:\Games\Sid Meier's Civilization III Complete\Conquests\Civ3Conquests.exe -module92=jgl -opengllib92= -ver92=0 -coord92=0 -flag92=973353504 -flagg92=136462360 -flagh92=2162708 -flagi92=4100 -tflag92=64 -initx92=0 -inity92=0 -minx92=0 -miny92=0 -maxx92=0 -maxy92=0 -posx92=50 -posy92=50 -sizx92=800 -sizy92=600 -maxfps92=0 -initts92=6 -winver92=0 -maxres92=5 -title93=SimCity 4 Deluxe -path93=D:\Games\SimCity 4 Deluxe\Apps\SimCity 4.exe -module93= -opengllib93= -ver93=7 -coord93=0 -flag93=32 -flagg93=1207959568 -flagh93=20 -flagi93=4100 -tflag93=8158 -initx93=0 -inity93=0 -minx93=0 -miny93=0 -maxx93=0 -maxy93=0 -posx93=50 -posy93=50 -sizx93=1200 -sizy93=900 -maxfps93=0 -initts93=0 -winver93=0 -maxres93=1 -title94=Star Wars Episode I Racer -path94=D:\Games\Star Wars Episode 1 racer\SWEP1RCR.EXE -module94= -opengllib94= -ver94=0 -coord94=0 -flag94=679493669 -flagg94=1210056720 -flagh94=8212 -flagi94=20 -tflag94=64 -initx94=0 -inity94=0 -minx94=0 -miny94=0 -maxx94=0 -maxy94=0 -posx94=50 -posy94=50 -sizx94=800 -sizy94=600 -maxfps94=0 -initts94=0 -winver94=0 -maxres94=0 -title95=StarCraft -path95=D:\Games\Starcraft\Starcraft\StarCraft.exe -module95= -opengllib95= -ver95=0 -coord95=0 -flag95=134217762 -flagg95=134283264 -flagh95=32788 -flagi95=8 -tflag95=64 -initx95=0 -inity95=0 -minx95=0 -miny95=0 -maxx95=0 -maxy95=0 -posx95=50 -posy95=50 -sizx95=800 -sizy95=600 -maxfps95=0 -initts95=0 -winver95=0 -maxres95=0 -title96=Starsky & Hutch - GAME -path96=D:\Games\Starsky & Hutch\StarskyPC.exe -module96= -opengllib96= -ver96=0 -coord96=0 -flag96=947912739 -flagg96=1207959552 -flagh96=20 -flagi96=4 -tflag96=0 -initx96=0 -inity96=0 -minx96=0 -miny96=0 -maxx96=0 -maxy96=0 -posx96=50 -posy96=50 -sizx96=800 -sizy96=600 -maxfps96=0 -initts96=0 -winver96=0 -maxres96=0 -title97=Starsky & Hutch - LAUNCHER -path97=D:\Games\Starsky & Hutch\Starsky.exe -module97= -opengllib97= -ver97=0 -coord97=0 -flag97=134217728 -flagg97=1207959552 -flagh97=20 -flagi97=4 -tflag97=0 -initx97=0 -inity97=0 -minx97=0 -miny97=0 -maxx97=0 -maxy97=0 -posx97=50 -posy97=50 -sizx97=800 -sizy97=600 -maxfps97=0 -initts97=0 -winver97=0 -maxres97=0 -title98=State of Emergency -path98=D:\Games\State of Emergency\KaosPC.cracked.exe -module98= -opengllib98= -ver98=8 -coord98=0 -flag98=671088676 -flagg98=1208025088 -flagh98=20 -flagi98=2052 -tflag98=6162 -initx98=0 -inity98=0 -minx98=0 -miny98=0 -maxx98=0 -maxy98=0 -posx98=50 -posy98=50 -sizx98=800 -sizy98=600 -maxfps98=50 -initts98=2 -winver98=0 -maxres98=0 -title99=State of War Warmonger -path99=D:\Games\State of War Warmonger\State of War - Warmonger.exe -module99= -opengllib99= -ver99=0 -coord99=0 -flag99=134234210 -flagg99=134217728 -flagh99=532 -flagi99=4 -tflag99=0 -initx99=0 -inity99=0 -minx99=0 -miny99=0 -maxx99=0 -maxy99=0 -posx99=50 -posy99=50 -sizx99=800 -sizy99=600 -maxfps99=0 -initts99=0 -winver99=0 -maxres99=-1 -title100=Still Life (GOG) -path100=D:\Games\Still Life (GOG)\StillLife.exe -module100= -opengllib100= -ver100=0 -coord100=0 -flag100=671105058 -flagg100=1207959568 -flagh100=20 -flagi100=4 -tflag100=6210 -initx100=0 -inity100=0 -minx100=0 -miny100=0 -maxx100=0 -maxy100=0 -posx100=50 -posy100=50 -sizx100=800 -sizy100=600 -maxfps100=0 -initts100=0 -winver100=0 -maxres100=5 -title101=Syberia -path101=D:\Games\Syberia\Syberia.exe -module101= -opengllib101= -ver101=7 -coord101=0 -flag101=956334113 -flagg101=1242562576 -flagh101=65556 -flagi101=4 -tflag101=6170 -initx101=150 -inity101=150 -minx101=150 -miny101=150 -maxx101=800 -maxy101=600 -posx101=50 -posy101=50 -sizx101=800 -sizy101=600 -maxfps101=0 -initts101=0 -winver101=0 -maxres101=0 -title102=Take no Prisoners -path102=D:\Games\Take no Prisoners\TNP.EXE -module102= -opengllib102= -ver102=0 -coord102=0 -flag102=134217762 -flagg102=134217860 -flagh102=20 -flagi102=512 -tflag102=258 -initx102=0 -inity102=0 -minx102=0 -miny102=0 -maxx102=0 -maxy102=0 -posx102=50 -posy102=50 -sizx102=800 -sizy102=600 -maxfps102=0 -initts102=0 -winver102=0 -maxres102=0 -title103=The Bard's Tale -path103=D:\Games\The Bard's Tale\The Bard's Tale.exe -module103= -opengllib103= -ver103=9 -coord103=0 -flag103=134217760 -flagg103=134217728 -flagh103=16 -flagi103=1024 -tflag103=6162 -initx103=0 -inity103=0 -minx103=0 -miny103=0 -maxx103=0 -maxy103=0 -posx103=50 -posy103=50 -sizx103=800 -sizy103=600 -maxfps103=0 -initts103=0 -winver103=0 -maxres103=0 -title104=Thief the Dark Project GOLD -path104=D:\Games\Thief Gold\THIEF.EXE -module104= -opengllib104= -ver104=7 -coord104=0 -flag104=272 -flagg104=440401936 -flagh104=131612 -flagi104=4 -tflag104=9 -initx104=0 -inity104=0 -minx104=0 -miny104=0 -maxx104=0 -maxy104=0 -posx104=50 -posy104=50 -sizx104=800 -sizy104=600 -maxfps104=0 -initts104=0 -winver104=1 -maxres104=-1 -title105=Thief the Dark Project GOLD (GOG) -path105=D:\Games\Thief Gold (GOG)\THIEF.EXE -module105= -opengllib105= -ver105=0 -coord105=0 -flag105=256 -flagg105=1207959568 -flagh105=20 -flagi105=4 -tflag105=0 -initx105=0 -inity105=0 -minx105=0 -miny105=0 -maxx105=0 -maxy105=0 -posx105=50 -posy105=50 -sizx105=800 -sizy105=600 -maxfps105=0 -initts105=0 -winver105=0 -maxres105=-1 -title106=Tomb Raider 4 (DEMO) -path106=D:\Games\Tomb Raider - The Last Revelation (Demo)\tomb4.exe -module106= -opengllib106= -ver106=7 -coord106=0 -flag106=134217760 -flagg106=1207959552 -flagh106=20 -flagi106=0 -tflag106=258 -initx106=0 -inity106=0 -minx106=0 -miny106=0 -maxx106=0 -maxy106=0 -posx106=50 -posy106=50 -sizx106=800 -sizy106=600 -maxfps106=0 -initts106=0 -winver106=0 -maxres106=0 -title107=Tomb Raider II -path107=D:\Games\Tomb Raider II\Tomb2.exe -module107= -opengllib107= -ver107=0 -coord107=0 -flag107=671088674 -flagg107=1207959552 -flagh107=20 -flagi107=0 -tflag107=0 -initx107=0 -inity107=0 -minx107=0 -miny107=0 -maxx107=0 -maxy107=0 -posx107=50 -posy107=50 -sizx107=800 -sizy107=600 -maxfps107=0 -initts107=0 -winver107=0 -maxres107=0 -title108=Tomb Raider II Gold (DEMO) -path108=D:\Games\Tomb Raider II Gold (Demo)\Tomb2.exe -module108= -opengllib108= -ver108=0 -coord108=2 -flag108=671088674 -flagg108=1224736784 -flagh108=20 -flagi108=0 -tflag108=258 -initx108=0 -inity108=0 -minx108=0 -miny108=0 -maxx108=0 -maxy108=0 -posx108=50 -posy108=50 -sizx108=800 -sizy108=600 -maxfps108=0 -initts108=0 -winver108=0 -maxres108=0 -title109=Tomb Raider III -path109=D:\Games\Tomb Raider III\tomb3.exe -module109= -opengllib109= -ver109=0 -coord109=2 -flag109=134217760 -flagg109=1241514000 -flagh109=20 -flagi109=0 -tflag109=322 -initx109=0 -inity109=0 -minx109=0 -miny109=0 -maxx109=0 -maxy109=0 -posx109=50 -posy109=50 -sizx109=800 -sizy109=600 -maxfps109=0 -initts109=0 -winver109=0 -maxres109=0 -title110=Total Annihilation Kingdoms -path110=D:\Games\Total Annihilation Kingdoms\Kingdoms.exe -module110= -opengllib110= -ver110=7 -coord110=0 -flag110=671105058 -flagg110=1207959552 -flagh110=20 -flagi110=4 -tflag110=6162 -initx110=0 -inity110=0 -minx110=0 -miny110=0 -maxx110=0 -maxy110=0 -posx110=50 -posy110=50 -sizx110=800 -sizy110=600 -maxfps110=0 -initts110=0 -winver110=0 -maxres110=0 -title111=Unreal Tournament -path111=D:\Games\Unreal Tournament\System\UnrealTournament.exe -module111= -opengllib111= -ver111=0 -coord111=0 -flag111=-2013265886 -flagg111=1209073680 -flagh111=20 -flagi111=2052 -tflag111=4096 -initx111=0 -inity111=0 -minx111=0 -miny111=0 -maxx111=0 -maxy111=0 -posx111=50 -posy111=50 -sizx111=1200 -sizy111=900 -maxfps111=0 -initts111=0 -winver111=0 -maxres111=0 -title112=Virtua Fighter 2 (DEMO) -path112=D:\Games\vf2_demo\VF2DEMO.EXE -module112= -opengllib112= -ver112=0 -coord112=0 -flag112=939524131 -flagg112=1207959664 -flagh112=20 -flagi112=0 -tflag112=0 -initx112=0 -inity112=0 -minx112=0 -miny112=0 -maxx112=0 -maxy112=0 -posx112=50 -posy112=50 -sizx112=800 -sizy112=600 -maxfps112=0 -initts112=0 -winver112=0 -maxres112=0 -title113=Warcraft 2 Battlenet Ed -path113=D:\Games\Warcraft 2 Battlenet Ed\Warcraft II BNE.exe -module113= -opengllib113= -ver113=0 -coord113=0 -flag113=134217762 -flagg113=1210122240 -flagh113=148 -flagi113=12 -tflag113=0 -initx113=0 -inity113=0 -minx113=0 -miny113=0 -maxx113=0 -maxy113=0 -posx113=50 -posy113=50 -sizx113=800 -sizy113=600 -maxfps113=0 -initts113=0 -winver113=0 -maxres113=0 -title114=Wargasm -path114=D:\Games\Wargasm\tank.exe -module114= -opengllib114= -ver114=0 -coord114=2 -flag114=671088672 -flagg114=1207959696 -flagh114=65556 -flagi114=0 -tflag114=6162 -initx114=0 -inity114=0 -minx114=0 -miny114=0 -maxx114=0 -maxy114=0 -posx114=50 -posy114=50 -sizx114=800 -sizy114=600 -maxfps114=0 -initts114=0 -winver114=0 -maxres114=0 -title115=Whiteout -path115=D:\Games\Whiteout\Whiteout.exe -module115= -opengllib115= -ver115=0 -coord115=0 -flag115=402653217 -flagg115=1207959552 -flagh115=20 -flagi115=0 -tflag115=66 -initx115=0 -inity115=0 -minx115=0 -miny115=0 -maxx115=0 -maxy115=0 -posx115=50 -posy115=50 -sizx115=640 -sizy115=480 -maxfps115=0 -initts115=0 -winver115=0 -maxres115=0 -title116=Wildfire -path116=D:\Games\Wildfire\Wildfire.exe -module116= -opengllib116= -ver116=0 -coord116=0 -flag116=-1476392958 -flagg116=1210122240 -flagh116=20 -flagi116=12 -tflag116=0 -initx116=0 -inity116=0 -minx116=0 -miny116=0 -maxx116=0 -maxy116=0 -posx116=50 -posy116=50 -sizx116=800 -sizy116=600 -maxfps116=0 -initts116=0 -winver116=0 -maxres116=0 -title117=Worms Pinball -path117=D:\Games\Worms Pinball\WPIB.exe -module117= -opengllib117= -ver117=1 -coord117=0 -flag117=134217762 -flagg117=1207959568 -flagh117=20 -flagi117=4 -tflag117=0 -initx117=0 -inity117=0 -minx117=0 -miny117=0 -maxx117=0 -maxy117=0 -posx117=50 -posy117=50 -sizx117=800 -sizy117=600 -maxfps117=0 -initts117=0 -winver117=0 -maxres117=0 -title118=Zanzarah -path118=D:\Games\Zanzarah\System\zanthp.exe -module118= -opengllib118= -ver118=0 -coord118=0 -flag118=679477280 -flagg118=1207959552 -flagh118=20 -flagi118=0 -tflag118=0 -initx118=0 -inity118=0 -minx118=0 -miny118=0 -maxx118=0 -maxy118=0 -posx118=50 -posy118=50 -sizx118=800 -sizy118=600 -maxfps118=0 -initts118=0 -winver118=0 -maxres118=0 -title119=ZPC Zero Population Count -path119=D:\Games\ZPC\ZPC.EXE -module119= -opengllib119= -ver119=0 -coord119=0 -flag119=134217762 -flagg119=1207959552 -flagh119=20 -flagi119=4 -tflag119=0 -initx119=0 -inity119=0 -minx119=0 -miny119=0 -maxx119=0 -maxy119=0 -posx119=50 -posy119=50 -sizx119=800 -sizy119=600 -maxfps119=0 -initts119=0 -winver119=0 -maxres119=0 -title120=Black Thorn -path120=D:\Games\Black Thorn\BlackThorn.exe -module120= -opengllib120= -ver120=0 -coord120=0 -flag120=687886372 -flagg120=134217728 -flagh120=65556 -flagi120=4 -tflag120=6211 -initx120=0 -inity120=0 -minx120=0 -miny120=0 -maxx120=0 -maxy120=0 -posx120=50 -posy120=50 -sizx120=800 -sizy120=600 -maxfps120=0 -initts120=0 -winver120=0 -maxres120=-1 -title121=Empire of the Ants -path121=D:\Games\Empire of the Ants\Game.exe -module121= -opengllib121= -ver121=0 -coord121=0 -flag121=1023426596 -flagg121=134217744 -flagh121=20 -flagi121=4 -tflag121=6466 -initx121=0 -inity121=0 -minx121=0 -miny121=0 -maxx121=0 -maxy121=0 -posx121=50 -posy121=50 -sizx121=800 -sizy121=600 -maxfps121=0 -initts121=0 -winver121=0 -maxres121=-1 -title122=Populous 3 (GOG - D3D) -path122=D:\Games\Populous 3 (GOG)\D3DPopTB.exe -module122= -opengllib122= -ver122=0 -coord122=2 -flag122=738214436 -flagg122=134217744 -flagh122=65556 -flagi122=4 -tflag122=6147 -initx122=0 -inity122=0 -minx122=0 -miny122=0 -maxx122=0 -maxy122=0 -posx122=50 -posy122=50 -sizx122=800 -sizy122=600 -maxfps122=0 -initts122=0 -winver122=0 -maxres122=-1 -title123=Populous 3 (GOG) -path123=D:\Games\Populous 3 (GOG)\popTB.exe -module123= -opengllib123= -ver123=0 -coord123=0 -flag123=671105572 -flagg123=1207959568 -flagh123=20 -flagi123=4 -tflag123=0 -initx123=0 -inity123=0 -minx123=0 -miny123=0 -maxx123=0 -maxy123=0 -posx123=50 -posy123=50 -sizx123=800 -sizy123=600 -maxfps123=0 -initts123=0 -winver123=0 -maxres123=-1 -title124=Thief 2 (GOG) -path124=D:\Games\Thief 2 (GOG)\thief2_no_ddfix.exe -module124= -opengllib124= -ver124=0 -coord124=0 -flag124=671089184 -flagg124=1207959552 -flagh124=65556 -flagi124=4 -tflag124=0 -initx124=0 -inity124=0 -minx124=0 -miny124=0 -maxx124=0 -maxy124=0 -posx124=50 -posy124=50 -sizx124=800 -sizy124=600 -maxfps124=0 -initts124=0 -winver124=0 -maxres124=-1 -title125=Freelancer -module125= -opengllib125= -title126=Virtua Fighter PC -module126= -opengllib126= -path125=D:\Games\Freelancer\EXE\Freelancer.exe -ver125=0 -coord125=0 -flag125=671089184 -flagg125=1207959552 -flagh125=65556 -flagi125=4 -tflag125=1024 -initx125=0 -inity125=0 -minx125=0 -miny125=0 -maxx125=0 -maxy125=0 -posx125=50 -posy125=50 -sizx125=800 -sizy125=600 -maxfps125=0 -initts125=0 -winver125=0 -maxres125=-1 -path126=D:\Games\Virtua Fighter\VFPC.EXE -ver126=0 -coord126=0 -flag126=134218272 -flagg126=134217744 -flagh126=20 -flagi126=4 -tflag126=6147 -initx126=0 -inity126=0 -minx126=0 -miny126=0 -maxx126=0 -maxy126=0 -posx126=50 -posy126=50 -sizx126=800 -sizy126=600 -maxfps126=0 -initts126=0 -winver126=0 -maxres126=-1 -title127=Heroes of Might & Magic 2 -path127=D:\Games\Heroes of Might & Magic 2\HEROES2W.EXE -module127= -opengllib127= -ver127=0 -coord127=0 -flag127=2 -flagg127=1207959552 -flagh127=20 -flagi127=4 -tflag127=0 -initx127=0 -inity127=0 -minx127=0 -miny127=0 -maxx127=0 -maxy127=0 -posx127=50 -posy127=50 -sizx127=800 -sizy127=600 -maxfps127=0 -initts127=0 -winver127=0 -maxres127=-1 -title128=Evolva -path128=D:\Games\Evolva\Evolva.exe -module128= -opengllib128= -ver128=0 -coord128=0 -flag128=134217760 -flagg128=1207959552 -flagh128=20 -flagi128=4 -tflag128=6146 -initx128=0 -inity128=0 -minx128=0 -miny128=0 -maxx128=0 -maxy128=0 -posx128=50 -posy128=50 -sizx128=800 -sizy128=600 -maxfps128=0 -initts128=0 -winver128=0 -maxres128=-1 -title129=Heroes of Might & Magic 2 (POL) -path129=D:\Games\HEROES2\HEROES2W.EXE -module129= -opengllib129= -ver129=0 -coord129=0 -flag129=134218240 -flagg129=1207959560 -flagh129=20 -flagi129=32772 -tflag129=1024 -initx129=0 -inity129=0 -minx129=0 -miny129=0 -maxx129=0 -maxy129=0 -posx129=50 -posy129=50 -sizx129=800 -sizy129=600 -maxfps129=0 -initts129=0 -winver129=0 -maxres129=-1 -title130=Castle Strike -path130=D:\Games\Castle Strike\Castlestrike.exe -module130= -opengllib130= -ver130=8 -coord130=0 -flag130=671089184 -flagg130=1208483840 -flagh130=20 -flagi130=4 -tflag130=6155 -initx130=0 -inity130=0 -minx130=0 -miny130=0 -maxx130=0 -maxy130=0 -posx130=50 -posy130=50 -sizx130=800 -sizy130=600 -maxfps130=0 -initts130=0 -winver130=0 -maxres130=-1 -title131=Carnivores 3DFX -path131=D:\Games\Carnivores\HUNT3DFX.EXE -module131= -opengllib131= -ver131=0 -coord131=0 -flag131=671089184 -flagg131=1207959552 -flagh131=20 -flagi131=4 -tflag131=0 -initx131=0 -inity131=0 -minx131=0 -miny131=0 -maxx131=0 -maxy131=0 -posx131=50 -posy131=50 -sizx131=800 -sizy131=600 -maxfps131=0 -initts131=0 -winver131=0 -maxres131=-1 -title132=Carnivores -path132=D:\Games\Carnivores\HUNTSOFT.EXE -module132= -opengllib132= -ver132=0 -coord132=0 -flag132=939524640 -flagg132=1209008128 -flagh132=20 -flagi132=4 -tflag132=0 -initx132=0 -inity132=0 -minx132=0 -miny132=0 -maxx132=0 -maxy132=0 -posx132=50 -posy132=50 -sizx132=800 -sizy132=600 -maxfps132=0 -initts132=0 -winver132=0 -maxres132=-1 -title133=Catechumen (3DFX) -path133=D:\Games\Catechumen\game\Catechumen.exe -module133= -opengllib133= -ver133=9 -coord133=0 -flag133=402653218 -flagg133=1207959552 -flagh133=65556 -flagi133=16388 -tflag133=0 -initx133=0 -inity133=0 -minx133=0 -miny133=0 -maxx133=0 -maxy133=0 -posx133=50 -posy133=50 -sizx133=800 -sizy133=600 -maxfps133=0 -initts133=0 -winver133=0 -maxres133=-1 -title134=Deus Ex -path134=D:\Games\Deus Ex\System\DeusEx.exe -module134= -opengllib134= -ver134=9 -coord134=0 -flag134=134218240 -flagg134=1207959552 -flagh134=65556 -flagi134=4 -tflag134=0 -initx134=0 -inity134=0 -minx134=0 -miny134=0 -maxx134=0 -maxy134=0 -posx134=50 -posy134=50 -sizx134=800 -sizy134=600 -maxfps134=0 -initts134=0 -winver134=0 -maxres134=-1 -title135=Warhammer 40K Chaos Gate -path135=D:\Games\Warhammer 40K Chaos Gate\game\WH40K.exe -module135= -opengllib135= -ver135=0 -coord135=0 -flag135=679494176 -flagg135=134217728 -flagh135=20 -flagi135=4 -tflag135=0 -initx135=0 -inity135=0 -minx135=0 -miny135=0 -maxx135=0 -maxy135=0 -posx135=50 -posy135=50 -sizx135=800 -sizy135=600 -maxfps135=0 -initts135=0 -winver135=0 -maxres135=-1 -title136=Warhammer 40K Final Liberation -path136=D:\Games\Warhammer 40K Final Liberation\EPIC40K.EXE -module136= -opengllib136= -ver136=0 -coord136=0 -flag136=134217762 -flagg136=134217744 -flagh136=98324 -flagi136=4 -tflag136=6147 -initx136=0 -inity136=0 -minx136=0 -miny136=0 -maxx136=0 -maxy136=0 -posx136=50 -posy136=50 -sizx136=640 -sizy136=480 -maxfps136=0 -initts136=0 -winver136=0 -maxres136=-1 -title137=Warhammer 40K Rites Of War -path137=D:\Games\Warhammer 40K Rites Of War\game\RoW.orig.exe -module137= -opengllib137= -ver137=1 -coord137=0 -flag137=1744846882 -flagg137=134217858 -flagh137=20 -flagi137=0 -tflag137=6403 -initx137=0 -inity137=0 -minx137=0 -miny137=0 -maxx137=0 -maxy137=0 -posx137=50 -posy137=50 -sizx137=800 -sizy137=600 -maxfps137=0 -initts137=0 -winver137=0 -maxres137=-1 -title138=Darkened Skye -path138=D:\Games\Darkened Skye\Skye.exe -module138= -opengllib138= -ver138=0 -coord138=0 -flag138=679493664 -flagg138=1208025088 -flagh138=65556 -flagi138=67596 -tflag138=6403 -initx138=0 -inity138=0 -minx138=0 -miny138=0 -maxx138=0 -maxy138=0 -posx138=50 -posy138=50 -sizx138=800 -sizy138=600 -maxfps138=0 -initts138=0 -winver138=0 -maxres138=-1 -title139=New York Race -path139=D:\Games\New York Race\NYR.exe -module139= -opengllib139= -ver139=8 -coord139=0 -flag139=687867937 -flagg139=134283280 -flagh139=65556 -flagi139=204 -tflag139=4097 -initx139=0 -inity139=0 -minx139=0 -miny139=0 -maxx139=0 -maxy139=0 -posx139=50 -posy139=50 -sizx139=800 -sizy139=600 -maxfps139=0 -initts139=0 -winver139=0 -maxres139=-1 -title140=Incoming (GOG) -path140=D:\Games\Incoming and Incoming Forces\Incoming\incoming.exe -module140= -opengllib140= -ver140=7 -coord140=0 -flag140=150994976 -flagg140=1208025104 -flagh140=-2147483628 -flagi140=67820 -tflag140=6163 -initx140=0 -inity140=0 -minx140=0 -miny140=0 -maxx140=0 -maxy140=0 -posx140=50 -posy140=50 -sizx140=800 -sizy140=600 -maxfps140=0 -initts140=0 -winver140=0 -maxres140=-1 -title141=Incoming Forces (GOG) -path141=D:\Games\Incoming and Incoming Forces\Incoming Forces\forces.exe -module141= -opengllib141= -ver141=0 -coord141=0 -flag141=134218272 -flagg141=1207959552 -flagh141=20 -flagi141=4 -tflag141=1024 -initx141=0 -inity141=0 -minx141=0 -miny141=0 -maxx141=0 -maxy141=0 -posx141=50 -posy141=50 -sizx141=800 -sizy141=600 -maxfps141=0 -initts141=0 -winver141=0 -maxres141=-1 -title142=Armored Fist 3 -path142=D:\Games\Armored Fist 3\Af3.exe -module142= -opengllib142= -ver142=0 -coord142=0 -flag142=134217763 -flagg142=1208025088 -flagh142=6291476 -flagi142=14 -tflag142=64 -initx142=0 -inity142=0 -minx142=0 -miny142=0 -maxx142=0 -maxy142=0 -posx142=50 -posy142=50 -sizx142=800 -sizy142=600 -maxfps142=0 -initts142=0 -winver142=0 -maxres142=-1 -title143=Earthworm Jim 3D -module143= -opengllib143= -title144=Echelon -module144= -opengllib144= -path143=D:\Games\Earthworm Jim 3D\EarthwormJim3D.exe -ver143=0 -coord143=0 -flag143=134217760 -flagg143=1212219392 -flagh143=65556 -flagi143=12 -tflag143=6211 -initx143=0 -inity143=0 -minx143=0 -miny143=0 -maxx143=0 -maxy143=0 -posx143=50 -posy143=50 -sizx143=800 -sizy143=600 -maxfps143=0 -initts143=2 -winver143=1 -maxres143=-1 -path144=D:\Games\echelon\Game.exe -ver144=0 -coord144=0 -flag144=151011328 -flagg144=-2013265920 -flagh144=20 -flagi144=132 -tflag144=0 -initx144=0 -inity144=0 -minx144=0 -miny144=0 -maxx144=0 -maxy144=0 -posx144=50 -posy144=50 -sizx144=800 -sizy144=600 -maxfps144=0 -initts144=0 -winver144=0 -maxres144=-1 -title145=Total Soccer 2000 (DirectX) -path145=D:\Games\Total Soccer 2000\SOCCERDX.EXE -module145= -opengllib145= -ver145=1 -coord145=0 -flag145=134234274 -flagg145=134283520 -flagh145=20 -flagi145=12 -tflag145=6163 -initx145=0 -inity145=0 -minx145=0 -miny145=0 -maxx145=0 -maxy145=0 -posx145=50 -posy145=50 -sizx145=800 -sizy145=600 -maxfps145=0 -initts145=0 -winver145=0 -maxres145=-1 -title146=Total Soccer 2000 (3DFX) -path146=D:\Games\Total Soccer 2000\soccer3dfx.exe -module146= -opengllib146= -ver146=9 -coord146=0 -flag146=134234657 -flagg146=1208025344 -flagh146=20 -flagi146=12 -tflag146=5121 -initx146=0 -inity146=0 -minx146=0 -miny146=0 -maxx146=0 -maxy146=0 -posx146=50 -posy146=50 -sizx146=800 -sizy146=600 -maxfps146=0 -initts146=2 -winver146=0 -maxres146=-1 -title147=Gruntz -path147=D:\Games\gruntz\GRUNTZ.EXE -module147= -opengllib147= -ver147=0 -coord147=0 -flag147=134234656 -flagg147=1207959552 -flagh147=67108884 -flagi147=131076 -tflag147=0 -initx147=0 -inity147=0 -minx147=0 -miny147=0 -maxx147=0 -maxy147=0 -posx147=50 -posy147=50 -sizx147=800 -sizy147=600 -maxfps147=0 -initts147=0 -winver147=0 -maxres147=-1 -title148=Titan Quest -path148=D:\Games\Titan Quest\Titan Quest.exe -module148= -opengllib148= -ver148=9 -coord148=2 -flag148=134218272 -flagg148=134217728 -flagh148=20 -flagi148=1026 -tflag148=6147 -initx148=0 -inity148=0 -minx148=0 -miny148=0 -maxx148=0 -maxy148=0 -posx148=50 -posy148=50 -sizx148=800 -sizy148=600 -maxfps148=0 -initts148=0 -winver148=4 -maxres148=-1 -title149=Titan Quest Immortal Throne -path149=D:\Games\Titan Quest Immortal Throne\Tqit.exe -module149= -opengllib149= -ver149=9 -coord149=0 -flag149=134218272 -flagg149=1207959552 -flagh149=20 -flagi149=4 -tflag149=0 -initx149=0 -inity149=0 -minx149=0 -miny149=0 -maxx149=0 -maxy149=0 -posx149=50 -posy149=50 -sizx149=800 -sizy149=600 -maxfps149=0 -initts149=0 -winver149=0 -maxres149=-1 -title150=Darius Gaiden -path150=D:\Games\Darius_gaiden\DARIUS.EXE -module150= -opengllib150= -ver150=0 -coord150=0 -flag150=671089184 -flagg150=1207959552 -flagh150=20 -flagi150=4 -tflag150=0 -initx150=0 -inity150=0 -minx150=0 -miny150=0 -maxx150=0 -maxy150=0 -posx150=50 -posy150=50 -sizx150=800 -sizy150=600 -maxfps150=0 -initts150=2 -winver150=0 -maxres150=-1 -title151=Dark Colony -path151=D:\Games\DarkColony\DCOLONY\DC.EXE -module151= -opengllib151= -ver151=0 -coord151=0 -flag151=136315424 -flagg151=1207959552 -flagh151=20 -flagi151=4 -tflag151=0 -initx151=0 -inity151=0 -minx151=0 -miny151=0 -maxx151=0 -maxy151=0 -posx151=50 -posy151=50 -sizx151=800 -sizy151=600 -maxfps151=0 -initts151=0 -winver151=0 -maxres151=-1 -title152=Dark Reign 2 -path152=D:\Games\Dr2\dr2.exe -module152= -opengllib152= -ver152=0 -coord152=0 -flag152=671088672 -flagg152=1207959552 -flagh152=20 -flagi152=4 -tflag152=0 -initx152=0 -inity152=0 -minx152=0 -miny152=0 -maxx152=0 -maxy152=0 -posx152=50 -posy152=50 -sizx152=800 -sizy152=600 -maxfps152=0 -initts152=0 -winver152=0 -maxres152=-1 -title153=Dark Planet: Battle for Natrolis -path153=D:\Games\DarkPlanet\Dark.exe -module153= -opengllib153= -ver153=0 -coord153=0 -flag153=671088673 -flagg153=1208025088 -flagh153=20 -flagi153=12 -tflag153=0 -initx153=0 -inity153=0 -minx153=0 -miny153=0 -maxx153=0 -maxy153=0 -posx153=50 -posy153=50 -sizx153=800 -sizy153=600 -maxfps153=0 -initts153=0 -winver153=0 -maxres153=-1 -title154=Geneforge -path154=D:\Games\Geneforge\Geneforge.exe -module154= -opengllib154= -ver154=0 -coord154=0 -flag154=134234660 -flagg154=1207959680 -flagh154=20 -flagi154=131076 -tflag154=0 -initx154=0 -inity154=0 -minx154=0 -miny154=0 -maxx154=0 -maxy154=0 -posx154=50 -posy154=50 -sizx154=800 -sizy154=600 -maxfps154=0 -initts154=0 -winver154=0 -maxres154=-1 -title155=Geneforge (GOG) -path155=D:\Games\GOG.com\Geneforge\Geneforge\Geneforge.exe -module155= -opengllib155= -ver155=0 -coord155=0 -flag155=134234656 -flagg155=1208025088 -flagh155=20 -flagi155=12 -tflag155=0 -initx155=0 -inity155=0 -minx155=0 -miny155=0 -maxx155=0 -maxy155=0 -posx155=50 -posy155=50 -sizx155=800 -sizy155=600 -maxfps155=0 -initts155=-8 -winver155=0 -maxres155=-1 -title156=Jumpgate Classic -path156=D:\Games\Jumpgate\Jumpgate\jumpgate.exe -module156= -opengllib156= -ver156=0 -coord156=0 -flag156=134218272 -flagg156=1207959568 -flagh156=84 -flagi156=2 -tflag156=0 -initx156=0 -inity156=0 -minx156=0 -miny156=0 -maxx156=0 -maxy156=0 -posx156=50 -posy156=50 -sizx156=1200 -sizy156=900 -maxfps156=0 -initts156=0 -winver156=0 -maxres156=-1 -[window] -posx=963 -posy=147 -sizx=638 -sizy=618 diff --git a/build/exports/Black Thorn.dxw b/build/exports/Black Thorn.dxw index 6792413..7cd924d 100644 --- a/build/exports/Black Thorn.dxw +++ b/build/exports/Black Thorn.dxw @@ -1,15 +1,15 @@ [target] title0=Black Thorn -path0=D:\Games\Red Storm Entertainment\Rogue Spear\BlackThorn.exe +path0=D:\Games\Black Thorn\BlackThorn.exe module0= opengllib0= ver0=0 coord0=0 -flag0=939540517 +flag0=687882276 flagg0=134217728 flagh0=20 -flagi0=36 -tflag0=6470 +flagi0=131076 +tflag0=6210 initx0=0 inity0=0 minx0=0 diff --git a/build/exports/Jumpgate Classic.dxw b/build/exports/Jumpgate Classic.dxw new file mode 100644 index 0000000..e5a946b --- /dev/null +++ b/build/exports/Jumpgate Classic.dxw @@ -0,0 +1,26 @@ +[target] +title0=Jumpgate Classic +path0=D:\Games\Jumpgate\Jumpgate\jumpgate.exe +module0= +opengllib0= +ver0=0 +coord0=0 +flag0=134234656 +flagg0=1207959568 +flagh0=84 +flagi0=2 +tflag0=6146 +initx0=0 +inity0=0 +minx0=0 +miny0=0 +maxx0=0 +maxy0=0 +posx0=50 +posy0=50 +sizx0=800 +sizy0=600 +maxfps0=0 +initts0=0 +winver0=0 +maxres0=-1 diff --git a/build/readme-relnotes.txt b/build/readme-relnotes.txt index 9bff007..576e5da 100644 --- a/build/readme-relnotes.txt +++ b/build/readme-relnotes.txt @@ -412,5 +412,9 @@ v2.02.62 fixed d3d7 CreateDevice hook and d3d7 rendering options (wireframe, disablefogging, zbufferalways) fixed doublebuffer emulation - avoid returning the backbuffer when zbuffer is requested. Fixes rendering problems of many games! +v2.02.63 +fixed d3d hooking for Reset and GetDirect3D methods: now Jumpgate works at any available resolution, and the "Add proxy libs" option is no longer necessary +fixed "Compensate Flip emulation" option for non emulated surface mode: fixes mouse artifacts for "Rogue Spear Black Thorn" +added preliminary handling for "Disable Textures" option diff --git a/d3d9proxy/d3d9.h b/d3d9proxy/d3d9.h deleted file mode 100644 index 4d985e8..0000000 --- a/d3d9proxy/d3d9.h +++ /dev/null @@ -1,1667 +0,0 @@ -/*==========================================================================; - * - * Copyright (C) Microsoft Corporation. All Rights Reserved. - * - * File: d3d9.h - * Content: Direct3D include file - * - ****************************************************************************/ - -#ifndef _D3D9_H_ -#define _D3D9_H_ - -#ifndef DIRECT3D_VERSION -#define DIRECT3D_VERSION 0x0900 -#endif //DIRECT3D_VERSION - -// include this file content only if compiling for DX9 interfaces -#if(DIRECT3D_VERSION >= 0x0900) - - -/* This identifier is passed to Direct3DCreate9 in order to ensure that an - * application was built against the correct header files. This number is - * incremented whenever a header (or other) change would require applications - * to be rebuilt. If the version doesn't match, Direct3DCreate9 will fail. - * (The number itself has no meaning.)*/ - -#define D3D_SDK_VERSION 31 - - -#include - -#define COM_NO_WINDOWS_H -#include - -#include - -#if !defined(HMONITOR_DECLARED) && (WINVER < 0x0500) - #define HMONITOR_DECLARED - DECLARE_HANDLE(HMONITOR); -#endif - -#define D3DAPI WINAPI - -/* - * Interface IID's - */ -#if defined( _WIN32 ) && !defined( _NO_COM) - -/* IID_IDirect3D9 */ -/* {81BDCBCA-64D4-426d-AE8D-AD0147F4275C} */ -DEFINE_GUID(IID_IDirect3D9, 0x81bdcbca, 0x64d4, 0x426d, 0xae, 0x8d, 0xad, 0x1, 0x47, 0xf4, 0x27, 0x5c); - -/* IID_IDirect3DDevice9 */ -// {D0223B96-BF7A-43fd-92BD-A43B0D82B9EB} */ -DEFINE_GUID(IID_IDirect3DDevice9, 0xd0223b96, 0xbf7a, 0x43fd, 0x92, 0xbd, 0xa4, 0x3b, 0xd, 0x82, 0xb9, 0xeb); - -/* IID_IDirect3DResource9 */ -// {05EEC05D-8F7D-4362-B999-D1BAF357C704} -DEFINE_GUID(IID_IDirect3DResource9, 0x5eec05d, 0x8f7d, 0x4362, 0xb9, 0x99, 0xd1, 0xba, 0xf3, 0x57, 0xc7, 0x4); - -/* IID_IDirect3DBaseTexture9 */ -/* {580CA87E-1D3C-4d54-991D-B7D3E3C298CE} */ -DEFINE_GUID(IID_IDirect3DBaseTexture9, 0x580ca87e, 0x1d3c, 0x4d54, 0x99, 0x1d, 0xb7, 0xd3, 0xe3, 0xc2, 0x98, 0xce); - -/* IID_IDirect3DTexture9 */ -/* {85C31227-3DE5-4f00-9B3A-F11AC38C18B5} */ -DEFINE_GUID(IID_IDirect3DTexture9, 0x85c31227, 0x3de5, 0x4f00, 0x9b, 0x3a, 0xf1, 0x1a, 0xc3, 0x8c, 0x18, 0xb5); - -/* IID_IDirect3DCubeTexture9 */ -/* {FFF32F81-D953-473a-9223-93D652ABA93F} */ -DEFINE_GUID(IID_IDirect3DCubeTexture9, 0xfff32f81, 0xd953, 0x473a, 0x92, 0x23, 0x93, 0xd6, 0x52, 0xab, 0xa9, 0x3f); - -/* IID_IDirect3DVolumeTexture9 */ -/* {2518526C-E789-4111-A7B9-47EF328D13E6} */ -DEFINE_GUID(IID_IDirect3DVolumeTexture9, 0x2518526c, 0xe789, 0x4111, 0xa7, 0xb9, 0x47, 0xef, 0x32, 0x8d, 0x13, 0xe6); - -/* IID_IDirect3DVertexBuffer9 */ -/* {B64BB1B5-FD70-4df6-BF91-19D0A12455E3} */ -DEFINE_GUID(IID_IDirect3DVertexBuffer9, 0xb64bb1b5, 0xfd70, 0x4df6, 0xbf, 0x91, 0x19, 0xd0, 0xa1, 0x24, 0x55, 0xe3); - -/* IID_IDirect3DIndexBuffer9 */ -/* {7C9DD65E-D3F7-4529-ACEE-785830ACDE35} */ -DEFINE_GUID(IID_IDirect3DIndexBuffer9, 0x7c9dd65e, 0xd3f7, 0x4529, 0xac, 0xee, 0x78, 0x58, 0x30, 0xac, 0xde, 0x35); - -/* IID_IDirect3DSurface9 */ -/* {0CFBAF3A-9FF6-429a-99B3-A2796AF8B89B} */ -DEFINE_GUID(IID_IDirect3DSurface9, 0xcfbaf3a, 0x9ff6, 0x429a, 0x99, 0xb3, 0xa2, 0x79, 0x6a, 0xf8, 0xb8, 0x9b); - -/* IID_IDirect3DVolume9 */ -/* {24F416E6-1F67-4aa7-B88E-D33F6F3128A1} */ -DEFINE_GUID(IID_IDirect3DVolume9, 0x24f416e6, 0x1f67, 0x4aa7, 0xb8, 0x8e, 0xd3, 0x3f, 0x6f, 0x31, 0x28, 0xa1); - -/* IID_IDirect3DSwapChain9 */ -/* {794950F2-ADFC-458a-905E-10A10B0B503B} */ -DEFINE_GUID(IID_IDirect3DSwapChain9, 0x794950f2, 0xadfc, 0x458a, 0x90, 0x5e, 0x10, 0xa1, 0xb, 0xb, 0x50, 0x3b); - -/* IID_IDirect3DVertexDeclaration9 */ -/* {DD13C59C-36FA-4098-A8FB-C7ED39DC8546} */ -DEFINE_GUID(IID_IDirect3DVertexDeclaration9, 0xdd13c59c, 0x36fa, 0x4098, 0xa8, 0xfb, 0xc7, 0xed, 0x39, 0xdc, 0x85, 0x46); - -/* IID_IDirect3DVertexShader9 */ -/* {EFC5557E-6265-4613-8A94-43857889EB36} */ -DEFINE_GUID(IID_IDirect3DVertexShader9, 0xefc5557e, 0x6265, 0x4613, 0x8a, 0x94, 0x43, 0x85, 0x78, 0x89, 0xeb, 0x36); - -/* IID_IDirect3DPixelShader9 */ -/* {6D3BDBDC-5B02-4415-B852-CE5E8BCCB289} */ -DEFINE_GUID(IID_IDirect3DPixelShader9, 0x6d3bdbdc, 0x5b02, 0x4415, 0xb8, 0x52, 0xce, 0x5e, 0x8b, 0xcc, 0xb2, 0x89); - -/* IID_IDirect3DStateBlock9 */ -/* {B07C4FE5-310D-4ba8-A23C-4F0F206F218B} */ -DEFINE_GUID(IID_IDirect3DStateBlock9, 0xb07c4fe5, 0x310d, 0x4ba8, 0xa2, 0x3c, 0x4f, 0xf, 0x20, 0x6f, 0x21, 0x8b); - -/* IID_IDirect3DQuery9 */ -/* {d9771460-a695-4f26-bbd3-27b840b541cc} */ -DEFINE_GUID(IID_IDirect3DQuery9, 0xd9771460, 0xa695, 0x4f26, 0xbb, 0xd3, 0x27, 0xb8, 0x40, 0xb5, 0x41, 0xcc); - - -#endif - -#ifdef __cplusplus - -#ifndef DECLSPEC_UUID -#if _MSC_VER >= 1100 -#define DECLSPEC_UUID(x) __declspec(uuid(x)) -#else -#define DECLSPEC_UUID(x) -#endif -#endif - -interface DECLSPEC_UUID("81BDCBCA-64D4-426d-AE8D-AD0147F4275C") IDirect3D9; -interface DECLSPEC_UUID("D0223B96-BF7A-43fd-92BD-A43B0D82B9EB") IDirect3DDevice9; - -interface DECLSPEC_UUID("B07C4FE5-310D-4ba8-A23C-4F0F206F218B") IDirect3DStateBlock9; -interface DECLSPEC_UUID("05EEC05D-8F7D-4362-B999-D1BAF357C704") IDirect3DResource9; -interface DECLSPEC_UUID("DD13C59C-36FA-4098-A8FB-C7ED39DC8546") IDirect3DVertexDeclaration9; -interface DECLSPEC_UUID("EFC5557E-6265-4613-8A94-43857889EB36") IDirect3DVertexShader9; -interface DECLSPEC_UUID("6D3BDBDC-5B02-4415-B852-CE5E8BCCB289") IDirect3DPixelShader9; -interface DECLSPEC_UUID("580CA87E-1D3C-4d54-991D-B7D3E3C298CE") IDirect3DBaseTexture9; -interface DECLSPEC_UUID("85C31227-3DE5-4f00-9B3A-F11AC38C18B5") IDirect3DTexture9; -interface DECLSPEC_UUID("2518526C-E789-4111-A7B9-47EF328D13E6") IDirect3DVolumeTexture9; -interface DECLSPEC_UUID("FFF32F81-D953-473a-9223-93D652ABA93F") IDirect3DCubeTexture9; - -interface DECLSPEC_UUID("B64BB1B5-FD70-4df6-BF91-19D0A12455E3") IDirect3DVertexBuffer9; -interface DECLSPEC_UUID("7C9DD65E-D3F7-4529-ACEE-785830ACDE35") IDirect3DIndexBuffer9; - -interface DECLSPEC_UUID("0CFBAF3A-9FF6-429a-99B3-A2796AF8B89B") IDirect3DSurface9; -interface DECLSPEC_UUID("24F416E6-1F67-4aa7-B88E-D33F6F3128A1") IDirect3DVolume9; - -interface DECLSPEC_UUID("794950F2-ADFC-458a-905E-10A10B0B503B") IDirect3DSwapChain9; -interface DECLSPEC_UUID("d9771460-a695-4f26-bbd3-27b840b541cc") IDirect3DQuery9; - - -#if defined(_COM_SMARTPTR_TYPEDEF) -_COM_SMARTPTR_TYPEDEF(IDirect3D9, __uuidof(IDirect3D9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DDevice9, __uuidof(IDirect3DDevice9)); - -_COM_SMARTPTR_TYPEDEF(IDirect3DStateBlock9, __uuidof(IDirect3DStateBlock9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DResource9, __uuidof(IDirect3DResource9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DVertexDeclaration9, __uuidof(IDirect3DVertexDeclaration9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DVertexShader9, __uuidof(IDirect3DVertexShader9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DPixelShader9, __uuidof(IDirect3DPixelShader9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DBaseTexture9, __uuidof(IDirect3DBaseTexture9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DTexture9, __uuidof(IDirect3DTexture9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DVolumeTexture9, __uuidof(IDirect3DVolumeTexture9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DCubeTexture9, __uuidof(IDirect3DCubeTexture9)); - -_COM_SMARTPTR_TYPEDEF(IDirect3DVertexBuffer9, __uuidof(IDirect3DVertexBuffer9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DIndexBuffer9, __uuidof(IDirect3DIndexBuffer9)); - -_COM_SMARTPTR_TYPEDEF(IDirect3DSurface9, __uuidof(IDirect3DSurface9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DVolume9, __uuidof(IDirect3DVolume9)); - -_COM_SMARTPTR_TYPEDEF(IDirect3DSwapChain9, __uuidof(IDirect3DSwapChain9)); -_COM_SMARTPTR_TYPEDEF(IDirect3DQuery9, __uuidof(IDirect3DQuery9)); - -#endif -#endif - - -typedef interface IDirect3D9 IDirect3D9; -typedef interface IDirect3DDevice9 IDirect3DDevice9; -typedef interface IDirect3DStateBlock9 IDirect3DStateBlock9; -typedef interface IDirect3DVertexDeclaration9 IDirect3DVertexDeclaration9; -typedef interface IDirect3DVertexShader9 IDirect3DVertexShader9; -typedef interface IDirect3DPixelShader9 IDirect3DPixelShader9; -typedef interface IDirect3DResource9 IDirect3DResource9; -typedef interface IDirect3DBaseTexture9 IDirect3DBaseTexture9; -typedef interface IDirect3DTexture9 IDirect3DTexture9; -typedef interface IDirect3DVolumeTexture9 IDirect3DVolumeTexture9; -typedef interface IDirect3DCubeTexture9 IDirect3DCubeTexture9; -typedef interface IDirect3DVertexBuffer9 IDirect3DVertexBuffer9; -typedef interface IDirect3DIndexBuffer9 IDirect3DIndexBuffer9; -typedef interface IDirect3DSurface9 IDirect3DSurface9; -typedef interface IDirect3DVolume9 IDirect3DVolume9; -typedef interface IDirect3DSwapChain9 IDirect3DSwapChain9; -typedef interface IDirect3DQuery9 IDirect3DQuery9; - - -#include "d3d9types.h" -#include "d3d9caps.h" - - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * DLL Function for creating a Direct3D9 object. This object supports - * enumeration and allows the creation of Direct3DDevice9 objects. - * Pass the value of the constant D3D_SDK_VERSION to this function, so - * that the run-time can validate that your application was compiled - * against the right headers. - */ - -IDirect3D9 * WINAPI Direct3DCreate9(UINT SDKVersion); - - -/* - * Direct3D interfaces - */ - - - - - -#undef INTERFACE -#define INTERFACE IDirect3D9 - -DECLARE_INTERFACE_(IDirect3D9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3D9 methods ***/ - STDMETHOD(RegisterSoftwareDevice)(THIS_ void* pInitializeFunction) PURE; - STDMETHOD_(UINT, GetAdapterCount)(THIS) PURE; - STDMETHOD(GetAdapterIdentifier)(THIS_ UINT Adapter,DWORD Flags,D3DADAPTER_IDENTIFIER9* pIdentifier) PURE; - STDMETHOD_(UINT, GetAdapterModeCount)(THIS_ UINT Adapter,D3DFORMAT Format) PURE; - STDMETHOD(EnumAdapterModes)(THIS_ UINT Adapter,D3DFORMAT Format,UINT Mode,D3DDISPLAYMODE* pMode) PURE; - STDMETHOD(GetAdapterDisplayMode)(THIS_ UINT Adapter,D3DDISPLAYMODE* pMode) PURE; - STDMETHOD(CheckDeviceType)(THIS_ UINT iAdapter,D3DDEVTYPE DevType,D3DFORMAT DisplayFormat,D3DFORMAT BackBufferFormat,BOOL bWindowed) PURE; - STDMETHOD(CheckDeviceFormat)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,DWORD Usage,D3DRESOURCETYPE RType,D3DFORMAT CheckFormat) PURE; - STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SurfaceFormat,BOOL Windowed,D3DMULTISAMPLE_TYPE MultiSampleType,DWORD* pQualityLevels) PURE; - STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,D3DFORMAT RenderTargetFormat,D3DFORMAT DepthStencilFormat) PURE; - STDMETHOD(CheckDeviceFormatConversion)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SourceFormat,D3DFORMAT TargetFormat) PURE; - STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,D3DCAPS9* pCaps) PURE; - STDMETHOD_(HMONITOR, GetAdapterMonitor)(THIS_ UINT Adapter) PURE; - STDMETHOD(CreateDevice)(THIS_ UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DDevice9** ppReturnedDeviceInterface) PURE; -}; - -typedef struct IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3D9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3D9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3D9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3D9_RegisterSoftwareDevice(p,a) (p)->lpVtbl->RegisterSoftwareDevice(p,a) -#define IDirect3D9_GetAdapterCount(p) (p)->lpVtbl->GetAdapterCount(p) -#define IDirect3D9_GetAdapterIdentifier(p,a,b,c) (p)->lpVtbl->GetAdapterIdentifier(p,a,b,c) -#define IDirect3D9_GetAdapterModeCount(p,a,b) (p)->lpVtbl->GetAdapterModeCount(p,a,b) -#define IDirect3D9_EnumAdapterModes(p,a,b,c,d) (p)->lpVtbl->EnumAdapterModes(p,a,b,c,d) -#define IDirect3D9_GetAdapterDisplayMode(p,a,b) (p)->lpVtbl->GetAdapterDisplayMode(p,a,b) -#define IDirect3D9_CheckDeviceType(p,a,b,c,d,e) (p)->lpVtbl->CheckDeviceType(p,a,b,c,d,e) -#define IDirect3D9_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceFormat(p,a,b,c,d,e,f) -#define IDirect3D9_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceMultiSampleType(p,a,b,c,d,e,f) -#define IDirect3D9_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->lpVtbl->CheckDepthStencilMatch(p,a,b,c,d,e) -#define IDirect3D9_CheckDeviceFormatConversion(p,a,b,c,d) (p)->lpVtbl->CheckDeviceFormatConversion(p,a,b,c,d) -#define IDirect3D9_GetDeviceCaps(p,a,b,c) (p)->lpVtbl->GetDeviceCaps(p,a,b,c) -#define IDirect3D9_GetAdapterMonitor(p,a) (p)->lpVtbl->GetAdapterMonitor(p,a) -#define IDirect3D9_CreateDevice(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDevice(p,a,b,c,d,e,f) -#else -#define IDirect3D9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3D9_AddRef(p) (p)->AddRef() -#define IDirect3D9_Release(p) (p)->Release() -#define IDirect3D9_RegisterSoftwareDevice(p,a) (p)->RegisterSoftwareDevice(a) -#define IDirect3D9_GetAdapterCount(p) (p)->GetAdapterCount() -#define IDirect3D9_GetAdapterIdentifier(p,a,b,c) (p)->GetAdapterIdentifier(a,b,c) -#define IDirect3D9_GetAdapterModeCount(p,a,b) (p)->GetAdapterModeCount(a,b) -#define IDirect3D9_EnumAdapterModes(p,a,b,c,d) (p)->EnumAdapterModes(a,b,c,d) -#define IDirect3D9_GetAdapterDisplayMode(p,a,b) (p)->GetAdapterDisplayMode(a,b) -#define IDirect3D9_CheckDeviceType(p,a,b,c,d,e) (p)->CheckDeviceType(a,b,c,d,e) -#define IDirect3D9_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->CheckDeviceFormat(a,b,c,d,e,f) -#define IDirect3D9_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->CheckDeviceMultiSampleType(a,b,c,d,e,f) -#define IDirect3D9_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->CheckDepthStencilMatch(a,b,c,d,e) -#define IDirect3D9_CheckDeviceFormatConversion(p,a,b,c,d) (p)->CheckDeviceFormatConversion(a,b,c,d) -#define IDirect3D9_GetDeviceCaps(p,a,b,c) (p)->GetDeviceCaps(a,b,c) -#define IDirect3D9_GetAdapterMonitor(p,a) (p)->GetAdapterMonitor(a) -#define IDirect3D9_CreateDevice(p,a,b,c,d,e,f) (p)->CreateDevice(a,b,c,d,e,f) -#endif - - - - - - - -/* SwapChain */ - - - - - - - - - - - - - - - -#undef INTERFACE -#define INTERFACE IDirect3DDevice9 - -DECLARE_INTERFACE_(IDirect3DDevice9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DDevice9 methods ***/ - STDMETHOD(TestCooperativeLevel)(THIS) PURE; - STDMETHOD_(UINT, GetAvailableTextureMem)(THIS) PURE; - STDMETHOD(EvictManagedResources)(THIS) PURE; - STDMETHOD(GetDirect3D)(THIS_ IDirect3D9** ppD3D9) PURE; - STDMETHOD(GetDeviceCaps)(THIS_ D3DCAPS9* pCaps) PURE; - STDMETHOD(GetDisplayMode)(THIS_ UINT iSwapChain,D3DDISPLAYMODE* pMode) PURE; - STDMETHOD(GetCreationParameters)(THIS_ D3DDEVICE_CREATION_PARAMETERS *pParameters) PURE; - STDMETHOD(SetCursorProperties)(THIS_ UINT XHotSpot,UINT YHotSpot,IDirect3DSurface9* pCursorBitmap) PURE; - STDMETHOD_(void, SetCursorPosition)(THIS_ int X,int Y,DWORD Flags) PURE; - STDMETHOD_(BOOL, ShowCursor)(THIS_ BOOL bShow) PURE; - STDMETHOD(CreateAdditionalSwapChain)(THIS_ D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DSwapChain9** pSwapChain) PURE; - STDMETHOD(GetSwapChain)(THIS_ UINT iSwapChain,IDirect3DSwapChain9** pSwapChain) PURE; - STDMETHOD_(UINT, GetNumberOfSwapChains)(THIS) PURE; - STDMETHOD(Reset)(THIS_ D3DPRESENT_PARAMETERS* pPresentationParameters) PURE; - STDMETHOD(Present)(THIS_ CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion) PURE; - STDMETHOD(GetBackBuffer)(THIS_ UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer) PURE; - STDMETHOD(GetRasterStatus)(THIS_ UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus) PURE; - STDMETHOD(SetDialogBoxMode)(THIS_ BOOL bEnableDialogs) PURE; - STDMETHOD_(void, SetGammaRamp)(THIS_ UINT iSwapChain,DWORD Flags,CONST D3DGAMMARAMP* pRamp) PURE; - STDMETHOD_(void, GetGammaRamp)(THIS_ UINT iSwapChain,D3DGAMMARAMP* pRamp) PURE; - STDMETHOD(CreateTexture)(THIS_ UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture9** ppTexture,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateVolumeTexture)(THIS_ UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture9** ppVolumeTexture,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateCubeTexture)(THIS_ UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture9** ppCubeTexture,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateVertexBuffer)(THIS_ UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer9** ppVertexBuffer,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateIndexBuffer)(THIS_ UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer9** ppIndexBuffer,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateRenderTarget)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) PURE; - STDMETHOD(CreateDepthStencilSurface)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) PURE; - STDMETHOD(UpdateSurface)(THIS_ IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestinationSurface,CONST POINT* pDestPoint) PURE; - STDMETHOD(UpdateTexture)(THIS_ IDirect3DBaseTexture9* pSourceTexture,IDirect3DBaseTexture9* pDestinationTexture) PURE; - STDMETHOD(GetRenderTargetData)(THIS_ IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface) PURE; - STDMETHOD(GetFrontBufferData)(THIS_ UINT iSwapChain,IDirect3DSurface9* pDestSurface) PURE; - STDMETHOD(StretchRect)(THIS_ IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter) PURE; - STDMETHOD(ColorFill)(THIS_ IDirect3DSurface9* pSurface,CONST RECT* pRect,D3DCOLOR color) PURE; - STDMETHOD(CreateOffscreenPlainSurface)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) PURE; - STDMETHOD(SetRenderTarget)(THIS_ DWORD RenderTargetIndex,IDirect3DSurface9* pRenderTarget) PURE; - STDMETHOD(GetRenderTarget)(THIS_ DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget) PURE; - STDMETHOD(SetDepthStencilSurface)(THIS_ IDirect3DSurface9* pNewZStencil) PURE; - STDMETHOD(GetDepthStencilSurface)(THIS_ IDirect3DSurface9** ppZStencilSurface) PURE; - STDMETHOD(BeginScene)(THIS) PURE; - STDMETHOD(EndScene)(THIS) PURE; - STDMETHOD(Clear)(THIS_ DWORD Count,CONST D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil) PURE; - STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix) PURE; - STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix) PURE; - STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE,CONST D3DMATRIX*) PURE; - STDMETHOD(SetViewport)(THIS_ CONST D3DVIEWPORT9* pViewport) PURE; - STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT9* pViewport) PURE; - STDMETHOD(SetMaterial)(THIS_ CONST D3DMATERIAL9* pMaterial) PURE; - STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL9* pMaterial) PURE; - STDMETHOD(SetLight)(THIS_ DWORD Index,CONST D3DLIGHT9*) PURE; - STDMETHOD(GetLight)(THIS_ DWORD Index,D3DLIGHT9*) PURE; - STDMETHOD(LightEnable)(THIS_ DWORD Index,BOOL Enable) PURE; - STDMETHOD(GetLightEnable)(THIS_ DWORD Index,BOOL* pEnable) PURE; - STDMETHOD(SetClipPlane)(THIS_ DWORD Index,CONST float* pPlane) PURE; - STDMETHOD(GetClipPlane)(THIS_ DWORD Index,float* pPlane) PURE; - STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE State,DWORD Value) PURE; - STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE State,DWORD* pValue) PURE; - STDMETHOD(CreateStateBlock)(THIS_ D3DSTATEBLOCKTYPE Type,IDirect3DStateBlock9** ppSB) PURE; - STDMETHOD(BeginStateBlock)(THIS) PURE; - STDMETHOD(EndStateBlock)(THIS_ IDirect3DStateBlock9** ppSB) PURE; - STDMETHOD(SetClipStatus)(THIS_ CONST D3DCLIPSTATUS9* pClipStatus) PURE; - STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS9* pClipStatus) PURE; - STDMETHOD(GetTexture)(THIS_ DWORD Stage,IDirect3DBaseTexture9** ppTexture) PURE; - STDMETHOD(SetTexture)(THIS_ DWORD Stage,IDirect3DBaseTexture9* pTexture) PURE; - STDMETHOD(GetTextureStageState)(THIS_ DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue) PURE; - STDMETHOD(SetTextureStageState)(THIS_ DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value) PURE; - STDMETHOD(GetSamplerState)(THIS_ DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue) PURE; - STDMETHOD(SetSamplerState)(THIS_ DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value) PURE; - STDMETHOD(ValidateDevice)(THIS_ DWORD* pNumPasses) PURE; - STDMETHOD(SetPaletteEntries)(THIS_ UINT PaletteNumber,CONST PALETTEENTRY* pEntries) PURE; - STDMETHOD(GetPaletteEntries)(THIS_ UINT PaletteNumber,PALETTEENTRY* pEntries) PURE; - STDMETHOD(SetCurrentTexturePalette)(THIS_ UINT PaletteNumber) PURE; - STDMETHOD(GetCurrentTexturePalette)(THIS_ UINT *PaletteNumber) PURE; - STDMETHOD(SetScissorRect)(THIS_ CONST RECT* pRect) PURE; - STDMETHOD(GetScissorRect)(THIS_ RECT* pRect) PURE; - STDMETHOD(SetSoftwareVertexProcessing)(THIS_ BOOL bSoftware) PURE; - STDMETHOD_(BOOL, GetSoftwareVertexProcessing)(THIS) PURE; - STDMETHOD(SetNPatchMode)(THIS_ float nSegments) PURE; - STDMETHOD_(float, GetNPatchMode)(THIS) PURE; - STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount) PURE; - STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount) PURE; - STDMETHOD(DrawPrimitiveUP)(THIS_ D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride) PURE; - STDMETHOD(DrawIndexedPrimitiveUP)(THIS_ D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertices,UINT PrimitiveCount,CONST void* pIndexData,D3DFORMAT IndexDataFormat,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride) PURE; - STDMETHOD(ProcessVertices)(THIS_ UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer9* pDestBuffer,IDirect3DVertexDeclaration9* pVertexDecl,DWORD Flags) PURE; - STDMETHOD(CreateVertexDeclaration)(THIS_ CONST D3DVERTEXELEMENT9* pVertexElements,IDirect3DVertexDeclaration9** ppDecl) PURE; - STDMETHOD(SetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9* pDecl) PURE; - STDMETHOD(GetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9** ppDecl) PURE; - STDMETHOD(SetFVF)(THIS_ DWORD FVF) PURE; - STDMETHOD(GetFVF)(THIS_ DWORD* pFVF) PURE; - STDMETHOD(CreateVertexShader)(THIS_ CONST DWORD* pFunction,IDirect3DVertexShader9** ppShader) PURE; - STDMETHOD(SetVertexShader)(THIS_ IDirect3DVertexShader9* pShader) PURE; - STDMETHOD(GetVertexShader)(THIS_ IDirect3DVertexShader9** ppShader) PURE; - STDMETHOD(SetVertexShaderConstantF)(THIS_ UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount) PURE; - STDMETHOD(GetVertexShaderConstantF)(THIS_ UINT StartRegister,float* pConstantData,UINT Vector4fCount) PURE; - STDMETHOD(SetVertexShaderConstantI)(THIS_ UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount) PURE; - STDMETHOD(GetVertexShaderConstantI)(THIS_ UINT StartRegister,int* pConstantData,UINT Vector4iCount) PURE; - STDMETHOD(SetVertexShaderConstantB)(THIS_ UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount) PURE; - STDMETHOD(GetVertexShaderConstantB)(THIS_ UINT StartRegister,BOOL* pConstantData,UINT BoolCount) PURE; - STDMETHOD(SetStreamSource)(THIS_ UINT StreamNumber,IDirect3DVertexBuffer9* pStreamData,UINT OffsetInBytes,UINT Stride) PURE; - STDMETHOD(GetStreamSource)(THIS_ UINT StreamNumber,IDirect3DVertexBuffer9** ppStreamData,UINT* OffsetInBytes,UINT* pStride) PURE; - STDMETHOD(SetStreamSourceFreq)(THIS_ UINT StreamNumber,UINT Divider) PURE; - STDMETHOD(GetStreamSourceFreq)(THIS_ UINT StreamNumber,UINT* Divider) PURE; - STDMETHOD(SetIndices)(THIS_ IDirect3DIndexBuffer9* pIndexData) PURE; - STDMETHOD(GetIndices)(THIS_ IDirect3DIndexBuffer9** ppIndexData) PURE; - STDMETHOD(CreatePixelShader)(THIS_ CONST DWORD* pFunction,IDirect3DPixelShader9** ppShader) PURE; - STDMETHOD(SetPixelShader)(THIS_ IDirect3DPixelShader9* pShader) PURE; - STDMETHOD(GetPixelShader)(THIS_ IDirect3DPixelShader9** ppShader) PURE; - STDMETHOD(SetPixelShaderConstantF)(THIS_ UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount) PURE; - STDMETHOD(GetPixelShaderConstantF)(THIS_ UINT StartRegister,float* pConstantData,UINT Vector4fCount) PURE; - STDMETHOD(SetPixelShaderConstantI)(THIS_ UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount) PURE; - STDMETHOD(GetPixelShaderConstantI)(THIS_ UINT StartRegister,int* pConstantData,UINT Vector4iCount) PURE; - STDMETHOD(SetPixelShaderConstantB)(THIS_ UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount) PURE; - STDMETHOD(GetPixelShaderConstantB)(THIS_ UINT StartRegister,BOOL* pConstantData,UINT BoolCount) PURE; - STDMETHOD(DrawRectPatch)(THIS_ UINT Handle,CONST float* pNumSegs,CONST D3DRECTPATCH_INFO* pRectPatchInfo) PURE; - STDMETHOD(DrawTriPatch)(THIS_ UINT Handle,CONST float* pNumSegs,CONST D3DTRIPATCH_INFO* pTriPatchInfo) PURE; - STDMETHOD(DeletePatch)(THIS_ UINT Handle) PURE; - STDMETHOD(CreateQuery)(THIS_ D3DQUERYTYPE Type,IDirect3DQuery9** ppQuery) PURE; -}; - -typedef struct IDirect3DDevice9 *LPDIRECT3DDEVICE9, *PDIRECT3DDEVICE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DDevice9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DDevice9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DDevice9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DDevice9_TestCooperativeLevel(p) (p)->lpVtbl->TestCooperativeLevel(p) -#define IDirect3DDevice9_GetAvailableTextureMem(p) (p)->lpVtbl->GetAvailableTextureMem(p) -#define IDirect3DDevice9_EvictManagedResources(p) (p)->lpVtbl->EvictManagedResources(p) -#define IDirect3DDevice9_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) -#define IDirect3DDevice9_GetDeviceCaps(p,a) (p)->lpVtbl->GetDeviceCaps(p,a) -#define IDirect3DDevice9_GetDisplayMode(p,a,b) (p)->lpVtbl->GetDisplayMode(p,a,b) -#define IDirect3DDevice9_GetCreationParameters(p,a) (p)->lpVtbl->GetCreationParameters(p,a) -#define IDirect3DDevice9_SetCursorProperties(p,a,b,c) (p)->lpVtbl->SetCursorProperties(p,a,b,c) -#define IDirect3DDevice9_SetCursorPosition(p,a,b,c) (p)->lpVtbl->SetCursorPosition(p,a,b,c) -#define IDirect3DDevice9_ShowCursor(p,a) (p)->lpVtbl->ShowCursor(p,a) -#define IDirect3DDevice9_CreateAdditionalSwapChain(p,a,b) (p)->lpVtbl->CreateAdditionalSwapChain(p,a,b) -#define IDirect3DDevice9_GetSwapChain(p,a,b) (p)->lpVtbl->GetSwapChain(p,a,b) -#define IDirect3DDevice9_GetNumberOfSwapChains(p) (p)->lpVtbl->GetNumberOfSwapChains(p) -#define IDirect3DDevice9_Reset(p,a) (p)->lpVtbl->Reset(p,a) -#define IDirect3DDevice9_Present(p,a,b,c,d) (p)->lpVtbl->Present(p,a,b,c,d) -#define IDirect3DDevice9_GetBackBuffer(p,a,b,c,d) (p)->lpVtbl->GetBackBuffer(p,a,b,c,d) -#define IDirect3DDevice9_GetRasterStatus(p,a,b) (p)->lpVtbl->GetRasterStatus(p,a,b) -#define IDirect3DDevice9_SetDialogBoxMode(p,a) (p)->lpVtbl->SetDialogBoxMode(p,a) -#define IDirect3DDevice9_SetGammaRamp(p,a,b,c) (p)->lpVtbl->SetGammaRamp(p,a,b,c) -#define IDirect3DDevice9_GetGammaRamp(p,a,b) (p)->lpVtbl->GetGammaRamp(p,a,b) -#define IDirect3DDevice9_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateTexture(p,a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) -#define IDirect3DDevice9_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateCubeTexture(p,a,b,c,d,e,f,g) -#define IDirect3DDevice9_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e,f) -#define IDirect3DDevice9_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateIndexBuffer(p,a,b,c,d,e,f) -#define IDirect3DDevice9_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateRenderTarget(p,a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_UpdateSurface(p,a,b,c,d) (p)->lpVtbl->UpdateSurface(p,a,b,c,d) -#define IDirect3DDevice9_UpdateTexture(p,a,b) (p)->lpVtbl->UpdateTexture(p,a,b) -#define IDirect3DDevice9_GetRenderTargetData(p,a,b) (p)->lpVtbl->GetRenderTargetData(p,a,b) -#define IDirect3DDevice9_GetFrontBufferData(p,a,b) (p)->lpVtbl->GetFrontBufferData(p,a,b) -#define IDirect3DDevice9_StretchRect(p,a,b,c,d,e) (p)->lpVtbl->StretchRect(p,a,b,c,d,e) -#define IDirect3DDevice9_ColorFill(p,a,b,c) (p)->lpVtbl->ColorFill(p,a,b,c) -#define IDirect3DDevice9_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->lpVtbl->CreateOffscreenPlainSurface(p,a,b,c,d,e,f) -#define IDirect3DDevice9_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) -#define IDirect3DDevice9_GetRenderTarget(p,a,b) (p)->lpVtbl->GetRenderTarget(p,a,b) -#define IDirect3DDevice9_SetDepthStencilSurface(p,a) (p)->lpVtbl->SetDepthStencilSurface(p,a) -#define IDirect3DDevice9_GetDepthStencilSurface(p,a) (p)->lpVtbl->GetDepthStencilSurface(p,a) -#define IDirect3DDevice9_BeginScene(p) (p)->lpVtbl->BeginScene(p) -#define IDirect3DDevice9_EndScene(p) (p)->lpVtbl->EndScene(p) -#define IDirect3DDevice9_Clear(p,a,b,c,d,e,f) (p)->lpVtbl->Clear(p,a,b,c,d,e,f) -#define IDirect3DDevice9_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) -#define IDirect3DDevice9_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) -#define IDirect3DDevice9_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) -#define IDirect3DDevice9_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) -#define IDirect3DDevice9_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) -#define IDirect3DDevice9_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) -#define IDirect3DDevice9_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) -#define IDirect3DDevice9_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) -#define IDirect3DDevice9_GetLight(p,a,b) (p)->lpVtbl->GetLight(p,a,b) -#define IDirect3DDevice9_LightEnable(p,a,b) (p)->lpVtbl->LightEnable(p,a,b) -#define IDirect3DDevice9_GetLightEnable(p,a,b) (p)->lpVtbl->GetLightEnable(p,a,b) -#define IDirect3DDevice9_SetClipPlane(p,a,b) (p)->lpVtbl->SetClipPlane(p,a,b) -#define IDirect3DDevice9_GetClipPlane(p,a,b) (p)->lpVtbl->GetClipPlane(p,a,b) -#define IDirect3DDevice9_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) -#define IDirect3DDevice9_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) -#define IDirect3DDevice9_CreateStateBlock(p,a,b) (p)->lpVtbl->CreateStateBlock(p,a,b) -#define IDirect3DDevice9_BeginStateBlock(p) (p)->lpVtbl->BeginStateBlock(p) -#define IDirect3DDevice9_EndStateBlock(p,a) (p)->lpVtbl->EndStateBlock(p,a) -#define IDirect3DDevice9_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) -#define IDirect3DDevice9_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) -#define IDirect3DDevice9_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) -#define IDirect3DDevice9_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) -#define IDirect3DDevice9_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) -#define IDirect3DDevice9_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) -#define IDirect3DDevice9_GetSamplerState(p,a,b,c) (p)->lpVtbl->GetSamplerState(p,a,b,c) -#define IDirect3DDevice9_SetSamplerState(p,a,b,c) (p)->lpVtbl->SetSamplerState(p,a,b,c) -#define IDirect3DDevice9_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) -#define IDirect3DDevice9_SetPaletteEntries(p,a,b) (p)->lpVtbl->SetPaletteEntries(p,a,b) -#define IDirect3DDevice9_GetPaletteEntries(p,a,b) (p)->lpVtbl->GetPaletteEntries(p,a,b) -#define IDirect3DDevice9_SetCurrentTexturePalette(p,a) (p)->lpVtbl->SetCurrentTexturePalette(p,a) -#define IDirect3DDevice9_GetCurrentTexturePalette(p,a) (p)->lpVtbl->GetCurrentTexturePalette(p,a) -#define IDirect3DDevice9_SetScissorRect(p,a) (p)->lpVtbl->SetScissorRect(p,a) -#define IDirect3DDevice9_GetScissorRect(p,a) (p)->lpVtbl->GetScissorRect(p,a) -#define IDirect3DDevice9_SetSoftwareVertexProcessing(p,a) (p)->lpVtbl->SetSoftwareVertexProcessing(p,a) -#define IDirect3DDevice9_GetSoftwareVertexProcessing(p) (p)->lpVtbl->GetSoftwareVertexProcessing(p) -#define IDirect3DDevice9_SetNPatchMode(p,a) (p)->lpVtbl->SetNPatchMode(p,a) -#define IDirect3DDevice9_GetNPatchMode(p) (p)->lpVtbl->GetNPatchMode(p) -#define IDirect3DDevice9_DrawPrimitive(p,a,b,c) (p)->lpVtbl->DrawPrimitive(p,a,b,c) -#define IDirect3DDevice9_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f) -#define IDirect3DDevice9_DrawPrimitiveUP(p,a,b,c,d) (p)->lpVtbl->DrawPrimitiveUP(p,a,b,c,d) -#define IDirect3DDevice9_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_ProcessVertices(p,a,b,c,d,e,f) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e,f) -#define IDirect3DDevice9_CreateVertexDeclaration(p,a,b) (p)->lpVtbl->CreateVertexDeclaration(p,a,b) -#define IDirect3DDevice9_SetVertexDeclaration(p,a) (p)->lpVtbl->SetVertexDeclaration(p,a) -#define IDirect3DDevice9_GetVertexDeclaration(p,a) (p)->lpVtbl->GetVertexDeclaration(p,a) -#define IDirect3DDevice9_SetFVF(p,a) (p)->lpVtbl->SetFVF(p,a) -#define IDirect3DDevice9_GetFVF(p,a) (p)->lpVtbl->GetFVF(p,a) -#define IDirect3DDevice9_CreateVertexShader(p,a,b) (p)->lpVtbl->CreateVertexShader(p,a,b) -#define IDirect3DDevice9_SetVertexShader(p,a) (p)->lpVtbl->SetVertexShader(p,a) -#define IDirect3DDevice9_GetVertexShader(p,a) (p)->lpVtbl->GetVertexShader(p,a) -#define IDirect3DDevice9_SetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantF(p,a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantF(p,a,b,c) -#define IDirect3DDevice9_SetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantI(p,a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantI(p,a,b,c) -#define IDirect3DDevice9_SetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantB(p,a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantB(p,a,b,c) -#define IDirect3DDevice9_SetStreamSource(p,a,b,c,d) (p)->lpVtbl->SetStreamSource(p,a,b,c,d) -#define IDirect3DDevice9_GetStreamSource(p,a,b,c,d) (p)->lpVtbl->GetStreamSource(p,a,b,c,d) -#define IDirect3DDevice9_SetStreamSourceFreq(p,a,b) (p)->lpVtbl->SetStreamSourceFreq(p,a,b) -#define IDirect3DDevice9_GetStreamSourceFreq(p,a,b) (p)->lpVtbl->GetStreamSourceFreq(p,a,b) -#define IDirect3DDevice9_SetIndices(p,a) (p)->lpVtbl->SetIndices(p,a) -#define IDirect3DDevice9_GetIndices(p,a) (p)->lpVtbl->GetIndices(p,a) -#define IDirect3DDevice9_CreatePixelShader(p,a,b) (p)->lpVtbl->CreatePixelShader(p,a,b) -#define IDirect3DDevice9_SetPixelShader(p,a) (p)->lpVtbl->SetPixelShader(p,a) -#define IDirect3DDevice9_GetPixelShader(p,a) (p)->lpVtbl->GetPixelShader(p,a) -#define IDirect3DDevice9_SetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantF(p,a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantF(p,a,b,c) -#define IDirect3DDevice9_SetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantI(p,a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantI(p,a,b,c) -#define IDirect3DDevice9_SetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantB(p,a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantB(p,a,b,c) -#define IDirect3DDevice9_DrawRectPatch(p,a,b,c) (p)->lpVtbl->DrawRectPatch(p,a,b,c) -#define IDirect3DDevice9_DrawTriPatch(p,a,b,c) (p)->lpVtbl->DrawTriPatch(p,a,b,c) -#define IDirect3DDevice9_DeletePatch(p,a) (p)->lpVtbl->DeletePatch(p,a) -#define IDirect3DDevice9_CreateQuery(p,a,b) (p)->lpVtbl->CreateQuery(p,a,b) -#else -#define IDirect3DDevice9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DDevice9_AddRef(p) (p)->AddRef() -#define IDirect3DDevice9_Release(p) (p)->Release() -#define IDirect3DDevice9_TestCooperativeLevel(p) (p)->TestCooperativeLevel() -#define IDirect3DDevice9_GetAvailableTextureMem(p) (p)->GetAvailableTextureMem() -#define IDirect3DDevice9_EvictManagedResources(p) (p)->EvictManagedResources() -#define IDirect3DDevice9_GetDirect3D(p,a) (p)->GetDirect3D(a) -#define IDirect3DDevice9_GetDeviceCaps(p,a) (p)->GetDeviceCaps(a) -#define IDirect3DDevice9_GetDisplayMode(p,a,b) (p)->GetDisplayMode(a,b) -#define IDirect3DDevice9_GetCreationParameters(p,a) (p)->GetCreationParameters(a) -#define IDirect3DDevice9_SetCursorProperties(p,a,b,c) (p)->SetCursorProperties(a,b,c) -#define IDirect3DDevice9_SetCursorPosition(p,a,b,c) (p)->SetCursorPosition(a,b,c) -#define IDirect3DDevice9_ShowCursor(p,a) (p)->ShowCursor(a) -#define IDirect3DDevice9_CreateAdditionalSwapChain(p,a,b) (p)->CreateAdditionalSwapChain(a,b) -#define IDirect3DDevice9_GetSwapChain(p,a,b) (p)->GetSwapChain(a,b) -#define IDirect3DDevice9_GetNumberOfSwapChains(p) (p)->GetNumberOfSwapChains() -#define IDirect3DDevice9_Reset(p,a) (p)->Reset(a) -#define IDirect3DDevice9_Present(p,a,b,c,d) (p)->Present(a,b,c,d) -#define IDirect3DDevice9_GetBackBuffer(p,a,b,c,d) (p)->GetBackBuffer(a,b,c,d) -#define IDirect3DDevice9_GetRasterStatus(p,a,b) (p)->GetRasterStatus(a,b) -#define IDirect3DDevice9_SetDialogBoxMode(p,a) (p)->SetDialogBoxMode(a) -#define IDirect3DDevice9_SetGammaRamp(p,a,b,c) (p)->SetGammaRamp(a,b,c) -#define IDirect3DDevice9_GetGammaRamp(p,a,b) (p)->GetGammaRamp(a,b) -#define IDirect3DDevice9_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->CreateTexture(a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->CreateVolumeTexture(a,b,c,d,e,f,g,h,i) -#define IDirect3DDevice9_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->CreateCubeTexture(a,b,c,d,e,f,g) -#define IDirect3DDevice9_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->CreateVertexBuffer(a,b,c,d,e,f) -#define IDirect3DDevice9_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->CreateIndexBuffer(a,b,c,d,e,f) -#define IDirect3DDevice9_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->CreateRenderTarget(a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->CreateDepthStencilSurface(a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_UpdateSurface(p,a,b,c,d) (p)->UpdateSurface(a,b,c,d) -#define IDirect3DDevice9_UpdateTexture(p,a,b) (p)->UpdateTexture(a,b) -#define IDirect3DDevice9_GetRenderTargetData(p,a,b) (p)->GetRenderTargetData(a,b) -#define IDirect3DDevice9_GetFrontBufferData(p,a,b) (p)->GetFrontBufferData(a,b) -#define IDirect3DDevice9_StretchRect(p,a,b,c,d,e) (p)->StretchRect(a,b,c,d,e) -#define IDirect3DDevice9_ColorFill(p,a,b,c) (p)->ColorFill(a,b,c) -#define IDirect3DDevice9_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->CreateOffscreenPlainSurface(a,b,c,d,e,f) -#define IDirect3DDevice9_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) -#define IDirect3DDevice9_GetRenderTarget(p,a,b) (p)->GetRenderTarget(a,b) -#define IDirect3DDevice9_SetDepthStencilSurface(p,a) (p)->SetDepthStencilSurface(a) -#define IDirect3DDevice9_GetDepthStencilSurface(p,a) (p)->GetDepthStencilSurface(a) -#define IDirect3DDevice9_BeginScene(p) (p)->BeginScene() -#define IDirect3DDevice9_EndScene(p) (p)->EndScene() -#define IDirect3DDevice9_Clear(p,a,b,c,d,e,f) (p)->Clear(a,b,c,d,e,f) -#define IDirect3DDevice9_SetTransform(p,a,b) (p)->SetTransform(a,b) -#define IDirect3DDevice9_GetTransform(p,a,b) (p)->GetTransform(a,b) -#define IDirect3DDevice9_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) -#define IDirect3DDevice9_SetViewport(p,a) (p)->SetViewport(a) -#define IDirect3DDevice9_GetViewport(p,a) (p)->GetViewport(a) -#define IDirect3DDevice9_SetMaterial(p,a) (p)->SetMaterial(a) -#define IDirect3DDevice9_GetMaterial(p,a) (p)->GetMaterial(a) -#define IDirect3DDevice9_SetLight(p,a,b) (p)->SetLight(a,b) -#define IDirect3DDevice9_GetLight(p,a,b) (p)->GetLight(a,b) -#define IDirect3DDevice9_LightEnable(p,a,b) (p)->LightEnable(a,b) -#define IDirect3DDevice9_GetLightEnable(p,a,b) (p)->GetLightEnable(a,b) -#define IDirect3DDevice9_SetClipPlane(p,a,b) (p)->SetClipPlane(a,b) -#define IDirect3DDevice9_GetClipPlane(p,a,b) (p)->GetClipPlane(a,b) -#define IDirect3DDevice9_SetRenderState(p,a,b) (p)->SetRenderState(a,b) -#define IDirect3DDevice9_GetRenderState(p,a,b) (p)->GetRenderState(a,b) -#define IDirect3DDevice9_CreateStateBlock(p,a,b) (p)->CreateStateBlock(a,b) -#define IDirect3DDevice9_BeginStateBlock(p) (p)->BeginStateBlock() -#define IDirect3DDevice9_EndStateBlock(p,a) (p)->EndStateBlock(a) -#define IDirect3DDevice9_SetClipStatus(p,a) (p)->SetClipStatus(a) -#define IDirect3DDevice9_GetClipStatus(p,a) (p)->GetClipStatus(a) -#define IDirect3DDevice9_GetTexture(p,a,b) (p)->GetTexture(a,b) -#define IDirect3DDevice9_SetTexture(p,a,b) (p)->SetTexture(a,b) -#define IDirect3DDevice9_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) -#define IDirect3DDevice9_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) -#define IDirect3DDevice9_GetSamplerState(p,a,b,c) (p)->GetSamplerState(a,b,c) -#define IDirect3DDevice9_SetSamplerState(p,a,b,c) (p)->SetSamplerState(a,b,c) -#define IDirect3DDevice9_ValidateDevice(p,a) (p)->ValidateDevice(a) -#define IDirect3DDevice9_SetPaletteEntries(p,a,b) (p)->SetPaletteEntries(a,b) -#define IDirect3DDevice9_GetPaletteEntries(p,a,b) (p)->GetPaletteEntries(a,b) -#define IDirect3DDevice9_SetCurrentTexturePalette(p,a) (p)->SetCurrentTexturePalette(a) -#define IDirect3DDevice9_GetCurrentTexturePalette(p,a) (p)->GetCurrentTexturePalette(a) -#define IDirect3DDevice9_SetScissorRect(p,a) (p)->SetScissorRect(a) -#define IDirect3DDevice9_GetScissorRect(p,a) (p)->GetScissorRect(a) -#define IDirect3DDevice9_SetSoftwareVertexProcessing(p,a) (p)->SetSoftwareVertexProcessing(a) -#define IDirect3DDevice9_GetSoftwareVertexProcessing(p) (p)->GetSoftwareVertexProcessing() -#define IDirect3DDevice9_SetNPatchMode(p,a) (p)->SetNPatchMode(a) -#define IDirect3DDevice9_GetNPatchMode(p) (p)->GetNPatchMode() -#define IDirect3DDevice9_DrawPrimitive(p,a,b,c) (p)->DrawPrimitive(a,b,c) -#define IDirect3DDevice9_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->DrawIndexedPrimitive(a,b,c,d,e,f) -#define IDirect3DDevice9_DrawPrimitiveUP(p,a,b,c,d) (p)->DrawPrimitiveUP(a,b,c,d) -#define IDirect3DDevice9_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->DrawIndexedPrimitiveUP(a,b,c,d,e,f,g,h) -#define IDirect3DDevice9_ProcessVertices(p,a,b,c,d,e,f) (p)->ProcessVertices(a,b,c,d,e,f) -#define IDirect3DDevice9_CreateVertexDeclaration(p,a,b) (p)->CreateVertexDeclaration(a,b) -#define IDirect3DDevice9_SetVertexDeclaration(p,a) (p)->SetVertexDeclaration(a) -#define IDirect3DDevice9_GetVertexDeclaration(p,a) (p)->GetVertexDeclaration(a) -#define IDirect3DDevice9_SetFVF(p,a) (p)->SetFVF(a) -#define IDirect3DDevice9_GetFVF(p,a) (p)->GetFVF(a) -#define IDirect3DDevice9_CreateVertexShader(p,a,b) (p)->CreateVertexShader(a,b) -#define IDirect3DDevice9_SetVertexShader(p,a) (p)->SetVertexShader(a) -#define IDirect3DDevice9_GetVertexShader(p,a) (p)->GetVertexShader(a) -#define IDirect3DDevice9_SetVertexShaderConstantF(p,a,b,c) (p)->SetVertexShaderConstantF(a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantF(p,a,b,c) (p)->GetVertexShaderConstantF(a,b,c) -#define IDirect3DDevice9_SetVertexShaderConstantI(p,a,b,c) (p)->SetVertexShaderConstantI(a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantI(p,a,b,c) (p)->GetVertexShaderConstantI(a,b,c) -#define IDirect3DDevice9_SetVertexShaderConstantB(p,a,b,c) (p)->SetVertexShaderConstantB(a,b,c) -#define IDirect3DDevice9_GetVertexShaderConstantB(p,a,b,c) (p)->GetVertexShaderConstantB(a,b,c) -#define IDirect3DDevice9_SetStreamSource(p,a,b,c,d) (p)->SetStreamSource(a,b,c,d) -#define IDirect3DDevice9_GetStreamSource(p,a,b,c,d) (p)->GetStreamSource(a,b,c,d) -#define IDirect3DDevice9_SetStreamSourceFreq(p,a,b) (p)->SetStreamSourceFreq(a,b) -#define IDirect3DDevice9_GetStreamSourceFreq(p,a,b) (p)->GetStreamSourceFreq(a,b) -#define IDirect3DDevice9_SetIndices(p,a) (p)->SetIndices(a) -#define IDirect3DDevice9_GetIndices(p,a) (p)->GetIndices(a) -#define IDirect3DDevice9_CreatePixelShader(p,a,b) (p)->CreatePixelShader(a,b) -#define IDirect3DDevice9_SetPixelShader(p,a) (p)->SetPixelShader(a) -#define IDirect3DDevice9_GetPixelShader(p,a) (p)->GetPixelShader(a) -#define IDirect3DDevice9_SetPixelShaderConstantF(p,a,b,c) (p)->SetPixelShaderConstantF(a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantF(p,a,b,c) (p)->GetPixelShaderConstantF(a,b,c) -#define IDirect3DDevice9_SetPixelShaderConstantI(p,a,b,c) (p)->SetPixelShaderConstantI(a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantI(p,a,b,c) (p)->GetPixelShaderConstantI(a,b,c) -#define IDirect3DDevice9_SetPixelShaderConstantB(p,a,b,c) (p)->SetPixelShaderConstantB(a,b,c) -#define IDirect3DDevice9_GetPixelShaderConstantB(p,a,b,c) (p)->GetPixelShaderConstantB(a,b,c) -#define IDirect3DDevice9_DrawRectPatch(p,a,b,c) (p)->DrawRectPatch(a,b,c) -#define IDirect3DDevice9_DrawTriPatch(p,a,b,c) (p)->DrawTriPatch(a,b,c) -#define IDirect3DDevice9_DeletePatch(p,a) (p)->DeletePatch(a) -#define IDirect3DDevice9_CreateQuery(p,a,b) (p)->CreateQuery(a,b) -#endif - - -#undef INTERFACE -#define INTERFACE IDirect3DStateBlock9 - -DECLARE_INTERFACE_(IDirect3DStateBlock9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DStateBlock9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(Capture)(THIS) PURE; - STDMETHOD(Apply)(THIS) PURE; -}; - -typedef struct IDirect3DStateBlock9 *LPDIRECT3DSTATEBLOCK9, *PDIRECT3DSTATEBLOCK9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DStateBlock9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DStateBlock9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DStateBlock9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DStateBlock9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DStateBlock9_Capture(p) (p)->lpVtbl->Capture(p) -#define IDirect3DStateBlock9_Apply(p) (p)->lpVtbl->Apply(p) -#else -#define IDirect3DStateBlock9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DStateBlock9_AddRef(p) (p)->AddRef() -#define IDirect3DStateBlock9_Release(p) (p)->Release() -#define IDirect3DStateBlock9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DStateBlock9_Capture(p) (p)->Capture() -#define IDirect3DStateBlock9_Apply(p) (p)->Apply() -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DSwapChain9 - -DECLARE_INTERFACE_(IDirect3DSwapChain9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DSwapChain9 methods ***/ - STDMETHOD(Present)(THIS_ CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion,DWORD dwFlags) PURE; - STDMETHOD(GetFrontBufferData)(THIS_ IDirect3DSurface9* pDestSurface) PURE; - STDMETHOD(GetBackBuffer)(THIS_ UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer) PURE; - STDMETHOD(GetRasterStatus)(THIS_ D3DRASTER_STATUS* pRasterStatus) PURE; - STDMETHOD(GetDisplayMode)(THIS_ D3DDISPLAYMODE* pMode) PURE; - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(GetPresentParameters)(THIS_ D3DPRESENT_PARAMETERS* pPresentationParameters) PURE; -}; - -typedef struct IDirect3DSwapChain9 *LPDIRECT3DSWAPCHAIN9, *PDIRECT3DSWAPCHAIN9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DSwapChain9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DSwapChain9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DSwapChain9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DSwapChain9_Present(p,a,b,c,d,e) (p)->lpVtbl->Present(p,a,b,c,d,e) -#define IDirect3DSwapChain9_GetFrontBufferData(p,a) (p)->lpVtbl->GetFrontBufferData(p,a) -#define IDirect3DSwapChain9_GetBackBuffer(p,a,b,c) (p)->lpVtbl->GetBackBuffer(p,a,b,c) -#define IDirect3DSwapChain9_GetRasterStatus(p,a) (p)->lpVtbl->GetRasterStatus(p,a) -#define IDirect3DSwapChain9_GetDisplayMode(p,a) (p)->lpVtbl->GetDisplayMode(p,a) -#define IDirect3DSwapChain9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DSwapChain9_GetPresentParameters(p,a) (p)->lpVtbl->GetPresentParameters(p,a) -#else -#define IDirect3DSwapChain9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DSwapChain9_AddRef(p) (p)->AddRef() -#define IDirect3DSwapChain9_Release(p) (p)->Release() -#define IDirect3DSwapChain9_Present(p,a,b,c,d,e) (p)->Present(a,b,c,d,e) -#define IDirect3DSwapChain9_GetFrontBufferData(p,a) (p)->GetFrontBufferData(a) -#define IDirect3DSwapChain9_GetBackBuffer(p,a,b,c) (p)->GetBackBuffer(a,b,c) -#define IDirect3DSwapChain9_GetRasterStatus(p,a) (p)->GetRasterStatus(a) -#define IDirect3DSwapChain9_GetDisplayMode(p,a) (p)->GetDisplayMode(a) -#define IDirect3DSwapChain9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DSwapChain9_GetPresentParameters(p,a) (p)->GetPresentParameters(a) -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DResource9 - -DECLARE_INTERFACE_(IDirect3DResource9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DResource9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; -}; - -typedef struct IDirect3DResource9 *LPDIRECT3DRESOURCE9, *PDIRECT3DRESOURCE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DResource9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DResource9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DResource9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DResource9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DResource9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DResource9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DResource9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DResource9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DResource9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DResource9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DResource9_GetType(p) (p)->lpVtbl->GetType(p) -#else -#define IDirect3DResource9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DResource9_AddRef(p) (p)->AddRef() -#define IDirect3DResource9_Release(p) (p)->Release() -#define IDirect3DResource9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DResource9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DResource9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DResource9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DResource9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DResource9_GetPriority(p) (p)->GetPriority() -#define IDirect3DResource9_PreLoad(p) (p)->PreLoad() -#define IDirect3DResource9_GetType(p) (p)->GetType() -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DVertexDeclaration9 - -DECLARE_INTERFACE_(IDirect3DVertexDeclaration9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DVertexDeclaration9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9*,UINT* pNumElements) PURE; -}; - -typedef struct IDirect3DVertexDeclaration9 *LPDIRECT3DVERTEXDECLARATION9, *PDIRECT3DVERTEXDECLARATION9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DVertexDeclaration9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DVertexDeclaration9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DVertexDeclaration9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DVertexDeclaration9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DVertexDeclaration9_GetDeclaration(p,a,b) (p)->lpVtbl->GetDeclaration(p,a,b) -#else -#define IDirect3DVertexDeclaration9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DVertexDeclaration9_AddRef(p) (p)->AddRef() -#define IDirect3DVertexDeclaration9_Release(p) (p)->Release() -#define IDirect3DVertexDeclaration9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DVertexDeclaration9_GetDeclaration(p,a,b) (p)->GetDeclaration(a,b) -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DVertexShader9 - -DECLARE_INTERFACE_(IDirect3DVertexShader9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DVertexShader9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(GetFunction)(THIS_ void*,UINT* pSizeOfData) PURE; -}; - -typedef struct IDirect3DVertexShader9 *LPDIRECT3DVERTEXSHADER9, *PDIRECT3DVERTEXSHADER9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DVertexShader9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DVertexShader9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DVertexShader9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DVertexShader9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DVertexShader9_GetFunction(p,a,b) (p)->lpVtbl->GetFunction(p,a,b) -#else -#define IDirect3DVertexShader9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DVertexShader9_AddRef(p) (p)->AddRef() -#define IDirect3DVertexShader9_Release(p) (p)->Release() -#define IDirect3DVertexShader9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DVertexShader9_GetFunction(p,a,b) (p)->GetFunction(a,b) -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DPixelShader9 - -DECLARE_INTERFACE_(IDirect3DPixelShader9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DPixelShader9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(GetFunction)(THIS_ void*,UINT* pSizeOfData) PURE; -}; - -typedef struct IDirect3DPixelShader9 *LPDIRECT3DPIXELSHADER9, *PDIRECT3DPIXELSHADER9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DPixelShader9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DPixelShader9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DPixelShader9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DPixelShader9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DPixelShader9_GetFunction(p,a,b) (p)->lpVtbl->GetFunction(p,a,b) -#else -#define IDirect3DPixelShader9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DPixelShader9_AddRef(p) (p)->AddRef() -#define IDirect3DPixelShader9_Release(p) (p)->Release() -#define IDirect3DPixelShader9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DPixelShader9_GetFunction(p,a,b) (p)->GetFunction(a,b) -#endif - - - - -#undef INTERFACE -#define INTERFACE IDirect3DBaseTexture9 - -DECLARE_INTERFACE_(IDirect3DBaseTexture9, IDirect3DResource9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DResource9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; - STDMETHOD_(DWORD, GetLOD)(THIS) PURE; - STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; - STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; - STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; - STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; -}; - -typedef struct IDirect3DBaseTexture9 *LPDIRECT3DBASETEXTURE9, *PDIRECT3DBASETEXTURE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DBaseTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DBaseTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DBaseTexture9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DBaseTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DBaseTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DBaseTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DBaseTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DBaseTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DBaseTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DBaseTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DBaseTexture9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DBaseTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) -#define IDirect3DBaseTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) -#define IDirect3DBaseTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) -#define IDirect3DBaseTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) -#define IDirect3DBaseTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) -#define IDirect3DBaseTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) -#else -#define IDirect3DBaseTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DBaseTexture9_AddRef(p) (p)->AddRef() -#define IDirect3DBaseTexture9_Release(p) (p)->Release() -#define IDirect3DBaseTexture9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DBaseTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DBaseTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DBaseTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DBaseTexture9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DBaseTexture9_GetPriority(p) (p)->GetPriority() -#define IDirect3DBaseTexture9_PreLoad(p) (p)->PreLoad() -#define IDirect3DBaseTexture9_GetType(p) (p)->GetType() -#define IDirect3DBaseTexture9_SetLOD(p,a) (p)->SetLOD(a) -#define IDirect3DBaseTexture9_GetLOD(p) (p)->GetLOD() -#define IDirect3DBaseTexture9_GetLevelCount(p) (p)->GetLevelCount() -#define IDirect3DBaseTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) -#define IDirect3DBaseTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() -#define IDirect3DBaseTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() -#endif - - - - - -#undef INTERFACE -#define INTERFACE IDirect3DTexture9 - -DECLARE_INTERFACE_(IDirect3DTexture9, IDirect3DBaseTexture9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DBaseTexture9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; - STDMETHOD_(DWORD, GetLOD)(THIS) PURE; - STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; - STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; - STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; - STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; - STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC *pDesc) PURE; - STDMETHOD(GetSurfaceLevel)(THIS_ UINT Level,IDirect3DSurface9** ppSurfaceLevel) PURE; - STDMETHOD(LockRect)(THIS_ UINT Level,D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags) PURE; - STDMETHOD(UnlockRect)(THIS_ UINT Level) PURE; - STDMETHOD(AddDirtyRect)(THIS_ CONST RECT* pDirtyRect) PURE; -}; - -typedef struct IDirect3DTexture9 *LPDIRECT3DTEXTURE9, *PDIRECT3DTEXTURE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DTexture9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DTexture9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) -#define IDirect3DTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) -#define IDirect3DTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) -#define IDirect3DTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) -#define IDirect3DTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) -#define IDirect3DTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) -#define IDirect3DTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) -#define IDirect3DTexture9_GetSurfaceLevel(p,a,b) (p)->lpVtbl->GetSurfaceLevel(p,a,b) -#define IDirect3DTexture9_LockRect(p,a,b,c,d) (p)->lpVtbl->LockRect(p,a,b,c,d) -#define IDirect3DTexture9_UnlockRect(p,a) (p)->lpVtbl->UnlockRect(p,a) -#define IDirect3DTexture9_AddDirtyRect(p,a) (p)->lpVtbl->AddDirtyRect(p,a) -#else -#define IDirect3DTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DTexture9_AddRef(p) (p)->AddRef() -#define IDirect3DTexture9_Release(p) (p)->Release() -#define IDirect3DTexture9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DTexture9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DTexture9_GetPriority(p) (p)->GetPriority() -#define IDirect3DTexture9_PreLoad(p) (p)->PreLoad() -#define IDirect3DTexture9_GetType(p) (p)->GetType() -#define IDirect3DTexture9_SetLOD(p,a) (p)->SetLOD(a) -#define IDirect3DTexture9_GetLOD(p) (p)->GetLOD() -#define IDirect3DTexture9_GetLevelCount(p) (p)->GetLevelCount() -#define IDirect3DTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) -#define IDirect3DTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() -#define IDirect3DTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() -#define IDirect3DTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) -#define IDirect3DTexture9_GetSurfaceLevel(p,a,b) (p)->GetSurfaceLevel(a,b) -#define IDirect3DTexture9_LockRect(p,a,b,c,d) (p)->LockRect(a,b,c,d) -#define IDirect3DTexture9_UnlockRect(p,a) (p)->UnlockRect(a) -#define IDirect3DTexture9_AddDirtyRect(p,a) (p)->AddDirtyRect(a) -#endif - - - - - -#undef INTERFACE -#define INTERFACE IDirect3DVolumeTexture9 - -DECLARE_INTERFACE_(IDirect3DVolumeTexture9, IDirect3DBaseTexture9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DBaseTexture9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; - STDMETHOD_(DWORD, GetLOD)(THIS) PURE; - STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; - STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; - STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; - STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; - STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DVOLUME_DESC *pDesc) PURE; - STDMETHOD(GetVolumeLevel)(THIS_ UINT Level,IDirect3DVolume9** ppVolumeLevel) PURE; - STDMETHOD(LockBox)(THIS_ UINT Level,D3DLOCKED_BOX* pLockedVolume,CONST D3DBOX* pBox,DWORD Flags) PURE; - STDMETHOD(UnlockBox)(THIS_ UINT Level) PURE; - STDMETHOD(AddDirtyBox)(THIS_ CONST D3DBOX* pDirtyBox) PURE; -}; - -typedef struct IDirect3DVolumeTexture9 *LPDIRECT3DVOLUMETEXTURE9, *PDIRECT3DVOLUMETEXTURE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DVolumeTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DVolumeTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DVolumeTexture9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DVolumeTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DVolumeTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DVolumeTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DVolumeTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DVolumeTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DVolumeTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DVolumeTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DVolumeTexture9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DVolumeTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) -#define IDirect3DVolumeTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) -#define IDirect3DVolumeTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) -#define IDirect3DVolumeTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) -#define IDirect3DVolumeTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) -#define IDirect3DVolumeTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) -#define IDirect3DVolumeTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) -#define IDirect3DVolumeTexture9_GetVolumeLevel(p,a,b) (p)->lpVtbl->GetVolumeLevel(p,a,b) -#define IDirect3DVolumeTexture9_LockBox(p,a,b,c,d) (p)->lpVtbl->LockBox(p,a,b,c,d) -#define IDirect3DVolumeTexture9_UnlockBox(p,a) (p)->lpVtbl->UnlockBox(p,a) -#define IDirect3DVolumeTexture9_AddDirtyBox(p,a) (p)->lpVtbl->AddDirtyBox(p,a) -#else -#define IDirect3DVolumeTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DVolumeTexture9_AddRef(p) (p)->AddRef() -#define IDirect3DVolumeTexture9_Release(p) (p)->Release() -#define IDirect3DVolumeTexture9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DVolumeTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DVolumeTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DVolumeTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DVolumeTexture9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DVolumeTexture9_GetPriority(p) (p)->GetPriority() -#define IDirect3DVolumeTexture9_PreLoad(p) (p)->PreLoad() -#define IDirect3DVolumeTexture9_GetType(p) (p)->GetType() -#define IDirect3DVolumeTexture9_SetLOD(p,a) (p)->SetLOD(a) -#define IDirect3DVolumeTexture9_GetLOD(p) (p)->GetLOD() -#define IDirect3DVolumeTexture9_GetLevelCount(p) (p)->GetLevelCount() -#define IDirect3DVolumeTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) -#define IDirect3DVolumeTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() -#define IDirect3DVolumeTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() -#define IDirect3DVolumeTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) -#define IDirect3DVolumeTexture9_GetVolumeLevel(p,a,b) (p)->GetVolumeLevel(a,b) -#define IDirect3DVolumeTexture9_LockBox(p,a,b,c,d) (p)->LockBox(a,b,c,d) -#define IDirect3DVolumeTexture9_UnlockBox(p,a) (p)->UnlockBox(a) -#define IDirect3DVolumeTexture9_AddDirtyBox(p,a) (p)->AddDirtyBox(a) -#endif - - - - - -#undef INTERFACE -#define INTERFACE IDirect3DCubeTexture9 - -DECLARE_INTERFACE_(IDirect3DCubeTexture9, IDirect3DBaseTexture9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DBaseTexture9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; - STDMETHOD_(DWORD, GetLOD)(THIS) PURE; - STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; - STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; - STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; - STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; - STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC *pDesc) PURE; - STDMETHOD(GetCubeMapSurface)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level,IDirect3DSurface9** ppCubeMapSurface) PURE; - STDMETHOD(LockRect)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level,D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags) PURE; - STDMETHOD(UnlockRect)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level) PURE; - STDMETHOD(AddDirtyRect)(THIS_ D3DCUBEMAP_FACES FaceType,CONST RECT* pDirtyRect) PURE; -}; - -typedef struct IDirect3DCubeTexture9 *LPDIRECT3DCUBETEXTURE9, *PDIRECT3DCUBETEXTURE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DCubeTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DCubeTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DCubeTexture9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DCubeTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DCubeTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DCubeTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DCubeTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DCubeTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DCubeTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DCubeTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DCubeTexture9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DCubeTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) -#define IDirect3DCubeTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) -#define IDirect3DCubeTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) -#define IDirect3DCubeTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) -#define IDirect3DCubeTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) -#define IDirect3DCubeTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) -#define IDirect3DCubeTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) -#define IDirect3DCubeTexture9_GetCubeMapSurface(p,a,b,c) (p)->lpVtbl->GetCubeMapSurface(p,a,b,c) -#define IDirect3DCubeTexture9_LockRect(p,a,b,c,d,e) (p)->lpVtbl->LockRect(p,a,b,c,d,e) -#define IDirect3DCubeTexture9_UnlockRect(p,a,b) (p)->lpVtbl->UnlockRect(p,a,b) -#define IDirect3DCubeTexture9_AddDirtyRect(p,a,b) (p)->lpVtbl->AddDirtyRect(p,a,b) -#else -#define IDirect3DCubeTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DCubeTexture9_AddRef(p) (p)->AddRef() -#define IDirect3DCubeTexture9_Release(p) (p)->Release() -#define IDirect3DCubeTexture9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DCubeTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DCubeTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DCubeTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DCubeTexture9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DCubeTexture9_GetPriority(p) (p)->GetPriority() -#define IDirect3DCubeTexture9_PreLoad(p) (p)->PreLoad() -#define IDirect3DCubeTexture9_GetType(p) (p)->GetType() -#define IDirect3DCubeTexture9_SetLOD(p,a) (p)->SetLOD(a) -#define IDirect3DCubeTexture9_GetLOD(p) (p)->GetLOD() -#define IDirect3DCubeTexture9_GetLevelCount(p) (p)->GetLevelCount() -#define IDirect3DCubeTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) -#define IDirect3DCubeTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() -#define IDirect3DCubeTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() -#define IDirect3DCubeTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) -#define IDirect3DCubeTexture9_GetCubeMapSurface(p,a,b,c) (p)->GetCubeMapSurface(a,b,c) -#define IDirect3DCubeTexture9_LockRect(p,a,b,c,d,e) (p)->LockRect(a,b,c,d,e) -#define IDirect3DCubeTexture9_UnlockRect(p,a,b) (p)->UnlockRect(a,b) -#define IDirect3DCubeTexture9_AddDirtyRect(p,a,b) (p)->AddDirtyRect(a,b) -#endif - - - - -#undef INTERFACE -#define INTERFACE IDirect3DVertexBuffer9 - -DECLARE_INTERFACE_(IDirect3DVertexBuffer9, IDirect3DResource9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DResource9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD(Lock)(THIS_ UINT OffsetToLock,UINT SizeToLock,void** ppbData,DWORD Flags) PURE; - STDMETHOD(Unlock)(THIS) PURE; - STDMETHOD(GetDesc)(THIS_ D3DVERTEXBUFFER_DESC *pDesc) PURE; -}; - -typedef struct IDirect3DVertexBuffer9 *LPDIRECT3DVERTEXBUFFER9, *PDIRECT3DVERTEXBUFFER9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DVertexBuffer9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DVertexBuffer9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DVertexBuffer9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DVertexBuffer9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DVertexBuffer9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DVertexBuffer9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DVertexBuffer9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DVertexBuffer9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DVertexBuffer9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DVertexBuffer9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DVertexBuffer9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DVertexBuffer9_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) -#define IDirect3DVertexBuffer9_Unlock(p) (p)->lpVtbl->Unlock(p) -#define IDirect3DVertexBuffer9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) -#else -#define IDirect3DVertexBuffer9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DVertexBuffer9_AddRef(p) (p)->AddRef() -#define IDirect3DVertexBuffer9_Release(p) (p)->Release() -#define IDirect3DVertexBuffer9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DVertexBuffer9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DVertexBuffer9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DVertexBuffer9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DVertexBuffer9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DVertexBuffer9_GetPriority(p) (p)->GetPriority() -#define IDirect3DVertexBuffer9_PreLoad(p) (p)->PreLoad() -#define IDirect3DVertexBuffer9_GetType(p) (p)->GetType() -#define IDirect3DVertexBuffer9_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) -#define IDirect3DVertexBuffer9_Unlock(p) (p)->Unlock() -#define IDirect3DVertexBuffer9_GetDesc(p,a) (p)->GetDesc(a) -#endif - - - - -#undef INTERFACE -#define INTERFACE IDirect3DIndexBuffer9 - -DECLARE_INTERFACE_(IDirect3DIndexBuffer9, IDirect3DResource9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DResource9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD(Lock)(THIS_ UINT OffsetToLock,UINT SizeToLock,void** ppbData,DWORD Flags) PURE; - STDMETHOD(Unlock)(THIS) PURE; - STDMETHOD(GetDesc)(THIS_ D3DINDEXBUFFER_DESC *pDesc) PURE; -}; - -typedef struct IDirect3DIndexBuffer9 *LPDIRECT3DINDEXBUFFER9, *PDIRECT3DINDEXBUFFER9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DIndexBuffer9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DIndexBuffer9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DIndexBuffer9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DIndexBuffer9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DIndexBuffer9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DIndexBuffer9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DIndexBuffer9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DIndexBuffer9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DIndexBuffer9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DIndexBuffer9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DIndexBuffer9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DIndexBuffer9_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) -#define IDirect3DIndexBuffer9_Unlock(p) (p)->lpVtbl->Unlock(p) -#define IDirect3DIndexBuffer9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) -#else -#define IDirect3DIndexBuffer9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DIndexBuffer9_AddRef(p) (p)->AddRef() -#define IDirect3DIndexBuffer9_Release(p) (p)->Release() -#define IDirect3DIndexBuffer9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DIndexBuffer9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DIndexBuffer9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DIndexBuffer9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DIndexBuffer9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DIndexBuffer9_GetPriority(p) (p)->GetPriority() -#define IDirect3DIndexBuffer9_PreLoad(p) (p)->PreLoad() -#define IDirect3DIndexBuffer9_GetType(p) (p)->GetType() -#define IDirect3DIndexBuffer9_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) -#define IDirect3DIndexBuffer9_Unlock(p) (p)->Unlock() -#define IDirect3DIndexBuffer9_GetDesc(p,a) (p)->GetDesc(a) -#endif - - - - -#undef INTERFACE -#define INTERFACE IDirect3DSurface9 - -DECLARE_INTERFACE_(IDirect3DSurface9, IDirect3DResource9) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DResource9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; - STDMETHOD_(DWORD, GetPriority)(THIS) PURE; - STDMETHOD_(void, PreLoad)(THIS) PURE; - STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; - STDMETHOD(GetContainer)(THIS_ REFIID riid,void** ppContainer) PURE; - STDMETHOD(GetDesc)(THIS_ D3DSURFACE_DESC *pDesc) PURE; - STDMETHOD(LockRect)(THIS_ D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags) PURE; - STDMETHOD(UnlockRect)(THIS) PURE; - STDMETHOD(GetDC)(THIS_ HDC *phdc) PURE; - STDMETHOD(ReleaseDC)(THIS_ HDC hdc) PURE; -}; - -typedef struct IDirect3DSurface9 *LPDIRECT3DSURFACE9, *PDIRECT3DSURFACE9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DSurface9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DSurface9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DSurface9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DSurface9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DSurface9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DSurface9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DSurface9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DSurface9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) -#define IDirect3DSurface9_GetPriority(p) (p)->lpVtbl->GetPriority(p) -#define IDirect3DSurface9_PreLoad(p) (p)->lpVtbl->PreLoad(p) -#define IDirect3DSurface9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DSurface9_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) -#define IDirect3DSurface9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) -#define IDirect3DSurface9_LockRect(p,a,b,c) (p)->lpVtbl->LockRect(p,a,b,c) -#define IDirect3DSurface9_UnlockRect(p) (p)->lpVtbl->UnlockRect(p) -#define IDirect3DSurface9_GetDC(p,a) (p)->lpVtbl->GetDC(p,a) -#define IDirect3DSurface9_ReleaseDC(p,a) (p)->lpVtbl->ReleaseDC(p,a) -#else -#define IDirect3DSurface9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DSurface9_AddRef(p) (p)->AddRef() -#define IDirect3DSurface9_Release(p) (p)->Release() -#define IDirect3DSurface9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DSurface9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DSurface9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DSurface9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DSurface9_SetPriority(p,a) (p)->SetPriority(a) -#define IDirect3DSurface9_GetPriority(p) (p)->GetPriority() -#define IDirect3DSurface9_PreLoad(p) (p)->PreLoad() -#define IDirect3DSurface9_GetType(p) (p)->GetType() -#define IDirect3DSurface9_GetContainer(p,a,b) (p)->GetContainer(a,b) -#define IDirect3DSurface9_GetDesc(p,a) (p)->GetDesc(a) -#define IDirect3DSurface9_LockRect(p,a,b,c) (p)->LockRect(a,b,c) -#define IDirect3DSurface9_UnlockRect(p) (p)->UnlockRect() -#define IDirect3DSurface9_GetDC(p,a) (p)->GetDC(a) -#define IDirect3DSurface9_ReleaseDC(p,a) (p)->ReleaseDC(a) -#endif - - - - -#undef INTERFACE -#define INTERFACE IDirect3DVolume9 - -DECLARE_INTERFACE_(IDirect3DVolume9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DVolume9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags) PURE; - STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void* pData,DWORD* pSizeOfData) PURE; - STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; - STDMETHOD(GetContainer)(THIS_ REFIID riid,void** ppContainer) PURE; - STDMETHOD(GetDesc)(THIS_ D3DVOLUME_DESC *pDesc) PURE; - STDMETHOD(LockBox)(THIS_ D3DLOCKED_BOX * pLockedVolume,CONST D3DBOX* pBox,DWORD Flags) PURE; - STDMETHOD(UnlockBox)(THIS) PURE; -}; - -typedef struct IDirect3DVolume9 *LPDIRECT3DVOLUME9, *PDIRECT3DVOLUME9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DVolume9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DVolume9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DVolume9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DVolume9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DVolume9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) -#define IDirect3DVolume9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) -#define IDirect3DVolume9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) -#define IDirect3DVolume9_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) -#define IDirect3DVolume9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) -#define IDirect3DVolume9_LockBox(p,a,b,c) (p)->lpVtbl->LockBox(p,a,b,c) -#define IDirect3DVolume9_UnlockBox(p) (p)->lpVtbl->UnlockBox(p) -#else -#define IDirect3DVolume9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DVolume9_AddRef(p) (p)->AddRef() -#define IDirect3DVolume9_Release(p) (p)->Release() -#define IDirect3DVolume9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DVolume9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) -#define IDirect3DVolume9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) -#define IDirect3DVolume9_FreePrivateData(p,a) (p)->FreePrivateData(a) -#define IDirect3DVolume9_GetContainer(p,a,b) (p)->GetContainer(a,b) -#define IDirect3DVolume9_GetDesc(p,a) (p)->GetDesc(a) -#define IDirect3DVolume9_LockBox(p,a,b,c) (p)->LockBox(a,b,c) -#define IDirect3DVolume9_UnlockBox(p) (p)->UnlockBox() -#endif - - - -#undef INTERFACE -#define INTERFACE IDirect3DQuery9 - -DECLARE_INTERFACE_(IDirect3DQuery9, IUnknown) -{ - /*** IUnknown methods ***/ - STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE; - STDMETHOD_(ULONG,AddRef)(THIS) PURE; - STDMETHOD_(ULONG,Release)(THIS) PURE; - - /*** IDirect3DQuery9 methods ***/ - STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE; - STDMETHOD_(D3DQUERYTYPE, GetType)(THIS) PURE; - STDMETHOD_(DWORD, GetDataSize)(THIS) PURE; - STDMETHOD(Issue)(THIS_ DWORD dwIssueFlags) PURE; - STDMETHOD(GetData)(THIS_ void* pData,DWORD dwSize,DWORD dwGetDataFlags) PURE; -}; - -typedef struct IDirect3DQuery9 *LPDIRECT3DQUERY9, *PDIRECT3DQUERY9; - -#if !defined(__cplusplus) || defined(CINTERFACE) -#define IDirect3DQuery9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) -#define IDirect3DQuery9_AddRef(p) (p)->lpVtbl->AddRef(p) -#define IDirect3DQuery9_Release(p) (p)->lpVtbl->Release(p) -#define IDirect3DQuery9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) -#define IDirect3DQuery9_GetType(p) (p)->lpVtbl->GetType(p) -#define IDirect3DQuery9_GetDataSize(p) (p)->lpVtbl->GetDataSize(p) -#define IDirect3DQuery9_Issue(p,a) (p)->lpVtbl->Issue(p,a) -#define IDirect3DQuery9_GetData(p,a,b,c) (p)->lpVtbl->GetData(p,a,b,c) -#else -#define IDirect3DQuery9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) -#define IDirect3DQuery9_AddRef(p) (p)->AddRef() -#define IDirect3DQuery9_Release(p) (p)->Release() -#define IDirect3DQuery9_GetDevice(p,a) (p)->GetDevice(a) -#define IDirect3DQuery9_GetType(p) (p)->GetType() -#define IDirect3DQuery9_GetDataSize(p) (p)->GetDataSize() -#define IDirect3DQuery9_Issue(p,a) (p)->Issue(a) -#define IDirect3DQuery9_GetData(p,a,b,c) (p)->GetData(a,b,c) -#endif - - -/**************************************************************************** - * Flags for SetPrivateData method on all D3D9 interfaces - * - * The passed pointer is an IUnknown ptr. The SizeOfData argument to SetPrivateData - * must be set to sizeof(IUnknown*). Direct3D will call AddRef through this - * pointer and Release when the private data is destroyed. The data will be - * destroyed when another SetPrivateData with the same GUID is set, when - * FreePrivateData is called, or when the D3D9 object is freed. - ****************************************************************************/ -#define D3DSPD_IUNKNOWN 0x00000001L - -/**************************************************************************** - * - * Flags for IDirect3D9::CreateDevice's BehaviorFlags - * - ****************************************************************************/ - -#define D3DCREATE_FPU_PRESERVE 0x00000002L -#define D3DCREATE_MULTITHREADED 0x00000004L - -#define D3DCREATE_PUREDEVICE 0x00000010L -#define D3DCREATE_SOFTWARE_VERTEXPROCESSING 0x00000020L -#define D3DCREATE_HARDWARE_VERTEXPROCESSING 0x00000040L -#define D3DCREATE_MIXED_VERTEXPROCESSING 0x00000080L - -#define D3DCREATE_DISABLE_DRIVER_MANAGEMENT 0x00000100L -#define D3DCREATE_ADAPTERGROUP_DEVICE 0x00000200L - - -/**************************************************************************** - * - * Parameter for IDirect3D9::CreateDevice's iAdapter - * - ****************************************************************************/ - -#define D3DADAPTER_DEFAULT 0 - -/**************************************************************************** - * - * Flags for IDirect3D9::EnumAdapters - * - ****************************************************************************/ - -#define D3DENUM_WHQL_LEVEL 0x00000002L - -/**************************************************************************** - * - * Maximum number of back-buffers supported in DX8 - * - ****************************************************************************/ - -#define D3DPRESENT_BACK_BUFFERS_MAX 3L - -/**************************************************************************** - * - * Flags for IDirect3DDevice9::SetGammaRamp - * - ****************************************************************************/ - -#define D3DSGR_NO_CALIBRATION 0x00000000L -#define D3DSGR_CALIBRATE 0x00000001L - -/**************************************************************************** - * - * Flags for IDirect3DDevice9::SetCursorPosition - * - ****************************************************************************/ - -#define D3DCURSOR_IMMEDIATE_UPDATE 0x00000001L - -/**************************************************************************** - * - * Flags for IDirect3DSwapChain9::Present - * - ****************************************************************************/ - -#define D3DPRESENT_DONOTWAIT 0x00000001L -#define D3DPRESENT_LINEAR_CONTENT 0x00000002L - -/**************************************************************************** - * - * Flags for DrawPrimitive/DrawIndexedPrimitive - * Also valid for Begin/BeginIndexed - * Also valid for VertexBuffer::CreateVertexBuffer - ****************************************************************************/ - - -/* - * DirectDraw error codes - */ -#define _FACD3D 0x876 -#define MAKE_D3DHRESULT( code ) MAKE_HRESULT( 1, _FACD3D, code ) -#define MAKE_D3DSTATUS( code ) MAKE_HRESULT( 0, _FACD3D, code ) - -/* - * Direct3D Errors - */ -#define D3D_OK S_OK - -#define D3DERR_WRONGTEXTUREFORMAT MAKE_D3DHRESULT(2072) -#define D3DERR_UNSUPPORTEDCOLOROPERATION MAKE_D3DHRESULT(2073) -#define D3DERR_UNSUPPORTEDCOLORARG MAKE_D3DHRESULT(2074) -#define D3DERR_UNSUPPORTEDALPHAOPERATION MAKE_D3DHRESULT(2075) -#define D3DERR_UNSUPPORTEDALPHAARG MAKE_D3DHRESULT(2076) -#define D3DERR_TOOMANYOPERATIONS MAKE_D3DHRESULT(2077) -#define D3DERR_CONFLICTINGTEXTUREFILTER MAKE_D3DHRESULT(2078) -#define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_D3DHRESULT(2079) -#define D3DERR_CONFLICTINGRENDERSTATE MAKE_D3DHRESULT(2081) -#define D3DERR_UNSUPPORTEDTEXTUREFILTER MAKE_D3DHRESULT(2082) -#define D3DERR_CONFLICTINGTEXTUREPALETTE MAKE_D3DHRESULT(2086) -#define D3DERR_DRIVERINTERNALERROR MAKE_D3DHRESULT(2087) - -#define D3DERR_NOTFOUND MAKE_D3DHRESULT(2150) -#define D3DERR_MOREDATA MAKE_D3DHRESULT(2151) -#define D3DERR_DEVICELOST MAKE_D3DHRESULT(2152) -#define D3DERR_DEVICENOTRESET MAKE_D3DHRESULT(2153) -#define D3DERR_NOTAVAILABLE MAKE_D3DHRESULT(2154) -#define D3DERR_OUTOFVIDEOMEMORY MAKE_D3DHRESULT(380) -#define D3DERR_INVALIDDEVICE MAKE_D3DHRESULT(2155) -#define D3DERR_INVALIDCALL MAKE_D3DHRESULT(2156) -#define D3DERR_DRIVERINVALIDCALL MAKE_D3DHRESULT(2157) -#define D3DERR_WASSTILLDRAWING MAKE_D3DHRESULT(540) -#define D3DOK_NOAUTOGEN MAKE_D3DSTATUS(2159) - - -#ifdef __cplusplus -}; -#endif - -#endif /* (DIRECT3D_VERSION >= 0x0900) */ -#endif /* _D3D_H_ */ - diff --git a/d3d9proxy/d3dx9.h b/d3d9proxy/d3dx9.h deleted file mode 100644 index cbaabcf..0000000 --- a/d3d9proxy/d3dx9.h +++ /dev/null @@ -1,71 +0,0 @@ -////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) Microsoft Corporation. All Rights Reserved. -// -// File: d3dx9.h -// Content: D3DX utility library -// -////////////////////////////////////////////////////////////////////////////// - -#ifdef __D3DX_INTERNAL__ -#error Incorrect D3DX header used -#endif - -#ifndef __D3DX9_H__ -#define __D3DX9_H__ - - -// Defines -#include - -#define D3DX_DEFAULT ((UINT) -1) -#define D3DX_DEFAULT_NONPOW2 ((UINT) -2) -#define D3DX_DEFAULT_FLOAT FLT_MAX - -#ifndef D3DXINLINE -#ifdef _MSC_VER - #if (_MSC_VER >= 1200) - #define D3DXINLINE __forceinline - #else - #define D3DXINLINE __inline - #endif -#else - #ifdef __cplusplus - #define D3DXINLINE inline - #else - #define D3DXINLINE - #endif -#endif -#endif - - -// Includes -#include "d3d9.h" -#include "d3dx9math.h" -#include "d3dx9core.h" -#include "d3dx9mesh.h" -#include "d3dx9tex.h" -#include "d3dx9shader.h" -#include "d3dx9effect.h" -#include "d3dx9shape.h" -#include "d3dx9anim.h" - - -// Errors -#define _FACDD 0x876 -#define MAKE_DDHRESULT( code ) MAKE_HRESULT( 1, _FACDD, code ) - -enum _D3DXERR { - D3DXERR_CANNOTMODIFYINDEXBUFFER = MAKE_DDHRESULT(2900), - D3DXERR_INVALIDMESH = MAKE_DDHRESULT(2901), - D3DXERR_CANNOTATTRSORT = MAKE_DDHRESULT(2902), - D3DXERR_SKINNINGNOTSUPPORTED = MAKE_DDHRESULT(2903), - D3DXERR_TOOMANYINFLUENCES = MAKE_DDHRESULT(2904), - D3DXERR_INVALIDDATA = MAKE_DDHRESULT(2905), - D3DXERR_LOADEDMESHASNODATA = MAKE_DDHRESULT(2906), - D3DXERR_DUPLICATENAMEDFRAGMENT = MAKE_DDHRESULT(2907), -}; - - -#endif //__D3DX9_H__ - diff --git a/d3d9proxy/d3dx9.lib b/d3d9proxy/d3dx9.lib deleted file mode 100644 index 11853bf..0000000 Binary files a/d3d9proxy/d3dx9.lib and /dev/null differ diff --git a/d3d9proxy/myIDirect3D9.cpp b/d3d9proxy/myIDirect3D9.cpp deleted file mode 100644 index 3157cc6..0000000 --- a/d3d9proxy/myIDirect3D9.cpp +++ /dev/null @@ -1,154 +0,0 @@ -// myIDirect3D9.cpp - -#include "StdAfx.h" -#include "stdio.h" - -#define trace if(log) fprintf - -extern FILE *log; - -myIDirect3D9::myIDirect3D9(IDirect3D9 *pOriginal) -{ - m_pIDirect3D9 = pOriginal; -} - -myIDirect3D9::~myIDirect3D9(void) -{ -} - -HRESULT __stdcall myIDirect3D9::QueryInterface(REFIID riid, void** ppvObj) -{ - *ppvObj = NULL; - - // call this to increase AddRef at original object - // and to check if such an interface is there - - HRESULT hRes = m_pIDirect3D9->QueryInterface(riid, ppvObj); - - if (hRes == NOERROR) // if OK, send our "fake" address - { - *ppvObj = this; - } - - return hRes; -} - -ULONG __stdcall myIDirect3D9::AddRef(void) -{ - return(m_pIDirect3D9->AddRef()); -} - -ULONG __stdcall myIDirect3D9::Release(void) -{ - extern myIDirect3D9* gl_pmyIDirect3D9; - - // call original routine - ULONG count = m_pIDirect3D9->Release(); - - // in case no further Ref is there, the Original Object has deleted itself - // so do we here - if (count == 0){ - gl_pmyIDirect3D9 = NULL; - delete(this); - } - - return(count); -} - -HRESULT __stdcall myIDirect3D9::RegisterSoftwareDevice(void* pInitializeFunction) -{ - trace(log, "IDirect3D9::RegisterSoftwareDevice\n"); - return(m_pIDirect3D9->RegisterSoftwareDevice(pInitializeFunction)); -} - -UINT __stdcall myIDirect3D9::GetAdapterCount(void) -{ - trace(log, "IDirect3D9::GetAdapterCount\n"); - return(m_pIDirect3D9->GetAdapterCount()); -} - -HRESULT __stdcall myIDirect3D9::GetAdapterIdentifier(UINT Adapter,DWORD Flags,D3DADAPTER_IDENTIFIER9* pIdentifier) -{ - trace(log, "IDirect3D9::GetAdapterIdentifier\n"); - return(m_pIDirect3D9->GetAdapterIdentifier(Adapter,Flags,pIdentifier)); -} - -UINT __stdcall myIDirect3D9::GetAdapterModeCount(UINT Adapter, D3DFORMAT Format) -{ - trace(log, "IDirect3D9::GetAdapterModeCount\n"); - return(m_pIDirect3D9->GetAdapterModeCount(Adapter, Format)); -} - -HRESULT __stdcall myIDirect3D9::EnumAdapterModes(UINT Adapter,D3DFORMAT Format,UINT Mode,D3DDISPLAYMODE* pMode) -{ - trace(log, "IDirect3D9::EnumAdapterModes\n"); - return(m_pIDirect3D9->EnumAdapterModes(Adapter,Format,Mode,pMode)); -} - -HRESULT __stdcall myIDirect3D9::GetAdapterDisplayMode( UINT Adapter,D3DDISPLAYMODE* pMode) -{ - trace(log, "IDirect3D9::GetAdapterDisplayMode\n"); - return(m_pIDirect3D9->GetAdapterDisplayMode(Adapter,pMode)); -} - -HRESULT __stdcall myIDirect3D9::CheckDeviceType(UINT iAdapter,D3DDEVTYPE DevType,D3DFORMAT DisplayFormat,D3DFORMAT BackBufferFormat,BOOL bWindowed) -{ - trace(log, "IDirect3D9::CheckDeviceType\n"); - return(m_pIDirect3D9->CheckDeviceType(iAdapter,DevType,DisplayFormat,BackBufferFormat,bWindowed)); -} - -HRESULT __stdcall myIDirect3D9::CheckDeviceFormat(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,DWORD Usage,D3DRESOURCETYPE RType,D3DFORMAT CheckFormat) -{ - trace(log, "IDirect3D9::CheckDeviceFormat\n"); - return(m_pIDirect3D9->CheckDeviceFormat(Adapter,DeviceType,AdapterFormat,Usage,RType,CheckFormat)); -} - -HRESULT __stdcall myIDirect3D9::CheckDeviceMultiSampleType(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SurfaceFormat,BOOL Windowed,D3DMULTISAMPLE_TYPE MultiSampleType,DWORD* pQualityLevels) -{ - trace(log, "IDirect3D9::CheckDeviceMultiSampleType\n"); - return(m_pIDirect3D9->CheckDeviceMultiSampleType(Adapter,DeviceType,SurfaceFormat,Windowed,MultiSampleType,pQualityLevels)); -} - -HRESULT __stdcall myIDirect3D9::CheckDepthStencilMatch(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,D3DFORMAT RenderTargetFormat,D3DFORMAT DepthStencilFormat) -{ - trace(log, "IDirect3D9::CheckDepthStencilMatch\n"); - return(m_pIDirect3D9->CheckDepthStencilMatch(Adapter,DeviceType,AdapterFormat,RenderTargetFormat,DepthStencilFormat)); -} - -HRESULT __stdcall myIDirect3D9::CheckDeviceFormatConversion(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SourceFormat,D3DFORMAT TargetFormat) -{ - trace(log, "IDirect3D9::CheckDeviceFormatConversion\n"); - return(m_pIDirect3D9->CheckDeviceFormatConversion(Adapter,DeviceType,SourceFormat,TargetFormat)); -} - -HRESULT __stdcall myIDirect3D9::GetDeviceCaps(UINT Adapter,D3DDEVTYPE DeviceType,D3DCAPS9* pCaps) -{ - trace(log, "IDirect3D9::GetDeviceCaps\n"); - return(m_pIDirect3D9->GetDeviceCaps(Adapter,DeviceType,pCaps)); -} - -HMONITOR __stdcall myIDirect3D9::GetAdapterMonitor(UINT Adapter) -{ - trace(log, "IDirect3D9::GetAdapterMonitor\n"); - return(m_pIDirect3D9->GetAdapterMonitor(Adapter)); -} - -HRESULT __stdcall myIDirect3D9::CreateDevice(UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DDevice9** ppReturnedDeviceInterface) -{ - trace(log, "IDirect3D9::CreateDevice\n"); - // global var - extern myIDirect3DDevice9* gl_pmyIDirect3DDevice9; - - // we intercept this call and provide our own "fake" Device Object - HRESULT hres = m_pIDirect3D9->CreateDevice( Adapter, DeviceType, hFocusWindow, BehaviorFlags, pPresentationParameters, ppReturnedDeviceInterface); - - // Create our own Device object and store it in global pointer - // note: the object will delete itself once Ref count is zero (similar to COM objects) - gl_pmyIDirect3DDevice9 = new myIDirect3DDevice9(*ppReturnedDeviceInterface); - - // store our pointer (the fake one) for returning it to the calling progam - *ppReturnedDeviceInterface = gl_pmyIDirect3DDevice9; - - return(hres); -} - diff --git a/d3d9proxy/myIDirect3D9.h b/d3d9proxy/myIDirect3D9.h deleted file mode 100644 index 11ef823..0000000 --- a/d3d9proxy/myIDirect3D9.h +++ /dev/null @@ -1,31 +0,0 @@ -#pragma once - -class myIDirect3D9 : public IDirect3D9 -{ -public: - myIDirect3D9(IDirect3D9 *pOriginal); - virtual ~myIDirect3D9(void); - - // The original DX9 function definitions - HRESULT __stdcall QueryInterface(REFIID riid, void** ppvObj); - ULONG __stdcall AddRef(void); - ULONG __stdcall Release(void); - HRESULT __stdcall RegisterSoftwareDevice(void* pInitializeFunction); - UINT __stdcall GetAdapterCount(void); - HRESULT __stdcall GetAdapterIdentifier(UINT Adapter,DWORD Flags,D3DADAPTER_IDENTIFIER9* pIdentifier) ; - UINT __stdcall GetAdapterModeCount(UINT Adapter, D3DFORMAT Format); - HRESULT __stdcall EnumAdapterModes(UINT Adapter,D3DFORMAT Format,UINT Mode,D3DDISPLAYMODE* pMode) ; - HRESULT __stdcall GetAdapterDisplayMode( UINT Adapter,D3DDISPLAYMODE* pMode) ; - HRESULT __stdcall CheckDeviceType(UINT iAdapter,D3DDEVTYPE DevType,D3DFORMAT DisplayFormat,D3DFORMAT BackBufferFormat,BOOL bWindowed) ; - HRESULT __stdcall CheckDeviceFormat(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,DWORD Usage,D3DRESOURCETYPE RType,D3DFORMAT CheckFormat) ; - HRESULT __stdcall CheckDeviceMultiSampleType(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SurfaceFormat,BOOL Windowed,D3DMULTISAMPLE_TYPE MultiSampleType,DWORD* pQualityLevels) ; - HRESULT __stdcall CheckDepthStencilMatch(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,D3DFORMAT RenderTargetFormat,D3DFORMAT DepthStencilFormat) ; - HRESULT __stdcall CheckDeviceFormatConversion(UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SourceFormat,D3DFORMAT TargetFormat); - HRESULT __stdcall GetDeviceCaps(UINT Adapter,D3DDEVTYPE DeviceType,D3DCAPS9* pCaps) ; - HMONITOR __stdcall GetAdapterMonitor(UINT Adapter) ; - HRESULT __stdcall CreateDevice(UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DDevice9** ppReturnedDeviceInterface) ; - // The original DX9 function definitions - -private: - IDirect3D9 *m_pIDirect3D9; -}; diff --git a/d3d9proxy/myIDirect3DDevice9.cpp b/d3d9proxy/myIDirect3DDevice9.cpp deleted file mode 100644 index 876b25a..0000000 --- a/d3d9proxy/myIDirect3DDevice9.cpp +++ /dev/null @@ -1,776 +0,0 @@ -#include "StdAfx.h" -#include "myIDirect3DDevice9.h" -#include "stdio.h" - -#define trace if(log) fprintf - -extern FILE *log; - -myIDirect3DDevice9::myIDirect3DDevice9(IDirect3DDevice9* pOriginal) -{ - m_pIDirect3DDevice9 = pOriginal; // store the pointer to original object -} - -myIDirect3DDevice9::~myIDirect3DDevice9(void) -{ -} - -HRESULT myIDirect3DDevice9::QueryInterface (REFIID riid, void** ppvObj) -{ - trace(log, "IDirect3DDevice9::QueryInterface\n"); - // check if original dll can provide interface. then send *our* address - *ppvObj = NULL; - - HRESULT hRes = m_pIDirect3DDevice9->QueryInterface(riid, ppvObj); - - if (hRes == NOERROR) - { - *ppvObj = this; - } - - return hRes; -} - -ULONG myIDirect3DDevice9::AddRef(void) -{ - trace(log, "IDirect3DDevice9::AddRef\n"); - return(m_pIDirect3DDevice9->AddRef()); -} - -ULONG myIDirect3DDevice9::Release(void) -{ - trace(log, "IDirect3DDevice9::Release\n"); - // ATTENTION: This is a booby-trap ! Watch out ! - // If we create our own sprites, surfaces, etc. (thus increasing the ref counter - // by external action), we need to delete that objects before calling the original - // Release function - - // global var - extern myIDirect3DDevice9* gl_pmyIDirect3DDevice9; - - // release/delete own objects - // ..... - - // Calling original function now - ULONG count = m_pIDirect3DDevice9->Release(); - - // now, the Original Object has deleted itself, so do we here - if(count == 0){ - gl_pmyIDirect3DDevice9 = NULL; - delete(this); // destructor will be called automatically - } - - return (count); -} - -HRESULT myIDirect3DDevice9::TestCooperativeLevel(void) -{ - trace(log, "IDirect3DDevice9::TestCooperativeLevel\n"); - return(m_pIDirect3DDevice9->TestCooperativeLevel()); -} - -UINT myIDirect3DDevice9::GetAvailableTextureMem(void) -{ - trace(log, "IDirect3DDevice9::GetAvailableTextureMem\n"); - return(m_pIDirect3DDevice9->GetAvailableTextureMem()); -} - -HRESULT myIDirect3DDevice9::EvictManagedResources(void) -{ - trace(log, "IDirect3DDevice9::EvictManagedResources\n"); - return(m_pIDirect3DDevice9->EvictManagedResources()); -} - -HRESULT myIDirect3DDevice9::GetDirect3D(IDirect3D9** ppD3D9) -{ - trace(log, "IDirect3DDevice9::GetDirect3D\n"); - return(m_pIDirect3DDevice9->GetDirect3D(ppD3D9)); -} - -HRESULT myIDirect3DDevice9::GetDeviceCaps(D3DCAPS9* pCaps) -{ - trace(log, "IDirect3DDevice9::GetDeviceCaps\n"); - return(m_pIDirect3DDevice9->GetDeviceCaps(pCaps)); -} - -HRESULT myIDirect3DDevice9::GetDisplayMode(UINT iSwapChain,D3DDISPLAYMODE* pMode) -{ - trace(log, "IDirect3DDevice9::GetDisplayMode\n"); - return(m_pIDirect3DDevice9->GetDisplayMode(iSwapChain, pMode)); -} - -HRESULT myIDirect3DDevice9::GetCreationParameters(D3DDEVICE_CREATION_PARAMETERS *pParameters) -{ - trace(log, "IDirect3DDevice9::GetCreationParameters\n"); - return(m_pIDirect3DDevice9->GetCreationParameters(pParameters)); -} - -HRESULT myIDirect3DDevice9::SetCursorProperties(UINT XHotSpot,UINT YHotSpot,IDirect3DSurface9* pCursorBitmap) -{ - trace(log, "IDirect3DDevice9::SetCursorProperties\n"); - return(m_pIDirect3DDevice9->SetCursorProperties(XHotSpot,YHotSpot,pCursorBitmap)); -} - -void myIDirect3DDevice9::SetCursorPosition(int X,int Y,DWORD Flags) -{ - trace(log, "IDirect3DDevice9::SetCursorPosition\n"); - return(m_pIDirect3DDevice9->SetCursorPosition(X,Y,Flags)); -} - -BOOL myIDirect3DDevice9::ShowCursor(BOOL bShow) -{ - trace(log, "IDirect3DDevice9::ShowCursor\n"); - return(m_pIDirect3DDevice9->ShowCursor(bShow)); -} - -HRESULT myIDirect3DDevice9::CreateAdditionalSwapChain(D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DSwapChain9** pSwapChain) -{ - trace(log, "IDirect3DDevice9::CreateAdditionalSwapChain\n"); - return(m_pIDirect3DDevice9->CreateAdditionalSwapChain(pPresentationParameters,pSwapChain)); -} - -HRESULT myIDirect3DDevice9::GetSwapChain(UINT iSwapChain,IDirect3DSwapChain9** pSwapChain) -{ - trace(log, "IDirect3DDevice9::GetSwapChain\n"); - return(m_pIDirect3DDevice9->GetSwapChain(iSwapChain,pSwapChain)); -} - -UINT myIDirect3DDevice9::GetNumberOfSwapChains(void) -{ - trace(log, "IDirect3DDevice9::GetNumberOfSwapChains\n"); - return(m_pIDirect3DDevice9->GetNumberOfSwapChains()); -} - -HRESULT myIDirect3DDevice9::Reset(D3DPRESENT_PARAMETERS* pPresentationParameters) -{ - trace(log, "IDirect3DDevice9::Reset\n"); - return(m_pIDirect3DDevice9->Reset(pPresentationParameters)); -} - -HRESULT myIDirect3DDevice9::Present(CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion) -{ - trace(log, "IDirect3DDevice9::Present\n"); - // we may want to draw own things here before flipping surfaces - // ... draw own stuff ... - // this->ShowWeAreHere(); - - // call original routine - HRESULT hres = m_pIDirect3DDevice9->Present( pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion); - - return (hres); -} - -HRESULT myIDirect3DDevice9::GetBackBuffer(UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer) -{ - trace(log, "IDirect3DDevice9::GetBackBuffer\n"); - return(m_pIDirect3DDevice9->GetBackBuffer(iSwapChain,iBackBuffer,Type,ppBackBuffer)); -} - -HRESULT myIDirect3DDevice9::GetRasterStatus(UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus) -{ - trace(log, "IDirect3DDevice9::GetRasterStatus\n"); - return(m_pIDirect3DDevice9->GetRasterStatus(iSwapChain,pRasterStatus)); -} - -HRESULT myIDirect3DDevice9::SetDialogBoxMode(BOOL bEnableDialogs) -{ - trace(log, "IDirect3DDevice9::SetDialogBoxMode\n"); - return(m_pIDirect3DDevice9->SetDialogBoxMode(bEnableDialogs)); -} - -void myIDirect3DDevice9::SetGammaRamp(UINT iSwapChain,DWORD Flags,CONST D3DGAMMARAMP* pRamp) -{ - trace(log, "IDirect3DDevice9::SetGammaRamp\n"); - return(m_pIDirect3DDevice9->SetGammaRamp(iSwapChain,Flags,pRamp)); -} - -void myIDirect3DDevice9::GetGammaRamp(UINT iSwapChain,D3DGAMMARAMP* pRamp) -{ - trace(log, "IDirect3DDevice9::GetGammaRamp\n"); - return(m_pIDirect3DDevice9->GetGammaRamp(iSwapChain,pRamp)); -} - -HRESULT myIDirect3DDevice9::CreateTexture(UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture9** ppTexture,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateTexture\n"); - return(m_pIDirect3DDevice9->CreateTexture(Width,Height,Levels,Usage,Format,Pool,ppTexture,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateVolumeTexture(UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture9** ppVolumeTexture,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateVolumeTexture\n"); - return(m_pIDirect3DDevice9->CreateVolumeTexture(Width,Height,Depth,Levels,Usage,Format,Pool,ppVolumeTexture,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateCubeTexture(UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture9** ppCubeTexture,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateCubeTexture\n"); - return(m_pIDirect3DDevice9->CreateCubeTexture(EdgeLength,Levels,Usage,Format,Pool,ppCubeTexture,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateVertexBuffer(UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer9** ppVertexBuffer,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateVertexBuffer\n"); - return(m_pIDirect3DDevice9->CreateVertexBuffer(Length,Usage,FVF,Pool,ppVertexBuffer,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateIndexBuffer(UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer9** ppIndexBuffer,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateIndexBuffer\n"); - return(m_pIDirect3DDevice9->CreateIndexBuffer(Length,Usage,Format,Pool,ppIndexBuffer,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateRenderTarget(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateRenderTarget\n"); - return(m_pIDirect3DDevice9->CreateRenderTarget(Width,Height,Format,MultiSample,MultisampleQuality,Lockable,ppSurface,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::CreateDepthStencilSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateDepthStencilSurface\n"); - return(m_pIDirect3DDevice9->CreateDepthStencilSurface(Width,Height,Format,MultiSample,MultisampleQuality,Discard,ppSurface,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::UpdateSurface(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestinationSurface,CONST POINT* pDestPoint) -{ - trace(log, "IDirect3DDevice9::UpdateSurface\n"); - return(m_pIDirect3DDevice9->UpdateSurface(pSourceSurface,pSourceRect,pDestinationSurface,pDestPoint)); -} - -HRESULT myIDirect3DDevice9::UpdateTexture(IDirect3DBaseTexture9* pSourceTexture,IDirect3DBaseTexture9* pDestinationTexture) -{ - trace(log, "IDirect3DDevice9::UpdateTexture\n"); - return(m_pIDirect3DDevice9->UpdateTexture(pSourceTexture,pDestinationTexture)); -} - -HRESULT myIDirect3DDevice9::GetRenderTargetData(IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface) -{ - trace(log, "IDirect3DDevice9::GetRenderTargetData\n"); - return(m_pIDirect3DDevice9->GetRenderTargetData(pRenderTarget,pDestSurface)); -} - -HRESULT myIDirect3DDevice9::GetFrontBufferData(UINT iSwapChain,IDirect3DSurface9* pDestSurface) -{ - trace(log, "IDirect3DDevice9::GetFrontBufferData\n"); - return(m_pIDirect3DDevice9->GetFrontBufferData(iSwapChain,pDestSurface)); -} - -HRESULT myIDirect3DDevice9::StretchRect(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter) -{ - trace(log, "IDirect3DDevice9::StretchRect\n"); - return(m_pIDirect3DDevice9->StretchRect(pSourceSurface,pSourceRect,pDestSurface,pDestRect,Filter)); -} - -HRESULT myIDirect3DDevice9::ColorFill(IDirect3DSurface9* pSurface,CONST RECT* pRect,D3DCOLOR color) -{ - trace(log, "IDirect3DDevice9::ColorFill\n"); - return(m_pIDirect3DDevice9->ColorFill(pSurface,pRect,color)); -} - -HRESULT myIDirect3DDevice9::CreateOffscreenPlainSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle) -{ - trace(log, "IDirect3DDevice9::CreateOffscreenPlainSurface\n"); - return(m_pIDirect3DDevice9->CreateOffscreenPlainSurface(Width,Height,Format,Pool,ppSurface,pSharedHandle)); -} - -HRESULT myIDirect3DDevice9::SetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9* pRenderTarget) -{ - trace(log, "IDirect3DDevice9::SetRenderTarget\n"); - return(m_pIDirect3DDevice9->SetRenderTarget(RenderTargetIndex,pRenderTarget)); -} - -HRESULT myIDirect3DDevice9::GetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget) -{ - trace(log, "IDirect3DDevice9::GetRenderTarget\n"); - return(m_pIDirect3DDevice9->GetRenderTarget(RenderTargetIndex,ppRenderTarget)); -} - -HRESULT myIDirect3DDevice9::SetDepthStencilSurface(IDirect3DSurface9* pNewZStencil) -{ - trace(log, "IDirect3DDevice9::SetDepthStencilSurface\n"); - return(m_pIDirect3DDevice9->SetDepthStencilSurface(pNewZStencil)); -} - -HRESULT myIDirect3DDevice9::GetDepthStencilSurface(IDirect3DSurface9** ppZStencilSurface) -{ - trace(log, "IDirect3DDevice9::GetDepthStencilSurface\n"); - return(m_pIDirect3DDevice9->GetDepthStencilSurface(ppZStencilSurface)); -} - -HRESULT myIDirect3DDevice9::BeginScene(void) -{ - trace(log, "IDirect3DDevice9::BeginScene\n"); - return(m_pIDirect3DDevice9->BeginScene()); -} - -HRESULT myIDirect3DDevice9::EndScene(void) -{ - trace(log, "IDirect3DDevice9::EndScene\n"); - return(m_pIDirect3DDevice9->EndScene()); -} - -HRESULT myIDirect3DDevice9::Clear(DWORD Count,CONST D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil) -{ - trace(log, "IDirect3DDevice9::Clear\n"); - return(m_pIDirect3DDevice9->Clear(Count,pRects,Flags,Color,Z,Stencil)); -} - -HRESULT myIDirect3DDevice9::SetTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix) -{ - trace(log, "IDirect3DDevice9::SetTransform\n"); - return(m_pIDirect3DDevice9->SetTransform(State,pMatrix)); -} - -HRESULT myIDirect3DDevice9::GetTransform(D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix) -{ - trace(log, "IDirect3DDevice9::GetTransform\n"); - return(m_pIDirect3DDevice9->GetTransform(State,pMatrix)); -} - -HRESULT myIDirect3DDevice9::MultiplyTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix) -{ - trace(log, "IDirect3DDevice9::MultiplyTransform\n"); - return(m_pIDirect3DDevice9->MultiplyTransform(State,pMatrix)); -} - -HRESULT myIDirect3DDevice9::SetViewport(CONST D3DVIEWPORT9* pViewport) -{ - trace(log, "IDirect3DDevice9::SetViewport\n"); - return(m_pIDirect3DDevice9->SetViewport(pViewport)); -} - -HRESULT myIDirect3DDevice9::GetViewport(D3DVIEWPORT9* pViewport) -{ - trace(log, "IDirect3DDevice9::GetViewport\n"); - return(m_pIDirect3DDevice9->GetViewport(pViewport)); -} - -HRESULT myIDirect3DDevice9::SetMaterial(CONST D3DMATERIAL9* pMaterial) -{ - trace(log, "IDirect3DDevice9::SetMaterial\n"); - return(m_pIDirect3DDevice9->SetMaterial(pMaterial)); -} - -HRESULT myIDirect3DDevice9::GetMaterial(D3DMATERIAL9* pMaterial) -{ - trace(log, "IDirect3DDevice9::GetMaterial\n"); - return(m_pIDirect3DDevice9->GetMaterial(pMaterial)); -} - -HRESULT myIDirect3DDevice9::SetLight(DWORD Index,CONST D3DLIGHT9* pLight) -{ - trace(log, "IDirect3DDevice9::SetLight\n"); - return(m_pIDirect3DDevice9->SetLight(Index,pLight)); -} - -HRESULT myIDirect3DDevice9::GetLight(DWORD Index,D3DLIGHT9* pLight) -{ - trace(log, "IDirect3DDevice9::GetLight\n"); - return(m_pIDirect3DDevice9->GetLight(Index,pLight)); -} - -HRESULT myIDirect3DDevice9::LightEnable(DWORD Index,BOOL Enable) -{ - trace(log, "IDirect3DDevice9::LightEnable\n"); - return(m_pIDirect3DDevice9->LightEnable(Index,Enable)); -} - -HRESULT myIDirect3DDevice9::GetLightEnable(DWORD Index,BOOL* pEnable) -{ - trace(log, "IDirect3DDevice9::GetLightEnable\n"); - return(m_pIDirect3DDevice9->GetLightEnable(Index, pEnable)); -} - -HRESULT myIDirect3DDevice9::SetClipPlane(DWORD Index,CONST float* pPlane) -{ - trace(log, "IDirect3DDevice9::SetClipPlane\n"); - return(m_pIDirect3DDevice9->SetClipPlane(Index, pPlane)); -} - -HRESULT myIDirect3DDevice9::GetClipPlane(DWORD Index,float* pPlane) -{ - trace(log, "IDirect3DDevice9::GetClipPlane\n"); - return(m_pIDirect3DDevice9->GetClipPlane(Index,pPlane)); -} - -HRESULT myIDirect3DDevice9::SetRenderState(D3DRENDERSTATETYPE State,DWORD Value) -{ - //trace(log, "IDirect3DDevice9::SetRenderState\n"); - return(m_pIDirect3DDevice9->SetRenderState(State, Value)); -} - -HRESULT myIDirect3DDevice9::GetRenderState(D3DRENDERSTATETYPE State,DWORD* pValue) -{ - trace(log, "IDirect3DDevice9::GetRenderState\n"); - return(m_pIDirect3DDevice9->GetRenderState(State, pValue)); -} - -HRESULT myIDirect3DDevice9::CreateStateBlock(D3DSTATEBLOCKTYPE Type,IDirect3DStateBlock9** ppSB) -{ - trace(log, "IDirect3DDevice9::CreateStateBlock\n"); - return(m_pIDirect3DDevice9->CreateStateBlock(Type,ppSB)); -} - -HRESULT myIDirect3DDevice9::BeginStateBlock(void) -{ - trace(log, "IDirect3DDevice9::BeginStateBlock\n"); - return(m_pIDirect3DDevice9->BeginStateBlock()); -} - -HRESULT myIDirect3DDevice9::EndStateBlock(IDirect3DStateBlock9** ppSB) -{ - trace(log, "IDirect3DDevice9::EndStateBlock\n"); - return(m_pIDirect3DDevice9->EndStateBlock(ppSB)); -} - -HRESULT myIDirect3DDevice9::SetClipStatus(CONST D3DCLIPSTATUS9* pClipStatus) -{ - trace(log, "IDirect3DDevice9::SetClipStatus\n"); - return(m_pIDirect3DDevice9->SetClipStatus(pClipStatus)); -} - -HRESULT myIDirect3DDevice9::GetClipStatus(D3DCLIPSTATUS9* pClipStatus) -{ - trace(log, "IDirect3DDevice9::GetClipStatus\n"); - return(m_pIDirect3DDevice9->GetClipStatus( pClipStatus)); -} - -HRESULT myIDirect3DDevice9::GetTexture(DWORD Stage,IDirect3DBaseTexture9** ppTexture) -{ - trace(log, "IDirect3DDevice9::GetTexture\n"); - return(m_pIDirect3DDevice9->GetTexture(Stage,ppTexture)); -} - -HRESULT myIDirect3DDevice9::SetTexture(DWORD Stage,IDirect3DBaseTexture9* pTexture) -{ - trace(log, "IDirect3DDevice9::SetTexture\n"); - return(m_pIDirect3DDevice9->SetTexture(Stage,pTexture)); -} - -HRESULT myIDirect3DDevice9::GetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue) -{ - trace(log, "IDirect3DDevice9::GetTextureStageState\n"); - return(m_pIDirect3DDevice9->GetTextureStageState(Stage,Type, pValue)); -} - -HRESULT myIDirect3DDevice9::SetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value) -{ - trace(log, "IDirect3DDevice9::SetTextureStageState\n"); - return(m_pIDirect3DDevice9->SetTextureStageState(Stage,Type,Value)); -} - -HRESULT myIDirect3DDevice9::GetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue) -{ - trace(log, "IDirect3DDevice9::GetSamplerState\n"); - return(m_pIDirect3DDevice9->GetSamplerState(Sampler,Type, pValue)); -} - -HRESULT myIDirect3DDevice9::SetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value) -{ - trace(log, "IDirect3DDevice9::SetSamplerState\n"); - return(m_pIDirect3DDevice9->SetSamplerState(Sampler,Type,Value)); -} - -HRESULT myIDirect3DDevice9::ValidateDevice(DWORD* pNumPasses) -{ - trace(log, "IDirect3DDevice9::ValidateDevice\n"); - return(m_pIDirect3DDevice9->ValidateDevice( pNumPasses)); -} - -HRESULT myIDirect3DDevice9::SetPaletteEntries(UINT PaletteNumber,CONST PALETTEENTRY* pEntries) -{ - trace(log, "IDirect3DDevice9::SetPaletteEntries\n"); - return(m_pIDirect3DDevice9->SetPaletteEntries(PaletteNumber, pEntries)); -} - -HRESULT myIDirect3DDevice9::GetPaletteEntries(UINT PaletteNumber,PALETTEENTRY* pEntries) -{ - trace(log, "IDirect3DDevice9::GetPaletteEntries\n"); - return(m_pIDirect3DDevice9->GetPaletteEntries(PaletteNumber, pEntries)); -} - -HRESULT myIDirect3DDevice9::SetCurrentTexturePalette(UINT PaletteNumber) -{ - trace(log, "IDirect3DDevice9::SetCurrentTexturePalette\n"); - return(m_pIDirect3DDevice9->SetCurrentTexturePalette(PaletteNumber)); -} - -HRESULT myIDirect3DDevice9::GetCurrentTexturePalette(UINT *PaletteNumber) -{ - trace(log, "IDirect3DDevice9::GetCurrentTexturePalette\n"); - return(m_pIDirect3DDevice9->GetCurrentTexturePalette(PaletteNumber)); -} - -HRESULT myIDirect3DDevice9::SetScissorRect(CONST RECT* pRect) -{ - trace(log, "IDirect3DDevice9::SetScissorRect\n"); - return(m_pIDirect3DDevice9->SetScissorRect( pRect)); -} - -HRESULT myIDirect3DDevice9::GetScissorRect( RECT* pRect) -{ - trace(log, "IDirect3DDevice9::GetScissorRect\n"); - return(m_pIDirect3DDevice9->GetScissorRect( pRect)); -} - -HRESULT myIDirect3DDevice9::SetSoftwareVertexProcessing(BOOL bSoftware) -{ - trace(log, "IDirect3DDevice9::SetSoftwareVertexProcessing\n"); - return(m_pIDirect3DDevice9->SetSoftwareVertexProcessing(bSoftware)); -} - -BOOL myIDirect3DDevice9::GetSoftwareVertexProcessing(void) -{ - trace(log, "IDirect3DDevice9::GetSoftwareVertexProcessing\n"); - return(m_pIDirect3DDevice9->GetSoftwareVertexProcessing()); -} - -HRESULT myIDirect3DDevice9::SetNPatchMode(float nSegments) -{ - trace(log, "IDirect3DDevice9::SetNPatchMode\n"); - return(m_pIDirect3DDevice9->SetNPatchMode(nSegments)); -} - -float myIDirect3DDevice9::GetNPatchMode(void) -{ - trace(log, "IDirect3DDevice9::GetNPatchMode\n"); - return(m_pIDirect3DDevice9->GetNPatchMode()); -} - -HRESULT myIDirect3DDevice9::DrawPrimitive(D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount) -{ - trace(log, "IDirect3DDevice9::DrawPrimitive\n"); - return(m_pIDirect3DDevice9->DrawPrimitive(PrimitiveType,StartVertex,PrimitiveCount)); -} - -HRESULT myIDirect3DDevice9::DrawIndexedPrimitive(D3DPRIMITIVETYPE PrimitiveType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount) -{ - trace(log, "IDirect3DDevice9::DrawIndexedPrimitive\n"); - return(m_pIDirect3DDevice9->DrawIndexedPrimitive(PrimitiveType,BaseVertexIndex,MinVertexIndex,NumVertices,startIndex,primCount)); -} - -HRESULT myIDirect3DDevice9::DrawPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride) -{ - trace(log, "IDirect3DDevice9::DrawPrimitiveUP\n"); - return(m_pIDirect3DDevice9->DrawPrimitiveUP(PrimitiveType,PrimitiveCount,pVertexStreamZeroData,VertexStreamZeroStride)); -} - -HRESULT myIDirect3DDevice9::DrawIndexedPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertices,UINT PrimitiveCount,CONST void* pIndexData,D3DFORMAT IndexDataFormat,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride) -{ - trace(log, "IDirect3DDevice9::DrawIndexedPrimitiveUP\n"); - return(m_pIDirect3DDevice9->DrawIndexedPrimitiveUP(PrimitiveType,MinVertexIndex,NumVertices,PrimitiveCount, pIndexData, IndexDataFormat, pVertexStreamZeroData,VertexStreamZeroStride)); -} - -HRESULT myIDirect3DDevice9::ProcessVertices(UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer9* pDestBuffer,IDirect3DVertexDeclaration9* pVertexDecl,DWORD Flags) -{ - trace(log, "IDirect3DDevice9::ProcessVertices\n"); - return(m_pIDirect3DDevice9->ProcessVertices( SrcStartIndex, DestIndex, VertexCount, pDestBuffer, pVertexDecl, Flags)); -} - -HRESULT myIDirect3DDevice9::CreateVertexDeclaration(CONST D3DVERTEXELEMENT9* pVertexElements,IDirect3DVertexDeclaration9** ppDecl) -{ - trace(log, "IDirect3DDevice9::CreateVertexDeclaration\n"); - return(m_pIDirect3DDevice9->CreateVertexDeclaration( pVertexElements,ppDecl)); -} - -HRESULT myIDirect3DDevice9::SetVertexDeclaration(IDirect3DVertexDeclaration9* pDecl) -{ - trace(log, "IDirect3DDevice9::SetVertexDeclaration\n"); - return(m_pIDirect3DDevice9->SetVertexDeclaration(pDecl)); -} - -HRESULT myIDirect3DDevice9::GetVertexDeclaration(IDirect3DVertexDeclaration9** ppDecl) -{ - trace(log, "IDirect3DDevice9::GetVertexDeclaration\n"); - return(m_pIDirect3DDevice9->GetVertexDeclaration(ppDecl)); -} - -HRESULT myIDirect3DDevice9::SetFVF(DWORD FVF) -{ - trace(log, "IDirect3DDevice9::SetFVF\n"); - return(m_pIDirect3DDevice9->SetFVF(FVF)); -} - -HRESULT myIDirect3DDevice9::GetFVF(DWORD* pFVF) -{ - trace(log, "IDirect3DDevice9::GetFVF\n"); - return(m_pIDirect3DDevice9->GetFVF(pFVF)); -} - -HRESULT myIDirect3DDevice9::CreateVertexShader(CONST DWORD* pFunction,IDirect3DVertexShader9** ppShader) -{ - trace(log, "IDirect3DDevice9::CreateVertexShader\n"); - return(m_pIDirect3DDevice9->CreateVertexShader(pFunction,ppShader)); -} - -HRESULT myIDirect3DDevice9::SetVertexShader(IDirect3DVertexShader9* pShader) -{ - trace(log, "IDirect3DDevice9::SetVertexShader\n"); - return(m_pIDirect3DDevice9->SetVertexShader(pShader)); -} - -HRESULT myIDirect3DDevice9::GetVertexShader(IDirect3DVertexShader9** ppShader) -{ - trace(log, "IDirect3DDevice9::GetVertexShader\n"); - return(m_pIDirect3DDevice9->GetVertexShader(ppShader)); -} - -HRESULT myIDirect3DDevice9::SetVertexShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount) -{ - trace(log, "IDirect3DDevice9::SetVertexShaderConstantF\n"); - return(m_pIDirect3DDevice9->SetVertexShaderConstantF(StartRegister,pConstantData, Vector4fCount)); -} - -HRESULT myIDirect3DDevice9::GetVertexShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount) -{ - trace(log, "IDirect3DDevice9::GetVertexShaderConstantF\n"); - return(m_pIDirect3DDevice9->GetVertexShaderConstantF(StartRegister,pConstantData,Vector4fCount)); -} - -HRESULT myIDirect3DDevice9::SetVertexShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount) -{ - trace(log, "IDirect3DDevice9::SetVertexShaderConstantI\n"); - return(m_pIDirect3DDevice9->SetVertexShaderConstantI(StartRegister,pConstantData,Vector4iCount)); -} - -HRESULT myIDirect3DDevice9::GetVertexShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount) -{ - trace(log, "IDirect3DDevice9::GetVertexShaderConstantI\n"); - return(m_pIDirect3DDevice9->GetVertexShaderConstantI(StartRegister,pConstantData,Vector4iCount)); -} - -HRESULT myIDirect3DDevice9::SetVertexShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount) -{ - trace(log, "IDirect3DDevice9::SetVertexShaderConstantB\n"); - return(m_pIDirect3DDevice9->SetVertexShaderConstantB(StartRegister,pConstantData,BoolCount)); -} - -HRESULT myIDirect3DDevice9::GetVertexShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount) -{ - trace(log, "IDirect3DDevice9::GetVertexShaderConstantB\n"); - return(m_pIDirect3DDevice9->GetVertexShaderConstantB(StartRegister,pConstantData,BoolCount)); -} - -HRESULT myIDirect3DDevice9::SetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9* pStreamData,UINT OffsetInBytes,UINT Stride) -{ - trace(log, "IDirect3DDevice9::SetStreamSource\n"); - return(m_pIDirect3DDevice9->SetStreamSource(StreamNumber,pStreamData,OffsetInBytes,Stride)); -} - -HRESULT myIDirect3DDevice9::GetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9** ppStreamData,UINT* OffsetInBytes,UINT* pStride) -{ - trace(log, "IDirect3DDevice9::GetStreamSource\n"); - return(m_pIDirect3DDevice9->GetStreamSource(StreamNumber,ppStreamData,OffsetInBytes,pStride)); -} - -HRESULT myIDirect3DDevice9::SetStreamSourceFreq(UINT StreamNumber,UINT Divider) -{ - trace(log, "IDirect3DDevice9::SetStreamSourceFreq\n"); - return(m_pIDirect3DDevice9->SetStreamSourceFreq(StreamNumber,Divider)); -} - -HRESULT myIDirect3DDevice9::GetStreamSourceFreq(UINT StreamNumber,UINT* Divider) -{ - trace(log, "IDirect3DDevice9::GetStreamSourceFreq\n"); - return(m_pIDirect3DDevice9->GetStreamSourceFreq(StreamNumber,Divider)); -} - -HRESULT myIDirect3DDevice9::SetIndices(IDirect3DIndexBuffer9* pIndexData) -{ - trace(log, "IDirect3DDevice9::SetIndices\n"); - return(m_pIDirect3DDevice9->SetIndices(pIndexData)); -} - -HRESULT myIDirect3DDevice9::GetIndices(IDirect3DIndexBuffer9** ppIndexData) -{ - trace(log, "IDirect3DDevice9::GetIndices\n"); - return(m_pIDirect3DDevice9->GetIndices(ppIndexData)); -} - -HRESULT myIDirect3DDevice9::CreatePixelShader(CONST DWORD* pFunction,IDirect3DPixelShader9** ppShader) -{ - trace(log, "IDirect3DDevice9::CreatePixelShader\n"); - return(m_pIDirect3DDevice9->CreatePixelShader(pFunction,ppShader)); -} - -HRESULT myIDirect3DDevice9::SetPixelShader(IDirect3DPixelShader9* pShader) -{ - trace(log, "IDirect3DDevice9::SetPixelShader\n"); - return(m_pIDirect3DDevice9->SetPixelShader(pShader)); -} - -HRESULT myIDirect3DDevice9::GetPixelShader(IDirect3DPixelShader9** ppShader) -{ - trace(log, "IDirect3DDevice9::GetPixelShader\n"); - return(m_pIDirect3DDevice9->GetPixelShader(ppShader)); -} - -HRESULT myIDirect3DDevice9::SetPixelShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount) -{ - trace(log, "IDirect3DDevice9::SetPixelShaderConstantF\n"); - return(m_pIDirect3DDevice9->SetPixelShaderConstantF(StartRegister,pConstantData,Vector4fCount)); -} - -HRESULT myIDirect3DDevice9::GetPixelShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount) -{ - trace(log, "IDirect3DDevice9::GetPixelShaderConstantF\n"); - return(m_pIDirect3DDevice9->GetPixelShaderConstantF(StartRegister,pConstantData,Vector4fCount)); -} - -HRESULT myIDirect3DDevice9::SetPixelShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount) -{ - trace(log, "IDirect3DDevice9::SetPixelShaderConstantI\n"); - return(m_pIDirect3DDevice9->SetPixelShaderConstantI(StartRegister,pConstantData,Vector4iCount)); -} - -HRESULT myIDirect3DDevice9::GetPixelShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount) -{ - trace(log, "IDirect3DDevice9::GetPixelShaderConstantI\n"); - return(m_pIDirect3DDevice9->GetPixelShaderConstantI(StartRegister,pConstantData,Vector4iCount)); -} - -HRESULT myIDirect3DDevice9::SetPixelShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount) -{ - trace(log, "IDirect3DDevice9::SetPixelShaderConstantB\n"); - return(m_pIDirect3DDevice9->SetPixelShaderConstantB(StartRegister,pConstantData,BoolCount)); -} - -HRESULT myIDirect3DDevice9::GetPixelShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount) -{ - trace(log, "IDirect3DDevice9::GetPixelShaderConstantB\n"); - return(m_pIDirect3DDevice9->GetPixelShaderConstantB(StartRegister,pConstantData,BoolCount)); -} - -HRESULT myIDirect3DDevice9::DrawRectPatch(UINT Handle,CONST float* pNumSegs,CONST D3DRECTPATCH_INFO* pRectPatchInfo) -{ - trace(log, "IDirect3DDevice9::DrawRectPatch\n"); - return(m_pIDirect3DDevice9->DrawRectPatch(Handle,pNumSegs, pRectPatchInfo)); -} - -HRESULT myIDirect3DDevice9::DrawTriPatch(UINT Handle,CONST float* pNumSegs,CONST D3DTRIPATCH_INFO* pTriPatchInfo) -{ - trace(log, "IDirect3DDevice9::DrawTriPatch\n"); - return(m_pIDirect3DDevice9->DrawTriPatch(Handle, pNumSegs, pTriPatchInfo)); -} - -HRESULT myIDirect3DDevice9::DeletePatch(UINT Handle) -{ - trace(log, "IDirect3DDevice9::DeletePatch\n"); - return(m_pIDirect3DDevice9->DeletePatch(Handle)); -} - -HRESULT myIDirect3DDevice9::CreateQuery(D3DQUERYTYPE Type,IDirect3DQuery9** ppQuery) -{ - trace(log, "IDirect3DDevice9::CreateQuery\n"); - return(m_pIDirect3DDevice9->CreateQuery(Type,ppQuery)); -} - -// This is our test function -void myIDirect3DDevice9::ShowWeAreHere(void) -{ - D3DRECT rec = {1,1,50,50}; - m_pIDirect3DDevice9->Clear(1, &rec, D3DCLEAR_TARGET, D3DCOLOR_ARGB(255,255,255,0),0 ,0); -} - - diff --git a/d3d9proxy/myIDirect3DDevice9.h b/d3d9proxy/myIDirect3DDevice9.h deleted file mode 100644 index 29e29ed..0000000 --- a/d3d9proxy/myIDirect3DDevice9.h +++ /dev/null @@ -1,136 +0,0 @@ -#pragma once - -class myIDirect3DDevice9 : public IDirect3DDevice9 -{ -public: - myIDirect3DDevice9(IDirect3DDevice9* pOriginal); - virtual ~myIDirect3DDevice9(void); - - // START: The original DX9 function definitions - HRESULT __stdcall QueryInterface (REFIID riid, void** ppvObj); - ULONG __stdcall AddRef(void); - ULONG __stdcall Release(void); - HRESULT __stdcall TestCooperativeLevel(void); - UINT __stdcall GetAvailableTextureMem(void); - HRESULT __stdcall EvictManagedResources(void); - HRESULT __stdcall GetDirect3D(IDirect3D9** ppD3D9); - HRESULT __stdcall GetDeviceCaps(D3DCAPS9* pCaps); - HRESULT __stdcall GetDisplayMode(UINT iSwapChain,D3DDISPLAYMODE* pMode); - HRESULT __stdcall GetCreationParameters(D3DDEVICE_CREATION_PARAMETERS *pParameters); - HRESULT __stdcall SetCursorProperties(UINT XHotSpot,UINT YHotSpot,IDirect3DSurface9* pCursorBitmap); - void __stdcall SetCursorPosition(int X,int Y,DWORD Flags); - BOOL __stdcall ShowCursor(BOOL bShow); - HRESULT __stdcall CreateAdditionalSwapChain(D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DSwapChain9** pSwapChain) ; - HRESULT __stdcall GetSwapChain(UINT iSwapChain,IDirect3DSwapChain9** pSwapChain); - UINT __stdcall GetNumberOfSwapChains(void); - HRESULT __stdcall Reset(D3DPRESENT_PARAMETERS* pPresentationParameters); - HRESULT __stdcall Present(CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion); - HRESULT __stdcall GetBackBuffer(UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer); - HRESULT __stdcall GetRasterStatus(UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus); - HRESULT __stdcall SetDialogBoxMode(BOOL bEnableDialogs); - void __stdcall SetGammaRamp(UINT iSwapChain,DWORD Flags,CONST D3DGAMMARAMP* pRamp); - void __stdcall GetGammaRamp(UINT iSwapChain,D3DGAMMARAMP* pRamp); - HRESULT __stdcall CreateTexture(UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture9** ppTexture,HANDLE* pSharedHandle); - HRESULT __stdcall CreateVolumeTexture(UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture9** ppVolumeTexture,HANDLE* pSharedHandle); - HRESULT __stdcall CreateCubeTexture(UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture9** ppCubeTexture,HANDLE* pSharedHandle); - HRESULT __stdcall CreateVertexBuffer(UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer9** ppVertexBuffer,HANDLE* pSharedHandle); - HRESULT __stdcall CreateIndexBuffer(UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer9** ppIndexBuffer,HANDLE* pSharedHandle); - HRESULT __stdcall CreateRenderTarget(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle); - HRESULT __stdcall CreateDepthStencilSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle); - HRESULT __stdcall UpdateSurface(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestinationSurface,CONST POINT* pDestPoint); - HRESULT __stdcall UpdateTexture(IDirect3DBaseTexture9* pSourceTexture,IDirect3DBaseTexture9* pDestinationTexture); - HRESULT __stdcall GetRenderTargetData(IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface); - HRESULT __stdcall GetFrontBufferData(UINT iSwapChain,IDirect3DSurface9* pDestSurface); - HRESULT __stdcall StretchRect(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter); - HRESULT __stdcall ColorFill(IDirect3DSurface9* pSurface,CONST RECT* pRect,D3DCOLOR color); - HRESULT __stdcall CreateOffscreenPlainSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle); - HRESULT __stdcall SetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9* pRenderTarget); - HRESULT __stdcall GetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget); - HRESULT __stdcall SetDepthStencilSurface(IDirect3DSurface9* pNewZStencil); - HRESULT __stdcall GetDepthStencilSurface(IDirect3DSurface9** ppZStencilSurface); - HRESULT __stdcall BeginScene(void); - HRESULT __stdcall EndScene(void); - HRESULT __stdcall Clear(DWORD Count,CONST D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil); - HRESULT __stdcall SetTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix); - HRESULT __stdcall GetTransform(D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix); - HRESULT __stdcall MultiplyTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix); - HRESULT __stdcall SetViewport(CONST D3DVIEWPORT9* pViewport); - HRESULT __stdcall GetViewport(D3DVIEWPORT9* pViewport); - HRESULT __stdcall SetMaterial(CONST D3DMATERIAL9* pMaterial); - HRESULT __stdcall GetMaterial(D3DMATERIAL9* pMaterial); - HRESULT __stdcall SetLight(DWORD Index,CONST D3DLIGHT9* pLight); - HRESULT __stdcall GetLight(DWORD Index,D3DLIGHT9* pLight); - HRESULT __stdcall LightEnable(DWORD Index,BOOL Enable); - HRESULT __stdcall GetLightEnable(DWORD Index,BOOL* pEnable); - HRESULT __stdcall SetClipPlane(DWORD Index,CONST float* pPlane); - HRESULT __stdcall GetClipPlane(DWORD Index,float* pPlane); - HRESULT __stdcall SetRenderState(D3DRENDERSTATETYPE State,DWORD Value); - HRESULT __stdcall GetRenderState(D3DRENDERSTATETYPE State,DWORD* pValue); - HRESULT __stdcall CreateStateBlock(D3DSTATEBLOCKTYPE Type,IDirect3DStateBlock9** ppSB); - HRESULT __stdcall BeginStateBlock(void); - HRESULT __stdcall EndStateBlock(IDirect3DStateBlock9** ppSB); - HRESULT __stdcall SetClipStatus(CONST D3DCLIPSTATUS9* pClipStatus); - HRESULT __stdcall GetClipStatus(D3DCLIPSTATUS9* pClipStatus); - HRESULT __stdcall GetTexture(DWORD Stage,IDirect3DBaseTexture9** ppTexture); - HRESULT __stdcall SetTexture(DWORD Stage,IDirect3DBaseTexture9* pTexture); - HRESULT __stdcall GetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue); - HRESULT __stdcall SetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value); - HRESULT __stdcall GetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue); - HRESULT __stdcall SetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value); - HRESULT __stdcall ValidateDevice(DWORD* pNumPasses); - HRESULT __stdcall SetPaletteEntries(UINT PaletteNumber,CONST PALETTEENTRY* pEntries); - HRESULT __stdcall GetPaletteEntries(UINT PaletteNumber,PALETTEENTRY* pEntries); - HRESULT __stdcall SetCurrentTexturePalette(UINT PaletteNumber); - HRESULT __stdcall GetCurrentTexturePalette(UINT *PaletteNumber); - HRESULT __stdcall SetScissorRect(CONST RECT* pRect); - HRESULT __stdcall GetScissorRect( RECT* pRect); - HRESULT __stdcall SetSoftwareVertexProcessing(BOOL bSoftware); - BOOL __stdcall GetSoftwareVertexProcessing(void); - HRESULT __stdcall SetNPatchMode(float nSegments); - float __stdcall GetNPatchMode(void); - HRESULT __stdcall DrawPrimitive(D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount); - HRESULT __stdcall DrawIndexedPrimitive(D3DPRIMITIVETYPE PrimitiveType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount); - HRESULT __stdcall DrawPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride); - HRESULT __stdcall DrawIndexedPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertices,UINT PrimitiveCount,CONST void* pIndexData,D3DFORMAT IndexDataFormat,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride); - HRESULT __stdcall ProcessVertices(UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer9* pDestBuffer,IDirect3DVertexDeclaration9* pVertexDecl,DWORD Flags); - HRESULT __stdcall CreateVertexDeclaration(CONST D3DVERTEXELEMENT9* pVertexElements,IDirect3DVertexDeclaration9** ppDecl); - HRESULT __stdcall SetVertexDeclaration(IDirect3DVertexDeclaration9* pDecl); - HRESULT __stdcall GetVertexDeclaration(IDirect3DVertexDeclaration9** ppDecl); - HRESULT __stdcall SetFVF(DWORD FVF); - HRESULT __stdcall GetFVF(DWORD* pFVF); - HRESULT __stdcall CreateVertexShader(CONST DWORD* pFunction,IDirect3DVertexShader9** ppShader); - HRESULT __stdcall SetVertexShader(IDirect3DVertexShader9* pShader); - HRESULT __stdcall GetVertexShader(IDirect3DVertexShader9** ppShader); - HRESULT __stdcall SetVertexShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount); - HRESULT __stdcall GetVertexShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount); - HRESULT __stdcall SetVertexShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount); - HRESULT __stdcall GetVertexShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount); - HRESULT __stdcall SetVertexShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount); - HRESULT __stdcall GetVertexShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount); - HRESULT __stdcall SetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9* pStreamData,UINT OffsetInBytes,UINT Stride); - HRESULT __stdcall GetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9** ppStreamData,UINT* OffsetInBytes,UINT* pStride); - HRESULT __stdcall SetStreamSourceFreq(UINT StreamNumber,UINT Divider); - HRESULT __stdcall GetStreamSourceFreq(UINT StreamNumber,UINT* Divider); - HRESULT __stdcall SetIndices(IDirect3DIndexBuffer9* pIndexData); - HRESULT __stdcall GetIndices(IDirect3DIndexBuffer9** ppIndexData); - HRESULT __stdcall CreatePixelShader(CONST DWORD* pFunction,IDirect3DPixelShader9** ppShader); - HRESULT __stdcall SetPixelShader(IDirect3DPixelShader9* pShader); - HRESULT __stdcall GetPixelShader(IDirect3DPixelShader9** ppShader); - HRESULT __stdcall SetPixelShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount); - HRESULT __stdcall GetPixelShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount); - HRESULT __stdcall SetPixelShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount); - HRESULT __stdcall GetPixelShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount); - HRESULT __stdcall SetPixelShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount); - HRESULT __stdcall GetPixelShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount); - HRESULT __stdcall DrawRectPatch(UINT Handle,CONST float* pNumSegs,CONST D3DRECTPATCH_INFO* pRectPatchInfo); - HRESULT __stdcall DrawTriPatch(UINT Handle,CONST float* pNumSegs,CONST D3DTRIPATCH_INFO* pTriPatchInfo); - HRESULT __stdcall DeletePatch(UINT Handle); - HRESULT __stdcall CreateQuery(D3DQUERYTYPE Type,IDirect3DQuery9** ppQuery); - // END: The original DX9 function definitions - -private: - IDirect3DDevice9 *m_pIDirect3DDevice9; - - // This is our test function - void ShowWeAreHere(void); -}; diff --git a/d3d9proxy/proxydll.cpp b/d3d9proxy/proxydll.cpp deleted file mode 100644 index 3767409..0000000 --- a/d3d9proxy/proxydll.cpp +++ /dev/null @@ -1,116 +0,0 @@ -// proxydll.cpp -#include "stdafx.h" -#include "proxydll.h" -#include "stdio.h" - -// global variables -#pragma data_seg (".d3d9_shared") -myIDirect3DDevice9* gl_pmyIDirect3DDevice9; -myIDirect3D9* gl_pmyIDirect3D9; -HINSTANCE gl_hOriginalDll; -HINSTANCE gl_hThisInstance; -FILE *log; -#pragma data_seg () - -#define trace if(log) fprintf - -BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) -{ - // to avoid compiler lvl4 warnings - LPVOID lpDummy = lpReserved; - lpDummy = NULL; - - switch (ul_reason_for_call) - { - case DLL_PROCESS_ATTACH: InitInstance(hModule); break; - case DLL_PROCESS_DETACH: ExitInstance(); break; - - case DLL_THREAD_ATTACH: break; - case DLL_THREAD_DETACH: break; - } - return TRUE; -} - -// Exported function (faking d3d9.dll's one-and-only export) -IDirect3D9* WINAPI Direct3DCreate9(UINT SDKVersion) -{ - trace(log, "Direct3DCreate9\n"); - - if (!gl_hOriginalDll) LoadOriginalDll(); // looking for the "right d3d9.dll" - - // Hooking IDirect3D Object from Original Library - typedef IDirect3D9 *(WINAPI* D3D9_Type)(UINT SDKVersion); - D3D9_Type D3DCreate9_fn = (D3D9_Type) GetProcAddress( gl_hOriginalDll, "Direct3DCreate9"); - - // Debug - if (!D3DCreate9_fn) - { - OutputDebugString("PROXYDLL: Pointer to original D3DCreate9 function not received ERROR ****\r\n"); - ::ExitProcess(0); // exit the hard way - } - - // Request pointer from Original Dll. - IDirect3D9 *pIDirect3D9_orig = D3DCreate9_fn(SDKVersion); - - // Create my IDirect3D8 object and store pointer to original object there. - // note: the object will delete itself once Ref count is zero (similar to COM objects) - gl_pmyIDirect3D9 = new myIDirect3D9(pIDirect3D9_orig); - - // Return pointer to hooking Object instead of "real one" - return (gl_pmyIDirect3D9); -} - -void InitInstance(HANDLE hModule) -{ - char *logpath; - OutputDebugString("PROXYDLL: InitInstance called.\r\n"); - - // Initialisation - gl_hOriginalDll = NULL; - gl_hThisInstance = NULL; - gl_pmyIDirect3D9 = NULL; - gl_pmyIDirect3DDevice9 = NULL; - - // Storing Instance handle into global var - gl_hThisInstance = (HINSTANCE) hModule; - - log=NULL; - logpath=getenv("d3d9log"); - if(logpath) log=fopen(logpath, "a+"); -} - -void LoadOriginalDll(void) -{ - char buffer[MAX_PATH]; - - // Getting path to system dir and to d3d8.dll - ::GetSystemDirectory(buffer,MAX_PATH); - - // Append dll name - strcat(buffer,"\\d3d9.dll"); - - // try to load the system's d3d9.dll, if pointer empty - if (!gl_hOriginalDll) gl_hOriginalDll = ::LoadLibrary(buffer); - - // Debug - if (!gl_hOriginalDll) - { - OutputDebugString("PROXYDLL: Original d3d9.dll not loaded ERROR ****\r\n"); - ::ExitProcess(0); // exit the hard way - } -} - -void ExitInstance() -{ - OutputDebugString("PROXYDLL: ExitInstance called.\r\n"); - - // Release the system's d3d9.dll - if (gl_hOriginalDll) - { - ::FreeLibrary(gl_hOriginalDll); - gl_hOriginalDll = NULL; - } - - fclose(log); -} - diff --git a/d3d9proxy/proxydll.def b/d3d9proxy/proxydll.def deleted file mode 100644 index d74db14..0000000 --- a/d3d9proxy/proxydll.def +++ /dev/null @@ -1,4 +0,0 @@ -LIBRARY "d3d9" - -EXPORTS - Direct3DCreate9 @1 diff --git a/d3d9proxy/proxydll.h b/d3d9proxy/proxydll.h deleted file mode 100644 index 5a4528b..0000000 --- a/d3d9proxy/proxydll.h +++ /dev/null @@ -1,10 +0,0 @@ -// proxydll.h -#pragma once - -// Exported function -IDirect3D9* WINAPI Direct3DCreate9 (UINT SDKVersion); - -// regular functions -void InitInstance(HANDLE hModule); -void ExitInstance(void); -void LoadOriginalDll(void); \ No newline at end of file diff --git a/d3d9proxy/proxydll.suo b/d3d9proxy/proxydll.suo deleted file mode 100644 index 4b70fff..0000000 Binary files a/d3d9proxy/proxydll.suo and /dev/null differ diff --git a/d3d9proxy/proxydll.suo.old b/d3d9proxy/proxydll.suo.old deleted file mode 100644 index d50ac0e..0000000 Binary files a/d3d9proxy/proxydll.suo.old and /dev/null differ diff --git a/d3d9proxy/proxydll.vs2008.sln b/d3d9proxy/proxydll.vs2008.sln deleted file mode 100644 index f472e14..0000000 --- a/d3d9proxy/proxydll.vs2008.sln +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "proxydll", "proxydll.vs2008.vcproj", "{02EB97D5-B1C5-411E-8274-83A95985DE6F}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {02EB97D5-B1C5-411E-8274-83A95985DE6F}.Debug|Win32.ActiveCfg = Debug|Win32 - {02EB97D5-B1C5-411E-8274-83A95985DE6F}.Debug|Win32.Build.0 = Debug|Win32 - {02EB97D5-B1C5-411E-8274-83A95985DE6F}.Release|Win32.ActiveCfg = Release|Win32 - {02EB97D5-B1C5-411E-8274-83A95985DE6F}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/d3d9proxy/proxydll.vs2008.suo b/d3d9proxy/proxydll.vs2008.suo deleted file mode 100644 index 99172ba..0000000 Binary files a/d3d9proxy/proxydll.vs2008.suo and /dev/null differ diff --git a/d3d9proxy/proxydll.vs2008.vcproj b/d3d9proxy/proxydll.vs2008.vcproj deleted file mode 100644 index 62ee685..0000000 --- a/d3d9proxy/proxydll.vs2008.vcproj +++ /dev/null @@ -1,253 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/d3d9proxy/stdafx.cpp b/d3d9proxy/stdafx.cpp deleted file mode 100644 index 2a015f2..0000000 --- a/d3d9proxy/stdafx.cpp +++ /dev/null @@ -1,2 +0,0 @@ -// stdafx.cpp -#include "stdafx.h" \ No newline at end of file diff --git a/d3d9proxy/stdafx.h b/d3d9proxy/stdafx.h deleted file mode 100644 index 7202acc..0000000 --- a/d3d9proxy/stdafx.h +++ /dev/null @@ -1,10 +0,0 @@ -// stdafx.h -#pragma once - - -#define WIN32_LEAN_AND_MEAN -#include - -#include "d3d9.h" -#include "myIDirect3D9.h" -#include "myIDirect3DDevice9.h" diff --git a/dll/ddraw.cpp b/dll/ddraw.cpp index 8e3172b..7b3ccf9 100644 --- a/dll/ddraw.cpp +++ b/dll/ddraw.cpp @@ -3264,8 +3264,21 @@ HRESULT WINAPI extFlip(LPDIRECTDRAWSURFACE lpdds, LPDIRECTDRAWSURFACE lpddssrc, //DumpSurfaceAttributes((LPDDSURFACEDESC)&ddsd, "[temp]" , __LINE__); res=(*pCreateSurfaceMethod(lpdds))(lpPrimaryDD, &ddsd, &lpddsTmp, NULL); if(res) OutTraceE("CreateSurface: ERROR %x(%s) at %d\n", res, ExplainDDError(res), __LINE__); + OutTrace("DEBUG: copied surface size=(%dx%d)\n", ddsd.dwWidth, ddsd.dwHeight); // copy front buffer - res= (*pBlt)(lpddsTmp, NULL, lpdds, NULL, DDBLT_WAIT, NULL); + + if(dxw.dwFlags1 & EMULATESURFACE){ + // in emulated mode, the primary surface is virtual and you can pick it all + // needed for "Gruntz" + res= (*pBlt)(lpddsTmp, NULL, lpdds, NULL, DDBLT_WAIT, NULL); + } + else { + // in no-emulated mode, the primary surface is the whole screen, so you have to pick... + // needed for "Black Thorn" + RECT clip; + clip=dxw.GetUnmappedScreenRect(); + res= (*pBlt)(lpddsTmp, NULL, lpdds, &clip, DDBLT_WAIT, NULL); + } if(res) OutTraceE("Blt: ERROR %x(%s) at %d", res, ExplainDDError(res), __LINE__); } diff --git a/dll/dxhook.cpp b/dll/dxhook.cpp index ff1788d..9365f81 100644 --- a/dll/dxhook.cpp +++ b/dll/dxhook.cpp @@ -72,7 +72,7 @@ static char *Flag4Names[32]={ "ZBUFFERCLEAN", "ZBUFFER0CLEAN", "ZBUFFERALWAYS", "DISABLEFOGGING", "NOPOWER2FIX", "NOPERFCOUNTER", "ADDPROXYLIBS", "INTERCEPTRDTSC", "LIMITSCREENRES", "NOFILLRECT", "HOOKGLIDE", "HIDEDESKTOP", - "STRETCHTIMERS", "NOFLIPEMULATION", "", "", + "STRETCHTIMERS", "NOFLIPEMULATION", "NOTEXTURES", "", "", "", "", "", "", "", "", "", "", "", "", "", diff --git a/dll/dxwnd.cpp b/dll/dxwnd.cpp index c47f643..cc93ef6 100644 --- a/dll/dxwnd.cpp +++ b/dll/dxwnd.cpp @@ -24,7 +24,7 @@ along with this program. If not, see . #include "dxwnd.h" #include "dxwcore.hpp" -#define VERSION "2.02.62" +#define VERSION "2.02.63" #define DDTHREADLOCK 1 @@ -154,7 +154,7 @@ LRESULT CALLBACK HookProc(int ncode, WPARAM wparam, LPARAM lparam) // take care here: if anything stops or delays the execution logic, the whole // operating system hangs, since it can't activate new windows! - // could use WM_NCCREATE insteas of WM_CREATE. Are there differences? + // could use WM_NCCREATE instead of WM_CREATE. Are there differences? hwnd = ((CWPSTRUCT *)lparam)->hwnd; if(((CWPSTRUCT *)lparam)->message == WM_CREATE){ GetModuleFileName(0, name, MAX_PATH); diff --git a/dll/dxwnd.vs2008.suo b/dll/dxwnd.vs2008.suo index 0fa4906..5d5fb8c 100644 Binary files a/dll/dxwnd.vs2008.suo and b/dll/dxwnd.vs2008.suo differ diff --git a/dll/hd3d.cpp b/dll/hd3d.cpp index ab09fc1..49097f9 100644 --- a/dll/hd3d.cpp +++ b/dll/hd3d.cpp @@ -33,13 +33,16 @@ typedef HRESULT (WINAPI *Present_Type)(void *, CONST RECT *, CONST RECT *, HWND, typedef HRESULT (WINAPI *SetRenderState_Type)(void *, D3DRENDERSTATETYPE, DWORD); typedef HRESULT (WINAPI *GetRenderState_Type)(void *, D3DRENDERSTATETYPE, DWORD ); typedef HRESULT (WINAPI *CreateAdditionalSwapChain_Type)(void *, D3DPRESENT_PARAMETERS *, IDirect3DSwapChain9 **); -typedef HRESULT (WINAPI *GetDirect3D_Type)(void *, IDirect3D9 **); +typedef HRESULT (WINAPI *GetDirect3D8_Type)(void *, void **); +typedef HRESULT (WINAPI *GetDirect3D9_Type)(void *, void **); typedef HRESULT (WINAPI *GetViewport_Type)(void *, D3DVIEWPORT9 *); typedef HRESULT (WINAPI *SetViewport_Type)(void *, D3DVIEWPORT9 *); typedef void (WINAPI *SetGammaRamp_Type)(void *, UINT, DWORD, D3DGAMMARAMP *); typedef void (WINAPI *GetGammaRamp_Type)(void *, UINT, D3DGAMMARAMP *); typedef void (WINAPI *SetCursorPosition9_Type)(void *, int, int, DWORD); typedef void (WINAPI *SetCursorPosition8_Type)(void *, int, int, DWORD); +typedef HRESULT (WINAPI *SetTexture8_Type)(void *, DWORD, void *); +typedef HRESULT (WINAPI *SetTexture9_Type)(void *, DWORD, void *); //typedef ULONG (WINAPI *CreateRenderTarget8_Type)(void *, UINT, UINT, D3DFORMAT, D3DMULTISAMPLE_TYPE, BOOL, IDirect3DSurface8**); typedef ULONG (WINAPI *CreateRenderTarget8_Type)(void *, UINT, UINT, D3DFORMAT, D3DMULTISAMPLE_TYPE, BOOL, void**); @@ -55,12 +58,14 @@ typedef HRESULT (WINAPI *D3D11CreateDeviceAndSwapChain_Type)(IDXGIAdapter *, D3D typedef void (WINAPI *RSSetViewports_Type)(void *, UINT, D3D11_VIEWPORT *); typedef ULONG (WINAPI *AddRef_Type)(void *); typedef ULONG (WINAPI *Release_Type)(void *); +typedef HRESULT (WINAPI *Reset_Type)(void *, D3DPRESENT_PARAMETERS*); HRESULT WINAPI extQueryInterfaceD3D8(void *, REFIID, void** ); HRESULT WINAPI extQueryInterfaceDev8(void *, REFIID, void** ); HRESULT WINAPI extQueryInterfaceD3D9(void *, REFIID, void** ); HRESULT WINAPI extQueryInterfaceDev9(void *, REFIID, void** ); -HRESULT WINAPI extGetDirect3D(void *, IDirect3D9 **); +HRESULT WINAPI extGetDirect3D8(void *, void **); +HRESULT WINAPI extGetDirect3D9(void *, void **); void* WINAPI extDirect3DCreate8(UINT); void* WINAPI extDirect3DCreate9(UINT); @@ -100,7 +105,8 @@ ULONG WINAPI extBeginScene8(void *); ULONG WINAPI extEndScene8(void *); ULONG WINAPI extBeginScene9(void *); ULONG WINAPI extEndScene9(void *); - +ULONG WINAPI extSetTexture8(void *, DWORD, void *); +ULONG WINAPI extSetTexture9(void *, DWORD, void *); HRESULT WINAPI extD3D10CreateDevice(IDXGIAdapter *, D3D10_DRIVER_TYPE, HMODULE, UINT, UINT, ID3D10Device **); @@ -118,7 +124,8 @@ QueryInterface_Type pQueryInterfaceDev8 = 0; QueryInterface_Type pQueryInterfaceD3D9 = 0; QueryInterface_Type pQueryInterfaceDev9 = 0; -GetDirect3D_Type pGetDirect3D = 0; +GetDirect3D8_Type pGetDirect3D8 = 0; +GetDirect3D9_Type pGetDirect3D9 = 0; Direct3DCreate8_Type pDirect3DCreate8 = 0; Direct3DCreate9_Type pDirect3DCreate9 = 0; Direct3DCreate9Ex_Type pDirect3DCreate9Ex = 0; @@ -153,6 +160,9 @@ BeginScene_Type pBeginScene8 = 0; EndScene_Type pEndScene8 = 0; BeginScene_Type pBeginScene9 = 0; EndScene_Type pEndScene9 = 0; +Reset_Type pReset = 0; +SetTexture8_Type pSetTexture8 = 0; +SetTexture9_Type pSetTexture9 = 0; D3D10CreateDevice_Type pD3D10CreateDevice = 0; D3D10CreateDeviceAndSwapChain_Type pD3D10CreateDeviceAndSwapChain = 0; @@ -167,27 +177,6 @@ Release_Type pRelease9 = 0; DWORD dwD3DVersion; -void dxwCopyProxyLib9() -{ - #define MAX_FILE_PATH 512 - DWORD dwAttrib; - char sSourcePath[MAX_FILE_PATH+1]; - char *p; - - // don't do this more than once per process activation - static BOOL DoOnce=FALSE; - if(DoOnce) return; - DoOnce=TRUE; - - dwAttrib = GetFileAttributes("dxwnd.dll"); - if (dwAttrib != INVALID_FILE_ATTRIBUTES && !(dwAttrib & FILE_ATTRIBUTE_DIRECTORY)) return; - GetModuleFileName(GetModuleHandle("dxwnd"), sSourcePath, MAX_FILE_PATH); - p=&sSourcePath[strlen(sSourcePath)-strlen("dxwnd.dll")]; - strcpy(p, "d3d9.dll"); - OutTraceD3D("HookInit: copy %s -> d3d9.dll\n", sSourcePath); - CopyFile(sSourcePath, "d3d9.dll", FALSE); -} - FARPROC Remap_d3d8_ProcAddress(LPCSTR proc, HMODULE hModule) { if (!strcmp(proc,"Direct3DCreate8") && !pDirect3DCreate8){ @@ -223,10 +212,6 @@ BOOL WINAPI voidDisableD3DSpy(void) FARPROC Remap_d3d9_ProcAddress(LPCSTR proc, HMODULE hModule) { - // NULL -> keep the original call address - // (FARPROC)-1 -> returns NULL - if(dxw.dwFlags4 & ADDPROXYLIBS) dxwCopyProxyLib9(); - if (!strcmp(proc,"Direct3DCreate9") && !pDirect3DCreate9){ pDirect3DCreate9=(Direct3DCreate9_Type)(*pGetProcAddress)(hModule, proc); OutTraceDW("GetProcAddress: hooking proc=%s at addr=%x\n", ProcToString(proc), pDirect3DCreate9); @@ -323,8 +308,6 @@ int HookDirect3D(HMODULE module, int version){ switch(version){ case 0: // D3D8 - if(dxw.dwFlags4 & ADDPROXYLIBS) dxwCopyProxyLib9(); - tmp = HookAPI(module, "d3d8.dll", NULL, "Direct3DCreate8", extDirect3DCreate8); if(tmp) pDirect3DCreate8 = (Direct3DCreate8_Type)tmp; // D3D9 @@ -362,7 +345,6 @@ int HookDirect3D(HMODULE module, int version){ } break; case 9: - if(dxw.dwFlags4 & ADDPROXYLIBS) dxwCopyProxyLib9(); hinst = (*pLoadLibraryA)("d3d9.dll"); pDirect3DCreate9 = (Direct3DCreate9_Type)(*pGetProcAddress)(hinst, "Direct3DCreate9"); @@ -473,11 +455,9 @@ int HookDirect3D(HMODULE module, int version){ void HookD3DDevice8(void** ppD3Ddev8) { - void *pReset; OutTraceDW("Device hook for IID_IDirect3DDevice8 interface\n"); - pReset=NULL; // to avoid assert condition SetHook((void *)(**(DWORD **)ppD3Ddev8 + 0), extQueryInterfaceDev8, (void **)&pQueryInterfaceDev8, "QueryInterface(D8)"); - SetHook((void *)(**(DWORD **)ppD3Ddev8 + 24), extGetDirect3D, (void **)&pGetDirect3D, "GetDirect3D(D8)"); + SetHook((void *)(**(DWORD **)ppD3Ddev8 + 24), extGetDirect3D8, (void **)&pGetDirect3D8, "GetDirect3D(D8)"); SetHook((void *)(**(DWORD **)ppD3Ddev8 + 32), extGetDisplayMode8, (void **)&pGetDisplayMode8, "GetDisplayMode(D8)"); SetHook((void *)(**(DWORD **)ppD3Ddev8 + 44), extSetCursorPosition8, (void **)&pSetCursorPosition8, "SetCursorPosition(D8)"); SetHook((void *)(**(DWORD **)ppD3Ddev8 + 52), extCreateAdditionalSwapChain, (void **)&pCreateAdditionalSwapChain, "CreateAdditionalSwapChain(D8)"); @@ -497,8 +477,8 @@ void HookD3DDevice8(void** ppD3Ddev8) if(dxw.dwFlags4 & DISABLEFOGGING) (*pSetRenderState)((void *)*ppD3Ddev8, D3DRS_FOGENABLE, FALSE); if(dxw.dwFlags4 & ZBUFFERALWAYS) (*pSetRenderState)((void *)*ppD3Ddev8, D3DRS_ZFUNC, D3DCMP_ALWAYS); //if(1) (*pSetRenderState)((void *)*ppD3Ddev8, D3DRS_SPECULARENABLE, TRUE); - //if(1) (*pSetRenderState)((void *)*ppD3Ddev8, D3DRS_ZFUNC, D3DCMP_LESSEQUAL); } + if (dxw.dwFlags4 & NOTEXTURES) SetHook((void *)(**(DWORD **)ppD3Ddev8 + 244), extSetTexture8, (void **)&pSetTexture8, "SetTexture(D8)"); //if (!(dxw.dwTFlags & OUTPROXYTRACE)) return; //SetHook((void *)(**(DWORD **)ppD3Ddev8 + 4), extAddRef8, (void **)&pAddRef8, "AddRef(D8)"); //SetHook((void *)(**(DWORD **)ppD3Ddev8 + 8), extRelease8, (void **)&pRelease8, "Release(D8)"); @@ -506,11 +486,9 @@ void HookD3DDevice8(void** ppD3Ddev8) void HookD3DDevice9(void** ppD3Ddev9) { - void *pReset; OutTraceDW("Device hook for IID_IDirect3DDevice9 interface\n"); - pReset=NULL; // to avoid assert condition SetHook((void *)(**(DWORD **)ppD3Ddev9 + 0), extQueryInterfaceDev9, (void **)&pQueryInterfaceDev9, "QueryInterface(D9)"); - SetHook((void *)(**(DWORD **)ppD3Ddev9 + 24), extGetDirect3D, (void **)&pGetDirect3D, "GetDirect3D(D9)"); + SetHook((void *)(**(DWORD **)ppD3Ddev9 + 24), extGetDirect3D9, (void **)&pGetDirect3D9, "GetDirect3D(D9)"); SetHook((void *)(**(DWORD **)ppD3Ddev9 + 32), extGetDisplayMode9, (void **)&pGetDisplayMode9, "GetDisplayMode(D9)"); SetHook((void *)(**(DWORD **)ppD3Ddev9 + 44), extSetCursorPosition9, (void **)&pSetCursorPosition9, "SetCursorPosition(D9)"); SetHook((void *)(**(DWORD **)ppD3Ddev9 + 52), extCreateAdditionalSwapChain, (void **)&pCreateAdditionalSwapChain, "CreateAdditionalSwapChain(D9)"); @@ -531,13 +509,22 @@ void HookD3DDevice9(void** ppD3Ddev9) if(dxw.dwFlags4 & DISABLEFOGGING) (*pSetRenderState)((void *)*ppD3Ddev9, D3DRS_FOGENABLE, FALSE); if(dxw.dwFlags4 & ZBUFFERALWAYS) (*pSetRenderState)((void *)*ppD3Ddev9, D3DRS_ZFUNC, D3DCMP_ALWAYS); //if(1) (*pSetRenderState)((void *)*ppD3Ddev9, D3DRS_SPECULARENABLE, TRUE); - //if(1) (*pSetRenderState)((void *)*ppD3Ddev9, D3DRS_ZFUNC, D3DCMP_LESSEQUAL); } + if (dxw.dwFlags4 & NOTEXTURES) SetHook((void *)(**(DWORD **)ppD3Ddev9 + 260), extSetTexture9, (void **)&pSetTexture9, "SetTexture(D9)"); if (!(dxw.dwTFlags & OUTPROXYTRACE)) return; SetHook((void *)(**(DWORD **)ppD3Ddev9 + 4), extAddRef9, (void **)&pAddRef9, "AddRef(D9)"); SetHook((void *)(**(DWORD **)ppD3Ddev9 + 8), extRelease9, (void **)&pRelease9, "Release(D9)"); } +void HookDirect3D8(void *lpd3d) +{ + SetHook((void *)(*(DWORD *)lpd3d + 0), extQueryInterfaceD3D8, (void **)&pQueryInterfaceD3D8, "QueryInterface(D8)"); + SetHook((void *)(*(DWORD *)lpd3d + 16), extGetAdapterCount8, (void **)&pGetAdapterCount8, "GetAdapterCount(D8)"); + SetHook((void *)(*(DWORD *)lpd3d + 20), extGetAdapterIdentifier8, (void **)&pGetAdapterIdentifier8, "GetAdapterIdentifier(D8)"); + SetHook((void *)(*(DWORD *)lpd3d + 28), extEnumAdapterModes8, (void **)&pEnumAdapterModes8, "EnumAdapterModes(D8)"); + SetHook((void *)(*(DWORD *)lpd3d + 32), extGetAdapterDisplayMode8, (void **)&pGetAdapterDisplayMode8, "GetAdapterDisplayMode(D8)"); + SetHook((void *)(*(DWORD *)lpd3d + 60), extCreateDevice, (void **)&pCreateDevice8, "CreateDevice(D8)"); +} void* WINAPI extDirect3DCreate8(UINT sdkversion) { @@ -550,17 +537,23 @@ void* WINAPI extDirect3DCreate8(UINT sdkversion) return 0; } dwD3DVersion = 8; - SetHook((void *)(*(DWORD *)lpd3d + 0), extQueryInterfaceD3D8, (void **)&pQueryInterfaceD3D8, "QueryInterface(D8)"); - SetHook((void *)(*(DWORD *)lpd3d + 16), extGetAdapterCount8, (void **)&pGetAdapterCount8, "GetAdapterCount(D8)"); - SetHook((void *)(*(DWORD *)lpd3d + 20), extGetAdapterIdentifier8, (void **)&pGetAdapterIdentifier8, "GetAdapterIdentifier(D8)"); - SetHook((void *)(*(DWORD *)lpd3d + 28), extEnumAdapterModes8, (void **)&pEnumAdapterModes8, "EnumAdapterModes(D8)"); - SetHook((void *)(*(DWORD *)lpd3d + 32), extGetAdapterDisplayMode8, (void **)&pGetAdapterDisplayMode8, "GetAdapterDisplayMode(D8)"); - SetHook((void *)(*(DWORD *)lpd3d + 60), extCreateDevice, (void **)&pCreateDevice8, "CreateDevice(D8)"); + HookDirect3D8(lpd3d); OutTraceD3D("Direct3DCreate8: d3d=%x\n", lpd3d); return lpd3d; } +void HookDirect3D9(void *lpd3d, BOOL ex) +{ + SetHook((void *)(*(DWORD *)lpd3d + 0), extQueryInterfaceD3D9, (void **)&pQueryInterfaceD3D9, "QueryInterface(D9)"); + SetHook((void *)(*(DWORD *)lpd3d + 16), extGetAdapterCount9, (void **)&pGetAdapterCount9, "GetAdapterCount(D9)"); + SetHook((void *)(*(DWORD *)lpd3d + 20), extGetAdapterIdentifier9, (void **)&pGetAdapterIdentifier9, "GetAdapterIdentifier(D9)"); + SetHook((void *)(*(DWORD *)lpd3d + 28), extEnumAdapterModes9, (void **)&pEnumAdapterModes9, "EnumAdapterModes(D9)"); + SetHook((void *)(*(DWORD *)lpd3d + 32), extGetAdapterDisplayMode9, (void **)&pGetAdapterDisplayMode9, "GetAdapterDisplayMode(D9)"); + SetHook((void *)(*(DWORD *)lpd3d + 64), extCreateDevice, (void **)&pCreateDevice9, "CreateDevice(D9)"); + if(ex) SetHook((void *)(*(DWORD *)lpd3d + 80), extCreateDeviceEx, (void **)&pCreateDeviceEx, "CreateDeviceEx(D9)"); +} + void* WINAPI extDirect3DCreate9(UINT sdkversion) { void *lpd3d; @@ -573,12 +566,7 @@ void* WINAPI extDirect3DCreate9(UINT sdkversion) } dwD3DVersion = 9; - SetHook((void *)(*(DWORD *)lpd3d + 0), extQueryInterfaceD3D9, (void **)&pQueryInterfaceD3D9, "QueryInterface(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 16), extGetAdapterCount9, (void **)&pGetAdapterCount9, "GetAdapterCount(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 20), extGetAdapterIdentifier9, (void **)&pGetAdapterIdentifier9, "GetAdapterIdentifier(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 28), extEnumAdapterModes9, (void **)&pEnumAdapterModes9, "EnumAdapterModes(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 32), extGetAdapterDisplayMode9, (void **)&pGetAdapterDisplayMode9, "GetAdapterDisplayMode(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 64), extCreateDevice, (void **)&pCreateDevice9, "CreateDevice(D9)"); + HookDirect3D9(lpd3d, FALSE); OutTraceD3D("Direct3DCreate9: d3d=%x\n", lpd3d); return lpd3d; @@ -597,13 +585,7 @@ HRESULT WINAPI extDirect3DCreate9Ex(UINT sdkversion, IDirect3D9Ex **ppD3D) } dwD3DVersion = 9; lpd3d = *ppD3D; - SetHook((void *)(*(DWORD *)lpd3d + 0), extQueryInterfaceD3D9, (void **)&pQueryInterfaceD3D9, "QueryInterface(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 16), extGetAdapterCount9, (void **)&pGetAdapterCount9, "GetAdapterCount(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 20), extGetAdapterIdentifier9, (void **)&pGetAdapterIdentifier9, "GetAdapterIdentifier(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 28), extEnumAdapterModes9, (void **)&pEnumAdapterModes9, "EnumAdapterModes(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 32), extGetAdapterDisplayMode9, (void **)&pGetAdapterDisplayMode9, "GetAdapterDisplayMode(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 64), extCreateDevice, (void **)&pCreateDevice9, "CreateDevice(D9)"); - SetHook((void *)(*(DWORD *)lpd3d + 80), extCreateDeviceEx, (void **)&pCreateDeviceEx, "CreateDeviceEx(D9)"); + HookDirect3D9(lpd3d, TRUE); OutTraceD3D("Direct3DCreate9Ex: d3d=%x\n", lpd3d); return res; } @@ -650,9 +632,105 @@ HRESULT WINAPI extGetAdapterIdentifier9(void *pd3dd, UINT Adapter, DWORD Flags, return res; } -HRESULT WINAPI extReset(void *pd3dd, D3DPRESENT_PARAMETERS* pPresentationParameters) +HRESULT WINAPI extReset(void *pd3dd, D3DPRESENT_PARAMETERS* pPresParam) { - OutTraceDW("Reset: SUPPRESSED\n"); + HRESULT res; + DWORD param[64], *tmp; + D3DDISPLAYMODE mode; + int Windowed; + void *pD3D; + + memcpy(param, pPresParam, (dwD3DVersion == 9)?56:52); + + if(IsTraceDW){ + tmp = param; + OutTrace("D3D%d::Reset\n", dwD3DVersion); + OutTrace(" BackBufferWidth = %i\n", *(tmp ++)); + OutTrace(" BackBufferHeight = %i\n", *(tmp ++)); + OutTrace(" BackBufferFormat = %i\n", *(tmp ++)); + OutTrace(" BackBufferCount = %i\n", *(tmp ++)); + OutTrace(" MultiSampleType = %i\n", *(tmp ++)); + if(dwD3DVersion == 9) OutTrace(" MultiSampleQuality = %i\n", *(tmp ++)); + OutTrace(" SwapEffect = 0x%x\n", *(tmp ++)); + OutTrace(" hDeviceWindow = 0x%x\n", *(tmp ++)); + OutTrace(" Windowed = %i\n", (Windowed=*(tmp ++))); + OutTrace(" EnableAutoDepthStencil = %i\n", *(tmp ++)); + OutTrace(" AutoDepthStencilFormat = %i\n", *(tmp ++)); + OutTrace(" Flags = 0x%x\n", *(tmp ++)); + OutTrace(" FullScreen_RefreshRateInHz = %i\n", *(tmp ++)); + OutTrace(" PresentationInterval = 0x%x\n", *(tmp ++)); + } + + if(Windowed) { + // do not attempt to reset when returning to windowed mode: it is useless (you are windowed already) + // and the code below (GetDirect3D, ...) doesn't work. + OutTraceDW("SKIPPED!\n"); + return DD_OK; + } + + if (dwD3DVersion == 9){ + res=(*pGetDirect3D9)(pd3dd, &pD3D); + if(res) { + OutTraceDW("GetDirect3D FAILED! %x\n", res); + return(DD_OK); + } + OutTraceDW("GetDirect3D pd3d=%x\n", pD3D); + res=(*pGetAdapterDisplayMode9)(pD3D, 0, &mode); + if(res) { + OutTraceDW("GetAdapterDisplayMode FAILED! %x\n", res); + return(DD_OK); + } + param[2] = mode.Format; + param[7] = 0; //hDeviceWindow + dxw.SetFullScreen(~param[8]?TRUE:FALSE); + param[8] = 1; //Windowed + //param[11] = D3DPRESENTFLAG_DEVICECLIP; //Flags; + param[12] = 0; //FullScreen_RefreshRateInHz; + param[13] = D3DPRESENT_INTERVAL_DEFAULT; //PresentationInterval + } + else{ + res=(*pGetDirect3D8)(pd3dd, &pD3D); + if(res) { + OutTraceDW("GetDirect3D FAILED! %x\n", res); + return(DD_OK); + } + OutTraceDW("GetDirect3D pd3d=%x\n", pD3D); + res=(*pGetAdapterDisplayMode8)(pD3D, 0, &mode); + if(res) { + OutTraceDW("GetAdapterDisplayMode FAILED! %x\n", res); + return(DD_OK); + } + param[2] = mode.Format; + param[6] = 0; //hDeviceWindow + dxw.SetFullScreen(~param[7]?TRUE:FALSE); + param[7] = 1; //Windowed + //param[10] = D3DPRESENTFLAG_DEVICECLIP; //Flags; + param[11] = 0; //FullScreen_RefreshRateInHz; + param[12] = D3DPRESENT_INTERVAL_DEFAULT; //PresentationInterval + } + + res = (*pReset)(pd3dd, (D3DPRESENT_PARAMETERS *)param); + if(res){ + OutTraceDW("FAILED! %x\n", res); + return res; + } + OutTraceDW("SUCCESS!\n"); + + if(dwD3DVersion == 8){ + HookD3DDevice8(&pd3dd); + } + else { + HookD3DDevice9(&pd3dd); + } + + dxw.SetScreenSize(pPresParam->BackBufferWidth, pPresParam->BackBufferHeight); + + GetHookInfo()->IsFullScreen = dxw.IsFullScreen(); + GetHookInfo()->DXVersion=(short)dwD3DVersion; + GetHookInfo()->Height=(short)dxw.GetScreenHeight(); + GetHookInfo()->Width=(short)dxw.GetScreenWidth(); + GetHookInfo()->ColorDepth=(short)dxw.VirtualPixelFormat.dwRGBBitCount; + return D3D_OK; } @@ -1044,7 +1122,6 @@ HRESULT WINAPI extCreateAdditionalSwapChain(void *lpd3d, D3DPRESENT_PARAMETERS * OutTrace(" PresentationInterval = 0x%x\n", *(tmp ++)); } - //((LPDIRECT3D9)lpd3d)->GetAdapterDisplayMode(0, &mode); if (dwD3DVersion == 9) (*pGetAdapterDisplayMode9)(lpd3d, 0, &mode); else @@ -1291,10 +1368,33 @@ HRESULT WINAPI extQueryInterfaceDev9(void *obj, REFIID riid, void** ppvObj) return res; } -HRESULT WINAPI extGetDirect3D(void *lpdd3dd, IDirect3D9 **ppD3D9) +HRESULT WINAPI extGetDirect3D8(void *lpdd3dd, void **ppD3D8) { + HRESULT res; + OutTraceD3D("Device::GetDirect3D(8): d3dd=%x\n", lpdd3dd); + res=(*pGetDirect3D8)(lpdd3dd, ppD3D8); + if(res) + OutTraceE("Device::GetDirect3D ERROR: d3dd=%x ret=%x\n", lpdd3dd, res); + else{ + OutTraceD3D("Device::GetDirect3D: d3dd=%x d3d=%x\n", lpdd3dd, *ppD3D8); + HookDirect3D8(*ppD3D8); + } + return res; +} + +HRESULT WINAPI extGetDirect3D9(void *lpdd3dd, void **ppD3D9) +{ + HRESULT res; OutTraceD3D("Device::GetDirect3D(9): d3dd=%x\n", lpdd3dd); - return (*pGetDirect3D)(lpdd3dd, ppD3D9); + res=(*pGetDirect3D9)(lpdd3dd, ppD3D9); + if(res) + OutTraceE("Device::GetDirect3D ERROR: d3dd=%x ret=%x\n", lpdd3dd, res); + else{ + OutTraceD3D("Device::GetDirect3D: d3dd=%x d3d=%x\n", lpdd3dd, *ppD3D9); + // re-hook d3d session: neeeded for Need for Speed Underground + HookDirect3D9(*ppD3D9, FALSE); + } + return res; } HRESULT WINAPI extCheckFullScreen(void) @@ -1393,3 +1493,17 @@ ULONG WINAPI extEndScene9(void *lpdd3dd) if (res) OutTraceE("Device::EndScene(9) ERROR: err=%x\n", res); return res; } + +ULONG WINAPI extSetTexture8(void *lpd3dd, DWORD Stage, void* pTexture) +{ + (*pSetTexture8)(lpd3dd, Stage, NULL); + OutTraceD3D("Device::SetTexture(8): d3dd=%x stage=%x\n", lpd3dd, Stage); + return DD_OK; +} + +ULONG WINAPI extSetTexture9(void *lpd3dd, DWORD Stage, void* pTexture) +{ + (*pSetTexture9)(lpd3dd, Stage, NULL); + OutTraceD3D("Device::SetTexture(9): d3dd=%x stage=%x\n", lpd3dd, Stage); + return DD_OK; +} diff --git a/dll/hd3d7.cpp b/dll/hd3d7.cpp index 44026ec..28b43c1 100644 --- a/dll/hd3d7.cpp +++ b/dll/hd3d7.cpp @@ -67,6 +67,8 @@ typedef HRESULT (WINAPI *GetCurrentViewport2_Type)(void *, LPDIRECT3DVIEWPORT2 * typedef HRESULT (WINAPI *SetCurrentViewport2_Type)(void *, LPDIRECT3DVIEWPORT2); typedef HRESULT (WINAPI *GetCurrentViewport3_Type)(void *, LPDIRECT3DVIEWPORT3 *); typedef HRESULT (WINAPI *SetCurrentViewport3_Type)(void *, LPDIRECT3DVIEWPORT3); +typedef HRESULT (WINAPI *SetTexture3_Type)(void *, DWORD, LPDIRECT3DTEXTURE2); +typedef HRESULT (WINAPI *SetTexture7_Type)(void *, DWORD, LPDIRECTDRAWSURFACE7); D3DInitialize_Type pD3DInitialize = NULL; D3DGetCaps_Type pD3DGetCaps = NULL; @@ -92,6 +94,8 @@ GetCurrentViewport2_Type pGetCurrentViewport2 = NULL; SetCurrentViewport2_Type pSetCurrentViewport2 = NULL; GetCurrentViewport3_Type pGetCurrentViewport3 = NULL; SetCurrentViewport3_Type pSetCurrentViewport3 = NULL; +SetTexture3_Type pSetTexture3 = NULL; +SetTexture7_Type pSetTexture7 = NULL; // IDirect3DViewport-n interfaces @@ -124,8 +128,6 @@ DeleteViewport2_Type pDeleteViewport2 = NULL; NextViewport2_Type pNextViewport2 = NULL; - - HRESULT WINAPI extInitialize(void *); HRESULT WINAPI extEnumDevices(void *, LPD3DENUMDEVICESCALLBACK, LPVOID); HRESULT WINAPI extEnumDevices7(void *, LPD3DENUMDEVICESCALLBACK7, LPVOID); @@ -179,6 +181,8 @@ HRESULT WINAPI extSetCurrentViewport3(void *, LPDIRECT3DVIEWPORT3); HRESULT WINAPI extGetCurrentViewport3(void *, LPDIRECT3DVIEWPORT3 *); HRESULT WINAPI extSetViewport7(void *, LPD3DVIEWPORT7); HRESULT WINAPI extGetViewport7(void *, LPD3DVIEWPORT7); +HRESULT WINAPI extSetTexture3(void *, DWORD, LPDIRECT3DTEXTURE2); +HRESULT WINAPI extSetTexture7(void *, DWORD, LPDIRECTDRAWSURFACE7); extern char *ExplainDDError(DWORD); @@ -308,7 +312,6 @@ void HookDirect3DDevice(void **lpd3ddev, int d3dversion) if(dxw.dwFlags2 & WIREFRAME)(*pSetRenderState2)(*lpd3ddev, D3DRENDERSTATE_FILLMODE, D3DFILL_WIREFRAME); if(dxw.dwFlags4 & DISABLEFOGGING) (*pSetRenderState2)(*lpd3ddev, D3DRENDERSTATE_FOGENABLE, FALSE); if(dxw.dwFlags4 & ZBUFFERALWAYS) (*pSetRenderState2)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_ALWAYS); - //if(1) (*pSetRenderState2)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_LESSEQUAL); } break; case 3: @@ -320,11 +323,11 @@ void HookDirect3DDevice(void **lpd3ddev, int d3dversion) SetHook((void *)(**(DWORD **)lpd3ddev + 52), extGetCurrentViewport3, (void **)&pGetCurrentViewport3, "GetCurrentViewport(3)"); SetHook((void *)(**(DWORD **)lpd3ddev + 88), extSetRenderState3, (void **)&pSetRenderState3, "SetRenderState(3)"); SetHook((void *)(**(DWORD **)lpd3ddev + 96), extSetLightState3, (void **)&pSetLightState3, "SetLightState(3)"); + if (dxw.dwFlags4 & NOTEXTURES) SetHook((void *)(**(DWORD **)lpd3ddev + 152), extSetTexture3, (void **)&pSetTexture3, "SetTexture(D3)"); if(pSetRenderState3){ if(dxw.dwFlags2 & WIREFRAME)(*pSetRenderState3)(*lpd3ddev, D3DRENDERSTATE_FILLMODE, D3DFILL_WIREFRAME); if(dxw.dwFlags4 & DISABLEFOGGING) (*pSetRenderState3)(*lpd3ddev, D3DRENDERSTATE_FOGENABLE, FALSE); if(dxw.dwFlags4 & ZBUFFERALWAYS) (*pSetRenderState3)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_ALWAYS); - //if(1) (*pSetRenderState3)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_LESSEQUAL); } break; case 7: @@ -333,11 +336,11 @@ void HookDirect3DDevice(void **lpd3ddev, int d3dversion) SetHook((void *)(**(DWORD **)lpd3ddev + 52), extSetViewport7, (void **)&pSetViewport7, "SetViewport(7)"); SetHook((void *)(**(DWORD **)lpd3ddev + 60), extGetViewport7, (void **)&pGetViewport7, "GetViewport(7)"); SetHook((void *)(**(DWORD **)lpd3ddev + 80), extSetRenderState7, (void **)&pSetRenderState7, "SetRenderState(7)"); + if (dxw.dwFlags4 & NOTEXTURES) SetHook((void *)(**(DWORD **)lpd3ddev + 140), extSetTexture7, (void **)&pSetTexture7, "SetTexture(D7)"); if(pSetRenderState7){ if(dxw.dwFlags2 & WIREFRAME)(*pSetRenderState7)(*lpd3ddev, D3DRENDERSTATE_FILLMODE, D3DFILL_WIREFRAME); if(dxw.dwFlags4 & DISABLEFOGGING) (*pSetRenderState7)(*lpd3ddev, D3DRENDERSTATE_FOGENABLE, FALSE); if(dxw.dwFlags4 & ZBUFFERALWAYS) (*pSetRenderState7)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_ALWAYS); - //if(1) (*pSetRenderState7)(*lpd3ddev, D3DRENDERSTATE_ZFUNC, D3DCMP_LESSEQUAL); } break; } @@ -1199,3 +1202,13 @@ HRESULT WINAPI extNextViewport2(void *d3dd, LPDIRECT3DVIEWPORT2 lpd3dvp, LPDIREC else OutTraceD3D("NextViewport(D3DD2): next=%x\n", *vpnext); return res; } + +HRESULT WINAPI extSetTexture3(void *, DWORD, LPDIRECT3DTEXTURE2) +{ + return DD_OK; +} + +HRESULT WINAPI extSetTexture7(void *, DWORD, LPDIRECTDRAWSURFACE7) +{ + return DD_OK; +} diff --git a/host/Resource.h b/host/Resource.h index c28ba0a..8db5baa 100644 --- a/host/Resource.h +++ b/host/Resource.h @@ -205,6 +205,7 @@ #define IDC_HIDEDESKTOP 1163 #define IDC_STRETCHTIMERS 1164 #define IDC_NOFLIPEMULATION 1165 +#define IDC_NOTEXTURES 1166 #define ID_MODIFY 32771 #define ID_DELETE 32772 #define ID_ADD 32773 diff --git a/host/TabDirectX.cpp b/host/TabDirectX.cpp index 66b9ad4..9a5a42a 100644 --- a/host/TabDirectX.cpp +++ b/host/TabDirectX.cpp @@ -43,9 +43,7 @@ void CTabDirectX::DoDataExchange(CDataExchange* pDX) DDX_Check(pDX, IDC_NOPIXELFORMAT, cTarget->m_NoPixelFormat); DDX_Check(pDX, IDC_NOALPHACHANNEL, cTarget->m_NoAlphaChannel); DDX_Check(pDX, IDC_FIXREFCOUNTER, cTarget->m_FixRefCounter); - DDX_Check(pDX, IDC_ADDPROXYLIBS, cTarget->m_AddProxyLibs); DDX_Check(pDX, IDC_NOFLIPEMULATION, cTarget->m_NoFlipEmulation); - //DDX_Check(pDX, IDC_SAVECAPS, cTarget->m_SaveCaps); } BEGIN_MESSAGE_MAP(CTabDirectX, CDialog) diff --git a/host/TabWindow.cpp b/host/TabWindow.cpp index 82c80bd..eb17c8e 100644 --- a/host/TabWindow.cpp +++ b/host/TabWindow.cpp @@ -60,6 +60,7 @@ void CTabWindow::DoDataExchange(CDataExchange* pDX) DDX_LBIndex(pDX, IDC_LISTRES, cTarget->m_MaxScreenRes); // 3D management + DDX_Check(pDX, IDC_NOTEXTURES, cTarget->m_NoTextures); DDX_Check(pDX, IDC_WIREFRAME, cTarget->m_WireFrame); DDX_Check(pDX, IDC_DISABLEFOGGING, cTarget->m_DisableFogging); } diff --git a/host/TargetDlg.cpp b/host/TargetDlg.cpp index 03e2bb6..26aab00 100644 --- a/host/TargetDlg.cpp +++ b/host/TargetDlg.cpp @@ -63,7 +63,6 @@ CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/) m_DisableFogging = FALSE; m_NoPower2Fix = FALSE; m_NoPerfCounter = FALSE; - m_AddProxyLibs = FALSE; m_UnNotify = FALSE; m_Windowize = TRUE; // default true !! m_HookDLLs = TRUE; // default true !! @@ -139,6 +138,7 @@ CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/) m_AnalyticMode = FALSE; m_NoPaletteUpdate = FALSE; m_WireFrame = FALSE; + m_NoTextures = FALSE; m_BlackWhite = FALSE; m_InitX = 0; m_InitY = 0; diff --git a/host/TargetDlg.h b/host/TargetDlg.h index 72a320a..3fb5ac6 100644 --- a/host/TargetDlg.h +++ b/host/TargetDlg.h @@ -128,7 +128,6 @@ public: BOOL m_ZBufferAlways; BOOL m_NoPower2Fix; BOOL m_NoPerfCounter; - BOOL m_AddProxyLibs; BOOL m_DisableFogging; BOOL m_SuppressIME; BOOL m_SetCompatibility; @@ -144,6 +143,7 @@ public: BOOL m_SaveCaps; BOOL m_SingleProcAffinity; BOOL m_WireFrame; + BOOL m_NoTextures; BOOL m_BlackWhite; BOOL m_SuppressD3DExt; BOOL m_Force16BPP; diff --git a/host/dxwndhost.aps b/host/dxwndhost.aps index 1079619..4bb1ec9 100644 Binary files a/host/dxwndhost.aps and b/host/dxwndhost.aps differ diff --git a/host/dxwndhost.rc b/host/dxwndhost.rc index bf1887c..df4e299 100644 --- a/host/dxwndhost.rc +++ b/host/dxwndhost.rc @@ -347,7 +347,7 @@ BEGIN CONTROL "by default set no ALPHACHANNEL",IDC_NOALPHACHANNEL, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,160,123,12 CONTROL "Fix ddraw ref counter",IDC_FIXREFCOUNTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,172,123,12 - CONTROL "Add proxy libs",IDC_ADDPROXYLIBS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,184,123,12 + CONTROL "Add proxy libs",IDC_ADDPROXYLIBS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,15,200,123,12 CONTROL "Compensate Flip emulation",IDC_NOFLIPEMULATION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,76,119,10 END @@ -435,12 +435,13 @@ BEGIN CONTROL "Simulate BW monitor",IDC_BLACKWHITE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,52,96,10 CONTROL "Set 16BPP RGB565 encoding",IDC_USERGB565,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,64,126,9 CONTROL "Lock Sys Colors",IDC_LOCKSYSCOLORS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,76,126,9 - GROUPBOX "3D effects",IDC_STATIC,149,191,144,43 - CONTROL "Disable Fogging",IDC_DISABLEFOGGING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,217,96,10 - GROUPBOX "Screen resolution",IDC_STATIC,149,123,144,64 + GROUPBOX "3D effects",IDC_STATIC,149,175,144,59 + CONTROL "Disable Fogging",IDC_DISABLEFOGGING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,218,96,10 + GROUPBOX "Screen resolution",IDC_STATIC,149,123,144,46 CONTROL "Limit resolution:",IDC_LIMITSCREENRES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,159,136,63,10 LISTBOX IDC_LISTRES,226,133,57,26,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP CONTROL "Hide desktop background",IDC_HIDEDESKTOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,184,125,10 + CONTROL "Disable Textures",IDC_NOTEXTURES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,160,194,96,10 END IDD_TAB_EMPTY DIALOGEX 0, 0, 300, 240 diff --git a/host/dxwndhost.vs2008.suo b/host/dxwndhost.vs2008.suo index 90f8554..51282d2 100644 Binary files a/host/dxwndhost.vs2008.suo and b/host/dxwndhost.vs2008.suo differ diff --git a/host/dxwndhostView.cpp b/host/dxwndhostView.cpp index c0d3d68..39cb968 100644 --- a/host/dxwndhostView.cpp +++ b/host/dxwndhostView.cpp @@ -166,7 +166,6 @@ static void SetTargetFromDlg(TARGETMAP *t, CTargetDlg *dlg) if(dlg->m_ZBufferAlways) t->flags4 |= ZBUFFERALWAYS; if(dlg->m_NoPower2Fix) t->flags4 |= NOPOWER2FIX; if(dlg->m_NoPerfCounter) t->flags4 |= NOPERFCOUNTER; - if(dlg->m_AddProxyLibs) t->flags4 |= ADDPROXYLIBS; if(dlg->m_DisableFogging) t->flags4 |= DISABLEFOGGING; if(dlg->m_SuppressIME) t->flags2 |= SUPPRESSIME; if(dlg->m_SuppressD3DExt) t->flags3 |= SUPPRESSD3DEXT; @@ -238,6 +237,7 @@ static void SetTargetFromDlg(TARGETMAP *t, CTargetDlg *dlg) if(dlg->m_HookOpenGL) t->flags2 |= HOOKOPENGL; if(dlg->m_ForceHookOpenGL) t->flags3 |= FORCEHOOKOPENGL; if(dlg->m_WireFrame) t->flags2 |= WIREFRAME; + if(dlg->m_NoTextures) t->flags4 |= NOTEXTURES; if(dlg->m_BlackWhite) t->flags3 |= BLACKWHITE; if(dlg->m_FakeVersion) t->flags2 |= FAKEVERSION; if(dlg->m_FullRectBlt) t->flags2 |= FULLRECTBLT; @@ -340,7 +340,6 @@ static void SetDlgFromTarget(TARGETMAP *t, CTargetDlg *dlg) dlg->m_ZBufferAlways = t->flags4 & ZBUFFERALWAYS ? 1 : 0; dlg->m_NoPower2Fix = t->flags4 & NOPOWER2FIX ? 1 : 0; dlg->m_NoPerfCounter = t->flags4 & NOPERFCOUNTER ? 1 : 0; - dlg->m_AddProxyLibs = t->flags4 & ADDPROXYLIBS ? 1 : 0; dlg->m_DisableFogging = t->flags4 & DISABLEFOGGING ? 1 : 0; dlg->m_SaveLoad = t->flags & SAVELOAD ? 1 : 0; dlg->m_SlowDown = t->flags & SLOWDOWN ? 1 : 0; @@ -395,6 +394,7 @@ static void SetDlgFromTarget(TARGETMAP *t, CTargetDlg *dlg) dlg->m_HookOpenGL = t->flags2 & HOOKOPENGL ? 1 : 0; dlg->m_ForceHookOpenGL = t->flags3 & FORCEHOOKOPENGL ? 1 : 0; dlg->m_WireFrame = t->flags2 & WIREFRAME ? 1 : 0; + dlg->m_NoTextures = t->flags4 & NOTEXTURES ? 1 : 0; dlg->m_BlackWhite = t->flags3 & BLACKWHITE ? 1 : 0; dlg->m_FakeVersion = t->flags2 & FAKEVERSION ? 1 : 0; dlg->m_FullRectBlt = t->flags2 & FULLRECTBLT ? 1 : 0; diff --git a/todo.txt b/todo.txt deleted file mode 100644 index fedbe5e..0000000 --- a/todo.txt +++ /dev/null @@ -1,37 +0,0 @@ - int WINAPI D3DPERF_BeginEvent(D3DCOLOR col, LPCWSTR wszName) -{ - if (!gl_hOriginalDll) LoadOriginalDll(); // looking for the "right d3d9.dll" - - typedef int (WINAPI* D3DPERF_BE)(D3DCOLOR,LPCWSTR); - D3DPERF_BE D3DPERF_BeginEvent_fn = (D3DPERF_BE) GetProcAddress( gl_hOriginalDll, "D3DPERF_BeginEvent"); - - return D3DPERF_BeginEvent_fn(col, wszName); -} - -int WINAPI D3DPERF_EndEvent() -{ - if (!gl_hOriginalDll) LoadOriginalDll(); // looking for the "right d3d9.dll" - - typedef int (WINAPI* D3DPERF_EE)(void); - D3DPERF_EE D3DPERF_EndEvent_fn = (D3DPERF_EE) GetProcAddress( gl_hOriginalDll, "D3DPERF_EndEvent"); - - return D3DPERF_EndEvent_fn(); -} - -void WINAPI D3DPERF_SetMarker(D3DCOLOR col, LPCWSTR wszName) -{ - if (!gl_hOriginalDll) LoadOriginalDll(); // looking for the "right d3d9.dll" - - typedef void (WINAPI* D3DPERF_SM)(D3DCOLOR,LPCWSTR); - D3DPERF_SM D3DPERF_SetMarker_fn = (D3DPERF_SM) GetProcAddress( gl_hOriginalDll, "D3DPERF_SetMarker"); - - D3DPERF_SetMarker_fn(col, wszName); -} - -LIBRARY "d3d9" - -EXPORTS - Direct3DCreate9 @1 - D3DPERF_BeginEvent @2 - D3DPERF_EndEvent @3 - D3DPERF_SetMarker @4 \ No newline at end of file