Fixed! Found a sneaky pointer. Still interested in learning a better way to do the 24-bit endian swap. What I'm using is the best I could figure out on my own.
Thats a great site, too bad this forum does not have a file section.