Han
Tue Aug 12 05:44:00 PDT 2008
Dear Sir,
Thank you for the information. What exactly I want to do is : Read directly
from framebuffer (like a char pointer). So far, only the most reasonable
method I could find is, copy the screen to a DIB to get pointer to read it.
The idea is: The device I am doing the tests has VGA controller on it. But
actual device will not have a VGA controller , it will be connected to an STN
LCD with GPIO.
It is very slow process. (Took 40 ms to update the screen) Now copy the
screen to DIB and display on screen tooks total 80-90 ms, if I can directly
read from the Framebuffer, I think I can gain some time around 20-30 ms. 2-3
updates per second is enough for the application, but I have some other
process running at the same time, so if I can make the update time shorter ,
it will help alot.
Best regards,
Han
"Bruce Eitman [eMVP]" wrote:
> Double check that. Everything else in this thread suggests that you are
> using a virtual address.
>
> Maybe if you tell us what you are really trying to do with the address,
> someone will suggest a better way.
>
> --
> Bruce Eitman (eMVP)
> Senior Engineer
> Bruce.Eitman AT EuroTech DOT com
> My BLOG
http://geekswithblogs.net/bruceeitman
>
> EuroTech Inc.
> www.EuroTech.com
>
> "Han" <Han@discussions.microsoft.com> wrote in message
> news:0900C41F-D4D2-47EE-B926-308236CC2AEA@microsoft.com...
> > Hi,
> >
> > This adress is physical address. I used to can reach the physical address
> > easily, because I can compile the OS as full kernel mode. Now as far as I
> > understand I have to write a Device Driver to reach the physical memory
> > since
> > Wnidws Ce 6.0. Is there any sample device driver for this purpose?
> >
> > "C.L" wrote:
> >
> >> Try
> >> VirtualCopy((void *)m_VirtualFrameBuffer, (void
> >> *)(m_pvFlatFrameBuffer), fbSize, PAGE_READWRITE | PAGE_NOCACHE |
> >> PAGE_PHYSICAL))
> >>
> >> As I know, the 2nd parameter needs to right shift 8 bits only if it is
> >> physical address.
> >>
> >> "Han" wrote:
> >>
> >> > Hi,
> >> >
> >> > Virtual copy always returns 0. I checked the reason with GetLastError,
> >> > it
> >> > returns 87 . Any idea what could be the reson?
> >> >
> >> > Best regards,
> >> >
> >> > HAN
> >> >
>
>
>