Saturday, August 27, 2011

Fun with Emulation #2 - Running a DECSystem-10 on Ubuntu Linux

I can honestly say that the 36-bit DEC-10 was the machine that took me from "gee whiz, this is keen!" to actual coding/hacking. If one could schmooze a faculty member into signing the authorization form, students could get access to the DECSystem-10 (#1059) at the University of Louisville at a screaming 1200 baud.  I fell in with a group of similarly minded folks who were happy to share their knowledge, and that was that.  Within a week or so, I was writing my first assembler code; to this day, the early PDP instruction set is THE most intuitive, mnenomic assembler I've ever used.  I wrote my own (condensed) version of SYSTAT, played ADVENT (considered the first text-based adventure game, inspiration for PC Zork) and DECWAR (one of the greatest of the early computer games), and dove deep into machine internals for the first time.  I still remember the night we hacked the controller on one of the university's high-capacity copiers with a paperclip (this was 1981, remember) and spent 4 hours pirating the DEC-10 Monitor Calls Manual and Hardware Reference Manual.

In my current exploration of the emulation universe, I ran across SIMH, which emulates dozens of old minicomputer and mainframe systems.  I was delighted to learn that the PDP-10 is among them, and that ready-to-run images of TOPS-10 7.03 exist.  The build under Ubuntu Linux was near-trivial, and bringing TOPS-10 up went smoothly as well.  The result?

It may not be as visually impressive as are some emulators (notably Hercules Studio, about which I've already written), but it was incredibly satisfying to be working with MACRO-10 once more.  The TOPS-10 image I loaded supports COBOL, FORTRAN, BLISS-36, ALGOL and (of course) assembler, so my next project will be building DECWAR 1.2 from source.  In these days of IDEs, visual editors and code management systems of all types, there's something...GOOD about plain old text-mode coding.

If you want to join in my wave of digital nostalgia, you can find emulators and TOPS-10 images at the links below.

Next up: RSTS/E, or "Writing printer drivers in BASIC?!"

DEC PDP-10 Emulation
TOPS-10 pre-built image

No comments: