harbaum / galagino

A Galaga, Pac-Man and Donkey Kong arcade emulator for the ESP32
315 stars 21 forks source link

Use DMA to transfer data to display #10

Closed harbaum closed 1 year ago

harbaum commented 1 year ago

The pure data transfer to the display has a theoretical limit of 22428816/40000000 = 25,8 ms per frame. In the current implementation the transfer is blocking and all video and audio calculations need to take place in the remaining 7,5ms per 30Hz display frame.

Using DMA for the data transfer would allow to compute video and audio data while video data is being transferred. This would significantly relax the load on the esp32 core responsible for audio and video.