Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
SuperIlu

Homepage

Berlin, Germany,
12.02.2020, 20:37
 

Interoperable 3dfx/Glide3 DXEs (Announce)

Hi,

I don't know if anybody beside me is in need of it, but I was able to create a cross compile script which creates working versions of the 3dfx/Glide3 library.
The resulting DXEs are interchangeable as long as the EXE is linked against the Voodoo 1 version of Glide3 (later versions of the card provide extra functionality).

The modified sources as well as a minimal README and the cross compile script are available on my GitHub.
https://github.com/SuperIlu/glide

cheers
Ilu

---
Javascript on MS-DOS? Try DOjS https://github.com/SuperIlu/DOjS
Fediverse: @dec_hl@mastodon.social

RayeR

Homepage

CZ,
13.02.2020, 01:13

@ SuperIlu

Interoperable 3dfx/Glide3 DXEs

I know that Quake2DOS use GLIDE3X.DXE module and it should be working. What did you need to modify?

---
DOS gives me freedom to unlimited HW access.

SuperIlu

Homepage

Berlin, Germany,
13.02.2020, 20:06

@ RayeR

Interoperable 3dfx/Glide3 DXEs

Hi,

> I know that Quake2DOS use GLIDE3X.DXE module and it should be working. What
> did you need to modify?
I don't know about Quake2DOS, but yes, the DXEs of QDOSFX work fine as well.
I just wasn't able to get them running with my project (DOjS) for several reasons:
* The link library stub for the DXEs in QDOSFX are not available, so I had to compile Glide3 myself
* Doing so yielded only a black screen when I used my cross DJGPP which is based in GCC 7.2.0
* So I compiled Glide3 with my setup, but just used the link library stub together with the DXEs from QDOSFX. This worked fine if stub and DXE matched, but not if compiled against V2 and used with V2 DXE
* Apparently when you load a DXE directly the loader stub checks that all symbols are available, QDOSFX does not load the GLIDE3.DXE directly but indirectly by loading the OPENGL.DXE which then references the GLIDE3.DXE.
* In my case this kept me from using the QDOSFX DXEs and I was back to try to compile Glide3 myself

I did some small changes to the Makefiles, added the cross.sh cross compile script and wrote a short README on how to obtain working Glide3 binaries.
I also changed two .c files where the compiler created a bad fog table size and the LFB access did not work for Voodoo 1.

Using cross.sh with GCC 4.7.3 now yields an output directory which contains DEXs, libglide3i.a, libglide3x.a, matching include files and a dxe.c which provides all symbols that are needed in the DXE to the main program.

When a software is linked against the Voodoo1 version of the stub it can use all other DEXs to run on different hardware.

cheers
Ilu

---
Javascript on MS-DOS? Try DOjS https://github.com/SuperIlu/DOjS
Fediverse: @dec_hl@mastodon.social

Laaca

Homepage

Czech republic,
15.02.2020, 22:29

@ SuperIlu

Interoperable 3dfx/Glide3 DXEs

It could be an interresting technical discusion between SuperIlu and Sezero about flexibility of their variants on 3DFX support.
By the way, it would be nice to see some support for this 3DFX library also in Freepascal and Freebasic.
In Freebasic it should be easier as it depends and uses LIBC.A and LIBGCC.A files. (and Freepascal shares only the COFF executable format)

---
DOS-u-akbar!

SuperIlu

Homepage

Berlin, Germany,
16.02.2020, 13:26

@ Laaca

Interoperable 3dfx/Glide3 DXEs

Hi

> It could be an interresting technical discusion between SuperIlu and Sezero
> about flexibility of their variants on 3DFX support.
Well, if the Sezero you mention is the Sezero I forked my version from... :-D
As I said: I did'nt really change a lot of stuff, just got it working for my kind of use-case...

> By the way, it would be nice to see some support for this 3DFX library also
> in Freepascal and Freebasic.
I just checked how FreeBASIC handles C-libraries. Seems like it is just quite a lot of work to translate the glide include files to BASIC.
I only used FreeBASIC once for fun, so there is no incentive for me, but I would be willing to help with what little insight I had...

cheers Ilu

---
Javascript on MS-DOS? Try DOjS https://github.com/SuperIlu/DOjS
Fediverse: @dec_hl@mastodon.social

Back to the board
Thread view  Mix view  Order
22632 Postings in 2109 Threads, 402 registered users, 438 users online (0 registered, 438 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum