Do you have a question? Post it now! No Registration Necessary. Now with pictures!
- Posted on
- The 2N2/256 bit-serial computer project
- Bobby Nansel
December 20, 2007, 3:40 am
rate this thread
lines of an LGP-30, a Bendix G-15, or a Packard Bell PB-250.
To keep costs down and keep it interesting, I want to use only
components available to mortals in the mid sixties (no ICs). I'm
limiting my madness to discrete transistors, specifically the 2N2222.
I'm further limiting the number of transistors semi-arbitrarily to
(The 2N2/256 name is a nod to ham homebrewer Jim Kortge (K8IQY) who
designed a QRP rig called the 2N2/40 for a design contest about ten
years ago. The contest objective was to design and build a functional
amateur radio transceiver, using a maximum of 22, 2N2222 type
transistors. My challenge is to build a complete functional computer,
including memory, using no more than 256 2N2222-ish transistors.)
Of course there will be a pile of si diodes, resistors and capacitors
involved, but the idea is to keep the number of active components down
-- if only so this beast will fit in the boot of my car! Toward that
end, I am building everything to fit in a few 35mm cube modules.
I've scavenged the web for information on bit-serial magnetic drum
machines of the Elder Years, and I think I have a pretty good notion
of how they worked (mostly very slowly). What I haven't been able to
get a handle on is how to make a serviceable magnetic drum. I reckon
I can do some simple prototyping with some CMOS 64-bit shift registers
to emulate the drum so I don't have to debug both the logic and the
magnetic read/write electronics at the same time.
After asking lots of questions on the classiccmp.org talk list I've
determined that using a 14" disk & spindle from an old "washing
machine" disk drive might be the best route (much less precision
machine work needed). The separate read and write heads are fixed
(not flying), one pair per track, so zero seek time, only disk
rotational latency. Magnetostrictive ultrasonic delay lines are also
Re: The 2N2/256 bit-serial computer project
One tip I remember is that when the program branches, the branch addresses
on drum should be on different tracks and carefully positioned to reduce
latency - which was high.
That way, you only have to switch heads to start reading the branched code.
(of course, it needed re-optimising each time you patched the code!)
Also, a few extra registers were dedicated (like RAM) to hold persistent data
to avoid the time penalty of a drum write/read - your transistor count may
preclude that luxury, however.
I remember a disk drive of around that era with fixed pairs of heads; that one
was mounted vertically for some reason, with the heads mounted spiral pattern in
the cast housing. I also recall that it seemed to crash about once a month...