Inside the CPC: Gate Array Graphics and AY Sound
Explain video modes, palette, sound chip and the cost of software-driven effects.

Inside the CPC: Gate Array Graphics and AY Sound
The mid-1980s saw a boom in the home computer market, with manufacturers vying for dominance in living rooms and bedrooms across the globe. Among the notable contenders was Amstrad, a British company that entered the fray with its innovative CPC (Colour Personal Computer) range. Launched in 1984, models like the CPC 464 and CPC 6128 stood out for their integrated design, often bundled with a monitor and built-in tape deck or disk drive. Beyond their all-in-one appeal, the CPC's internal architecture, particularly its custom Gate Array chip and the versatile AY-3-8912 sound generator, profoundly shaped the gaming experience, offering both opportunities and challenges for developers of the era.
The Visual Canvas: Gate Array Graphics
At the heart of the Amstrad CPC's visual capabilities was the custom-designed Gate Array. This Application-Specific Integrated Circuit (ASIC) was responsible for a multitude of system functions, including memory arbitration and, critically, the generation of the video signal. It acted as the bridge between the Z80 CPU and the display, dictating the graphical modes available to programmers.
The CPC offered three primary screen modes, each representing a distinct trade-off between resolution and color depth:
- Mode 0: This mode provided a resolution of 160x200 pixels with 16 simultaneous colors. While visually "chunky" by modern standards, it allowed for vibrant and colorful graphics, often utilized for arcade-style games where bold visuals were paramount.
- Mode 1: A popular choice for many games, Mode 1 offered a resolution of 320x200 pixels with 4 simultaneous colors. This mode struck a balance, providing greater detail than Mode 0 while still allowing for a reasonable color palette to define characters and environments.
- Mode 2: The highest resolution mode, offering 640x200 pixels but with only 2 simultaneous colors (typically black and white). While excellent for text-based applications or monochrome graphics, it was less frequently employed for color-rich video games due to its severe color limitation.
Crucially, the colors displayed in these modes were chosen from a larger, fixed palette of 27 possible colors. The Gate Array allowed developers to select any of these 27 colors for the 16, 4, or 2 available slots in their chosen screen mode. Each of the 27 colors was defined by 3 bits, controlling the intensity of Red, Green, and Blue components (allowing three levels: off, half, or full for each). This system meant that while the total number of colors on screen at any one time was limited by the mode, programmers had a relatively broad spectrum to choose from when defining their game's aesthetic.
A Symphony of Silicon: The AY-3-8912 Sound Chip
While graphics set the visual tone, sound provided the atmosphere and excitement. The Amstrad CPC distinguished itself from many of its contemporaries by incorporating the General Instrument AY-3-8912 Programmable Sound Generator (PSG). This dedicated sound chip offered capabilities far beyond the simple "beeper" sounds found in some other 8-bit machines.
The AY-3-8912 featured:
- Three independent tone channels, each capable of generating square wave sounds across a wide frequency range.
- A dedicated noise generator channel, which could be mixed with the tone channels to create percussive effects, explosions, or environmental sounds.
- Individual volume control for each of the three tone channels.
- A hardware envelope generator, allowing for more complex sound shapes such as fades, attacks, and decays, essential for realistic instrument emulation or nuanced sound effects.
This sophisticated sound hardware enabled game developers to craft multi-part musical scores, distinct sound effects, and more immersive audio experiences. From driving soundtracks to subtle ambient noises, the AY-3-8912 allowed the CPC to deliver a richer auditory landscape, significantly enhancing gameplay.
The Programmer's Burden: The Cost of Software-Driven Effects
Despite the CPC's robust Gate Array and capable sound chip, developers faced significant challenges, particularly concerning performance. One of the most impactful limitations was the absence of hardware sprites. Unlike some other systems of the era, the CPC's Gate Array did not provide dedicated hardware support for moving graphical objects independently of the background. This meant that every animated character, enemy, or projectile had to be drawn and erased by the Z80 CPU, pixel by pixel, in software.
This software-driven approach incurred a substantial CPU overhead. The Z80 processor, typically running at 4 MHz, had to dedicate precious cycles to:
- Copying pixel data for objects from memory
READ THE HISTORY.
PLAY THE FUTURE.
Free retro-inspired games from Pause Play Games.
▶ PLAY FREE GAMES