VOGONS


Glide/CIF wrapper

Topic actions

First post, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

glide2cif. Wraps Glide 2.4 to ATI's CIF for the Rage Pro (Turbo) 8 MB. Alpha. Available from https://leikareipa.github.io/. Not open source.

The CIF API is reminiscent of Glide, equally featured in many ways but lacks some critical features, among them a global palette. At the moment maybe about a third of Windows Glide 2 games are playable, the rest you can expect will freeze or glitch your computer and maybe worse. The goal of the project is to bring some new games to the CIF ecosystem, 100% compatibility will never happen.

The Glide-exclusive Ignition works pretty good. Croc 1.0 with this wrapper looks to have fewer artifacts than the game's built-in CIF mode. GLQuake with 3dfx's MiniGL renders quite well but is about 25% slower than ATI's OpenGL driver. Need for Speed 2 SE almost works, although because of the palette issue it'll never work ideally.

Since it's alpha the debug OSD is always on. Watch for the PAL_ figure, it shows the number of palettes active. CIF doesn't allow palettes to be recycled unless all textures that use it are unregistered, if even then, so the alternative for better performance is to leave old palettes hanging and create new ones as the game modifies the global Glide palette. Some games behave well enough and others, like Motorhead, spam new palettes until the FPS tanks.

Reply 1 of 11, by Spark

User metadata
Rank Member
Rank
Member

Very nice, I will check it out as soon as possible.

Reply 2 of 11, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie

Amazing, Gona try it first with Rage XL AGP and later with Rage Pro, Thank you!
---------------------------------------------------------------

Rage Pro AGP / Rage LT Pro AGP / Rage XL AGP, all did not start NFS2SE or some other 3DFX game at the moment.
Can you share some specs of your PC? MyPC Celeron 533 Mendocino, 256mb ram, 440ex motherboard, ESS Solo1.

I have Win95b with DX8.0a at the moment. Glide2x.dll is inside game main folder or in C:\Windows\System\.
XGL200 Glide2x.dll starts some 3dfx game. ATi 3DCIF, D3D and OpenGL works well. First used my driver, then
4.11.2548 that you have, exact the same as before. Readme.txt cant be downloaded from your site right now.

Rage Pro Tweaker 1.2 is installed and 565 checkbox enabled.

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

Ok, found out that two files are needed for your Glide2x.dll.
WS2_32.dll and WS2HELP.dll copy to C:\Windows\System\
Now works, GLQuake gives error at exit, but game works ok.

8bit paletted textures are enabled at command.
Only 8MB cards work and Rage XL is the fastest!
640x480x16 - Celeron 533/256MB/Win95/DX8
MyWin9x 5.38 4.11.2611 / 5.40 4.11.2611 drivers.

timedemo demo1
GLQuake with 3Dfx MiniGL Rage XL AGP 24.6fps
GLQuake with 3Dfx MiniGL RageProAGP 23.1.fps
--------------------------------------

GLQUAKE error at game exit only

GLQUAKE caused an invalid page fault in
module ATI3DCIF.DLL at 0157:032263e7.
Registers:
EAX=033604b0 CS=0157 EIP=032263e7 EFLGS=00210206
EBX=00000000 SS=015f ESP=00fbfc24 EBP=00fbfe38
ECX=c10912f0 DS=015f ESI=10000000 FS=0f77
EDX=03b5f008 ES=015f EDI=00000001 GS=0000
Bytes at CS:EIP:
8b 48 04 8b 11 81 3a 01 02 00 00 73 0a b8 08 00
Stack dump:
00000001 10000000 00d7732b 00d89244 00d75a8b 00d89244 00000000 1000b9c1 10000000 00000000 03240932 10010f07 10000000 00000000 00000001 00fbfe38

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

Reply 3 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

WS2_32.dll would be Winsock stuff, used in the debug build for logging via network but not used in this release build. I'll use a different compiler option for later builds that should remove references to it so there's no dependency on these DLLs.

GLQuake does crash on exit here as well, don't know why but better than crashing on start. Seeing the same FPS on a Pentium 4 2.4 and a Rage Pro Turbo, so not CPU bottlenecked on the Celeron either then.

Need for Speed 2 renders black in menus and cockpit so you need to navigate blind. No idea yet why it does this, I can manually plot the vertex coordinates into the screen buffer and they're correct but CIF renders black, or seemingly renders nothing since no render state or vertex color forcing does anything. I remember having a similar issue with the Glide/S3d wrapper but can't remember what solved it, or even if it was an issue in the menus to begin with. The cockpit rendered black on that as well anyway. In any case once you're in a race the FPS is around 15 so not too good at this point.

Reply 4 of 11, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie
vvbee wrote on Yesterday, 13:28:

WS2_32.dll would be Winsock stuff, used in the debug build for logging via network but not used in this release build. I'll use a different compiler option for later builds that should remove references to it so there's no dependency on these DLLs.

GLQuake does crash on exit here as well, don't know why but better than crashing on start. Seeing the same FPS on a Pentium 4 2.4 and a Rage Pro Turbo, so not CPU bottlenecked on the Celeron either then.

Need for Speed 2 renders black in menus and cockpit so you need to navigate blind. No idea yet why it does this, I can manually plot the vertex coordinates into the screen buffer and they're correct but CIF renders black, or seemingly renders nothing since no render state or vertex color forcing does anything. I remember having a similar issue with the Glide/S3d wrapper but can't remember what solved it, or even if it was an issue in the menus to begin with. The cockpit rendered black on that as well anyway. In any case once you're in a race the FPS is around 15 so not too good at this point.

At second try i used win95ws2setup.exe and extracted those two files from there, now it runs bit better at nfs2se, i can see some game if i blindly use the menu.W98 may have those files already. Cant remember that any of the glide2d3d wrappers played Glide2x.dll+OpenGL32.dll so this is instant improvements already.With Rage XLAGP 8MB its bit more playable as well than original Rage Pro and thats without any CPU or VGA OC.

I try one playable 3DFX game at next, Ignition maybe.
Only 0.1 fps i get more if i use Celeron 533 at 548Mhz.

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

Rage XL advantages over Rage Pro @ 3D

• Bilinear Interpolation of Texture Alpha
(eliminates blocky clouds, explosions
and exhaust)
• Modulate Alpha Function (Texture Alpha *
Interpolated Alpha)
• Composite Alpha Modulate (Primary
Texture Color * Secondary Texture
Alpha)
• Fog Table Integration
• Extra Alpha Blend Weight Choices:
iALPHA_BLND_SRC and
iALPHA_BLND_DST
• Properly handle 1x1 and 2x2 texture maps
in bilinear interpolation mode
• CI8 - support [RGB555, RGB565,
RGB888, ARGB8888] modes

Rage XL has some fog support over Rage Pro, latest cif drivers try to use it sometimes with 4.11.2598 and 4.11.2611 drivers,
i have seen some fog with thief2 and ragexl@win9x. https://old.vgamuseum.info/images/stories/doc … tions_dec03.pdf
-------------------------------------------------

I did want to try different game than on you list.

Screamer Rally i get grSstOpen failed! error if i copy Glide2x.ovl to the game folder with Glide2x.dll, without Glide2x.ovl it gives, unable to load DLL.

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

Reply 5 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

Ignition with the wrapper has the advantage over native Glide that it restores the point particle effects. For example there's supposed to be a spray of particles when you drive over a puddle but I've never seen these with native Glide, just in the software version.

I'm not aware that they updated CIF with any features specific to the Rage XL, so these wouldn't be accessible via the API in any case. Passive improvements to image quality are another story.

grSstOpen is obsolete for Glide 2.4 so not supported. Maybe I'll implement an older version of Glide at some point.

Reply 6 of 11, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie
vvbee wrote on Yesterday, 17:01:

grSstOpen is obsolete for Glide 2.4 so not supported. Maybe I'll implement an older version of Glide at some point.

Thanks for explaining, good to know that some older game needs older version of glide to run the game.

Copied another version of the Glide2.ovl file and now i get -> gd error (glide): 3DFX chip not found!
dgvoodoo had all same issues so i think no need to look at it at the moment, i try to make screamer2
or screamer rally to get going, today was my first time with dgvoodoo and rage3, xgl200 i have used.

Downloaded it from here:
https://www.philscomputerlab.com/screamer-2--bleifuss.html
---------------------------------------------------

Just question why this glide2x.dll needs 8MB ram? Rage2 and Rage Pro can be configured to use with 6MB as well.
Rage 4MB + 2MB add on ram board 0r 2MB with 4MB add on ram board. So it would be 6MB, 4MB RAM is limited?

Last edited by marxveix on 2025-12-27, 17:57. Edited 1 time in total.

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

Reply 7 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie
marxveix wrote on Yesterday, 17:15:

Just question why this glide2x.dll needs 8MB ram? Rage2 and Rage Pro can be configured to use with 6MB as well.
Rage 4MB + 2MB add on ram board 0r 2MB with 4MB add on ram board. So it would be 6MB, 4MB RAM is limited?

It doesn't need it, it's just the most straighforward way. The wrapper reports itself as a Voodoo with 4 + 4 MB, so you get some extra mileage in terms of resolution anyway. Some say some games have issues with this configuration, but I haven't seen specific examples so that's to be seen.

Reply 8 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

Updates:
- Motorhead is now playable
- reduce/eliminate texture and palette thrashing
- tweak point particle colors in Ignition
- fix points not appearing in games other than Ignition
- support GR_TEXFMT_ALPHA_INTENSITY_44 (by converting to ARGB4444 which some games won't like)
- remove dependency on Winsock

Die by the Sword lost its alpha blended effects, for whatever reason.

Reply 9 of 11, by marxveix

User metadata
Rank Oldbie
Rank
Oldbie
vvbee wrote on Yesterday, 20:23:
Updates: - Motorhead is now playable - reduce/eliminate texture and palette thrashing - tweak point particle colors in Ignition […]
Show full quote

Updates:
- Motorhead is now playable
- reduce/eliminate texture and palette thrashing
- tweak point particle colors in Ignition
- fix points not appearing in games other than Ignition
- support GR_TEXFMT_ALPHA_INTENSITY_44 (by converting to ARGB4444 which some games won't like)
- remove dependency on Winsock

Die by the Sword lost its alpha blended effects, for whatever reason.

Fast update, faster than my testing.

NFS2SE / ESC/ Enter and F7 key makes screen visible in the game. F7 key is used to toggle the rearview mirror. Menu is black, like before.

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

Reply 10 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

Essentially Need for Speed 2 renders fine except that the menus and cockpit view render nothing. There's no clear reason for it as far as the menus go at least, and I can't exclude some hardware or driver bug on ATI's side either. The NFS games have a way of rendering splash screens that spams texture data and depends on timing and render engine idle conditions for it to display correctly, maybe this triggers the Rage into some failure mode even. Maybe not that likely but also not many alternative explanations left after testing quite a few.

Reply 11 of 11, by vvbee

User metadata
Rank Oldbie
Rank
Oldbie

If F7 is actually a mirror toggle and not cockpit view like I assumed then don't know what to make of that.

But I also have a CIF/software wrapper for testing purposes. Using that with the Glide/CIF wrapper has the menus working:

The attachment nfs2seglide2cifcif2sw.jpg is no longer available

The render quality isn't high but that's not the point. The point is this looks to be a hardware and/or driver issue on the Rage side then, since the software wrapper operates on the same CIF calls but manages to render the thing.

Maybe there's a way to work around it, but would first need to know what triggers the issue.