This thread just reminded me, I need to bug soneek to release whatever he's using to convert between Nintendo dsp formats on SCM in some usable format. Unless he's already done that, and I'm just way behind (but I doubt it).
Alright.. so originally, I was running into an issue with Nintendont's audio using custom HPS files and thought that the issue was due to incorrect decoder states in the block headers of my custom HPS files. I created an option in hcshps that fixed (or at least it seems to fix) those decoder states in block headers given an input HPS file, but files that I patched using this new option still didn't fix the audio issue that I was running into with Nintendont. I figured out that it had to do with block size. I made a post about it here:
Good to know about the block size, it's scary how tightly tuned these drivers can be.
Re: looping, iirc the original .HPS files use smaller blocks at the loop point so that they can loop more accurately, so you can probably get away with it like that if you want easier looping.