Another interesting user interface for programming the PROM would be to use telephone dial disks for the address and data.
You could have regular 10-number dials for the addresses and modified disks with only 0 to 7 for octal data, to ease use of binary relays.
The relays have a flag that shows the bits, but we could also have a nice octal display with Nixie tubes showing current address and data for the memory interface. If the opcodes and operands are 3 bit wide, one could easily program the assembly code by hand.
Relays could also be used as the nonvolatile memory, like a eeprom, using Bistable Relays.
Bistable relays have two coils, one for placing it in the NO position, and another to place it in the NC position. You can have a double pole dual throw (2 reversible contacts) that can even be used to form complex logic with memory, for state machines that survive a power-on/power-off cycle.
With bistable relays, we can have a cabinet with a NVRAM, or a cabinet with a PROM that could even be used as self-modifying code.
For your memory bank, a really neat approach could be magnetics. Each "byte" would be a row of steel pegs, with a "row" coil, addressing the whole group. Then the sense coil would be driven by pegs pushed in, or not driven by pegs not pushed in. If you wanted to avoid sense amplifiers, small reed switches would work quite well. Not quite the old-time effect, but definitely not current.
One other choice would be punched cards, like the late 1950s Hickok brand tube checkers. Remember them?
"Great minds think alike,: as they say ... I already purchased a Bakelite and Copper beauty from eBay
Of course, they also say "Fools seldom differ," but I know they (whoever "they" are) aren't talking about us :-)
It might not be as practicle but if you are using switches you should use one of those hugh knife switches. The kind Dr. Frankenstein throws to bring the monster to life. Ok, that might make the cabinet too big but you should at least use it to turn the power on.
You were lucky! We dreamed of having ones that could be heated enough to be bent over -- our ones were the old Mark 4 versions that were too brittle and fell apart at the drop of a hat (not that anyone I knew could afford a hat, you understand, but we heard tales that people wore them in the big city...)
RAM can be made from latching relays, one bit each. A RAM cabinet - nice project for someone with a lot of time on their hands. :-))
When I was a kid I remember a museum display of a Strowger exchange compared to a modern (at the time) transistorized exchange. They were interactive, one could dial telephones and watch/hear the Strowger stepping relays do their stuff. The modern exchange had a small replica switchboard with a Nixie counter, when a random light came on the human had to quickly plug a cable into the associated jack while the counter smugly declared how many thousands of connections the transistors could have done in the same time as the human response.
The Strowger was a lot more fun to watch. And for the uninitiated, a telephone dial was a metal disc with 10 holes in it near the circumference and a mechanical finger stop. To dial a single digit one placed the index finger in the appropriate hole and rotated the disc clockwise to the finger stop, then removed the finger and let the spring-loaded disc return to it's home position, allowing the associated cam-operated contacts to open/close the same number of times as the associated digit. It was possible in a phone booth to jiggle the hang-up hook up and down with the required number of pulses, thus bypassing the need to first insert the dime.
In college the ham radio club members had keys to the roof for antenna maintenance. It was fun to take a side trip into the elevator control room and watch all those relays click-clacking and sparking away.
Since Bytes were not invented until the mid 1960's,how about using octal and 6 bit BCD coding for characters? Of course Teletype/Start-Stop for communication lines is almost mandatory. Also it seems like the ladder logic (PLD's?) is a good analog for relay logic. ... using octal arithmetic could lead to the world's first 3 bit computer.
Another thing about relay logic is that series contacts do an 'and' while parallel does the "or".
Maybe tin cans and string could be used for clock distribution.
A Book For All Reasons Bernard Cole1 Comment Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...