Reconstructing Some Source of Microsoft BASIC for 8080

Microsoft BASIC for 6502 exists digitally in source form – the older version of the Intel 8080 CPU only exists on paper though: as a printout in the archives of Harvard University. Some snippets of the code are public though:

  • Ian Griffiths held the printout in his hands and took notes. He copied down several lines from the first page.
  • In Harry Lewis’s blog post, he shows a picture of some lines of the reproduction that is display on the the wall of the ground floor lounge of the Maxwell Dworkin building at Harvard.
  • David J. Malan has a collection of photos of the Maxwell Dworkin reproductions online.

The Computer History Museum in Mountain View, California has a video on display in the software section that tells the story of the company Microsoft. In this video, they show the first page of 8080 BASIC:


Together with the other two sources, we can reconstruct the start of the first page:

00100	MCSSIM(STARI)
00120
00140	TITLE	BASIC MCS 8080	GATES/ALLEN/DAVIDOFF
00160	IFNDEF	LENGTH,<PRINTX !!! MUST HAVE COM !!
00180		END>
00200	IF1;<
00220	IFE	LENGTH,<PRINTX /SMALL/ >
00240	IFE	LENGTH-1;<PRINTX /MEDIUM/ >
00260	IFE	LENGTH-2;<PRINTX /BIG/ >
00280	IFE	STRING,<PRINTX /NO $$/ >
00300	IFN	STRING,<PRINTX /$$ $$/ >
00320	>
00340	SUBTTL	VERSION 1.1 -- MORE FEATURES TO COME
00360	COMMENT *
00380
00400	-------------------------------------------
00420	COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN
00440	-------------------------------------------
00460
00480
00500	WRITTEN ORIGINALLY ON THE PDP-10 AT HARVARD FROM
00520	FEBRUARY 9 TO APRIL 27
00540
00560	PAUL ALLEN WROTE THE NON-RUNTIME STUFF.
00580	BILL GATES WROTE THE RUNTIME STUFF.
00600	MONTE DAVIDOFF WROTE THE MATH PACKAGE.
00620
00640	THINGS TO DO:
00641	SYNTAX PROBLEMS (OR)
00642	NICE ERRORS
00643	ALLOW ^W AND ^C IN LIST COMMAND
00646	TAPE I/O
00648	BUFFER I/O
00650	USR ??
00652	ELSE
00660	USER-DEFINED FUNCTIONS(MULTI-ARG,MULTI-LINE,STRINGS)
00680	MAKE STACK BOUNDARY STUFF EXACT
	(FOUT 24 FIN 14)
	PUNCH, DELETE;,.
	INLINE CONSTANT CONVERSION -- MAKE IT WORK
	SIMPLE STRINGS

While this is nice, it would be much nicer to have more, maybe all of the original source.

Can someone take high resolution photos of the first eight pages on display on the the wall of the ground floor lounge of the Maxwell Dworkin building at Harvard?

Can someone make a copy of the printout at the Harvard University archives? Applications like Microsoft Office Lens can make high quality copies of printouts with a phone.

5 thoughts on “Reconstructing Some Source of Microsoft BASIC for 8080”

  1. Hehe,

    The second guy asking for information on progess. I read this a while ago and I’m very curios about more.

    I’m following your stuff since 3510 transistors in 60 minutes. I love it, makes me spend hours on it and teaches so much!

  2. What memories this brings back ! I once wanted to reverse Microsoft Basic 8080 just to see how it worked. Prior to that, in the mid 1970’s, I had done some programming on the old Northern Telecom Sycor 340 offline batch intelligent terminals. I think those used an 8080 but I was unable to decode the raw assembly language printouts – they would appear as long sequences of letters instead of hex, so no way to find, for example a hex “3A” which, if I recall, would be an 8080 LDA.

  3. doing some more searching: lms01.harvard.edu/F/M8M4DT1Q2YN8C363HXQV6C8HVQL7U4V7VYS3XMM5C2KA2H11UY-37240?func=find-b&find_code=kon&request=ocm77065001

    Restrictions : Photocopying restricted. No restriction on viewing. “Copyright 1975 by Bill Gates and Paul Allen.”

    Description : 1 program file + math package and description
    History notes : A printout of the Intel 8080 BASIC processor was discovered behind furniture in an office in Harvard University’s Aiken Computation Laboratory some time before 1980; Harry R. Lewis, Gordon McKay Professor of Computer Science, filed the printout and recalled its importance as the Maxwell-Dworkin computer laboratory was being completed; he had the material preserved and reproduced.
    Scope and content : This is the code, written in 8080 assembly language, for an interpreter (language processor) for the BASIC programming language. This is version 1.1 of what became Microsoft’s first product. Included is the original printout and a bound reproduction. Accompanying the bound reproduction is a letter from Harry R. Lewis.
    Spine title : LinkBound preservation copy: 8080 BASIC interpreter, April 1975
    Notes : “Copyright 1975 by Bill Gates and Paul Allen. Written originally on the PDP-10 at Harvard from February 9 to April 27. Paul Allen wrote the non-runtime stuff. Bill Gates wrote the runtime stuff. Monte Davidoff wrote the math package”–Lines 00500 to 00600.
    The bound reproduction was formerly classified as HUF 300.775.

    OCLC-nummer: 77065001 seems to be almost the same as 78729240, maybe a double entry?
    Top line from the citation directly from above URL, I gues if people went in to just look it was fine, but we need to take pictures secretly? or ask if a student could do so? (I was planning on a visit to Boston someday in the future, but for only taking these pictures and not being an american… you get the idea, maybe we should ask Bill nicely?

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.