Klasse NIB


public class NIB extends G64
  • Felddetails

    • IMAGE_HEADER

      static final String IMAGE_HEADER
      Expected G64 image header.
      Siehe auch:
    • MNIB_TRACK_LENGTH

      private static final int MNIB_TRACK_LENGTH
      NIB file track data length.
      Siehe auch:
    • MATCH_LENGTH

      private static final int MATCH_LENGTH
      Siehe auch:
    • MIN_TRACK_LENGTH

      private static final int MIN_TRACK_LENGTH
      Siehe auch:
    • nibHeader

      private byte[] nibHeader
      NIB file header.
    • trackData

      private byte[] trackData
      GCR data of one track.
    • mnibTrackData

      private byte[] mnibTrackData
      MNIB file data of one track.
    • speed_map_1541

      private static int[] speed_map_1541
      Speed zone for each track (1-42).
  • Konstruktordetails

    • NIB

      public NIB(GCR gcr, String fileName, RandomAccessFile fd, boolean readOnly)
      Constructor.
      Parameter:
      gcr - GCR support
      fileName - disk image file name
      fd - file handle of the disk image
      readOnly - mount read-only?
  • Methodendetails

    • attach

      protected void attach() throws IOException
      Read image in G64 format and fill this GCR data and speed zone data.
      Setzt außer Kraft:
      attach in Klasse G64
      Löst aus:
      IOException - disk image file could not be attached
    • extractGCRtrack

      private int extractGCRtrack(byte[] dest, byte[] src)
      try to extract one complete cycle of GCR data from an 8kB buffer. Align track to sector gap if possible, else align to track 0, else copy cyclic loop from begin of source. If buffer is pure nonsense, return tracklen = 0; [Input] destination buffer, source buffer [Return] length of copied track fragment
    • findTrackCycle

      private int findTrackCycle(byte[] gcrData, NIB.TrackCycle cycle)
    • equals

      private boolean equals(byte[] gcrData, int from, int to, int length)
    • findSector0

      private int findSector0(byte[] gcrData, int tracklen)
    • findSync

      private int findSync(byte[] gcrData, int pos, int gcrEnd)
    • findSectorGap

      private int findSectorGap(byte[] gcrData, int tracklen)
    • gcrDataWriteback

      public void gcrDataWriteback(int track) throws IOException
      Beschreibung aus Klasse kopiert: G64
      Write GCR data back to image.
      Setzt außer Kraft:
      gcrDataWriteback in Klasse G64
      Parameter:
      track - dirty track
      Löst aus:
      IOException - error writing data to image