Commodore parallel cable, Was: XEP1541
From
Wolfgang Moser@wnah@d81.de to
comp.sys.cbm on Thursday, July 03, 2003 12:03:19
From Newsgroup: comp.sys.cbm
Hi Daniel, Agemixer, Sam, Ray, Joe, ...,
I'll try to conclude some things here, that may help
to find a better solution for our problem(s).
Discussion topic:
The Commodore parallel cable used by floppy
speeders and fast copy programs
It's incarnations as XP1541 (XAP, XEP, XH) for the
Star Commander and the PowerLoad cable for 64HDD
Problem(s):
1. The parallel cable itself doesn't carry ground.
It must only be used in combination with an also
connected serial cable. If only the parallel cable
is connected between a 1541 VIA or 1571 (CIA) and
some other device (Userport of C64 or C128, PC
parallel port) and the serial cable is missing, it
may burn the VIA/CIA chip. I take this as a common
fact out of this discussion, there's no proof yet.
2. As Ray stated:
RC> I agree. On the other hand, adding additional
RC> grounds to equipment that already has grounded
RC> components can create problems too. A "ground
RC> loop" can introduce hum and noise into a system
RC> (including computer equipment) that's very
RC> difficult to deal with sometimes. My stereo at
RC> home runs off one outlet and my DSS receiver
RC> off another. Connecting the two for better TV
RC> sound from the amplifier produces an intermittant
RC> hum in the sound and an annoying "lockup" problem
RC> (picture freeze) in the DSS.
RC>
RC> Microprocessors hate ground loops.
3. Another problem may be different ground levels,
something Mr. Axel discussed with Joe Forster
internally. I think, he meant, that it may be possible
with the 1541 disk drive, that the serial port may
carry a different ground level than VIA pin 1.
4. But I could Mr. Axel's statement also interprete as
Agemixer stated in another branch of this thread:
AM> [...] If you have a PC source diffrent than your
AM> commie monitor, it _could_ be possible that your
AM> monitor or TV set rf-cable to your commie, then
AM> the serial cable to the drive, drive parallel
AM> ground to the PC is the shortest link for the TV
AM> grounding. Even if your C64 and/or PC are
AM> connected to an amplifier, you may hear the TV
AM> draw noise when it is connected to your C64. If
AM> the current is high enough between the leaking
AM> currents between the devices of different phases
AM> of grounding currents, the amperes may oxidize
AM> the connectors or even melt the weakest link
AM> first: it could be the tin connections, or even
AM> motherboard copper, but the thin copper and tin
AM> resistance take care that the ICs are blown first.
Discussed solutions:
I. A separate ground line for the parallel cable, but this
introduces problems 2., 3. and 4.
II. A bus concept as described by Agemixer. If I took him
right, he proposes something like the following as a
final solution:
PC XEP1541
parallel <=== DB25 cable ===> adaptor built
port into the drive
||| || |
||+-GND-+| |
Serial Parallel
Connector cable to
VIA/CIA
The disk drive should _contain_ the XEP adaptor or it
should be connected with very, very short cables. Both,
the serial and the parallel cable should carry a (short)
ground connection to the 1541 mainboard ground, the
serial port ground and VIA pin1 (ground).
There will be a "ground loop" ("receiver loop") again,
if the adaptor is connected externally, but that could
be solved by connecting only one single and screw fixed
ground line from the drive case (and mainboard) ground
to the adaptor.
III. Leave anything as it is, but put recommendations into
the docs of the Star Commander and onto the web pages
of the XP15x1 cables (XAP, XEP, XH), that the parallel
cable must not be connected without the serial cable.
Costly solutions:
-----------------
IV. Agemixer: Extra bus drivers for the VIA chip to
protect it.
Disadvantage: This isn't possible easily. Since the
VIA parallel port is bidirectional, you would need
some extra circuits to switch the external drivers
from input to output. Since the direction register
is not available externally, you would have to
construct a new VIA or CIA chip. Could be done with
soem FPGA or CPLD chips, but I doubt, that someone
will pay for it.
V. Solution I. with some extra RF filters. I don't doubt
that this will help much, since the ground loop is
still there.
Possible cheap solutions to reach the goal (not tested)
-------------------------------------------------------
VII. Ray Carlson:
RC> I suggested he run all his hardware from one outlet
RC> by using a power strip. It adds surge protection as
RC> a bonus.
So check your equipment for all the devices, that are
connected with data cables or something, collect them
alltogether and connect it to a single power outlet of
you house.
Agemixer:
AM> So i put all of them to the same outlet. The
AM> filter started made an awful noise, but when i
AM> replaced it with a plain level attentuator, all
AM> the hiss and humm vanished completely. [...] But
AM> sometimes it is very easy... thru 1 x 16 amp fuse,
AM> well thru-earthed until 1 cord extension cable,
AM> finally multiple-socketed and all your devices
AM> plugged there.
An extra fuse for the power outlet and maybe a surge
protection is really a good idea.
Addionally you may want to check the polarity of each
single device connected. Get a Multimeter and measure
the ground levels of each pair of devices (not
connected with any data cable, but with power only).
If there are big voltage differencies, it could help
to plug in the power connector of one of the devices
the other way. Do it until all devices are on the same
ground level. Take note, that some devices may not be
fully grounded at all. Sam Gillet wrote about it.
VI. To circumvent the effects of 3. and 4., Nicolas Welte
proposed (internally) to get solution I., but put a
little resistor of 10 Ohm between pin 1 of the
VIA/CIA and the extra ground line of the parallel
cable.
Does this protect the VIA/CIA then, when the serial
cable is not connected and the PC and 1541 drive are
at different ground levels?
We are still searching for a better, cheap and bullet-proof
solution to protect our VIAs and CIAs, I think. Any comments
and proposions are welcome. But think of the users: Nearly
no one wants to pay more than 10 EUR for such a parallel
cable, no one wants to do more than soldering simple wires
instead of a heap of electronics to selfconstruct a cable.
_That's_ probably the real problem.
A personal statement and only my very personal opinion:
The (simple) Commodore parallel cable (10 wires, 8 data,
2 handshake) is established since 1985 (SpeedDOS). It's
derivatives (XP1541, only 8 data wires) were introduced
sometime around 1997. Many Commodorians implicitly knew of
the problems with such cables, after they shot their
Userport, Joystick ports (C64 CIA) or the drive's VIA.
Since we (people like me) always looked for the cheapest
possible solution to make something possible, we were
consequently overlooking the worst case by principle.
We learnt to handle our computers with care, always
switching them off, when doing some cabling and always
checking correct grounding. Therefore expensive protection
circuits were mostly decided "useless", since they didn't
bring a higher performance or whatever.
Instead of buying and building expensive protection
circuits we socketed our chips for the worst case (in the
average 2 chips per year)...
This personal statement in mind, we shouldn't discard the
attempt to put a more protection into the parallel cable,
if the expense is not too high.
Womo
PS: Hopefully Google won't miss this article.
--- Synchronet 3.18b-Win32 NewsLink 1.113
From
Wolfgang Moser@wnah@d81.de to
comp.sys.cbm on Monday, July 07, 2003 20:14:42
From Newsgroup: comp.sys.cbm
Hello fellows,
Joe had a little talk with Mr. Axel again and sent me a
translated verison of it. I put parts of it here:
Internally mainly solution VI. was discussed:
VI. To circumvent the effects of 3. and 4., Nicolas Welte
proposed (internally) to get solution I., but put a
little resistor of 10 Ohm between pin 1 of the
VIA/CIA and the extra ground line of the parallel
cable.
Mr. Axel writes about this solution:
Well, yes, this is how "book smelling" electronics look
like. But I have to oppose with Nicolas' statement because:
If the resistor's value is small (R<100-200 Ohm) then, in
the better case, it's as if were GND, in the worse case, we
just added an RC oscillating circuit into the GND line,
which - depending on the status of the data lines - will
quite nicely oscillate. If the resistance value is higher
(maybe, in the magnitude of kOhm's) then we will win nothing
at all and there's still a chance for an RC oscillating
circuit... Take into account that what kills the VIA is not
a 5-10V component but an impulse of, at least, a magnitude
higher. Where could this come from? From anywhere. It could
be an ungrounded PC, perhaps, a "comfortable" wire jungle of
a few C64 components (TV/monitor-C64-1541), onto which the
beloved user sometimes kicks the PC, too. From this line
it's enough if e.g. the TV/monitor pulls away the GND point
of the machine-drive pair by a magnitude of 10V's (don't
forget, neither the C64 or the 1541 is grounded, that stuff
has double isolation). And, if there's such a potential
difference between the ground of the PC and that of the
1541, then connecting wires while the machines are switches
on results in sparks flying. Another great killer is if the
PC is in a different power outler than the C64's monitor (in
case of multiple phases). Perhaps, the PC is grounded and
the monitor isn't (or vice versa). Another reason for the
death of a VIA is when the machine is on _and_ it's grounded
but the user is plugging the Cannon 15 plug onto the 1541 at
an angle. (The plug is wide enough so that the pins on the
edge are already contacting but the GND is not yet.)
Grounding the case of the Cannon is no solution either
because, at such an "at an angle" plugging, the case may
dilate well enough (when being abused) that it will again be
the data line that gets contact first...
Joe Forster stated:
- the second GND connection (on the parallel cable) will
give complete protection, even with the resistor, if the
serial cable is not connected.
This WOULD be true if we were talking about direct current
that changes slowly (f<1kHz). However, in this cable,
there's a 3-400kHz rectangle signal, with all its harmonical
components and distortion because of the cable, plus - which
is a horror for TTL IC's - the potential differences, which
can't be handled with a resistor.
The totally secure solution would be that we add some nice
auxiliary electronics to the part of the parallel cable
that is inside the 1541. This would completely deattach
the 1541 electronically from the outer connector (e.g. by
using optoconnectors, like 4N25 and others). Note: The VIA
Ouhhh, groovy! Optocouplers are really a cool idea. A little
bit expensive and with the same problems as solution IV., but
really a cool idea!
can still die if the user keeps plugging _only_ the serial
cable and the potential difference is high enough (out of
my own experiences).
Back then, even the C64 manual warned explicitly about
connecting device only when they are _switched off_.
Mr. Axel further writes, that an extra ground line for the
parallel cable part results in a ground loop. Regardless if
an additional resitors is used or not. He comes to similar
results as this news threads.
Mr Axel points another topic:
If R>2-300 Ohm (practically 1kOhm) then it lost its function
of protection: if only the serial cable is plugged in then,
because of the GND "crawling away", the signal levels can
get into the forbidden territory or, in an extreme case, a
pin can even become negative (if 6 VIA pins are in 1, they
can pull the GND level because current is flowing through
them. From this point, GND is not 0V anymore, rather 1-1.5V
and neither is data +5, rather 5-1/5-1.5 4-3.5V. If, in such
a case the PC pulls some data pin to 0, that will also act
as another - independent - ground signal whose potential is
lower than the official ground, therefore, from the 1541's
point of view, negative signals will arrive at the VIA pins.
I already heard about such things, but didn't study them
in depth. Don't know, how realistic it would be in the case
of our Scenario (PC to Commodore disk drive).
At last Mr. Axel recommends to point out in the Star Commander
docs, that both machines beeing connected should be switched
off. Further always the serial cable must be connected, when
the parallel cable is used.
This would result in solution III then...
Womo
--- Synchronet 3.18b-Win32 NewsLink 1.113