|
|
 |
 |
Video Performance
The first thing we noticed about the PEG-N710C was that the user interface was NOT slow.
The original color Palm, the IIIc, was noticeably sluggish when refreshing the display.
This was to be expected, since the IIIc hardware was the same speed as the Palm Vx, but
with a color display, there was more data to be moved around. The N710C doesn't
suffer this sluggish fate, even when running in high resolution.
|
 |
 |
 |
  
Standard resolution is 160x160. High resolution has 4 times as many pixels.
|
 |
 |
 |
Some observant people have noticed that the N710C hardware runs at the same speed as the
Handspring Visor Prism and Palm M505, but with a high resolution 320x320 display, there are four
times the number of pixels to draw. Before seeing the device, you might reasonably
conclude that display updates would take four times as long in high resolution,
but they don't.
Hardware Video Acceleration
One of the most exciting, yet least known, advances with the N710C is the addition
of hardware video acceleration. Common user interface actions such as drawing fonts
and erasing the screen are accelerated in hardware by the video controller. Because
of this acceleration, the user interface is quite snappy. The acceleration happens
automatically with Palm OS applications - no special modifications are necessary,
so older Palm OS applications will be just as snappy in high resolution mode.
|
 |
 |
 |

All those letters and numbers draw pretty fast thanks to hardware acceleration.
|
 |
 |
 |
The addition of hardware acceleration is particularly exciting for game developers, as it opens up the
possibility of even more advanced video hardware in the future. The hardware
video acceleration is the main reason why the N710C can run in high resolution
and still have a peppy user interface.
Example: Erasing The Screen
For example, a Palm OS application that needs to clear the screen would use a
Palm OS function called "WinEraseWindow". Normally, the Palm OS would use a software
routine to clear each line of the display one at a time. With high resolution,
you can see how this would take four times longer - each horizontal line is twice as long,
and there are twice as many of those lines. But on the N710C, WinEraseWindow
just passes a command to the video hardware that says "Erase 320x320 rectangle". The
video hardware can then erase the display without using the N710C main processor,
and it can erase at the fastest possible speed. In our tests, just erasing the
screen was about four times faster than the fastest software routine we could
muster.
Hardware Level Compatibility
The ultra-savvy among you might be wondering about applications that don't bother
to use the Palm OS routines for displaying things to the screen. What if a game
doesn't call "WinEraseWindow" to erase the screen? Will it be slow? Will such
applications even work on the N710C?
This is where the Compatibility Mode comes in to play, also known as "hardware pixel doubling".
In Compatibility Mode, a 160x160 pixel image in video RAM is doubled horizontally and vertically to create a 320x320 pixel image for display.
|
 |
 |
 |

You know TealMovie hits the hardware. Works just fine in Compatibility Mode.
|
 |
 |
 |
When the display is running in Compatibility Mode, it looks like a 160x160 pixel display to
the software application, down to the hardware level. The video hardware translates the 160x160 pixels to
the 320x320 pixel display (each pixel becomes 4 pixels on the actual screen, but not in video RAM).
Since the doubling is done in hardware, it is fast, and it allows a very high
degree of compatibility with old applications. High fives all around to Sony
for providing this level of compatibility, even with applications that hit the
video display directly.
AcidSolitaire Performance
The first application that Red Mercury converted for full high resolution support was AcidSolitaire.
Our goal was to keep the same screen layout, but provide higher resolution graphics for all elements of the game, including
the color backgrounds. Fortunately, since we keep all of our graphics compressed when not in use, the additional overhead of
all high resolution in-game graphics added only 4k to the overall size of the game. If AcidSolitaire detects it is on a high resolution
device, it decompresses the high resolution graphics set, otherwise it leaves them compressed and out of the way.
|
 |
 |
 |
  
Low resolution is on the left. High resolution looks better.
|
 |
 |
 |
For those of you unfamiliar with Red Mercury games, you might be wondering why video performance would matter for a solitaire
game in the first place. We end up playing a lot of solitaire, so we want the game to be very responsive. If it seems sluggish
at all, it takes away from the fun of the game. Also, with automatic card movement and card dragging, the display has to
refresh instantly, or the entire game has a muddy feel.
|
 |
 |
 |
  
Low resolution is on the left. You be the judge.
|
 |
 |
 |
Our original attempt at running in high resolution ended up being slow. Since AcidSolitaire has its own drawing routines,
it wasn't taking advantage of hardware acceleration in high resolution mode. We really were four times slower out of
the gate. But after spending just a day or two tweaking for the N710C, we ended up with AcidSolitaire 2.0 running great
in high resolution on the N710C. How great? Well, AcidSolitaire 2.0 in high resolution on the N710C runs faster than AcidSolitaire
1.0 in low resolution on the Visor Prism. Not bad.
More Information
For more information about high resolution mode, pixel doubling mode,
running older applications in high resolution, and Red Mercury's support for high resolution, see these pages:
Performance (You Are Here)
Technical Info
Our Impressions
N710C Screen Shots
Red Mercury Games Screen Shots
Back to Red Mercury
|  |
|
 |
|
|