Apple II가 교육과 가정에서 자리를 잡아가던 1979년, 애플은 사무실에 팔 기계가 필요했다. 그렇게 나온 것이 Apple III다. 스티브 잡스가 직접 설계에 개입했고, 그 개입이 기계를 망쳤다는 평가를 받는 몇 안 되는 제품이기도 하다.

Apple III는 1980년 11월에 출시된 애플 최초의 본격 비즈니스용 컴퓨터다. 6502를 쓰면서도 128KB 메모리와 전용 운영체제 SOS를 얹어 Apple II보다 한 단계 위를 노렸지만, 통풍구와 팬을 뺀 설계 탓에 열로 칩이 소켓에서 빠지는 고장이 속출했고 초기 14,000대가 리콜됐다. 지금은 실물을 구하기 어렵지만 MAME의 apple3 드라이버로 SOS를 부팅해 볼 수 있다.
잡스가 팬을 뺀 대가
Apple III는 1980년 5월 19일 발표돼 그해 11월에 판매가 시작됐다. 설계 책임자는 Apple II의 디스크 컨트롤러를 만든 Wendell Sander였고, 출시 가격은 구성에 따라 4,340달러에서 7,800달러였다. Apple II가 1,000달러대였던 것과 비교하면 명확히 기업용 가격표다.
문제는 섀시였다. 잡스는 팬이 시끄럽고 우아하지 못하다며 냉각팬을 빼라고 요구했고, 부품을 다 넣기에 빠듯한 크기를 고집했다. 알루미늄 섀시 자체를 방열판으로 쓰는 설계였는데, 밀집된 기판에서 나오는 열을 감당하지 못했다. 열이 오르면 소켓에 꽂힌 칩이 팽창과 수축을 반복하다 조금씩 빠져나왔다. 당시 애플 서비스 센터가 권한 응급 처치가 "본체를 15cm 들었다가 책상에 떨어뜨려 칩을 다시 박아라"였다는 이야기가 괜히 도는 게 아니다.
초기 생산분 14,000대가 리콜돼 교체됐다. 1981년 12월에 전력 요구량을 낮추고 소켓을 개선한 새 로직보드가 나왔지만, 평판은 이미 돌이키기 어려웠다. 원래 모델은 약 75,000대, 1983년의 Apple III Plus까지 합쳐 약 120,000대가 팔린 것으로 알려져 있다. 같은 기간 Apple II가 수백만 대 단위로 팔린 것과 대비된다. 기계는 1984년 4월 24일에 단종됐다.
64KB 벽을 넘긴 뱅크 스위칭
Apple III의 CPU는 1.8MHz로 도는 6502다. Apple II와 같은 계열 칩인데, 6502는 한 번에 64KB까지만 주소를 지정할 수 있다. 128KB(최대 512KB)를 얹은 기계에서 이 한계를 넘기려면 뱅크 스위칭이 필요했다. 메모리를 32KB짜리 덩어리로 나눠 두고, 뱅크 레지스터 값을 바꿔 주소 공간의 한 창(window)에 원하는 덩어리를 끼워 넣는 방식이다.
여기에 Apple III 전용으로 확장된 어드레싱이 더해졌다. 6502의 제로 페이지(zero page, 빠르게 접근하는 첫 256바이트 영역)와 스택을 메모리 어디로든 재배치할 수 있게 레지스터를 두어, SOS가 프로세스마다 다른 영역을 할당하고 뱅크를 갈아 끼우며 128KB를 통째로 관리했다. 8비트 CPU에 운영체제 수준의 메모리 관리를 얹은 셈이라, 구조만 보면 Apple II보다 한참 앞서 있었다.
운영체제 SOS(Sophisticated Operating System)는 커널과 장치 드라이버를 분리한 설계였다. 부팅 시 커널이 디스크에서 SOS.KERNEL을 올린 뒤 SOS.DRIVER에 담긴 드라이버 집합과 SOS.INTERP라는 실행 인터프리터를 읽어 들인다. 드라이버를 파일로 떼어 둔 이 구조는 훗날 애플이 Apple II용으로 내놓는 ProDOS의 바탕이 됐다.
기업용을 표방했으니 Apple II 소프트웨어 호환도 필요했다. Apple III에는 Apple II 에뮬레이션 모드가 있었지만 48KB 구성으로 제한됐고, III의 고급 기능에 접근하지 못하도록 막는 칩까지 일부러 넣었다. 자사 신제품이 구형 소프트웨어 기계로만 쓰이는 것을 경계한 결정이었는데, 결과적으로 비싼 Apple II를 산 꼴이라는 비아냥을 샀다.
MAME로 SOS 부팅하기
실물은 상태 좋은 개체를 구하기 어렵고, 구하더라도 리콜 전 기판이면 그 열 문제를 그대로 안고 있다. 가장 현실적인 체험 방법은 MAME의 apple3 드라이버다. MAME 0.2xx 이후 버전이면 포함돼 있다.
먼저 BIOS(시스템 ROM) 세트 apple3.zip을 MAME의 roms 디렉터리에 둔다. 드라이버가 제대로 인식되는지는 다음으로 확인한다.
mame apple3 -verifyroms mame apple3 -listmedia
부팅 가능한 SOS 디스크 이미지가 필요하다. apple3.org와 Washington Apple Pi의 Apple /// 라이브러리에 SOS 포맷 플로피 이미지(.dsk, .po, .woz)가 공개돼 있다. 플로피 드라이브에 이미지를 걸어 창 모드로 띄운다.
mame apple3 -window -skip_gameinfo -flop1 sos.dsk
하드디스크에서 SOS를 올리고 싶다면 CFFA3000 같은 주변기기 카드를 슬롯에 꽂고 .po 이미지를 붙인다. datajerk가 공개한 Apple /// Ready-to-Run은 인기 소프트웨어를 미리 담은 HDD 이미지를 제공한다.
mame apple3 -window -skip_gameinfo -sl4 cffa202 -hard1 a3rtr.po
슬롯 번호(-sl4)와 카드 이름은 MAME 버전마다 다를 수 있으니, 인식되는 카드 목록은 mame apple3 -listslots로 확인한다. 부팅이 끝나면 SOS의 메뉴나 Apple III Pascal, 또는 당시 킬러앱이던 VisiCalc III 화면을 만날 수 있다. 1980년에 운영체제가 드라이버를 파일로 읽어 들이는 장면을 8비트 기계에서 보고 있으면, 이 물건이 왜 시대를 앞섰다는 평과 실패작이라는 평을 동시에 받는지 짐작이 간다.
더 파 보고 싶다면 apple3.org의 하드웨어 문서와 소프트웨어 아카이브, 그리고 archive.org에 올라온 SOS 레퍼런스 매뉴얼을 권한다. 뱅크 스위칭과 확장 어드레싱의 레지스터 수준 설명은 이쪽이 Wikipedia보다 훨씬 구체적이다.