Hi Ian - just a note to let you know that there may be a bug in
BASS_ChannelSetAttribute(Channel, BASS_ATTRIB_PAN, Panning);
using hardfp version...
A friend of mine is building my BASIC interpreter for raspberry pi in hardfp mode, and gets a floating point exception when that line is executed. The Channel var is HCHANNEL type and is correctly allocated, the Panning var is a float of type double. The compiler is FPC under lazarus. The softfp version works fine (though obviously won't work on a hardfp OS).
Any other info you need, let me know.
Oh, one other thing - very short sounds (such as very quick beeps of pure tone) are sometimes not played on the OpenPandora, or they ramp up in volume briefly at the start. This is using softfp under ARM linux. x86 linux doesn't appear to suffer this issue, but it cannot be ruled out that Pandora's sound hardware might be sub-par and nothing to do with your code. Just a heads-up.