# Amstrad CPC

L'Amstrad CPC est un ordinateur personnel 8 bits produit par Amstrad dans les années 1980. CPC est le sigle de Colour Personal Computer, « ordinateur personnel couleur », même si une version dotée d'un moniteur monochrome était disponible.
L'Amstrad CPC fut très populaire, surtout en France. Certaines sources indiquent environ 1,5 million de machines installées en Europe (dont 600 000 en France, 400 000 au Royaume-Uni, et 300 000 en Espagne) à la fin de l'année 1988, tandis que d'autres chiffres font état de ventes totales approchant les trois millions d'exemplaires dans le monde, dont environ un million en France.

## Historique

Ce projet a débuté en 1983. Amstrad, société britannique produisant du matériel HiFi dirigée par Alan Michael Sugar (souvent abrégé en « AMS »), est à la recherche d'un nouveau créneau. AMS voit une place vacante dans le marché de la micro-informatique de l'époque : jusque-là, en effet, elle s'adressait avant tout à des hobbyistes, passionnés ou susceptibles de le devenir (d'où des ordinateurs peu chers, mais en kit ou avec trop de branchements à réaliser pour le grand public, ou des appareils à la pointe de la technique, mais très chers et encore à moitié expérimentaux).
Alan Sugar choisit de s'adresser à une clientèle résolument familiale, inexpérimentée et sans grands moyens : il décide donc de vendre un ordinateur dont l'installation est la plus simple possible, et qui soit directement utilisable même par un profane dès la mise sous tension (d'où le moniteur inclus et le nombre de câbles remarquablement réduit pour l'époque), le tout pour le même prix qu'un Commodore 64 sans écran. Le fait de fournir un moniteur couleur ou monochrome avec l'ordinateur pour un prix abordable participa grandement au succès de ces ordinateurs, les modèles concurrents nécessitaient souvent de monopoliser le téléviseur du salon. De plus, pour rester dans cette logique de clientèle familiale, Amstrad va organiser ses points de vente uniquement sur la base de la grande distribution.
En 1984 sort l'Amstrad CPC 464, comprenant 64 ko de mémoire vive, vendu avec un écran monochrome (vert) ou un écran couleur et, chose inhabituelle à l'époque, un lecteur de cassette intégré. L’Amstrad CPC 464 connaît dès sa sortie un immense succès, surtout en France, se vendant à plus d'un million d’exemplaires.
En 1985 sortent successivement l'Amstrad CPC 664 où le lecteur de cassette est remplacé par un lecteur de disquette, puis l'Amstrad CPC 6128, où la mémoire vive est portée à 128 ko. Les ordinateurs familiaux à disquette étaient également fournis avec des disquettes contenant le système d'exploitation CP/M, encore concurrent de MS-DOS, qui permettait d'utiliser un certain nombre de logiciels professionnels comme Multiplan, DBase ou Turbo Pascal.
En 1990, voyant les ventes de ces CPC décliner, Amstrad tenta de reprendre le marché avec une version plus évoluée du CPC (l'Amstrad plus) ainsi qu'une console de jeux (la GX-4000) (voir Tilt no 82) : 4096 couleurs, sprites gérés par le matériel, canaux DMA pour le son, port cartouche, nouveau design. Ces machines n'avaient cependant plus assez d'atouts face aux ordinateurs Amiga de Commodore et autres 520ST d'Atari de l'époque et l'arrivée des consoles de jeux vidéo de quatrième génération telles que la Mega Drive. La gamme Amstrad plus et GX-4000 disparut rapidement des rayons.
Frise chronologique de production des différents modèles :

## Gamme et spécifications
### Spécifications techniques de l'Amstrad CPC

Ces machines sont toutes équipées d'un microprocesseur Zilog Z80 à 4 MHz (sauf les Amstrad Plus qui possédaient un Z80 à 4,444 4 MHz, mais qui n'apportaient aucun gain de vitesse, cette augmentation de fréquence servait pour les possibilités supplémentaires implantées dans l'Amstrad Plus).
Étant donné que le CPC partage la mémoire avec le contrôleur de l'écran (CRTC), le processeur doit attendre pendant les périodes de lecture du CRTC, entraînant le léger ralentissement de certaines instructions. L'IPC du Z80 est faible et les instructions sont toutes sujettes à des cycles d'attente pour laisser le contrôleur vidéo lire la mémoire partagée avec le Z80. En conséquence les Amstrad CPC ne peuvent exécuter au maximum qu'un million d'instructions par seconde.
L'Amstrad CPC est équipé d'un générateur de son programmable (ou processeur sonore), l'AY-3-8912 fabriqué par General Instrument qui permet de décharger le Z80 de la gestion du son. Ce processeur 8 bits permet de créer des sons sur 3 canaux et possède une sonorité caractéristique des machines de l'époque (il équipe également le MSX, l'ORIC et les ZX Spectrum 128, +2 et +3). Ce son numérique se différencie des méthodes de création de sons avec les ordinateurs actuels (restitution d'ondes sonores, de boucles ou d'instruments préenregistrés) car il ne permet de programmer que des signaux électriques carrés afin de produire un son et de lui appliquer divers effets. Le résultat est un son purement électronique appelé CHIPSOUND.

### Résolutions graphiques avancées

Le contrôleur vidéo de l'Amstrad CPC est facilement programmable, même en Basic. On peut ainsi réduire ou augmenter la taille de l'écran. La plupart des jeux commerciaux réduisent la résolution standard de 80 à 64 octets pour faciliter les calculs d'affichage et gagner en vitesse. Au contraire, certains programmes graphiques augmentent la résolution affichable pour utiliser toute la hauteur de l'écran (par exemple Arkanoid), toute la largeur (Super Cauldron) ou même tout l'écran (page d'intro de Crazy Cars II). Il est aussi possible de mélanger les résolutions entre elles, technique courante dans le jeu vidéo, pour avoir un HUD en haute résolution et un écran de jeu en basse résolution avec plus de couleurs.
Les résolutions maximales sont:
* 192 x 272 en 16 couleurs (Mode 0 en Basic : 20 colonnes x 25 lignes de caractères)
* 384 x 272 en 4 couleurs (Mode 1 en Basic : 40 colonnes x 25 lignes de caractères)
* 768 x 272 en 2 couleurs (Mode 2 en Basic : 80 colonnes x 25 lignes de caractères)

### Les Amstrad CPC originaux

Le premier chiffre dans le nom des CPC indique le type du système de stockage : 4 pour un stockage sur cassettes, 6 pour un stockage sur disquettes 3". Les chiffres suivants indiquent la quantité de RAM.
* Amstrad CPC 464 (Arnold 1) : lecteur de cassette, 64 ko de RAM
* Amstrad CPC 472 (Arnold 1) : lecteur de cassette, 72 ko de RAM (modèle spécifique à l'Espagne)
* Amstrad CPC 664 (Arnold 2) : lecteur de disquette, 64 ko de RAM
* Amstrad CPC 6128 (Arnold 3 puis 4) : lecteur de disquette, 128 ko de RAM (dont 64 ko de mémoire paginée)
* Amstrad 464 Plus (Arnold 5) : lecteur de cassette et port cartouche, 64 ko de RAM
* Amstrad 6128 Plus (Arnold 5) : lecteur de disquette et port cartouche, 128 ko de RAM
* GX-4000 (Arnold 5) : une console de jeux basée sur le hardware de l'Amstrad Plus

### Arnold 4

L'Arnold 4 est d'aspect extérieur identique au CPC 6128 classique mais était beaucoup moins cher à produire avec un circuit imprimé et un ASIC qui réduisaient de façon considérable la taille de la carte mère et le nombre de puces. Si la carte d'un CPC 6128 occupe tout l'espace du boîtier, c'est un 6128 classique. Si au contraire la carte n'occupe environ que les deux tiers de l'espace disponible et laisse vide une partie du boîtier, c'est un Arnold 4.

### CPC472

Le CPC472 est un modèle assez spécial sorti uniquement en Espagne.
Il est créé par le distributeur espagnol sans en informer la maison mère pour contourner une loi espagnole d’août 1985 qui taxe l'importation de tous les ordinateurs familiaux avec moins de 64 ko de RAM
Le distributeur reçoit les CPC464, les modifie (un petit montage qui se met à la place d’une des ROM pour ajouter une puce de 8 ko de RAM) et modifie l’inscription en CPC472.
Cette mémoire supplémentaire est parfaitement inutile car invisible. La ROM utilisé par le CPC472 est la v1.1 identique à celle utilisée sur le CPC664, et la documentation du CPC472 justifie l'inaccessibilité des 8Ko de RAM supplémentaire par le fait qu'ils sont nécessaires aux nouvelles fonctions du BASIC 1.1.
Ceci est faux, puisque le CPC664 n'a pas besoin de mémoire supplémentaire pour utiliser ces fonctions. De plus, la puce mémoire, bien que soudée sur la carte additionnelle n'est pas connectée au reste de la machine.
Quelque temps après, cette loi fut étendue à tous les modèles familiaux.
En janvier 1986, l'Espagne rejoint la CEE et supprime cette taxe d'importation spécifique, le CPC472 n'a alors plus de raison d'être.
Bien qu'Amstrad ait toujours nié être au courant de ce montage, dans son autobiographie Alan Sugar affirme le contraire, indiquant que ce sont les ingénieurs d'Amstrad à Brentwood qui ont conçu la carte additionnelle et inventé la justification de cette mémoire inutilisable.
Une autre loi sortie à la même époque impose que tous les ordinateurs possèdent le caractère Ñ spécifique à la langue espagnole.
Cette loi (restée en vigueur après l'adhésion de l'Espagne à la CEE) n'est pas liée à la création du CPC472, mais est à l'origine des CPC avec un clavier espagnol, dont les premiers exemplaires furent des CPC472 en raison de la concomitance de ces deux lois. Les CPC464 vendus après 1986 et la fin de la taxe sur les ordinateurs de 64k ont conservé leur clavier espagnol.

## Les CRTC

Indépendamment des modèles de la gamme, Amstrad a utilisé des CRTC (Cathodic Ray Tube Controller) provenant de divers fabricants. Même si leurs principales caractéristiques sont identiques, de légères différences existent, dues soit à un bogue dans la puce, soit à un comportement différent de celui spécifié par la documentation. C'est ainsi qu'une démo écrite pour le CRTC 1 peut ne pas s'afficher correctement (ou pas du tout) sur un CRTC 0. En 2008, cinq types de CRTC étaient identifiés :
* CRTC 0 : chipset HD6845S (Hitachi), UM6845 (UMC)
* CRTC 1 : chipset UM6845R (UMC),
* CRTC 2 : chipset MC6845 (Motorola),
* CRTC 3 : ASIC de l'Amstrad plus,
* CRTC 4 : ASIC de l'Arnold 4.
Les numéros de CRTC ont été attribués par des passionnés qui essayaient d'exploiter la machine à son maximum. C’est pourquoi ils ne respectent pas l'ordre chronologique : Le CRTC 4 (ASIC de CPC ancienne génération) est plus ancien que le CRTC 3 (Amstrad plus) parce qu’il n’a été « découvert » qu'après la sortie de l'Amstrad plus. On peut de même remarquer l’existence de deux puces distinctes rassemblées sous l'appellation CRTC 0 : en effet, cette numérotation se fonde sur le fonctionnement des puces, et aucune différence de comportement entre ces deux puces n’a été mise en évidence.

## Les périphériques

De nombreux périphériques étaient disponibles pour le CPC comme :
* une imprimante (DMP 2000),
* des lecteurs de disquettes ou de cassettes
* un joystick (il est possible de brancher deux joysticks simultanément sur le CPC via un adaptateur),
* une souris (d’utilisation peu ergonomique), un lecteur de disquettes externe (modèle DDI-1),
* un synthétiseur vocal (Techni-Musique, avec un excellent rendu en français),
* un scanner (lecteur optique s’interfaçant sur la tête d’impression de l’imprimante DMP 2000),
* un tuner TV (qui permit à beaucoup d’adolescents dans les années 1980 d’avoir pour la première fois un téléviseur dans leur chambre, inutilisable de nos jours depuis que la TNT a remplacé la diffusion analogique)
* des extensions de mémoire externes augmentant de 128 ko la mémoire des CPC 464 et 664 en se branchant sur le port d'extension du CPC. L'interface du lecteur de disquettes externe était alors insérée dans le port de l'extension mémoire.
* une extension de mémoire interne produite par VORTEX qui se branchait à l'intérieur d'un CPC 464, directement sur les emplacements du processeur et du Gate Array. Cette extension avait l'avantage sur les extensions externes d'être invisible depuis l'extérieur. Ces extensions mémoire avaient un intérêt limité car la quasi-totalité des logiciels étaient prévus pour fonctionner avec 64 Ko de RAM afin de conserver une compatibilité entre CPC 464 et 6128.
* le Multiface qui permettait, entre autres, de sauvegarder des instantanés des jeux et logiciels.
* une interface pour la transmission série

## Presse

De nombreux magazines mensuels ou bimensuels ont été consacrés en partie ou en totalité à cette machine. Ceux-ci pouvaient traiter de nombreux sujets comme les jeux, les utilitaires, les périphériques, la programmation, le demomaking, les fanzines, etc. Voici la liste des magazines parus en France (ils sont pour la plupart téléchargeables en version pdf) :
* Amstrad Cent Pour Cent
* Am-Mag
* Amstar
* Amstrad Magazine
* Amstradebdo et PC
* Cahiers d'Amstrad Magazine
* CPC
* CPC Infos
* Logistrad
* Log'Star
* Microstrad
* Runstrad
* Run'Star
* Tilt