How can I access the GPU / VRAM directly without using open gl or direct 3d ?
(best for me would be using it in assembler)
thanks in advance
Printable View
How can I access the GPU / VRAM directly without using open gl or direct 3d ?
(best for me would be using it in assembler)
thanks in advance
I believe you would have to start by making your own driver for the graphics card in question.
Low-level hardware access is not likely to be allowed since it can jeopardize system stability.
zerver is correct,
In order to do what you are trying to achieve, you will need to be able to access the video memory on your video card. Because all video cards have different drivers, in order to have this work on all video cards on all computers you would need to write drivers for all of the different cards that exist out there. Writing drivers for every video card is a daunting task and should be a very terrible waste of your time.
It would be really cool if we could all just access video memory left and right, but the diversity of video cards is a major roadblock in doing this. Each card is initialized in a different way.
Essentially, you are looking for a device driver.
Here is an interesting resource:
http://nouveau.freedesktop.org/wiki/FrontPage#About
In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device:
http://en.wikipedia.org/wiki/Device_Driver
Writing device drivers for Linux: (an insightful tutorial)
http://www.freesoftwaremagazine.com/.../drivers_linux
This thread might give you another insight:
http://www.jnode.org/node/180
Writing drivers in general, is a science in its own right. Perhaps you may like to learn how to write drivers, how they work and how they fit into Windows OS architecture. If you are up for this task, I would recommend looking at the following books on writing drivers:
Programming Microsoft Windows Driver Model, Second Ed:
http://www.amazon.com/gp/redirect.ht...&creative=9325
Writing Windows WDM Device Drivers:
http://www.amazon.com/gp/redirect.ht...&creative=9325
Microsoft Windows Internals:
http://www.amazon.com/gp/redirect.ht...&creative=9325
Developing Drivers, Windows Foundation Developer:
http://www.amazon.com/gp/redirect.ht...&creative=9325
Windows System Programming, 3rd Ed:
http://www.amazon.com/gp/redirect.ht...&creative=9325
There are ways to access it without using a graphics API. The new OpenCL, for one. Perhaps more immediately useful, CUDA for NVIDIA cards or Stream SDK for AMD cards.