Introduction
Following on from the previous article about the various models of Amiga, we will introduce the custom chips and what they do. We will then talk about the three different types of ram (yes you do need to know about this) and a little bit about the Zorro expansion bus. There will also be a discussion about really basic troubleshooting – the type of troubleshooting without a soldering iron. We will not discuss video output in this article. It’s such an important topic that the whole of the next article is dedicated to it.
This edition does get a bit technically heavy but we have tried to keep jargon to a minimum and explain terms that the reader might be unfamiliar with. If anything is unclear do ask questions and we will attempt to answer them.
The Chips
The custom chips are what give the Amiga its graphical power and without them the Amiga would not be. Without getting into too much detail (this IS a beginner’s guide), there are three core chips in each chipset and they handle the chip ram controller and coprocessors, the display output, and sound and ports. There are also various other custom chips in different model machines. While AGA and some ECS machines have 32-bit CPUs the bulk of the graphics chipset including the Blitter is still 16-bit, with video fetches running in 32-bit mode. The chipset ran at 7.1 MHz in all Amigas, regardless of the CPU speed.
Core Chipset
The core chipset functions are carried out by three chips as follows:
OCS/ECS chip | AGA Chip | Function |
Agnus/Fat Agnus | Alice |
DMA controller (controls access to the chip ram by the CPU and custom chips) Contains Copper and Blitter coprocessors |
8362 Denise / 8373 Super Denise |
Lisa | Translates data in chip ram to digital video for output |
8362/8364 Paula | 8364 Paula | Audio, floppy, serial, mouse/joystick. Paula remained electrically identical throughout the life of the Amiga with the only major change being to PLCC (square) for surface mounting. |
A note on Fat Agnus
Agnus underwent various upgrades during her lifespan. The 8361 (NTSC) and 8367 (PAL) found in the A1000 was a 48-pin DIP package like her sisters Paula and Denise, and could address 512 kB of chip ram. She was replaced by the 84 pin PLCC (square) 8370 (NTSC) and 8371 (PAL) in early A500s (up to rev 5) and A2000s (up to rev 4.5), and these two chips can still only address 512 kB of chip ram. The 8370 and 8371 are known as “Fat Agnus” or “Fat Lady” because of the square shape. The 8361, 8367, 8370, and 8371 Agnus chips are all OCS.
Later A500s (rev 6) and A2000s (rev 6.3) and the CDTV had the 8372A ECS Fat Agnus which can address 1 MB chip ram. This chip is pin-compatible with the 8370/8371 and with some minor modification A500* and early A2000 motherboards can be made to address the 512 kB “slow” ram as chip ram instead, bringing the total to 1 MB chip ram. *Performing this modification on A500 rev 3 motherboards is not really minor and it will almost certainly be easier to find a later motherboard.
The A3000 ECS Fat Agnus (8372AB and 8372B) can address 2 MB chip ram is pin-compatible with the 8372A. It is possible to modify A2000 rev6 and A500 rev6 motherboards to address 2 MB ram but it is fairly involved.
The 8375 Fat Agnus found in the A500+ and A600 (also the A500 rev 8 which is just an A500+ with less ram and no RTC) will address 2 MB chip ram but it is not pin compatible with previous versions. The 8375 will not work in an A500 or A2000, and similarly if you have an A500+ don’t try to use the 8371 or 8372 as a spare part; the result for both is a black screen.
“Superchip” boards with the 8375 and the extra 1 MB ram are available for the A500 and A2000. These boards plug into the 8372 Fat Agnus socket and provide the full 2 MB chip ram to the Amiga. It is an easy way to add the extra megabyte of chip ram but they are not cheap, and it is not really worthwhile unless you intend to push ECS to its limits. It may be cheaper to simply buy an ECS machine than expand an OCS machine to 2 MB chip.
A note on Denise
The 8362 Denise in the OCS chipset is directly pin-compatible with the 8373 Super Denise from the ECS chipset and both can be used interchangeably in the A500, A500+, A2000, and CDTV machines. In order to use the enhanced display modes Super Denise requires an ECS Fat Agnus – 8372A or above. Super Denise will still work with OCS Fat Agnus but will be unable to use her superpowers.
Other Custom Chips
There are various dedicated chips in every Amiga except the A1000 which relied on off-the-shelf components to glue everything together. Some of the more important ones are presented in the table below:
Chip |
Found In |
Function |
Complex Interface Adapter (8520) |
All except CD32 |
Interfacing system peripherals (serial, parallel, keyboard) and system timing |
Gary (5718/5719) |
A2000 (5718), A500, A500+, CDTV (5719) |
System address controller gate array |
Fat Gary (5391/5393) |
A3000 (Both), A4000 (5393) |
32-bit version of Gary |
Gayle (391155), AA-Gayle (391242) |
A600, A1200 |
System address controller & IDE/PCMCIA controller, replaces Gary. Note that the A600 Gayle and A1200 AA-Gayle are not compatible. |
Akiko (391563-01) |
CD32 |
System address decoder, CD-ROM (IDE) controller, CIA functions, chunky to planar conversion acceleration. Replaces CIAs and Gayle. |
Buster (5721, 5731) |
A2000 |
Zorro II bus controller |
Super Buster (390539-7, -9, and -11) |
A3000 (rev 7) A4000 (revs 9 & 11) |
Zorro III bus controller (32-bit). Also found on some Commodore expansion cards. |
Budgie |
A1200 |
Logic for trapdoor expansion including fast ram controller, replaces Buster |
There are several other custom chips that have not been mentioned, particularly in the A3000, A4000, and CDTV machines and in expansions such as the A590.
RAM
There are three types of RAM in the Amiga; Chip RAM, Fast RAM, and Slow RAM and all three have their uses.
By the way, a bus is a grouping of lines (wires) that the computer uses to move data around, and there are several in the Amiga. A data bus is a bus where data is moved, and an address bus is a bus that a CPU or chip uses to select the memory address of the data it wants to access.
Chip RAM
The most important type of RAM is the chip ram, so named because the custom chipset has direct access (known as Direct Memory Access or DMA) to it on the chip data bus. This allows the chipset to output graphics and sound (and input from the floppy drive) with minimal supervision from the CPU. Chip ram is controlled by the DMA controller in Agnus or Alice. All graphics and sound data (i.e. data for the chipset) must be available in chip ram otherwise the chipset cannot access it. Maximum chip ram for any Amiga is 2 MB however OCS machines and earlier ECS machines are limited by Agnus to 512 kB and 1 MB respectively.
Given that the CPU does not control the chip data bus it may be blocked from accessing if one of the custom chips is using it, causing a delay. Also, given that the chipset always runs at 7.1 MHz, the CPU in asynchronous Amigas (such as the A3000 or A1200) must slow down to access it.
Chip ram is soldered directly to the motherboard on all Amigas except the A4000 and A4000T, and is in the trapdoor expansion port of the A600 and A500+.
Fast RAM
Fast ram is connected directly to the CPU data bus. This means that the CPU can never be blocked from accessing it (unless another DMA controller is present such as for a hard disk expansion), making for faster program execution speed compared with a chip ram only system. Furthermore fast ram is accessed at whatever speed the CPU is running at, meaning that there is an additional speed gain for asynchronous Amigas such as the A3000 or A1200 (where the CPU runs faster than the chipset).
The downside is that only the CPU has access to fast ram. If the chipset needs access to data in fast ram the CPU must copy it to chip ram first.
Fast ram was found on expansion cards in Zorro slots or the CPU slot, including in hard drive or CD Rom expansions in the side expansion of the A500 and A1000. It is also sometimes in the PCMCIA slot of the A600 and A1200.
Slow RAM
Slow ram is RAM in an OCS or ECS Amiga that is on the chip bus but cannot be addressed by Agnus. This means the ram has the worst of both worlds – the CPU may be blocked from accessing it while the chipset is using the bus, but the chipset cannot access it. It’s certainly not useless though, as it was a relatively cheap and easy way to add ram to the A500 and kept the expansion inside the machine. It needs to be noted that Amiga DOS does not report fast ram and slow ram separately – the Avail command reports both as “fast” ram. In systems where both are present fast ram is used preferentially to slow ram because it has a lower memory address.
Slow ram is usually found in the trapdoor expansion of an A500 (the A501 expansion and various other third party expansions), and some A2000s may have ram configured in this way. It is possible to modify the A500 and A2000 to configure it as chip ram provided a 1 MB Agnus can be found.
Zorro Expansions
Zorro is the name given to the CPU bus expansion ports on the Amiga. It is named after one of the prototype boards in Lorraine, the first prototype Amiga.
The original Zorro bus is found on the A1000, A500, and A500+ and takes the form of an 86 pin male edge connector (i.e. copper traces on the side of the motherboard). It gives external access to the CPU data and address buses and most of the control lines inside the Amiga. On the A1000 the Zorro connector can be found on the right hand side of the machine, while it is on the left in the A500 and 500+. This means that while the connectors are electrically identical most expansions made for the A1000 will not fit on the A500 and vice versa – an expansion for the A500 would be upside down on the A1000.
The Zorro II bus is found in the A2000 and consists of five female 100-pin edge connectors that take expansion cards, known as Zorro-II cards. It is very similar to the Zorro bus except that it is buffered and there is an additional controller named Buster (because it’s the bus controller...) that arbitrates access to the bus for the cards. The Zorro II bus is very similar to the original Zorro bus and it is a fairly simple electronics project to make a Zorro II adapter to allow the A500 to take Zorro II cards.
Zorro III is the 32-bit version of the Zorro bus found in the A3000 and A4000. It is reasonably compatible with Zorro II.
Autoconfig
When a device is added to the system via a Zorro port it usually works straight out of the box, or has a minimal driver requirement to be placed in the startup-sequence. There are no manual jumpers to set and no need for manual configuration in the system like other computers of that age (such as IBM compatibles running MS DOS). The reason for this is Amiga’s AUTOCONFIG protocol. When the machine is switched on or reset the operating system looks at the Zorro bus and asks each card one at a time what resources it requires. It then assigns those resources to the card and tells the card what addresses it needs to listen for. If the card has a driver in ROM it will be copied into RAM for the machine to access. When the OS needs access to the card it just looks at the address it assigned earlier. It’s similar to how PCI cards work in modern computers, but sometimes with the drivers all set up ready to go. So simple! Most of the time.
Real Time Clock Batteries and Surface Mount Capacitors
All of the beige box Amigas and the Amiga 500+ came with onboard real time clocks that kept the time when the computer was powered down. For these to work they require batteries, and in the late 1980s and early 1990s that meant rechargeable Nickel-Cadmium batteries. These batteries worked great for maybe 10-15 years, but the oldest Amiga 2000s are now well over 30 years old and well past the design life of those batteries. When batteries are well past the end of their useful lives, and particularly those that have been sitting in a shed for several years without being switched on, they leak. In a TV remote that is really annoying but it is relatively easy to fix, but on a computer motherboard it can be catastrophic. The leaking goo (it’s alkali not acid) eats the copper traces and it’s not pretty. If you have any of the machines listed below PLEASE open them up and cut the battery off the motherboard before it is too late. If it has already started leaking but the computer still works you can neutralise the goo with vinegar, flush it off with water, then flush the water off with isopropyl alcohol or methylated spirits. If the machine doesn’t start you need to get busy with a continuity meter to find out which traces are broken (and probably replace some IC sockets) or seek the assistance of someone who can help. If you want to continue to use the RTC the battery can be replaced with another NiCd battery (make sure you put the date it was installed on a sticker nearby and replace it every decade) or with a CR2032 button cell and a diode.
Similarly, the surface mounted electrolytic capacitors in later Amigas also leak with age, causing damage to the motherboard. The best way to fix this problem is by replacing the capacitors before they leak, or before they leak too badly, and unfortunately by the time things start going wrong it’s way too late. It’s a reasonably simple job that’s not as difficult as some would have you believe, and in coming months we will be producing a video about how to do it yourself (please practice on an old network switch or router first!). If you are not keen on putting your soldering skills to the test we suggest getting the assistance of someone who has done it before. There are several people in the Brisbane group who can help with getting you started, and there are a few around the Australia and New Zealand who will take on jobs for a fee. Not doing it will destroy your Amiga.
Amigas with NiCd batteries
The A2000, A3000, A3000T, A4000, A500+, and ram expansions for the A500 and A1000 have onboard RTCs with NiCd batteries which need removal. The A4000T and most expansions for the A1200 have a button cell which will generally not leak.
Amigas with SMD electrolytic capacitors:
The A600, A1200, CD32, A4000, and A4000T have surface mounted electrolytic capacitors which require replacement.
If in doubt about either open your Amiga and have a look. Don’t worry about the warranty sticker since Commodore haven’t been around to honour the warranty for over a quarter of a century. Amigas with intact warranty stickers have less value to those who know than machines without them, and most of them are fakes that can be bought off Ebay.
Basic troubleshooting
All 30 year old machines break down, whether they are old cars, old nuclear reactors, or old computers. While a comprehensive troubleshooting guide will not fit in this article, some pointers below may be of assistance. A line has to be drawn somewhere and for this article it’s the point where you reach for the soldering iron. A more comprehensive guide is planned for a future article (outside the Beginner series).
Black Screen
If the machine appears dead – that is, the monitor doesn't do anything at power on (there is no sync) and the power LED remains dim, check the power supply to make sure it has 5 v in the right places. Check that all custom chips are present. If you have a volt meter check that there is +5v on the floppy drive connector or on another VCC rail. If those basics are done and the machine still shows no sign of life it’s time to get the soldering iron out.
If there is no sync but the power LED is bright, check monitor is plugged in and can handle a 15 kHz signal (most VGA monitors cannot). Try connecting the composite (monochrome on A500/A2000) output to a TV and see if you get a picture.
If there is sync but the power LED is not bright the problem is probably inside the Amiga. Try reseating CPU, ROM, CIAs, Paula, or swapping for chips that are known good. Check the IC sockets and if necessary clean them. The ROM especially is prone to this sort of error; it only needs corrosion on one address or data line to cause black screen. If the ROM is v2.0 or 3.1 series and it is installed in a rev 3 or 5 A500 or rev 4 A2000 it needs a jumper cable from pin 31 to pin 1. It may also be bad RAM.
Coloured Screen
If the CPU can execute code the Amiga may output a solid colour to the screen. Note that this is limited to the common issues, there are more colour codes:
Yellow: possibly a bad CPU; more likely to be an error on an expansion card. Try booting the Amiga without the expansion or change the CPU for a known good one.
Red: Bad ROM, try cleaning (or replacing) the socket. If it still doesn’t work swap for a known good ROM.
Green: Chip ram error but before you go swapping out RAM try reseating Gary and Agnus. Also check for battery leakage on the A500+.
Blue: custom chip error, try reseating or changing the chips one by one (this is fairly rare).
Light green: CIA problem, try reseating or changing the CIA chips.
Stuck on a grey: Might be CIA but if you are using KS3.1 wait a minute or so as there is a delay while the OS waits for the hard drive to spin up.
Stuck on white: Check the floppy drive cable orientation. Give it time to realise there is no floppy.
Other issues
Does not boot: Problem might be caused by a bad floppy drive, a bad floppy disk, or a bad hard disk.
Visit from the Guru before booting: possible issue with expansion device.
Machine begins to boot but crashes: The early stage of the startup-sequence might be trying to load a driver for an expansion that isn’t there (this is known to be the case with the ACA 1221 driver). Try booting of a floppy or a different hard disk instead.
Keyboard doesn’t work: check the keyboard connection, orientation, CIA chips. If part of the keyboard works and part does not this is almost certainly a membrane issue, replace the keyboard or the membrane.
Amiga crashes when trying to boot games from floppy: Try using a KS1.2 or 1.3 ROM rather than a 2.0x or 3.1 ROM if you are trying to boot floppy games.
Machine boots but always crashes or dies after a few minutes: Bad capacitors, time for a recap.
OS runs really, really slow: Might be because the ROM is an EPROM that has been erased too many times, making access really slow.
On machines with KS 2.0x or 3.x an early boot menu can be accessed by holding down both mouse buttons while the machine is first switched on. This can allow the user to boot from DF1 if it is suspected that DF0 is not working.
Need more help?
If the above does not help, try asking on the Amiga Retro Brisbane forum. Our local members are usually able to help. If we can’t help, try searching on overseas forums such as the English Amiga Board. The Commodore Amiga page on Facebook can also be useful as there are really smart guys from all over the world.
Diagrom
If you need a diagnostic tool there is one available on a ROM, we recommend Diagrom by John “Chucky” Hertell. It’s extremely good and it’s open source. You’ll need an EPROM programmer to burn the ROM. Note that if you’re at Diagrom stage you’re probably also at soldering iron stage.
http://www.diagrom.com/
Aminet
Lots of information about Amiga Hardware is available in the docs/hard section of Aminet.
http://aminet.net/docs/hard
Acknowledgement
As with instalment 2, the author would like to acknowledge the Big Book of Amiga Hardware, the Amiga Hardware Database, and the Amiga Museum. The colour codes came from Amiga Love.
https://www.bigbookofamigahardware.com/Default.aspx
http://amiga.resource.cx/
http://theamigamuseum.com/
https://amigalove.com/viewtopic.php?t=324
Final Words
Next instalment we will focus on the Amiga video display – and most importantly, the options for displaying a 15 kHz output if you don’t have a monitor that can display it.