[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Hardware musings
Michael J. Mahon wrote:
> And even the USB isochronous modes are more geared to keeping a buffer
> from emptying than to precise real-time reactions in a communication
> that is 2-way. It is not possible, AFAIK, to control something on the
> other end of a USB link with microsecond precision.
Hello Micheal,
in what situations would we really need to react that fast to a
situation at the other end?
Obviously we'd need a buffer at the drive end anyway. You'd fill that
buffer with a mixture of bits-to-be-written and drive start/stop + head
movement phase triggering commands from the PC side, then kick off the
writing process. If the buffer is large enough to hold a whole disk's
worth of that data, you should be able to write everything that a real
Apple II can write to disk (and maybe some things that it can't write).
For reading you'd fill the buffer with your 2MHz sampled bit data,
mixing in some information on when exactly you triggered the phases. You
could chose between a small number of different reading algorithms -
like "1.5 rotations on every full track" or "three rotations on every
quarter track". That algorithm would be carried out autonomously and
then you'd "only" need software on the PC side to run the right data
through your state machine and puzzle it all together.
This is certainly a more flexible and universal approach than emulating
a 6502 and a full state machine on the drive end of things.
--
Linards Ticmanis