Re: PC as 1541

From: Spiro Trikaliotis <ml-cbmhackers_at_trikaliotis.net>
Date: Tue, 26 Apr 2011 21:04:07 +0200
Message-ID: <20110426190407.GB16072@trikaliotis.net>
Hello,

* On Tue, Apr 26, 2011 at 10:25:22AM +0200 Gábor Lénárt wrote:
> On Tue, Apr 26, 2011 at 06:18:41PM +1000, Mike Paull wrote:
 
> Ahaa, thanks for the information. I am wondering if MSDOS is needed, as far
> as I can see, the problem with multitasking OS'es that a process can't get
> exclusive control over the CPU so the timing can be messed up then. But as
> far as I remember these issues were mentioned at some X*-1541 cables, even
> called "multitask" cable (as I can imagine, other method is used for
> signaling which is not so timing-dependent), but I don't know if that's true
> only for connecting PC-1541, or the same can be done with PC-CBM too in case
> of a modern OS which can't garantue exclusive access for the CPU for one
> process.

The problems are different when using the PC as a IEC controller
(connecting a 154x TO a PC) instead when using the PC as floppy drive.

In both cases, there is the problem with the "listener hold off" (cf.
http://www.trikaliotis.net/opencbm#faq_hw, second question). This one is
solved with the "multitask cable(s)" XM1541 and XA1541.

OTOH, a IEC drive must react to an activated ATN within 1ms, or the
controller (the C64, C128, or whatever) will miss that it is connected.
1ms seems like a long time; unfortunately, with a multitasking OS, it
can be tricky to achieve this. That's why a DOS only solution is much
easier here: You have control about the exact timing.

BTW, the 1541EMU uses another trick: It helps with hardware, using the
same "ATN trap" as present on an original 154x, 157x or 1581, using an
XOR gate. This way, the floppy drives reacts almost instantly to the
ATN, and the PC/the floppy can take as much time as needed in order to
react on it.

(Yes, even the 1541 can have problems reacting in 1ms to the ATN. This
is the case whenever the floppy has a long task to do in the interrupt,
for example, when formatting a disk.)

I hope this clarifies things a little bit.

Adding to the question of Ruud: I do not know that the DMA mode of the
parallel port helps here. The DMA is used for a specific protocol (IEEE
1284) only. I cannot see how the transfer could benefit from this, as
the protocol significantly differs from the IEC protocol used by the CBM
floppies.

Regards,
Spiro.

-- 
Spiro R. Trikaliotis                              http://opencbm.sf.net/
http://www.trikaliotis.net/                     http://www.viceteam.org/

       Message was sent through the cbm-hackers mailing list
Received on 2011-04-26 20:00:08

Archive generated by hypermail 2.2.0.