|
-
Sep 12th, 2002, 03:18 PM
#1
Thread Starter
Addicted Member
Hardware Acceleration...
Ok, I need to know if its possible ( and at all reasonable ) to write code to communicate directly with your video card so that you can include your own hardware acceleration in 3D games. That's right... just like Direct 3D does. I know it would be difficult, and you would need a separate set of code, or drivers, for each different card, but my question is: Is it possible to do in C++, and does anyone know how?
To protect time is to protect everything...
-
Sep 12th, 2002, 03:32 PM
#2
Frenzied Member
Yes. But.
This is not like writing a game - you have to code kernel mode drivers. Which means you have learn quite a bit - and it's very OS dependent. Drivers that work on NT will work on Win2K & XP but no the other way around - and none of these drivers will work on Consumer Windows.
Read for starters:
Solomon & Russinovich 'Windows 2000 Internals'
Download or buy the DDK from MSDN
Walt Oney's 'Programming the Windows Driver Model'
If you understand the above you can code drivers for full Win32 and Consumer Windows.
And it's all done in C++
-
Sep 13th, 2002, 05:05 AM
#3
But remember that you don't communicate with the video card, only with the video drivers, because you don't know how the video card exposes it's functionality and you have actually no way to find out.
So basically you simulate DirectX.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 13th, 2002, 05:06 AM
#4
But now that we agree that it's feasible, I doubt it is reasonable.
Why not use DX?
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 13th, 2002, 06:11 AM
#5
Frenzied Member
Or OpenGL, if you want platform independance.
Z.
-
Sep 18th, 2002, 11:11 PM
#6
Thread Starter
Addicted Member
There is no problem with using DX and i probably will but i just wanted to know how possible it was to do it myself.
To protect time is to protect everything...
-
Sep 19th, 2002, 06:52 AM
#7
Monday Morning Lunatic
If you look at any of the information about the DRI project for Linux, you'll find that most card makers are *very* reluctant to give you any kind of usable information, you need to do things like sign NDAs....blecchhh...
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 19th, 2002, 07:06 AM
#8
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 19th, 2002, 07:09 AM
#9
Monday Morning Lunatic
http://dri.sourceforge.net
Direct Rendering Infrastructure (or something)
It's supposed to enable easier support of hardware acceleration within X.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 19th, 2002, 08:37 AM
#10
Interesting.
Maybe I'll join it once I got more time, I want to learn about such stuff.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 19th, 2002, 08:42 AM
#11
Monday Morning Lunatic
Heh, have fun. I tried looking through the code, it's a nightmare because of all the AGP stuff flying backwards and forwards 
These people just don't know when to stop digging to the lowest levels
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 19th, 2002, 09:37 AM
#12
Wouldn't it be possible to create something that enables windows device drivers be used in UNIX?
Would solve all problems with a big BANG!
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 19th, 2002, 09:41 AM
#13
Monday Morning Lunatic
Unlikely, since the kernel architectures are completely different.
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 19th, 2002, 02:34 PM
#14
Not as we would know much about the NT kernel...
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 19th, 2002, 02:42 PM
#15
Monday Morning Lunatic
Uh
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
-
Sep 19th, 2002, 04:17 PM
#16
Frenzied Member
I know that NT is like VMS -- I used to write internals code for VMS, Drivers, symbionts, etc. In fact, with the exception of nomenclature, Dave Cutler made NT extremely like VMS.
You could write (very inefficient & very bulky ) printer drivers for both systems by writing wrapper classes for atomic primitives, IPL mode changes, mutexes, spin locks, ad nauseum. It would be a ***** to debug. And would require certifiable insanity.
Speaking of debug, I'm learning Kd for NT & Win2K. Sucks. Requires two PC's and a lot of hair (to pull out as needed). Just got LiveKd - much better.
Plus, to give MS credit, there are now universal driver extensions in Windows.
You don't write a printer driver, you specify special changes to unidrv, and create a special file type with those changes. This exists neither in VMS nor in unix.
But. unix - no way. The unix kernel is very different -- there is no way in hell it could ever masquerade as NT. Or anything else.
-
Sep 19th, 2002, 04:56 PM
#17
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Sep 20th, 2002, 03:36 AM
#18
Monday Morning Lunatic
Originally posted by jim mcnamara
I know that NT is like VMS -- I used to write internals code for VMS, Drivers, symbionts, etc. In fact, with the exception of nomenclature, Dave Cutler made NT extremely like VMS.
Didn't a lot of the NT developers come from doing VMS anyway?
I refuse to tie my hands behind my back and hear somebody say "Bend Over, Boy, Because You Have It Coming To You".
-- Linus Torvalds
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|