Has Anyone Written PDP-8 .XOR. Code Using the MQ Register (Without the EAE)?
clasystems at gmail.com
Thu Dec 24 00:19:09 CST 2015
One more factoid:
Many who have DECtape drives do not run them at the final spec of relevant
ECOs. The TD8E will work quite as well as it can on the hardware side, but
only if you perform all lf the ECOs [or equivalent]. Some are volunteering
their time to help document [and in some instances implemente!] some of the
more common missing elements towards that goal.] DECtape started out so
reliable, no one realized that it could get just enough unreliable to
eventually become a "gotcha" unless you have the final spec.
All of the following MIGHT apply to any particular TU55 or TU56 drive. ALL
of these are fixable with some effort [that may require some cooperation to
keep the community cost down to quite affordable:
1) There are three types of front wear plates:. The final is a ceramic in
the exact shape as the oldest one made from soft steel. Either is fine;
arguably the steel one is actually better in terms of maintenance because
it can be polished nicely; the ceramic one can be somewhat cleaned by
bathing in certain chemicals to remove the iron oxide buildup that gets
INTO the pores of the ceramic, but that's mostly cosmetic, etc.
What MUST be avoided is the dreaded mistake that was a major-step
backwards: DUAL-SIDED ceramic wear plates. The smooth edge of the other
two is replaced by a sharp chisel! It is known tp SHRED the tapes [and
sometimes not so slowly!]. I doubt if it can be "blunted" enough to become
smotth [it will likely crack apart] but soft steel can be bought; a good
machinist can repro he old one, and perhaps by using slightly harder metal,
can come up with one arguably better than either DEC original, etc.
2) Inside of the cover on the front of the guides is a small hole with a
very coarse spring. The spring is to be OUTLAWED as it is the chief
culprit in why everything else is screwed up [including the need to
clean/polish the front wear plates as described in 1) above.
Most newer TD8E-worthy TU56 fortunately have this changed:
The backside of the front cover needs a flat-bottom larger but less-deep
hole in a different place [the other hole can be ignored]. This is also a
pretty straight-forward machine-shop job.
Once that is established, there is a very "floppy" gentle-pushing spring
that lowers the force pushing the tape rearward at the rear "cheek" plates
[which can score them, see below]. This way, you avoid NEW damage to the
tapes, the wear plates [and the rear cheek plates, but you cannot fix
present damage this way, so this is still not complete].
3) The wear plate is defined to have some definite number of thousandths of
an inch it can push the tape rearwards. DEC wisely changed it to a bit
more [maybe 12 thousandths more total travel, I am not a machinist to
measure mill-smidgens, but some people can come up with this by comparing
the before and after to get that exact to a macihinist's rule of thumb, etc.
In any case, it's a straight-forward milling job and not all that much.
[Note: Some guides are made of aluminum, while the spec is for steel, it's
not as important to change the guides as it is to change this milling job
being applied. Many older TU55 drives are all aluminum and the LINC/LINC-8
drives are all Aluminum. Steel if you have it is preferred, but is not on
the list of things to be concerned about; all I mention here is [if your
drive needs upgrade].
This allows the tapes to be "thinner" [slightly less than the nominal 3/4
inch wide] because DEC wanted SLIGHTLY damaged tapes to still be useable.
[They realized they greatly screwed up from the beginning.]
4) The rear-cheek plates issue:
All TU55 drives [and some very early TU56 drives have one-sided rear plates
that cannot be swapped left to right and vice verse because it lacks a
bevel. This is actually an opportunity!
The newer plates were fflipable. the problem is that often field circus
did just that, so you can have ruined on both sides guides.
If you have the older plates, then get machining to create a virgin new
All dual-sided ones need to be evaluated. If you are lucky enough to have
only damage on one sided, then just swap them after you do all of the
above. They will score very, very slowly, easily 2-3 orders of magnitude
lower with the floppy spring than with the old gross one, etc.
Each damaged side of any plate has to be a one-off judgement call [actually
both sides of any drive are likely in the same shape, good or bad].
It is possible there is the need to polish out the score line, but some are
so bad, you may not be able to. Hopefully many will at least pass on one
We now have hard-anodize capability that didn't exist back then. So, after
score-line issues and bevelling if necessary to create a new reverse side
for the older ones, they need to be made "naked" and be placed into a
modern anodizing bath. If there is no score line [such as on older drives'
"back side" you have the best possible outcome. [But you cannott undo deep
scores, agtan hopefully no one has deep scoring on both sides. Scoring may
not be as bad as it looks. That's because the anodize scores first. Once
it is naked metal, it might be polished out, YMMV
5) Roll pins versus dowel pins.
If you encounter roll pins, throw them way [targets optional]. Replace
with dowel pins [which are apparently not only available, they are cheap in
boxes of 100, but any one drive only needs 8.] Share them with your
Past some point, they all have these. It makes taking the guides off and
the ability to inspect the rear plates [and clean thoroughly] easy instead
of a true nightmare. [You'll have to learn to curse at something else :-) ]
All TU55 and TU56 are the same on all of the above issues [except where
noted]. The heads are not involved [air bearings so the head never
touches, but the tape does come close]. DO NOT take the heads off ever
[unless you know and are prepared to deskew, an entirely different issue.
Restoring things to what they were should mean no need to be concerned
here, etc. For purists who get past all of the above,contact me for info
about that more advanced subject.]
Warning, there are drives in such poor condition out there that the
knowledgable will NOT allow their tapes to be placed on them. But all
drives can be fixed up with some effort.
[I would say taking up a collection would get all happy if we organized.
$25/head [that is a DECtape head :-)] is the figure I suggest; the more
"generous" collectors can foot the rest of the bill. [Of course only a few
are concerned with such as repro front wear plates, etc. Dowel pins are so
cheap it doesn't matter much either way.]
Tapes from a 1962 LINC can be read today on LINC/LINC-8 drives just fine.
The all-Aluminum design has no front nor rear stuff, just a hand-made
channel in an Aluminum block. [Note: The speed of the newer drives is 133
microseconds a word there. On the LINC/LINC-8 drives it's 160 microseconds
and it is just effortlessly working [but you do need to buy new belts!].
DECtape/LINCtape is a great concept, but there were blunders along the way;
it has held up surprisingly well since some tapes are nearly 54 years old
now! [And ALL of the potential problems can be remedied.]
[Now imagine running fully ECO'd TD8E and TU56 AND software beefed up all
at the same time!]
On Thu, Dec 24, 2015 at 12:39 AM, CLASystems <clasystems at gmail.com> wrote:
> On Wed, Dec 23, 2015 at 10:14 PM, Christian Gauger-Cosgrove <
> captainkirk359 at gmail.com> wrote:
>> On 23 December 2015 at 13:44, CLASystems <clasystems at gmail.com> wrote:
>> > Ironically, the shortest and fastest seems to be avoidance of the MQ
>> > altogether [thus making it work on ANY model].
>> > TAD ARGONE
>> > AND ARGTWO
>> > CLL RAL
>> > CIA
>> > TAD ARGONE
> > DCA ARGTWO
> OOPS! The LAST INSTRUCTION SHOULD BE TAD ARGTWO !
> Starts with a clear AC, ends with AC containing argone .xor. argtwo.
> Neither argone nor argtwo are modified.
> Sorry, too much transcribing from notes about notes, etc. :-).
> This is a fragment from a larger topic about the TD8E. If you start with
> a CMA in front of the code and a CMA at then end, you have the ARGONE .EQU.
> ARGTWO, but that's even longer.
> The larger argument is that you need not calculate .equ. every 12 bits
> because on a DECtape, you can combine them halfs-wise at the end and then
> invert the six-bit result to write on the tape [or compare what you read
> from the running calculation as you read it.
> Thus, each word loop is two instructions shorter and you can combine if
> you are clever in about one extra instruction but 1 or more total cycles
> less [for a net gain of one instruction and a little bit of time at the
> most critical point and a bit more at the slightly less critical points.
> The original discussion is that since the TD8E is for the Omnibus only,
> why not see if the MQ can be helpful. It seems not in the end because it
> takes even longer ironically [and a few more instructions, etc.]
> However, BSW will likely help in that separate "sticky" point to some
> small extent.
> [The overall topic is beefing up a TD8E in every way possible to make the
> real-world tape [not the SIMH] be more free of
> tape/cleanliness/guide/wear/tape-wear issues that can make the wost-case
> jitter problems come dangerously close to failing. When all the hardware
> and media are new, it's less of a concern.. However, there are actual
> systems running the hardware and some predictable problems. I'm just
> pursuing the theoretical [and practical] software issues, etc. [Can't go
> up one "level" in why just yet; a few already know why, but that's all I am
> prepared to say for now.]
> cjl [I found one of my own posts on-line from back in the day, and was
> trying to pursue it.]
>> > This works because .XOR. is addition ignoring the carry bits. So,
>> > they will happen, just allow them at first, then remove them.
>> Hmm, I just tried that in SIMH, and that doesn't XOR at all. I haven't
>> a clue what it does.
>> What I have entered:
>> sim> ie -m 100-105
>> 100: TAD 76
>> 101: AND 77
>> 102: CLL RAL
>> 103: CIA
>> 104: TAD 76
>> 105: DCA 77
>> Locations 076 and 077 being ARGONE and ARGTWO respectively, at the start:
>> sim> ie 076-077
>> 76: 1234
>> 77: 4321
>> After running the above code sample:
>> sim> ie 076-077
>> 76: 1234
>> 77: 0574
>> If we "flip" ARGONE and ARGTWO's values (to 4321 and 1234 respectively):
>> sim> ie 076-077
>> 76: 4321
>> 77: 3661
>> Neither of those is the expected 5115 of an XOR operation.
>> Am I missing something blindingly obvious?
>> Christian M. Gauger-Cosgrove
>> Contact information available upon request.
> "In the future, OS/2 will be on everyone's desktop"
> Bill Gates, 1992
"In the future, OS/2 will be on everyone's desktop"
Bill Gates, 1992
More information about the cctalk