Re: Calling all DOS-heads

From: Ingo Korb <>
Date: Fri, 30 Mar 2012 14:29:19 +0200
Message-ID: <>
Jim Brain <> writes:

> load"$",9

A bit small, but workable unless you need to decipher the timing marks.


180x100? Did you accidentally upload/link a thumbnail of the image you
wanted to show?

>    * At 7.4ms, ATN_IN goes high again
>    * ATNACK is already low, so DATA_ACK goes high
>    * DATA_OUT is already hi, so all is well

A bit more detail for clarification/matching the events in the trace to
the drive ROM:

* the drive receives one command byte (0x3f - UNLISTEN) via E9C9
* at EA28 it sets DATA_OUT high
  (I hope I don't confuse high/low in here anywhere, I usually look at
   the serial bus instead of the driver inputs and sd2iec is also
   written in "bus level" style)
* the received command byte is processed
* at E902 the drive waits until ATN_IN is low
* host sets ATN_IN low
* ATNACK is set low at E8E0
* the LISTENER and TALKER flags are both not set,
  so the code skips to EA4E
* DATA_OUT, CLOCK_OUT and ATNACK are all set to low there
* EBE7 notices that a command or file name was received and starts to
  process it - which means the drive needs to read data from the disk to
  create a directory listing

>    * Than, at 9.443mS, ATN goes high again
>    * DATA never goes high, ever
(which of the at least four DATA signals?)

DATA_OUT won't move until the drive is actively looking at the serial
bus again, but the hardware-acknowledge handles that case. DATA_IN and
DATA_ACK both jump high at that point, so DATA_bus does go low.

>    * ATN_IN cycles a few times (zoomFLoppy), trying to get a response.

I don't see that in the screenshot? Besides, why would it have any
reason to wiggle ATN? It can tell that there is at least one drive on
the bus because DATA_bus went low within 1ms of ATN_bus low and there is
no timeout for any further response from the drive at that point because
it may currently work on a very long command (e.g. N or V).

> I don't understand why the DOS never notices ATN at 9.443ms

It's busy reading data from the disk to create the directory listing the
host just asked for.


       Message was sent through the cbm-hackers mailing list
Received on 2012-03-30 13:00:05

Archive generated by hypermail 2.2.0.