알테어 베이직

알테어 베이직(Altair BASIC)은 MITS사의 알테어 8800 및 후속 S-100 버스 컴퓨터에서 실행되는 베이직 프로그래밍어의 대한 인터프리터 프로그램으로 현재는 단종되었다. 마이크로소프트(Micro-Soft, MS)사의 첫 제품으로 MITS사와의 계약하에 배포되었다. 알테어 베이직은 다양한 마이크로소프트 베이직 제품군의 시작이었다.

 기원과 개발 
빌 게이츠는 자신과 폴 앨런이 1975년 1월 《포퓰러 일렉트로닉스》 잡지의 1 월호에서 알테어 8800 컴퓨터에 관해 알게 되었을 때 곧 컴퓨터 가격이 소프트웨어 판매에 의하여 수익을 창출할 수 있는 사업이 될 수 있는 수준으로 하락할 것으로 예상하였다고 회상한다. 빌 게이츠 회장은 새로운 컴퓨터를 위한 기본 인터프리터를 제공함으로써 새 컴퓨터가 애호가들에게 더 매력적이 될 수 있다고 믿었다. 그들은 MITS의 설립자인 에드 로버츠에게 연락하여 인터프리터를 개발 중이라고 말하면서 시범을 보길 원하는지 물었다. 이것은 관심을 끌기 위해 존재하지도 않는 제품을 발표 하는 산업계의 시험 풍선(trail balloon)의 관행을 따른 것이다. 로버츠는 1975년 3월 시연을 위하여 몇주 내에 그들을 만나기로 동의했다.

게이츠와 앨런은 인터프리터도 가지고 있지 않았지만, 이를 테스트할 알테어 시스템 조차도 없었다. 하지만, 앨런은 이전의 벤처 사업인 트래포 데이터(Traf-O-Data) 벤처를 위하여 PDP-10 시분할 컴퓨터에서 실행되는 인텔 8008 에뮬레이터를 작성한 적이 있었다. 그는 알테어 프로그래머 가이드를 기반으로 이 에뮬레이터를 수정하여 하버드 대학의 PDP-10에서 인터프리터를 개발하여 테스트했다. 하버드 대학 관계자가 이 사실을 알게 되었을 때 기뻐하지 않았지만 이 컴퓨터 사용에 관한 서면 정책은 없었다. 게이츠와 앨런은 보스턴의 시분할 서비스에서 컴퓨터 시간을 구입하여 베이직 프로그램 디버깅을 완료했다. 그들은 하버드 대학생인 몬트 데이비도프(Monte Davidoff)를 고용하여 인터프리터를 위한 부동소수점 산술 루틴을 작성했는데, 이 기능은 많은 경쟁 업체에서는 사용할 수 없는 것이었다.

완성된 인터프리터에는 자체적인 I/O 시스템과 라인 편집기를 포함하고 있었는데도 단지 4 킬로바이트의 메모리에 적합하였기 때문에 해석 된 프로그램을 위한 여유 공간이 충분했다. 데모를 준비하면서 알테어 컴퓨터가 읽을 수있는 펀치 테이프에 완성 된 인터프리터 프로그램을 저장하여 폴 앨런이 앨버커키로 날아갔다.

비행기가 공항에 착률할 때, 앨런은 테이프를 메모리에 읽어 들이는 부트 스트랩 프로그램을 작성하지 않았다는 것을 알게 되었다. 앨런은 8080 기계 언어로 프로그램을 작성하여 착륙하기 전에 프로그램을 마쳤다. 알테어에 프로그램을 로드하여 시스템의 메모리 크기를 묻는 메시지를 보았을 때에 비로소 게이츠와 앨런은 인터프리터가 알테어 하드웨어에서 작동하고 있다는 것을 알 수 있었다. 나중에 그들은 가장 짧은 부트 스트랩 프로그램을 작성할 수 있는 사람에 대해 내기를 했고 게이츠가 이겼다.

 버전 및 배포판 
섬네일| 종이 테이프의 알테어 8K 베이직 
로버츠는 인터프리터 프로그램을 배포하는 것에 동의하였다. 그는 프로그램을 유지하고 개량하기 위하여 게이츠와 앨런을 고용하였고, 이로 인해 게이츠는 하버드를 휴학하게 되었다. 그들은 원래의 버전인 '4K BASIC'과 그 이후의 '8K BASIC', '확장 BASIC', '확장 ROM BASIC' 및 '디스크 BASIC'과 같은 여러 버전을 제작하였다.

가장 작은 버전인 '4K 베이직'은 4k 램(RAM) 시스템에서 실행할 수 있었는데, 약 709 바이트만이 프로그램 코드를 위한 빈공간으로 남았다. 이러한 작은 공간에 어울리는 언어를 만들기 위해 4K 버전에는 문자열 처리 기능이 없고 여러 가지 수학 함수가 삭제되었다. 이러한 기능은 문자열 라이브러리와, 난수를 위한 RND, 부울 연산자, 및 PEEK 와 POKE 등이 포함된 더 다양한 수학 함수의 집합을 가진 8K 베이직에서 다시 추가되었다. 8K 버전은 가정용 컴퓨터 시대 동안, 대부분의 베이직 버전을 위한 기초가 되었다. '확장 베이직'에서는 PRINT USING 과 기본 디스크 명령이 추가되었고, '디스크 베이직'에서는 디스크 명령이 더욱 확장되어 원시적인 I/O가 허용되었다.

1975년 10월, 4K 베이직은 150 달러에, 8K 베이직은 200 달러, 확장 BASIC은 350 달러에 판매되었다. "8K의 알테어 메모리 및 알테어 I/O 보드"를 구입 한 고객에게는 가격이 각각 60 달러, 75 달러 및 150 달러로 할인되었다. 언어 버전은 종이 테이프 또는 카세트 테이프로 구입할 수 있었다.Altair Basic for the 6800 , In January 1978 I purchased Altair 680 Basic from Computer Kits in Berkeley CA. I paid full price, $200, I didn't want Bill Gates to go broke. If you bought an Altair 680B kit with 16 K of RAM for $685 you would get BASIC for free., Michael Holley's SWTPC Collection Home Page

알테어 컴퓨터는 예상대로 홈브루 컴퓨터 클럽과 같은 애호가들에게 매우 인기가 있었다. MITS에서 선호되는 베이직 인터프리터로 알테어 베이직도 인기가 있었다. 그러나 애호가들은 소프트웨어에 대하여 "공유와 같이" 접근하여, 베이직 인터프리터를 다른 애호가들에게 별다른 생각없이 복사해 주었다. 홈브루의 회원인 댄 소콜(Dan Sokol)은 특히 심하여서, 출시 전의 테이프를 어떻게든 얻은 다음, 25개의 복사본을 제작하여 다음 회의 모임에서 배포하면서, 더 많이 복사하라고 촉구했다. 빌 게이츠 회장은 1976년 매우 강한 어조로 작성된 애호가들에 대한 공개 편지에서 복제자들을 절도로 비난하고, 사람들이 비용을 지불하지 않는 컴퓨터 소프트웨어는 더 이상 개발하지 않겠다고 선언하였다. 많은 애호가들은 그 공개편지에 수비적으로 반응하였다.

구매 계약 조건에 의하면, MITS는 일정 금액의 로열티를 지불하면 인터프리터에 대한 권리를 취득하게 된다. 그런데 마이크로소프트에서는 모토롤라 6800과 같은 다른 시스템 용으로 인터프리터의 다른 버전을 개발하였다. 그들이 MITS를 떠나기로 결심했을 때, 전액이 지불되었는지 여부와 계약이 다른 버전에도 적용되었는지 여부에 대한 분쟁이 발생했다. 마이크로소프트와 MITS는 중재인에게 분쟁을 제기했다. 그런데 중재인은 로버츠가 놀랍게도, MITS가 "최선의 노력"으로 소프트웨어를 판매하지 않았기 때문에 마이크로소프트에게 유리하게 결정하였다. 마이크로소프트 사가 MS-DOS로 전환하는 1980년대 초반까지, 베이직 인터프리터는 마이크로소프트사의 핵심 사업이었다.

 같이 보기 
 마이크로소프트 이진 형식

 각주 

 추가 자료 


 Cringely, Robert X. 얼간이의 승리'' . PBS, 1996.


 외부 링크 
 Altair BASIC 3.2 (4K) - 주석 처리된 디스어셈블리
 Reuben Harris가 컴파일하여 archive.org에 보관된 Altair BASIC 소스 디스어셈블리
 알테어 베이직의 작성, 빌 게이츠 인터뷰, 인터뷰어: 스미스소니언 협회, 미국 국립 역사 박물관, 컴퓨터, 정보 및 사회 부문 담당, 데이비드 앨리슨 (DA)
 마이크로소프트의 역사 비디오: 빌 게이트가 알테어 베이직에 대하여 말하다 , (Lisa Feigenbaum) 2009년 6월 24일, Visual Basic 팀, MSDN 블로그

분류:1975년 소프트웨어
분류:마이크로소프트 베이직
분류:마이크로소프트의 프로그래밍 언어