Bramley: 3. Display

07 October 2020

Ask someone to point to their computer and they usually point to their monitor. The display is a huge part of a machine's personality. It is also likely to be its largest power drain. So in a portable device, it's doubly important to get right.

My first thought was e-ink - it sips minuscule power and looks beautiful at rest. But, when stirred, will flash desperately to shed its soiled pixels. Even partial updates feel too slow. I need something more immediate.

That's when I remembered the Sharp Memory Display. It sits somewhere between e-ink and an LCD: daylight readable and low power but with a faster refresh rate. And luckily, Adafruit have now released a breakout board for the larger 2.7" version.

Adafruit SHARP Memory Display Breakout - 2.7' 400x240 Monochrome

It's a little limited in pixels, at only 400x240 resolution, but consider all the great VGA games that were released in only 320x200: Doom, Worms, Prince of Persia, Indiana Jones and the Fate of Atlantis… Ok, I'm cheating a bit. The Memory display is monochrome - 1-bit per pixel - and those games all use colour. But I think 1-bit graphics might develop some of the personality I'm searching for.

Macintosh Plus at the Museo Nacional de Ciencia y TecnologĂ­a in Spain.

The Macintosh Plus had a 512x342 pixel 1-bit display and buckets of personality. Susan Kare's fonts and icons looked excellent on it.

Mac icons by Susan Kare

Want a more modern example of 1-bit artwork? Just look at this beautiful screenshot from Return of the Obra Dinn:

Screenshot of the Ship from the game Return of the Obra Dinn

Or these Creative Commons pixel fonts by fontenddev:

The Piacevoli font by fontenddev

So I'm not worried about the 1-bit colour. And I'm not worried about the 400x240 pixels either. If the PalmPilot managed with a 160x160 monochrome display, then I'm sure I can write some useful programs with 400x240 pixels.

Now I just need to write some code to drive it.

Next entry: Bramley: 4. Driving a Sharp Memory Display from Rust