On Tue, 20 Sep 2016, Eric Smith wrote:
On Tue, Sep 20, 2016 at 7:42 AM, Denise de Vries
<denise.devr...@flinders.edu.au> wrote:
Does anyone know of documentation for the HP9895A format with its own M2FM 
encoding?
I have a kryoflux preservation stream but so far can make no sense of it.

I've successfully decoded Intel M2FM disks.  The track-level format
isn't the same as the HP 9895A, but the channel code is.  I'd be happy
to take a look at a 9895A image.

I've already written a decoder for the HP 9885/9895 format. Denise already sent me his image, but I haven't had the time to try decoding it yet...

Here's a rough sketchup of what my decoder does:

- Find the sync pattern (several 0x55)
- Swap the bits in each byte (i.e. MSB<-->LSB)
- Look for an address mark (clock pattern always 0x0E)
  - 0x70: ID address mark
    Calculate CRC16 (initial value 0xFFFF) over four bytes
  - 0x50: data address mark
  - 0xF0: defective track address mark
  - 0xD0: ECC data address mark

- The ID address mark contains the following information:
  0: cylinder
  1: head in bit 7, sector in bits 5..0
  2: CRC byte 1
  3: CRC byte 2



Christian

Reply via email to