Loading ...
Sorry, an error occurred while loading the content.

IMSAI 8080 Floppy Drive Project

Expand Messages
  • joshbensadon
    Well, I finally got an 8 Floppy drive working. Wrote code to format, read, write, xmodem upload & download to the Floppy disk. I made up a CP/M disk, don t
    Message 1 of 5 , Dec 11, 2012
    • 0 Attachment
      Well, I finally got an 8" Floppy drive working. Wrote code to format, read, write, xmodem upload & download to the Floppy disk. I made up a CP/M disk, don't know if it works yet because I want to refine my program to read/write/format to give better error checking.

      I did however get to read Jonathon's disk that he made. It reads well enough, but for some odd reason the file stored on it is not in consecutive sectors.

      Does CP/M skew the sectors? or is this done at the physical level?

      Let me explain. I included skewing a disk at the format stage, so when I write a track, I'm encoding sectors 1,4,7,10...2,5,8,11... on the disk. ie, on the disk the first wedge after the index mark is sector 1, then next wedge is sector 4. With a physically skewed disk, software should be able to read sectors 1,2,3... in an efficient manner.

      There's nothing stopping software from skewing sectors, in which case it would be best if a disk remained 1 to 1. Let the software translate sector 2 as sector 4, then fetch sector 4.

      I have not yet checked if Jonathon's disk is physically skewed, this is one of the improvements I intend on adding to my monitor program.
    • Dave McGuire
      ... Yes, CP/M can optionally skew sectors. CP/M uses a data structure known as a disk parameter block to describe a disk format. It includes an optional
      Message 2 of 5 , Dec 11, 2012
      • 0 Attachment
        On 12/11/2012 03:13 PM, joshbensadon wrote:
        > Well, I finally got an 8" Floppy drive working. Wrote code to
        > format, read, write, xmodem upload & download to the Floppy disk. I
        > made up a CP/M disk, don't know if it works yet because I want to
        > refine my program to read/write/format to give better error
        > checking.
        >
        > I did however get to read Jonathon's disk that he made. It reads
        > well enough, but for some odd reason the file stored on it is not in
        > consecutive sectors.
        >
        > Does CP/M skew the sectors? or is this done at the physical level?
        >
        > Let me explain. I included skewing a disk at the format stage, so
        > when I write a track, I'm encoding sectors 1,4,7,10...2,5,8,11... on
        > the disk. ie, on the disk the first wedge after the index mark is
        > sector 1, then next wedge is sector 4. With a physically skewed
        > disk, software should be able to read sectors 1,2,3... in an
        > efficient manner.
        >
        > There's nothing stopping software from skewing sectors, in which case
        > it would be best if a disk remained 1 to 1. Let the software
        > translate sector 2 as sector 4, then fetch sector 4.
        >
        > I have not yet checked if Jonathon's disk is physically skewed, this
        > is one of the improvements I intend on adding to my monitor program.

        Yes, CP/M can optionally skew sectors.

        CP/M uses a data structure known as a "disk parameter block" to
        describe a disk format. It includes an optional pointer to a
        translation table that is used to translate logical
        monotonically-increasing sector numbers to physical sector numbers.

        -Dave

        --
        Dave McGuire, AK4HZ
        New Kensington, PA
      • Mike
        FYI, The correct term for ordering sectors in a non-contiguous manner as you describe is interleaving regards, Mike W.
        Message 3 of 5 , Dec 11, 2012
        • 0 Attachment
          FYI,

          The correct term for ordering sectors in a non-contiguous manner as you describe is "interleaving"

          regards,
          Mike W.

          --- In midatlanticretro@yahoogroups.com, Dave McGuire <Mcguire@...> wrote:
          >
          > On 12/11/2012 03:13 PM, joshbensadon wrote:
          > > Well, I finally got an 8" Floppy drive working. Wrote code to
          > > format, read, write, xmodem upload & download to the Floppy disk. I
          > > made up a CP/M disk, don't know if it works yet because I want to
          > > refine my program to read/write/format to give better error
          > > checking.
          > >
          > > I did however get to read Jonathon's disk that he made. It reads
          > > well enough, but for some odd reason the file stored on it is not in
          > > consecutive sectors.
          > >
          > > Does CP/M skew the sectors? or is this done at the physical level?
          > >
          > > Let me explain. I included skewing a disk at the format stage, so
          > > when I write a track, I'm encoding sectors 1,4,7,10...2,5,8,11... on
          > > the disk. ie, on the disk the first wedge after the index mark is
          > > sector 1, then next wedge is sector 4. With a physically skewed
          > > disk, software should be able to read sectors 1,2,3... in an
          > > efficient manner.
          > >
          > > There's nothing stopping software from skewing sectors, in which case
          > > it would be best if a disk remained 1 to 1. Let the software
          > > translate sector 2 as sector 4, then fetch sector 4.
          > >
          > > I have not yet checked if Jonathon's disk is physically skewed, this
          > > is one of the improvements I intend on adding to my monitor program.
          >
          > Yes, CP/M can optionally skew sectors.
          >
          > CP/M uses a data structure known as a "disk parameter block" to
          > describe a disk format. It includes an optional pointer to a
          > translation table that is used to translate logical
          > monotonically-increasing sector numbers to physical sector numbers.
          >
          > -Dave
          >
          > --
          > Dave McGuire, AK4HZ
          > New Kensington, PA
          >
        • joshbensadon
          ... Right, I remember that from my days of low level formating on the MFM hard drives. But I was using a term that is more appropriate to the era of CP/M.
          Message 4 of 5 , Dec 11, 2012
          • 0 Attachment
            --- In midatlanticretro@yahoogroups.com, "Mike" <mike@...> wrote:
            >
            > FYI,
            >
            > The correct term for ordering sectors in a non-contiguous manner as you describe is "interleaving"
            >
            > regards,
            > Mike W.


            Right, I remember that from my days of low level formating on the MFM hard drives. But I was using a term that is more appropriate to the era of CP/M. Page 28 of "The Programmers CP/M Handbook" calls this technique "Skewing" and also acknowledges it as "Interlacing".

            Thanks for the reminder. I wonder if it was called by any other names?
          • joshbensadon
            Hi Evan / Bill, Several months ago you provided a link to your HOPE lecture (Hacking & Portable Computers). I got the impression this wasn t your only lecture
            Message 5 of 5 , Dec 12, 2012
            • 0 Attachment
              Hi Evan / Bill,

              Several months ago you provided a link to your HOPE lecture (Hacking & Portable Computers).

              I got the impression this wasn't your only lecture and was wondering if you had the other lectures for hope (or other?) recorded?

              If so, please, may I download them?

              Thanks,
              Josh
            Your message has been successfully submitted and would be delivered to recipients shortly.