This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Bally Astrocade" – news ·newspapers ·books ·scholar ·JSTOR(May 2018) (Learn how and when to remove this message) |
| Also known as | Bally Professional Arcade (1978–81) Bally Computer System (1981–82) |
|---|---|
| Manufacturer | Bally Manufacturing Astrovision |
| Type | Home video game console |
| Generation | Second generation |
| Released | April 1978 |
| Introductory price | US$299 (equivalent to $1,590 in 2025) |
| Discontinued | 1983 (1983) |
| CPU | Zilog Z80 clocked at 1.789MHz |
| Memory | 4KB–64 KB (with external modules)RAM 8 KBROM |
| Removable storage | ROM cartridge |
| Graphics | 160×102 or 320×204 in 4/8 colors |
| Sound | 3 ×oscillators withnoise mixing and hardware globalvibrato |
TheBally Astrocade (also known asBally Arcade and initially asBally ABA-1000)[1] is asecond-generationhome video game console and simple computer system designed by a team atMidway, at that time thevideo game division ofBally.
It was originally announced as the "Bally Home Library Computer" in October 1977 and made available for mail order in December 1977. Due to production delays, the units were first released to stores in April 1978 and its branding changed to "Bally Professional Arcade". It was marketed only for a limited time before Bally decided to exit the market. The rights were later picked up by a third-party company, who re-released it and sold it until around 1984.
The Astrocade is particularly notable for its very powerful graphics capabilities for the time of release,[citation needed] and for the difficulty in accessing those capabilities.
In the late 1970s, Midway contractedDave Nutting Associates to design a video display chip that could be used in all of their videogame systems, from standuparcade games, to ahome computer system. The system Nutting delivered was used in most of Midway's classic arcade games of the era, includingGorf andWizard of Wor. Thechipset supported what was at that time relatively high resolution of 320×204 in four colours perline, although to access this mode required memory that could be accessed at a faster rate than the common 2 MHzdynamic RAM of the era.
Originally referred to as theBally Home Library Computer, it was released in 1977 but available only throughmail order. Delays in the production meant none of the units actually shipped until 1978, and by this time the machine had been renamed theBally Professional Arcade. In this form it sold mostly at computer stores and had little retail exposure, unlike the widely availableAtari VCS. In 1979, Bally grew less interested in the arcade market and decided to sell off their Consumer Products Division, including development and production of the game console.
At about the same time, a third-party group had been unsuccessfully attempting to bring their own console design to market as theAstrovision.[2] A corporate buyer fromMontgomery Ward who was in charge of the Bally system put the two groups in contact, and a deal was eventually arranged. In 1981, they re-released the unit with the BASIC cartridge included for free, this time known as theBally Computer System, with the name changing again in 1982 toAstrocade. It sold under this name until thevideo game crash of 1983, and then disappeared around 1985.
Midway had long been planning to release an expansion system for the unit, known as theZGRASS-100. The system was being developed by a group of computer artists at theUniversity of Illinois at Chicago known as the'Circle Graphics Habitat', along with programmers at Nutting. Midway felt that such a system, in an external box, would make the Astrocade more interesting to the market. However it was still not ready for release when Bally sold off the division. A small handful may have been produced as theZGRASS-32 after the machine was re-released by Astrovision.
The ZGRASS system, combined into a single box, would eventually be released as theDatamax UV-1. Originally aimed at the home computer market while it was being designed, the UV-1 was re-targeted as a system for outputting high-quality graphics tovideotape. These were offered for sale some time between 1980 and 1982, but it is unknown how many were built.

The basic system was powered by aZilog Z80 driving the display chip with aRAM buffer in between the two. The display chip had two modes, a low-resolution mode at 160 × 102, and a high-resolution mode at 320 × 204, both with 2-bits per pixel for four colors. The higher resolution mode was beyond the capabilities of common RAM of the era, which could not read out the data fast enough to keep up with the TV display. To address this, the system usedpage mode addressing allowing them to read one "line" at a time at higher speed into a buffer inside the display chip. The line could then be read out to the screen at a more leisurely rate, while also interfering less with the CPU, which was also trying to use the same memory.
On the Astrocade the pins needed to use this "trick" were not connected. Thus the Astrocade system was left with just the lower resolution 160 × 102 mode. In this mode the system used up 160 × 102 × 2 bits = 4080 bytes of memory to hold the screen. Since the machine had only 4kiB (4096 bytes) of RAM, this left very little room for program functions such as keeping score and game options. The rest of the program would have to be placed inROM.
The Astrocade used colorregisters, orcolor indirection, so the four colors could be picked from a palette of 256 colors. Color animation was possible by changing the values of the registers, and using ahorizontal blank interrupt they could be changed from line to line. An additional set of four color registers could be "swapped in" at any point along the line, allowing the creation of two screen "halves", split vertically. Originally intended to allow creation of a score area on the side of the screen, programmers also used this feature to emulate 8 color modes.
Unlike the VCS, the Astrocade did not include hardwaresprite support. It did, however, include ablitter-like system and software to drive it. Memory above 0x4000 was dedicated to the display, and memory below that to the ROM. If a program wrote to the ROM space (normally impossible, it is "read only") the video chip would take the data, apply a function to it, and then copy the result into the corresponding location in the RAM. Which function to use was stored in a register in the display chip, and included common instructions likeXOR andbit-shift. This allowed the Astrocade to support any number of sprite-like objects independent of hardware, with the downside that it was up to the software to re-draw them when they moved.
The Astrocade was one of the early cartridge-based systems, using cartridges known asVideocades that were designed to be as close in size and shape as possible to acassette tape. The unit also included twogames built into the ROM,Gunfight andCheckmate, along with the simple but useful Calculator and a "doodle" program called Scribbling. Most cartridges included two games, and when they were inserted the machine would reset and display a menu starting with the programs on the cartridge and then listing the four built-in programs.
The Astrocade featured a relatively complex input device incorporating several types of control mechanisms: thecontroller was shaped as a pistol-style grip with trigger switch on the front; a small 4-switch/8-wayjoystick was placed on top of the grip, and the shaft of the joystick connected to apotentiometer, meaning that the stick could be rotated to double as apaddle controller.
On the front of the unit was a 24-key "hex-pad" keyboard used for selecting games and options as well as operating the calculator. On the back were a number of ports, including connectors for power, the controllers, and an expansion port. One oddity was that the top rear of the unit was empty, and could be opened to store up to 15 cartridges. The system's ability to be upgraded from avideo game console topersonal computer along with its library of nearly 30 games in 1982 are some reasons that made it more versatile than its main competitors, and was listed byJeff Rovin as one of the seven major video game suppliers.[3]
The Astrocade also included aBASIC programming language cartridge, written byJamie Fenton, which was an expanded version ofLi-Chen Wang'sPalo Alto Tiny BASIC.[4] First published as Bally BASIC in 1978.
Developing aBASIC interpreter on the system was difficult, because the display alone used up almost all the available RAM. The solution to this problem was to store the BASIC program code in the video RAM.
This was accomplished by interleaving everybit of the program along with the display itself; BASIC used all the even-numbered bits, and the display used the odd-numbered bits. Theinterpreter would read out two bytes, drop all the odd-numbered bits, and assemble the results into a singlebyte of code. This was rendered invisible by setting two of the colors to be the same as the other two, such that colors01 and11 would be the same (white), so the presence, or lack, of a bit for BASIC had no effect on the screen. Additional memory was scavenged by using fewer lines vertically, only 88 instead of the full 102. This managed to squeeze out 1760 bytes of RAM for BASIC programs. The downside was that most of the graphics system's power was unavailable.
Programs were entered via the calculator keypad, with a plastic overlay displaying letters, symbols, and BASIC keywords. These were selected through a set of 4 colored shift keys. For example; typing "WORD"(gold) shift then the "+" key would result inGOTO.
A simple line editor was supported. After typing the line number corresponding to an existing program, each press of the PAUSE key would load the next character from memory.[4]: 16
An Astro BASIC program that later became commercialized isArtillery Duel. John Perkins wrote the game first and submitted it toThe Arcadianfanzine, from which it was adapted for the Astro BASIC manual.[4]: 95 Perkins subsequently developed the Astrocade cartridge of the game.
Astro BASIC supported the following keywords:[4]: 108-114
LIST,RUN,STOP,TRACEPRINT,INPUTGOTO,GOSUB,RETURN,IF (but noTHEN and noELSE),FOR-TO-STEP/NEXTBOX,CLEAR,LINE:PRINT,:INPUT,:LIST,:RUNABS(),CALL(),JX() (specified joystick's horizontal position),JY() (joystick vertical position),KN() (knob status),PX(X,Y) (pixel on or off),RND(),TR() (trigger status)KP (key press),RM (remainder of last division),SZ (memory size),XY (last LINE position)SM= (scroll mode),TV= (display ASCII character)BC (background color),CXCY (cursor position),FC (foreground color),NT (note time),A period. at the start of the line was equivalent toREM in other BASIC implementations. Certain commands were handled by the keypad instead of by keywords: the RESET button was equivalent toNEW in other interpreters.
The language supported 26 integer variablesA toZ, and two pre-definedarrays,@() - which was stored starting after the program, ascending - and*() - which was stored from the top of memory, descending. The language lacked aDIM statement for dimensioning the arrays, the size of which was determined by available memory (SZ) not used by the program listing (2 bytes per item). Ports were accessed via the array&(), and memory was accessed via the array%(), rather than usingPEEK and POKE. While the language lacked strings,KP would provide theASCII value of a key press, which could be output toTV, meaning that characters could be read in from the keyboard, stored in an array, and then output.
The character display was 11 lines of 26 characters across. The resolution for the graphic commands is 88x160, with X ranging from -80 to 79 and Y ranging from -44 to 43.
Music could be produced in four ways:[4]: 40,114
PRINT command, as a side effect, produced a unique tone for each character or keyword displayed.MU variable converted numbers into notes.MO (master oscillator),NM (Noise Mode),NV (Noise Volume),TA (Tone A),TB (Tone B),TC (Tone C),VA (Voice A volume),VB (Voice B volume),VC (Voice C volume),VF (Vibrato Frequency),VR (VibRato). (Added to Astro BASIC but not in Bally BASIC.)The following sample program from the manual demonstrates the joystick input and graphics functions. "Try your skill... The first player's knob moves the phaser left or right and the trigger shoots... Player two controls the target while player one shoots."[4]: 72
1 .PHASER PHUN 2 .BY DICK AINSWORTH 10X=RND(60)-3120Y=RND(20)30 CLEAR 40 X=X+JX(2)×3 50 Y=Y+JY(2)×3 60 BOX X,Y,4,4,3 70 K=KN(1)÷2 80 BOX K,-40,3,8,1 90IFTR(1)=0GOTO30100 N=1110IFK>X-3IFK<X+3N=15120FORA=1TON130 BOX K,0,1,80,3140 MU="4"150 BC=A×8160NEXTA170 FC=7180 BC=8190GOTO10
This listing illustrates how keywords, which were tokenized, were always displayed with a following space.
The ZGRASS unit sat under the Astrocade and turned it into a "real" computer, including a full keyboard, a mathco-processor (FPU), 32k of RAM, and a new 32k ROM containing theGRASS programming language (sometimes referred to asGRAFIX on this machine).[5] The unit also added I/O ports for a cassette andfloppy disk, allowing it to be used withCP/M.
Games magazine includedBally Professional Astrocade in their "Top 100 Games of 1981", noting that "Our favorite cartridges are the classic Gunfight, Red Baron air war, and Demolition Derby."[6]
Danny Goodman ofCreative Computing Video & Arcade Games stated in 1983 that Astrocade "has one of the best graphics and sound packages of any home video game".[7]

There are41 officially released video games for the system, alongside two cartridges for game development. Many of the games came bundled together on multiple cartridges.
| Title | Genre | Original release |
|---|---|---|
| 280 Zzzap[i] | Racing | 1978 |
| Acey-Deucey[ii] | Cards | 1978 |
| Amazing Maze[iii] | Maze | 1978 |
| Artillery Duel | Shooter | 1982 |
| Bally Pin | Pinball | 1981 |
| Bingo Math[iv] | Edutainment | 1978 |
| Biorhythm | Other | 1981 |
| Blackjack[ii] | Cards | 1978 |
| Brickyard[v] | Action | 1979 |
| Checkmate[vi] | Snake | 1977 |
| Clowns[v] | Action | 1979 |
| Cosmic Raiders | Shooter | 1982 |
| Crosswords[vii] | Puzzle | 1981 |
| Demolition Derby[viii] | Racing | 1978 |
| Dodgem[i] | Racing | 1978 |
| Dog Patch | Shooter | 1978 |
| Football | Sports | 1978 |
| Galaxian[ix] | Shoot 'em up | 1981 |
| Grand Prix[viii] | Racing | 1978 |
| Gun Fight[vi] | Action | 1977 |
| Handball[x] | Sports | 1978 |
| Hockey[x] | Sports | 1978 |
| Letter Match[vii] | Edutainment | 1981 |
| Missile[xi] | Shooter | 1978 |
| Ms. CandyMan | Maze | 1983 |
| Panzer Attack[xii] | Shooter | 1978 |
| Pirates Chase | Action | 1981 |
| Poker[ii] | Cards | 1978 |
| Red Baron[xii] | Shooter | 1978 |
| Sea Devil | Shooter | 1983 |
| Seawolf[xi] | Shooter | 1978 |
| Solar Conqueror | Shooter | 1981 |
| Space Fortress | Shooter | 1981 |
| Space Invaders[xiii] | Shoot 'em up | 1979 |
| Speed Math[iv] | Edutainment | 1978 |
| Spell ‘n Score[vii] | Edutainment | 1981 |
| Star Battle | Shooter | 1978 |
| Tennis[x] | Sports | 1978 |
| The Incredible Wizard | Maze | 1981 |
| Tic Tac Toe[iii] | Puzzle | 1978 |
| Tornado Baseball[x] | Sports | 1978 |