S-100 Virtual Workbench 탐구: 레트로 컴퓨팅을 위한 디지털 타임머신
개인용 컴퓨터의 초기 시절은 매끄러운 노트북이나 통합형 태블릿이 아니라, S-100 버스의 거칠고 모듈식인 세계로 정의되었습니다. 1970년대의 개척자들에게 컴퓨터는 단일 구매 품목이 아니었습니다. 그것은 패시브 백플레인에 꽂히는 카드들의 집합이었습니다. S-100 Virtual Workbench는 이 촉각적이고 실험적인 컴퓨팅 시대를 다시 불러오는 정교한 브라우저 기반 에뮬레이터로, 사용자가 시대에 맞는 구성 요소 라이브러리에서 자신만의 가상 머신을 조립할 수 있게 해줍니다.
이 프로젝트는 단순한 기능적 에뮬레이터를 넘어선 그 이상의 역할을 합니다. 현대적 PC의 길을 닦은 하드웨어의 디지털 박물관입니다. S-100 버스 아키텍처를 시뮬레이션함으로써, 마이크로컴퓨터의 첫 번째 물결을 정의했던 CPU, 메모리, I/O 컨트롤러 간의 상호작용을 직접 탐구할 수 있는 방법을 제공합니다.
Virtual Workbench의 아키텍처
S-100 Virtual Workbench의 핵심적인 매력은 모듈성입니다. 단일 머신의 정적인 에뮬레이션을 제공하는 대신, 사용자가 구성 요소를 슬롯에 드래그 앤 드롭하여 시스템을 확장하는 물리적 행위를 모방하는 "Card Library"를 제공합니다.
프로세싱 파워: 8080 vs. Z80
Workbench는 그 시대의 가장 상징적인 두 프로세서를 지원합니다:
- Intel 8080: Altair 8800의 기반이 되는 프로세서로, 표준 명령어를 지원하며 메모리 맵드 I/O를 지원합니다.
- Zilog Z80: 8080의 완전한 호환 후속 모델로, 확장 명령어(IX/IY 레지스터)와 더 발전된 인터럽트 모드를 제공합니다.
메모리 및 저장 장치
시스템은 RAM과 ROM 카드의 구성을 모두 허용합니다. ROM 카드는 특히 유연하여, 사용자가 커스텀 바이너리를 업로드하거나 내장된 이미지를 사용할 수 있습니다. 부트-ROM의 동작을 시뮬레이션하기 위해, 에뮬레이터는 특정 I/O 포트에 쓰기를 수행할 때 주소 공간에서 ROM을 페이지 아웃(page out)할 수 있는 "phantom port" 기능을 포함하고 있습니다.
저장 장치는 다양한 역사적 구성을 충족하기 위해 여러 에뮬레이션된 컨트롤러를 통해 처리됩니다:
- MITS 88-DCDD: 원래의 Altair 8800에서 사용된 정통 하드-섹터 플로피 디스크 컨트롤러입니다.
- WD1793 FDC: IMSAI 8080 및 Cromemco 시스템에서 사용된 업계 표준 컨트롤러입니다.
- Generic FDC: CP/M 시스템을 위해 특별히 설계된 소프트웨어 에뮬레이션 컨트롤러입니다.
비주얼 및 I/O
커맨드 라인을 넘어, Workbench는 초기 컴퓨터의 독특한 시각적 정체성을 부여했던 특수 하드웨어를 에뮬레이션합니다:
- Cromemco Dazzler: 시스템 RAM의 프레임 버퍼로부터 합성 비디오 신호를 생성하는 컬러 그래픽 카드입니다.
- Processor Technology VDM-1: 메모리 맵드 ASCII 텍스트 디스플레이 카드입니다.
- MITS 88-2SIO: Motorola MC6850 ACIA를 기반으로 하는 듀얼 시리얼 I/O 카드이며, 필수적인 시스템 콘솔을 제공합니다.
역사를 생생하게 구현하다
에뮬레이터는 Altair 8800과 같은 전설적인 머신에 대한 프리셋을 포함하고 있어, 사용자가 이러한 시스템이 어떻게 구성되었는지 정확히 볼 수 있게 해줍니다. 인터페이스에는 "Bus Analyzer"와 "Bus Trace"가 포함되어 있어, 주소 및 데이터 라인뿐만 아니라 MEMR (Memory Read), MEMW (Memory Write), IOR (I/O Read), IOW (I/O Write)와 같은 제어 신호에 대한 실시간 가시성을 제공합니다.
현대 사용자에게 이것은 초기 컴퓨팅의 "bare metal" 현실에 대한 창을 제공합니다. Hacker News의 한 사용자가 회상한 것처럼, 빨간색 LED와 복잡한 복잡한 배선으로 구성된 Altair 8800을 보는 경험은 그 시대의 아이들에게는 압도적일 수 있었습니다:
"내 아버지는 제철소의 전기 엔지니어였습니다... 나는 그것을 몇 분간 바라보았습니다. 그리고 생각했습니다. 도대체 이딴 것을 가지고 무엇을 해야 한다는 말인가? ... 다시 시간을 되돌려 다시 시도해보고 싶습니다."
도전 과제 및 성찰
S-100 Virtual Workbench는 기술적 향수ri의 승리이지만, 동시에 초기 컴퓨팅의 가파른 학습 곡선을 강조합니다. 일부 사용자는 시스템과 상하는한데, 특히 ED (editor)를 사용하거나 초기 소프트웨어의 로직을 이해하는 데 어려움을 겪었다고 언급했습니다.
또한 사용자 인터페이스의 접근성에 대한 비판도 있습니다. 일부 사용자는 오래된 터미널의 미학을 재현하기 위해 의도된 어두운 배경에 어어운 글자색(dark-on-dark)의 색상 구성이 읽기 어렵다고 지항합니다. 하지만, IMSAI-8080의 "tactile flick-click"을 기억하는 소수의 열성적인 사용자들에게 이 에뮬레이터는 엄청난 즐거움을 주는 원천입니다.
궁극적으로, S-100 Virtual Workbench는 초기 DIY 컴퓨팅의 "Ship of Theseus"적 특성을 증명합니다. 사용자는 디지털 시대의 바로 그 구성 요소들을 가지고 실험할 수 있으며, 테크놀로지의 현대적 브라우저를 1970년대 개척자들의 작업대(workbench)로 변환합니다.