Intellivision Development, Back-In-The-Day
Total Page:16
File Type:pdf, Size:1020Kb
Intellivision Development, Back-In-The-Day Intellivision Development, Back-In-The-Day Page 1 of 46 Intellivision Development, Back-In-The-Day Contents 1 Introduction ................................................................................................................................ 3 2 Overall Process ........................................................................................................................... 4 3 APh Technological Consulting ..................................................................................................... 5 3.1 Host Hardware and Operating System ................................................................................ 5 3.2 Development Tools ............................................................................................................. 6 3.3 Test Harnesses ..................................................................................................................... 8 3.4 Tight Finances .................................................................................................................... 16 4 Mattel Electronics ..................................................................................................................... 17 4.1 Host Hardware and Operating System .............................................................................. 17 4.2 Development Tools ........................................................................................................... 18 4.3 Test Harnesses ................................................................................................................... 23 4.4 EPROM and T-Cards........................................................................................................... 32 4.5 Documentation .................................................................................................................. 36 4.6 Tight Code .......................................................................................................................... 36 4.7 Use of High-Level Languages ............................................................................................. 37 4.8 Minkoff Measure ............................................................................................................... 37 4.9 Reverse Engineering .......................................................................................................... 38 5 Third Party Development .......................................................................................................... 39 5.1 Activision / Cheshire Engineering ...................................................................................... 39 5.2 Atari ................................................................................................................................... 39 5.3 Imagic ................................................................................................................................ 39 5.4 INTV ................................................................................................................................... 40 5.5 Technology Associates ...................................................................................................... 40 6 References ................................................................................................................................ 44 6.1 Intellivisionaries Podcasts ................................................................................................. 44 6.2 Video Interviews ................................................................................................................ 45 6.3 Audio Interviews ................................................................................................................ 46 Page 2 of 46 Intellivision Development, Back-In-The-Day 1 Introduction This document is an attempt to collate information about the tools and techniques that were used to develop software and games for the Mattel Intellivision in the 1970s and 1980s. It is largely based on contemporary documentation and the recollections of developers of the time. Clearly, a description constructed nearly 40 years after the event will never be comprehensive and, as it is based in part on individuals’ memories, it may be inaccurate or contradictory in places. A large number of developer interviews are recorded and published in the excellent Intellivisionaries Podcast (thanks to Paul, Rick and William). A list of episodes and timecodes where development tools or methods are discussed can be found in the references at the end of this document. Additional details obtained from videos of panel discussions at retro gaming exhibitions are also referenced. Finally, a number of documents from the Blue Sky Ranger archive have been made available as part of research into Intellivision history by two UCI Irvine academics. This version of the document includes information from Intellivisionaries up to episode 38 and comments from the equivalent Atari Age thread up to June 2020. If you have further information, corrections or insights that should be included in this document, please contact “decle” at the Atari Age forums. The inspiration for creating this document was an image of Patrick Aubry working on Intellivision Fireman at Nice Ideas in 1984, shown in Figure 1. In the picture, Patrick appears to be using a CIT-101 terminal, a DEC VT100 clone, presumably to write some code on a remote machine. On the shelf behind him a “Blue Whale” Intellivision Keyboard Component / Master Component combination is being used to test the current state of the game on a portable television. Figure 1: Patrick Aubry Working on Intellivision Fireman at Nice Ideas So, what do we know about how these and other tools were used to develop the games we have enjoyed for the last 40 years? Page 3 of 46 Intellivision Development, Back-In-The-Day 2 Overall Process Perhaps the most succinct description of early development work comes from Keith Robinson and is to be found on page 5 of issue one of Retro magazine: "For Keith Robinson: Can you describe the computer system (hardware, compilers, etc.) that you used to develop the Intellivision console games? - William McEvoy Keith responded: The first Intellivision games, developed for Mattel by APh (an outside consulting firm) in Pasadena, were done on PDP-11s. There were eight PDP-11s (TSX-1, TSX-2, etc.) on the programming floor, each supporting about three to five programmers. Each programmer had an Intellivision console and a television in his or her cubicle, plus a dumb terminal (VT100 compatibles) connected to the Andromedas. Programming was in the assembly language of the General Instruments CP1610 microprocessor, the heart of the Intellivision. This code was compiled and linked by software custom written by APh. The object code was then downloaded into a custom piece of hardware (also designed by APh) called a Magus board. The Magus board was mostly memory, connected by a parallel cable to the programmer's Intellivision in place of a cartridge. In this way, within a minute or two of completing a new bit of code, the programmer could compile it, link it, then download it to the Intellivision to see the results on the TV." This description tallies with much of the setup seen in the picture of Patrick. Development was fundamentally a two-phase process. Software was written in CP-1610 assembler on a shared machine, typically described as a DEC PDP-11. These shared machines were accessed with terminals, like the one Patrick is using. The source code was cross-assembled to CP-1610 machine code on the PDP-11 and the resulting object code downloaded to an Intellivision for evaluation using a test harness. In Intellivisionaries episode 31 Mark Urbaniec suggests that a typical code, compile, download and test development cycle would take about 15 minutes, with only the first few minutes being spent amending source code. This broad setup and process is confirmed by numerous Mattel and APh developers, and also seems to have been the fundamental way of working at third party software houses. The following sections examine development at each of the main developers. Page 4 of 46 Intellivision Development, Back-In-The-Day 3 APh Technological Consulting The initial development of Intellivision software, including the construction of the EXEC and the first tranche of games, was undertaken by APh Technological Consulting in Pasadena. APh continued to work creating Intellivision games under contract to Mattel up until the console was cancelled in 1984. 3.1 Host Hardware and Operating System APh appear to have used a mixture of PDP-11 minicomputers and at least one DECSYSTEM-20 mainframe as the hosts for their development. According to David Rolfe and John Sohl [V2], [V5], [A2] APh used a DECSYSTEM-20 mainframe, also known as a PDP-20. This machine stored the developer’s assembly code and the tools required to construct, assemble and test it. David describes the system as running TOPS-10, the PDP-10 operating system. This was possible as the PDP-20 had essentially the same hardware as the earlier PDP-10. In contrast to these recollections in Intellivisionaries episode 10 Tom Loughry, and later in episode 17 Kimo Yap, refer to the host they used at APh as being a PDP-11. Kimo further clarifies this on AtariAge, describing the host as having an LSI-11 CPU and running RT-11. At the CGE 2K4 panel [A1] Peter Kaminsky named the development host he used while developing Frog Bog as being a