1
0
mirror of https://github.com/DxWnd/DxWnd.reloaded synced 2024-12-30 09:25:35 +01:00

v2_03_42_src

Former-commit-id: 29c49f60b95269d049c991e7f9abd6cf2cfc8d1b
This commit is contained in:
gho tik 2015-10-25 12:42:17 -04:00 committed by Refael ACkermann
parent b3937c0e3f
commit cad6787a93
44 changed files with 378 additions and 386 deletions

View File

@ -207,7 +207,7 @@
#define REUSEEMULATEDDC 0x00800000
#define CREATEDESKTOP 0x01000000 // creates a virtual desktop window to replace the real one
#define NOWINDOWHOOKS 0x02000000 // do not intercept window callback routines
//#define NOMOUSEPROC 0x04000000 // don't process mouse x,y coordinates twice in WindowProc and MessageHook hookers
#define SYNCPALETTE 0x04000000 // Syncronize GDI to DDRAW palette
// logging Tflags DWORD:
#define OUTTRACE 0x00000001 // enables tracing to dxwnd.log in general

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d724989d76de31cdefc98848587998e2e3464ea49793397892e068d37db2c730
size 593408
oid sha256:aea2bada6a8f9329392fea5ab8975c3751d32c6a84c8f02924cdef0f42854dca
size 595456

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:17c20de2bcab09a41568811d8227ff38f2411dd95c133e1252e2852293ab643f
size 545280
oid sha256:d242c24095ab0e76e32fe9d98821ab993f406512317a733859b531f466d160f7
size 545792

163
build/dxwnd.ini Normal file
View File

@ -0,0 +1,163 @@
[window]
exportpath=D:\DxWnd\exports\
posx=1231
posy=493
sizx=320
sizy=200
exepath=D:\Games\Men in Black\
[target]
title0=Fin-Fin
path0=D:\Games\Fin-Fin\v90seger\teoboot.exe
launchpath0=D:\Games\Fin-Fin\v90seger\FinFin.exe
module0=
opengllib0=
notes0=
registry0=
ver0=0
coord0=0
flag0=-1465909214
flagg0=1207959552
flagh0=20
flagi0=205520900
flagj0=4224
flagk0=327680
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=-1
swapeffect0=0
title1=Men in Black
path1=D:\Games\Men in Black\MiBd.exe
launchpath1=
module1=RWL21
opengllib1=
notes1=
registry1=
ver1=0
coord1=0
flag1=136314914
flagg1=1209008128
flagh1=20
flagi1=138412036
flagj1=4224
flagk1=327680
tflag1=-2147477245
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=-1
swapeffect1=0
title2=STCC Swedish TouringCar Championship
path2=D:\Games\STCC\STCC.exe
launchpath2=
module2=
opengllib2=
notes2=Still slow and choppy in emulation mode
registry2=
ver2=0
coord2=0
flag2=136314914
flagg2=1207959552
flagh2=-2147483628
flagi2=138412036
flagj2=268439680
flagk2=69632
tflag2=-2147477245
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=-1
swapeffect2=0
title3=DOSBox.exe
path3=D:\Program Files (x86)\DOSBox-0.74\DOSBox.exe
launchpath3=
module3=
opengllib3=
notes3=
registry3=
ver3=0
coord3=0
flag3=681574434
flagg3=1744830464
flagh3=20
flagi3=138412036
flagj3=4224
flagk3=327680
tflag3=0
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=-1
swapeffect3=0
title4=Imperialism
path4=D:\Games\Imperialism\Imperialism.exe
launchpath4=
module4=
opengllib4=
notes4=Note:\nMap zooming is currently not workind. Do not click on the magnifying glass, \nor the game will crash.
registry4=
ver4=0
coord4=0
flag4=1746935843
flagg4=1209008128
flagh4=20
flagi4=4194308
flagj4=128
flagk4=0
tflag4=0
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=-1
swapeffect4=0

View File

@ -27,5 +27,6 @@ initts0=0
winver0=0
maxres0=-1
notes0=
flagk0=0
flagk0=65536
swapeffect0=0
registry0=

View File

@ -1,17 +1,17 @@
[target]
title0=Fin-Fin
path0=D:\Games\Fin-Fin\v90seger\teoboot.exe
launchpath0=D:\Games\Fin-Fin\v90seger\FinFin.exe
launchpath0=
module0=
opengllib0=
notes0=
registry0=
ver0=0
coord0=0
flag0=-1465909214
flag0=136314914
flagg0=1207959552
flagh0=20
flagi0=205520900
flagi0=138412036
flagj0=4224
flagk0=327680
tflag0=0

View File

@ -6,9 +6,9 @@ opengllib0=
ver0=0
coord0=0
flag0=679485474
flagg0=1207959552
flagh0=32788
flagi0=4
flagg0=1209008128
flagh0=20
flagi0=4194308
tflag0=0
initx0=0
inity0=0
@ -24,3 +24,9 @@ maxfps0=0
initts0=0
winver0=0
maxres0=0
launchpath0=
notes0=
registry0=
flagj0=0
flagk0=262144
swapeffect0=0

View File

@ -5,11 +5,11 @@ module0=
opengllib0=
ver0=0
coord0=0
flag0=1744839201
flagg0=134217728
flagh0=32788
flag0=1746935843
flagg0=1209008128
flagh0=20
flagi0=4194308
tflag0=6466
tflag0=0
initx0=0
inity0=0
minx0=0
@ -24,3 +24,9 @@ maxfps0=0
initts0=0
winver0=0
maxres0=-1
launchpath0=
notes0=Note:\nMap zooming is currently not workind. Do not click on the magnifying glass, \nor the game will crash.
registry0=
flagj0=128
flagk0=0
swapeffect0=0

View File

@ -0,0 +1,32 @@
[target]
title0=Men in Black
path0=D:\Games\Men in Black\MiBd.exe
launchpath0=
module0=
opengllib0=
notes0=
registry0=
ver0=0
coord0=0
flag0=136314914
flagg0=1207959552
flagh0=20
flagi0=138412036
flagj0=4224
flagk0=67436544
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=-1
swapeffect0=0

View File

@ -27,3 +27,6 @@ notes0=
flagj0=128
winver0=0
maxres0=0
registry0=
flagk0=65536
swapeffect0=0

View File

@ -0,0 +1,32 @@
[target]
title0=Virtua Fighter
path0=D:\Games\Virtua Fighter\VFPC.EXE
launchpath0=
module0=
opengllib0=
notes0=
registry0=
ver0=0
coord0=0
flag0=136314914
flagg0=1207959552
flagh0=20
flagi0=134217732
flagj0=4224
flagk0=327680
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=-1
swapeffect0=0

View File

@ -1,5 +0,0 @@
[window]
posx=1363
posy=191
sizx=320
sizy=542

BIN
build/redist/S3DTKW.DLL Normal file

Binary file not shown.

View File

@ -1,15 +0,0 @@
# 688I Hunter Killer: nocd patch
[HKEY_LOCAL_MACHINE\SOFTWARE\Jane's Combat Simulations]
[HKEY_LOCAL_MACHINE\SOFTWARE\Jane's Combat Simulations\688I Hunter-Killer]
[HKEY_LOCAL_MACHINE\SOFTWARE\Jane's Combat Simulations\688I Hunter-Killer\1.0]
"cdInstallPath"="d:\\games\\688\\"
"sfxInstallPath"="d:\\games\\688\\sfx\\sfx.agg+"
"midiInstallPath"="d:\\games\\688\\midi"
"objectsInstallPath"="d:\\games\\688\\objects"
"graphicsInstallPath"="d:\\games\\688\\graphics"
"booksInstallPath"="d:\\games\\688\\books"
"rootInstallPath"="d:\\games\\688\\"

View File

@ -1,69 +0,0 @@
[HKEY_LOCAL_MACHINE]
[HKEY_LOCAL_MACHINE\SOFTWARE]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard]
"Install Directory"="d:\\games\\Die Hard Trilogy"
"FMV Installed"=dword:00000000
"Data Installed"=dword:00000001
"Abnormal Termination"=dword:00000000
"StartupFolder"="Fox Interactive"
"Version"="1.00"
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\Configuration]
"complexity"=dword:00000000
"cutoff"=dword:00000000
"perspective"=dword:00000000
"Quality"=dword:00000000
"Use Hardware"=dword:00000000
"Preferred Height"=dword:00000258
"Preferred Width"=dword:00000320
"lighting"=dword:00000001
"texture quality"=dword:00000000
"Language"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d1]
"Input"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d1\Keyboard]
"keyboard"=dword:00000001
"speed"=dword:00000000
"sensitivity"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d1\Joystick]
"joystick"=dword:00000001
"speed"=dword:00000000
"sensitivity"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d1\Mouse]
"mouse"=dword:00000001
"speed"=dword:00000000
"sensitivity"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2]
"Input"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Keyboard]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Keyboard\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Keyboard\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Joystick]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Joystick\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Joystick\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Mouse]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Mouse\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d2\Mouse\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3]
"Input"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Keyboard]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Keyboard\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Keyboard\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Joystick]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Joystick\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Joystick\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Mouse]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Mouse\speed]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\d3\Mouse\sensitivity]
[HKEY_LOCAL_MACHINE\SOFTWARE\Die Hard\Sound]
"Music Volume"=dword:000000ff
"Music Mute"=dword:00000000
"SFX Volume"=dword:000000ff
"SFX Mute"=dword:00000000
[HKEY_LOCAL_MACHINE\SOFTWARE\Fox Interactive]
[HKEY_LOCAL_MACHINE\SOFTWARE\Fox Interactive\Die Hard Trilogy]
[HKEY_LOCAL_MACHINE\SOFTWARE\Fox Interactive\Die Hard Trilogy\1.0]

View File

@ -1,14 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE]
[HKEY_LOCAL_MACHINE\SOFTWARE\Disney Interactive]
[HKEY_LOCAL_MACHINE\SOFTWARE\Disney Interactive\Hercules]
[HKEY_LOCAL_MACHINE\SOFTWARE\Disney Interactive\Hercules\1.00]
"DATA"="DATA\\"
"User Path"=".\\"
"BitVersion"="32 Bit"
"PATH"=".\\"
"EntryPoint"=".\\Hercules.exe"
"Help"=".\\hercules.hlp"
"Uninstall"="C:\\WINDOWS\\uninst.exe -fC:\\Hercules\\DeIsL1.isu"
"Config"=hex:05,ca,ab,07,01,01,01,00,03,01,01,00,01,01,01,00,ff,3f,00,00,01,00,ff,ff,03,00,00,00,26,00,28,00,25,00,27,00,58,00,5a,00,43,00,44,00,53,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

View File

@ -1,10 +0,0 @@
# Requiem Avenging Angel: DirectX version patch
[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\DirectX]
"Version"="4.07.00.0704"
[HKEY_LOCAL_MACHINE\Software\Microsoft\DirectX]
"Version"="4.07.00.0704"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX]
"Version"="4.07.00.0704"

View File

@ -1,29 +0,0 @@
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Bluebyte]
[HKEY_LOCAL_MACHINE\SOFTWARE\Bluebyte\Siedler3]
[HKEY_LOCAL_MACHINE\SOFTWARE\Bluebyte\Siedler3\1.0]
[HKEY_LOCAL_MACHINE\SOFTWARE\Bluebyte\Siedler3\1.0\Patches]
"convert"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Bluebyte\Siedler3\1.0\General]
"Resolution"=dword:00000000
"NoAlpha"=dword:00000000
"FogSpeed"=dword:00000003
"GDIMouse"=dword:00000000
"WaitVBlank"=dword:00000001
"ScrollMode"=dword:00000001
"ScrollSpeed"=dword:00000005
"BuildHelp"=dword:00000001
"SoundFormat"=dword:00000001
"CDAudio"=dword:00000000
"VideoFormat"=dword:00000000
"MessageLevel"=dword:00000009
"Intro"=dword:00000000
"SerialNumber"="6784-1136-5836-4351-2191"
"Playername"="TP"
"Language"=dword:00000000

View File

@ -1,47 +0,0 @@
[HKEY_CURRENT_USER\SOFTWARE]
[HKEY_CURRENT_USER\SOFTWARE\Maxis]
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000]
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Localize]
"Language"="USA"
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Options]
"AutoBudget"=dword:00000000
"AutoGoto"=dword:00000001
"AutoSave"=dword:00000000
"Disasters"=dword:00000001
"Music"=dword:00000001
"Sound"=dword:00000001
"Speed"=dword:00000001
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Paths]
"Cities"="D:\\Games\\Simcity 2000\\Cities"
"Data"="D:\\Games\\Simcity 2000\\Data"
"Goodies"="D:\\Games\\Simcity 2000\\Goodies"
"Graphics"="D:\\Games\\Simcity 2000\\Bitmaps"
"Home"="D:\\Games\\Simcity 2000"
"Music"="D:\\Games\\Simcity 2000\\Sounds"
"SaveGame"="D:\\Games\\Simcity 2000\\Cities"
"Folder"="Maxis"
"Scenarios"="D:\\Games\\Simcity 2000\\Scenario"
"TileSets"="D:\\Games\\Simcity 2000\\ScurkArt"
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Registration]
"Company Name"="nameless mutual loan company"
"Mayor Name"="Jane Doe"
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\SCURK]
"CycleColors"=dword:00000001
"GridHeight"=dword:00000008
"GridWidth"=dword:00000008
"ShowClipRegion"=dword:00000000
"ShowDrawGrid"=dword:00000000
"SnapToGrid"=dword:00000000
"Sound"=dword:00000001
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Version]
"SimCity 2000"=dword:00000100
"SCURK"=dword:00000100
[HKEY_CURRENT_USER\SOFTWARE\Maxis\SimCity 2000\Windows]
"Color Check"=dword:00000000
"Display"="8 1"

View File

@ -1,7 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE\CAPCOM]
[HKEY_LOCAL_MACHINE\SOFTWARE\CAPCOM\STREETFIGHTERZERO]
""="..\\bin"
[HKEY_LOCAL_MACHINE\SOFTWARE\CAPCOM\STREETFIGHTERZERO\1.0]

View File

@ -1,16 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE\]
[HKEY_LOCAL_MACHINE\SOFTWARE\DreamWorks Interactive]
[HKEY_LOCAL_MACHINE\SOFTWARE\DreamWorks Interactive\ChaosIsland]
"Data Drive"=".\\"
"PID"="71239-442-3367621-91206"
"Installed Directory"=".\\"
"Run File"=".\\"
"InstallType"=dword:00000001
"KBPS_OTHER"=dword:00000000
"KBPS"=dword:00000000
"Installed"=dword:00000001
"NextTip"=dword:00000001
"StartupTips"=dword:00000001
"FPS"=dword:00000003

View File

@ -1,28 +0,0 @@
// Close Combat 2 a bridge too far
[HKEY_LOCAL_MACHINE\SOFTWARE]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Games]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Games\Close Combat]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Games\Close Combat\2.00]
"PID"="00000-000-0000000-00000"
"InstalledTo"=".\\"
"ScreenX"="800"
"ScreenY"="600"
"Version"="2.0"
"IType"=hex:01,00,00,00
"GameSpeed"=hex:01,00,00,00
"ShowDSAlert"=hex:01,00,00,00
"ShowQuickHelp"=hex:01,00,00,00
"PlaySounds"=hex:01,00,00,00
"PlayMusic"=hex:01,00,00,00
"PlayVideos"=hex:00,00,00,00
"FCopy"=hex:00,00,00,00
"SMethod"=hex:00,00,00,00
"Save"=hex:00,00,00,00
"ShowTrees"=hex:01,00,00,00
"StaticFPS"=hex:0a,00,00,00
"InstalledFrom"=".\\"
"Launched"="1"
"VersionType"="RetailVersion"

View File

@ -1,13 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE]
; Road Rash
[HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts]
[HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\RoadRash 95]
""=""
"Path"="."
"CheckDialup"=hex:00
"ChatState"=hex:02
"MiniDash"=hex:00
"OpponentList"=hex:01

View File

@ -1,15 +0,0 @@
[HKEY_LOCAL_MACHINE\Software]
[HKEY_LOCAL_MACHINE\Software\Cavedog Entertainment]
[HKEY_LOCAL_MACHINE\Software\Cavedog Entertainment\Total Annihilation: Kingdoms]
[HKEY_LOCAL_MACHINE\Software\Cavedog Entertainment\Total Annihilation: Kingdoms\1.00.000]
[HKEY_CURRENT_USER\Software\Cavedog Entertainment]
[HKEY_CURRENT_USER\Software\Cavedog Entertainment\Kingdoms]
"InstallDirectX"=dword:00000001
[HKEY_CURRENT_USER\Software\Cavedog Entertainment\Kingdoms\InterfaceOptions]
"Language"="ENGLISH"
[HKEY_CURRENT_USER\Software\Cavedog Entertainment\Cartographer]

View File

@ -1,20 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE]
[HKEY_LOCAL_MACHINE\SOFTWARE\Viacom New Media]
[HKEY_LOCAL_MACHINE\SOFTWARE\Viacom New Media\The Divide]
[HKEY_LOCAL_MACHINE\SOFTWARE\Viacom New Media\The Divide\1.0]
"Display Name"="\"The Divide\""
"InstallDir"="."
"InstallSrc"="."
"CDROM"=".:"
"ProgramDir"="."
"LevelsDir"=".\\Levels\\"
"MoviesDir"=".\\Movies\\"
"SoundsDir"=".\\pc\\"
[HKEY_CURRENT_USER\SOFTWARE\Viacom New Media\The Divide\Config]
"Game Settings"=hex:20,03,00,00,58,02,00,00,20,03,00,00,58,02,00,00\
00,00,00,00,00,00,00,00,01,00,00,00,00,00,00,00,01,00,00,00,00\
00,00,00,00,00,00,00,00,00,00,00,01,00,00,00,00,00,00,00,00,00\
00,00,01,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

View File

@ -1,27 +0,0 @@
# The Hive registry settings
[HKEY_LOCAL_MACHINE\SOFTWARE\Rainbow]
[HKEY_LOCAL_MACHINE\SOFTWARE\Rainbow\TheHIVE]
[HKEY_LOCAL_MACHINE\SOFTWARE\Rainbow\TheHIVE\GlobalInfo]
"currentPlayer"="GHO"
"workingGameDirectory"=".\\"
[HKEY_LOCAL_MACHINE\SOFTWARE\Rainbow\TheHIVE\GHO]
"userInfo"=dword:4ac9fbcb
"displayMode"=dword:000003fb
"profile"=dword:00010020
# displaymode = 3F7 (fair)
# displaymode = 3F9 (good)
# displaymode = 3Fa (better)
# displaymode = 3Fb (best)
# userInfo = 4ac9fbcb (1st level)
# userInfo = 4B49fADB (2nd level)
# userinfo = d249f6d6 (??)
# profile = 0x00010020 (practice)
# profile = 0x00010000 (normal)
# profile = 0x00010010 (expert)
# profile = 0x.......1 (flip joystick direction)

View File

@ -1,9 +0,0 @@
[HKEY_LOCAL_MACHINE\SOFTWARE]
; the Industry Giant
[HKEY_LOCAL_MACHINE\SOFTWARE\JoWooD]
[HKEY_LOCAL_MACHINE\SOFTWARE\JoWooD\The IndustryGiant]
"InstallPath"="."

View File

@ -2321,6 +2321,18 @@ static HRESULT BuildPrimaryEmu(LPDIRECTDRAW lpdd, CreateSurface_Type pCreateSurf
// "Hoyle Casino Empire" opens a primary surface and NOT a backbuffer ....
iBakBufferVersion=dxversion; // v2.03.01
// build a default System palette and apply it to primary surface
if((ddsd.ddpfPixelFormat.dwFlags & DDPF_PALETTEINDEXED8) &&
(dxw.dwFlags6 & SYNCPALETTE)){
if(lpDDP == NULL){
res=(*pCreatePalette)(lpdd, DDPCAPS_8BIT|DDPCAPS_ALLOW256, DefaultSystemPalette, &lpDDP, NULL);
if(res) OutTrace("CreateSurface: CreatePalette ERROR err=%x at %d\n", res, __LINE__);
}
// this must be done after hooking - who knows why?
res=(*pSetPalette)(*lplpdds, lpDDP);
if(res) OutTraceE("CreateSurface: SetPalette ERROR err=%x at %d\n", res, __LINE__);
}
// set a global capability value for surfaces that have to blit to primary
// DDSCAPS_OFFSCREENPLAIN seems required to support the palette in memory surfaces
// DDSCAPS_SYSTEMMEMORY makes operations faster, but it is not always good...
@ -2386,6 +2398,18 @@ static HRESULT BuildPrimaryFlippable(LPDIRECTDRAW lpdd, CreateSurface_Type pCrea
// "Hoyle Casino Empire" opens a primary surface and NOT a backbuffer ....
iBakBufferVersion=dxversion; // v2.03.01
// build a default System palette and apply it to primary surface
if((ddsd.ddpfPixelFormat.dwFlags & DDPF_PALETTEINDEXED8) &&
(dxw.dwFlags6 & SYNCPALETTE)){
if(lpDDP == NULL){
res=(*pCreatePalette)(lpdd, DDPCAPS_8BIT|DDPCAPS_ALLOW256, DefaultSystemPalette, &lpDDP, NULL);
if(res) OutTrace("CreateSurface: CreatePalette ERROR err=%x at %d\n", res, __LINE__);
}
// this must be done after hooking - who knows why?
res=(*pSetPalette)(*lplpdds, lpDDP);
if(res) OutTraceE("CreateSurface: SetPalette ERROR err=%x at %d\n", res, __LINE__);
}
// set a global capability value for surfaces that have to blit to primary
dwBackBufferCaps = (DDSCAPS_OFFSCREENPLAIN|DDSCAPS_SYSTEMMEMORY);
// on WinXP Fifa 99 doesn't like DDSCAPS_SYSTEMMEMORY cap, so better to leave a way to unset it....
@ -2496,6 +2520,17 @@ static HRESULT BuildBackBufferEmu(LPDIRECTDRAW lpdd, CreateSurface_Type pCreateS
HookDDSurfaceGeneric(lplpdds, dxversion); // added !!!
iBakBufferVersion=dxversion; // v2.02.31
if((ddsd.ddpfPixelFormat.dwFlags & DDPF_PALETTEINDEXED8) &&
(dxw.dwFlags6 & SYNCPALETTE)){
if(lpDDP == NULL){
res=(*pCreatePalette)(lpdd, DDPCAPS_8BIT|DDPCAPS_ALLOW256, DefaultSystemPalette, &lpDDP, NULL);
if(res) OutTrace("CreateSurface: CreatePalette ERROR err=%x at %d\n", res, __LINE__);
}
// this must be done after hooking - who knows why?
res=(*pSetPalette)(*lplpdds, lpDDP);
if(res) OutTraceE("CreateSurface: SetPalette ERROR err=%x at %d\n", res, __LINE__);
}
// V2.1.85/V2.2.34: tricky !!!!
// When a real backbuffer is created, it has a reference to its frontbuffer.
// some games (Monopoly 3D) may depend on this setting - i.e. they could close
@ -2541,6 +2576,17 @@ static HRESULT BuildBackBufferFlippable(LPDIRECTDRAW lpdd, CreateSurface_Type pC
HookDDSurfaceGeneric(lplpdds, dxversion); // added !!!
iBakBufferVersion=dxversion; // v2.02.31
if((ddsd.ddpfPixelFormat.dwFlags & DDPF_PALETTEINDEXED8) &&
(dxw.dwFlags6 & SYNCPALETTE)){
if(lpDDP == NULL){
res=(*pCreatePalette)(lpdd, DDPCAPS_8BIT|DDPCAPS_ALLOW256, DefaultSystemPalette, &lpDDP, NULL);
if(res) OutTrace("CreateSurface: CreatePalette ERROR err=%x at %d\n", res, __LINE__);
}
// this must be done after hooking - who knows why?
res=(*pSetPalette)(*lplpdds, lpDDP);
if(res) OutTraceE("CreateSurface: SetPalette ERROR err=%x at %d\n", res, __LINE__);
}
return DD_OK;
}

View File

@ -113,7 +113,7 @@ static char *Flag6Names[32]={
"NOSYSMEMPRIMARY", "NOSYSMEMBACKBUF", "CONFIRMONCLOSE", "TERMINATEONCLOSE",
"FLIPEMULATION", "SETZBUFFERBITDEPTHS", "SHAREDDC", "WOW32REGISTRY",
"STRETCHMOVIES", "BYPASSMCI", "FIXPIXELZOOM", "REUSEEMULATEDDC",
"CREATEDESKTOP", "NOWINDOWHOOKS", "--NOMOUSEPROC--", "",
"CREATEDESKTOP", "NOWINDOWHOOKS", "SYNCPALETTE", "",
"", "", "", "",
};

View File

@ -27,7 +27,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "TlHelp32.h"
#define VERSION "2.03.41"
#define VERSION "2.03.42"
#define DDTHREADLOCK 1
//#define LOCKTHREADS

Binary file not shown.

View File

@ -231,6 +231,7 @@ extern HRESULT WINAPI sBlt(char *, LPDIRECTDRAWSURFACE, LPRECT, LPDIRECTDRAWSURF
extern GetDC_Type pGetDC;
extern ReleaseDC_Type pReleaseDC;
#if 0
static COLORREF GetMatchingColor(COLORREF crColor)
{
int iDistance, iMinDistance;
@ -306,6 +307,7 @@ static COLORREF GetMatchingColor(COLORREF crColor)
}
return crColor;
}
#endif
//--------------------------------------------------------------------------------------------
//
@ -564,17 +566,19 @@ HPALETTE WINAPI extSelectPalette(HDC hdc, HPALETTE hpal, BOOL bForceBackground)
OutTraceDW("GDI.SelectPalette: hdc=%x hpal=%x ForceBackground=%x\n", hdc, hpal, bForceBackground);
if(hdc==dxw.RealHDC) hdc= dxw.VirtualHDC;
if(dxw.dwFlags1 & EMULATESURFACE){
if((dxw.dwFlags1 & EMULATESURFACE) && (dxw.dwFlags6 & SYNCPALETTE) && bFlippedDC){
hDesktopPalette=hpal;
PALETTEENTRY lppe[256];
int nEntries;
if(bFlippedDC) hdc = hFlippedDC;
ret=(*pGDISelectPalette)(hdc, hpal, bForceBackground);
nEntries=(*pGetPaletteEntries)(hpal, 0, 256, lppe);
//mySetPalette(0, nEntries, lppe);
//OutTraceDW("GDI.SelectPalette: register desktop palette hpal=%x nEntries=%d\n", hpal, nEntries);
OutTraceDW("GDI.SelectPalette: remapped hdc=%x hpal=%x nEntries=%d\n", hdc, hpal, nEntries);
if(IsDebug && nEntries) dxw.DumpPalette(nEntries, lppe);
if(hFlippedDC){
hdc = hFlippedDC;
ret=(*pGDISelectPalette)(hdc, hpal, bForceBackground);
}
else{
LPDIRECTDRAWSURFACE lpDDSPrim;
lpDDSPrim = dxwss.GetPrimarySurface();
(*pGetDC)(lpDDSPrim, &hdc);
ret=(*pGDISelectPalette)(hdc, hpal, bForceBackground);
(*pReleaseDC)(lpDDSPrim, hdc);
}
}
else{
ret=(*pGDISelectPalette)(hdc, hpal, bForceBackground);
@ -591,13 +595,13 @@ BOOL WINAPI extAnimatePalette(HPALETTE hpal, UINT iStartIndex, UINT cEntries, co
return TRUE;
}
UINT WINAPI extRealizePalette(HDC hdc)
UINT WINAPI extRealizePalette(HDC hdc)
{
UINT ret;
OutTraceDW("GDI.RealizePalette: hdc=%x\n", hdc);
if(dxw.dwFlags1 & EMULATESURFACE){
if((dxw.dwFlags1 & EMULATESURFACE) && (dxw.dwFlags6 & SYNCPALETTE)){
PALETTEENTRY PalEntries[256];
UINT nEntries;
if(bFlippedDC) hdc = hFlippedDC;
@ -608,6 +612,11 @@ UINT WINAPI extRealizePalette(HDC hdc)
mySetPalette(0, nEntries, PalEntries);
if(IsDebug && nEntries) dxw.DumpPalette(nEntries, PalEntries);
ret=nEntries;
HRESULT res;
extern LPDIRECTDRAWPALETTE lpDDP;
extern SetEntries_Type pSetEntries;
res=(*pSetEntries)(lpDDP, 0, 0, 256, PalEntries);
}
else
ret=(*pGDIRealizePalette)(hdc);
@ -623,7 +632,7 @@ UINT WINAPI extGetSystemPaletteEntries(HDC hdc, UINT iStartIndex, UINT nEntries,
OutTraceDW("GetSystemPaletteEntries: hdc=%x start=%d num=%d\n", hdc, iStartIndex, nEntries);
ret=(*pGDIGetSystemPaletteEntries)(hdc, iStartIndex, nEntries, lppe);
OutTraceDW("GetSystemPaletteEntries: ret=%d\n", ret);
if((ret == 0) && (dxw.dwFlags1 & EMULATESURFACE)) {
if((ret == 0) && (dxw.dwFlags1 & EMULATESURFACE) && (dxw.dwFlags6 & SYNCPALETTE)) {
// use static default data...
for(UINT idx=0; idx<nEntries; idx++) lppe[idx]=DefaultSystemPalette[iStartIndex+idx];
ret = nEntries;
@ -646,12 +655,9 @@ UINT WINAPI extGetPaletteEntries(HPALETTE hpal, UINT iStartIndex, UINT nEntries,
OutTraceDW("GDI.GetPaletteEntries: hpal=%x iStartIndex=%d nEntries=%d\n", hpal, iStartIndex, nEntries);
res=(*pGetPaletteEntries)(hpal, iStartIndex, nEntries, lppe);
OutTraceDW("GDI.GetPaletteEntries: res-nEntries=%d\n", res);
if(hpal==0) {
if((res == 0) && (dxw.dwFlags1 & EMULATESURFACE)) {
res = extGetSystemPaletteEntries(0, iStartIndex, nEntries, lppe);
mySetPalette(iStartIndex, nEntries, lppe);
}
res=(nEntries > 256) ? nEntries : 256; // "M.I.B." patch ....
if((res < nEntries) && (dxw.dwFlags6 & SYNCPALETTE)) {
res = nEntries;
OutTraceDW("GDI.GetPaletteEntries: faking missing entries=%d\n", res);
}
if(IsDebug && res) dxw.DumpPalette(res, &lppe[iStartIndex]);
//mySetPalette(0, nEntries, lppe);

View File

@ -20,7 +20,7 @@ BOOL WINAPI extDrawDibDraw(HDRAWDIB, HDC, int, int, int, int, LPBITMAPINFOHEADER
static HookEntry_Type Hooks[]={
//{HOOK_HOT_CANDIDATE, "ICSendMessage", (FARPROC)NULL, (FARPROC *)&pICSendMessage, (FARPROC)extICSendMessage},
//{HOOK_HOT_CANDIDATE, "ICOpen", (FARPROC)NULL, (FARPROC *)&pICOpen, (FARPROC)extICOpen},
//{HOOK_HOT_CANDIDATE, "MCIWndCreateA", (FARPROC)NULL, (FARPROC *)&pMCIWndCreateA, (FARPROC)extMCIWndCreateA}, // "Man in Black" - beware: this is NOT STDCALL!!!
{HOOK_HOT_CANDIDATE, "MCIWndCreateA", (FARPROC)NULL, (FARPROC *)&pMCIWndCreateA, (FARPROC)extMCIWndCreateA}, // "Man in Black" - beware: this is NOT STDCALL!!!
{HOOK_HOT_CANDIDATE, "ICGetDisplayFormat", (FARPROC)NULL, (FARPROC *)&pICGetDisplayFormat, (FARPROC)extICGetDisplayFormat}, // "Man in Black" - beware: this is NOT STDCALL!!!
{HOOK_HOT_CANDIDATE, "ICDrawBegin", (FARPROC)NULL, (FARPROC *)&pICDrawBegin, (FARPROC)extICDrawBegin},
{HOOK_HOT_CANDIDATE, "DrawDibDraw", (FARPROC)NULL, (FARPROC *)&pDrawDibDraw, (FARPROC)extDrawDibDraw},
@ -172,17 +172,31 @@ HWND extMCIWndCreateA(HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCTS
HWND g_hwndMCIWnd;
OutTraceDW("MCIWndCreateA: hwnd=%x hInst=%x style=%x(%s) file=%s\n",
hwndParent, hInstance, dwStyle, ExplainMCIWndCreateFlags(dwStyle), szFile);
if(dxw.dwFlags6 & NOMOVIES) return NULL;
if(dxw.dwFlags6 & NOMOVIES) {
OutTraceDW("MCIWndCreateA: SUPPRESSED\n");
return NULL;
}
g_hwndMCIWnd = (*pMCIWndCreateA)(hwndParent, hInstance, dwStyle, szFile);
// look at https://msdn.microsoft.com/en-us/library/windows/desktop/dd757178%28v=vs.85%29.aspx
if(dxw.dwFlags5 & REMAPMCI){
(*pSetWindowPos)(g_hwndMCIWnd, // window to resize
NULL, // z-order: don't care
(800-640)/2, (600-480)/2, 640, 480,
// since there seem to be no way to stretch the movie, we do an attempt to center
// the movie on the screen by shifting the video window.
// We assume (but we don't really know for sure ...) that the movie was to be rendered
// fulscreen using the size of the virtual desktop
RECT client;
OutTraceDW("MCIWndCreateA: CENTERED\n");
(*pGetClientRect)(dxw.GethWnd(), &client);
(*pSetWindowPos)(g_hwndMCIWnd, // window to resize
NULL, // z-order: don't care
(client.right - dxw.GetScreenWidth()) / 2, // X pos
(client.bottom - dxw.GetScreenHeight()) / 2, // Y pos
dxw.GetScreenWidth(), // width
dxw.GetScreenHeight(), // height
SWP_NOZORDER | SWP_NOACTIVATE);
//(*pUpdateWindow)(g_hwndMCIWnd);
}
return g_hwndMCIWnd;

View File

@ -620,15 +620,19 @@ BOOL WINAPI extInvalidateRect(HWND hwnd, RECT *lpRect, BOOL bErase)
OutTraceDW("InvalidateRect: hwnd=%x rect=NULL erase=%x\n",
hwnd, bErase);
if(dxw.IsFullScreen() && dxw.IsRealDesktop(hwnd)) {
hwnd=dxw.GethWnd();
dxw.MapClient(lpRect);
return (*pInvalidateRect)(hwnd, lpRect, bErase);
}
else{
// don't exagerate ...
return (*pInvalidateRect)(hwnd, lpRect, bErase);
if(dxw.IsFullScreen()) {
switch(GDIEmulationMode){
case GDIMODE_STRETCHED:
if(lpRect) dxw.MapClient(lpRect);
break;
case GDIMODE_EMULATED:
default:
break;
}
}
return (*pInvalidateRect)(hwnd, lpRect, bErase);
}
BOOL WINAPI extShowWindow(HWND hwnd, int nCmdShow)

View File

@ -407,18 +407,18 @@ LRESULT CALLBACK extWindowProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lp
if(dxw.Windowize){
prev.x = LOWORD(lparam);
prev.y = HIWORD(lparam);
if ((dxw.dwFlags1 & HIDEHWCURSOR) && dxw.IsFullScreen()){
(*pGetClientRect)(hwnd, &rect);
if(prev.x >= 0 && prev.x < rect.right && prev.y >= 0 && prev.y < rect.bottom)
while((*pShowCursor)(0) >= 0);
else
if(dxw.IsFullScreen()){
if (dxw.dwFlags1 & HIDEHWCURSOR){
(*pGetClientRect)(hwnd, &rect);
if(prev.x >= 0 && prev.x < rect.right && prev.y >= 0 && prev.y < rect.bottom)
while((*pShowCursor)(0) >= 0);
else
while((*pShowCursor)(1) < 0);
}
if (dxw.dwFlags1 & SHOWHWCURSOR){
while((*pShowCursor)(1) < 0);
}
}
else {
while((*pShowCursor)(1) < 0);
}
//if(dxw.dwFlags1 & MODIFYMOUSE){ // mouse processing
//if((dxw.dwFlags1 & MODIFYMOUSE) && !(dxw.dwFlags6 & NOMOUSEPROC)){ // mouse processing
if((dxw.dwFlags1 & MODIFYMOUSE) && !(dxw.dwFlags1 & MESSAGEPROC)){ // mouse processing
// scale mouse coordinates
curr=dxw.FixCursorPos(prev); //v2.02.30
@ -442,8 +442,6 @@ LRESULT CALLBACK extWindowProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lp
case WM_MBUTTONDBLCLK:
if(dxw.Windowize){
if((dxw.dwFlags1 & CLIPCURSOR) && ClipCursorToggleState) dxw.SetClipCursor();
//if(dxw.dwFlags1 & MODIFYMOUSE){ // mouse processing
//if((dxw.dwFlags1 & MODIFYMOUSE) && !(dxw.dwFlags6 & NOMOUSEPROC)){ // mouse processing
if((dxw.dwFlags1 & MODIFYMOUSE) && !(dxw.dwFlags1 & MESSAGEPROC)){ // mouse processing
// scale mouse coordinates
prev.x = LOWORD(lparam);

View File

@ -35,6 +35,7 @@ void CTabSysLibs::DoDataExchange(CDataExchange* pDX)
DDX_Check(pDX, IDC_NOFILLRECT, cTarget->m_NoFillRect);
DDX_Check(pDX, IDC_REUSEEMULATEDDC, cTarget->m_ReuseEmulatedDC);
DDX_Check(pDX, IDC_CREATEDESKTOP, cTarget->m_CreateDesktop);
DDX_Check(pDX, IDC_SYNCPALETTE, cTarget->m_SyncPalette);
// OpenGL
DDX_Check(pDX, IDC_HOOKOPENGL, cTarget->m_HookOpenGL); // duplicated

View File

@ -197,6 +197,7 @@ CTargetDlg::CTargetDlg(CWnd* pParent /*=NULL*/)
m_NoFillRect = FALSE;
m_ReuseEmulatedDC = FALSE; // ??
m_CreateDesktop = FALSE;
m_SyncPalette = FALSE;
m_AnalyticMode = FALSE;
m_NoPaletteUpdate = FALSE;
m_WireFrame = FALSE;

View File

@ -163,6 +163,7 @@ public:
BOOL m_NoFillRect;
BOOL m_ReuseEmulatedDC;
BOOL m_CreateDesktop;
BOOL m_SyncPalette;
BOOL m_AnalyticMode;
BOOL m_NoPaletteUpdate;
BOOL m_LimitResources;

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -401,6 +401,7 @@ static void SetTargetFromDlg(TARGETMAP *t, CTargetDlg *dlg)
if(dlg->m_NoFillRect) t->flags4 |= NOFILLRECT;
if(dlg->m_ReuseEmulatedDC) t->flags6 |= REUSEEMULATEDDC;
if(dlg->m_CreateDesktop) t->flags6 |= CREATEDESKTOP;
if(dlg->m_SyncPalette) t->flags6 |= SYNCPALETTE;
if(dlg->m_AnalyticMode) t->flags3 |= ANALYTICMODE;
if(dlg->m_ReplacePrivOps) t->flags5 |= REPLACEPRIVOPS;
t->initx = dlg->m_InitX;
@ -641,6 +642,7 @@ static void SetDlgFromTarget(TARGETMAP *t, CTargetDlg *dlg)
dlg->m_NoFillRect = t->flags4 & NOFILLRECT ? 1 : 0;
dlg->m_ReuseEmulatedDC = t->flags6 & REUSEEMULATEDDC ? 1 : 0;
dlg->m_CreateDesktop = t->flags6 & CREATEDESKTOP ? 1 : 0;
dlg->m_SyncPalette = t->flags6 & SYNCPALETTE ? 1 : 0;
dlg->m_AnalyticMode = t->flags3 & ANALYTICMODE ? 1 : 0;
dlg->m_ReplacePrivOps = t->flags5 & REPLACEPRIVOPS ? 1 : 0;
dlg->m_InitX = t->initx;

Binary file not shown.

Binary file not shown.