HeadlinesBriefing favicon HeadlinesBriefing.com

ZX Spectrum 1-Bit: Acordes y PWM en Beeper

Hacker News •
×

Como parte de la gira de ZX Spectrum, implementé rutinas para reproducir tonos simples mediante el beeper de 1 bit. Inspirado en trabajos anteriores en el Apple II, estos experimentos llevaron al límite el hardware simple. Aunque replicar técnicas avanzadas de altavoz de PC resultó difícil, se logró un progreso significativo en sonido multicanal, específicamente reproduciendo acordes a través del altavoz de 1 bit.

El autor también recreó la reproducción simple de PCM de 1 bit y experimentó con técnicas de Modulación por Ancho de Pulso (PWM). Tanto PCM como PWM informan el trabajo de reproducción de acordes. Los esfuerzos de esta semana incluyeron fracasos notables junto a éxitos, documentando los desafíos de la emulación de audio de baja fidelidad.

La Modulación por Código de Pulso (PCM) implica muestrear una forma de onda como valores entre 0 y un máximo, donde la tasa de muestreo determina el control de frecuencia. El Spectrum puede acceder a memoria a aproximadamente 1 MHz, permitiendo reproducción a 16 kHz incluso bajo control de CPU con conteo de ciclos. Sin embargo, como el altavoz solo está encendido o apagado, la calidad de audio se asemeja a la distorsión de reventar un altavoz con amplificación.

Usando el reloj de 3.5 MHz del modelo 48K, dividiendo por 16,000 muestras por segundo se revelan 219 ciclos entre escrituras. Las muestras consumen unos 2 KB por segundo, ajustado en un sistema de 48K pero manejable. PWM promete mayor calidad de audio variando la longitud del pulso para indicar la fuerza de la señal, aunque las limitaciones físicas del altavoz introducen latencia.

Diferentes modelos de Spectrum tenían velocidades de CPU ligeramente diferentes; el 48K funcionaba a 3.5 MHz planos para conteo de ciclos.