When a vintage computer is all but unobtanium, software emulation is often all that remains. Unless you are [Michael Gardi], who saw an opportunity to reproduce Canada’s home-grown MCM/70 microcomputer using a combination of software emulation and modern hardware.
Short of building a brand new MCM/70 from the original schematics, this faithful facsimile of the MCM/70 does everything it can to pay homage to the original machine. The foundations of this project can be attributed to the York University Computer Museum (YUCoM) MCM/70E emulator, highly regarded for its “historical accuracy”. The MCM/70 used dual cassette tapes for storage and a funky 32-character dot matrix plasma display, which is all reproduced in software (other versions dropped one of the cassette drives for a modem, bleeding edge innovation for 1974 microcomputing).
From here, [Michael] set off to assemble the various physical components of the original computer. The chassis itself was built from scratch using a mixture of 3D printing and traditional woodwork. The high-voltage plasma display was recreated using four HCMS-2972 dot matrix modules, which minor compromises. The original computer used display memory as extra storage when executing instructions, which created a sporadic blinkenlights effect on the original display. This new display unfortunately won’t reproduce this ‘thinking’ pattern, but it’s a small sacrifice.
Similarly, the original keyboard was going to be challenging to replicate with 100% accuracy, so a brand-new recreation of an Ohio Scientific computer keyboard was used instead. The layouts are extremely similar, and anyone except your most committed Canadian retro computing enthusiasts probably wouldn’t notice the difference. Being a modern recreation of a vintage keyboard, this was relatively easy to source. A set of custom-made keycaps with APL legends really helped sell the replica.
And while working dual cassette drives would have brought this project home, it’s commendable that [Michael] has created ‘working’ cassette drives using 3D printed cassettes and some magnetic magic using hall effect sensors to identify the loaded cassette. The emulator incorporates three virtual cassette tapes which made this solution possible.
If this all sounds familiar, it might be because this project was based on a superb Hackaday writeup of the MCM/70. A truly innovative computer for its time, the story behind Micro Computer Machines (not to be confused with the toy cars) is a fascinating tale, and the write-up is worth a read if you haven’t seen it already.
Texas Instruments had a similar terminal in the late 1970s. We used it to work with code to programming microprocessors. Left tale was input and was read into memory, We made edits. Then wrote source file out to Right tape. When it was time to compile, we fed the source file to paper tape and then paper tape into the development system for compilation.
This was soon upgraded to punched card media. And finally floppy disks. Good old days.
Upgraded to punched cards… First time I’ve ever heard that said:)
Late 1970s. We were probably 1 of 500–1000 engineers working on microprocessors back then. For part of one year, we were the largest buyer of the devices.
I used to develop firmware at Scintrex Ltd in Concord Ontario starting in 1978. I also used a TI Silent 700 terminal with a keyboard, 2 cassette tape drives and a thermal printer!
I don’t remember any OSI keyboards that weren’t black. My Superboard II has a black one, and a quick search shows black.
It was a one piece unit. So cheap to make. As I recall something similar could be bought from the stores back then.
I’ll pass that on to Dave (https://github.com/osiweb/unified_retro_keyboard) who makes the retro keyboard that I used. I’m sure it would be just as easy for him to order black PCBs as green.
Early Challenger 2P and even some Challenger 1P machines did have gray keys. I think they bought whatever the manufacturer had in stock to save money. But later on the keyboards were consistently black. I had (still have) a Challenger 2P with gray keys.
I standardized on gray keys for the keyboard project because:
1) Gray is correct (if not the most common) for OSI
2) Gray is correct for the Sol-20 and many other keyboards as well
3) Gray looks good on the Apple II even if not quite correct
4) Gray was popular at the time and looks good on many machines, even those usually sporting black keys
5) getting all one color allows a price break on larger quantities, to facilitate group buys.
However, I did prepare spreadsheets with all the specs for the keycaps, with the intention that anyone wanting something more specific can get keys made to their preference.
With Mike’s permission, I hope to add his keymaps and keycap specs to the project as well, for anyone wanting to make an MCM/70 keyboard.
Dave
Wow. I complete misunderstood the question. Thanks for following up Dave. Being part of the Unified Retro Keyboard project would be an honor.
The fake cassettes aren’t as satisfying as you may think.
Replacing them may be logical if the machine had a practical use only.
As a house automation system, a plant watering machine, an alarm system, a datalogger etc.
However, once your main goal is interaction and nostalgia, a real cassette system is a must have.
Or whatever was in use originally.
Believe me, hearing and seeing the tape, the motors and gears move is part of the experience.
Sure, as an exhibition piece a fake cassette is fine, too.
But once you’re in front of the machine, you can’t fool yourself by such an imitation.
Your subconscious is expecting the real thing, otherwise you can’t get away with the vague feeling that something is fishy.
It’s as if you’re watching a childhood cartoon without sound, but with sub titles.
It’s just not complete.
That’s the same reason why certain people want to keep CRT monitors. Or old TVs and RF modulators. Not all of them keep them because of the image quality.
To some, it simply is part of the experience to see the static on the TV screen or the vanishing picture when switching them off (white line, the bright center dot)..
If possible, some people would love to see modern simulations of those effects ro make the experience complete.
However, these simulations have to be believable, otherwise the sub conscious won’t accept them.
Please don’t get me wrong, I do appreciate all the love for the detail and the awesome craftsmanship. The result is very good. Kudos!
What I said previously was merely meant in conjunction with the user experience.
The idea if identifying different cassettes is really clever, imho.
You are so right, especially on this machine!!! It used the MFE-210 tape drive which was a direct drive cassette. It had 2 motors, one for each spindle. It would power 1 motor to pull the tape and put a resistor load on the other motor to provide the resistance to cause tension in the tape. The tape was split up into 1,000 blocks of 128 bytes and was read/written to in a random access manner. I have a video showing this drive seeking back and forth to random blocks. It’s a lot of fun to watch it go 4x speed to the block, then slow down to read the block. It would be a hard thing to make today, not impossible, but definitely worth it!
I don’t disagree with the Joshuas. A working cassette would have been awesome. Even if it was just randomly moving the tape with no actual data. I was actually looking at getting a couple of these: https://www.aliexpress.com/campaign/wow/gcp/ae/channel/ae/accelerate/tupr?spm=a2g0o.detail.100003.1.55365541mnJIIW&wh_weex=true&_immersiveMode=true&wx_navbar_hidden=true&wx_navbar_transparent=true&ignoreNavigationBar=true&wx_statusbar_hidden=true&wh_pid=superbrandday/poco
Having said that the added complexity of doing so just felt like too much given the many other challenges I faced. But I wanted my reproduction to have as much of the capability of the software emulator as possible, and one thing the software emulator could do is mount one of three “virtual” tapes and eject them as well. See (https://hackaday.io/project/184646-mcm70-reproduction/log/215320-a-physical-interface-for-virtual-tapes) for details on how I accomplished this. So the “fake” cassettes ended up being useful but maybe not completely satisfying. Maybe a V2 somewhere down the road.
I should say that I am having a great time working my way through the MCM/70 User’s Manual and learning APL.
I don’t disagree with this. Having working cassettes even if they just moved the tape randomly would have been awesome. However there were many other challenges in this project and I didn’t have the bandwidth to tackle it. I did think about it though :-).
The fake cassettes do have a practical purpose though, allowing the user to mount “virtual” tapes by just placing the appropriate cassettes into the “drive”. See (https://hackaday.io/project/184646-mcm70-reproduction/log/215320-a-physical-interface-for-virtual-tapes) for details.
I should say that I am having a great time now working through the MCM/70 User’s Manual and learning APL in much the same way as a new owner would have back in 1975.
Bit of repeated material here. My first reply didn’t get posted right away :-(
This computer was deliciously explained in a book by Professor Zbigniew Stachniak called Inventing the PC: The MCM/70 Story. The book brings you back to the way life was in the early 70’s and details all the events around this computer which was ahead of it’s time.
I have read Zbigniew’s book and like you found it fascinating. I have met him and seen his collection of rare period computers at the York University Computer Museum. “Ziggy” was a great help throught this build and is looking forward to seeing the finished result.
Mike, this is a stunning reproduction. I can’t wait to leverage your work to make my own!
Dave