RIFF is a little-endian version of the FORMs file format in some other OS... it's basically a standard way to define files, no matter what you have inside them. Windows AVI, WAV, and other file formats use it.
RIFF<size>CDXA
fmt <size>....8.XA........
data<size>...
It's basically telling you it's a CDXA-formatted file, with the "fmt "(format) set to those values. after the main fourCC code, there is a 32bit size, and then <size> bytes of data. It's a simple format.
00 00 00 00 ....
38 01 58 41 8.XA --the "." in here is a byte(1)
01 00 00 00 ....
00 00 00 00 ....
I suppose "XA" means it uses XA audio in the stream, but no clue about the other bytes. All the files use the same header so who knows.
Anyway I have a theory: the STR player probably couldn't handle mode2form2 sectors, so when they were reaching the space limit, they decided to use mode2form2 sectors, and had to make a new file format for it. I might be totally wrong on this, but it makes sense.