With current Palms, I've found the general-purpose PalmOS graphics BLiTs are simply 
too slow for animation speeds.  And like you, I
also do "on the fly" image filtering which would necessitate an extra screen copy if 
done "officially".

BTW, the "being too fast for the VRAM" issue only applies to Palm's with VRAM - the 
color Palms.
Of the color Palms, I can report that a Palm IIIc cannot overload the VRAM speed 
UNLESS afterburner is running, and I have heard
that the Visor Prism VRAM (1376) cannot be overloaded by the CPU.  I am working on an 
"Afterburner BLiT", which can trickle graphics
to the IIIc VRAM at the appropriate rate.

And remember - accessing VRAM is so slow, you don't really want to composite your 
image in it - just move the final frame to the
VRAM buffer.  (Or in your case, filtering the finished image directly to the 
destination.)

But since you're generating grayscale images, I doubt you care about VRAM issues.

Overall, I can recommend no better option than what I am currently doing:

(1) Ignore the fact that the emulator dislikes writing directly to a screen buffer.

(2) Provide the user with a special "safe mode" in which you use an official Palm BLiT 
regardless of how slow the process becomes.
You can always tell the user "if you need faster speed, you need to get an earlier 
version of the PalmOS".
(Philosophy aside, I see no difficulties in emulating screen access for a full screen 
application in any future version of the
PalmOS (like OS 5), should it become necesary.)

Note that accessing the "screen" is actually legal under the PalmOS 3.5 API via either 
WinScreenLock or WinGetDisplayWindow - it's
only illegal under the emulator.  As far as I can tell, Palm is standing behind use of 
 the legal screen access provided in OS 3.5.

I can only hope that when direct screen access becomes truly imposssible that the 
PalmOS provides a fast legal way to do it.   And
hopefully, the very changes that give Palm a reason to elimate DSA will involve 
graphics acceleration.


Ben Combee wrote:

> "Tom Warfel" <[EMAIL PROTECTED]> wrote in message
> news:45137@palm-dev-forum...
> >
> > Up until the latest version of the Palm OS Emulator, I've been able to
> generate
> > greyscale images on the fly by bit-twiddling in the data of an
> off-screen
> > window, then copying from that window to the screen.  We're now
> getting messages
> > from POSE (and in the 4.0 include files) that this unofficial
> technique will no
> > longer be supported on new OS versions.
> >
> > On the other hand, drawing a 120x120 image by doing WinSetForeColor(),
> then
> > WinDrawPixel(), for each and every of 14,400 pixels is _S_L_O_W_.
>


-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/tech/support/forums/

Reply via email to