When I was making the arcade cabinets case, I wanted to use the lasercutter to engrave the MAME-logo in the marquee of the cabinet. Unfortunately, due to some software incompatibility, this didn't work out.
I still wanted something there, though. I could just slap a sticker on it, but I still had some I/Os on the Raspberry Pi left, so why not do something a bit more flexible? I looked through my bin of LCDs and found a nice 0.91" 128x32 white OLED-display I could use, so I decided I'd slap that on the marquee.
The OLED needed some external components: some caps to generate the voltage
needed for the LEDs and a resistor to set the reference current. I decided to just
slap them on the back of the display, on a bit of double-sided sticky tape.
The LCD is controlled over 5 lines: 4 for the SPI-interface and one to reset the LCD.
It also needs 3.3V for is power supply. I hooked it up to the Raspberry Pis GPIO
One note on the reset-line: I connected it to the same pin as the reset of the main LCD, so the OLED gets reset on bootup just like the main display. That means the software to drive the OLED won't touch the reset line: you may want to hack that in if you use it standalone, althought tying it to +3.3V may also just work.
The software side is fairly simple. I wrote a quick-and-dirty program that uses
libgd to load png-files into the OLEDs display memory. This program is called every
time a new game is loaded, and will try to load an image of the associated game. Here
is, for example, Nemesis:
As with the other software, it's licensed under the GPLv3. Get it here.