HeadlinesBriefing favicon HeadlinesBriefing.com

ZX Spectrum 1-Bit : Accords, PCM, PWM

Hacker News •
×

Dans le cadre de la tournée ZX Spectrum, j'ai implémenté des routines pour jouer des tons simples via le beeper 1-bit. Inspirés par des travaux antérieurs sur l'Apple II, ces expériences ont repoussé les limites du matériel simple. Bien que la réplication de techniques avancées de haut-parleur PC se soit avérée difficile, des progrès significatifs ont été réalisés en son multicanal, notamment pour jouer des accords via le haut-parleur 1-bit.

L'auteur a également recréé une lecture PCM 1-bit simple et expérimenté des techniques de Modulation de Largeur d'Impulsion (PWM). Le PCM et le PWM informent tous deux le travail de lecture d'accords. Les efforts de cette semaine ont inclus des échecs notables aux côtés des succès, documentant les défis de l'émulation audio basse fidélité.

La Modulation de Code d'Impulsion (PCM) implique d'échantillonner une forme d'onde en valeurs entre 0 et un maximum, le taux d'échantillonnage déterminant le contrôle de fréquence. Le Spectrum peut accéder à la mémoire à environ 1 MHz, permettant une lecture 16 kHz même sous contrôle CPU à cycles comptés. Cependant, comme le haut-parleur n'est jamais que allumé ou éteint, la qualité audio ressemble à une distorsion de griller un haut-parleur par amplification.

En utilisant l'horloge 3,5 MHz du 48K, divisée par 16 000 échantillons par seconde, on obtient 219 cycles entre les écritures. Les échantillons consomment environ 2 Ko par seconde, serré sur un système 48K mais gérable. Le PWM promet une meilleure qualité audio en variant la longueur d'impulsion pour indiquer la force du signal, bien que les limitations physiques du haut-parleur introduisent de la latence.

Différents modèles de Spectrum avaient des vitesses CPU légèrement différentes ; le 48K tournait à 3,5 MHz plat pour le comptage de cycles.