columbo666
asked on
3dfx under dos
how can i access a 3dfx-card (voodoo, voodoo2) under dos ? once i saw a pc-demo, and they used my voodoo2-card for the 3d-graphics. how did they do that ??? i want to do so too...
ASKER
and for pascal programs ???
ASKER
Adjusted points from 350 to 375
ASKER
howdyho. anyone at home ?!?
Well.. for pascal programmers doing 3d on a Voodoo is a hard task. It is possible, but it'll be pain in the ass to get it running.. I'll try to explain why:
There is a library called Glide which you can use to access the lowlevel stuff of the voodoo card using c api. This api is available under DOS and Win32 (and I think there is also a linux and a beos version.. just for your information).
If you're using a pascal compiler that has suppoort for dos dll's you might be able to find a friendly c programmer who compiles the glide library into a dll and writes a pascal compatible interface for it. This however requires, that your compiler supports the 32 bit flat protected mode. I know that TMT pascal can do this. Borland Pascal can use dll's under dos, but the protected mode is not compatible (they use some kind of 16 bit protected mode that's more or less a fake to access more memory).
There is of cause another way. You could search the web for lowlevel register information of the 3d chip and do the polygon setup, mode setting and all that stuff yourself. But I don't think that this is the way to go..
First off your code will most likely only run on your video card, and second it'll take longer to write the hardware driver yourself than lerning some c.
(to be honest.. if you're able to write pascal code it won't be that much work to switch to c.. basically the languages are more or less equal.. just the syntax is a little bit different... (I know that this statement could cause a holy war between coders.. but anyways.. it's my oppinion))
If you want to do 3d accelerated you'll better either switch to Delphi and use Direct3D/Glide or better start learning some c programming and use the standard interfaces (d3d and opengl)
Just a little side note on glide: Glide is a dead standard and won't be supported anymore... If you're just coding for your own pleasure go ahead, but if you want to do something serious better switch to DirectX or OpenGL.
So all in all I cannot help you to get a polygon on the screen.. It's technically possible, but as said the way to do this hard and not worth the efford.
Hope that this helps you,
Nils Pipenbrinck
There is a library called Glide which you can use to access the lowlevel stuff of the voodoo card using c api. This api is available under DOS and Win32 (and I think there is also a linux and a beos version.. just for your information).
If you're using a pascal compiler that has suppoort for dos dll's you might be able to find a friendly c programmer who compiles the glide library into a dll and writes a pascal compatible interface for it. This however requires, that your compiler supports the 32 bit flat protected mode. I know that TMT pascal can do this. Borland Pascal can use dll's under dos, but the protected mode is not compatible (they use some kind of 16 bit protected mode that's more or less a fake to access more memory).
There is of cause another way. You could search the web for lowlevel register information of the 3d chip and do the polygon setup, mode setting and all that stuff yourself. But I don't think that this is the way to go..
First off your code will most likely only run on your video card, and second it'll take longer to write the hardware driver yourself than lerning some c.
(to be honest.. if you're able to write pascal code it won't be that much work to switch to c.. basically the languages are more or less equal.. just the syntax is a little bit different... (I know that this statement could cause a holy war between coders.. but anyways.. it's my oppinion))
If you want to do 3d accelerated you'll better either switch to Delphi and use Direct3D/Glide or better start learning some c programming and use the standard interfaces (d3d and opengl)
Just a little side note on glide: Glide is a dead standard and won't be supported anymore... If you're just coding for your own pleasure go ahead, but if you want to do something serious better switch to DirectX or OpenGL.
So all in all I cannot help you to get a polygon on the screen.. It's technically possible, but as said the way to do this hard and not worth the efford.
Hope that this helps you,
Nils Pipenbrinck
ASKER
i knew already all things you sad. but i want to go the "hard way" anyway. and i want to do it in real mode with turbo pascal 7.0. and to do this i need all the low-level info. but i can't find any low-level info. if you can give me some tp-sources, which work, or at least some doc, i'll give you the points immediatly (right spelled ???).
i've got visual c++ 6.0 and i'm developing already applications for d3d and glide there, but i want to do so also for tp 7.0.
regards
i've got visual c++ 6.0 and i'm developing already applications for d3d and glide there, but i want to do so also for tp 7.0.
regards
ASKER
Adjusted points from 375 to 400
ASKER
cool answer, but not very usable.
ASKER
and, btw : i downloaded the glide sdk.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Cool!
ASKER
this wasn't a very useful answer, but i found the things i wanted myself (linux.3dfx.com).
but, nils you can have my points anyway.
greets
but, nils you can have my points anyway.
greets
"Yes, you can use your 3dfx card for dos games. There is a file in your windows directory called glide2x.ovl you need to copy this file to the directory of the game you want to run to be able to use the 3dfx chipset in dos."
Not much good for programming purposes, but a clue. Also, a site:
http://home.swipnet.se/~w-67924/3dfxPS/3dfxPS.htm