It is a very useful effort that you made with these functions, and I was very surprised there is no other attempts on the Web about this...
Unfortunately, I didn't get success in using your function with my miniSEED files... I spent some time to look at your scripts, but finally wrote my own function "rdmseed.m" (submitted this day to Matlab Central). My code is totally rewritten (especially STEIM decoding), also because I needed to access all block headers of individual records; but somehow my function is partly inspired from your code. Thanks for that, and of course I added you in my acknowledgments.
There are a couple of issues in the minSeedST1 file which I am currently finidng solutions to.
The first (major) errror is the Byte_convert_to_32 sub function. It reverses the order of all 4 bytes of uint8 before converting to two int16. In fact it should swap pairs of bytes. Line 307 should read: