mirror of
https://github.com/DxWnd/DxWnd.reloaded
synced 2024-12-30 09:25:35 +01:00
v2_03_97_srcfx4
Former-commit-id: 0a0c6e9745c65c643a8087714bb50dd885f36bbf
This commit is contained in:
parent
fd5d550b51
commit
fa59792b6d
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e35a6dc22468717d75b50c1374ba43157b43668ba28417be5e8201d0d8c0d010
|
||||
oid sha256:4af08fde73eb963389ed3ef80c024a9aaf6a711bfc70f8b2c2091c9c75dfbbad
|
||||
size 700928
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e2ea4c3b5e4fd2628d255b154cb6d5094da8be5175c844919cc1ad8ab6eecf81
|
||||
size 665088
|
||||
oid sha256:2e87504512135e86893727a9d1fec372ce4ad78e50f6b897ddf819bc6fd3d9db
|
||||
size 665600
|
||||
|
349
build/dxwnd.ini
Normal file
349
build/dxwnd.ini
Normal file
@ -0,0 +1,349 @@
|
||||
[window]
|
||||
exportpath=D:\DxWnd.develop\v2_03_97_beta\build\exports\
|
||||
posx=-592
|
||||
posy=438
|
||||
sizx=436
|
||||
sizy=417
|
||||
exepath=D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\
|
||||
debug=1
|
||||
autohide=0
|
||||
checkadmin=0
|
||||
namefromfolder=0
|
||||
multiprocesshook=0
|
||||
updatepaths=1
|
||||
defaultcoord=0
|
||||
defaultposx=50
|
||||
defaultposy=50
|
||||
defaultsizx=800
|
||||
defaultsizy=600
|
||||
[target]
|
||||
title0=Warhammer 40K Rites of War
|
||||
path0=D:\Games\Warhammer 40.000 Rites of War\RoWDemo.exe
|
||||
startfolder0=
|
||||
launchpath0=
|
||||
module0=
|
||||
opengllib0=
|
||||
notes0=After installing the game copy the "Map" -folder from the CD to the \nRites of War\ directory on your hard drive.\n\nThis will fix the issue where the game crashes when starting a campaign.
|
||||
registry0=
|
||||
ver0=0
|
||||
monitorid0=0
|
||||
coord0=0
|
||||
flag0=685772838
|
||||
flagg0=1207959680
|
||||
flagh0=20
|
||||
flagi0=138412036
|
||||
flagj0=4224
|
||||
flagk0=65536
|
||||
flagl0=0
|
||||
flagm0=0
|
||||
tflag0=0
|
||||
dflag0=0
|
||||
posx0=50
|
||||
posy0=50
|
||||
sizx0=800
|
||||
sizy0=600
|
||||
maxfps0=0
|
||||
initts0=0
|
||||
winver0=0
|
||||
maxres0=-1
|
||||
swapeffect0=0
|
||||
maxddinterface0=7
|
||||
slowratio0=2
|
||||
initresw0=0
|
||||
initresh0=0
|
||||
title1=Adrenix mod
|
||||
path1=D:\Games\Adrenix\Adrenix.exe
|
||||
startfolder1=
|
||||
launchpath1=
|
||||
module1=
|
||||
opengllib1=
|
||||
notes1=
|
||||
registry1=
|
||||
ver1=0
|
||||
monitorid1=-1
|
||||
coord1=0
|
||||
flag1=136314915
|
||||
flagg1=1207959552
|
||||
flagh1=8212
|
||||
flagi1=138412036
|
||||
flagj1=4224
|
||||
flagk1=2424840
|
||||
flagl1=0
|
||||
flagm1=0
|
||||
tflag1=-2147483647
|
||||
dflag1=0
|
||||
posx1=50
|
||||
posy1=50
|
||||
sizx1=0
|
||||
sizy1=0
|
||||
maxfps1=0
|
||||
initts1=0
|
||||
winver1=0
|
||||
maxres1=-1
|
||||
swapeffect1=0
|
||||
maxddinterface1=7
|
||||
slowratio1=2
|
||||
initresw1=800
|
||||
initresh1=600
|
||||
title2=Adrenix 3D
|
||||
path2=D:\Games\Adrenix\AdrenixD.exe
|
||||
startfolder2=
|
||||
launchpath2=
|
||||
module2=
|
||||
opengllib2=
|
||||
notes2=
|
||||
registry2=
|
||||
ver2=0
|
||||
monitorid2=0
|
||||
coord2=0
|
||||
flag2=134234150
|
||||
flagg2=1208025088
|
||||
flagh2=20
|
||||
flagi2=138412036
|
||||
flagj2=5248
|
||||
flagk2=65536
|
||||
flagl2=0
|
||||
flagm2=0
|
||||
tflag2=-2147477245
|
||||
dflag2=0
|
||||
posx2=50
|
||||
posy2=50
|
||||
sizx2=800
|
||||
sizy2=600
|
||||
maxfps2=0
|
||||
initts2=0
|
||||
winver2=0
|
||||
maxres2=-1
|
||||
swapeffect2=0
|
||||
maxddinterface2=7
|
||||
slowratio2=1
|
||||
initresw2=0
|
||||
initresh2=0
|
||||
title3=Minigolf master miniverse demo
|
||||
path3=D:\Games\MiniGolf Master Demo\mvdemo.exe
|
||||
startfolder3=
|
||||
launchpath3=
|
||||
module3=
|
||||
opengllib3=
|
||||
notes3=
|
||||
registry3=
|
||||
ver3=0
|
||||
monitorid3=-1
|
||||
coord3=0
|
||||
flag3=136314914
|
||||
flagg3=1207959552
|
||||
flagh3=20
|
||||
flagi3=138412036
|
||||
flagj3=4224
|
||||
flagk3=33882112
|
||||
flagl3=32768
|
||||
flagm3=0
|
||||
tflag3=0
|
||||
dflag3=0
|
||||
posx3=50
|
||||
posy3=50
|
||||
sizx3=800
|
||||
sizy3=600
|
||||
maxfps3=0
|
||||
initts3=0
|
||||
winver3=0
|
||||
maxres3=-1
|
||||
swapeffect3=0
|
||||
maxddinterface3=7
|
||||
slowratio3=2
|
||||
initresw3=640
|
||||
initresh3=480
|
||||
title4=Galapagos
|
||||
module4=
|
||||
opengllib4=
|
||||
monitorid4=-1
|
||||
dflag4=0
|
||||
initresw4=640
|
||||
initresh4=480
|
||||
path4=D:\Games\Galapagos\GALA.EXE
|
||||
startfolder4=
|
||||
launchpath4=
|
||||
notes4=
|
||||
registry4=
|
||||
ver4=7
|
||||
coord4=0
|
||||
flag4=137379894
|
||||
flagg4=1207959552
|
||||
flagh4=33300
|
||||
flagi4=138412036
|
||||
flagj4=469766272
|
||||
flagk4=67584
|
||||
flagl4=92340240
|
||||
flagm4=0
|
||||
tflag4=-2147477245
|
||||
posx4=150
|
||||
posy4=150
|
||||
sizx4=800
|
||||
sizy4=600
|
||||
maxfps4=0
|
||||
initts4=0
|
||||
winver4=0
|
||||
maxres4=-1
|
||||
swapeffect4=0
|
||||
maxddinterface4=7
|
||||
slowratio4=2
|
||||
title5=Incubation.exe
|
||||
module5=
|
||||
opengllib5=
|
||||
monitorid5=-1
|
||||
dflag5=0
|
||||
initresw5=800
|
||||
initresh5=600
|
||||
path5=D:\Games\Incubation\Incubation.exe
|
||||
startfolder5=
|
||||
launchpath5=
|
||||
notes5=
|
||||
registry5=
|
||||
ver5=0
|
||||
coord5=0
|
||||
flag5=681574434
|
||||
flagg5=1208221696
|
||||
flagh5=20
|
||||
flagi5=138412036
|
||||
flagj5=4224
|
||||
flagk5=65536
|
||||
flagl5=0
|
||||
flagm5=0
|
||||
tflag5=0
|
||||
posx5=50
|
||||
posy5=50
|
||||
sizx5=800
|
||||
sizy5=600
|
||||
maxfps5=0
|
||||
initts5=0
|
||||
winver5=0
|
||||
maxres5=-1
|
||||
swapeffect5=0
|
||||
maxddinterface5=7
|
||||
slowratio5=2
|
||||
title6=Autorun.exe
|
||||
path6=D:\Games\Incubation\Autorun.exe
|
||||
startfolder6=
|
||||
launchpath6=
|
||||
module6=
|
||||
opengllib6=
|
||||
notes6=
|
||||
registry6=
|
||||
ver6=0
|
||||
monitorid6=-1
|
||||
coord6=0
|
||||
flag6=136314914
|
||||
flagg6=1207959552
|
||||
flagh6=20
|
||||
flagi6=134217732
|
||||
flagj6=4224
|
||||
flagk6=65536
|
||||
flagl6=0
|
||||
flagm6=0
|
||||
tflag6=0
|
||||
dflag6=0
|
||||
posx6=50
|
||||
posy6=50
|
||||
sizx6=800
|
||||
sizy6=600
|
||||
maxfps6=0
|
||||
initts6=0
|
||||
winver6=0
|
||||
maxres6=-1
|
||||
swapeffect6=0
|
||||
maxddinterface6=7
|
||||
slowratio6=2
|
||||
initresw6=800
|
||||
initresh6=600
|
||||
title7=Warhammer 40.000 Dark Omen
|
||||
path7=D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE
|
||||
startfolder7=
|
||||
launchpath7=
|
||||
module7=
|
||||
opengllib7=
|
||||
notes7=
|
||||
registry7=
|
||||
ver7=0
|
||||
monitorid7=-1
|
||||
coord7=0
|
||||
flag7=136314922
|
||||
flagg7=1207959552
|
||||
flagh7=4
|
||||
flagi7=138412036
|
||||
flagj7=4224
|
||||
flagk7=65536
|
||||
flagl7=0
|
||||
flagm7=0
|
||||
tflag7=-2147477245
|
||||
dflag7=0
|
||||
posx7=50
|
||||
posy7=50
|
||||
sizx7=800
|
||||
sizy7=600
|
||||
maxfps7=0
|
||||
initts7=0
|
||||
winver7=0
|
||||
maxres7=-1
|
||||
swapeffect7=0
|
||||
maxddinterface7=7
|
||||
slowratio7=2
|
||||
initresw7=800
|
||||
initresh7=600
|
||||
title8=Warhammer Dark Omen
|
||||
path8=D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE
|
||||
startfolder8=
|
||||
launchpath8=
|
||||
module8=
|
||||
opengllib8=
|
||||
notes8=Dark Omen needs a d3drm.dll file to run:\n- This file can be located in the CD's \DIRECTX -folder.\n- Copy the file into the "Dark Omen\PRG_ENG" directory.\n\nSound issues:\nDark Omen can sometimes produce a burst of white noise from the speakers.\nUsing the Timing option "CPU slow down" may fix this issue.
|
||||
registry8=[HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\Dark Omen\1.0\Options\Options]\n"Selected"="4"\n"HardwareSelected"="252"\n"SoftwareSelected"="228"\n"MMXSelected"="256"\n"ToolTips"="1"\n"MusicVolume"="408"\n"SFXVolume"="816"\n"SoftwareSoundQuality"="2"\n"SoftwareParticleQuality"="2"\n"MMXSoundQuality"="2"\n"MMXParticaleQuality"="1"\n"HardwareSoundQuality"="2"\n"HardwareParticleQuality"="2"\n"InformationNum"="11"\n
|
||||
ver8=0
|
||||
monitorid8=-1
|
||||
coord8=0
|
||||
flag8=136314922
|
||||
flagg8=1207959552
|
||||
flagh8=9236
|
||||
flagi8=1212153860
|
||||
flagj8=4224
|
||||
flagk8=67584
|
||||
flagl8=0
|
||||
flagm8=0
|
||||
tflag8=0
|
||||
dflag8=0
|
||||
posx8=50
|
||||
posy8=50
|
||||
sizx8=800
|
||||
sizy8=600
|
||||
maxfps8=0
|
||||
initts8=0
|
||||
winver8=0
|
||||
maxres8=-1
|
||||
swapeffect8=0
|
||||
maxddinterface8=7
|
||||
slowratio8=2
|
||||
initresw8=800
|
||||
initresh8=600
|
||||
[texture]
|
||||
MinTexX=0
|
||||
MinTexY=0
|
||||
MaxTexX=0
|
||||
MaxTexY=0
|
||||
[keymapping]
|
||||
timetoggle=
|
||||
timefast=
|
||||
timeslow=
|
||||
altf4=
|
||||
cliptoggle=
|
||||
refresh=
|
||||
logtoggle=
|
||||
plogtoggle=
|
||||
fpstoggle=
|
||||
printscreen=
|
||||
corner=
|
||||
freezetime=
|
||||
fullscreen=
|
||||
workarea=
|
||||
desktop=
|
||||
minimize=
|
||||
restore=
|
||||
kill=
|
32
build/dxwnd.log
Normal file
32
build/dxwnd.log
Normal file
@ -0,0 +1,32 @@
|
||||
OnRun idx=8 prog="D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE"
|
||||
self elevation
|
||||
export virtual registry
|
||||
setwindowshook mode
|
||||
OnRun idx=8 prog="D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE"
|
||||
self elevation
|
||||
export virtual registry
|
||||
setwindowshook mode
|
||||
OnRun idx=8 prog="D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE"
|
||||
self elevation
|
||||
export virtual registry
|
||||
setwindowshook mode
|
||||
OnRun idx=8 prog="D:\Games\Warhammer 40.000 Dark Omen\PRG_ENG\ENGREL.EXE"
|
||||
self elevation
|
||||
export virtual registry
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if18.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if18.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if18.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if18.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if18.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if19.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if19.exe"
|
||||
setwindowshook mode
|
||||
OnRun idx=9 prog="D:\Games\If-18 Carrier Strike Fighter\if19.exe"
|
||||
setwindowshook mode
|
16
build/dxwnd.reg
Normal file
16
build/dxwnd.reg
Normal file
@ -0,0 +1,16 @@
|
||||
[HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\Dark Omen\1.0\Options\Options]
|
||||
"Selected"="4"
|
||||
"HardwareSelected"="252"
|
||||
"SoftwareSelected"="228"
|
||||
"MMXSelected"="256"
|
||||
"ToolTips"="1"
|
||||
"MusicVolume"="408"
|
||||
"SFXVolume"="816"
|
||||
"SoftwareSoundQuality"="2"
|
||||
"SoftwareParticleQuality"="2"
|
||||
"MMXSoundQuality"="2"
|
||||
"MMXParticaleQuality"="1"
|
||||
"HardwareSoundQuality"="2"
|
||||
"HardwareParticleQuality"="2"
|
||||
"InformationNum"="11"
|
||||
|
@ -10,13 +10,13 @@ registry0=
|
||||
ver0=0
|
||||
monitorid0=-1
|
||||
coord0=0
|
||||
flag0=137379894
|
||||
flag0=137379902
|
||||
flagg0=1207959552
|
||||
flagh0=33300
|
||||
flagi0=138412036
|
||||
flagj0=469766272
|
||||
flagk0=67584
|
||||
flagl0=25231376
|
||||
flagl0=92340240
|
||||
flagm0=0
|
||||
tflag0=0
|
||||
dflag0=0
|
||||
|
@ -61,6 +61,14 @@
|
||||
<p></p>
|
||||
<div class="rvps2"><table width="100%" border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="118" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hook Glide libs</span></p>
|
||||
</td>
|
||||
<td width="214" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">HOOKGLIDE</span></p>
|
||||
</td>
|
||||
<td width="1205" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Enables Glide API hooking. Not currently implemented.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="118" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hook DirectSound</span></p>
|
||||
</td>
|
||||
<td width="214" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">HOOKDIRECTSOUND</span></p>
|
||||
@ -68,14 +76,6 @@
|
||||
<td width="1205" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hooks DirectSound to avoid hardware exclusive access, allowing debugging, tracing, and future expansions.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="118" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hook Smackw32</span></p>
|
||||
</td>
|
||||
<td width="214" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">HOOKSMACKW32</span></p>
|
||||
</td>
|
||||
<td width="1205" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hooks Smackw32 to avoid tight looping, allowing debugging, tracing, and future expansions. When this flag is active, the SmackOpen call activates a thread that ensures that all frames are refreshed to the screen (similar to the "Auto Primary Surface Blit" option in </span><a class="rvts16" href="DirectDrawSurfacehandling.html">DirectDraw Surface Handling</a><span class="rvts6">).</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<p></p>
|
||||
|
@ -61,22 +61,6 @@
|
||||
<p></p>
|
||||
<div class="rvps2"><table width="100%" border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="197" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Simulate BW monitor</span></p>
|
||||
</td>
|
||||
<td width="161" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">BLACKWHITE</span></p>
|
||||
</td>
|
||||
<td width="1179" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Activate a tweak in the palette handling that causes all colors to be replaced with the corresponding grayscale color. It works only on 8BPP palettized games or while emulating 16BPP on a 32BPP desktop.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="197" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Set 16BPP RGB565 encoding</span></p>
|
||||
</td>
|
||||
<td width="161" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">USERGB565</span></p>
|
||||
</td>
|
||||
<td width="1179" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">By default, DxWnd emulates 16BPP color with RGB555 encoding. The option forces RGB565. This option only impacts the video in emulation mode and with 16BPP color depth.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="197" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Lock Sys Colors</span></p>
|
||||
</td>
|
||||
<td width="161" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">LOCKSYSCOLORS</span></p>
|
||||
|
@ -158,6 +158,48 @@
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Forces Hardware Emulation Layer.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Simulate BW monitor</span></p>
|
||||
</td>
|
||||
<td width="157" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">BLACKWHITE</span></p>
|
||||
</td>
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Activate a tweak in the palette handling that causes all colors to be replaced with the corresponding grayscale color. It works only on 8BPP palettized games or while emulating 16BPP on a 32BPP desktop.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Set 16BPP RGB565 encoding</span></p>
|
||||
</td>
|
||||
<td width="157" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">USERGB565</span></p>
|
||||
</td>
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">By default, DxWnd emulates 16BPP color with RGB555 encoding. The option forces RGB565. This option only impacts the video in emulation mode and with 16BPP color depth.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Make Backbuf attachable</span></p>
|
||||
</td>
|
||||
<td width="157" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">BACKBUFATTACH</span></p>
|
||||
</td>
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Alters the size specification of the created backbuffer so that it copes with the actual primary surface, so that it may be attachable to a ZBUFFER surface. It makes “Dave Mirra Freestyle BMX” playable.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Clear texture FourCC</span></p>
|
||||
</td>
|
||||
<td width="157" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">CLEARTEXTUREFOURCC</span></p>
|
||||
</td>
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Experimental flag for tweaking games. DxWnd lets you dump, edit, and replace all uncompressed game textures. Textures compressed with a FourCC codec can't be processed this way. </span></p>
|
||||
<p class="rvps2"><span class="rvts6">This flag forces FourCC capabilities OFF in the capability query and in texture surface creation. This forces the game to use plain, uncompressed bitmap textures that can be easily tweaked.</span></p>
|
||||
<p class="rvps2"><span class="rvts6">To avoid texture errors, you may need to adjust texture flags. This flag was introduced to allow uncompressed textures for the game "The Sting!".</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">No EXCLUSIVE coop level</span></p>
|
||||
</td>
|
||||
<td width="157" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">NODDEXCLUSIVEMODE</span></p>
|
||||
</td>
|
||||
<td width="1129" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">When running a program in windowed mode, DxWnd suppresses the DirectDraw </span><span class="rvts17">DDSCL_EXCLUSIVE</span><span class="rvts6"> mode in the </span><span class="rvts17">SetCooperativeLevel</span><span class="rvts6"> wrapper, since this mode is not allowed in windowed mode. However, if windowed mode is not requested, DxWnd leaves the cooperative level flags as they are, allowing </span><span class="rvts17">DDSCL_EXCLUSIVE</span><span class="rvts6"> cooperative mode if requested. This flag also suppresses the </span><span class="rvts17">DDSCL_EXCLUSIVE</span><span class="rvts6"> mode in fullscreen mode (that is, when </span><span class="rvts17">DDSCL_FULLSCREEN</span><span class="rvts6"> is set). This flag is required when running "Warhammer 40,000: Rites of War" in non-windowed fullscreen mode.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<p></p>
|
||||
|
@ -59,7 +59,7 @@
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_direct3d2.png"></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_direct3d3.png"></p>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
|
92
build/help/Direct3Dwindowtweaks.html
Normal file
92
build/help/Direct3Dwindowtweaks.html
Normal file
@ -0,0 +1,92 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>Direct3D window tweaks</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta name="generator" content="HelpNDoc Personal Edition 4.6.2.573">
|
||||
<meta name="keywords" content="">
|
||||
|
||||
<link type="text/css" rel="stylesheet" media="all" href="css/reset.css" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="css/base.css" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="css/hnd.css" />
|
||||
<!--[if lte IE 8]>
|
||||
<link type="text/css" rel="stylesheet" media="all" href="css/ielte8.css" />
|
||||
<![endif]-->
|
||||
<style type="text/css">
|
||||
#topic_header
|
||||
{
|
||||
background-color: #EFEFEF;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="js/jquery.min.js"></script>
|
||||
<script type="text/javascript" src="js/hnd.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
if (top.frames.length == 0)
|
||||
{
|
||||
var sTopicUrl = top.location.href.substring(top.location.href.lastIndexOf("/") + 1, top.location.href.length);
|
||||
top.location.href = "DxWnd.html?" + sTopicUrl;
|
||||
}
|
||||
else if (top && top.FrameTOC && top.FrameTOC.SelectTocItem)
|
||||
{
|
||||
top.FrameTOC.SelectTocItem("Direct3Dwindowtweaks");
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="topic_header">
|
||||
<div id="topic_header_content">
|
||||
<h1 id="topic_header_text">Direct3D window tweaks</h1>
|
||||
|
||||
<div id="topic_breadcrumb">
|
||||
<a href="Theconfigurationpanel.html">The configuration panel</a> ›› <a href="Direct3D.html">Direct3D</a> ›› </div>
|
||||
</div>
|
||||
<div id="topic_header_nav">
|
||||
<a href="Direct3D.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="Texturehandling.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="SwapEffect.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<div class="rvps2"><table width="100%" border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="200" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Fix Windows Frame in D3D</span></p>
|
||||
</td>
|
||||
<td width="112" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">FIXD3DFRAME</span></p>
|
||||
</td>
|
||||
<td width="1225" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Tries to prevent D3D from rendering on the whole window surface including the window border. It activates a small trick that cause the program to render to a child modal surface within the main window borders.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="200" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Don't move D3D rendering window</span></p>
|
||||
</td>
|
||||
<td width="112" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">NOWINDOWMOVE</span></p>
|
||||
</td>
|
||||
<td width="1225" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Do not try to update the window position and size on D3D rendering. In some cases, the window may be movable but the rendering area does not move with it. In this case, avoid moving the window at all. It is an experimental feature and doesn't always work.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
<div id="topic_footer">
|
||||
|
||||
<div id="topic_footer_content">
|
||||
Copyright © 2016 by GHO. All Rights Reserved.</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
@ -61,14 +61,6 @@
|
||||
<p></p>
|
||||
<div class="rvps2"><table border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Auto primary surface refresh</span></p>
|
||||
</td>
|
||||
<td width="152" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">AUTOREFRESH</span></p>
|
||||
</td>
|
||||
<td width="1134" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Some badly programmed games (namely the "Cossaks" series) don't follow the specification to blit changes on screen, they just get the primary surface memory address and keep writing there. The option forces a periodic blitting of the primary surface on screen even if the game doesn't request it. You want a second example? It has not been easy to find, but "Crush! Deluxe" suffers the same problem.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">switch VIDEO to SYSTEM on fail</span></p>
|
||||
</td>
|
||||
<td width="152" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">VIDEOTOSYSTEMMEM</span></p>
|
||||
@ -117,7 +109,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Palette update don't blit</span></p>
|
||||
<td width="247" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Palette update don't Blit</span></p>
|
||||
</td>
|
||||
<td width="152" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">NOPALETTEUPDATE</span></p>
|
||||
</td>
|
||||
|
@ -59,7 +59,7 @@
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_directx1.png"></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_directx3.png"></p>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
|
@ -59,7 +59,7 @@
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_directx2.png"></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_directx23.png"></p>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
|
@ -51,7 +51,7 @@
|
||||
|
||||
<a href="Timing.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="TimeStretching.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="Systemspeed.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
@ -59,7 +59,7 @@
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_hook2.png"></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_hook3.png"></p>
|
||||
<p class="rvps2"><span class="rvts6"><br/></span></p>
|
||||
<div class="rvps2"><table border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
|
@ -49,7 +49,7 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Theconfigurationpanel.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="logoptions.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="loggedinfo.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="GDI.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
|
@ -49,7 +49,7 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Theconfigurationpanel.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="Systemspeed.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="TimeStretching.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="dxwndlogs.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
|
@ -61,7 +61,7 @@
|
||||
<p></p>
|
||||
<div class="rvps2"><table width="100%" border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="211" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Message processing</span></p>
|
||||
<td width="211" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Process all messages</span></p>
|
||||
</td>
|
||||
<td width="176" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">MESSAGEPROC</span></p>
|
||||
</td>
|
||||
@ -69,11 +69,11 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="211" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Filter offending messages</span></p>
|
||||
<td width="211" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Skip offending messages</span></p>
|
||||
</td>
|
||||
<td width="176" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">FILTERMESSAGES</span></p>
|
||||
</td>
|
||||
<td width="1150" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">In theory, a fullscreen message should not expect several messages that are impossible to receive, such as border sizing, taskbar events and so forth. Some programs are not properly coded to react to such "impossible" messages and may show falfuncions. This flag causes potentially harmful and meaningless messages to be suppressed.</span></p>
|
||||
<td width="1150" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">In theory, a fullscreen message should not expect several messages that are impossible to receive, such as border sizing, taskbar events, and so forth. Some programs are not properly coded to react to such "impossible" messages and may show malfunctions. This flag causes potentially harmful and meaningless messages to be suppressed.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
|
@ -65,7 +65,7 @@
|
||||
</td>
|
||||
<td width="156" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">HOOKSMACKW32</span></p>
|
||||
</td>
|
||||
<td width="1271" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Enables Smack API hooking.</span></p>
|
||||
<td width="1271" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hooks Smackw32 to avoid tight looping, allowing debugging, tracing, and future expansions. When this flag is active, the SmackOpen call activates a thread that ensures that all frames are refreshed to the screen (similar to the "Auto Primary Surface Blit" option in </span><a class="rvts16" href="DirectDrawSurfacehandling.html">DirectDraw Surface Handling</a><span class="rvts6">).</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
|
@ -49,7 +49,7 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Direct3D.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="Texturehandling.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="Direct3Dwindowtweaks.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="3Deffects1.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
|
@ -49,9 +49,9 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Timing.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="TimeStretching.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="FrameperSecond.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="Logs.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="TimeStretching.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
@ -51,7 +51,7 @@
|
||||
|
||||
<a href="Direct3Dtweaks.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="SwapEffect.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="Direct3Dwindowtweaks.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
@ -49,9 +49,9 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Timing.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="FrameperSecond.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="Systemspeed.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="Systemspeed.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="Logs.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
@ -59,7 +59,7 @@
|
||||
<div id="topic_content">
|
||||
|
||||
<p></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_video3.png"></p>
|
||||
<p class="rvps2"><img alt="" style="padding : 1px;" src="lib/dxwnd_configuration_video4.png"></p>
|
||||
<p></p>
|
||||
</div>
|
||||
|
||||
|
@ -77,14 +77,6 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Lock win coordinates</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">LOCKWINPOS</span></p>
|
||||
</td>
|
||||
<td width="1183" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Intercepts messages and calls that the program makes to itself to change its own window coordinates. This prevents you from changing the game window's position and size.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Lock win style</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">LOCKWINSTYLE</span></p>
|
||||
@ -141,30 +133,6 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Wallpaper mode</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">WALLPAPERMODE</span></p>
|
||||
</td>
|
||||
<td width="1183" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Experimental – forces the program's Z-order to the lowest level so that it runs below any other task, behaving like an active wallpaper.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Fix window frame in D3D</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">FIXD3DFRAME</span></p>
|
||||
</td>
|
||||
<td width="1183" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Tries to prevent D3D from rendering on the whole window surface including the window border. It activates a small trick that cause the program to render to a child modal surface within the main window borders.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Don't move D3D rendering window</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">NOWINDOWMOVE</span></p>
|
||||
</td>
|
||||
<td width="1183" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Do not try to update the window position and size on D3D rendering. In some cases, the window may be movable but the rendering area does not move with it. In this case, avoid moving the window at all. It is an experimental feature and doesn't always work.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="212" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hide Taskbar</span></p>
|
||||
</td>
|
||||
<td width="141" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">HIDETASKBAR</span></p>
|
||||
|
@ -51,7 +51,7 @@
|
||||
|
||||
<a href="Logs.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="loggedinfo.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="logoptions.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
File diff suppressed because one or more lines are too long
BIN
build/help/lib/dxwnd_configuration_direct3d3.png
Normal file
BIN
build/help/lib/dxwnd_configuration_direct3d3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
BIN
build/help/lib/dxwnd_configuration_directx23.png
Normal file
BIN
build/help/lib/dxwnd_configuration_directx23.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
BIN
build/help/lib/dxwnd_configuration_directx3.png
Normal file
BIN
build/help/lib/dxwnd_configuration_directx3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
BIN
build/help/lib/dxwnd_configuration_hook3.png
Normal file
BIN
build/help/lib/dxwnd_configuration_hook3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
BIN
build/help/lib/dxwnd_configuration_video4.png
Normal file
BIN
build/help/lib/dxwnd_configuration_video4.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
@ -49,9 +49,9 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Logs.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="dxwndlogs.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="logoptions.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="logoptions.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="Libs.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
@ -61,75 +61,75 @@
|
||||
<p></p>
|
||||
<div class="rvps2"><table border="1" cellpadding="1" cellspacing="2" style="border-color: #000000; border-style: solid; border-spacing: 2px;">
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">DxWnd hacks</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">DxWnd hacks</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDXWINTRACE</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDXWINTRACE</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all significant events that DxWnd performs to run the fullscreen program in windowed mode.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all significant events that DxWnd performs to run the fullscreen program in windowed mode.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">DirectDraw trace</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">DirectDraw trace</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDDRAWTRACE</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDDRAWTRACE</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs DirectDraw operations.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs DirectDraw operations.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Direct3D trace</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Direct3D trace</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTD3DTRACE</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTD3DTRACE</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs Direct3D operations.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs Direct3D operations.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Win Events</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Win Events</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTWINMESSAGES</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTWINMESSAGES</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all Window messages intercepted in the application's queues, along with events that are generated or processed internally by the Peek/GetMessage APIs.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all Window messages intercepted in the application's queues, along with events that are generated or processed internally by the Peek/GetMessage APIs.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Cursor / Mouse</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Cursor/Mouse</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTCURSORTRACE</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTCURSORTRACE</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all cursor- or mouse-related operations. Note that some old games don't mind the possibility of concurrent use and perform many mouse/cursor operations in a short period of time. This type of log can quickly grow quite large. In this case, consider slowing down the program with the “Slow Down” flag.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs all cursor- or mouse-related operations. Note that some old games don't mind the possibility of concurrent use and perform many mouse/cursor operations in a short period of time. This type of log can quickly grow quite large. In this case, consider slowing down the program with the “Slow Down” flag.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Import Table</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Import Table</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTIMPORTTABLE</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTIMPORTTABLE</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs the Import Table as seen by DxWnd. This can be quite useful to analyze and troubleshoot uncommon executables (e.g. when copy protections are applied).</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs the Import Table as seen by DxWnd. This can be quite useful to analyze and troubleshoot uncommon executables (e.g. when copy protections are applied).</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Debug</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Debug</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDEBUG</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTDEBUG</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Writes some more detailed information for diagnostic purposes.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Writes some more detailed information for diagnostic purposes.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Registry op.</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Registry op.</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTREGISTRY</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">OUTREGISTRY</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs registry operations.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs registry operations.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
<td width="232" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hook op.</span></p>
|
||||
<td width="114" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Hook op.</span></p>
|
||||
</td>
|
||||
<td width="124" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">TRACEHOOKS</span></p>
|
||||
<td width="142" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts17">TRACEHOOKS</span></p>
|
||||
</td>
|
||||
<td width="1177" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs hooking operations.</span></p>
|
||||
<td width="1277" style="border-color: #000000; border-style: solid; padding: 1px;"><p class="rvps2"><span class="rvts6">Logs hooking operations.</span></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -49,9 +49,9 @@
|
||||
<div id="topic_header_nav">
|
||||
<a href="Logs.html"><img src="img/arrow_up.png" alt="Parent"/></a>
|
||||
|
||||
<a href="loggedinfo.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
<a href="dxwndlogs.html"><img src="img/arrow_left.png" alt="Previous"/></a>
|
||||
|
||||
<a href="Libs.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
<a href="loggedinfo.html"><img src="img/arrow_right.png" alt="Next"/></a>
|
||||
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
|
@ -564,6 +564,12 @@
|
||||
target="FrameMain">
|
||||
Texture handling</a>
|
||||
|
||||
</li><li class="" id="Direct3Dwindowtweaks" data="">
|
||||
<a
|
||||
href="Direct3Dwindowtweaks.html"
|
||||
target="FrameMain">
|
||||
Direct3D window tweaks</a>
|
||||
|
||||
</li><li class="" id="SwapEffect" data="">
|
||||
<a
|
||||
href="SwapEffect.html"
|
||||
@ -588,18 +594,18 @@
|
||||
target="FrameMain">
|
||||
Frame per Second</a>
|
||||
|
||||
</li><li class="" id="TimeStretching" data="">
|
||||
<a
|
||||
href="TimeStretching.html"
|
||||
target="FrameMain">
|
||||
Time Stretching</a>
|
||||
|
||||
</li><li class="" id="Systemspeed" data="">
|
||||
<a
|
||||
href="Systemspeed.html"
|
||||
target="FrameMain">
|
||||
System speed</a>
|
||||
|
||||
</li><li class="" id="TimeStretching" data="">
|
||||
<a
|
||||
href="TimeStretching.html"
|
||||
target="FrameMain">
|
||||
Time Stretching</a>
|
||||
|
||||
</li></ul></li><li class="folder" id="Logs" data="">
|
||||
<a
|
||||
href="Logs.html"
|
||||
@ -612,18 +618,18 @@
|
||||
target="FrameMain">
|
||||
dxwnd logs</a>
|
||||
|
||||
</li><li class="" id="loggedinfo" data="">
|
||||
<a
|
||||
href="loggedinfo.html"
|
||||
target="FrameMain">
|
||||
logged info</a>
|
||||
|
||||
</li><li class="" id="logoptions" data="">
|
||||
<a
|
||||
href="logoptions.html"
|
||||
target="FrameMain">
|
||||
log options</a>
|
||||
|
||||
</li><li class="" id="loggedinfo" data="">
|
||||
<a
|
||||
href="loggedinfo.html"
|
||||
target="FrameMain">
|
||||
logged info</a>
|
||||
|
||||
</li></ul></li><li class="folder" id="Libs" data="">
|
||||
<a
|
||||
href="Libs.html"
|
||||
|
@ -1349,6 +1349,11 @@ fix: CreateDIBSection wrapper log messages
|
||||
fix: PREVENTMAXIMIZE window size checks: should avoid size bigger than initial size, bugged coding inhibited any growth.
|
||||
fix: GUI setting of execution folder when running "Launcher" task.
|
||||
|
||||
v2.03.97.rc1:
|
||||
v2.03.97.rc1/fx1-4:
|
||||
fix: emulation of proper ddraw surface capabilities in GetSurfaceDesc() and GetCaps() methods. Seems to cope with needs of most (all?) games.
|
||||
fix: recovered handling of WM_ERASEBKGND message. Fixes missing backgrounds in "Adrenix" and "Adrenix 3D" games.
|
||||
fix: cleaned up and unified capability handling in DirectDrawSurface GetCaps and GetSurfaceDesc methods
|
||||
add: warning message and update when running a program with non updated virtual registry settings.
|
||||
fix: LoadLibrary wrappers failed to clear the recursion flag, stopping the hook of new modules after a recursion case.
|
||||
add: warning messages when closing DxWnd and possibility to cancel the operation
|
||||
add: "Warn on exit" global flag to always force the warning message on exit
|
201
dll/ddraw.cpp
201
dll/ddraw.cpp
@ -5591,25 +5591,16 @@ static HRESULT WINAPI extGetCapsS(int dxInterface, GetCapsS_Type pGetCapsS, LPDI
|
||||
// v2.03.90: "Galapagos" fix - if there's a DDSCAPS_SYSTEMMEMORY or DDSCAPS_VIDEOMEMORY spec, let it be.
|
||||
// v2.03.97: "Galapagos" fix erased.
|
||||
if (IsZBuf) {
|
||||
DWORD dwCaps;
|
||||
IsFixed=TRUE;
|
||||
dwCaps = dxwcdb.GetCaps(lpdds);
|
||||
DWORD dwCaps = dxwcdb.GetCaps(lpdds);
|
||||
// beware! the ZBUFFER surface could have never been registered!
|
||||
// in this case better keep the original capabilities (or adapt to the primary/backbuffer ones?)
|
||||
if(dwCaps) {
|
||||
IsFixed=TRUE;
|
||||
sLabel="(REG.ZBUFFER)";
|
||||
caps->dwCaps = dwCaps;
|
||||
}
|
||||
}
|
||||
|
||||
// v2.03.78: fix for "Gothik 2": pretend that 3DDEVICE surface are ALWAYS in video memory
|
||||
if (caps->dwCaps & DDSCAPS_3DDEVICE){
|
||||
IsFixed=TRUE;
|
||||
sLabel="(3DDEVICE)";
|
||||
caps->dwCaps |= (DDSCAPS_VIDEOMEMORY|DDSCAPS_LOCALVIDMEM);
|
||||
caps->dwCaps &= ~DDSCAPS_SYSTEMMEMORY;
|
||||
}
|
||||
|
||||
if(IsFixed) OutTraceDW("GetCaps(S%d): lpdds=%x FIXED %s caps=%x(%s)\n", dxInterface, lpdds, sLabel, caps->dwCaps, ExplainDDSCaps(caps->dwCaps));
|
||||
return res;
|
||||
}
|
||||
@ -5625,6 +5616,98 @@ HRESULT WINAPI extGetCaps4S(LPDIRECTDRAWSURFACE lpdds, LPDDSCAPS2 caps)
|
||||
HRESULT WINAPI extGetCaps7S(LPDIRECTDRAWSURFACE lpdds, LPDDSCAPS2 caps)
|
||||
{ return extGetCapsS(7, (GetCapsS_Type)pGetCaps7S, lpdds, (LPDDSCAPS)caps); }
|
||||
|
||||
static HRESULT WINAPI extGetSurfaceDesc(int dxversion, GetSurfaceDesc_Type pGetSurfaceDesc, LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{
|
||||
HRESULT res;
|
||||
BOOL IsPrim, IsBack, IsZBuf, IsFixed;
|
||||
IsPrim=dxwss.IsAPrimarySurface(lpdds);
|
||||
IsBack=dxwss.IsABackBufferSurface(lpdds);
|
||||
IsFixed=FALSE;
|
||||
char *sLabel;
|
||||
|
||||
if (!pGetSurfaceDesc) {
|
||||
OutTraceE("GetSurfaceDesc: ERROR no hooked function\n");
|
||||
return DDERR_INVALIDPARAMS;
|
||||
}
|
||||
|
||||
int prevsize = lpddsd->dwSize;
|
||||
switch(dxversion){
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
lpddsd->dwSize = sizeof(DDSURFACEDESC);
|
||||
break;
|
||||
case 4:
|
||||
case 7:
|
||||
lpddsd->dwSize = sizeof(DDSURFACEDESC2);
|
||||
break;
|
||||
}
|
||||
if(prevsize != lpddsd->dwSize) OutTraceDW("GetSurfaceDesc(%d): FIXED dwSize=%d->%d\n", dxversion, prevsize, lpddsd->dwSize);
|
||||
|
||||
res=(*pGetSurfaceDesc)(lpdds, lpddsd);
|
||||
if(res) {
|
||||
OutTraceE("GetSurfaceDesc(%d): ERROR err=%x(%s)\n", dxversion, res, ExplainDDError(res));
|
||||
return res;
|
||||
}
|
||||
IsZBuf=(lpddsd->ddsCaps.dwCaps & DDSCAPS_ZBUFFER);
|
||||
sLabel="";
|
||||
if(IsPrim) sLabel="(PRIM)";
|
||||
if(IsBack) sLabel="(BACK)";
|
||||
if(IsZBuf) sLabel="(ZBUFFER)";
|
||||
|
||||
OutTraceDDRAW("GetSurfaceDesc(%d): lpdds=%x%s %s\n", dxversion, lpdds, sLabel, LogSurfaceAttributes(lpddsd, "GetSurfaceDesc", __LINE__));
|
||||
|
||||
if (IsPrim) {
|
||||
IsFixed=TRUE;
|
||||
if (dxw.dwFlags1 & EMULATESURFACE) lpddsd->ddpfPixelFormat = dxw.VirtualPixelFormat;
|
||||
lpddsd->ddsCaps.dwCaps |= DDSD_Prim.ddsCaps.dwCaps;
|
||||
lpddsd->ddsCaps.dwCaps |= (DDSCAPS_PRIMARYSURFACE|DDSCAPS_FLIP|DDSCAPS_FRONTBUFFER|DDSCAPS_VIDEOMEMORY|DDSCAPS_VISIBLE); // primary surfaces must be this way
|
||||
lpddsd->ddsCaps.dwCaps &= ~(DDSCAPS_SYSTEMMEMORY|DDSCAPS_OFFSCREENPLAIN); // primary surfaces can't be this way
|
||||
if(lpddsd->ddsCaps.dwCaps & DDSCAPS_3DDEVICE) lpddsd->ddsCaps.dwCaps |= DDSCAPS_LOCALVIDMEM;
|
||||
lpddsd->dwBackBufferCount=DDSD_Prim.dwBackBufferCount;
|
||||
lpddsd->dwHeight=dxw.GetScreenHeight();
|
||||
lpddsd->dwWidth=dxw.GetScreenWidth();
|
||||
}
|
||||
|
||||
if (IsBack) {
|
||||
IsFixed=TRUE;
|
||||
// flags that backbuffer surfaces must have set
|
||||
lpddsd->ddsCaps.dwCaps |= (DDSCAPS_BACKBUFFER|DDSCAPS_VIDEOMEMORY|DDSCAPS_FLIP|DDSCAPS_LOCALVIDMEM);;
|
||||
lpddsd->ddsCaps.dwCaps &= ~(DDSCAPS_SYSTEMMEMORY|DDSCAPS_OFFSCREENPLAIN); // backbuffer surfaces can't be this way
|
||||
if(lpddsd->ddsCaps.dwCaps & DDSCAPS_3DDEVICE) lpddsd->ddsCaps.dwCaps |= DDSCAPS_LOCALVIDMEM;
|
||||
}
|
||||
|
||||
// v2.03.82: fixed logic for ZBUFFER capabilities: "The Creed" may have two, in SYSTEMMEMORY or in VIDEOMEMORY ...
|
||||
if(IsZBuf) {
|
||||
DWORD dwCaps = dxwcdb.GetCaps(lpdds);
|
||||
if(dwCaps) {
|
||||
IsFixed=TRUE;
|
||||
sLabel="(REG.ZBUFFER)";
|
||||
lpddsd->ddsCaps.dwCaps = dwCaps;
|
||||
}
|
||||
}
|
||||
|
||||
if(IsFixed){
|
||||
OutTraceDW("GetSurfaceDesc: FIXED lpdds=%x %s\n", lpdds, LogSurfaceAttributes(lpddsd, sLabel, __LINE__));
|
||||
}
|
||||
|
||||
return DD_OK;
|
||||
}
|
||||
|
||||
// Beware: despite the surface version, some game (The Sims!!!) intentionally uses a different dwSize, so that
|
||||
// you shouldn't reset the value
|
||||
|
||||
HRESULT WINAPI extGetSurfaceDesc1(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(1, pGetSurfaceDesc1, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc2(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(2, pGetSurfaceDesc2, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc3(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(3, pGetSurfaceDesc3, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc4(LPDIRECTDRAWSURFACE2 lpdds, LPDDSURFACEDESC2 lpddsd)
|
||||
{ return extGetSurfaceDesc(4, (GetSurfaceDesc_Type)pGetSurfaceDesc4, (LPDIRECTDRAWSURFACE)lpdds, (LPDDSURFACEDESC)lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc7(LPDIRECTDRAWSURFACE2 lpdds, LPDDSURFACEDESC2 lpddsd)
|
||||
{ return extGetSurfaceDesc(7, (GetSurfaceDesc_Type)pGetSurfaceDesc7, (LPDIRECTDRAWSURFACE)lpdds, (LPDDSURFACEDESC)lpddsd); }
|
||||
|
||||
static ULONG WINAPI extReleaseD(int dxversion, ReleaseD_Type pReleaseD, LPDIRECTDRAW lpdd)
|
||||
{
|
||||
ULONG ActualRef;
|
||||
@ -5782,102 +5865,6 @@ HRESULT WINAPI extSetHWnd(LPDIRECTDRAWCLIPPER lpddClip, DWORD w, HWND hwnd)
|
||||
return res;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI extGetSurfaceDesc(int dxversion, GetSurfaceDesc_Type pGetSurfaceDesc, LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{
|
||||
HRESULT res;
|
||||
BOOL IsPrim, IsBack, IsZBuf, IsFixed;
|
||||
IsPrim=dxwss.IsAPrimarySurface(lpdds);
|
||||
IsBack=dxwss.IsABackBufferSurface(lpdds);
|
||||
IsFixed=FALSE;
|
||||
char *sLabel;
|
||||
|
||||
if (!pGetSurfaceDesc) {
|
||||
OutTraceE("GetSurfaceDesc: ERROR no hooked function\n");
|
||||
return DDERR_INVALIDPARAMS;
|
||||
}
|
||||
|
||||
#define FIXSURFACEDESCSIZE TRUE
|
||||
if(FIXSURFACEDESCSIZE){
|
||||
int prevsize = lpddsd->dwSize;
|
||||
switch(dxversion){
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
lpddsd->dwSize = sizeof(DDSURFACEDESC);
|
||||
break;
|
||||
case 4:
|
||||
case 7:
|
||||
lpddsd->dwSize = sizeof(DDSURFACEDESC2);
|
||||
break;
|
||||
}
|
||||
if(prevsize != lpddsd->dwSize) OutTraceDW("GetSurfaceDesc(%d): FIXED dwSize=%d->%d\n", dxversion, prevsize, lpddsd->dwSize);
|
||||
}
|
||||
|
||||
res=(*pGetSurfaceDesc)(lpdds, lpddsd);
|
||||
if(res) {
|
||||
OutTraceE("GetSurfaceDesc(%d): ERROR err=%x(%s)\n", dxversion, res, ExplainDDError(res));
|
||||
return res;
|
||||
}
|
||||
IsZBuf=(lpddsd->ddsCaps.dwCaps & DDSCAPS_ZBUFFER);
|
||||
sLabel="";
|
||||
if(IsPrim) sLabel="(PRIM)";
|
||||
if(IsBack) sLabel="(BACK)";
|
||||
if(IsZBuf) sLabel="(ZBUFFER)";
|
||||
|
||||
OutTraceDDRAW("GetSurfaceDesc(%d): lpdds=%x%s %s\n", dxversion, lpdds, sLabel, LogSurfaceAttributes(lpddsd, "GetSurfaceDesc", __LINE__));
|
||||
|
||||
if (IsPrim) {
|
||||
IsFixed=TRUE;
|
||||
if (dxw.dwFlags1 & EMULATESURFACE) lpddsd->ddpfPixelFormat = dxw.VirtualPixelFormat;
|
||||
lpddsd->ddsCaps.dwCaps |= DDSD_Prim.ddsCaps.dwCaps;
|
||||
lpddsd->ddsCaps.dwCaps |= (DDSCAPS_PRIMARYSURFACE|DDSCAPS_FLIP|DDSCAPS_FRONTBUFFER|DDSCAPS_VIDEOMEMORY|DDSCAPS_VISIBLE); // primary surfaces must be this way
|
||||
lpddsd->ddsCaps.dwCaps &= ~(DDSCAPS_SYSTEMMEMORY|DDSCAPS_OFFSCREENPLAIN); // primary surfaces can't be this way
|
||||
if(lpddsd->ddsCaps.dwCaps & DDSCAPS_3DDEVICE) lpddsd->ddsCaps.dwCaps |= DDSCAPS_LOCALVIDMEM;
|
||||
lpddsd->dwBackBufferCount=DDSD_Prim.dwBackBufferCount;
|
||||
lpddsd->dwHeight=dxw.GetScreenHeight();
|
||||
lpddsd->dwWidth=dxw.GetScreenWidth();
|
||||
}
|
||||
|
||||
if (IsBack) {
|
||||
IsFixed=TRUE;
|
||||
// flags that backbuffer surfaces must have set
|
||||
lpddsd->ddsCaps.dwCaps |= (DDSCAPS_3DDEVICE|DDSCAPS_BACKBUFFER|DDSCAPS_VIDEOMEMORY|DDSCAPS_LOCALVIDMEM);
|
||||
// flags that backbuffer surfaces can't have set
|
||||
lpddsd->ddsCaps.dwCaps &= ~(DDSCAPS_SYSTEMMEMORY|DDSCAPS_OFFSCREENPLAIN|DDSCAPS_COMPLEX|DDSCAPS_FLIP);
|
||||
}
|
||||
|
||||
// v2.03.82: fixed logic for ZBUFFER capabilities: "The Creed" may have two, in SYSTEMMEMORY or in VIDEOMEMORY ...
|
||||
if(IsZBuf) {
|
||||
DWORD dwCaps;
|
||||
IsFixed=TRUE;
|
||||
dwCaps = dxwcdb.GetCaps(lpdds);
|
||||
if(dwCaps) {
|
||||
sLabel="(REG.ZBUFFER)";
|
||||
lpddsd->ddsCaps.dwCaps = dwCaps;
|
||||
}
|
||||
}
|
||||
|
||||
if(IsFixed){
|
||||
OutTraceDW("GetSurfaceDesc: FIXED lpdds=%x %s\n", lpdds, LogSurfaceAttributes(lpddsd, sLabel, __LINE__));
|
||||
}
|
||||
|
||||
return DD_OK;
|
||||
}
|
||||
|
||||
// Beware: despite the surface version, some game (The Sims!!!) intentionally uses a different dwSize, so that
|
||||
// you shouldn't reset the value
|
||||
|
||||
HRESULT WINAPI extGetSurfaceDesc1(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(1, pGetSurfaceDesc1, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc2(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(2, pGetSurfaceDesc2, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc3(LPDIRECTDRAWSURFACE lpdds, LPDDSURFACEDESC lpddsd)
|
||||
{ return extGetSurfaceDesc(3, pGetSurfaceDesc3, lpdds, lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc4(LPDIRECTDRAWSURFACE2 lpdds, LPDDSURFACEDESC2 lpddsd)
|
||||
{ return extGetSurfaceDesc(4, (GetSurfaceDesc_Type)pGetSurfaceDesc4, (LPDIRECTDRAWSURFACE)lpdds, (LPDDSURFACEDESC)lpddsd); }
|
||||
HRESULT WINAPI extGetSurfaceDesc7(LPDIRECTDRAWSURFACE2 lpdds, LPDDSURFACEDESC2 lpddsd)
|
||||
{ return extGetSurfaceDesc(7, (GetSurfaceDesc_Type)pGetSurfaceDesc7, (LPDIRECTDRAWSURFACE)lpdds, (LPDDSURFACEDESC)lpddsd); }
|
||||
|
||||
HRESULT WINAPI extReleaseP(LPDIRECTDRAWPALETTE lpddPalette)
|
||||
{
|
||||
ULONG ref;
|
||||
|
@ -27,7 +27,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "TlHelp32.h"
|
||||
|
||||
#define VERSION "2.03.97.rc1"
|
||||
#define VERSION "2.03.97.fx2"
|
||||
|
||||
#define DDTHREADLOCK 1
|
||||
//#define LOCKTHREADS
|
||||
|
Binary file not shown.
65
dll/dxwnd.vs2008.vcproj.gho-PC.gho.user
Normal file
65
dll/dxwnd.vs2008.vcproj.gho-PC.gho.user
Normal file
@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="9.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command=""
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="GHO-PC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command=""
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="GHO-PC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
@ -538,7 +538,11 @@ HMODULE WINAPI LoadLibraryExWrapper(LPVOID lpFileName, BOOL IsWidechar, HANDLE h
|
||||
libhandle=(*pLoadLibraryExA)((LPCTSTR)lpFileName, hFile, dwFlags);
|
||||
}
|
||||
|
||||
if(Recursed) return libhandle;
|
||||
if(Recursed) {
|
||||
// v2.03.97.fx2: clear Recursed flag when exiting!
|
||||
Recursed = FALSE;
|
||||
return libhandle;
|
||||
}
|
||||
Recursed = TRUE;
|
||||
|
||||
// found in "The Rage" (1996): loading a module with relative path after a SetCurrentDirectory may fail, though
|
||||
|
@ -9,6 +9,7 @@
|
||||
extern char gInitPath[];
|
||||
extern BOOL gbDebug;
|
||||
extern BOOL gAutoHideMode;
|
||||
extern BOOL gWarnOnExit;
|
||||
|
||||
Key_Type FKeys[] = {
|
||||
{IDC_KEY_LABEL1, "Time toggle", IDC_KEY_COMBO1, "timetoggle", 0},
|
||||
@ -84,6 +85,7 @@ CGlobalSettings::CGlobalSettings(CWnd* pParent /*=NULL*/)
|
||||
m_CheckAdminRights = GetPrivateProfileInt("window", "checkadmin", 0, gInitPath);
|
||||
m_NameFromFolder = GetPrivateProfileInt("window", "namefromfolder", 0, gInitPath);
|
||||
m_MultiHooks = GetPrivateProfileInt("window", "multiprocesshook", 0, gInitPath);
|
||||
m_WarnOnExit = GetPrivateProfileInt("window", "warnonexit", 0, gInitPath);
|
||||
m_UpdatePaths = GetPrivateProfileInt("window", "updatepaths", 1, gInitPath);
|
||||
// texture limits
|
||||
m_TexMinX = GetPrivateProfileInt("texture", "MinTexX", 0, gInitPath);
|
||||
@ -115,6 +117,7 @@ void CGlobalSettings::DoDataExchange(CDataExchange* pDX)
|
||||
DDX_Check(pDX, IDC_CONFIG_CHECKADMIN, m_CheckAdminRights);
|
||||
DDX_Check(pDX, IDC_CONFIG_NAMEFROMFOLDER, m_NameFromFolder);
|
||||
DDX_Check(pDX, IDC_CONFIG_MULTIHOOKS, m_MultiHooks);
|
||||
DDX_Check(pDX, IDC_CONFIG_WARNONEXIT, m_WarnOnExit);
|
||||
DDX_Check(pDX, IDC_CONFIG_SAVEPATHS, m_UpdatePaths);
|
||||
DDX_Text (pDX, IDC_TEX_MINX, m_TexMinX);
|
||||
DDX_Text (pDX, IDC_TEX_MINY, m_TexMinY);
|
||||
@ -187,6 +190,8 @@ void CGlobalSettings::OnOK()
|
||||
WritePrivateProfileString("window", "namefromfolder", val, gInitPath);
|
||||
sprintf_s(val, sizeof(val), "%i", m_MultiHooks);
|
||||
WritePrivateProfileString("window", "multiprocesshook", val, gInitPath);
|
||||
sprintf_s(val, sizeof(val), "%i", m_WarnOnExit);
|
||||
WritePrivateProfileString("window", "warnonexit", val, gInitPath);
|
||||
sprintf_s(val, sizeof(val), "%i", m_UpdatePaths);
|
||||
WritePrivateProfileString("window", "updatepaths", val, gInitPath);
|
||||
// texture limits
|
||||
@ -241,4 +246,5 @@ void CGlobalSettings::OnOK()
|
||||
//(CDxwndhostView *)(this->GetParent())->UpdateHotKeys();
|
||||
gbDebug = m_DebugMode;
|
||||
gAutoHideMode = m_AutoHideMode;
|
||||
gWarnOnExit = m_WarnOnExit;
|
||||
}
|
||||
|
@ -37,6 +37,7 @@ protected:
|
||||
BOOL m_CheckAdminRights;
|
||||
BOOL m_NameFromFolder;
|
||||
BOOL m_MultiHooks;
|
||||
BOOL m_WarnOnExit;
|
||||
int m_TexMinX;
|
||||
int m_TexMinY;
|
||||
int m_TexMaxX;
|
||||
|
@ -43,6 +43,7 @@ BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
|
||||
ON_WM_CREATE()
|
||||
ON_WM_MOVE()
|
||||
ON_WM_SIZE()
|
||||
ON_WM_CLOSE()
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
@ -162,6 +163,27 @@ void CMainFrame::OnSize(UINT nType, int cx, int cy)
|
||||
this->cx=cx;
|
||||
this->cy=cy;
|
||||
}
|
||||
|
||||
void CMainFrame::OnClose()
|
||||
{
|
||||
extern BOOL gTransientMode;
|
||||
extern BOOL gQuietMode;
|
||||
extern BOOL gWarnOnExit;
|
||||
if(gTransientMode || gQuietMode) CFrameWnd::OnClose();
|
||||
|
||||
// check for running apps ....
|
||||
if (GetHookStatus(NULL)==DXW_RUNNING){
|
||||
if (MessageBoxLang(DXW_STRING_EXIT_BUSY, DXW_STRING_WARNING, MB_OKCANCEL | MB_ICONQUESTION)!=IDOK) return;
|
||||
CFrameWnd::OnClose();
|
||||
}
|
||||
|
||||
if(gWarnOnExit){
|
||||
if(MessageBoxLang(DXW_STRING_EXIT_OK, DXW_STRING_WARNING, MB_OKCANCEL)==IDOK)
|
||||
CFrameWnd::OnClose();
|
||||
}
|
||||
else
|
||||
CFrameWnd::OnClose();
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CMainFrame Diagnostic Class
|
||||
|
@ -43,6 +43,7 @@ protected:
|
||||
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
|
||||
afx_msg void OnMove(int, int);
|
||||
afx_msg void OnSize(UINT, int, int);
|
||||
afx_msg void OnClose(void);
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
@ -45,6 +45,7 @@ static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
extern BOOL gbDebug;
|
||||
extern BOOL gWarnOnExit;
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CDXTabCtrl
|
||||
|
Binary file not shown.
@ -35,6 +35,7 @@ END_MESSAGE_MAP()
|
||||
UINT m_StartToTray = FALSE;
|
||||
UINT m_InitialState = DXW_ACTIVE;
|
||||
BOOL gbDebug = FALSE;
|
||||
BOOL gWarnOnExit = FALSE;
|
||||
BOOL gTransientMode = FALSE;
|
||||
BOOL gAutoHideMode = FALSE;
|
||||
BOOL gQuietMode = FALSE;
|
||||
@ -170,6 +171,7 @@ BOOL CDxwndhostApp::InitInstance()
|
||||
|
||||
if(!gbDebug) gbDebug = GetPrivateProfileInt("window", "debug", 0, InitPath); // debug flag set from config file
|
||||
if(!gAutoHideMode) gAutoHideMode = GetPrivateProfileInt("window", "autohide", 0, InitPath); // debug flag set from config file
|
||||
gWarnOnExit = GetPrivateProfileInt("window", "warnonexit", 0, InitPath); // WarnOnExit flag set from config file
|
||||
|
||||
if(!LangSelected){
|
||||
LANGID LangId;
|
||||
|
Binary file not shown.
20
host/dxwndhost.vs2008.sln
Normal file
20
host/dxwndhost.vs2008.sln
Normal file
@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
# Visual Studio 2008
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dxwndhost", "dxwndhost.vs2008.vcproj", "{FD0B0234-8EC5-43C0-A384-1B881DD3D925}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{FD0B0234-8EC5-43C0-A384-1B881DD3D925}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
Binary file not shown.
65
host/dxwndhost.vs2008.vcproj.gho-PC.gho.user
Normal file
65
host/dxwndhost.vs2008.vcproj.gho-PC.gho.user
Normal file
@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="9.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="GHO-PC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="GHO-PC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
@ -1191,7 +1191,7 @@ void CDxwndhostView::OnExit()
|
||||
{
|
||||
// check for running apps ....
|
||||
if (GetHookStatus(NULL)==DXW_RUNNING){
|
||||
if (MessageBoxLang(DXW_STRING_EXIT, DXW_STRING_WARNING, MB_OKCANCEL | MB_ICONQUESTION)==IDCANCEL)
|
||||
if (MessageBoxLang(DXW_STRING_EXIT_BUSY, DXW_STRING_WARNING, MB_OKCANCEL | MB_ICONQUESTION)==IDCANCEL)
|
||||
return;
|
||||
}
|
||||
delete(this->GetParent());
|
||||
@ -1715,7 +1715,7 @@ void CDxwndhostView::OnSetRegistry()
|
||||
|
||||
regfp=fopen("dxwnd.reg", "w");
|
||||
if(regfp==NULL){
|
||||
MessageBox("Error writing virtual registry file", "Error", MB_ICONERROR|MB_OK);
|
||||
MessageBoxLang(DXW_STRING_VREG_ERROR, DXW_STRING_ERROR, MB_ICONERROR|MB_OK);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -3097,7 +3097,7 @@ void CDxwndhostView::OnRun()
|
||||
OutTrace("OnRun idx=%d prog=\"%s\"\n", i, TargetMaps[i].path);
|
||||
|
||||
if(TargetMaps[i].flags7 & HOOKNORUN){
|
||||
MessageBox("Can't run from DxWnd interface", "Warning", MB_ICONERROR|MB_OK);
|
||||
MessageBoxLang(DXW_STRING_CANT_RUN, DXW_STRING_WARNING, MB_ICONERROR|MB_OK);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -3112,12 +3112,16 @@ void CDxwndhostView::OnRun()
|
||||
}
|
||||
|
||||
if((TargetMaps[i].flags3 & EMULATEREGISTRY) || (TargetMaps[i].flags4 & OVERRIDEREGISTRY)){
|
||||
if(this->isUpdated){
|
||||
if(MessageBoxLang(DXW_STRING_VREG_UPDATE,DXW_STRING_WARNING, MB_OKCANCEL|MB_ICONINFORMATION)==IDOK)
|
||||
this->SaveConfigFile();
|
||||
}
|
||||
OutTrace("export virtual registry\n");
|
||||
FILE *regfp;
|
||||
char *Registry;
|
||||
Registry = PrivateMaps[i].registry;
|
||||
regfp=fopen("dxwnd.reg", "w");
|
||||
if(regfp==NULL)MessageBox("Error writing virtual registry file", "Error", MB_ICONERROR|MB_OK);
|
||||
if(regfp==NULL)MessageBoxLang(DXW_STRING_VREG_ERROR, DXW_STRING_ERROR, MB_ICONERROR|MB_OK);
|
||||
fwrite(Registry, strlen(Registry), 1, regfp);
|
||||
fputs("\n", regfp);
|
||||
fclose(regfp);
|
||||
@ -3223,8 +3227,9 @@ void CDxwndhostView::OnClearCompatibilityFlags()
|
||||
pos = listctrl.GetFirstSelectedItemPosition();
|
||||
i = listctrl.GetNextSelectedItem(pos);
|
||||
|
||||
sprintf(sMessage, "Clear all compatibility flags for \"%s\"?", PrivateMaps[i].title);
|
||||
res=MessageBox(sMessage, "DxWnd", MB_YESNO | MB_ICONQUESTION);
|
||||
//sprintf(sMessage, "Clear all compatibility flags for \"%s\"?", PrivateMaps[i].title);
|
||||
//res=MessageBox(sMessage, "DxWnd", MB_YESNO | MB_ICONQUESTION);
|
||||
res=MessageBoxLangArg(DXW_STRING_CLEAR_COMP, DXW_STRING_DXWND, MB_YESNO | MB_ICONQUESTION, PrivateMaps[i].title);
|
||||
if(res!=IDYES) return;
|
||||
|
||||
FilePath=TargetMaps[i].path;
|
||||
|
BIN
host/resource
BIN
host/resource
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user