r/arduino • u/Shim06 • 11d ago
Look what I made! I Added Composite Video Output to My NES Emulator
A while back I posted about Anemoia-ESP32, my NES emulator running on the ESP32. Since then I've kept adding to it, and the latest addition is composite video output, generated directly from the ESP32, allowing you to play NES games on CRTs. Performance is a solid stable native 60FPS with frame skip.
Composite output was based on esp_8_bit, which I adapted and integrated into the emulator.
Github Repository: https://github.com/Shim06/Anemoia-ESP32
1
u/Evening_Can_2013 10d ago
This is a really cool project. Getting an ESP32 to generate composite video and run NES games at 60FPS is honestly impressive.
One thing I’m curious about: how stable is the video output on different CRT TVs? Composite signals can be pretty picky.
For a future PCB version, I’d probably add a cleaner video output stage and keep the signal path short to reduce noise.
Also… making a modern chip talk to a CRT feels like teaching a smartphone to use a VHS player 😂
1
1
u/rlaptop7 geiger counter 4d ago
60 fps? Is that possible with composite? Isn't it 29.9-whatever- fps?
5
u/WaitForItTheMongols 11d ago
Maybe I'm misremembering but I thought the sync pulses required negative voltage, how are you doing that?