Page 1 of 1
iPaq 38xx buffered display

Posted:
Dec 8, 2004 @ 12:11am
by MikeW
Hi, I was able to optimize blits directly to video ram on the 38xx and it is amazingly fast.
However I'm noticing that if I use the video buffer instead [thru GXBeginDraw() ], it won't draw on top of the title bar and the entire bar is visible. Is this normal?

Posted:
Dec 8, 2004 @ 1:08am
by Dan East
Are you hiding the various system windows with SHFullScreen? Is your app main window sized to 240x320?
Other windows can still compete with access to the display if they are visible. It just depends on what draws last before the screen refresh occurs as to what appears on the display.
Everyone I know of just accesses the VRAM directly on the 38xx because the GAPI implementation is so slow (they did that to maintain backwards compatibility with the 36xx display properties). Pocket Quake does this as well, and none of the system components are visible.
Dan East

Posted:
Dec 8, 2004 @ 3:15am
by MikeW
Yeah, I'm using SHFullScreen for the start icon, taskbar and sip, and the window is at least that size if not larger. I just want to reiterate that things are okay with the direct access method. I'm just trying the buffer method to verify that output is correct in that orientation, and it is except for the title bar showing thru.
I've verified that 240x320 pixel writes are happening. The memory range is correct--adjusting my base address forwards and backwards doesn't help. Nothing will show up over the title bar, not even flicker. I would think that instead of seeing nothing, I'd see garbage somewhere like an image wrapping around or a memory access error. I'm fairly certain my blit routines are correct.

Posted:
Dec 8, 2004 @ 3:26am
by Kzinti
Are you calling GXEndDraw()? The GAPI implementation on the 3800 is buffered. You need to call GXEndDraw() to refresh the screen when you are done drawing.

Posted:
Dec 8, 2004 @ 4:00am
by Dan East
He's having problems when he accesses the display buffer directly, so he shouldn't be calling GxEndDraw. If he is calling it then that could be the problem.
What address are you using? 0xac0755a0?
Dan East

Posted:
Dec 8, 2004 @ 4:23am
by Kzinti
Dan, read his post again. He got it working. He's asking why it doesn't work with GAPI.

Posted:
Dec 8, 2004 @ 4:46am
by Dan East
Okay, he must have clarified his original post right after he replied to my first reply. I thought the problem was with accessing the display directly.
Dan East

Posted:
Dec 8, 2004 @ 2:30pm
by MikeW

Posted:
Dec 9, 2004 @ 1:50pm
by MikeW