On Tue, 10 Apr 2007, Philip Pemberton wrote:
It's a state machine.
Yes, I begin to understand. I've missed the part where the state machine
is clocked with the master clock. This makes more sense now.
/RDDAT shows
the bit pattern 10100001, i.e. $A1. But the address mark for
MFM consists of four bytes ($A1A1A1xx), and the address mark bytes have
clock bits 2, 3 and 4 removed, your data stream seems only to have bit 3
removed.
Um, no.
The MFM sync word does decode as 0xA1, but it has a missing clock bit in the
lower nibble - it's encoded as:
01 00 01 00 10 00 10 01
^
missing clock
0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1
C D C D C D C D C D C D C D C D
D = $A1
C = $0A
Ok, I was referring to the IBM 5114 maintenance manual which describes FM
and MFM encoding that IBM used for their drives/controllers. But you are
right, e.g. the "Floppy Disk Data Separator Design Guide for the DP8463" says
that the address mark $A1 has a clock pattern of $0A. I don't really know
what IBM meant with "missing clock bits 2, 3 and 4"... I think it applies
to the $FE or $F8 address mark in FM.
Christian