Today, while thinking how the heck I’m going to integrate my 3mbps Parallax USB to Serial converter, I was trying to figure out exactly how many different possibilities there are coming out of an Amiga floppy drive. Since there are strict limitations on the number of one’s in a row (one!), and the number of zero’s(three) then this seriously limits the character set of the output. So the output is no longer 256 different choices. I long knew that, and doing character distribution tests on my output files, even though they were partially corrupt, I could see that this set was very small. I wanted to find out exactly how small.
There are only 32 possible MFM bytes! Too many zeros, or too many one’s ruled out all the others.
Note that you could go further and create valid groupings like cryptographers do with knowing that only certain letters follow only certain other letters, and NEVER follow a different letter, etc.
In HEX, the following bytes are the only possible MFM output from an amiga floppy disk:
0x11, 0x12, 0x14, 0x15
0x22, 0x24, 0x25, 0x28, 0x29, 0x2A
0x44, 0x45, 0x48, 0x49, 0x4A
0x51, 0x52, 0x54, 0x55
0x88, 0x89, 0x8A
0x91, 0x92, 0x94, 0x95
0xA2, 0xA4, 0xA5, 0xA8, 0xA9, 0xAA
I’m not sure exactly how this helps my cause but this means only 5-bits really *need* to get communicated back to the PC to represent all the possibilities, not 8-bits. This may save transfer time or something.