Ivan Svarkovsky’s S3-MSX-PC open-source project implements a bare-metal MSX2+ emulator running on an ESP32-S3 microcontroller and outputting 64-color VGA via a simple R-2R resistor ladder. It’s a fork of the Retro-Go emulator for ODROID-GO and other ESP32 devices, but with various optimizations.It was tested on an off-the-shelf ESP32-S3 board with one core handling the game logic and the other video and audio output. VGA is implemented through a clever resistor network that converts digital data into an analog signal that any old monitor understands, while audio relies on Sigma-Delta modulation with a multi-stage PDM filter. The USB host port on the board allows for the connection of a keyboard.S3-MSX-PC firmware highlights:
Emulation Core – fMSX 6.0 — Full MSX1 / MSX2 / MSX2+ support
Video Output
VGA 640×480@60Hz, 16-bit parallel RGB via LCD_CAM
Color Depth – 64 colors (2 bits per channel: R, G, B)







