[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 6 & 2 / 5 & 3 Encoding



In article <3gop7c$ma8@usenet.ins.cwru.edu>,
Michael A. Balfour <mab22@po.CWRU.Edu> wrote:
>I've been busy writing an emulator, and I'm on disk access currently.
>Unfortunately, I don't have access to any useful texts like Beneath
>Apple DOS, so I was wondering if somebody could *please* explain to me
>how 6 & 2 and 5 & 3 encoding works (and for that matter, why it's
>necessary).  E-mail would be greatly appreciated.

   Unless you're planning to make this a 1:1 emulator down to the
hardware, you might want to skip this step. Basically, it comes from
the fact that early Disk II controllers could not reliably read more
than 1 0 bit. Two or more zeros in a row wouls start producing false
1's, and other stuff you'd rather not deal with.

   The solution was to pad a series of 5 bits with 3 one bits such
that there was never any 2 0's in a row. Later controller roms were
more accurate, and could handle 2 0's in a row, so the number of
padding bits could be reduced.

   As to actually 'how it works' and source, sorry, I don't know off
the top of my head.

Nathan Mates
-- 
* Nathan Mates   http://www.ugcs.caltech.edu/~nathan/              <*>
* Ftp humor archiver: ftp to ftp.cco.caltech.edu, look in pub/humor *
* "Always listen to experts. They'll tell what can't be done, and   *
*  why. Then do it."  -- Robert A. Heinlein, Lazarus Long           *