There is a update of your project with target Unix system too.
Impatient ?
Good that you used the packrecords for the xmp headers, otherwise it becomes a mess
All good though and thank you Fred, as it takes out the edge for my attempt (xmp header almost similar as your implementation, using dynamic loading). Ofc. I have to do a lot of testing with all kinds of modules to see if everything actually works
Because I want to use the xmp examples as is, I've gone with asound headers that have a bit more functions exposed. All seems to be working with libasound, openal and I've tossed in a libao example as well. The hard part is cleaning things up (first make it work, then make it clean, tidy and consistent).
fwiw: the interwebs is stuffed with small modules that are around 40-50 kb in size (narrow search to chip-tune(s)).