since the sid "oscillators" are only in audio range up to maximum ~4 kHz, they would have to be updated in an interrupt at that frequency minimum
You have forgot, that there is a wider range in the osc than divides of 4kHz. --- also no one said anything about filter upgrade...
I think the current SwinSID works well enough, but can be improved.
Back to the topic -
Current pending issues:
- unnoticed ADSR restart while maintaining a sort enough interrupt handler (with external clock divider a few instruction can be omitted)
- ADC support for 2-out-of-4 paddle mode
(maybe external sound in)
- soft setup instead of the filter-select pin
(- soft setup for other values)
Current solved issues:
- env3 reading
- osc3 reading
- swinsid identification
- partial ADC support (without multiplex or with 4 paddles -- needs a discharging circuit)
- partial support for ADSR restart (needs to properly distribute the checks in the main loop, or find another solution)