
      Intentional read errors for testing Commodore-to-PC disk transfers

  With Disk Demon and Maverick's GCR Format Editor, the following  intentional
read errors were created on a Commodore disk:

  - Sector 1;0: 20,READ ERROR. Changed the GCR-byte at  offset  $0001  in  the
    header from $54 to $D4. This  damages  the  header  signature  byte.  (The
    GCR-byte at offset $0000 of the header  must  remain  $52,  otherwise  the
    sector is completely lost!)

  - Track 2:    21,READ ERROR. Vacuumed the track with Disk Demon. (Note  that
    this error applies to a full track as it is a sign of missing SYNC marks!)

  - Sector 3;0: 22,READ ERROR. Changed the GCR-byte at  offset  $0000  in  the
    data block from $54 to $55. This damages the data block signature byte.

  - Sector 4;0: 23,READ ERROR. Changed the GCR-byte at  offset  $0142  in  the
    data block from $E5 to $F5. This damages the data block checksum.

  - Sector 5;0: 24,READ ERROR. Changed the GCR-bytes at offset $0004 and $0005
    in the data block from $29/$4A to $28/$48. This damages the data bytes  at
    offset $02 and $03, changing them from $00 to $FF. (There had  to  be  two
    bytes changed so that the checksum still matches!)

  - Sector 6;0: 27,READ ERROR. Changed the GCR-bytes at offset $0001 and $0002
    from $55/$65 to $54/$F5. This damages the header checksum.

  - Sector 7;0: 29,READ ERROR. Changed the GCR-bytes at offset $0002 and $0007
    from $75/$A5 to $65/$85. This changes the second byte of the header ID and
    also corrects the header checksum accordingly.

  The first two bytes of all sectors - obviously, except for sector  18;0  and
18;1 - show the track and sector number so that  you  can  check  whether  the
correct data has been read from the sector.

  Several copies of the disk have been made. These all  duplicate  the  errors
correctly:

  - error.d64: Warp disk copier of Star Commander 0.83.02 alpha.  "Invalid GCR
    code" was set to "24,READ ERROR".

  - error.g64: mnib 0.28  (by  Markus Brenner <markus@brenner.de>).  (See  the
    original raw image in error.mnb.)

  - ?!!error: Zip Collection 2, on a real Commodore.  (Note  that  it  neither
    detects nor retries disk errors on weak disks. The result had a few  extra
    23,READ ERROR's that weren't actually there! These have been fixed by hand
    in the archive.)

  Notes on further conversion:

  - Zip Collection 2 converts  the  sixpacked  ZipCode  archive  back  onto  a
    Commodore disk correctly: all errors are present,  along  with  the  exact
    changes. (Again a few extra 23 READ ERROR's were created!)  Therefore,  if
    you want to do some tests yourself, this is the preferred method to create
    the test disk.

  - s2g (by Markus Brenner <markus@brenner.de>)  does  not  duplicate  20,READ
    ERROR's and 21,READ ERROR's.

  - n2d (in the mnib package) mostly puts completely wrong status  codes  into
    the error info block of the resulting disk image.

  Brief, non-comprehensive list of related hotkeys. Disk Demon:

  - R: Read sector.
  - W: Write sector.
  - Shift-W: Write sector, along with header.
  - H: Edit header.
  - I: Edit data block extra bytes (signature and checksum).
  - S: Scan for disk errors.
  - V: Vacuum track (fill with $55 bytes).
  - Run/Stop: Abort function.

  Maverick GCR Format Editor, track screen:

  - R: Read track again.
  - T: Read another track.
  - Space: Edit header.

  Maverick GCR Format Editor, header screen:

  - Space: Edit.
  - S: Swap side.
  - W: Write header.
  - <-: Return to track screen.

  You can find this package at http://sta.c64.org/scbeta.html. Please,  report
comments.

  Joe Forster/STA
  19th May, 2002
