First post, by gulikoza
- Rank
- Oldbie
This patch has been available for a while now in ykhwong's builds. It allows DOSBox to run DOS Glide games (not all of them though) and now I am also releasing the source. The patch is composed of two (3 if you count glide wrapper) parts.
The first part is the GLIDE2X.OVL file. This is a DOS (kinda) DLL file that games use to access the Voodoo board. This OVL has been rewritten to talk to DOSBox instead of the Voodoo board. The file has to be present in the game directory (or somewhere in the path inside DOSBox, it can also be present in DOSBox directory; in this case it will automatically be added to the Z: drive) and is platform independent (since it runs inside DOSBox). There are games which directly access the Voodoo board without loading the OVL file. These games will not work with this patch (these are mostly early 3dfx games/demos: original [not Voodoo Rush] Tomb Rider patch, Fatal Racing, Eurofighter 2000...) and (should) work with 3DFX chip emulation by kekko.
The second part is the DOSBox patch. The patch should be relatively easy to apply and compile, it only requires a few 3dfx headers (sdk2_*.h files) which are available in the OpenGlide cvs. You need to run autogen.sh before running configure. The patch should be fairly crossplatform, but only Linux (x86 & x64), Windows ans MAC OSX have been tested so far...
These two patches allow games to access Glide on the host computer. But since most of you do not have Voodoo boards anymore (Glide DOSBox version has been tested to work with true Voodoo2 board in Win98 without any wrappers 😉) a glide wrapper is also required. You can use any wrapper you like, but some might work better or worse. The tested ones are:
- OpenGlide (see patches here)
- dgVoodoo (be sure to set it to render in window mode)
- zeckensack's (switches to fullscreen automatically)
- psvoodoo
- nGlide (actively supported, windows only)
- dgVoodoo2
OpenGlide is usually included with builds having this patch, but any wrapper can be used. Some games might work better with OpenGlide, others with dgVoodoo or nGlide, but OpenGlide is the only one crossplatform. MAC users, see MACGlide and it might be possible with some simple patches to get OpenGlide to work as well. But DOSBox patch has not been tested on Mac at all 😀 (Update: DOSBox-Glide has been tested to work on MacOSX, see this thread for OpenGlide patches, use latest dosbox_glide patch).
Currently, the following games have been tested:
Archimedean Dynasty (wrapper related graphics corruption, use nGlide)
Blood (works with dgvooodoo)
Carmageddon (works with dgVoodoo afaik)
Descent2 (works with openglide, use the unofficial 3dfx patch)
Dreams to Reality (working)
Extreme Assault (DEMO version works, full version not tested...)
GTA (no problems)
Lands of Lore 2 (works fine, some wrapper related problems, use nGlide)
RedGuard (no problems)
Screamer 2 & Rally (a bit slow with openglide, works fine with dgvoodoo if LFB access is disabled)
TombRider (no problems, use the patch from Eidos, search for Voodoo Rush patch if the link is broken)
For testing purposes, free Glide SDK tests can be found on the net, which should all work fine.
PROBLEMS:
- OpenGlide (some recent cvs version should be fine) has some serious drawbacks and performance issues. For now, use the version in my builds or compile your own version with the patches (most of the patches have been already commited)
- When glide is active, the wrapper is in control of the DOSBox window. This means that DOSBox window related options (resolution, scaler, ...) do not work
- Because of that, ALT-Enter fullscreen switch will not work as desired. In OpenGlide you have to edit OpenGLid.ini to have fullscreen, other wrappers work in fullscreen by default. With dgVoodoo, if you set the renderer to Direct3D9, ALT-Enter should work ok! (at least it does on my computer 😀)
- If you receive warnings like "Glide:Warning, unable to load grSstConfigPipeline from glide2x", it's not a problem. These are just functions that the particular wrapper does not support...unless of course the game happens to use them, but that will show as another error 😀
- Do not use the mapper when Glide is running
- If you like, you can place 3dfxSpl2.dll from the voodoo drivers in the DOSBox directory and you will see 3dfx splash screen when Glide activates 😀
Updates:
22.8.2007: Fix compilation problems
23.8.2007: Fix buffer overflow
28.8.2007: x86_64 support
03.9.2007: Fix a crash when closing dosbox while glide is active
18.10.2007: Add TombRaider shadow hack (thanks gidierre!)
06.11.2007: Improve TR shadow support (gidierre)
17.2.2008: Updated for current CVS
14.9.2008: Updated for current CVS, allow disabling LFB reads/writes
04.6.2009: Updated for 0.73, add MSVC6 projects for glide2x win9x build
30.8.2009: Fix LFB operations when paging is active
09.10.2009: Various fixes and code cleanups, fix originlocation + splash screen
24.11.2009: Fix some minor issues, add MacOSX support (!)
27.10.2010: Add Pył support, fix grLFBRead/WriteRegion
03.08.2011: Fix polygon rendering
08.06.2012: Fix grTexClampMode (thanks robertmo!)
11.03.2013: Increase LFB mem and support simultaneous locks, fix Unreal GPF