Chips › I/O & support › Custom & glue logic › Amstrad gate array
Amstrad gate array
1984
Amstrad's custom gate array handling video timing, memory paging and interrupts in the CPC home computers.
Machines
Operating systems
Emulators
| Emulator | Type | License | Site |
|---|---|---|---|
| ACE-DL | downloadable | Freeware | Website ↗ |
| Arnold | downloadable | Freeware | Website ↗ |
| CPCBox | online | Freeware | Website ↗ |
| CPCemu | downloadable | Freeware | Website ↗ |
| Caprice32 | downloadable | GPL-2.0 | Website ↗ |
| JavaCPC | downloadable | Freeware | Website ↗ |
| Roland | online | Freeware | Website ↗ |
| Sugarbox | downloadable | GPL-3.0 | Website ↗ |
| WinAPE | downloadable | Freeware | Website ↗ |
| Xcpc | downloadable | GPL-2.0 | Website ↗ |
Reference & documentation
External technical references for programming Amstrad gate array and for writing emulators.
| Resource | Type | Notes |
|---|---|---|
| Gate Array interrupt counter - Grimware ↗ | Interrupt list | 6-bit HSync/VSync counter, 300Hz interrupt generation |
| Gate Array ROM/RAM banking - Grimware ↗ | Memory map | RMR/MMR ROM paging and RAM banking config |
| Gate Array and ASIC Pin-Outs - CPCWiki ↗ | Pinout | Full pinouts for 40007/40008/40010 and ASIC |
| Amstrad CPC KiCad Symbols - Bread80 ↗ | Pinout | KiCad pinout symbols for 40007/40008/40010 gate arrays |
| Amstrad CPC Gate-Array (cpctech) ↗ | Programming | Register programming, modes, ROM paging, asm examples |
| Notes on Amstrad CPC CRTC and Gate Array ↗ | Programming | Video timing, memory contention, mode pixel formats |
| Gate Array - Grimware Documentation ↗ | Reference | Definitive technical reference: PENR/INKR/RMR/MMR registers, timing |
| Gate Array - CPCWiki ↗ | Reference | Versions 40007/40008/40010, functions, quirks overview |
| AMSGateArray - decapped Verilog & schematics ↗ | Schematic | Decapped 40010/40007 schematics, CPLD Verilog reimplementation |
| am40010.h - floooh/chips emulator ↗ | Source | Cycle-accurate C 40010 gate array emulator source |
| AMSGateArray Verilog core ↗ | Source | Verilog 40010 model validated on real hardware |