"We Programmed a 60s Computer" - Univac - 20 min video from TheScienceElf

Not far away, in VCF East 2026, anyone?:

Nice video! Over the course of a year maybe, two people (building on the work of others) write a Univac emulator, assembler, RISC-V emulator, build a serial interface to load their code onto the real hardware at InfoAge, and bring up a Basic interpreter, a pi program, and much more.

Also an in-browser emulator

Refs:

Previously, inspired by TheScienceElf:
Relay Power Pi Machine

1 Like

Interesting approach. Using a (relatively) modern solution to keep old systems going - after a fashion.

So rather than write (or re-write) compilers to output native code, write a virtual machine in native language then have compilers target that machine.

And if that virtual machine is something well established - such as RISC-V, then it’s a win - with the down-side of lack of ultimate speed, but the advantage of being able to run more modern code on the old system.

(And I know from my own experiences that writing a basic RISC-V 32IM emulator isn’t that hard, but it then opens up endless possibilities to enable the running of both modern and older codes.)

So this results is a potential new means to achieve a “lease of life” for older systems. Especially ones with different or challenging word widths - 18-bit registers and memory in this case which probably seemed like a good compromise at the time, but using it with todays modern C, etc. is a bit of a challenge. And while I’ve not looked at Univac architecture, emulating a 32-bit CPU in an 18-bit system is probably very do-able - I managed to create a 32-bi bytecode VM on a hybrid 16-bit CPU with 8-bit memory, so all do-able (and did-able!)

Of-course I’m sure there are some who’ll argue that this is cheating, I’m sure but there is an attraction and fascination for being able to run real code on older systems.

Not a new approach though - very similar to my own where I started with a poor old CPU that some would argue should never have been, too little, too late, etc. implemented a virtual machine that’s the target of a high level language compiler and off I went… It also allowed me to later port the high level code (compiler, OS, utilities, etc.) to more modern platforms without a recompile.

-Gordon

1 Like

A IBM1130 with 16 K RAM is what I consider a typical small computer of the 60’s.
It is just too small for C. B perhaps might fit.
A C (K&R) subset (32 bits) with no pointers but just array indexing may be a option for older machines
with disc of some sort for native code. Any one dare to use MAG TAPE?
I have a C like compiler at around 2000 lines of code, waiting for working hardware or emulator
(not IBM 1130).

.