« Back to Blog   

BASIC Ain’t Basic: Adapting Programs from One Vintage System to Another
April 30, 2020
By Heath R.

In an earlier blog post I discussed several of the historic versions of The Oregon Trail we have in our collection at Living Computers Museum + Labs. The earliest version we have is called OREGON and is available to play on our Xerox Sigma 9 mainframe. However, this version wasn’t originally written for the Sigma 9, it was written for a Control Data Corporation Cyber 73 mainframe computer. Since it was written in the BASIC programming language it is somewhat portable…

Since BASIC was so widely-used in the 70s and 80s, you can find BASIC interpreters for nearly every mainframe and minicomputer system of the 60s, 70s, and 80s. However, that does not mean that all these computers can share software. If only it were that simple!

Each implementation of BASIC is slightly different in the way that certain commands and functions are handled. When LCM Engineer Jeff Kaylin adapted OREGON to our Sigma 9, these subtle differences necessitated significant alterations to the original BASIC source in order to get the program to run correctly. Most of the changes involve different rules for symbols and syntax. For instance, some versions of BASIC allow you to condense multiple lines of code into one line using certain characters to indicate the break between lines. In some BASICs the symbol is a colon (:), some use a forward slash (\), and some don’t allow this functionality at all. The BASIC on the Sigma 9 uses an ampersand (&) for some reason…

Support for certain statements differs between BASICS as well. The original CDC Cyber 73 version of OREGON was written with several “ON X GOTO” statements. Statements like the following appear throughout the original source:
1000 ON X GOTO 1100, 1200, 1300, 1400
The Sigma 9 BASIC does not support “ON X GOTO” so Jeff had to rewrite this elegant single line as multiple lines:
1000 IF X = 1 THEN 1100
1001 IF X = 2 THEN 1200
1002 IF X = 3 THEN 1300
1003 IF X = 4 THEN 1400
Other modifications have a more noticeable impact on gameplay. One of the most popular parts of The Oregon Trail for many players is the hunting mini-game. More modern versions of the game allow the player to hunt deer, bison, and squirrels using graphics and animations and the mouse or keyboard to aim the shot. The original text-based game offers no such bells-and-whistles. When hunting in OREGON the game prompts the player to type either “BANG,” “BLAM,” “POW,” or “WHAM,” and hunting success or failure is dictated by how quickly and accurately the word is typed. In the original CDC Cyber 73 implementation, the game would make a system call for the time expressed as an integer of seconds after midnight, then prompt the player for the hunting keyword (BANG), then call for the time again and compare the two values. If the player took too long, the hunt would be unsuccessful. The Sigma 9 however, tracks system time in minutes after midnight rather than seconds. Whereas on the Cyber 73 a player would only have a few seconds to type the correct word, the Sigma 9 version provides a much more generous and leisurely hunting experience!

Currently Jeff is hard at work modifying OREGON to run on two of our other systems, the XKL TOAD-2 and the Data General Nova. Each of these systems has its own BASIC with its own quirks and peculiarities. The Nova BASIC doesn’t even support strings such as “BLAM” so Jeff has to rethink the hunting part of the game entirely!

Logon to our Xerox Sigma 9 and give OREGON a whirl! All you need is a web browser! Here are instructions to get you started:

1. Click the following link to open an SSH connection to our remote systems menu
2. Press the “enter” key to access our remote systems menu.
3. Type “c” and press “enter” to connect to our Sigma 9.
4. Login using our provided guest credentials: “LCM GUEST SIGMA9” (it will not “echo” on the screen as you type this)
5. Load the BASIC environment by typing “BASIC”
6. Load OREGON by typing, you guessed it, “OREGON”
7. Type “RUN” and press "enter” and you’re off to the races playing this historic game on actual restored vintage hardware! How cool is that!

For more info about Living Computers’ free online remote systems, check out our Remote Systems page.

Related Content:

[MS@45] Tour Trailer: Altair BASIC
[MS@45] The PDP-10, Macro-10, and Altair 8800 BASIC
Time-sharing in 12KW: Running TSS/8 On Real PDP-8 Hardware
About the Author
Heath R.
Museum Guide
Having worked as a freelance writer, entrepreneur, IT technician, documentary filmmaker, professional banjoist, and blimp test-pilot and engineer, Heath brings a wide breadth of experience to his role as a Museum Guide. Since 2017, you can catch him giving tours, developing public programming, and generally geeking-out at Living Computers.
About the Author
Heath R.
Museum Guide
Having worked as a freelance writer, entrepreneur, IT technician, documentary filmmaker, professional banjoist, and blimp test-pilot and engineer, Heath brings a wide breadth of experience to his role as a Museum Guide. Since 2017, you can catch him giving tours, developing public programming, and generally geeking-out at Living Computers.

Category Tags