PDP-1 (was Re: OT and getting further OT...)

From: Eric Smith <eric_at_brouhaha.com>
Date: Fri Feb 11 12:04:59 2005

Brad wrote:
> wow. Last time I checked Eric was a wizard. Just ask that PDP-1 just
> off 101 :-)

Thanks, but I can't take much of the credit. It's a team effort, and
I'm in awe of the fantastic work done by other team members.

The latest news is that we now have the Type 30G Precision CRT Display
working. I was surprised that after we fixed the bizarre miswiring
someone had done to the power control, it came right up. But as with
the PDP-1 itself, the team put a lot of work into restoring the Type 30,
especially its power supplies, before the first power application.

We think that the power control rewiring was done by someone who tried
to fix a problem but did not have the documentation. They swapped
the hot and neutral wiring, pried open one of the mercury relays,
added an extra resistor, and generally rewired everything in a bizarre
fashion. The net result was that the "sail switch", a rotary microswitch
with a metal square attached to the arm to sense airflow across the
deflection transistor heatsink, was wired not to the relay coil, but
across the AC line! The first time we powered it up, as soon as the
fan got enough air going to close the switch, the switch welded itself
closed, and the breaker tripped.

The bizarre part is that the power control was left in this state.
We believe that this very Type 30 was working at the Computer Museum
in Boston around nine years ago. The last attempt to run the PDP-1
there was unsuccessful due to memory problems (which we've fixed),
but there's no record of any problem with the Type 30, so we don't
know why anyone would have been messing with the power control.

My first Type 30 test program was supposed to display a full-deflection
square with the diagonals. It worked, though rather than displaying
lines, it displayed four points very slowly tracing out the vectors.
Peter Samson correctly guessed that it was running at 1/256 of the
intended speed, and the reason. The PDP-1 user manual carefully
explains that the "dpy" instruction uses display coordinates in
bit 0-9 of the accumulator and bits 0-9 of the I/O registers. Even
though I should have remembered that the PDP-1 numbers the bits from
the left, so bit 0 is the most signifcant, I am so accustomed to
the other order that I wrote the code to use the least significant
ten bits. That the program actually worked (but slowly) is due to
my code not bothering to worry about the high-order bits when
incrementing the coordinates.

A few more minutes of hacking the code and toggling it in got us
a stable, refreshed display, though still not what I had intended.
I was still trying for a square, but with one diagonal. In order
to minimize the number of words we had to toggle in to change the
program, I reused the space previously occupied by the code that
displayed the second diagonal to do the coordinate increment, since
it is no longer just an increment by one. But what we got was
essentially bright horizontal and vertical lines in midscreen, plus
the one diagonal. The fixed X coordinates for the vertical lines
and the fixed Y coordinates for the horizontal lines are wrong, so
they ended up centered, and since there are two of each they
are brighter than single lines.

Anyhow, even though it wasn't displaying what I intended due to
a bug in my test program, the PDP-1 and Type 30 were clearly working
correctly, so we declared success.

We attempted to load Space War from paper tape, but had trouble with
the reader, which we'll try to fix on Tuesday.

We haven't yet tested the eight-level intensity control or the Type 33
character generator but will probably do that on Tuesday also.

Work on the Soroban console typewriter is ongoing. It still has
mechanical problems, but Ken Sumrall recently joined the team and
is working on it, and he seems to be making good progress.

Eric
Received on Fri Feb 11 2005 - 12:04:59 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:37:37 BST