Decoding kryoflux stream for HP9895A
cc at informatik.uni-stuttgart.de
Wed Sep 21 01:59:00 CDT 2016
On Tue, 20 Sep 2016, Eric Smith wrote:
> On Tue, Sep 20, 2016 at 7:42 AM, Denise de Vries
> <denise.devries at 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:
1: head in bit 7, sector in bits 5..0
2: CRC byte 1
3: CRC byte 2
More information about the cctalk