CSIRAC - The First Australian Digital Computer


CSIRAC on display in the Scienceworks Museum ( image courtesy Museums Victoria )

Being a British Computer Software Engineer means I was brought up to believe that we were first to develop the digital computer. The Americans claim ENIAC was first, but I always think of that as a glorified desk calculator, and of course Colossus beat that, but no-one knew about that until the 1970s. It too was not a real stored-program digital computer, though it came pretty close.

I was quite surprised, therefore, to discover that although it didn't come online until 1949, that the Australians had been a pretty close second with CSIRAC. This gets a brief mention in some Computer History books and papers, but is relatively unknown to most Brits. Having worked on replicas of both the Manchester Baby (which later evolved into the Manchester Mark 1 and then the Ferranti Mark 1), and the Cambridge EDSAC which have impeccable claims to be first to run a stored program (Manchester) and first to provide a computer service (Cambridge), I was intrigued when I started to look at how CSIRAC compared with these.

First operated in 1949, CSIRAC, or originally CSIR Mark 1, was the result of Trevor Pearcey, who emigrated to Australia in 1945 to work for CSIRO (Commonwealth Scientific and Industrial Research Organisation) on Radio Propagation research. He envisaged a machine that would ease the calculations that were involved in his research work, and persuaded the management to allow him to construct such a machine.

The machine architecture is intriguing; as with EDSAC and the NPL ACE, the main storage units were mercury delay lines. Pearcey decided that his calculations were not as demanding as some and that a 20-bit word length would be adequate for most things. This would give 6 significant decimal digits, and for extreme cases he could resort to double length working, slower, but still better than a desk calculator.

In 1956 the machine was donated to the University of Melbourne, where it provided a computer service until 1964. It is now on display in Melbourne's Victoria Museum.

I only became really aware of it when I heard a CCS talk on CSIRAC. Digging through back issues of Resurrection I only found one other article on it, which further intrigued me. I then did a search for a CSIRAC Emulator, and found one written around 2000, and written for Windows 98! The download did include a Word document which is a programming guide for CSIRAC. This appears to have been reconstructed from an original manual from around 1960. This gave details of the architecture, including the instruction set, paper tape codes, and examples of coding.

This further prompted me to consider writing an emulator in Java, which would be more portable. As a confirmed Linux user, I contacted people in Australia, and found them enthusiastic about my hopes of writing such an emulator. I was give a huge archive of material, which included source code for the W98 emulator and several variants thereof.

I have completed the emulator and is available for download. I have been unable so far to provide an online version - Java has withdrawn the Applet facility which I had used in the past, and now encourage the use of WebStart, but I have not been able to work out how to set that up! As a downloadable, stand-alone application my emulator seems to be usable on a variety of systems, I have only used it on Linux, but it has worked on Windows and Mac OSX.

If you are interested in more details, the following pages may be useful:

Bill Purvis, April 2021