Close

Final RetroChallenge YouTube Video Log Entry #3 - Double-Buffering and Multiple Colors!

A project log for 3D Graphics on the Microprofessor MPF-1B

RetroChallenge 2025/10 Blog

michael-wesselMichael Wessel 10/25/2025 at 16:120 Comments

This is my final RetroChallenge 2025/10 VLog Update. Double buffering has been implemented by now! 


For double buffering, we are using the Adafruit Canvas object. Unfortunately, it turned out that Adafruit's drawBitmap is far too slow, even at max SPI bus frequency, and I needed to find a workaround. This solution is drawBitmapFast, and can be found here: https://github.com/adafruit/Adafruit-GFX-Library/issues/415

Thanks much to "jsseab" (Jakob Selbing) for saving the project! Moreover, we can now specify fore- and background colors for the display. The GRAF-X command buffer is 8 KBs (8192 bytes) by now... getting to the limit of what we can do with the ATmega 1284p's 16 KBs of SRAM. Note that the Canvas is 1bit color depth only - drawBitmapFast doesn't work with the true color Canvas, and would probably require too much (SRAM) memory anyways. Also, it would be even slower. However, GRAF-X double buffering can be turned off, and we can then draw in multiple foreground colors and take advantage of the truecolor / 16 bit graphics TFT display and use all its colors. 

Next year, I am going to release the firmware and a proper custom GRAF-X card PCB designed specifically for the Microprofessor on Github, maybe even with an additional speech synthesizer and AY 3-8910 soundchip (think "multi-purpose multimedia IO extension for the Microprofessor").
So stay tuned!

The hardware you are seeing here is based on a re-purposed and "recycled" LambdaSpeak FS PCB for the Amstrad CPC. This proved to be a good basis for the project (better than a breadboard for sure), as it already had the required SPI headers on board - LambdaSpeak FS uses a MikroE SPI speech module, so the required SPI headers for connecting the TFT display were already in place and no further PCB mods were needed. 

Alright guys, that's it! RC2025/10 is wrapped up for me! Looking forward to next year's RC challenge. Until then, enjoy your retro computers. Bye for now.

Discussions