Larry Fly <lfly@earthlink.net> wrote:
David,
I am using a card with the bt848 chip set. Also, when you state below 4
Megs are you suggesting that the actual video (VGA) memory is after
(example: 0xE4000000 + 4Megs) or somewhere else. Further, I get the memory
Right. It will probably be a few bytes below this. However, this is
only true for the TnT card. And again this applies to Photon, it
may be different QNX Windows.
of the card via the CA_PCI_ReadDW call and it reports the memory is located
@ 0xE6000000, BUT there is also another memory area reported (show_pci)
which is 0xE4000000. This (0xE4000000) is the address that works while
using the PG.flat driver in photon. Lastly, the Matrox card works at the
address reported by the CA_PCI… call.
One of the memory ranges is the Video RAM, the other is for memory-mapped
registers and the like. Unfortunately, there is no way to tell which
is which: it is card dependant. (The individual drivers happen to
know internally, but there is no way to fish this info out).
You could always parse the output of /qnx4/graphics/trappers/vesabios.trap
to find the start of video memory, but this will not tell you the offset
of the frame buffer within video memory. The -A option specifies
the location and size of Video RAM.
I would expect the flat driver to always locate the frame buffer at
the beginning of video ram.
I guess I will map the memory areas and start writing small blocks of color
to see just where the VGA starts. I just can’t believe that this memory
would be interleaved or paged and thus written and managed in various areas
in this upper memory.
The tnt does not have paged/interleaved/banked memory: it is linear.
Thanks
Larry Fly
“David Donohoe” <> ddonohoe@qnx.com> > wrote in message
news:apbkkl$i11$> 1@nntp.qnx.com> …
Larry Fly <> lfly@earthlink.net> > wrote:
I assume you are using a bt878 or similar… I’d expect that it’s
possible to get it to work.
However, you cannot assume that the image data that is being displayed
on the screen resides at the start of video memory (although with
the TNT, it must reside below 4 Meg). I suspect this is the problem
you are running into.
Unfortunately, there is no way to find the physical address of the frame
buffer within video RAM, that will work across multiple video cards, under
QNX Windows, or Photon 1.14. Plus, the location of the frame buffer
will vary, depending on the screen resolution.
If, for experimental purposes, you are trying to find the offset
of the TNT buffer in video ram, I’d expect it to reside just below
the 4Meg mark (at least with Photon 1.14).
Regards,
Dave
I have drivers and libraries for Digital Video overlay via PCI DMA. I’m
working with a customer that has QNX 4.25 X11 R5 and they use SciTech
drivers. The drivers (when installed) work fine, but do something to
the
FLAT VGA memory area, thus not allowing me (my drivers) to write
directly to
the VGA frame buffer. I did try the customers cards under Photon using
the
PG.tnt driver and ran into the simular problems. However, if I use the
Pg.Flat driver, everything works fine. What is wrong here. Are all
cards
using High color setup for FLAT memory or is the memory arranged based
on
the specific manufacture. Also, it seems the memory reported by the
_CA…PCI calls for the nVidia TNT2 does NOT point to the actual area
where
the VGA memory resides - but the matrox cards DO NOT exhibit these
problems.
Larry Fly
\