@Bengismo That's interesting. Where did you get those from? That could be quite limiting (although not impossible to deal with).
The range required for 8 octaves covered by XM is ahem.. according to my linear calculated pitch table for AGK:
[0.0625, 0.0677083, 0.0729167, 0.078125, 0.0833333, 0.0885417, 0.09375, 0.0989584, 0.104167, 0.109375, 0.114583, 0.119792, 0.125, 0.135417, 0.145833, 0.15625, 0.166667, 0.177083, 0.1875, 0.197917, 0.208333, 0.21875, 0.229167, 0.239583, 0.25, 0.270833, 0.291667, 0.3125, 0.333333, 0.354167, 0.375, 0.395833, 0.416667, 0.4375, 0.458333, 0.479167, 0.5, 0.541667, 0.583333, 0.625, 0.666667, 0.708333, 0.75, 0.791667, 0.833333, 0.875, 0.916667, 0.958334, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333, 1.91667, 2, 2.16667, 2.33333, 2.5, 2.66667, 2.83333, 3, 3.16667, 3.33333, 3.5, 3.66667, 3.83333, 4, 4.33333, 4.66667, 5, 5.33333, 5.66667, 6, 6.33333, 6.66667, 7, 7.33333, 7.66667, 8, 8.66667, 9.33333, 10, 10.6667, 11.3333, 12, 12.6667, 13.3333, 14, 14.6667, 15.3333, 16]
So.. many platforms would need pre-calculated lower/higher octave samples. Not impossible, but dang...
[edit] To be honest though, not much is going to the C0 or C7 extremes. Most stuff sticks to the middle 3 (at least with Amiga origins) so, we are really working with 0.5 -> 2.0 in most cases. However, it would be prudent to render additional re-samples for all ranges if this project gets sufficient interest. A good coder would pre-check the music for extreme samples and render those specific samples as required to save memory