I hit another tiny problem: the LCD for the mini-marquee is going to be "trapped" inside the marquee holder at the top and bottom so I won't have access to its built-in microSD card socket.
No problem, since I already had ordered an
SD card breakout board from Sparkfun, so I'll be able to have the SD card socket exactly where I want it behind the printed part of the marquee. It's also going to make it easier to find a smaller capacity, lower cost SD card because 1GB would be a waste. 100 marquees (99 games marquees + generic MVS marquee) will require at most 6MB. Hopefully I'll be able to find a 32MB card, 32MB being the smallest capacity allowed for FAT16 if I remember correctly.
But that tiny protoboard you've seen in the previous photo was too tiny to add anything else. So, I've transfered the whole thing to a bigger protoboard (see first photo).
I've also added a 3.3V regulator since the whole thing is going to be powered by 5V but the SD cards requires 3.3V only. Yes, I know, the wiring is a bit messy at the moment. The weird thing is, the ATmega644P is powered at 3.3V but still clocked at 20MHz. According to the datasheet it shouldn't even work. Not sure if it's damaging it but so far it's working fine.
Since this SD card socket has a "card detect" pin I've also added a routine for that. My error messages are on a black background with a 1-character margin all around it, centered in the display. It looks better this way IMHO.
Other error messages are going to be about wrong TGA files ("TGA image is bigger than display", "TGA image is in the wrong format", etc).
edit: small note, I just did a test with a "pattern" image like on my previous LCD and this new one is indeed 128x160 pixels, no rows or columns missing (previous one was listed as 132x132 but was actually only 130x130 visible pixels).