Reviving old computers
Doghouse – New/Old Computers
![](/var/linux_magazin/storage/images/issues/2022/255/maddog-s-doghouse/maddog.png/797870-1-eng-US/Maddog.png_medium.png)
Computer architectures from the 1960s and 1970s are given new life via modern kits.
The first computer I programmed (or saw in real life and not on TV) was one that used punched cards. It had a fairly primitive "Disk Monitor System" that would allow storage of programs and data on a very small (by today's standards) disk.
I do not remember much about the machine because computers were really not my interest at the time. I was studying to be an electrical engineer, and during the cooperative education part of my program at Drexel University (née Institute of Technology) I took a course in "How to Program the IBM 1130 in FORTRAN" just for fun. And it was fun. But so were electronics.
I went back to Drexel and found another computer in the electrical engineering labs. It was a Digital Equipment Corporation (DEC) PDP-8 computer, with 4,096 12-bit words of core memory. This computer was programmed through a terminal, the ASR-33 Teletype with a paper tape reader and punch. This was the machine I fell in love with, and I spent most of my waking hours (when I was not flunking out of electrical engineering [1]) programming it in assembly language.
The PDP-8 was so "easy" to program in assembly language because it had only eight basic instructions, and every one of those instructions was exactly 12 bits long. All of the addresses were also 12 bits long, as the PDP-8 was a "word" machine. We would read a 12-bit word from memory, and then shift it in a register to access the pieces we wanted.
I learned to program in assembly by reading a paperback book published by DEC and given to me by a salesman from DEC. I think the book probably cost about $5 in those days, but that was still a lot of money for a college student because it could otherwise buy 10 pitchers of beer.
After university my assembly language experience (and knowing how the actual hardware of the computer worked) would help me understand more and more about computers and help me get the jobs I wanted.
I am mentioning all of this as a backdrop to my recent purchase of some interesting old/new computers. Old because their architectures came from the 1960s and 1970s, and new because the machines that used to cost thousands of dollars and take up a room (with associated air conditioning and three-phase power needs) now can fit into an Altoids tin and run off AA batteries or power from a USB port. Some can utilize emulators and simulators on your GNU/Linux machines.
To go into great detail on all of them would be hard to do in this article, but I can give you pointers for the ones I find interesting, and you can go from there.
PiDP computers simulate DEC PDP-8 (PiDP-8) [2] and PDP-11 (PiDP-11) [3] computers, complete with the front panels of blinky lights and toggle switches, which allow you to stop the computer in mid-stride and examine and deposit data in various parts of "real memory." The project web pages point to the various software written for them decades ago as well as additional programs written more recently by die-hard fans who love programming for machines whose memories were measured in kilobytes rather than megabytes or gigabytes. They come in kit form so you have to be good at soldering, but I was able to solder the PiDP-11 together and have it work on the first try.
One of the interesting things about these kits is that they use a Raspberry Pi running a program called SIMH to host the other code. SIMH is free software that can simulate old computer systems such as the PDP-8 and PDP-11, as well as control the console lights and switches. It was started by an old friend of mine named Bob Supnik who used to be a vice president for DEC. SIMH is now maintained by a series of volunteers.
SIMH also has a lot of software for it [4]: old DEC operating systems and compilers (unfortunately only in binary), as well as early Unix systems – some with source code available.
Two other new/old systems are the 1802 Membership Card [5], which recreates the COSMAC ELF (RCA 1802) and the Z80 Membership Card [6].
These projects by Lee Hart allow you to investigate two very interesting microprocessors from the 1970s and an operating system called CP/M that ran on hundreds of thousands of systems at a time when Bill Gates could not even say the word "BASIC" [7].
The Z80 Membership Card even allows you to put massive (for that day) "disks" onto a single microSD card supplying the programs and data through your own laptop or desktop.
Infos
- It was not exactly electrical engineering that I was flunking. It was Fourier Analysis and LaPlace Transforms.
- PiDP-8: https://obsolescence.wixsite.com/obsolescence/pidp-8
- PiDP-11: https://obsolescence.wixsite.com/obsolescence/pidp-11
- SIMH software: http://simh.trailing-edge.com/software.html
- 1802 Membership Card: http://www.sunrise-ev.com/1802.htm
- Z80 Membership Card: http://www.sunrise-ev.com/z80.htm
- This is not true. Bill could say the word "BASIC."
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
![Learn More](https://www.linux-magazine.com/var/linux_magazin/storage/images/media/linux-magazine-eng-us/images/misc/learn-more/834592-1-eng-US/Learn-More_medium.png)
News
-
NVIDIA Released Driver for Upcoming NVIDIA 560 GPU for Linux
Not only has NVIDIA released the driver for its upcoming CPU series, it's the first release that defaults to using open-source GPU kernel modules.
-
OpenMandriva Lx 24.07 Released
If you’re into rolling release Linux distributions, OpenMandriva ROME has a new snapshot with a new kernel.
-
Kernel 6.10 Available for General Usage
Linus Torvalds has released the 6.10 kernel and it includes significant performance increases for Intel Core hybrid systems and more.
-
TUXEDO Computers Releases InfinityBook Pro 14 Gen9 Laptop
Sporting either AMD or Intel CPUs, the TUXEDO InfinityBook Pro 14 is an extremely compact, lightweight, sturdy powerhouse.
-
Google Extends Support for Linux Kernels Used for Android
Because the LTS Linux kernel releases are so important to Android, Google has decided to extend the support period beyond that offered by the kernel development team.
-
Linux Mint 22 Stable Delayed
If you're anxious about getting your hands on the stable release of Linux Mint 22, it looks as if you're going to have to wait a bit longer.
-
Nitrux 3.5.1 Available for Install
The latest version of the immutable, systemd-free distribution includes an updated kernel and NVIDIA driver.
-
Debian 12.6 Released with Plenty of Bug Fixes and Updates
The sixth update to Debian "Bookworm" is all about security mitigations and making adjustments for some "serious problems."
-
Canonical Offers 12-Year LTS for Open Source Docker Images
Canonical is expanding its LTS offering to reach beyond the DEB packages with a new distro-less Docker image.
-
Plasma Desktop 6.1 Released with Several Enhancements
If you're a fan of Plasma Desktop, you should be excited about this new point release.