게임 Hacker News · 2026-09-29

삑삑이 스피커 달린 80년대 구형 컴으로 고음질 디지털 오디오 뽑아내기 성공함

핵심 요약
  • 한 개발자가 단순 1비트 비퍼 스피커만 탑재된 1980년대 컴퓨터 ZX 스펙트럼에서 고음질 디지털 오디오를 재생하는 프로젝트를 완성했습니다.
  • 하드웨어 타이머가 없는 시스템 특성상 순수 어셈블리어로 CPU 클록 사이클을 1마이크로초 단위까지 정밀 제어해 아날로그 파형을 흉내 냈습니다.
  • 실기 하드웨어와 에뮬레이터에서 검증을 마쳤으나, 램 용량을 전부 소모하고 볼륨이 작아 실용성보다는 극한의 하드웨어 해킹 성과로 꼽힙니다.
요약 1980년대 영국의 전설적인 고전 홈 컴퓨터인 ZX 스펙트럼(ZX Spectrum)에는 소리를 내기 위한 단순한 1비트 '비퍼(beeper)' 스피커만 달려 있었습니다. 일반적으로는 삑삑거리는 단순 비프음만 낼 수 있는 하드웨어였지만, 한 개발자가 정밀한 소프트웨어 타이밍과 어셈블리어 제어를 통해 고음질 디지털 오디오(PCM 음성)를 재생하는 데 성공한 과정을 공유했습니다. 원리는 회로의 정전용량(커패시턴스)과 스피커 콘의 물리적 질량을 이용하는 것입니다. 1비트 신호가 0에서 1로 완전히 바뀌거나 스피커 콘이 완전히 움직이기 전에 신호를 정밀하게 차단(펄스 폭 변조 방식)하면 섬세한 아날로그 음파를 흉내 낼 수 있습니다. 1990년대 초 도스(DOS) PC 스피커의 경우 독립적인 하드웨어 타이머 칩이 있어 이러한 펄스 폭을 조절하기 쉬웠으나, ZX 스펙트럼에는 이런 전용 타이머가 전혀 없어 CPU 클록 사이클 단위로 모든 지연 시간을 직접 계산해 루프를 짜야 했습니다. 개발자는 C언어로는 엄격한 타이밍과 레지스터 압박을 감당할 수 없어 순수 어셈블리어로 두 차례의 전면 재작성을 거쳤다고 밝혔습니다. ZX 스펙트럼의 약 3.5MHz CPU 환경에서 8kHz 샘플링 레이트(약 125마이크로초, 438사이클 주기)에 맞춰 펄스 폭과 루프 사이클을 정밀하게 맞추는 데 성공했습니다. 이 구현은 실기 48K 스펙트럼 및 최신 복각 하드웨어인 Omni 128, 그리고 각종 에뮬레이터(Fuse, EightyOne 등)에서 정상 작동이 검증되었습니다. 다만 램 용량을 거의 전부 소모하고 별도 앰프 없이는 소리가 매우 작아 실용성은 제한적이지만, 극한의 하드웨어 해킹 사례로 주목받고 있습니다.
Sponsored · 광고