QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Schedules and announcements about program releases.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-04 @ 19:02

yes, you copy dgvoodoo2 files to qemu folder and it works only there.

yes ;)
Attachments
QEMU_guide_2.txt
(2.71 KiB) Downloaded 36 times
qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.7z
(1.79 MiB) Downloaded 25 times
Last edited by robertmo on 2019-2-06 @ 13:19, edited 2 times in total.
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-04 @ 21:43

Any old hdd image with dos that you used with vmware or virtualpc or virtualbox should work.
All mouse, cdrom and sound blaster 16 drivers you have there should work too.
ctrl-alt-f fullscreen
ctrl-alt-g capture/release mouse
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-05 @ 11:20

bootable 2GB hdd image with mouse, cd and sound blaster 16 drivers.
works with both WHPX and HAXM.
Although I don't recomend using WHPX cause you have to remember to use cls to prevent crashing and it is slower.
Attachments
boot.7z
(1.23 MiB) Downloaded 25 times
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby ruthan » 2019-2-06 @ 12:16

Thanks very much for preconfigured files..

My experience:
- i used QEMU version 3.1.0 Windows x64 build, which i downloaded here: https://qemu.weilnetz.de/w64/
- when i start it i got this message: HAX is working and emulator runs in fast virt mode. // So im using HAX.
- vhd format would be better than vdi for Windows, you can mount it from My computer- Right click -Manage- Disk Managment-Attach VHD to easy add data to disk.
- i thing that would be better to use MS-DOS 7.1 and its FAT32 for DOS, to enable more than 2 GB HDD, 2 GB is too small for more modern Qemu games. Other advantage of VHD is that size dynamically grow, when is needed (i suppose that there is some performance penalty but Dos is not constant data operation heavy as modern Windows/Linux).
- i tested only DOS Glide
- i have problem with Filemanagers and keyboard, i tried Filewizzard and Dos navigator, but, when i use mouse, there is some problem with mouse cursor drawing (old positions stays), and arrow keys jump over 2 files, not 1 one (when i use Numlock as arrow keys its fine).
TAB and Backspace are not working. When i try older filemanager(M602, NC clone), i have problems only with arrow keys.
-In guide is: - start gdvoodoo2.exe - here i found only - dgVoodooCpl.exe no gdvooodoo2.exe its ok?
- i have some problem with CD-Rom makking pathes typical for such tools without GUI, this runs fine:
qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.exe C:\Programy\Qemu\DosGlideBootHDD.vhd -cdrom d: -soundhw sb16,adlib -accel hax
CD-Rom is found by Dos driver.. even if physical is E and D is NTFS Data partition.

But when i move disc image to D partition - where i want to keep data, with:
C:\Programy\Qemu\qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.exe -hdc D:\Games\!Emulators\Dos-QemuWithGlide\DosGlideBootHDD.vhd -cdrom e: -soundhw sb16,adlib -accel hax

Im getting Error and Qemu doesnt start:
C:\Programy\Qemu\qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.exe: -cdrom f:: drive with bus=1, unit=0 (index=2) exists

When i remove:
-cdrom {X}: parameter its starting fine, but Dos driver doesnt find CD-ROM of course..

Compatibility - DOS Glide:
- Carmmageddon, its running mostly 50-60FPS on Core i7 - 4770S + 1866 DDR3 (Single channel, i temporarly using one stick in other machine) - but most of HUD graphics is missing.
- Blood - Fraps and Qemu stats shows - 60 FPS, but i feels like 5, its unplayble, something is wrong.
- GTA - 3DFX - game doesnt start.
- Red Guard - working, 50-60 FPS
- Battle Arena Toshinden - i wasnt able to run it with 3dfx - i tried both 3D cards settings in setup.
- Screamer Rally - working fine - 60 FPS
- Tomb Raider 1 - i tried version which is running with Glide fine with Gulikoza DosBox, but with QEMU, i dont look like its using 3Dfx mode, textures etc not look enhanced.

I dunno, if some problem is not caused by not full Dos in robertmo's image.

- Are games like H2DOS,Q1DOS,Q2DOS compatible with solution? I used H2DOS Mesa and Voodooo1 file, but whole Qemu crashed.

Additional questions:
1) How to use Fullscreen or increase resolution etc?
2) With this default Qemu start line, how much RAM and CPu power is used? Dos is single core, but can Dos emulation use multiple cores?

So far, its nice that it is sometimes working, but at least for Carmageddon is still Dosbox + old Gulikoza build better, Blood is worse than i DOsbox and Screamer Rally is the same.
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough HW.
User avatar
ruthan
Oldbie
 
Posts: 1094
Joined: 2013-3-07 @ 04:01
Location: Schwarz Wald-from France to Ukraine, from Denmark to Austria. Celts+German+Slavs melting pot.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 12:58

according to http://www.zeus-software.com/forum/view ... =672#p3473
Battle Arena Toshinden uses staticly linked glide.ovl so it won't work in qemu.
---------------
gtafx.exe works for me.
------------------
you set resolution in dgvoodoo2 control panel->glide-> resolution
-----------------
leftctrl-leftalt-f fullscreen
------------------
you can place dos 6.2 files in dos folder so the mem.exe will work. in dos you have max 64mb
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 13:09

C:\Programy\Qemu\qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.exe -hdc D:\Games\!Emulators\Dos-QemuWithGlide\DosGlideBootHDD.vhd -cdrom e: -soundhw sb16,adlib -accel hax

don't use -hdc
it is only needed for two hdd images (-hdc together with -hdd)
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 13:19

updated QEMU_guide
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 13:48

ruthan i guess you didn't noticed dgvoodooCpl has tabs:
in the glide tab:
turn off vsync for testing
also resolution unforced and antialiasing turned off for testing as they both slow down
you can turn of pci access too

I think it is safe to turn on:
3dfx card: other greater
onboard ram 128mb
memory size/tmu 65536 kb
number of tmus 3
--------------------------
for gta check if you don't have some glide.ovl in one of its folders
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby ruthan » 2019-2-06 @ 13:58

Without -hdc, i still getting some error:
C:\Programy\Qemu\qemu-system-i386_nogtk_sdl2_whpx_haxm_glide_2.exe: -cdrom e:: Could not refresh total sector count: Input/output error

Gta - same binary is working for me with Dosbox, im selecting 3Dfx mode, inside the game.. i dont know if there are multiple GTA 3Dfx versions. When i run gtafx directly is the same, message is What 3Dfx card..

ruthan i guess you didn't noticed dgvoodooCpl has tabs:

It wasnt in tutorial, i tried default to avoid some additional errors..
Last edited by ruthan on 2019-2-06 @ 14:06, edited 1 time in total.
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough HW.
User avatar
ruthan
Oldbie
 
Posts: 1094
Joined: 2013-3-07 @ 04:01
Location: Schwarz Wald-from France to Ukraine, from Denmark to Austria. Celts+German+Slavs melting pot.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 14:04

run gta directly with gtafx.exe
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby ruthan » 2019-2-06 @ 14:23

robertmo wrote:according to http://www.zeus-software.com/forum/view ... =672#p3473
Battle Arena Toshinden uses staticly linked glide.ovl so it won't work in qemu.


I think that info about statically linked games, should be in first post, i was wonder about that.. So far no magic solution for Dos (i know its WIP), i wonder about PCem performance comparision in Windows. Because so far performance should be biggest benefit, compatibility is worse, but so far i tested only Dos games, there usually is Gulikoza Dosbox build good enough, at least on my machine, i dont need more than 50-60 FPS.

Gta - i tried gtafx is the same.
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough HW.
User avatar
ruthan
Oldbie
 
Posts: 1094
Joined: 2013-3-07 @ 04:01
Location: Schwarz Wald-from France to Ukraine, from Denmark to Austria. Celts+German+Slavs melting pot.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-06 @ 14:28

i think the cd cannot be empty
generally when something doesn't work try the simplest configuration possible

first you said you used -cdrom d:
later you used -cdrom e:

--------------------------------
when you have to use glide.ovl it is obvious staticaly linked games won't work.
statically linked games are also the oldest glide games hence they don't need that much cpu speed.
have you checked gta folders if they don't have any old glide.ovl?
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby ruthan » 2019-2-06 @ 21:12

robertmo wrote:first you said you used -cdrom d:
later you used -cdrom e:

I explained why i made this change, it seems that i load hdd image from D:\path.. a i cant no longer use -cdrom d: parameter, it make sense - if its linked with physical driver letter, but i make not sense, that when image is on c, that this is working.. because my first physical optical drive letter is E..

Any fix for strangelly working Arrow key, im not sure but there are some some Qemu SealBios / chipset setttins.. and i dunno, if im now using emulated PS2 or USB keyboard (it could be problem in DOS), or its simply Qemu bug.
About RAM, other virtualization solution, simply have some max RAM settings and with QEMM, JEMM, HimemX etc.. you can allocate much more than 64 MB of RAM, for example Rayer on real machine is using lots of ram. Im not sure if 52 MB is enough when Blood 3dfx requiring 52 MB of ram as minimum.

BTW any more info about quality of QEMU - SB16 emulation? Because VirtualBox and VMware dont support - music and fx together in Dos for years and Qemu look that it does so its much better.. is there some QEMU user to tell us some details?

Update:
I made GTA working too, thanks. I had glide file in main folder not in DOS folder, i dunno if its by the design but performance looks like locked 22-25 FPS, its same as with Dosbox Gulikoza.

Its somewhere list of Glide games with are not working with nGlide or dgVoodoo on modern OSes like WIndows 7 / 10 ? Because for these would make biggest sense setup Windows 98 / XP machien with QEMU Glide.. Because otherwise its great technological achievement that GLide is working in virtual machine and its great for Linux / MacOS users, but im still trying to find proper use case for it.
Yeah i know that it could minimally save some time, because make some old Glide games working in Win 7+ could be time consuming.

- force true emulating PCI access is not good for performance when is enabled, at least Screamer Rally framerate is 4x slower.
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough HW.
User avatar
ruthan
Oldbie
 
Posts: 1094
Joined: 2013-3-07 @ 04:01
Location: Schwarz Wald-from France to Ukraine, from Denmark to Austria. Celts+German+Slavs melting pot.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-07 @ 09:06

"drive with bus=1, unit=0 (index=2) exists"
i think this message was caused by the use of -hdc

"Could not refresh total sector count: Input/output error"
i think this message was caused by having cd drive without cd inside
---------------
it looks gta is designed with 23 fps
pressing F8 displays the message about turning off framerate limiter but it looks it is setting a limit of 60 instead (or the game has build in v-sync option), and the game's speed goes up proportionally too ;)
--------------
check if your tomb raider has
tomb3dfx.exe (without integrated .ovl) size: 873 739
tombovl.exe (with integrated .ovl) size: 1 140 735
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby RaVeN-05 » 2019-2-07 @ 09:50

- force true emulating PCI access?

Did you can try Battle Arena Toshinden with that option ? maybe it can work somehow?
User avatar
RaVeN-05
Member
 
Posts: 268
Joined: 2009-12-30 @ 13:32
Location: Ukraine

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-07 @ 10:25

it is a dgvoodoo2 option which is outside qemu.
inside qemu there is no voodoo card emulation.
voodoo works there only by the use of the file glide2x that redirects game's glide instructions outside qemu to a wrapper of your choice.
So games that have glide2x build into their .exe files won't work cause there is no way to change that file.
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby RaVeN-05 » 2019-2-07 @ 10:51

oh okay. by the way if we have tomb raider one dynamicaly linked another is statically linked is there way ? we can compare two files and find out how we can extract that ovl from exe , or put inside another ovl or even cut it off from exe?

another idea is to have emulation(or even simulation ) in qemu so inside qemu oses and apps thinks it real hardware, outside it will redirect to wrapper.

the way hard of it , is to learn every address of voodoo functionality and redirect it to according function.

on fly "address access" to "function call" converter. Sound like fantastic XD.
ok we have voodoo emulation on pcem , and sources , need to debug?? to figure-out all addresses and redirect them to wrapper, or to glide2x.dll.
User avatar
RaVeN-05
Member
 
Posts: 268
Joined: 2009-12-30 @ 13:32
Location: Ukraine

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby ruthan » 2019-2-07 @ 17:16

I think that this topic title is misleading, or at least hard to undestand for some people.. its not classic pass-through of Voodoo card,but its passthrough of modern GPU, which is using Glide wrapper to process Glide calls in guest system, it not so simple as pass through of some USB device in Vmware or VIrtualbox.

BTW, we now have guide for Dos, how to exactly use this wrapper in Win9x/XP?
What to do after installation of clean OS to virtual machine?
1) I guest first spend would be installation Qemu addition, drivers for Windows?
2) Its video card identified as some QEMU normal 2D stuff, or there is found virtual Vooodoo device like in case of PcEM?
3) How to exactly make passthrough working, where to copy dll files? Should be wrapper installed to guest OS too?

BTW i tried QEMU DOS machine for non GLide classic DOS 2D games, i tried to make Doom 2 working, but with Glide build, or without it, i was slideshow - 2 FPS, or sometime like that.. Did i something wrong, or its not fast enough? Virtualbox / Vmware are fast enough for that, but there there not sound drivers for FX+Music together..
Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough HW.
User avatar
ruthan
Oldbie
 
Posts: 1094
Joined: 2013-3-07 @ 04:01
Location: Schwarz Wald-from France to Ukraine, from Denmark to Austria. Celts+German+Slavs melting pot.

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby robertmo » 2019-2-07 @ 21:12

I tried win95osr2 but I didn't managed to install it.
win98 installed OK from a c:\Win98 folder on a hdd image (I didn't used -accel parameter for installation and I used official qemu executable).
----------------------------------
these display drivers work for me:
https://bearwindows.zcm.com.au/vbe9x.htm#2
I used these one:
\VBE9x\UNI - version (VBE 2.0+) for ANY cards
but it is included only in Release, debug version pre-beta 2010.06.01
I don't know why it is not included in later versions. Later versions contain only these universal ones:
\128MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 128 Mb.
\064MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 64 Mb.
\032MB - version (VBE 2.0+) for ANY cards, VRAM memory limited to 32 Mb.
they work too.
Every single one of them (for example the 128MB one) has about 5 drivers to choose from even though only one is detected as supported but I think all other work too.
--------------------------------
I haven't tried any glide games in windows but I think you have to place all drivers in windows/system or system32 folder and check game's folder for not having any of them inside. I guess placing them in game's folder may work too. I guess it depends on game like in dos.
--------------------------------
Win98 works for me only without -accel parameter.
--------------------------------
carmageddon works fine using voodo2c.exe
User avatar
robertmo
l33t
 
Posts: 4762
Joined: 2003-6-18 @ 10:35

Re: QEMU 3Dfx Glide Pass-Through (WHPX/KVM works!!!)

Postby kjliew » 2019-2-08 @ 08:40

Patch updated in 1st post. No change to guest wrappers.

Added option to merge LFB writes to BACK buffer and deferred til buffer swap. Improved performance and compatibility of OpenGlide for games that do multiple lock/unlock within a frame (eg. Pyl, Archimedean Dynasty).
kjliew
Member
 
Posts: 488
Joined: 2004-1-08 @ 03:03

PreviousNext

Return to Release Announcements

Who is online

Users browsing this forum: No registered users and 4 guests