Manchester Baby

The Manchester Baby - which is a nickname, the official name either being Small-Scale Experimental Machine, Manchester Mark 1 Prototype, or Manchester Automatic Digital Machine - is the first computer that stored its program in electronic memory. It was created in 1948, by three engineers; Frederic C. Williams, Tom Kilburn, and Geoff Tootill, at the University of Manchester.

It was built as a way to test a new type of electronic storage. The Williams-Kilburn Tube, or sometimes just a Williams Tube, is essentially a modified CRT screen that is controlled by its own output, similar in concept to the delay-line memory used in the Pilot ACE. The Williams-Kilburn Tube would eventually become the first electronic random-access memory – as a CRT can handle many distinct points simultaneously, while a delay-line circuit can only process one signal at a time.

The Baby could execute programs at up to 700 instructions per second - but in practice usually around 100. Compare this to the later Pilot ACE’s 1,000,000 instructions per second, and the ZEBRA’s 3,200.

It had eight instructions:
     jump, relative jump, load & negate, store, subtract, jump if negative, halt

Emulators for the Manchester Baby

Lee Wittenberg created an emulator for MS-DOS (a 16 bit operating system), which is made available to the general public by the Computer Conservation Society, source code available here.

 

He made a similar version for Windows, which functions to this day, available at the same link above.

 

However, the original is written in Aztec C for MS-DOS, so requires an emulator such as DOSBox to run on modern systems.

 

The emulator is used by moving the "cursor" around the grid of dots representing the computer's memory tubes using the arrow keys. Space will flip the bit under the cursor, and enter will run the program.

 

Running the emulator with the -d flag (typing "madm.exe -d" into a Command Prompt set to the folder containing the executable) will load the earliest known program for the Baby into memory, shown visually below.

Some simple fixes to the source code allow the original bitmapped source to work in text mode on a terminal in a modern operating system:

 

 

The source code for the updated version is available here, with the changes made for compatibility available here. Full technical explanation of these changes is available in section 4.1.1.1 of Early British Computers and their Emulation:

The fixed version can be downloaded here: