Today I did work to make the player operating in near realtime. The version from my inital post does buffer 5 seconds of sound, which would give every intervention like fast forwarding or rewinding a delay of 5 seconds. Also in realtime it would be possible to add some cool effects stuff. I've added oscillators for both, left and right channels in this new version to showcase.
To get into realtime, the tracker modul must be played frame by frame, and most trackers used a frame rate of 50fps (the vertical blank frequency in PAL-TV standard) which was a stable metronom timing base back in those days. However, such a frame is only worth 0.02 seconds of sound data and _SNDRAW needs to be fed quiet well to keep playing stable.
So the following player version works on my hardware, but I'd be interested in results from other people. If you get random disruptions in sound then first try to raise the _LIMIT value in the main loop. If it doesn't help, then add frames to the sound buffer size in line 82 (ie. raise the 0.02 value to 0.04, 0.06, 0.08 etc.) until it works.
NOTE: This is outdated, please follow the green link above to the most recent update of this demo program.
EDIT: Outdated codebox removed, see note above...