Reply 520 of 862, by __ggorts
I don't recall modifying anything in mesa5, although I recall removing the splash screen by a definition line at the command line.
I don't recall modifying anything in mesa5, although I recall removing the splash screen by a definition line at the command line.
What is the makefile used? You should just diff the entire thing against current q2dos so I can get a better understand of how to link it all up statically.
I just made a single line change, I'll retrieve the change now.
There:
$(CC) $(OBJECTS) $(LDFLAGS) $(VORBIS_LIBS) $(CURL_LIBS) $(WATT32_LIBS) -Lref_gl/lib -lgl -lglu -lglid3 -lm -o $@
And this to the makefile:
CPPFLAGS = -Iref_gl/include -Iref_gl/include/glide3 -DCLIENT_SPLIT_NETFRAME
I also disabled the ogg and other functions as I've done before. This may help, too:
REFSOFT = ref_gl/gl_draw.o \
ref_gl/gl_image.o \
ref_gl/gl_light.o \
ref_gl/gl_mesh.o \
ref_gl/gl_model.o \
ref_gl/gl_rmain.o \
ref_gl/gl_rmisc.o \
ref_gl/gl_rsurf.o \
ref_gl/gl_warp.o \
ref_gl/qgl_linux.o \
ref_gl/gl_fxmesa.o
I enjoyed attempting this project, but I'll leave it to others to try. I will no longer work on this project or visit the forum again. I wish everyone success in their work.
You don't have to leave the forum just because you got stuck at a point in your programming. Nobody is a badass programmer right off the bat. Hell, I don't even know what I'm doing sometimes.
Despite all of the previous discussion... I have ported the qbism renderer (with some updated Q2DOS fixes and custom CVARs) into the win32 "port" with no ill effects. If no problems are encountered later on I should have it as an optional renderer to select from in the video options menu and in DOS sometime tomorrow.
I noticed all ASM is stripped out, but quite a few C-Only versions changes included just relying on checking some if/else statements for colour dlights so it may be slightly trivial to add the if/else statements into ASM and bring some speed boosts back.
wrote:You don't have to leave the forum just because you got stuck at a point in your programming. Nobody is a badass programmer right off the bat. Hell, I don't even know what I'm doing sometimes.
Agreed.
Also, it took me this long to realize his username was "Strogg" backwards 😁
"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen
Stiletto
wrote:wrote:You don't have to leave the forum just because you got stuck at a point in your programming. Nobody is a badass programmer right off the bat. Hell, I don't even know what I'm doing sometimes.
Agreed.
Also, it took me this long to realize his username was "Strogg" backwards 😁
I never noticed that either.
In any case, I added the qbism renderer to Q2DOS now. You can select it via the menu or use vid_ref "sqb". I recommend an r_lightsaturation value around 0.6 so it's not so cartoon-y.
I'm planning on trying to readapt some of the if/else stuff in the C-only code back into the ASM so we can get a speed boost back. The download is in the same place as always: https://bitbucket.org/neozeed/q2dos/downloads … S_EXE_LATEST.7Z
For fun here is two comparision shots:
Looks like Qbism might've junked my 3dfxGL+gamma-matching colored light lookup also. For reference here is where my original crashy implementation is at., r_draw.c has the mentioned 3dfxgammamatch stuff in Draw_InitRGBMap
If you want to contribute to it as a separate branch in q2dos I can give you some write access.
Forgot to post this last 3dfx version of q2dos (voodoo 1). I am now searching to verify that all code is posted for this later version, but this one is playable. Given some confirmation, then I will upload a development package for the libraries so others don't have to build the source code.
Wow it does work in dosbox-g for sure. Someone with a voodoo 1 should test it out.
If you can post binaries and complete source I may be able to rebuild it with the voodoo 5 support. Even if the code base is a mess I can use beyondcompare to quickly find changes and make it work. That's what I've been using previously to peek at your code.
Wow it even works in PCEM! And in PCEM proper mipmapping is enabled so it looks just as it does on other hardware.
Please find the attached with the gl renderer file and header/libs for mesa502+glide3-sst1. There is also a reference patch to show the gl renderer changes from the original, although it's already applied in the attached archive. Also, there is a patch against your latest q2dos, which should be complete, but I hobbled it together hastily.
Note that the "game quit" function is not working, so it requires further work. There are other issues, and since this is only a demo and I'm unable to properly port the gl renderer. I look forward to your port, given this is of interest to q2dos.
There were several bugs, but mainly djgpp issues. I think you will have no trouble porting the gl function to any of the quakes in dos, too. One bug was in mesa502 and it was difficult to find. It was the cause of the keyboard input problem from earlier, but it required a minor change and is in the archive. Mesa502 is available and should be compiled by x86=1 and FX=1 (I used djgpp204/gcc295). Glide3 is necessary for the hardware acceleration, but both header/libraries are there for convenience. Both include the x86.
Thank you, too, for porting qbism's renderer and for working on the assembly functions to make it faster. I'm excited to run the game with it.
Edit: I'm glad that PCem is working nicely! I haven't set it up yet, but it's great to have multiple renditions of the 3dfx emulation.
Also attached the glide3 source code for sst1/cvg devices. The only change was to disable the splash screen in a file under sst1 (probably the only file with a recent modification date). In addition, there are mesa makefiles in case they needed; although the other package has the minor patch for mesa502, too.
A while back you posted a diff for the voodoo 5 code for DJ 2.05. I remember sezero said you made the wrong changes in LinearWriteRegion. I can't find the patch anymore that had the appropriate changes. For some reason my glide3x directory is now missing all the changes I used previously.
can you try buildling glid3x with export FX_GLIDE_HW ?= cvg
and post an updated q2dos with it here? That should be voodoo 2 cards.
We can remake that code again instead. I recall the small asm line change and all his changes, too. If you're confident that everything above is complete, then we can attempt the V5 driver now, or I can advise, whichever is better.