BURP part 1

I have been enjoying reading a blog by Ken at Sustainable Suburbia recently, and one post in particular sparked me into action. Not because of its main topic (although that is thought-provoking, too) but because of the mention of an odd early programming language named “BURP” (Basic Using Reverse Polish).

Sufficiently intrigued by this idea, I read around a bit, and decided that I would have a go at producing a version of this. There’s not a wide range of information about the BURP language or system, but there are a few articles from “Wireless World” magazine in the late 1970s and early 1980s which describe the design of both the BURP language and the “Psi-Comp 80” home computer which used it. The key to the system seems to be the National Semiconductor MM57109 “Number-Oriented Processor” which did most of the mathematical work, alongside a more familiar Zilog Z80, so I have started by getting to grips with this quirky co-processor.

Fell free to follow along with the development on GitHub.


  1. Frank,

    I had a quick scan of your git repository – and see that you have already made a good start on a C simulator of the operation of the MM57109 – which I suspect was a spin-off of a calculator chip.

    RPN and calculators sounds a lot like the HP series of calculators that Engineers favoured in the 1970s. Somewhere there will be someone who knows all about the inner workings of these simple RPN machines.

    Could it be alikened to a very cut-down Forth – with the sole purpose of performing mathematical calculations. Looking at you MM57109 simulator code – it looks very similar to my SIMPL interpreter – another much cut down simplified Forth like process.

    Good luck with your developments – I shall be following closely


  2. Frank,

    Byte Magazine August 1978 pages 64-74 had an article on running this MM57109 processor on an 8080.

    This may have been the inspiration of JH Adams Z80 design


    Very Big File!

    There is also an application note AN-186 from National Semiconductor – but it seems to have been mixed up with one for a switching regulator. So far I have not been able to track down the real AN-186.

    Looking at the instruction format of this IC, it’s virtually what you would get if you encoded up an 8×8 calculator keypad array – with a shift key that generates the inverse function.

    I suspect that the output data in BCD format would directly drive a calculator display segment driver too.

    There must be dozens of wonderful chips from that era – that have sadly slipped into obscurity.


  3. “This may have been the inspiration of JH Adams Z80 design”

    The Scientfic Computer prototype was designed and completed in 1977.

    After a PSU failure 250v AC was applied to the prototype’s +5v DC line. Ouch!

    A rebuild gave the opportunity to switch from an 8080 to the Z80.

    Wireless World’s editor agonised for a LONG time as to whether the magazine should sully its reputation with this sort of populist, digital, project. Hence the publication date of Spring 1979.

    It is astonishing to think that a school-teacher’s salary could fork out for memory which, allowing for inflation and using modern concepts of RAM and ROM size required, were, 10 million GBP per Gigabyte and 75,000 GBP per Megabyte, respectively.

Leave a Reply

Your email address will not be published. Required fields are marked *