AY-3-8910
Le processeur sonore AY-3-8910 est un générateur de son programmable (GSP) des années 1980 produit par General Instrument[1]. Plusieurs versions ont été dérivées, comme les AY-3-8912, AY-3-8913[2] et AY-3-8914[1], ainsi que le YM2149F du constructeur japonais Yamaha[3]. Il comporte trois voix par oscillateurs commandés en tension (OCT), dans le but de produire de la musique, plus une quatrième voix spécialisée dans le bruitage.
Il équipe principalement des ordinateurs 8 bits de l'époque comme l'Amstrad CPC, le MSX (la version de Yamaha était souvent utilisée), l'Oric Atmos[4]. Le Vectrex était équipé d'un AY-3-8912 et le ZX Spectrum128 était également équipé d'un processeur sonore de cette famille[5].
Description
L'AY-3-8910 est principalement un automate fini, dont les états sont définis par une série de 16 registres 8-bit. Il est programmé autour d'un bus 8-bit, utilisé à la fois pour l'adressage et pour les données, en commutant une de ses broches externes. Une configuration de cycle typique, commence par passer le bus en mode adressage, sélectionne un registre, puis commute en mode données pour modifier le contenu de ce registre. Ce bus est implémenté nativement sur les microprocesseurs de General Instrument de cette époque, mais il a besoin d'être recréé par des unités logiques d'appoint ou à l'aide d'adaptateur d'interface additionnels, comme le MOS Technology 6522 (en), lorsqu'il est utilisé avec des microprocesseurs alors courants, tels que les MOS Technology 6502 et Zilog Z80.
Les 4 bits de poids faible du registre R13 du bloc de contrôle d'amplitude, permettent de contrôler l'enveloppe du son, mais n'en permettant que 10, car seul le bit b3 est pris en compte lorsque B4 est à 0 (2 + 2³ = 10)[2] :
- B4 - Continue (continue)
- B3 - Attack (attaque)
- B2 - Alternate (alterne)
- B1 - Hold (conserve)
Utilisations ultérieures
Dans les années 2010, il est toujours possible de le faire[1] fonctionner avec une carte de type Arduino ou compatible[6].
Émulateurs et lecteurs logiciels
Parmi les émulateurs logiciels de ce générateur de son programmable, on peut citer le L'AY-3-8910/12 Emulator, le ZX Spectrum Computer Sound Chip Emulator[3]. Le format de fichier .AY peut être lu par différents lecteurs audios spécialisés. Le lecteur Aylet est un logiciel libre avec interface GTK+ et ncurses, il existe DeliAY pour Amiga, AYplay our MSDOS, SpecAY pour ZX Spectrum et différents autres lecteurs pour l'API Windows 32 bits[7].
L'émulateur MAME possède également un émulateur de ce processeur sous licence libre de type BSD clause 3, appelé AY8910 afin d'apporter une émulation complète à différents systèmes. Il émule la série de General Instrument AY-3-8910 et de Yamaha YM2149[8].
Références
- (en) « AY-3-8910, AY-3-8912, AY-3-8913, AY-3-8914 »
- (en) « General Instruments - AY-3-8910, AY-3-8912, AY-3-8913 Programmable Sound Generator », sur http://cpctech.cpc-live.com
- (en) « ZX Spectrum Computer Sound Chip Emulator », sur Bulba.untergrund.net
- (en) « AYcog v0.8 »
- (en) « Project AY », sur World of Spectrum.org
- (en) « Update on AY-3-8910 schematic », sur 986-Studio,
- (en) « AY Players », sur World of Spectrum
- (en) « mame/src/devices/sound/ay8910.h », sur Github
Bibliographie
- (de) « Soundchip GI AY-3-8910 », sur privatfrickler.de Schéma complet du circuit et quelques exemples d'applications.