Re: accessing device memory



spamtrap@xxxxxxxxxx wrote:
>
>I have recently read on www.hackaday.com "Hiding behind antiquity",
>whislt there is currently no slides or notes from this presentation I
>have wondered for a long time how to access the memory of devices, such
>as the NIC and Graphics Cards.
>
>I have just ordered the " IA-32 Intel® Architecture Software
>Developer's Manual, Volume 1: Basic Architecture" with the hope that
>this will provide me some information as to the address of these
>devices?

That's not nearly enough.

Most of these devices are PCI devices. To get to their memory, you have to
FIND their memory, and that requires knowledge of the PCI configuration
space and how to get to it.

Once you do that, you will have a physical address. You need to convert
that to a virtual address before you can access it.

And once you have done THAT, you still won't know what the memory does. It
might be registers, it might be frame buffer, it might be a buffer list,
who knows. Every device is different.
--
- Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.

.



Relevant Pages

  • Re: Fill Frame Buffer in Video Driver Initialization
    ... This doesn't make sense, there is only 512Mb of memory, giving an address limit of 0x20000000. ... It is interesting to see that the flat physical address is given by the BIOS and passed to the BootArgs: this means that you should be able to use the VGA Flat display driver just as it. ... However, in the MSDN documentation for VirtualAlloc, it says that memory allocated will be initialized to zero. ... 0xEE000000 is not a physical address, unless you have a dedicated frame buffer mapped at physical 0x6E000000, or it is a window in PCI space. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Fill Frame Buffer in Video Driver Initialization
    ... This doesn't make sense, there is only 512Mb of memory, giving an address ... It looks like the bootloader gets the buffer address here ... This is where I should use the VirtualAlloc in the video driver, ... the way it maps the frame buffer. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: DDGPE driver for CE 6.0
    ... > overlay, it shows a rectangle with some color,when it reaches some ... This is not the background of mosquito image ... Video memory size is reported ... I came across a problem with accessing frame buffer from user ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Apple II VGA Video Generator Card Project
    ... There is another factor to the equation - the memory architecture of the frame buffer. ... The calculations to find a video pixel memory address are orders of magnitude greater than simply shifting an address or even being able to simply increment an address when crossing a byte boundary. ... Any 'enhanced' video mode would most likely have a much, much nicer addressing scheme for the frame buffer. ...
    (comp.sys.apple2)
  • Re: HalAllocateCommonBuffer and virtual addresses
    ... This memory is ONLY shared if the size you allocate is greater than 2MB (far ... the HalAllocateCommonBuffer for the frame buffer of the lcd, ... what address value do I have to use with VirtualCopy in this second ...
    (microsoft.public.windowsce.platbuilder)