VOGONS


3dfx voodoo chip emulation

Topic actions

  • This topic is locked. You cannot reply or edit posts.

Reply 160 of 386, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

I was just thinking about that...you obviously need an opengl context to use opengl commands and creating one is quite complicated and requires a lot of platform dependent code. SDL can do it for you, but then you need to have output=opengl set, since you can't have multiple windows with SDL1.2.
If we go to full opengl hardware renderer then dosbox render pipline (scalers, capturing) is not used. It would be fast, but again dosbox would not be in control of the render window. There could be a special path where a frame is readback to system memory just before it is shown on the screen and the image fed into the capture system (or even entire render pipeline, where it would scaled, captured and then sent back to opengl). It would be slower (probably a lot), but video capture would work.
Fullscreen switching is actually a very simple problem...the only trouble is that video ram contents are lost during modeswitch. So all you need to do is reupload all texture images (which are shadowed in the emulated voodoo texture memory anyway). I haven't done it yet because I simply hadn't had the time to study how Glide handles textures and how to recreate OpenGL textures from voodoo texmem...

http://www.si-gamer.net/gulikoza

Reply 161 of 386, by Yushatak

User metadata
Rank Member
Rank
Member

It's possible that I'm a tad ignorant in the following remark, so if it's off-key just ignore me..

Why go for OpenGL specifically - DOSBox already uses SDL, and if you use SDL as well it will work in all of the render modes. Are there not functions to do the specific things you want to do in SDL, only in each API separately?

Reply 164 of 386, by kekko

User metadata
Rank Oldbie
Rank
Oldbie

latest stable sources.
If you want to comment/contribute, you're welcome, but I won't give you support on how to build or why it's so slow and such things 😀

Attachments

  • Filename
    dosbox_20101001.zip
    File size
    1.01 MiB
    Downloads
    520 downloads
    File license
    Fair use/fair dealing exception

Reply 167 of 386, by robertmo

User metadata
Rank l33t++
Rank
l33t++

it looks it doesn't have memory leak when compiled with mingw now.

anyway i was wondering:
I had Gothic 1 Demo running in i think dosbox_20100911.zip but i cannot reproduce it anymore with any later build. Of course i cannot reproduce it with that old build too cause it is too buggy (i don't even know how i managed to run it that time 😉 ) So i don't know whether it is me doing sth wrong, or sth got broken since that time in dosbox. It looks like the game runs with s3 but hard to say whether it detects at all 3dfx cause the game menu is black so everything has to be done blindly.

Reply 169 of 386, by dj_def

User metadata
Rank Newbie
Rank
Newbie

Very good work 😀
I compiled the 20101001 version under windows7 (msys) and under linux (ubuntu 10.10) and the process can't go on untill I remove a SDL header file into the include directory. After that it get succesfully compiled.
Windows 95 detected the voodoo card. The only thing I tried was blood (after restarting in dos-mode) and the game crashes immediatly after loading (the screen becomes black so no interesting message can be read) 😀
Are there dos games that you need to test?

Reply 171 of 386, by dj_def

User metadata
Rank Newbie
Rank
Newbie

Well, I ran Shadowarrior Shareware with 3dfx patch and it works only under windows 95! It doesn't work under windows 95 dos-mode or under dosbox without windows 95 installed.
Blood doesn't work anyway. Obiously running a game in windows 95 makes it very very slow.
Maybe I'm using a bad dosbox.conf? Is there any important setting to do?

Reply 178 of 386, by Yushatak

User metadata
Rank Member
Rank
Member

ykhwong: It would be really cool, I was thinking, if that when this Voodoo emulation is completed (or stable, at least) you incorporated it into your build with a selection between the software Glide wrapper passthrough to the host as we have now, or the full emulation. This way you could achieve the compatibility of both (the current one works great with most titles now, and is likely to always be faster than full emulation, but some titles may need full emulation) without having to have multiple copies of DOSBox installed.

kekko: I'm compiling it now to run a test for ya - more data is always good. 😀

Edit: Compiled fine and runs, but I realized I don't have a DOS Voodoo game on hand.. getting one, will edit with result (I'm too lazy to install Win95, sorry 🤣).

Edit 2: Tomb Raider works just fine, saw 3dfx logo and all, runs.. I used the OVL you provided here in the game directory.

Was slow, as I'd expect while still early in development, but playable (albeit not ideal smoothness). I did notice some sound crackling, dunno if that's DOSBox's CD Audio playback, the heavy resource usage of 3dfx emulation - no idea.

System Specs:
C2Q 9650 3ghz
6gb ram
Win7-64
Radeon 4870 2gb VRAM

Keep up the good work. 😁

Oh, and I haven't played Tomb Raider (1) in a REALLY long time, but the "sky" was black when I started a new game and was running around. If it's a tunnel or something this is fine, otherwise something was wonky.