Quake 2 DOS, Quake DOS, and FitzQuake DOS with Mesa!

Started by Maraakate, 15 September 2015, 19:26:27

Previous topic - Next topic

Maraakate

Hello everyone, recently me and sezero (from QuakeSpasm and uHexen2) have used dborca's DMesa and glide3x DOS ports to enable 3DFX rendering in DOS with the first two Quake games.

Performance is pretty good, very comparable to Mesa Windows (most times exceeding Mesa Windows performance).  I'm satisfied enough with it to warrant posting this publicly.

Quake 2 DOS
Quake and QuakeWorld DOS
FitzQuake DOS

Source is available for all projects on bitbucket.org.  There are some small issues, mostly in the readme.fx of Q2DOS.  The biggest one being some slow down in the warehouse map when grabbing the power cubes and the dynamic light effect either fades in or out the lights for the entire room.  This issue happens on Mesa Windows as well.  It appears in Mesa 6.1 and later the vertex and fragments tnl code was entirely overhauled, leaving some sort of bug in this code with large values.  We don't have much lower level 3D video programming experience so we are unable to resolve the issue.  Maybe someone else here can?  A workaround is to recompile Mesa 6.0.2 with DJGPP 2.05 and GCC 3.46 if it really bothers you.

One other issue is excessive video mode changes in Q2DOS on Voodoo 5 5500 SLI cards can cause an SLI screw requiring a reboot.  So, find a resolution you like and keep it there if you can.

Our version of Mesa is based on 6.4.2, but uses the final updates to that particular branch when they were aiming for a 6.4.3 release, but appears to never have been released.

Our glide3x is based on the final commit to the development branch on sourceforge.


Everything includes online play, and the Quake 1 ports have extended limits and BSP2 support allowing you to play the new HUGE maps that have been released.
 

Maraakate

#1
For those interested here are benchmarks on a Pentium 3 800mhz overclocked to ~900mhz on an Asus P3B-F. 512MB RAM. Voodoo 5 5500 AGP.  Gravis UltraSound Extreme/Synergy ViperMax. Sound was ON for these tests. Smartdrv /x and UMBPCI with Doslfn for DOS.

16M and 32M are with multitexturing. Bilinear filtering with point parameters disabled as it causes speed issues with Mesa (DOS or Windows). No 8-bit texture mode. Default driver settings in Windows with V-Sync Off. Q2DOS uses FX_GLIDE_SWAPPENDINGCOUNT=6, MESA_FX_IGNORE_CMBEXT=1.

Oh, and timedemo 1; demomap demo1.dm2 :)









Some more interesting things to note is that 32-bit rendering is a little bit faster in Windows (Mesa or OpenGL ICD) with or without the multitexturing.  Multitexturing appears to only be useful at high resolutions and really helps 32-bit rendering in 1024x768 and beyond.

Of course, Wicked3D will always be the fastest with it's terrible image quality and various hacks at the expense of it's image quality and proper rendering ;).

 

Glide

Hi Maraakate, you're welcome.

Many compliments for interesting effort as well as for achieved results.

The game screenshots are very similar to those captured using an 3dfx system running on Windows. Also frame rates are good: the drop at high resolutions is broadly acceptable :).

Which 3dfx video cards were successfully tested using this port?

Bye bye

Boss

i have just glide wrapper now :D

Maraakate

QuoteOriginally posted by Glide

Hi Maraakate, you're welcome.

Many compliments for interesting effort as well as for achieved results.

The game screenshots are very similar to those captured using an 3dfx system running on Windows. Also frame rates are good: the drop at high resolutions is broadly acceptable :).

Which 3dfx video cards were successfully tested using this port?

Bye bye

Thanks for the compliment.  It's very much appreciated!  Yes, the image quality is very good.  32bpp can be output as well on Voodoo 5 5500, Anti-Aliasing kind of works, but appears to be buggy as I've had some lock ups on my system but it may just be my particular card.  Waiting on some extra V5's from falconfly to verify that issue.  But hey, we're talking about Quake here!  No time for AA! :)

I have successfully tested the port on a Voodoo 3 and a single Voodoo 2.  Someone else has reported it successful (though slow obviously) on a Voodoo Rush.

The game will run fine in pcem emulator compiled from latest sources or dosbox compiled with glide support.  So, in theory, Voodoo 1 should work too.

Falconfly is generously sending me some of the cards I don't own (e.g. Voodoo 1, Voodoo 2 SLI pair and a Voodoo Rush) so I will be able to verify them on real hardware as well.
 

Maraakate

Also, any chance our creation can go on the front page news in the 3dfx section? :)  Probably the first bit of new software news for 3dfx in quite some time!
 

Glide

Hi Maraakate,

many thanks for the replies. And it's sure: this work deserves to be shared with the whole Community ;)

Bye bye

Maraakate

QuoteOriginally posted by Glide

Hi Maraakate,

many thanks for the replies. And it's sure: this work deserves to be shared with the whole Community ;)

Bye bye

Cool. Thanks, let me know when it is on front page news :).
 

Maraakate

For those interested in the development involved to make this port possible a 5 part series is available at:

http://virtuallyfun.superglobalmegacorp.com/2015/06/02/porting-quake-ii-to-ms-dos-pt1/