VOGONS


Another Openglide fork

Topic actions

First post, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

I spent a couple of months last year to work on openglide.

OpenGL is kinda of my expertise, As I am a graphics programmer. So the changes are very aggressive, considering openglide is somehow out of maintenance:

  • Logs and configs are totally rewritten.
  • Glide3x is added, but not all extensions supported
  • Shader (glsl) is added to fully emulate the texture combine and color combine functions, but it is optional, the fixed function pipeline emulation still exist as fallback. Gamma correction by shader.
  • Linear Frame Buffer (LFB) improvements (LFB Z/depth read), MSAA, FXAA.
  • A configs GUI is added.
  • compiler changes to MinGW-MSVC which generate exe that works in win98, and to keep the legacy, the code still can be compiled by vc6
  • 2 TMU support. actually 4 supported but some games doesn't recognize 4 and fallback to 1.
  • resolution scale and display modes. I spent a lot time on hacking windowed mode.

Tested a few games: NFS2SE, NFS3, NFSpu, MDK, Diablo II, hitman, serious sam, counter-strike, quake2 and return to castle Wolfenstein.

The coding was at its final phase, that the Linux build is broken and untested (QEMU or at least Dosbox glide passthrough). I tested in Linux Wine but the native Linux support is a big reason why I worked on this. The fixed function pipeline emulation can also be improved so that a MX440 can emulate 3DFX in win98.

I don't remember all the details as it's been about a year since I last worked on it. and my PC is turned off now, I will update more detail tomorrow night.

The code is on my GitHub repo and I will release it to the public in the coming days.

Last edited by crazii on 2026-05-10, 10:40. Edited 1 time in total.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1 of 9, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

I made the fork public just now: https://github.com/crazii/openglide
I will build a release zip with glid2x.dll + glide3x.dll + openglide_settings.exe as an early test package.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 2 of 9, by arablizzard2413

User metadata
Rank Newbie
Rank
Newbie

The client threading added appears to be crashing King's Quest Mask of Eternity. Additionally, it looks like that game writes multiple times to TMU1 for the Dynamic Lighting option to generate the light map and thrashes the TexDB hashes.

Reply 3 of 9, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie

Thanks, what is the bare minimum for the CPU and GPU? I did try it with MMX CPU and OpenGL 1.1 GPU on two games (NFS2SE and Manx TT Super Bike) and i did try OpenGL 1.2.
OpenGL 1.1 gives game exe error and OpenGL 1.2 shows 3Dfx logo and then gives Glide2x.dll error. Some extra errors on Manx TT Super Bike with screenshots on both OpenGL-s.
ATi Radeon 7500 64MB AGP OpenGL 1.3 is similar to ATi Rage128 Pro that it shows 3Dfx logo and then errors, seems that Celeron Mendocino 533Mhz MMX cpu is too old for it?

ATi Rage Pro 8MB AGP-OpenGL 1.1
NFS2SEA caused an invalid page fault in
module <unknown> at 0000:00000003.
Registers:
EAX=00000001 CS=0187 EIP=00000003 EFLGS=00210202
EBX=00000001 SS=018f ESP=0188fd58 EBP=00000000
ECX=00000000 DS=018f ESI=00000000 FS=3457
EDX=00000001 ES=018f EDI=00000000 GS=0000
Bytes at CS:EIP:
00 65 04 70 00 16 00 97 05 65 04 70 00 65 04 70
Stack dump:
6ca51b61 000084c0 bff813f8 817f9500 6ca62115 00000000 00000000 00000000 6ca4c21b 00000000 00000000 00000000 6ca46517 00000000 00000000 00000000

ATi Rage Pro 8MB AGP-OpenGL 1.1
GLMANXTT caused an invalid page fault in
module <unknown> at 0000:00000003.
Registers:
EAX=00000001 CS=0187 EIP=00000003 EFLGS=00210202
EBX=00000001 SS=018f ESP=00c6f890 EBP=00000000
ECX=00000000 DS=018f ESI=00000000 FS=343f
EDX=00000001 ES=018f EDI=00000000 GS=0000
Bytes at CS:EIP:
00 65 04 70 00 16 00 97 05 65 04 70 00 65 04 70
Stack dump:
6ca51b61 000084c0 bff813f8 817f9f30 6ca62115 00000000 00000000 00000000 6ca4c21b 00000000 00000000 00000000 6ca46517 00000000 00000000 00000000

ATi Rage 128 Pro 32MB AGP-OpenGL 1.2
NFS2SEA caused an invalid page fault in
module GLIDE2X.DLL at 0197:6ca49d37.
Registers:
EAX=0233000c CS=0197 EIP=6ca49d37 EFLGS=00010202
EBX=00000001 SS=019f ESP=0070fadc EBP=0433000c
ECX=008338c0 DS=019f ESI=00000001 FS=0cc7
EDX=00000000 ES=019f EDI=02000000 GS=0000
Bytes at CS:EIP:
c7 04 38 ff ff ff 00 3b 1d 84 c5 b7 6c 72 b3 46
Stack dump:
00000000 00000000 00000000 00004100 00000000 00623700 00000000 000003d8 00000035 0070fb20 690849e0 00004100 00000000 0000ffff 0000027e 00000000

ATi Rage 128 Pro 32MB AGP-OpenGL 1.2
GLMANXTT caused an invalid page fault in
module GLMANXTT.EXE at 0197:0046ada0.
Registers:
EAX=00000001 CS=0197 EIP=0046ada0 EFLGS=00010202
EBX=00000002 SS=019f ESP=00c6fa24 EBP=00c6fa48
ECX=00000000 DS=019f ESI=00000000 FS=0eaf
EDX=030029e2 ES=019f EDI=010029e0 GS=0000
Bytes at CS:EIP:
66 89 4a fe 3d 80 02 00 00 7c f1 43 81 fb e0 01
Stack dump:
00000014 010029e0 01000000 00000000 00000000 00000010 8188f3b8 00000007 000009b0 00c6fa5c 0046ad2a 0004b000 00400000 004a1d38 00c6faf8 00411f12

Best ATi Rage3 drivers for 3DCIF / Direct3D / OpenGL / GLUT / DVD : ATi RagePro drivers and software
33+MiniGL / OpenGL Win 9x dll files for all ATi-Rage3 based cards : Re: ATi RagePro OpenGL files

Reply 4 of 9, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
arablizzard2413 wrote on Yesterday, 06:10:

The client threading added appears to be crashing King's Quest Mask of Eternity. Additionally, it looks like that game writes multiple times to TMU1 for the Dynamic Lighting option to generate the light map and thrashes the TexDB hashes.

Thanks for the feedback, I can you tell me you system specs? CPU, gpu , system memory and video memory, OS etc.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 5 of 9, by arablizzard2413

User metadata
Rank Newbie
Rank
Newbie
crazii wrote on Yesterday, 16:03:
arablizzard2413 wrote on Yesterday, 06:10:

The client threading added appears to be crashing King's Quest Mask of Eternity. Additionally, it looks like that game writes multiple times to TMU1 for the Dynamic Lighting option to generate the light map and thrashes the TexDB hashes.

Thanks for the feedback, I can you tell me you system specs? CPU, gpu , system memory and video memory, OS etc.

https://github.com/crazii/openglide/issues/1

Minisforum UM790 Pro
Ryzen 9 7940HS
Radeon 780M graphics
64 GB RAM
Windows 11 Pro

Also happens with a Dell G5 5590, Intel Core i7-9750H, NVIDIA GeForce 2060, 64 GB RAM, Windows 11 Pro.

The TMU1 knowledge comes from other logs unrelated to your specific Glide wrapper branch but still a fault of OpenGlide's architecture. This game specifically requires accurate dual TMU handling.

Reply 6 of 9, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
marxveix wrote on Yesterday, 07:29:
Thanks, what is the bare minimum for the CPU and GPU? I did try it with MMX CPU and OpenGL 1.1 GPU on two games (NFS2SE and Manx […]
Show full quote

Thanks, what is the bare minimum for the CPU and GPU? I did try it with MMX CPU and OpenGL 1.1 GPU on two games (NFS2SE and Manx TT Super Bike) and i did try OpenGL 1.2.
OpenGL 1.1 gives game exe error and OpenGL 1.2 shows 3Dfx logo and then gives Glide2x.dll error. Some extra errors on Manx TT Super Bike with screenshots on both OpenGL-s.
ATi Radeon 7500 64MB AGP OpenGL 1.3 is similar to ATi Rage128 Pro that it shows 3Dfx logo and then errors, seems that Celeron Mendocino 533Mhz MMX cpu is too old for it?

ATi Rage Pro 8MB AGP-OpenGL 1.1
NFS2SEA caused an invalid page fault in
module <unknown> at 0000:00000003.
Registers:
EAX=00000001 CS=0187 EIP=00000003 EFLGS=00210202
EBX=00000001 SS=018f ESP=0188fd58 EBP=00000000
ECX=00000000 DS=018f ESI=00000000 FS=3457
EDX=00000001 ES=018f EDI=00000000 GS=0000
Bytes at CS:EIP:
00 65 04 70 00 16 00 97 05 65 04 70 00 65 04 70
Stack dump:
6ca51b61 000084c0 bff813f8 817f9500 6ca62115 00000000 00000000 00000000 6ca4c21b 00000000 00000000 00000000 6ca46517 00000000 00000000 00000000

ATi Rage Pro 8MB AGP-OpenGL 1.1
GLMANXTT caused an invalid page fault in
module <unknown> at 0000:00000003.
Registers:
EAX=00000001 CS=0187 EIP=00000003 EFLGS=00210202
EBX=00000001 SS=018f ESP=00c6f890 EBP=00000000
ECX=00000000 DS=018f ESI=00000000 FS=343f
EDX=00000001 ES=018f EDI=00000000 GS=0000
Bytes at CS:EIP:
00 65 04 70 00 16 00 97 05 65 04 70 00 65 04 70
Stack dump:
6ca51b61 000084c0 bff813f8 817f9f30 6ca62115 00000000 00000000 00000000 6ca4c21b 00000000 00000000 00000000 6ca46517 00000000 00000000 00000000

ATi Rage 128 Pro 32MB AGP-OpenGL 1.2
NFS2SEA caused an invalid page fault in
module GLIDE2X.DLL at 0197:6ca49d37.
Registers:
EAX=0233000c CS=0197 EIP=6ca49d37 EFLGS=00010202
EBX=00000001 SS=019f ESP=0070fadc EBP=0433000c
ECX=008338c0 DS=019f ESI=00000001 FS=0cc7
EDX=00000000 ES=019f EDI=02000000 GS=0000
Bytes at CS:EIP:
c7 04 38 ff ff ff 00 3b 1d 84 c5 b7 6c 72 b3 46
Stack dump:
00000000 00000000 00000000 00004100 00000000 00623700 00000000 000003d8 00000035 0070fb20 690849e0 00004100 00000000 0000ffff 0000027e 00000000

ATi Rage 128 Pro 32MB AGP-OpenGL 1.2
GLMANXTT caused an invalid page fault in
module GLMANXTT.EXE at 0197:0046ada0.
Registers:
EAX=00000001 CS=0197 EIP=0046ada0 EFLGS=00010202
EBX=00000002 SS=019f ESP=00c6fa24 EBP=00c6fa48
ECX=00000000 DS=019f ESI=00000000 FS=0eaf
EDX=030029e2 ES=019f EDI=010029e0 GS=0000
Bytes at CS:EIP:
66 89 4a fe 3d 80 02 00 00 7c f1 43 81 fb e0 01
Stack dump:
00000014 010029e0 01000000 00000000 00000000 00000010 8188f3b8 00000007 000009b0 00c6fa5c 0046ad2a 0004b000 00400000 004a1d38 00c6faf8 00411f12

I don't think CPU could be the problem, what's you system memory and openglide-settings for texture memory? Last time I tested on virtualbox it might need 256M or maybe more for large texture memory. video card memory also matters because there is no optimization yet for limited VideoRAM. Textures are fully cached in card which will be a big problem for old cards.
I didn't tested on real w98 PC yet, ATI rage probably not working for its limited video mem. I have some laptops or thin clients with ATI rage pro or similar, I can test it later.

The minimal estimated fully working card should be a pixel shader 2.0 / OpenGL 2.0 card that support glsl, like GeForce FX5200 or ATI Radeon 9600. I need to check the README.md but my phone doesn't have VPN for the blocked GitHub. There're known visual bugs without shader, but at least it should not crash.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 7 of 9, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
arablizzard2413 wrote on Yesterday, 16:16:
https://github.com/crazii/openglide/issues/1 […]
Show full quote
crazii wrote on Yesterday, 16:03:
arablizzard2413 wrote on Yesterday, 06:10:

The client threading added appears to be crashing King's Quest Mask of Eternity. Additionally, it looks like that game writes multiple times to TMU1 for the Dynamic Lighting option to generate the light map and thrashes the TexDB hashes.

Thanks for the feedback, I can you tell me you system specs? CPU, gpu , system memory and video memory, OS etc.

https://github.com/crazii/openglide/issues/1

Minisforum UM790 Pro
Ryzen 9 7940HS
Radeon 780M graphics
64 GB RAM
Windows 11 Pro

Also happens with a Dell G5 5590, Intel Core i7-9750H, NVIDIA GeForce 2060, 64 GB RAM, Windows 11 Pro.

The TMU1 knowledge comes from other logs unrelated to your specific Glide wrapper branch but still a fault of OpenGlide's architecture. This game specifically requires accurate dual TMU handling.

A modern PC, that's a big relief, more easy to fix 😁. I will check it in the coming weeks.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 8 of 9, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on Yesterday, 16:24:

I don't think CPU could be the problem, what's you system memory and openglide-settings for texture memory? Last time I tested on virtualbox it might need 256M or maybe more for large texture memory. video card memory also matters because there is no optimization yet for limited VideoRAM. Textures are fully cached in card which will be a big problem for old cards.
I didn't tested on real w98 PC yet, ATI rage probably not working for its limited video mem. I have some laptops or thin clients with ATI rage pro or similar, I can test it later.

The minimal estimated fully working card should be a pixel shader 2.0 / OpenGL 2.0 card that support glsl, like GeForce FX5200 or ATI Radeon 9600. I need to check the README.md but my phone doesn't have VPN for the blocked GitHub. There're known visual bugs without shader, but at least it should not crash.

Wanted to try Radeon 9500, but driver did not install at the moment correctly, so i checked with Geforce2 MX, that gives just black screen without errors, but some ATi OpenGL-s did the same before, i just changed OpenGL file and then got 3DFx logo and error codes from games. If i start with FX and other Nvidia cards, can you say what driver you used, was it 45.23? I hope i get some game screens soon. 😀

PC1 MMX specs (Rage3/Rage4/Radeon7500)
Intel 440 drivers and bios settings

PC2 Specs i have screenshot with ATi R7500 - OpenGL Extensions Issues with all three ATi cards, is OpenGL v1.1 even supported at OpenGlide?
Similar that 3DFx logo and then error. I did try more games and Error1, Error2, Error3 gives probably more info, like it does have no Acceleration,
but OpenGL games work on both PC-s. OpenGlide has some GL ext requirements that Rage / Radeon cards dont have. glstring info from R7500.

https://registry.khronos.org/OpenGL/extension … cked_pixels.txt
https://registry.khronos.org/OpenGL/extension … XT/EXT_abgr.txt

------------------------------------------------------

I did take third PC3, it has clean Win98SE install, it has Radeon 9600XT, Directx9c, similar errors as with before, like Rage128 Pro and up. So far not any game screen after 3DFx logo. 😀

PC Specs at SSE3 CPU and Radeon 9600. Socket 754 DOS/Win9x/XP Machine

Best ATi Rage3 drivers for 3DCIF / Direct3D / OpenGL / GLUT / DVD : ATi RagePro drivers and software
33+MiniGL / OpenGL Win 9x dll files for all ATi-Rage3 based cards : Re: ATi RagePro OpenGL files

Reply 9 of 9, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
marxveix wrote on Yesterday, 17:01:
Wanted to try Radeon 9500, but driver did not install at the moment correctly, so i checked with Geforce2 MX, that gives just bl […]
Show full quote
crazii wrote on Yesterday, 16:24:

I don't think CPU could be the problem, what's you system memory and openglide-settings for texture memory? Last time I tested on virtualbox it might need 256M or maybe more for large texture memory. video card memory also matters because there is no optimization yet for limited VideoRAM. Textures are fully cached in card which will be a big problem for old cards.
I didn't tested on real w98 PC yet, ATI rage probably not working for its limited video mem. I have some laptops or thin clients with ATI rage pro or similar, I can test it later.

The minimal estimated fully working card should be a pixel shader 2.0 / OpenGL 2.0 card that support glsl, like GeForce FX5200 or ATI Radeon 9600. I need to check the README.md but my phone doesn't have VPN for the blocked GitHub. There're known visual bugs without shader, but at least it should not crash.

Wanted to try Radeon 9500, but driver did not install at the moment correctly, so i checked with Geforce2 MX, that gives just black screen without errors, but some ATi OpenGL-s did the same before, i just changed OpenGL file and then got 3DFx logo and error codes from games. If i start with FX and other Nvidia cards, can you say what driver you used, was it 45.23? I hope i get some game screens soon. 😀

PC1 MMX specs (Rage3/Rage4/Radeon7500)
Intel 440 drivers and bios settings

PC2 Specs i have screenshot with ATi R7500 - OpenGL Extensions Issues with all three ATi cards, is OpenGL v1.1 even supported at OpenGlide?
Similar that 3DFx logo and then error. I did try more games and Error1, Error2, Error3 gives probably more info, like it does have no Acceleration,
but OpenGL games work on both PC-s. OpenGlide has some GL ext requirements that Rage / Radeon cards dont have. glstring info from R7500.

https://registry.khronos.org/OpenGL/extension … cked_pixels.txt
https://registry.khronos.org/OpenGL/extension … XT/EXT_abgr.txt

------------------------------------------------------

I did take third PC3, it has clean Win98SE install, it has Radeon 9600XT, Directx9c, similar errors as with before, like Rage128 Pro and up. So far not any game screen after 3DFx logo. 😀

PC Specs at SSE3 CPU and Radeon 9600. Socket 754 DOS/Win9x/XP Machine

Don't worry I think there's bug in the code for legacy cards, your 7500 should launch. I will get a 98 PC and test it.

OpenGL1.1 should work, but there might be bugs that skip test the existence of some GL extensions and use the extention function directly, which causes exceptions.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD