
Warren Robinett’s BASIC Programming may be the oddest fit for the VCS out of any cartridge released on the platform – certainly it’s the oddest first party release. It’s not really a game in any sense of the word; rather, it’s a version of the BASIC computer language designed to run on the VCS. I’ll preface this by noting that I am not a programmer and haven’t really written any code since high school aside from type-in programs, but that degree of familiarity is what this cartridge expects out of its audience.

In the 1970s and early 80s, BASIC was really at its height of popularity. Originally created in 1964 as the Beginners’ All Purpose Symbolic Instruction Code, the computer language was the brainchild of John Kemeny and Thomas Kurtz, two members of the Dartmouth College Math Department. The two men had agreed there was a need for a usable computer language that people outside of technical fields could use, and after some failed experiments released their first version on May 1st, 1964 for the newly rolled out Dartmouth Time Sharing System. Due to its simplicity and relative ease of use compared to languages like Fortran – on which it was based – BASIC spread to computers such as DEC’s PDP line and Data General’s Nova. While most people during this time were programming in BASIC for serious work, some folks were making games. Kemeny himself wrote a football program, aptly named FTBALL, in 1965 simply for as a demonstration as computers as something that could be fun, and in subsequent years programmers developed other games for a variety of different flavors of BASIC, from lunar landing games to golf to artillery and those based on the TV show Star Trek. DEC staffer David Ahl published some of these in the company’s EDU newsletter before compiling those and others in his 101 BASIC Computer Games book, a source for numerous additional conversions of those games to other platforms, including a few VCS titles.
And sure enough, when microcomputers such as the Apple II and Atari’s own 400 and 800 started hitting stores, they included their own forms of BASIC for users to learn to code with. At the same time, however, home computers were incredibly expensive. For context a VCS could be had for around $130 in 1977 or 1978. If you wanted a prebuilt computer, a TRS-80 cost $400, a Commodore PET was close to $800, and an Apple II would set you back $1200 for the version with 4 kilobytes of memory. Spending power was stronger in that time period, but even the cheapest of those would be more than $1000 in modern US dollars. The US had pulled out of a deep recession by 1975 but was still going through a period of high inflation that would eventually lead into the 1980 recession. In short, not many people could afford these computers – certainly fewer than could afford a game console.

It was in this context that Atari management became interested in putting BASIC on the VCS. Robinett noted in his book – unpublished as of this writing but graciously provided to me by Robinett – that three things pushed the project ahead: the Apple II’s release with Applesoft BASIC, the desire for a new “educational” game to follow up from Hangman and Basic Math, and the creation and sale of the Atari VCS keypad controllers. Up to now, the only games that used those keypad controllers were the trio of 1978 releases Codebreaker, Hunt and Score and Brain Games, and marketing was very interested in having something else out there to pull people in to sell them. Using two keypads, a user could have 24 keys to work with – not an ideal amount for writing code, but enough to run a version of BASIC. There would be no way to save or load any programs, and given the paltry 128 bytes of memory in the console there isn’t much one could do with it, but for learning how a computer and coding works, this seemed workable. After learning that David Crane had put together a kernel that allowed for on-screen text, Robinett volunteered to take up the project while he stewed on how to develop Adventure from a simple feasibility demo into a full game.
Robinett said he had already been interested in computer languages and interpreters, having studied them at university. He considered this a real opportunity to learn how they worked under the hood first-hand, and get some experience working on one. And as he was the only VCS programmer he was aware of at the time with a masters degree in computer science, he seemed uniquely qualified to make the attempt. As such, his boss George Simcock gave him the go-ahead.

After getting Crane’s kernel set up properly, Robinett divided the screen up into different regions for different aspects of a program: the system status, the code itself, the stack, the output, the graphics. With the limited memory on the VCS, the program could only run about 8-10 lines of code, but Robinett noted this meant one could see the entire program on screen at once. Moreover, this meant he could set up the interpreter so that users can see the machine run through their code and visualize how each aspect worked. The program could visualize the “control point” as it flits through the program, a frame a second, to help show the program in action; Robinett said that generally this was something programmers had to visualize in their heads. But before he could progress with this idea further, Robinett had to get another layer of sign-off before it could come to fruition.
Robinett met with longtime Atari engineer Al Alcorn and Cyan Engineering’s Steve Mayer – Cyan being the semi-independent hardware skunkworks group that worked with Atari on a variety of projects, including the initial VCS prototype – for a design review and how feasible a programming interpreter it could be in the first place. Robinett said that they agreed with him that BASIC was the best choice, and after he described his reasoning of the program’s educational value for teaching kids the beginning steps of coding, they decided to back him on moving it forward. Mayer added some additional context to Robinett’s telling, and said that while there was a general agreement on a BASIC cart for the VCS, there was a debate on whether or not to write one internally or to use Microsoft’s BASIC, which he favored as it would free up Robinett to work on more unique projects, as well as having the marketing value of advertising Microsoft BASIC on the VCS. Robinett, and ultimately Sunnyvale, preferred doing developing a VCS BASIC interpreter in-house so that Atari wouldn’t be tied to Microsoft, but Mayer added that it was a robust debate that also came up regarding a BASIC interpreter for the Atari 8-bit computer line as development progressed on that hardware.
Another pair of senior members of Atari also wanted to review the project before letting it move ahead: Bob Brown, who led a special development group that eventually produced the Backgammon and Video Chess carts (among other things) and the general manager of the Consumer Division Ray Kassar, who would be appointed Atari president and CEO at the end of 1978. The two were skeptical, so Robinett showed them his prototype and explained his pitch again; when he didn’t hear a no, he said he took that as approval and kept working on BASIC Programming.

By the fall of 1978, Robinett had gotten a working BASIC interpreter going on the VCS, and finished the cartridge around the same time as Adventure in the spring of 1979 before leaving the company. He did include some sample programs that would be printed in the manual for a user to try out. In his pitch to Kassar and Brown, he explained some of the simple programs one could use the cartridge to make: creating a musical tone generator, displaying messages, running a single-player version of Pong. And sure enough, these were some of the programs he included. The company itself did indeed focus in on the educational aspects with their own advertising materials, as Robinett had proposed.
The instructions do a decent job of explaining how to operate the keypads, and the cart comes with a pair of overlays to attach to them to indicate what each button does. A central button on the left keypad will alternate the color of your cursor; each color corresponds to a type of command for each button. It’s an awkward, arduous system to type programs in, and it’s quite easy to lose track of what button does what. Overall though, it works okay as long as you’re in color – the black and white switch necessarily shifts the cursor to grayscale, and this is much harder to parse when the commands themselves are color coded on the overlays. The instructions don’t do a great job of explaining what each function necessarily does, but it has little sample code sprinkled throughout, seemingly with the thinking that you’d figure it out as you went along. Being able to control the speed step, as Robinett intended, does give you an opportunity to see what each line is doing to your code too – something very cool for a beginner programmer.
That said, I can’t stress enough that this is a very limited program. It’s easy to run out of visual room on your program listing and have to shuffle around turning the other windows on and off to see what you’re doing towards the end of a program. I had trouble in particular making the “key” function do anything – the manual suggests this reads inputs from the keypad, but in practice I couldn’t get it to work. Running little programs like a clock or a note generator or a simple display of two squares chasing each other is fine, but you’re not getting a whole lot more out of this cartridge.
Anecdotally, BASIC Programming doesn’t seem to have been a terribly popular cartridge. It’s a little uncommon in the aftermarket, and moreover, this is the first VCS Atari game that Sears did not sell under their Telegames line. That’s not to say Atari didn’t try, though–the game was bundled with Brain Games in 1982 for the “Back to School Pack,” with the thinking that these would challenge a kid’s mind, but I suspect also to sell additional stock of those two aging, niche carts and keypads. BASIC Programming did find a small second wind in the Atari Corporation years; between 1986 and 1990 their internal figure indicate that the company sold 14,164 new BASIC Programming carts.

On top of nebulous sales figures, the game’s release is hard to pin down. Atari initially announced that the game would begin shipping in July 1979, but then it simply vanishes from any ads that aren’t just running a stock photo of all of Atari’s game boxes. It gets mentioned in a Montreal Gazette column as an educational game in February 1980 and shows up earlier that month in a Vancouver Sun ad, but it isn’t until April that consistent newspaper ads, including some calling it a new release, start including it. If I had to speculate, the same production delays and chip shortages that hit 1979 releases like Video Chess may have forced Atari into some combination of pushing back what was always going to be a niche cartridge, releasing it regionally in Canada first, or only producing it in very small quantities for the 1979 Christmas season before ramping up in the new year. Without more information, it seems likeliest to have arriving at stores in April, with those early ads in Canada being based off of those 1979 announcements more than anything that was in stock.
In retrospect, Robinett said that Brown’s skepticism over running BASIC in 128 bytes of RAM may have been well-founded, particularly since computers such as the Apple II had 16k of memory or more. The cart also suffered for a lack of way to save and load programs, forcing users to recreate their programs every time. But more than anything, Robinett felt that using the keypads was the biggest stumbling block – it was laborious to use them, he said, when a joystick and a virtual keyboard would have been much easier to operate. When looking at the other two console programming carts that existed at the time BASIC Programming came out, Robinett’s critiques do end up carrying some weight.

The first home console with a BASIC interpreter was Bally’s Professional Arcade, all the way back in October 1978. The program is a conversion of Palo Alto Tiny BASIC, a variation designed in 1976 to run in very small spaces. The creator, Jamie Fenton, explained that she’d been asked to write a demonstration cartridge for the Arcade for the Consumer Electronics Show. Since she didn’t want to do it, she instead decided to see if she could get a BASIC interpreter running on the platform that would use its built-in 24-key keypad for user input. She succeeded, albeit too quickly and had to write the demo cart anyway. But her version of BASIC ended up being sold as a stopgap as Bally tried to work out the problems they had in the Professional Arcade production line to get a full computer add-on out the door. On its face, this version of BASIC features the same limited and mind-numbing keypad entry system as Robinett’s VCS version and has other limits: compared to retail games the animation is slower and the choice of colors much more limited. Given the additional memory of the Arcade even while running BASIC, however, programs could be reasonably sizable. What’s more, the layout of the key functions and characters is much more intuitive on this platform, and the manual explains your BASIC commands and what they do in thorough detail. The biggest advantage of Bally’s cart was the cassette interface, however. By plugging this separate add-on into the light pen jack on the back on the console and one of the controller ports, users could save and load their programs using a standard cassette tape and player at an eye-watering 300 baud speed. It was slow, but it got the job done, and over time an entire enthusiast scene built up around using BASIC. Over time these programs even included machine language routines, thanks to Fenton sharing some undocumented features through enthusiast newsletters. These “bedroom coders” shared and sold indie art programs, music programs and games, through code listings in these newsletters and in some cases, sold on tapes by mail or in stores. BASIC was a popular enough addition to the Professional Arcade that three more versions were published: an update with the cassette interface built into the cart, and two “expanded memory BASIC” variants that could recognize and use independently sold memory expansions without jumping through weird hoops like on the original BASIC cart; these were based off of an updated BASIC interpreter program Fenton (known as Extended BASIC) wrote in response to enthusiast requests, sold in mid-1981, and eventually forked off to individually support the Perkins Engineering Blue RAM expansions and the Alternative Engineering Viper-1 computer expansion, respectively. As a result of all this, BASIC is an integral part of the system’s identity and legacy. Without that cassette interface and the relative flexibility of the original Bally BASIC, the machine would likely have been just as limited as the VCS cart. Now this all said, the Bally Professional Arcade debuted for $300, so it was vastly more expensive than the VCS. It turns out all that flexibility came at a real financial cost.

On the flip side is the Odyssey2 Computer Intro cart, released in 1979. Like Atari’s cart, there is no way to save or load a program, but Computer Intro is able to use the full Odyssey2 keyboard to enter programs. And unlike either the Bally or Atari releases, Computer Intro forgoes BASIC entirely to teach its users how to program in either hexadecimal or assembly. The cart includes a few built-in programs that users can load up and then spend time modifying according to the instructions in the 102-page manual, or they can work on writing their own code from the ground up. Much like the Bally BASIC manual, the instruction book is incredibly thorough and quite good at breaking down what each step means to the computer and to your program. It’s an ambitious educational program for a time when few people could have afforded a full computer, and even allows for around 100 lines – still resulting in small programs, but certainly this is more space to work with than Atari’s BASIC Programming. But this makes it all the more egregious that the cartridge has no way to save or load programs. The effort here in educating users in hex and assembler is admirable – the cart is just missing that final component to be something truly special for the time.
Interestingly, third party Computer Magic would sell their MagiCard assembly language programming interface for the VCS in 1981, and not only would this use the keypads, but they included designs on how to build a cassette interface for saving and loading programs through a controller port. So the VCS is capable of such tech – it was just not a consideration here.

That said, Atari did have plans to make the VCS a better venue for programming. In 1982 the company was approached by Peripheral Visions Incorporated about making a keyboard expansion for the VCS –utilizing another 8 kilobytes of memory for the machine to actually work within. This expansion, dubbed the Graduate, was of interest to Atari, and the company even circulated a pricing list for the hardware. But PVI fell victim to Atari’s continued demands to produce something that could extend the life of the platform and allow it to compete with other machines like the Intellivision and ColecoVision. It was finally canceled in 1983, though at least one prototype unit exists.
These early attempts to bring programming languages to home game systems seem like a poor fit in retrospect, but given the idea behind BASIC Programming was to introduce kids and other users to the world of computers in a way that they may not have been able to afford otherwise, I have a hard time considering it necessarily bad so much as a strange curio of a different time. It’s awkward to use and incredibly limited, but it’s a fascinating glimpse into a world where the VCS may be the only exposure a user may have to this kind of technology, and a nice little peak behind the curtain of how a computer – including the VCS – works.
Sources:
BASIC FTBALL And Computer Programming for All, Annette Vee, digitalhumanities.org
Making the Dragon, Warren Robinett, 2018, unpublished manuscript (and thanks to Warren for sharing it with me!)
Jamie Fenton, interview with the author, Dec. 2 2020
Steve Mayer, correspondence with the author, May 15 2025
Ballyalley.com
Atari History Timelines, Michael Current, mcurrent.name
Atari’s Cyan Engineering: Splendor in the Grass, 1982
Merchandising, June 1979
Birth of BASIC, Mike Murray and Dan Rockmore, Dartmouth, 2014
Release Date sources:
BASIC Programming, April 1980: Source: New York Daily News, April 25 1980; Boston Globe, April 27 1980; The Herald, April 17 1980; Vancouver Sun, February 9 1980; Washington Post, June 6 1980
Computer Intro!, August 1979: Source: Source: Merchandising, June 1979; Sandusky Sunday Register, August 16 1980; Akron Beacon Journal, September 13 1979
Bally BASIC, October 1978: Source: Arcadians, October 10 1978
Bally Extended BASIC, July 1981: Source: Arcadian, April 15 1981; Basic Express, July/August 1981
Blue RAM BASIC (4k version), November 1981: Source: Arcadian, November 10 1981
Blue RAM BASIC (8k Extended RAM version), May 1982: Source: Arcadian, May 7 1982
Vipersoft BASIC,October 1982: Source: Arcadian, Oct. 7 1982
MagiCard, May 1981: Source: Byte, May 1981; Micro, June 1981; Creative Computing, August 1981