On 2018-06-06 2:08 PM, Paul Koning via cctalk wrote:
On Jun 6, 2018, at 9:48 AM, Noel Chiappa via
cctalk <cctalk at classiccmp.org> wrote:
Hi, I'm hoping someone here knows the low-level nitty-gritty on how the
characters on the CDC 6600 console CRTs were generated.
Thornton, "Design of a Computer", says "Control of the beam .. is provided
by
electrostatic deflection ... electronically converting from the symbol .. to
deflection voltages", but alas, doesn't say how that conversion is done. And I
looked in some CDC 6600 documentation online, alas, even less detail.
But looking at the characters (reproduced on the dust jacket), the curves sure
make it look like it wasn't anything simple (e.g. using display vectors, as
one source indicated). Does anyone know?
Yes.
It is indeed a digital stroke generator, not a Fourier generator as someone suggested.
The reason for the odd shapes on the Thornton book cover is the AC characteristics of the
display electronics.
The tweet did, but I found the suggestion surprising.
There are a couple of parts to the puzzle.
One is the display controller ("synchronizer" in CDC terminology, the module
that connects to the 6000 I/O channel). The 60125000 manual that was mentioned is the
"block diagrams" manual for that (and several other) controllers. The block
diagrams show the overall data flow and the general structure of the circuits, but they
are not complete schematics.
However, the full schematics also exist:
http://www.bitsavers.org/pdf/cdc/cyber/cyber_70/fieldEngr/63016700A_6600_Ch…
The block diagram manual shows the waveforms generated by the controller. As you can
see, they are pretty angular and straight lined. Each segment (between the small marks on
the stroke) corresponds to a 100 ms clock cycle, with a one or two element step in X
and/or Y.
That must be closer to 100 ns? Typo?
Incidentally, the 170 series display controller produces the same waveforms, though using
a completely different (ROM based) design.
The other part of the puzzle is the DD60 console display. That is fed from the 6602/6612
display controller by a bundle of coax cables. The waveforms are generated by A/D
circuits (quite primitive ones) in the 6602, and travel in analog differential form to the
DD60. There they go through a string of amplifiers and a scaling circuit, for the
small/medium/large character size selection. Eventually they end up on the deflection
plates of large electrostatic deflection CRTs. Much of the signal chain is early 1960s
transistors; the final couple of stages are tubes. You can find the schematics at
http://www.bitsavers.org/pdf/cdc/cyber/cyber_70/fieldEngr/82100010_dd60a_Ma…
What appears to be going on is that the signal chain in the DD60 has enough bandwidth to
draw the characters, but only barely. So there is distortion in the path, resulting in
character shapes on the screen that are not the same as the nominal stroke patterns
generated by the controller.
I have converted the "chassis tabs 12" wire lists to a VHDL model, which you
can find on my Subversion server. Run on GHDL, it demonstrates the behavior of the
circuit and reproduces the documented waveforms.
I have also attempted to create a SPICE model of the DD60 deflection signal path. So far
that hasn't been all that successful. I probably have bad assumptions for the
transistor models, and the CRT deflection plate capacitance figures are also a complete
guess. My hope was to reproduce the actual screen patterns, but that hasn't worked
yet.
Finally, I did a much more primitive approximation of the DD60 signal path, with a couple
of IIR filters that very roughly imitate the RC elements in that path. That was done as
part of my console display emulator program for Tom Hunter's DtCyber program. It was
somewhat successful in that the characters show some of the rounding and distortion that
the real display has, but unfortunately I can't claim that this is because it's an
accurate model.
Nice work!
--Toby
By the way, the displays shown on the 170 series console (CDC 565) look somewhat
different. ...
paul