HeadlinesBriefing favicon HeadlinesBriefing.com

ZX Spectrum 1-Bit: Acordes, PCM, PWM

Hacker News •
×

Como parte da turnê do ZX Spectrum, implementei rotinas para tocar tons simples através do beeper de 1 bit. Inspirado em trabalhos anteriores no Apple II, esses experimentos levaram o hardware simples ao limite. Embora replicar técnicas avançadas de alto-falante de PC tenha se mostrado difícil, houve progresso significativo no som multicanal, especificamente tocando acordes através do alto-falante de 1 bit.

O autor também recriou a reprodução simples de PCM de 1 bit e experimentou técnicas de Modulação por Largura de Pulso (PWM). Tanto PCM quanto PWM informam o trabalho de reprodução de acordes. Os esforços desta semana incluíram falhas notáveis junto com sucessos, documentando os desafios da emulação de áudio de baixa fidelidade.

A Modulação por Código de Pulso (PCM) envolve amostrar uma forma de onda como valores entre 0 e um máximo, com a taxa de amostragem determinando o controle de frequência. O Spectrum pode acessar a memória a aproximadamente 1 MHz, permitindo reprodução de 16 kHz mesmo sob controle de CPU com contagem de ciclos. No entanto, como o alto-falante está apenas ligado ou desligado, a qualidade de áudio se assemelha à distorção de estourar um alto-falante com amplificação.

Usando o clock de 3,5 MHz do 48K, dividindo por 16.000 amostras por segundo, revela-se 219 ciclos entre escritas. As amostras consomem cerca de 2 KB por segundo, apertado em um sistema de 48K mas gerenciável. O PWM promete maior qualidade de áudio variando o comprimento do pulso para indicar a força do sinal, embora limitações físicas do alto-falante introduzam latência.

Diferentes modelos de Spectrum tinham velocidades de CPU ligeiramente diferentes; o 48K rodava a 3,5 MHz fixo para contagem de ciclos.