THE BALLY/ASTROCADE FAQ
Plain Text Format
By Adam Trionfo and Lance F. Squire
May 14, 2008
i) Heat Warning
ii) About This FAQ
1) What is a Bally/Astrocade
2) System Specifications
3) Computer expansion
- 64K Memory Expansion
- Blue Ram
- Z-Grass Computer Expansion
4) Hardware & add-ons List
- Hardware (Confirmed)
- Hardware (Not Released or Unconfirmed)
5) Four Built-in Programs
6) Astrocade Cartridges
- Overview of the Cartridges
- Released Cartridges
- Independent Cartridges
- Cartridge Prototypes
- Cartridge Rumors
7) Astrocade Multicart
8) BASIC Games
9) Connecting to a monitor
10) Joystick Rewiring (Bally/Atari)
11) On BASIC
- Overview of the BASIC Cartridges
- 1.8K available of 4K RAM
- Basic Kaypad Overlay
- Astro Basic Memory Map
12) Astrocade Maintenance/Repair
- General Astrocade Repair
- AC Adapter Repair
- Bally Astrocade Repair Procedures #1
- How to Repair Bent and Broken Legs on Computer Chips
- Identifying the Bally/Astrocade On-Board ROM
- Notes on removing cartridge labels
- Notes regarding cart case repairs
- Notes on getting dead carts to work
- Restoring the Astrocade's Gold Trimming
13) MESS Emulation
14) Publications of Note
15) Sources of Bally/Astrocade Hardware, Software and Information
A) Astro Basic Command Listing
C) What needs to be added or updated
i) Prefix - Heat Warning
"IMPORTANT - Do not block vents by operating this unit on a carpeted surface.
Heat build up may result in component failure."
This warning appears on the cover of the "Bally Professional Arcade Owner's
Manual." I am including it here not just because Astrovision thought it was
important (they added the warning in 1981), but because it IS important, and
the information needs to be heeded. Don't take this warning lightly.
Replacing the small cushion feet on the Astrocade with larger cushion feet from
RadioShack (Cat. No. 64-2342) will add some extra ventilation as will setting
the console on an open box. Alternately the console may be set at an angle or
set on blocks. In 1981 the Cursor Group offered a service that added custom
built heat sinks to some of the problem prone chips on the Astrocade
motherboard. I don't know if that is needed, but certainly, at the very least,
avoid blocking the vents.
If the console starts acting erratically or the picture suddenly become Black
and White, turn the console OFF immediately to allow the console to cool. The
parts that are prone to failure from overheating are the voltage regulator,
custom IC chip, or the capacitor.
The component failure warning was not taken lightly in 1981 and certainly
should NOT be taken lightly today. However, don't be afraid to use your
Astrocade! Many of the heat build-up problems were lessened or eliminated over
the course of the Astrocade's production run. Though all units are somewhat
prone to this problem, it is the early units that are much more apt to fail
because of it.
Finally, instructions for removal of the RF shielding are included in the
"Bally Service Manual" (in the "Astrocade Repair" section of this FAQ). The
Cursor Group would have liked to recommend to people to remove the RF shielding
(that nearly eliminates all potential overheating problems) but they could not
say this because it might cause possible RF interference.
ii) Prefix - About this FAQ
The Bally/Astrocade FAQ is maintained by Adam Trionfo (email@example.com)
and Rob Mitchell (firstname.lastname@example.org).
Version 3.2 of this FAQ updated on June 3, 2003
This text FAQ was originally created by Lance F. Squire on June 3, 1995 and was
last updated by him on November 24, 1996. Lance no longer maintains a text
version of this FAQ, he has an html version that is quite different from this
document. These two FAQs supplement each other- read them both for a full
understanding of the Bally Astrocade.
The latest version of this FAQ can always be found at one of these three
places: www.ballyalley.com or www.classicgaming.com/ballyalley or
1) What is a Bally/Astrocade
A short history
In 1978 Bally/Midway introduced a home video game system called the "Bally
Professional Arcade." Due to "stiff competition" they withdrew the system in
1980. A group of users who had enjoyed the system's games and learned its
potential through the BASIC Programming Cartridge got together and bought the
system from Bally. They re-introduced it in about 1981(?) as the "Bally
Computer System". When you purchased this system they gave you a BASIC
Programming Cart free.
The new company's name was Astrovision. In about 1982 it changed its name to
Astrocade and now labeled its system as the Astrocade. The system continued
till about 1985(?).
2) System Specifications
Resolution: True 160x102 / Basic 160x88 / Expanded RAM 320x204
Colors: True 8* / Basic 2
Graphic type: Bitmap, 2 plane bitpacked
Speed: 1.789 MHz
Cart ROM: 8K
Expansion: 64K total
Sound: 3 Voice + Noise & Vibrato
Ports: 4 Controller, 1 Expansion, 1 Light pen
* The bitmap structure of the Bally actually only allows for 4 color settings.
However, through the use of 2 color palettes and a left/right boundary
control byte you could have the left section of screen (lets call this the
play field) use 1 set of colors while the right side (Info field) used an
entirely different set of colors
All versions of the system are physically the same except for the name plate.
The Astrocade console (not the Bally release) has small changes in the internal
BIOS to display the longer name on the built-in menu screen. This causes some
third-party games to malfunction.
Usually seen in black with wood grain sides & gold trim there is a beige/white
version. The case measures 15" wide, 10 3/4" deep and 4 3/4" high. Under a
smoke colored lid that covered the back half of the unit is the built-in cart
storage bin with slots for 15 carts. The front half features a 24 key
calculator pad (where overlays went when used), a reset button and a spring
loaded cartridge port, labeled "Insert Cassette", with "Eject" button.
Diagram: Top view
R/F cable+ | 5 1 2 6 4 3 7
||| 8 |||
||\ ======9====== / ||
|| |-------------------------------------------------| ||
|| | ___________________________ | ||
|| | |.... | _________________ | | ||
|| | |.... | | | | | ||
|| | |.... | | | | | ||
|| | |.... | |_______________| | | ||
3/4 S->|| | |.... | __ _____ | | ||
||| |.... | R- Eject | | ||
||| --------------------------- | ||
1,2,3 & 4. Controller ports 1,2,3 & 4 respectively
5. On/Off switch
6. Expansion port break out panel
7. Light pen port break out panel
8. Smoked storage bay cover
9. Name plate
S. Channel select switch
R. Reset button
The Bally's cartridges (or Videocades) do not protrude from the port. Instead
they lay flat. The cartridges are designed like audio cassettes, being the
same width, height, and thickness.
Where the write-protect tabs for an audio cassette would be are two openings
for the Eject button to hold on to. Where the tape in an audio cassette is
exposed, there is an opening where the pins in the Bally's "Cassette" port
press against the single sided board in the cartridge.
To load a cart into the unit, you slide the open end in over a spring loaded
guide then press down until the Eject spikes latch into the holes. You then
press Reset to see the new selections on the menu. Unlike other systems carts
load WITH the power ON!
All Bally/Astrocades feature an on-screen menu system that displays the 4
built-in programs (2 games, calculator and doodle program) plus any games on
the inserted cartridge.
The Bally's Controllers are unique. They consist of a large pistol grip,
appropriately contoured and knurled, a trigger (NOT a button), and a badge on
both sides with the BALLY label. A brown knob on top functioned as both a
paddle and an extremely short throw joystick. On the top of the knob is a gold
plate with controller number 1-4. On the Astrocade the Bally logo was removed
but the badge spots are still there.
The Bally controller does have a major weak spot. The wire to the trigger
usually falls off because it's extremely difficult to get the trigger spring
contacts hot enough to bond with the solder.
3) Computer expansion
3.a) 64K Memory Expansion
R&L Enterprises. Expansion board sold with NO ram on it, but all the
necessary hardware support. Available in late 1981, but was not advertised
until November of 1982. It sold for $219.95 (with 4K RAM) and the price
declined as time progressed. The final "rock bottom" price appeared in January
1984: $80.00 (with no memory included). Due to lack of sales and support the
unit went out of production near the end of 1984 (and R&L folded). Use of Blue
Ram Basic or Hot Rod Bally Basic Recommended.
Dale, of R&L, has this to say about the memory expansion:
"The brief history of our 64K RAM board product began in 1979 while I was
employed by Midway Mfg. The company, a division of Bally, offered its
employees a discount on the purchase price of the Home Video game system, I
couldn't resist. After fiddling with the Bally Basic (Rusty is still a
professional Basic developer) for a while we decided this system would probably
draw a significant hobbyist following. We felt the need to develop a solution
to the 1800 byte RAM limitation. First we lobbied the memory manufactures to
produce a device that would share the pin configuration of the 27xx series
EPROMs (now the JEDEC standard). In early 1981 we received some samples of the
2016 2Kx8 RAM, and immediately began layout of a board that could be placed
under the Bally unit and expand the memory space to 64K. With these new RAMs
one could develop a program in the RAM then clone it to EPROM, either device
could be plugged into the same board. In 1982 we learned about the fickle
nature of the hobbyist market, at our local Bally Users Group, users were more
interested in copying the latest games than in purchasing a development aid.
When we learned of the Blue Ram we slashed our price and advertised in the
Arcadian newsletter. Sales didn't warrant further investment in this project."
In addition to the above, I (Adam) sent an email to Dale asking about the
memory expansion and a keyboard interface after reading the Bally FAQ. I
received a response back in June and August of 1996. Following is a composite
of those two emails:
"For the Bally/Astrocade we are releasing in 3rd quarter of 1996 an add on
board that provides up to 64 k of user configurable RAM, EPROM, and EEPROM, an
input for inexpensive readily available keyboard, an output for Centronics type
printer and two serial ports for connecting to a modem or another computer. We
hope to bundle this with Hot-Rod Bally BASIC.
"Hopefully the PS/2 keyboard input will relieve your masochism. We are
planning on bundling 32K of RAM installed and perhaps 8K of EEPROM. Although
we are well into the 3rd quarter we still haven't set a price. As soon as we
do we will notify everyone that has requested info."
3.b) Blue Ram
Perkins Engineering. (Kit or assembled) Ram expansion. The Blue Ram plugs
into the 50-pin connector on the back of the Astrocade and expands the
programming capabilities of the Astrocade. Originally released in June, 1980 as
a 4K unit. Over the next couple of years the memory capacity increased, so
several different versions exist (4K, 8K, 16K and a small handful of 32K
versions). Several confirmed accessories for this unit were released,
including: keyboard, printer interface, modem interface, EPROM burner and BSR
controller. The Blue Ram could be switched into a mode that simulated a
cartridge; several of the third-party game cartridges were programmed using
this unit and either the Machine Language Manager cartridge or the Blue Ram
Utility. For reference: The Blue Ram RAM expansion unit uses an Atari power
supply model 008229. It is rated at 6 VDC and 500 MA.
3.c) Z-Grass Computer Expansion
Alternative Engineering Corp., contracted to create the Z-Grass add-under,
decided it was in everyone's best interest to release the unit themselves. In
August 198?(5) they sent an order form to anyone who had ever shown interest in
such a device on the Arcadian mailing list. The units were then to be made on
an on order basis. The manual was offered for people to determine if they
actually wanted the system. If any units were produced they were surely in
extremely limited quantities. Although probably only those who ordered the
unit itself know for sure, this hardware was very likely never produced.
4) Hardware & Add-ons List
For more complete information on hardware, see the separate FAQ called, "Bally-
Astrocade Game Cartridge and Hardware FAQ." With permission, it has the same
information that was published in the DIGITAL PRESS COLLECTOR'S GUIDE (Seventh
4.a) Hardware (Confirmed)
Sold as a pack of two and labeled 3 & 4 on top
RGB Electronics 2K 1981.
AKA Bally Check, Bally-Check, BalCheck. About two-hundred BallyChecks were
sold, but none have surfaced yet. The hardware attached to the 50-pin connector
on the back of the Astrocade. A 2K EPROM contained the "Home Video Game Burn-In
Tester" software. Two versions of the software exist, one for the Bally
Professional Arcade with the "3164" (original) ROM, the other version is for
the "3159" (Astrocade) ROM. Bally may have used an earlier device to test
assembled units with at the factory (this unit may be the same or similar- it
could have the software on a cartridge instead of on the unit).
BASIC Audio Cassette Interface
Bally Mfg. Corp., part #AC1-0100. Used to connect a cassette recorder to
the Bally Arcade for saving and loading programs to cassette tape (it plugs
into the light-pen port and joystick port number three).
Color Organ / Light Show
L&M Software. From ad: "Interface Bally to any stereo amp with audio
power 1 watt on up. TV displays in step with your stereo music." Sold for
$29.95 with opto isolation and a Demo tape (later sold for $39.95 with
Released by Hoover Anderson Research and Design (H.A.R.D.). This is a
"Speech Recognition System for the Computer Hobbyist." This kit consisted of a
microphone, sensitivity controller and cassette with several demo programs.
Connects to your Astrocade via control port number four. On April 25, 2002,
Craig Anderson (the designer) says, "I built and sold approximately 80 of them
over a period of two years. It was rather primitive compared to today's speech-
recognition technology but then again, the problems of speech recognition are
still with us [goes on to list some examples]. The concept of the "Ear" was
simple: A transistor pre-amp drove an LED in a homemade optoisolator whose
output was a cadmium sulfide cell. That connected to the rheostat pins on a
Bally game port and gave an amplitude-modulated waveform that varied for
different spoken words. The program then compared that waveform against others
in its memory (2000 bytes!) and picked the best match."
This was the dealers display cabinet, intended for small shops and large
department stores. Made by the Santa Cruz Wire and Mfg. Co., this kiosk stood
over five feet tall and resembled a coin-op cabinet. It came wired for 110
volts for use with the Astrocade and a TV (not included with the unit). There
was a cartridge selector inside for up to ten game cartridges to be
demonstrated (with a time limit); a "10 key" switch selected which cartridge
I.C.B.M. Attack Controller
Spectre Systems. Special analog controller made for use with "I.C.B.M.
Attack." The game can not be played without it.
Multi-Cart Demo Unit
Bally Mfg. Corp. POP-CT0100
Allows input of eight game cartridges and offers the option to switch and play
any of them or automatically cycle through them. Used by dealers for demo
Viper System 1
Viper Systems. Released in April, 1981. A memory expansion module for the
Astrocade that consisted of a 16K RAM expansion and a custom-written version of
BASIC on tape. Also available was a 62 key full-stroke keyboard. Other
announced peripherals included an expansion module to add an additional 16K of
RAM, an RS-232 Interface and an EPROM Programmer card.
4.b) Hardware (Not Released or Unconfirmed)
H.A.R.D. The Computer eye is "a light pen peripheral that mounts on the
front slope of the pistol grip hand controller... turning it into an amazing
light gun." On April 28, 2002, Craig Anderson (the designer) says, "It was
never released although a prototype was built and demonstrated at an MBUG
exhibition in Michigan in 1980 or '81. I used an optodetector from Honeywell
that was about the size of a transistor and had a built-in lens and amplifier
circuitry actually contained in the detector. I wasn't great at machine-
language programming in those days so my demo software was written in
BallyBasic and was fine on the vertical scan (duh) but too laggy on the
horizontal and I asked Brett Bilbrey, who was a child prodigy genius teenaged
hacker guru then (and who we all figured to be the Bill Gates or Steve Wozniak
of the 20th century even though nobody had yet even heard of those guys) for
some help. He was besieged from all sides by dozens of others asking for help
and the project quietly died." Designed by Craig Anderson (Sourcebook, Spring
83, Pg. G-11)
Comes with Creative Crayon Cart.
Alternative Engineering. 16K or 32K Computer add under.
Zgrass-32 Computer Keyboard
Bally Mfg. Corp. Part #G7000
Viper Z-Grass System
Complete computer add under. Features:
64K Ram, 32K ROM, keyboard, 2 RS-232s
320x204 color graphics,
3 channel Stereo sound,
4 channel DD 5.25 drive controller
8231 Math Processor
Z-Grass programming language, C/PM compatible
5) Four Built-in Programs
The four built-in programs take up about 4K of the 8K system ROM.
Accurate translation of two player version of the 1977
Bally arcade game, Boot Hill.
Two to four player game (similar to Tron Lightcycles). If you
type 0 for number of players, it will play a demonstration game.
5 function, 10 memory, calculator. Stores a video "papertape"
of 92 entries
1 -4 player Doodle program. Enter 0 players for "kaleidoscope."
6) Astrocade Cartridges
6.a) Overview of the Cartridges
For detailed information on released cartridges, prototypes and rumors, see the
separate FAQ called, "Bally-Astrocade Game Cartridge and Hardware FAQ." With
permission, it has the same information that was published in the DIGITAL PRESS
COLLECTOR'S GUIDE (Seventh Edition).
The cartridges were generally broken down into one of five categories:
Action/Skill, Educational, Functional, Sports, and Strategy. The following
list shows these cartridges in alphabetical order (the previous version of this
FAQ broke them down by category).
6.b) Released Cartridges
280 Zzzap / Dodgem Action/Skills Series #2001 2K cart 1978
Amazin' Maze/Tic-Tac-Toe Strategy Series. #5001 2K cart 1979
Artillery Duel Action/Skills Series #5005 4K cart 1982
Astro Battle Action/Skills Series #2009 4K cart 1979
Astrocade Pinball Sports Series #3005 4K cart 1981
Bally BASIC Functional Series #6002 4K cart 1978
Bally BASIC (w/ interface) Functional Series #6004 4K cart 1981
Bally BASIC Demo Functional Series 8K cart 1978
Bally Pin Action/Skill Series #2007 4K cart 1979
BioRhythm Educational Series #4004 4K cart 1981
Black Jack/Poker/Acey-Deucey Strategy Series #5002 4K cart 1979
Clowns / Brickyard Action/Skills Series #2004 4K cart 1978
Cosmic Raiders Action/Skills Series #2019 8K cart 1983
Dealer Demo Functional Series #6001 4K cart 1978
Dogpatch Action/Skills Series #2010 2K cart 1980
Elementary Math / Bingo Math Educational Series #4001 2K cart 1978
Football Sports Series #3002 4K cart 1978
Galactic Invasion Action/Skills Series #2011 4K cart 1981
Galaxian Action/Skills Series #2011 4K cart 1981
Grand Prix Action/Skills Series #2014 4K cart 1981
Incredible Wizard, The Action / Skills Series #2017 8K cart 1982
Letter Match/Spell 'n Educational Series #4002 4K cart 1978
Panzer Attack/Red Baron Action/Skills Series #2003 4K cart 1978
Pirate's Chase Action/Skills Series #2015 4K cart 1982
Solar Conqueror Action/Skills Series #2018 8K cart 1983
Space Fortress Action/Skills Series #2012 4K cart 1981
Space Invaders Action/Skills Series #2009 4K cart 1979
Star Battle Action/Skills Series #2005 2K cart 1979
Tornado Baseball/Tennis/ Sports Series #3001 4K cart 1978
6.c) Independent Cartridges
Blast Droids Esoterica 4K cart 1983
Blue Ram BASIC 1.1 Perkins Engineering 8K cart 1981
I.C.B.M. Attack Spectre Systems 4K cart 1982
Machine Language Manage Bit Fiddlers 2K cart 1982
Mazeman Self-Published 4K cart 1984
Ms. Candyman L&M Software 4K cart 1983
Muncher Unknown 8K cart 1983
Sea Devil L&M Software 4K cart 1983
Sneaky Snake New Image 4K cart 1983
Treasure Cove Spectre Systems 8K cart 1983
6.d) Cartridge Prototypes
Bally Color BASIC
BASICarts Self-Published 8K cart 1986
Bowling Sports Series. #3006 4K cart 1985
Checkers New Image
Coloring Book #4005 8K cart
Conan The Barbarian Strategy Series #5005 8K cart
Life New Image 2K cart 1985
Missile Attack Self-Published #2020 4k cart 1985
Music Maker #4003 8K cart 1985
Soccer/Dribbling Sports Series. #3007 8K Cart 1985
Songs New Image 4K cart 1985
Stweek New Image 2K cart
Tests New Image 4K cart 1986
Video Story Book Self-Published 8K cart 1985
Yesterday Self-Published 2K cart 1986
6.e) Cartridge Rumors
Astrology Bally Mfg. Corp #4003
Basketball Bally Mfg. Corp. #3006
Biorhythm/Calendar Bally Mfg. Corp. #4004
Checkers/Backgammon Bally Mfg. Corp #5003
Chess Bally Mfg. Corp.
Creative Crayon Bally Mfg. Corp. #4005
Creative Crayon (w/Light Pen) Astrocade Inc. #4005P
Desert Fox/Drag Race Bally Mfg. Corp #3004
Haunted Mansion Astrocade Inc.
King Arthur's Adventure Bally Mfg. Corp. #5005
Kong Astrocade Inc.
Missile Command Unknown
Music Maker 2 Bally Mfg. Corp
Omega Race Astrocade Inc.
Othello Bally Mfg. Corp.
Quest for the Orb Astrocade Inc. #5004
Robby Roto Astrocade Inc.
Roman Checkers Bally Mfg. Corp. #5004
Skiing Astrocade Inc. #2016
Solar Fox Astrocade Inc.
Space Race Bally Mfg. Corp.
Star Trek Astrocade Inc.
7) Astrocade Multicart
[A multi cart is] "a combination of old and new technology. It allows you to
see and play more than one game program, which is contained on a single
cartridge. A multicart can have a little as two games on it, or many hundreds
of games on it." - Ward Shrake
The multicart for this system is no longer available. It cost $100, and
included everything that was released, plus many titles that were not released.
8) BASIC Games
Users of the BASIC cartridge could save and load programs to tape. The
"Arcadian" and (later) other newsletters printed BASIC program listings and
tutorials. These programs were typed-in (yes, on that little calculator-style
keypad) and shared between users on tapes. Several of the programmers that
acquired a good working knowledge of the Astrocade set up companies (or what
seemed to be companies). Mostly a "company" was just one person programming and
selling the tapes from home in his spare time. BASIC placed some severe limits
on what the Astrocade could do, so programs that were released on tape were
usually no match for the cartridges, but they were far less expensive and so it
was a fair trade-off. Since the Astrocade was never showered with a large
cartridge library, these tapes were often the only way that new programs were
released (months could pass between a single cartridge release). There was a
buying public ready to get their hands on anything new for the Astrocade, and
it worked out that this software was released on tape instead of cartridge.
Some of the companies that released software on tape were: Esoterica, L&M, ,
H.A.R.D., Tiny Arcade and Wavemakers (there were many others).
Although it's true that games written entirely in Bally/Astro BASIC are prone
to be slow and somewhat clunky, most of the companies selling programs quickly
began to use Machine Language routines from the built-in ROM to power their
games. This type of hybrid programming produced good results with the limited
space available in the unit. Others took to using all Machine Language coding
for their games. By hiding the ML code at the bottom of the screen (or the
sides), and by reducing the vertical resolution it was possible to have four to
eight color, near cartridge quality, games on cassette tape.
A few of the companies that released tapes also created cartridges. Since the
summer of 2001 some of the authors of this commercial tape software have placed
this software into the public domain.
9) Connecting to a monitor
The Bally Astrocade can be connected to a composite monitor, VCR or a TV with
composite "line" input. Unfortunately all methods provide only a monochrome
(B&W) image. The circuit described in the Arcadian article (v5 #8 p.129)
supposedly gives a color picture, but two recent implementations gave only B&W.
Listed here is one simple method. Minimal soldering is required.
To open the console remove the five screws on the bottom. Then lift off the
plastic top. On the left front is the metal Radio Frequency (RF) box. Lift
the left edge & pull out to the left. Note a column of 8 large square metal
pins coming off the motherboard. For reference, number the pins 1 to 8 from
front to back. All solder points should be close enough to the board to allow
the RF box to be replaced. Solder a 300 ohm resister between pin 1 and the
metal shield. Now get 2 single ended RCA cables. Solder their shield wires to
the shielding. Solder the center of the video cable to pin 1. Solder the
audio cable to pin 3. You may want to install two RCA jacks on the back of the
console. Replace the RF box and reassemble.
The complete pinout list for the Radio Frequency (RF) box is as follows:
Pin Tech Comment
Back: 8 GND Ground
7 B-Y Blue-Luma
6 R-Y Red-Luma
5 Chrom Bias Chroma no sync??? Guessing.
4 Chrom 3.57Mhz Chroma with Sync?? "
3 Audio Audio (sound)
2 +12V Power for RF
Front: 1 Video Luma + snyc.
Note from Brett : "The 'video' is really just the luma ('Y') portion of the
video signal, the chroma is made up of the Red minus the luma, and the Blue
minus the luma. With this, you have enough information to reconstruct RGB
information. The reason Y, R-Y, B-Y signals are used is they conserve
bandwidth. The chroma signals can be half the bandwidth of the luma and still
maintain the full signal content. High-end broadcast digital tape machines use
this format and it is called 4:2:2 sampling."
Hopefully others will develop a better circuit that can work reliably with
10) Joystick Port Information / Controller Adapter.
The following is a corrected pinout list of the Bally Astrocade controller
ports. Port pinout information found in the Bally / Astrocade manuals and
previous Bally FAQ version 1 does not use standard DB9 pin designation and thus
Bally/Astrocade Atari Standard
Controller port Controller port
1. NC (No Connection) 1. Up
2. Down 2. Down
3. Left 3. Left
4. Right 4. Right
5. Trigger 5. Paddle Potentiometer B
6. Up 6. Fire Button
7. Potentiometer end 7. +5v (Paddle end)
8. Ground 8. Ground
9. 50K Potentiometer (Knob) 9. Paddle Potentiometer A
DB9 Male Port: DB9 Female Plug:
1 2 3 4 5 5 4 3 2 1
6 7 8 9 9 8 7 6
Also above is the Atari Standard Controller port pinout list. By wiring a
serial adapter, an Atari Bally controller converter may be constructed. The
connections are listed here:
A1-B6 A2-B2 A3-B3 A4-B4 A5-NC B1-NC A6-B5 A7-B7 A8-B8 A9-B9
... where (A)tari (B)ally.
Thus adapters can be made to connect an Atari compatible controller to the
Bally / Astrocade or vice versa.
Please note that the Bally/ Atari/ Commodore paddles use different value
potentiometers and additional resistors are necessary to make one controller
work with another console.
Also note that the Bally/ Astrocade port does not provide voltage. Thus
autofire circuits will not work when plugged into the port. But the ambitious
tinkerer may build an autofire circuit within the console.
Also check Jay Tilton's Deathskull Labs website
(http://users.erols.com/tiltonj/games/tech) for nice illustrations of the
Opening the controller: 4 screws hold the two black clamshells together. Be
careful not to lose the trigger parts or screws when opening.
Joystick and trigger contacts may be cleaned with a cotton swab soaked in
isopropyl alcohol. Also the potentiometer may be cleaned with two or three
drops of alcohol into the casing then twist the knob vigorously about 30 times.
A frayed / broken cable may be replaced with a Genesis 9 wire cable.
A broken black casing may be glued with plumbing glue.
Be careful to put the clear plastic wrapping back in place when reassembling.
11) On BASIC
11.a) Overview of the BASIC Cartridges
Three cartridge versions of BASIC exist for the Astrocade. One is called "Blue
Ram BASIC 1.1" and requires more than 4k of RAM to operate (it is for use with
the Blue Ram or Viper hardware). The other two versions (with possibly three
labels) of the BASIC cartridge will run on a standard Astrocade. Note that
other versions of BASIC do exist, but this section does not include languages
released on cassette, such as Viper BASIC, even though they can (and have) been
burned onto EPROM cartridges.
1. Bally BASIC
The original Bally BASIC is a robust and serviceable programming language.
The package came with a ring bound manual & Tutorial. The "Basic Expansion
Kit" included a tape library pak with some programming demos, and the audio
cassette interface. The BASIC cartridge can be used straight from the box, but
in order to save programs, an additional purchase of an audio cassette
interface was required. The interface saves data at 300 baud and plugs into
the Light Pen Interface jack and a joystick port.
2. Astrocade BASIC
The second release of Bally BASIC, later referred to as Astrocade Basic,
has the tape interface built-in the cartridge itself. The speed of the
interface is also increased to 2000 baud. This allows more data to be stored
on a cassette tape and shorter load times (a complete program dumps in about
thirty seconds as compared to four minutes). Music Processor Commands are
introduced in this version. These commands allow direct control of the sound
chip without using the memory consuming port access array.
3. Blue Ram BASIC 1.1
Originally released on cassette for use with the Blue Ram expansion unit.
Blue Ram BASIC does not have a built-in audiocassette interface; its interface
is on the Blue Ram hardware. It is compatible with Astro BASIC, but offers
additional features, such as the use of more RAM (the other two BASIC
cartridges are unable to use additional RAM as programming space). Blue Ram
BASIC also has additional programming features, as well as a smaller font set.
This cartridge will not function without additional RAM present.
Note that for ease of identification, the newsletters and cassette manufactures
refer to any BASIC cartridge with the built-in audio cassette interface as
AstroBasic (AB for short).
11.b) 1.8K available of 4K RAM
Although the Astrocade has 4K (4096 bytes) of RAM, only 1.8K of RAM is
available for Astro BASIC programming. This is because there is no separate
memory area allocated for the BASIC program, variables or stack; the program
shares space with the screen RAM (bit-mapped graphics area). This does mean
the program is displayed on the screen, but it is not visible. This can be
compared to a modern computer only using the memory on the graphics card.
This cost-cutting technique is often called into question (viewed against
today's computer standards) and it seems to fall short of a quality explanation
in many people's eyes. Don't be fooled. The Astrocade uses 4-color bit-mapped
graphics, one of the earliest such examples. The bit-map method of graphic
data manipulation (now standard) allows for easier programming, with the
overhead requiring more memory. The Astrocade's bit-mapped, 4-color, 160x102
pixel screen display requires 4080 out of 4096 bytes (see below), leaving no
memory for storage or operating space. Machine language cartridges use
slightly reduced screen resolutions (for stack space and arrays), but BASIC
really trims this resolution; a 2-color, 160x88 pixel display is used so that
there is operating space and room for a program.
To calculate that 4080 bytes are required for the Astrocade's screen storage
follow this. A four colored pixel requires 2 bits of storage (2^2, for colors
0, 1, 2 and 3). A byte therefore holds four pixels. The X resolution of 160
pixels requires 40 bytes (160 pixels divided by 4 pixels per byte). The Y
resolution of 102 pixels then needs 40 bytes for each line, or 4080 total bytes
(102 horizontal lines * 40 bytes needed to store 160 pixels).
Sixteen bytes are free for program use after every screen display pixel is
accounted for. This is not enough room for the stack or variables. Even the
Bally game cartridges need more space. They gain this space by reducing the
vertical resolution. Each line that is taken away from the display gives the
programmer another 40 bytes to work with. A cartridge that needs to gain 160
bytes for program use would then need to use a screen resolution of 160x98.
This isn't noticeable because the games don't usually require the whole screen.
Reducing the screen display by a few lines works great for cartridges because
the program code is stored on the cartridge itself; the additional RAM that is
needed is minimal. This is not the case with BASIC. The BASIC cartridge
doesn't reside in memory, but the user's program does. Bally BASIC reduces the
screen resolution by 14 lines (102 to 88).
That's quite a reduction, but it still doesn't leave room for a program written
in BASIC (that added space is used by the BASIC program for the scratchpad,
stack, variables, and line input buffer). To gain another 1800 bytes of
storage for the user's program would require the elimination of another 45
lines, thus giving a final resolution of 160x43. That would not have been a
very workable BASIC. Instead, the number of colors is cut in half from four to
two. Each byte now holds part of the screen AND part of the program; odd bits
hold the screen image and even bits hold the program. Of course, the even bits
can't be shown on the screen or else it would look like garbage. The
explanation for how the program data is hidden can best be described by an
article in the Arcadian newsletter (Perkins, John "Tutorial (1) Screen
Operations," ARCADIAN, 1, no. 6 (May 1979): 40.).
If you're curious, but are willing to forgo the above mentioned article, here's
a small part of it. Using Bally or AstroBASIC, press reset, now type this:
You'll see a line in the top-left corner; that's your program. Now type this:
Using the above POKE statements, you've moved some BASIC screen boundaries, so
you're able to see the data. Now, believe it or not, if you have a program in
memory, you could actually destroy it just by scrolling the screen. You see,
it requires some juggling, but that's how BASIC shares memory with the screen.
If this explanation doesn't make sense to you, then read the above-mentioned
article. If you still don't follow the explanation, then don't worry, there's
no reason that you should-- just use BASIC and be happy that you have two
colors to work with at all!
11.c) Basic Keypad Overlay
Keypad (without overlay):
C Up Down %
MR MS CH / Note: Up = UP-ARROW
7 8 9 x Down = DOWN-ARROW
4 5 6 -
1 2 3 +
CE 0 . =
Keypad (with overlay):
The BASIC cartridge uses twenty of the keypad keys to represent up to five
different keys (through the use of four SHIFT keys). This is a text format
representation (the underscore means the shifted-key does nothing).
| GO,_,_,_,+10 | PAUSE,_,/,\,_ | HALT,_,_,_,RUN | DIVIDE,_,[,],LIST
| 7,A,B,C,FOR | 8,D,E,F,TO | 9,G,H,I,STEP | x,J,K,L,NEXT
| 4,M,N,O,GOSB | 5,P,Q,R,RETN | 6,S,T,U,RND | -,V,W,X,IF
| 1,Y,Z,!,CLEAR | 2,<-,',->,LINE | 3,^,.,V,BOX | +,&,@,*,GOTO
| SPACE,$,",",?,_ | 0,<,",>,INPUT | ERASE,(,;,),_ | =,#,%,:,PRINT
| GREEN-SHIFT | RED-SHIFT | BLUE-SHIFT | WORD-SHIFT
Important Notes on the BASIC overlay:
The first character or word in the above table is what appears on-screen (or
occurs) when the keypad is pressed with NO shift key. The shift keys, in order
of appearance (Green, Red, Blue, Word), represent the second, third, fourth or
fifth character or word in the above text representation. For instance: RED-
SHIFT + 1 is a comma (notice the comma is quoted above). Also, since there is
no ASCII equivalent of an UP-ARROW or DOWN-ARROW I use a "^" and "V" characters
to represent them. The LEFT-ARROW and RIGHT_ARROW are represented with the "<-
" and "->".
11.d) Astro Basic Memory Map
Following are three memory maps of Astrobasic (and some explanations), each
containing some information that the other is lacking.
MEMORY MAP 1
Here is a memory map of Astrobasic (NOT Bally BASIC) taken from Vol. 3, Page 77
of the Arcadian:
On Board ROM Area 0 - 8191 0 - 1FFF
BASIC ROM Area 8192 - 12287 2000 - 2FFF
Screen Memory Area 16384 - 20479 4000 - 4FFF
Graphics Program Area 16384 - 19983 4000 - 4E10
Scratchpad Area 20000 - 20463 4E20 - 4FEF
Variables Start at 20002 4E22
Line Input Buffer 20154 - 20257 4EBA - 4F21
Stack Area 20258 - 20415 4F22 - 4FBF
Text Array Area -24576 to -22777 A000 - A70C
Lance Squire adds this about the text array area (the * and @ arrays):
The end of the BASIC program, pointed to by TXTUNF (4E20h 20000d) is the start
of the @(x) array. @(x) array continues until it runs into A70C (-22777d).
Now this means you can't store anything in an @(x) array till AFTER your
program is finished, as it will overrun the current @(x) array position.
To solve this, and to allow dual array programming AstroBasic (The Basic with
the audio jack) added the *(x) array. This one starts at A70C and works back
towards TXTUNF, wherever that may be pointing at the time.
"What happens where the 2 arrays cross?," Lance wonders. He's not sure.
Additional information about arrays can be found in the Arcadian, Volume 5,
page 113 in a tutorial by Don Gladden called, "How to Use 'String' Arrays."
MEMORY MAP 2
To the above memory map, Don Gladden adds this from his similar memory map
found in Volume 5 on page 175 of the Arcadian:
20000 End of program marker. Print it to find out
the last address your BASIC program uses.)
"SZ" is calculated using this location.
20002-20089 One and two-letter variables. (two
20090-20153 Odds and ends that BASIC uses.
MEMORY MAP 3
George Moses breaks down the memory map even more by giving exact memory
locations for each variable in volume 5, page 59 of the Arcadian:
Single Letter Variables Color Variables Scroll Mode Variable
20002 A 20054 BC 20090 SM
20004 B 20056 FC
20008 D Note Timer
20010 E 20058 NT
20014 G Screen Formatting Variables
20016 H 20060 CX
20018 I 20062 CY
20020 J 20064 XY
20024 L Music Processor Variables
20026 M 20066 MO
20028 N 20068 TA
20030 O 20070 TB
20032 P 20072 TC
20034 Q 20074 VR
20036 R 20076 VF
20038 S 20078 VC
20040 T 20080 NM
20042 U 20082 VA
20044 V 20084 VB
20046 W 20086 NV
20050 Y Remainder of Last Division
20052 Z 20088 RM
12) Astrocade Maintenance/Repair
12.a) General Astrocade Repair
Astrocade - The "Bally Service Manual" is comprehensive and gives instructions
on how to disassemble and make some repairs. The manual can be found here:
12.b) AC Adapter Repair
AC Adapter - The hardwired AC adapter may fail over time and spares are
difficult to find. Unplug the AC adapter when not in use, or use it with a
switched power strip (notice how the AC adapter is warm even when the Astrocade
is switched off? That is because it IS still working). The wires at the plug
may become broken over time due to chaffing (heavy transformer weight on a
wire). If this happens, you can break the glued sealed case by wrapping the
transformer cube in a rag and "tapping" with a hammer. Then clip the broken
wires and splice/solder the intact wires. Then re-glue the case. NOTE: If you
have to remove/replace the AC adapter, it does not matter which way the plug is
connected inside the console.
If you have electronics knowledge, then you might consider building a
substitution. Michael C. Matte wrote an article in Arcadian (vol.7 pg.91-93)
called, "Experimenting with your Astrocade: A Power Transformer Substitution.
I've not heard from anyone that has tried this. I'd like some feedback on
this; how well does it work?
12.c) Bally Astrocade Repair Procedures #1 - William J. Culver
Bally Astrocade Repair Procedures #1 - Astrocade unit displays screen for 1
second then turns black or does not power up at all.
Typically whenever a Astrocade does not power up, more than likely there is a
problem in the power circuit on the Motherboard (Refer to the Bally Repair
Manual at www.ballyalley.com).
One of the first repairs I will discuss that I have done to many Astrocades
concerns the capacitors that buffer the RAM (U24 thru U31 - MK4096N-15RAM) in
If any of the capacitors (C65 thru C106 - .1MFD 50V) short, then damage to the
Q1 (TIP31) Transistor and the VR3 (UA78GUIC-5V) will occur. Also note that if
you use the Astrocade on a carpet, it is typically the Q1 transistor that
shorts out as well (I have modified Astrocades to have a small CPU fan
installed to help cooling).
Typically when the Q1 transistor shorts out, you will find R2 (240ohm 1/2 watt)
resistor burnt on the motherboard.
By using the wiring diagrams, trace the voltage through the circuit until you
find the offending component. Check each capacitor for a short (C65 thru
C106). When I approach a problem like this, I unsolder each Capacitor first,
then replace the Q1, R2 and VR3 and power the unit up. Typically if a
capacitor is shorted and it is removed, the Astrocade will power up (but do not
leave it on long, just do this for a check). Connect each Capacitor one at a
time by using a small jumper wire until the Astrocade does not power up, this
will be the offending capacitor to replace (do not leave the Astrocade on very
long when doing this!, just briefly turn it on with you multimeter on the +5v
rail, If your multimeter does not indicate +5v when you hit the power switch,
turn off the Astrocade immediately).
NTE part numbers for components mentioned. (www.nteinc.com)
VR3 - NTE 953
Q1 - NTE 196
12.d) Heatsinks - Raymond Carlsen
[NOTE: The information below is from Raymond Carlsen
who released it on the Usenet Newsgroup "comp.sys.cbm" for all to read. The
author talks about saving C64 computers, but the basic principles Mr. Carlsen
discusses are applicable to just about any type of electronic equipment that
uses microchips. Any old computer could benefit from the methods described.
When I first saw this text I thought it was well written and worth saving, so I
kept a copy of it for myself. I am now re-releasing it, hoping that [a] Mr.
Carlsen won't mind my doing so (he did publicly release it once before), and
that [b] some of you out there with an older computer / electronic device will
find the info useful, so that [c] more cool old stuff will stay alive! I have
included the complete and unmodified article, just as it was released. - Ward
Shrake, July 1997]
Someone asked for information regarding adding heat sinks to the chips inside a
Commodore 64 to extend the life of the computer. Here is a reprint of my
Solid state devices such as Integrated Circuits (ICs) fail for two basic
reasons, assuming they were not defective from the factory: overvoltage and
excessive heat. The causes of overvoltage by way of the power supply are
predictable. The Commodore "black brick" has a history of catastrophic
failure, sometimes taking the computer with it. After-market repairable
supplies are much more reliable. Voltage "spikes" and static electricity can
destroy ICs in the computer through any of the accessory ports. Both of
these hazards are preventable to a degree... the use of a higher quality
supply and simple precautions such as never plugging anything in (cartridges,
mouse, etc.) when the computer is turned on just make good sense. Static
damage can be kept to a minimum by grounding everything that will be used with
the computer before connecting it.
A less predictable but nonetheless important concern is the fact that repeated
heating and cooling of semiconductor devices (especially ICs and power
transistors/diodes) with normal use, even within their normal temperature
range, will eventually cause them to fail. It is usually the devices that
generate the most heat in normal operation that fail first. It's a bit like
bending a piece of metal back and forth until it fatigues and breaks. Repeated
heating and cooling does the same thing to the structure of the microscopic
components inside an IC or transistor.
You could leave the computer turned on 24 hours a day... some systems run that
way. A BBS is a good example. I know of one system that has run without a
breakdown for years (except for the hard drive power supplies). For most of
us, however, the computer doesn't get enough use to justify the expense of a
system running all the time. An alternate solution is to reduce the extremes
of temperature inside the ICs by the use of heat "sinks", and thereby reduce
the thermal stress on the devices.
Microprocessors in new IBM type computers are running so fast nowadays (100MHz
and up) that heat sinking and direct fan cooling is an absolute necessity!
Those chips would overheat and fail in minutes without some method to dissipate
that heat. Some of the Commodore 64 ICs run too hot to touch in normal
operation. There are two simple modifications you can do to improve the
reliability of your C-64, namely, increasing the airflow inside the case, and
heat-sinking the ICs.
The physical design of the C-64 limits the airflow over the chips. Tiny air
vents in several places in the upper and lower half-shells offer minimal
convection cooling. That cardboard and tinfoil shield, although of
questionable usefulness as an interference filter, is very good at blocking the
airflow and holding all the heat inside the case. I have run tests to see how
effective that shield is in reducing radio and TV interference. I found little
difference after removing the shield. In fact, a stock 1541 (with all shields
in place) generates more "noise" than the C-64 with or without its' shield.
Four of the large ICs tend to run hot normally: the PLA, the SID, the VIC and
the MPU. These are the ones that fail most often, and in about that order.
They would benefit most from "heat sinking"... drawing away the normally
produced waste heat from the device by means of a metal "fin" attached to the
case of the device. The C-64C and the C-128 have a metal shield with "fingers"
that touch each of the larger ICs. Although the C-128D (metal box) has no
shield, it does have a small internal fan near the power supply. NOTE: If your
128D was shipped without one, they are available from Radio Shack (part #273-
244 @ $18) and Jameco Electronics (part #18770 or 75344... about $9). The SX-
64 has individual heat sinks glued to the larger chips. C-64s had no such
sinking, but you can easily make and install them yourself.
Remove the screws from the bottom of the computer, but leave the keyboard in
place. Run the computer for 15 minutes or so, lift the keyboard and feel the
tops of all the chips... some will be quite warm. Those are the ones that
most need the help! You can purchase commercial heat sinks that fasten to the
top of the chips with clamps, adhesive strips or glue. Radio Shack and other
parts houses can supply them in a variety of sizes. If you want to make your
own, any thin metal stock will do. The only consideration is that it be
flexible enough to bend without breaking, and stiff enough to hold its' shape
when bent. It must be flat on the bottom for intimate contact when glued to
the chip. I use strips of "tin" cut from large juice cans. With tin snips,
cut a piece of metal about 4" long and about 1.5" wide from the "un-ribbed"
part of the can, and bend it (use a block of wood as a "form") to fit the top
of the IC. Careful! Those cut ends are razor sharp! The top of a 28 pin chip
such as the PLA is approximately 1.5" long and 5/8" wide. The heat sink is
fashioned into a "U" shape with "ears" that extend out to either side (see
diagram). The sink ears are made high enough to clear all components on the PC
board, but not touching the keyboard when it is reattached: bend the ears over
about 1/2" from the top of the IC so it clears all of the smaller components
next to the chip. The large "surface area" is necessary since the airflow
inside the case is poor.
SIDE VIEW OF HEAT SINK ATTACHED TO IC
|<-------------- APPROX 3" --------------------->|
.5" /\ |<---5/8"---->|<----- HEAT SINK
---- =============== <------ ADHESIVE
! ! BOARD
Use fast-set epoxy to attach the sink to the IC. If you have several sinks
prepared ahead of time, you can mix one batch and glue them all before the
epoxy starts to set. Print the name or number on the top of the sink with a
felt tip pen ahead of time so you can still identify the chips when you're
done. Be careful not to use too much glue (one small pea-sized drop is
plenty), or it will ooze out the sides and down into the socket. (Note: not
all chips are socketed.) Spread the epoxy over the sink (or on top of the
chip) and gently press it into place. I don't recommend super glue as the
surface of the metal will not be flat enough for a good bond. Heat sink
compound (white silicon "goo")is sticky enough if the computer will never be
moved, but I don't recommend it either. If the metal sink falls into the
computer, it will most certainly short something out. Epoxy forms a good bond
even with irregular surfaces as it fills the "voids" and provides sufficient
heat transfer to the sink. Just make sure the metal is free of dirt, oil,
fingerprints, etc. before you apply the glue.
As I stated, the chips that benefit most from sinking are the large heat
producing ones, like the PLA (CBM #906114-XX, 82S100PLA, or 93459), the SID
(CBM #906112-XX or 6581), and the VIC (CBM #906109 or 6567). The VIC chip is
already sinked in later C-64s. It's inside a metal box... the cover has a tab
that touches the VIC chip. If yours doesn't have one, sink it. You can use
the "finger" test to see if any other chips in your computer run hot enough to
need sinking (too hot to touch after 1/2 an hour with the case closed). The
only other chip I would sink would be the MPU (6510), although I have only seen
a few bad ones. Make sure the heat sink fins don't touch any circuit
components and cause a short! The two VIA (6526) chips run cool to the touch
and don't really need sinking. Since they connect to the external ports, they
are more sensitive to static "zaps". The ROMs run warm. The eight RAM chips
(4164) normally run cool, at least until the power supply regulator fails.
When RAM chips get hot to the touch, they're gone!
Heat sinking can be added to the chips in the 1541 disk drive as well. Its'
power supply is internal, making IC heat buildup even worse. The problem with
modifications to the drive is the space limitations inside the case. It's
pretty crowded in there, but it can be done. Find the chips that get the
hottest as described with the C-64 and add sinking as necessary. The heat
sinks you make will have to be cut to fit the space allowed.
The 1571 has an internal switch-mode power supply that all but eliminates heat
problems. The 1541-II and 1581 both use external supplies and consequently run
cooler. No matter what equipment you have, it's important to keep the vents
clear on the computer and accessories. Don't put papers, books or disks over
the vent holes on the computer, drives or monitor. Don't stack 1541s. Replace
your original C-64 supply with one of the repairable "heavy duty" types.
IC chips and other parts for Commodore computers and peripherals are in short
supply. With the simple suggestions and modifications described here, you can
help to extend the life of the ICs and keep your Commodore system humming along
for many more years. - Ray Carlsen CET
12e) How to Repair Bent and Broken Legs on Computer Chips - By Ward Shrake
[The Astrocade has three socketed chips on the motherboard: Address Chip (U17 -
Bally Part # 0066-115XX-XXYX), Data Chip (U18 - Bally Part # 0066-116XX-XXYX),
and the I/O Chip (U19 - Bally Part # 0066-117XX-XXYX). These chips
(especially, the Data Chip) are a common failure in Astrocades that are dead
or acting weird (B&W, wrong colors). If you are replacing a chip by, likely,
cannibalizing another Astrocade (for the chips are no longer available) and you
break or disconfigure one of the chips, then this generalized FAQ by Ward
Shrake will give you the information that you need to get yourself out of this
kind of jam. - Adam]
Old computers and other electronic devices are usually full of the DIP (Dual
Inline Package) style of chips, or Integrated Circuits. Sooner or later you'll
run across some with their little legs or pins bent in ways they should not be.
Here are some tips on safely straightening them back out.
First off, do what you can to prevent damage done by static electricity. Buy
an anti-static wrist-strap and learn how to use it, if you're going to be doing
much work around CMOS chips. (They are very sensitive to even very low levels
of static electricity.) If you are brave, you can just try to hold the chips
on the plastic or ceramic body parts, instead of by the legs. It can't hurt
to do both.
A small hand tool exists, usually called an "IC pin straightener" or something
close to that. I only use them once in a long while now, but I used them more
often years ago. (Radio Shack used to carry them in their stores, but now only
sells them as a "special order" item, I'm told under part number: RSU 10524502.
Other places likely have something similar, but you'll have to shop around on
your own to find them.)
These tools may or may not have a screw built in, that is meant to connect to
an anti-static ground point. Basically, these tools are just a few simple
blocks of plastic. You insert a chip loosely into the middle portion, then
squeeze two spring-loaded walls inward, towards the chip's legs. The two rows
of legs get crushed flat, between the various parts.
Problem is, this tool is made for newly-produced chips, more than ones that
have been accidentally bent while working on them. Most DIP-style chips come
from the factory with their little legs pushed slightly outward, like an
awkward calf. Good luck, if you don't know this and you try to fit the IC into
a board or a socket "as is"? Until you straighten the legs out, so that they
are at a ninety degree angle to the body, you'll likely be frustrated and may
end up with a real need to know how to straighten badly bent legs.
However, if the legs are bent too badly, the chip won't fit into the center
section of this type of tool. And it only fixes legs that are bent outwards;
you have to straighten them by hand, if they are bent along the long axis of
the chip, which sort of defeats the purpose of even having such a device. I
would say that they can be handy to have, mostly if you are afraid you'll
damage the chip by straightening it by hand. Once you've gained some
confidence in using other tools, you'll probably find less and less use for it?
What I use most often nowadays to straighten out bent chip legs, is a standard
pair of needle-nosed pliers. As long as the tip is small enough to -- gently!
-- grab one leg, while staying out of the way of the ones nearby, it should
work fine. (You may also find that a favorite pair of tweezers works for you?)
Take your pliers, and carefully bend the most badly bent pins into a ballpark
or approximate position, as your first step. Move slowly and very gently.
Keep in mind that any thin piece of metal, bent back and forth enough times,
will snap off. It's called metal fatigue. You want to avoid it as much as
Once most of the pins are somewhat close to being straight, I usually pick one
direction, and fix that first, then go back a second time and fix them in the
other direction. Doing this gives me a fairly good view of what straight
actually is, from one pin to the next. In other words, I'll hold a chip flat
horizontally, looking at its side, with one row of pins facing me from left to
right. I'll get those pins fixed first, so that they are straight up-and-down
when compared to one another and the body of the chip itself.
I will then look at the either end of the chip to see if any pins are sticking
inwards, badly. If they are, I bent them back outwards, slightly. If I have a
row of legs that wanders all over the place, in both directions, what I'll do
is to bend the inward ones all outward, to match the bow- legged ones. For
now, this just keeps them even with one another, not necessarily at a ninety-
degree angle to the body.
As a final step, I'll place one row of legs on a flat table or other solid
surface, so that the body of the chip is sticking up vertically. (Think of a
truck lying on its side, if that helps?) Gently roll the chip's body away from
you, so that the legs are bent flat and even with one another. It is better to
do it a few times, a few degrees at a time, then to keep over- bending and
unbending them, making them brittle in the process.
Practice these steps a few times with some spare parts, if it sounds difficult.
It isn't, once you've done it.
REPAIRING BROKEN LEGS
If you've gone and snapped a leg off, repairing it may be harder but still do-
able, with some practice and the right tools. Take a close look at any random
chip you have laying around. You'll see that the part of the leg that goes
into a socket, is thin and wire-like. The upper portion of the leg is
approximately three times as thick, when looking at it from the side. If both
the upper and lower leg halves are gone, sorry, you need to buy yourself a new
chip. If you snapped just the lower part of a leg off, try this to fix it.
(You may even want to intentionally snap some legs off of a cheap but working
socketed chip, just to practice?)
Carefully clean the upper part of the leg. Remove any obvious solder or other
debris, then use grade "0000" steel wool to get a bright, shiny surface. (A
rubber pencil eraser works, too, but not as well.) You can find this steel
wool in better hardware stores, most likely for polishing expensive woods,
believe it or not. One five dollar pack should last for years, and is great
for cleaning card edge connectors, too.
Anyway, you should now have a clean, upper leg half. Get a short section of
wire; an inch will do fine. A section of the wire leads from a cheap resistor,
capacitor or other small spare part works great.
Soldering is beyond the scope of this article, but what you want to do is to
"tin" both of these parts. What that means is that using a low-wattage (15
watts is fine, 30 is maximum) soldering iron, you heat one part up at a time,
then add a tiny bit of solder to it. It helps if you use the smallest diameter
wire solder you can find; you'll have much better control over how much solder
gets applied, and where it gets applied. Never use acid cord solders! Radio
Shack (and many other places) sells all you'll need for simple soldering. I
really like their small 1.5 ounce spools of "silver bearing solder," and know
they sell a decent 15 watt iron. They also have a very good desoldering iron
(40 watts?) at a good price (around $10) with its own little red bulb and a
hollow heating tip, but that's another story altogether. As long as I'm
rambling, for most small electronics work, a "third hand" type holder will
probably save your sanity to some degree, too.
Now that you have two clean surfaces, with just a tiny bit of solder on each of
them, you can touch them together, hold them steady that way, and gently heat
both parts. The solder on both of them should run together, and make the two
parts stick together. Don't move the parts around; let it cool without any
movement at all, or the joint will be extremely weak, or even electrically
unworkable. And for this use, it helps if you leave the wire extra long in
both directions, so you can hang onto it. Solder it on, hold it still, let it
cool, then trim the new leg to its final size. When I'm doing it, I hold the
length of wire in one hand with a pair of needle-nosed pliers, I hold the
soldering iron with my other hand, and the chip itself is laying on its side,
clipped into one of those nifty "third-hand" holders.
SOME OTHER THOUGHTS
One other, sort of related tip... once in a long while you may find a situation
where you're putting a chip into a socket or set of holes that it wasn't really
made for. (Replacement EPROM's, for example. Trust me on this, for now.)
Maybe most of the pins are correct, but one or two aren't. What you can do is
to bend the offending pins so that they are straight out from the body of the
chip; like wings on an airplane, more or less. That particular pin won't go
into its socket hole, but the other pins will. Attach a small length of wire
to that bent-on-purpose pin, and then attach the other end of the wire to where
it should really end up. I find that a wire-wrapping tool set helps out, in
situations like this. But again, that's another story.
This is an even stranger, admittedly much less common situation: if you ever
have a chip that you're inserting into a circuit, from scratch, it may help to
bend certain pins straight out, then tie those bent pins all together with one
long length of wire. ("Huh?," you probably said.) I'm thinking of one
situation where an inverter (7404 chip) is being put into something like the
Atari 2600 console, to make an "active high" chip select signal from the
machine activate an "active low" enable line on a modern EPROM. Most guys just
run four wires; power, ground, signal input and signal output. But on most
gate chips -- especially on CMOS chips -- any unused inputs are supposed to
always be tied either to power or ground, so that the lines aren't "floating".
If they are left floating, the circuits act erratically or sometimes just don't
work at all. And they may use more power than they should, as well. In the
situation mentioned, all the inverter's input lines could be bent upwards,
ground could be bent upwards also, and they could all be tied together with one
wire and a minimum of fuss.
And here you probably thought that the only time it was necessary to straighten
IC legs out, was when you bought large quantities of cheap, used-and-abused
EPROM chips in bulk? Shame on you! :-)
I hope this info helps some of you keep these older machines up and running!?
Good luck.... - Ward Shrake
12.f) Identifying the Bally/Astrocade On-Board ROM
There are at least three different versions of the Bally/Astrocade On-Board
ROM. Two models are nick-named after a memory location that yields certain
results that make it easy to ascertain which On-Board ROM is being used, while
the other is known by the color of the Astrocade itself. These three different
* 3164 - CALL(3164) yields "Game Over" - Date "1977"
* 3159 - CALL(3164) yields "Over" - Date "1978"
* White Astrocade - Acts like 3159 but says 1977
The reason this matters at all is because of some possible compatibility
problems. I know of no cartridges that will not work because of this, but some
tape games do have problems because of this. I have not run into any
compatibility problems myself, but it is possible that some problems may arise
today; knowing which ROM you are using may become important (especially when
you are using an actual Astrocade).
Using the following program from the ARCADIAN newsletter (Vol. 5, No. 3, Pg.
49, Jan. 14, 1983) I have been able to identify which version the Astrocade
emulator is using:
The Astrocade emulator prints "OVER". This means that the emulator is using
the 3159 On-board ROM, which is the most widely distributed ROM.
For those that are interested, I have taken a screen shot of the Astrocade with
the BASIC program on the screen and one after the program is run (showing
The pictures are:
I'd like to thank Michael White for informing me of the ROM differences with
the White Astrocade.
12.g) Notes on Removing cartridge labels - By Ward Shrake
If you're trying to remove a cartridge label from an original Bally cart -- say
to make a homebrew game cart of your own -- you'll run across a number of
problems. Since I've already solved many of them during my own homebrew
(multicart) project, I'll pass on some tips.
To get most of the original label off as cleanly as possibly, use a heat gun or
a high-wattage hair dryer. I use a 1500 watt Conair handheld hair dryer. It
is nothing special, in fact I paid $3 for it at a thrift store. I rest it on
its side, on the bathroom countertop. I put it on a folded towel, so that
vibration won't allow it to move around. (Mine has rear and front vents; don't
block any side vents.) I stand a cartridge up on its edge about four or five
inches away, and put something like a shampoo bottle behind it, to hold it
Set on high, in a minute or so my hair dryer heats the label up enough to make
the glue sticky again. I stick a hobby knife blade gently under part of the
label, to test if it is ready to peel up. It will peel pretty cleanly, once
you get the right timing figured out.
One thing to watch for is case warpage. The Bally cart cases are so thin, that
if you overheat the cart you can actually bend the case itself. If you apply
too much heat, then use too much force to pull the label out, you'll actually
bow the case upwards ever so slightly. (Needless to say, this is not a good
thing.) Practice is best to avoid this, but one trick is to first bend the
label almost straight back upon itself, then peel it backwards, almost flat.
This changes the direction of the pull from side-to-side instead of outwards.
Set the cart aside to let it cool down. Discard the old label, or try to stick
it onto a sheet of wax paper if you want to try to save it.
The next problem is relatively easy to solve if you know how to, but is a
(heavily censored) pain to figure out. In short, there will be a lot of left-
over glue residue. Your new label may not stick to it very well, as this adds
unwanted texture to the smooth case surface.
The solution is to coat the label area with Elmer's rubber cement, let it dry
somewhat, and then wipe most of it off. (There must be some kind of a solvent
in the rubber cement that is similar to the glue that was originally used on
these carts.) This will take off some but not all of the glue residue. The
rest will come off if you let the remaining glue dry, then rub it all off with
Before I figured that out, I went through just about every chemical but napalm
and gasoline, with little or no success. "Goof-off" and lacquer thinner were
far too strong; they actually made the problem worse instead of better, by
melting and marring the case's plastic. I also tried "Goo-gone" and "Windex"
and other household cleaners to no avail, acetone to nearly the same result,
soldering flux remover (in desperation), and anything else that I had handy.
Nothing got rid of that stupid glue residue, even when scrubbed in with
abrasive pads. I even broke out some steel wool and then very fine grain
sandpaper, and tried it. Even that was a waste of time, and did nearly
The Elmer's rubber cement trick gets a cart cleaned up a minute or two, as
opposed to the forty-five minutes per cart it was taking at one point, just to
see something of a slight improvement (maybe). I am offering this info to save
the rest of you the same frustration.
12.h) Notes regarding cart case repairs - By Ward Shrake
Observations regarding the plastic cases that Bally Astrocade carts come in.
There are a number of non-obvious problems with the four small screws that hold
the two halves of a plastic Bally cartridge case together. It generally does
not become apparent until you've had reason to open the case up, so most game
players would never know about it. You may think that means you are not
affected by this, but as soon as you have to open a case up to clean an edge
connector, you're in trouble.
In short, once you have removed the screws even once, from then on they often
strip out, fall out or are torn out over time. The more often these screws are
actually used, the worse your odds become at avoiding this problem. Even brand
new, shrink-wrapped carts have this problem. The screws that were used by the
factory cause the problem.
The solution is simple; replace the original screws. The replacement screws
you want are #2 screws, 3/8ths of an inch long. The panhead style is probably
your best bet. Phillips or standard; either way. I prefer the woodscrew type
myself, rather than a self-tapping style.
One additional trick to use is to put a little bit of bar soap on the threads
of the new screw, before you insert it. Just roll the screw across the
surface, and let a little bit of soap stay on the threads. This lubricates the
new screw and makes that first insertion go much smoother. This makes it
easier to feel when the screw has bottomed out, so you can stop applying
pressure at that point. It also makes it easier to remove and replace the
screw whenever you need to do so.
Doing these two things will fix the problem, most likely "forever".
If you insist on leaving the original screws in the cart, make sure that you
VERY carefully inspect and clean each thread on each screw before you reinsert
it. Make sure that no plastic chips are caught in the threads. Use the bar
soap trick, to lubricate the original screw.
A couple of other screw-related tricks: before you try to remove the screws
from any case, you may want to turn each one a quarter or a half of a turn,
back-and-forth, a few times. With luck, this may dislodge some of the plastic
clogging the self-tapping screws. You may also want to turn the cart upside-
down and gently tap the case a few times to knock out any loose debris that may
remain in each hole.
To make sure you are inserting the screws properly, "back-thread" them gently
before you start turning them. Put the screw into the hole, very, very gently.
Apply almost no pressure at all, and pay close attention to the feel of the two
parts. Very slowly, rotate the screw in a backwards direction. The thread
sticking out will ride the top wall of the hole, backwards, for a little while,
without being able to find its way in. As soon as the matching groove is under
the thread that is sticking out, the screw will suddenly drop into it. At this
point, slowly start turning the screw in the proper direction. It takes
practice to get the right feel for this -- try it with much larger nuts and
bolts until you easily recognize how it feels -- but it is very useful to know
about if you deal with many threaded holes.
A bit more of a detailed explanation of the problem...
The original screws are self-tapping, which means they cut their own threads
into the plastic they are going into, the first time they are inserted. This
is one quarter of the problem. The ridiculously fine threads are the next
problem; they don't cut deeply enough into the surrounding plastic walls to
really grab and hold well. The next quarter of the problem involves the very
thin-walled tube that it is actually screwed into, and the fact that it is also
an enclosed hole.
This all adds up to a situation where the small plastic chips cut by the
tapping section of the may end up jamming the fine threads at the bottom end of
the screw. If the hole went all the way through, these chips might just fall
out the other end, but as is they have no place to go. When you take the screw
back out for the first time, these clogged lower threads essentially try to tap
a new hole coming back out, widening the original grooves or destroying them
completely. (I recently had a brand new case that wouldn't come apart even
with great force. One screw had a huge ring of plastic at the bottom; more or
less as if it were a nut on the end of a bolt. The screw just spun in its
hole. I finally had just tear the screw out, with great force.)
And now, here's why I take this all so seriously...
If you look at the way that Bally carts go into the cartridge slot and are held
there, you'll see that there is upwards pressure being applied all of the time;
the "end of play" cart rejection spring is actually pretty strong, all things
considered. The only thing holding the cart down are two little fingers that
fit into notches in the end of the cart itself. If the screws that hold the
case together are not holding it securely, this pressure can literally tear a
This last problem is potentially very serious. If one of the screws is
essentially torn out of its hole by this constant tension, gravity will cause
the tiny screw to fall out completely. (The sudden upwards snap of the cart
rejection device makes this problem more likely.) It is unlikely you will
notice the screw, laying there on the floor of the cartridge well. Sooner or
later, it will roll into the open areas of the machine, where the metal body of
the screw is just waiting to roll onto the wrong things, and short something
out internally. At the very least, you've now lost one of the screws holding
your cart together. Even if it just sits there on the floor of the cartridge
insertion well, the lost screw can make new cart insertion difficult.
To sum up; I hate the original screws used by Bally and Astrocade. They are
not at all the best design for their situation. If you have any reason to be
opening cases, or you just want to insure your carts will last a long time, buy
a small box of 100 replacement screws (for about $3) and replace all of the
problematic original cart screws.
12.i) Notes on getting dead carts to work - By Ward Shrake
This isn't going to be an exhaustive step-by-step text on cart repairs -- just
a few notes I have not seen elsewhere, to add to what's already known by people
familiar with other game systems. It should be enough to tell an electronics
hobbyist what to look for.
Cleaning cartridge edge connectors is the first thing to try. Open the cart's
plastic case up, take the PC board out, and rub the edge connectors gently with
the finest grade of carpenter's wool you can find. The "0000" grade works
great. Avoid anything much heavier duty than that, or you'll risk heavily
abrading the surface, making the cart harder to resurrect. You'll end up with
a mirror finish or be close to it, if the cart is dirty but in otherwise good
If that fails, and you're comfortable with a soldering iron, you may want to
try tinning the edge connectors with solder. Don't use very much; just enough
to give them an even coating. I add some 0.022" diameter solder, very lightly,
and spread it around with my iron. Using solder wick, I pull most of that
right back off. Push any small blobs backwards. Once I'm done coating them
all, I take a Q-tip dipped in a good quality soldering flux cleaning chemical,
and rub off the gunk. (I first squirt some into an aerosol-paint type cap,
from a spray bottle.) It make take a few repetitions to get it nicely flux-
free. You can then reclean the connectors using carpenter's wool. It is a lot
of work, but I've brought back some dead rarities.
If even that does not get your cart working, you *may* be having some problems
with PC board / cart slot interference issues. (In other words, your PC board
may not be perfectly shaped to fit into the slot, so that the little pins or
fingers are not making a very good, reliable contact with their mating
connectors.) It does happen; Adam once handed me a non-working third-party
cart like this. The left and right sides of the board stuck out so far that
they wouldn't allow the board to sit down flush in the slot. As a consequence,
none of the pins were actually making contact. Cutting the sides fixed it.
(It wasn't very hard to do in this case, because the offending parts were
relatively small "snap-off" sections left over from the board manufacturing
process. I just used wire snippers, then a small file to remove those
unintended wings.) The cart worked fine after that.
One other interference problem you may want to check on is at the very front
lip of the PC board. Because of the way these carts are designed, the front
lip is supposed to sit flush with the inner edge of the hole in the front edge
of the cartridge. (Look at a cart to see what I mean.) If the front edge of
the PC board sticks up just a fraction too high, it may only make the cart hard
to insert. (I suppose it might cause problems with reliability, too, but I've
never actually seen this?) In any case, it is easy enough to fix... just sand
the top front edge of the PC board down at a slight angle, so that when you
insert a cart, there is a bevel or "ramp" that hits first. Just enough to feel
it; you don't have to see it much. The cart will ride up and over, causing you
no further insertion problems.
I don't imagine this would cause problems with existing carts, but to be extra
paranoid when I made my multicarts, I also rounded the two side corners off.
That way, even if a cart tries to go into the cart slot in some way that it
shouldn't, it self-corrects as it goes in.
If all of this does not fix your cart, there are only a few other things that
could be wrong with it...
One or more of the solder joints are "cold" or bad; if this is the problem,
simply "reflowing" the solder joints should fix this. (Heat each one, and apply
a very tiny bit of new solder to each one.)
There may be two solder joints that should not be touching, but are. If this
is the problem, use solder wick to take the solder off of both joints, and
carefully resolder each joint separately.
It is unlikely, but perhaps the PC board itself is bad in some way. If you
have the expertise to do so, you can visually check it over, to be sure that
all the traces are intact and are unbroken, and that none are peeled away from
the board's surface. The most likely issue on a factory-made board might be a
small scratch, cutting a trace.
The small decoupling capacitor located between power and ground may be shorted
out. (If it did, your Bally system probably would not work at all, so this
problem is possible but rather unlikely.)
The chip itself may just be dead. Not much you can do about that other than to
remove the old one, and to find a replacement chip.
12.j) Restoring the Astrocade's Gold Trimming - Marty Goldberg
With the Professional Arcade unit I just picked up there were some nicks,
scratches, etc. on the gold trimming on the console that caused the coloring to
be removed in those spots. Same condition with the hand controllers: the gold
on parts of the Bally logo was worn off completely in much of the logo.
I found a perfect match (gold and metallic sheen) to restore those:
Krylon 18kt Gold Leafing Pen
It's made for creating gold leafing effects for walls, and is an actual paint
in a pen format. The tip is chiseled, making precise spot application
possible. I put it on and couldn't tell the difference between the original
and the touched up section; it has the same color and metallic look. It made
the controllers look like new as well. It was really easy to apply because of
the handy pen format.
I picked it up at "Michael's, The Arts & crafts Store," but you should be able
to find it at any place that would carry wall leafing supplies.
13) MESS Emulation
Many classic systems can be emulated on modern hardware, and the Astrocade is
no exception. Astrocade emulation is included as part of MESS (Multi Emulator
Super System). The emulator can be downloaded from:
MESS emulation works well and I encourage even the passively interested to try
it out. The effort to dump ROMs for emulation on your PC, especially from
those cartridges that are rare or unreleased has really gone well. The ROMs,
however, are not easy to come by yet. Don't get discouraged; try the games
released to public domain that are available (the Bally Alley website has
Please do not send email asking for ROM images; there is no further advice
other than what is included in this section. If you want to try the games and
you have an actual Astrocade, then I recommend that you purchase the Astrocade
Multicart- it has more games and programs than you could ever find or expect to
exist on the Astrocade.
14) Publications of note
Most of the material listed here can be found at the Bally Alley website.
From which a wealth of information can be obtained.
A newsletter by ABC Hobby Craft. Contents unknown.
Basic Express (AKA Cursor)
Another newsletter with information and programs.
Handbook of Hardware + Software (AKA 'Nutting Manual')
Source of most of the programming support for most of the arcade quality
games made for the Bally/Astrocade systems.
On-Board Rom Subroutines
Helpful for improving your BASIC and Machine Language programs.
Peek N Poke Manual
Useful information for the BASIC Programmer.
Service Manual PA-1
Parts lists, Schematic Diagrams, etc.
15) Sources of Bally/Astrocade Hardware, Software and Information
The Astrocade never was as popular as the Atari systems, and thus Astrocade
hardware, software and information has never been easy to obtain. Here you
will find some places to start your search.
HARDWARE - There is no easy, one-stop, source for the Bally Astrocade console
itself, or for console add-ons. A run to local thrift stores will probably
turn up nothing. This doesn't mean you can't find an Astrocade in the "wild"
though, as good finds have been known to occur from time to time. But if all
the local thrifting proves fruitless you will need to turn to the Internet to
find an Astrocade.
If you want a console now, this very instant, then an Ebay auction is probably
your best bet. There is almost always at least one available on Ebay. These
systems are perceived as rare (true or not), and the price usually is a good
reflection of that.
SOFTWARE - There are two kinds of software for the Astrocade: cassette and
cartridge. Cassette software is very difficult to find. There is no source
that I can recommend for it except for Ebay (and even that is pretty dry).
Cartridge software can be obtained from private collector's trade and for sale
lists. Check the "links" page of the Bally Alley website (below) for more
information on this.
INFORMATION - Astrocade newsletters, pictures, links, manuals, and other
documentation can be found at:
There is an active Astrocade discussion group at Yahoo! Groups. You must be a
member to view or post messages (joining is free), though downloading files
does not require membership. Current topics include hardware add-ons, an
Astrocade software CD, and more.
A) Appendix - Astro Basic Command Listing
Included here is a summary of every Astro BASIC statement as listed in Appendix
H (pages 108-114) of the Astro BASIC manual. The entire BASIC manual, in PDF
format, can be downloaded from http://www.classicgaming/ballyalley.com. This
was typed by Lance Squire.
Draw a box in foreground color (mode 1) that is centered at the point X,Y.
The box is A pixels wide and B pixels high. You can draw boxes in four modes:
1 - Foreground Color
2 - Background Color
3 - Reverse box (XOR)
4 - Invisible
Clear the screen. Any program stored in memory remains unchanged.
These commands form a loop. Example:
10FOR A=1TO 16STEP 3
30 NEXT A
Goto line number A
Gosub line 100
Test the value of an expression. If it is not zero (if it is true) the
rest of the statement will be executed. IF A=5GOTO 20 means if the number
stored in A is 5 the expression is true and has a value of 1. If it is not 5,
the expression equals zero, is false and the rest of the statement will be
skipped. Execution will continue at the next numbered statement.
Wait for numeric keypad input.
INPUT "HOW MANY?"A
Prints message and waits for input.
Draw a line to the point X,Y, in foreground color (mode 1). Use XY=A or
mode 4 to start line from new location.
Print program instructions in numerical order beginning with the lowest
Start at the beginning and print only the first five numbered statements.
Start with line 100 and list to end.
Start at line 100 list only five numbered statements (inclusive).
Print Character A.
Print Value of A.
Print A spaces then B value. Omitting the #A, Bally BASIC will normally
print numbers right-justified in an 8 space field.
Return to instructions following the most recent GOSUB.
Generate number between 1 and the value of A. If A=0 the range is -32768
to 32767. If A is between 1 and 32767, RND(A) will generate a number between 1
and A, inclusive.
Execute program from beginning. To start elsewhere, use a GOTO followed
by the start line number.
Absolute Value of A.
Goto assembly routine at A.
Contains the remainder of last division.
Sets scroll mode by: Mode are:
0 - Normal
1 - No Scroll
2 - Clear screen, Cursor at bottom
3 - Clear screen, Cursor at top
4 - Auto Pause, release by pressing any key.
Stop execution of program.
Size of available programming space
Stores the XY position specified in the latest LINE command. The Y value
occupies the high order byte of this word, X the lower byte.
Is Pixel on or off?
This function returns the position of the number one joystick's horizontal
position. A return of -1=Left, 0=Center, and 1=Right.
This function returns the position of the number one joystick's vertical
position. A return of 1=Forward, 0=Center, and 1=Back.
This function returns the status of the number 1 trigger. A return of
1=Pulled and a 0=Not Pulled.
This function returns the status of the number 1 knob. The range is from
-128 counterclockwise to 127 clockwise.
Wait for key press, store ASCII in A.
Display ASCII character A to TV.
Play musical note value A.
Play same note as character A (All characters in Bally Basic Produce a
tone when displayed unless NT=0)
Note Time, Duration of note play
Places the cursor left or right on the screen. The range is from -80 to
Places the cursor up or down on the screen. The range is from 43 to -44
Save RAM (Program/Variables/Screen) to tape.
Load program from tape to memory.
Provides a checksum of program stored on tape without affecting program in
memory. Prints a question mark to left of cursor if an error is found.
The :RUN command is provided for loading machine language programs. The
load will begin at the top of the screen (4000H or 16484D). When the load is
completed control will be transferred to this first address. The block loaded
is limited in size only by the need to avoid interference with the stack area.
To write out blocks of data, a second form of :PRINT is provided. This
will write a data block of indicated length beginning at the specified address.
For example, to write out the first 100 words of the @() array, :PRINT @(0),100
will save array addresses @(0) thru @(99) on tape.
As with :PRINT there is a form of :INPUT for loading data blocks. :INPUT
A(0),100 will specify that the load is to begin at array address zero and
continue loading a total of 100 addresses.
Out of Memory
Generic error code. Examples:
GOTO 50 No line 50 HOW?
GOSUB A A=10 NO line 10 HOW?
NEXT Y NO FOR Y HOW?
Punctuation and Operators
+,-,Multiply and Divide symbols Standard math functions
; - Separate multiple statements on same line
, - Continue printing on same line.
. - REM statement
> - Greater than
< - Less than
= - Equal to
# - Not equal to
B=%(A) - PEEK A,B
%(A)=B - POKE A,B
@(n) - Array (Bally Basic and Astro BASIC)
*(n) - Array symbol (Astro Basic Only)
&(n) - Read/write port n
Down Arrow - Stop ALL sounds (turns of sound ports)
Music Processor Commands (Astro Basic ONLY)
MO - Master Oscillator Freq.
NM - Noise Mode
NV - Noise Volume NM must be 1
VR - Vibrato Range NM must be 0
VF - Vibrato Frequency
TA TB TC - Tone A,B or C
VA VB VC - Volume A,B or C
B) Appendix - Changes/Updates
Version 3.3 (May 14, 2008)
- Added Section: "Restoring the Astrocade's Gold Trimming"
by Marty Goldberg
Version 3.24 (May 3, 2007)
- Fixed the Z80 clock speed. It was listed as 3.579 MHz. It is now
set to the proper speed: 1.789 MHz. For more information about how
this fix came about, see the Astrocade Message board thread titled
"Z80 clock speed." More specifically, read Frank Palazzolo's
reply in message number 3912 and Tony Miller's reply in message
Version 3.23 (March 21, 2006)
- Added carriage returns after 79 characters
Version 3.22 (June 10, 2003)
- Added 280 Zzzap cartridge- woops...
Version 3.21 (June 8, 2003)
- Added Blue Ram PS reference
Version 3.2 (June 3, 2003)
- Revamped BASIC memory map
- Completely redid the BASIC Games section
- 'Notes on getting dead carts to work' by Ward Shrake
- Completely revamped the 'BASIC Cartridges' section
- Reintroduced the 'Astro Basic Command Listing' that was included in the
original and early version of the text FAQ.
- Added mention of "Power Transformer Substitution" to "AC Adapter
- Completely rewrote "1.8K available of 4K RAM" section
- Added "Astro Basic Memory Map" section
- Added sub-sections to "Astrocade Maintenance/Repair" section:
- "Writing Bally Astrocade Repair Procedures #1"
- "Identifying the Bally/Astrocade On-Board ROM"
- "How to Repair Bent and Broken Legs on Computer Chips"
- Added thanks to: William J. Culver,
Version 3.1 (Dec. 17, 2001)
- Broke Contents into prefix, body and appendix sections
- Added 'Changes/Updates' section
- Integrated 'People of Note' in new 'Appreciation' section
- Updated and added notes to 'Appreciation' section
- 'MESS Emulation' section updated
- 'About this FAQ' section added
Version 3.0 (Aug. 5, 2001)
- Released by Adam Trionfo and Rob Mitchell
- Released with Lance's consent (thanks!)
- Public release of updated FAQ
- First revision since November 24, 1996
Version 2.5 (Feb. 3, 2001)
- Non-public release
- Distributed only for review/proofreading/suggestions
Version 2.0h (Nov 24, 1996)
- HTML Version of the FAQ by Lance F. Squire
- Pictures added
- Links added
Version 1.8 (Jun. 22, 1996)
- Last text version by Lance F. Squire
Version 1.0 (Jun. 3, 1995)
- First text version of FAQ by Lance F. Squire
C) Appendix - What needs to be added or updated
As of June 2, 2003:
-- Update and expand "What is a Bally/Astrocade." Re-check information.
-- Add an "Astrocade Newsletters" section. List all programs released in each
-- About WAV format information?
-- Who owns the Bally trademark and software rights?
-- Find an AC adapter replacement solution.
-- Mention public domain release of some cartridges and cassette tapes.
-- Finish Software FAQ of cassette software.
-- Add specific Astrocade information to the "Heatsink" section.
D) Appendix - Appreciation
Astrocade - All feedback and for making this interesting
Bob Colbert - For working on the design of 'ASTROWAV'
Brett Bilbrey/ - Donating 'ICBM Attack' and 'Treasure Cove' cartridges
Spectre Systems into the public domain
Glenn Saunders - Keeping his eyes open in the Bally and VCS community
- Typing for the 'Nutting Manual Project'
Lance Squire - Writing the original version of the Astrocade FAQ
- Typing for the 'Nutting Manual Project'
- Continued support with Astrocade projects
Michael White - Astrocade documents
- Astrocade ROMs
- History and perspectives of Astrocade and Bally from
hard-core fan/user/programmer perspective
- Phone conversations
- Inspiration (those talks on the phone can be like a
- Writing cartridge lists, hardware compilations, and more
Raymond Carlsen - Creating the "Heatsink" article. His C-64 FAQ is
applicable to the Astrocade.
Robert Fabris - Editor of the Arcadian newsletter
- Permission to post all back issues to Bally Alley
Rob Mitchell - Co-editing FAQ (2.x - 3.0)
- Sending all issues of Cursor (and more) for archival
- Typing for the 'Nutting Manual Project'
- Lending cart for archival
Tom Defanti - Sending four envelopes of Z-Grass Information
Ward Shrake - Creating the Bally Astrocade Multicart
- Multicart FAQ:
- Astrocade ROM Archival
- Writing 'Notes on Removing Cartridge Labels'
- Writing 'Notes Regarding Cart Case Repairs'
- Writing 'Notes on Getting Dead Carts to Work'
- Writing "How to Repair Bent and Broken Legs on
- Countless other reasons, among which are rides to two
SC3 meetings that are hard to forget (with good reason)
- Finding and posting relevant hardware information that,
though not Astrocade specific, is very useful to
William J. Culver- Writing Bally Astrocade Repair Procedures #1
People of Note:
Bob Ogdon - Programmed 'Bally Pin,' 'Brickyard/Clowns,' 'Incredible
Wizard,' and 'Football.'
Brett Bilbrey - For writing the three voice music routine, the only 256
Dave Nutting - Dave Nutting Associates (designed the Astrocade for Bally)
- Wrote 'Handbook of Hardware & Software, also known
as the 'Nutting manual.'
George Moses - For continuously poking around with the Bally's sound chip
- Writing various music makers & other programs for the
Jay Fenton - Creator of the Bally BASIC cartridge.
Scot Norris - Credited with most of the music & sound effects on
E) Appendix - Closing
All of the information in this FAQ is as accurate as possible. If there are
any errors, omissions or anything else of note that belongs here, then please
let us know so we can expand and enhance this FAQ.