AgonConsole8 / agon-vdp

Official Firmware for the Agon Console8: ESP32 VDP
MIT License
38 stars 17 forks source link

Audio system rewrite experiment #117

Closed stevesims closed 8 months ago

stevesims commented 9 months ago

This branch/PR is where experiments are being conducted in making the audio system more robust.

As of VDP 2.3.0 the audio system works, but there are issues with changing waveforms on channels, which has been hilit by issues experienced by @HeathenUK 's experimental mod file player.

The primary suspicion of the underlying cause of these reasons is the multi-threaded nature of the audio system. No "atomic" primitives were being used, so there was no protection for values being adjusted from different threads

The work here is intended to try to fix things, making the audio system more thread-safe, and bring some more stability. It will be accompanied by a custom vdp-gl branch too, as the underlying audio system is also not thread-safe

There will inevitably be mis-steps along the way with this PR, and this branch will not be "stable" - commits may change and be edited out of the history, so don't bank on anything :grin:

stevesims commented 8 months ago

closing this, as it was a dead-end