Brent Hilpert wrote:
.... I'm familiar with
core-rope ROM (or at least one version of it) from attempting
to make a reader to dump the contents of a Wang calc
microcode ROM, but the AGC version sounds like the
address-decoding/word-selection is done differently (..need a
diagram).
Speaking of Wang Calculator ROM's, I've recently built a fixture that
I'm successfully able to read Wang 700-series ROMs with. It's
unfortunately a non-automatic system...toggle switches and TIL-311 HEX
displays (can automate it later), and am in the (slow) process of
dumping a known good Wang 720C ROM. The ROM strobe signal timing is
very tight on the 700-series ROM...off even a little bit on the timing
(pulse width), and the readout gets real inconsistent.
Also trying to write a microcode execution engine in Perl to run the
code, but there are lots of interesting timing considerations that
require deep digging into the schematics (which is something that I have
little patience for...basically, I'm not very good at it) in terms of
the timing of all of the register transfers in the machine. On the
surface, it looks simple, just a basic 10-phase non-overlapping clock
(shift register), but there's a lot of combinatorial logic that derives
a lot of weird timing from the basic clock phases.
So far, my attempts to execute the code I've extracted so far lead to
execution of illegal instructions (all zero ROM locations), or infinte
loops, and the code execution doesn't seem to make much sense. There
are also some microcode instructions that aren't documented, and having
to dig through schematics to figure out what they do. Wang is also
famous for purposefully putting errors into published schematics to
throw off competitors who would use such schematics to reverse-engineer
how the machines work. So, some of my problem could be that the
schematics are not necessarily an accurate representation of the actual
logic.
Still some tinkering to do. Still, I'm very sure that the fixture to
read the ROMs is working perfectly. All ROM locations return consistent
results, and other than the emulator running into all zero ROM content
(there are quite a few "unused" locations in the ROM), all of the
instructions decoded thus far are "valid" in terms of the allowed values
of the various microcode fields.
The Wang 700, 500, and 600-series machines all used this style of ROM,
so, in theory, the reader (other than hardware pinout variations and
subtle microcode field diffrences) should be able to be tweeked to read
the 500 or 600-series ROMs without too much work.
The main goal of this is to be able to capture the microcode images for
as many of the Wang calculators that use this type of ROM as possible,
as this technology is really unweildly to troubleshoot and repair (and I
have some ROMs that are known bad that I want to try to be able to fix),
and also because the genius of Harold Koplow (now deceased) is buried in
that microcode. I want to preserve as much of it as I can (and maybe
figure out how he made these machines do what they do) as a legacy to
him.
Rick Bensene
The Old Calculator Web Museum
http://oldcalculatormuseum.com