New X1541 standard

From: Ruud Baltissen (
Date: 1998-09-11 21:28:11

Hallo allemaal,

New X1541-cable,

A lot of people happily use the X1541-cable to connect their PC with their
C= equipment. I was one of them until one day my PC started to smoke. I
opened my PC and found out that my I/O-card had gone to the moon. From that
day on I used X1541 only in combination with an old-fashion all-TTL-ICs
card and was happy again.

When soldering the cable I instantly knew there was something fishy about
it because I knew the lines of the IEC-bus were used to transport signals
in two directions while the LPT-port had no line capable of doing this. 

The problem is that more and more users, including myself, have mother-
boards with an onboard LPT-port and no hair on my head thinks of it using
this port for things like X1541. It is easy to say to buy an extra card for
this purpose but I also have no confidence in these as they are fitted with
VLSI-chips as my I/O-card was.

The solution is to devellop an new interface which uses the LPT-port but
will not cause problems by using the lines as how they were meant to be
used. The LPT-port has 12 outputs (8 data- and 4 controllines) and 5
inputs. Only 4 controllines are used for X1541. This means that we have
to place an open-collector-buffer between each output and its corresponding
line and that the output of this buffer has to be feedback to an input of
the port. 
The catch of this solution is that all the software, using the X1541-cable,
has to be addepted to the new standard. 

The hardware:

There are two directions to go:
1) using transistors, resistors etc.
2) using TTL ICs

The disadvantage of using TTL-ICs is that the interface needs an external
powersupply. This is available at any gameport but it still means an extra
cable and connector. If the choice is to use TTL, then my choice of IC will
be the 7406 as this IC is used by C= as well. 
Whatever choice is made, the same software can be used for both interfaces.

I made an prototype using transistors and it worked fine as far as I could
judge. For every line I used 1 BC547 NPN and 2 resistors of 56K. One
connects the base with an output of the port and one connects the base with
GND. The collector is connected with the line and an input of the port.

Another idea is to use pin 10, Acknowledge, as input for the ATN-signal
because this input is capable of generating an interrupt. This can be an
advantage when using the PC as diskdrive for an C64.

Extra idea:

The datalines of LPT-port are not used. How about connecting them to the
userport for 8 bit parallel transfers? 
For the old ports this can only be used for reading but for bidirectional
ports.... (And I rebuild an old one :-) )
The consequence is that to use this feature the kernal has to be changed.

Yvo Nelemans wrote Server64 and he wrote it in Turbo Pascal :-). He stopped
with the devellopment and I have decided to resume with this project after
getting his permission. Server64 is meant to use the PC as diskdrive for
the C64. Unfortunally it also is as slow as a standard diskdrive in
combination with a standard C64.
My questions to you are:
1) does anybody have detailed protocol specifications of a fastloader only
using the IEC-cable (example EXOS V3) and/or its sourcecodes? 
2) the same for a parallel fastloader (like SpeedDos)?


Groetjes, Ruud

This message was sent through the cbm-hackers mailing list.
To unsubscribe: echo unsubscribe | mail

Archive generated by hypermail 2.1.1.