It seems that the problem is somehow related to the player internal double-buffering of the raw sound data.
I am using just a raw sound device hardwired to a buffer size of 4608 (as stated in various places, I got an error message otherwise anyway :) ). The raw sound device just sends the data to stdout which I pipe to /dev/audio or /dev/dsp.
When the player moves on to the second pattern of any song, it seems to be playing a filled buffer, then an empty (zeroed) buffer, then a filled buffer, etc etc.
The first pattern plays perfectly well though. I don't know what is causing it, I will try an older version of the library to see if it is there, too.
I have been working with MikMod long ago and afaik it only allocates the buffers once, then keeps overwriting it - so there shouldn't be a memory issue or anything.
Till