Retro Game & PC/정보

Basic for CP/M - Star Trek Simulator

smores 2014. 6. 4. 01:23

 

오랫만에 리눅스 장난질에서 벗어나서 레트로 취미쪽으로 조금 관심있는 정보를 찾아다녔다. 다음은 예전에 한번 스쳐 지나갔던 사이트로 한동안 관심을 가졌던 Star Trek 시뮬레이션 프로그램과 연결된다.

 

http://www.z80.eu/basic.html

 

 

 

8비트 시절 청계천표 애플2+에 CP/M 카드와 80컬럼 바이덱스 카드를 달고는 나름대로 컴퓨터의 다양한 응용분야(워드프로세싱, 데이터베이스, 스프레드쉬트, 다수의 프로그래밍 언어 등)라고 생각되는 부분들을 독학했었다. 당시 공부했던 소프트웨어들을 보자면 워드프로세서로는 워드스타 3.0, 데이터베이스로 dBase II, 스프레드쉬트는 MS의 Multi Plan (먼 훗날 MS의 엑셀의 전신이라 하겠다), 그리고 프로그래밍 언어로 C (BDS-C), Pascal (Turbo Pascal 3.0), PL/I, Fortran, Algol, 6502 & 8080 Assembly 등 닥치는 대로 찝쩍여 본 셈이다. 하지만 첫 컴퓨터 언어로 배우기 시작했던 Basic은 본인의 프로그래밍 기초를 닦는 기반이 되었을 뿐 아니라 아직까지도 Excel VBA, Visual Basic 등으로 활용하고 있는 언어이다. 때문에 오래된 베이식 프로그램 코드들은 아직도 정겹고 본인의 어릴적의 컴퓨터와 관련한 아련한 추억들을 되살려준다.

 

본 사이트의 하단에 보면 CP/M 베이식 프로그램 예제로 스타트랙 시뮬레이터가 나온다. 맨 하단에 붙어 있는 링크들을 따라가다 보면 각종 플랫폼에서의 스타트랙 프로그램들을 만날 수 있다.

 

http://www.dunnington.u-net.com/public/startrek/

http://outserv.cactus.org/~nystrom/startrek.html

 

게다가 스타트랙 시뮬레이터 역사까지도 잘 정리된 사이트에 도달한다.

 

http://web.archive.org/web/20081118033300/http://www3.sympatico.ca/maury/games/space/star_trek.html

 

이곳을 잘 보다 보면 Win9x 용 스타트랙까지도 다운받을 수 있다. Win95에서 WinXP까지 다 돌아간다고 한다.

 

http://web.archive.org/web/20090117151014/http://andy3ware.com/startrek/

 

strek95.tgz
다운로드

 

 

 

 

시간날때 XP에서 한번 해 볼 계획으로 일단 다운로드 받은 파일을 등록해 둔다.

 

또 다른 사이트에서 Win3.1 용 스타트랙도 찾은 바 있다.

http://monkey-hole.co.uk/esa/win16/

 

 

 

wintrek.7z
다운로드

 

 

참고로 다음은 네이버 카페에서 스타트랙 시뮬레이터에 관해 정리해서 올렸었던 글과 첨부된 파일들이다.

 

-------

 

아래 The Apple Tapes 라는 제목으로 글을 올린 바 있습니다. 

 

초기 애플 II 및 II+ 판매때 함께 주던(?) 것 아닌가 싶습니다. 디스켓 형태로 프로그램들을 담아 놓았기에 이것 저것 들여다보다가 Apple Trek 이라는 프로그램에 관심이 끌려서 매뉴얼을 정독 후 게임을 해 보았습니다. 일단 게임을 하려면 매뉴얼부터 다 읽어봐야만 시작이 가능한 터라 학습곡선이 상당히 가파르다고도 할 수 있겠고요. 하지만 제게는... 아! 대박이었습니다. 덕분에 혹시 다른분들과도 공유하고 싶은 마음에 Apple Trek 매뉴얼을 번역도 시작해 보았는데 이거 생각보다 번역이란 것이 쉽지 않더군요. 단순 영어의 직역이 아닌 적절한 국어를 구사하려다 보니까요. 아직 1/5도 못하고 있습니다. 혹시 중도에 포기하게 될런지...  :P (우연히 자체 부팅과 정수베이식 로드 후 게임까지 실행해 주는 디스크 이미지를 찾았습니다. 첨부합니다)

 

텍스트로만 이루어진 화면이지만 턴제 전략 시뮬레이션 게임으로서 상당한 난이도를 보여주더군요. 그 이유로는 처음 주어지는 에너지의 양에 비해 Klarnon 전투함의 갯수가 상당히 많고, 게다가 에너지 보급기지 갯수가 많지 않아서입니다 (아마도 제가 전략이 부족한 탓이 더 클지도 모르겠습니다만...)

 

 

 

비록 스타트랙, 스타워즈 매니아까지는 아니어도 조금은 보면서 커왔던 터라, 게다가 베이식 프로그램 소스를 다 볼 수 있다는 매력에 무척 끌리는 게임이더군요. 

 

그런데 이런 프로그램이 어느날 하늘에서 뚝 떨어지진 않았을 것 같고 해서 구글 검색을 시작해 보았습니다. 그 결과 Star Trek Simulation 게임은 무척 오래된 역사를 가지고 수많은 변종과 다양한 플랫폼에 포팅된 프로램임을 알게 되었습니다. 

http://en.wikipedia.org/wiki/Star_Trek_(text_game)

 

사실 스타트랙은 컴퓨터 게임만이 아닌 보드게임 류로도 많이 나온 것 같습니다. 컴퓨터 게임으로도 전략 시뮬레이션 만이 아니라 RPG 도 다수 있는 것 같네요.

http://en.wikipedia.org/wiki/Star_Trek_games

 

어쨌거나 일단 관심은 전략 시뮬레이션 게임과 주로 텍스트 게임 쪽에 두고 찾아보기 시작했습니다. (나중에는 일부 PC 도스용 초기 그래픽이 조금 포함된 버전도 찾게 되었지만요.)

 

위키피디아를 조금 정리해 보자면 우선 텍스트 시뮬레이션으로서의 스타트랙은 그 기원이 다소 불분명하지만 1960년대로 거슬러 올라간다 합니다 (작자 미상?). 그것이 1969년도에 미국의 다수의 대학의 컴퓨터 시스템에 퍼졌다네요. 1971년에 상당히 정립이 된 버전이 Mike Mayfield 와 친구들에 의해 개발되어 UC Irvine의 SDS Sigma7이란 시스템에서 돌기 시작한 모양입니다. 

 

이후 이 프로그램은 HP 계산기에도 포팅이 되었고, 추후 101 Basic Computer Games 책의 저자로 유명한 David H. Ahl 에 의해  DEC 버전으로 옮겨졌고 (101 Basic Computer Games), 나중에 더 잘 알려진 Basic Computer Games 라는 책에 Super Star Trek 이라는 이름으로 full source 와 함께 실리면서 대박이 된 것 같습니다. (저도 애플 초창기에 이 책이 있었습니다. 석영전자 대리점에서 첫 애플2(맬럼)를 사면서 함께 샀었는데 영어로만 되어 있어서 제대로 보지는 못했고 프로그램 소스만 보면서 언젠가는 저런 거 한번 만들어 봤으면 하는 꿈을 꾸곤 했었습니다. 가장 기억에 남는 게임 중 하나는 Wumpus 였던 것 같고요)

 

 

 

 

소스를 구해서 보면 예전 8비트 컴에서 작성하듯이 스페이스가 없이 따닥따닥 붙여서 코드를 쓰고 있습니다. MS Dos 용 GW-BASIC 등에서는 바로 넣으면 에러가 나더군요. 해서 Apple II (AppleWin) 에 copy-paste 해 보니 잘 됩니다. 화면 구성상 PR#3으로 80컬럼 바이덱스 켜 놓고 해야 됩니다. 일단 저장해서 다시 리스트를 뽑아 스페이스 문자를 넣고서 GW-BASIC 으로 옮겨 보니 역시 잘 되고요. Wikipedia 내용을 보면 Basic Computer Games 는 MS Basic 상에서 돌린다 하는데 아마도 8비트 시절의 베이식 인터프리터 - 예를 들면 CP/M의 MBASIC 등 - 인것 같더군요. 해서 AppleWin에 CP/M 돌려놓고 MBASIC 띄우고 코드를 copy-paste 해 보니 역시 잘 됩니다. (프로그램 소스 몇 개 첨부합니다)

 

 

 

 

 

 

 

이 버전들까지는 마치 모니터가 아닌 TTY 상에서 프린트아웃 되는 것을 보면서 게임을 하는 듯한 유저 인터페이스였는데, Apple Trek 의 경우는 엄청난 유저인터페이스의 발전이 있는 셈이더군요. 다만 개인적으로는 옛 방식으로 명령어를 넣는 것이 명령어에 대한 번호를 외우는 것 보다는 더 쉽게 느껴졌습니다. (얼마 되지도 않는 메뉴임에도 불구하고 꽤 오래해도 번호 순서가 도대체 머리에 박히질 않네요. 덕분에 아예 프린트해서 옆에 놓고 보면서 하고 있습니다.) 이 시절까지의 텍스트 기반, TTY 출력식의 주루룩 넘어가는 출력 기반의 UI 프로그램들은 왠만하면 플랫폼이 바뀌어도 쉽게 포팅될 수 있었을 것 같습니다.

 

 

 

MS-DOS 기반의 Super Star Trek은 여기서 받을 수 있네요. 컴파일 해 놓았는지 실행파일만 있습니다.

http://www.myabandonware.com/game/super-star-trek-2et

 

이후 Super Star Trek 은 다양한 언어(포트란, C 등)와 시스템(Linux, BSD, 윈도우, 맥, OS/2, 다양한 8비트 PC 등...)에 널리 이식되었다고 합니다.

http://www.almy.us/sst.html

http://www.dunnington.u-net.com/public/startrek/

 

IBM PC에 와서는 Windmill Software 라는 회사에서 Video Trek 88 이라는 이름으로 텍스트 그래픽 문자를 함께 써 가면서 매우 유려한 인터페이스의 버전으로 업그레이드하여 쉐어웨어로 판매를 했던 것 같습니다. 저도 이 프로그램 다운로드 받아서 조금 돌려보니 비주얼 효과도 상당히 그럴듯 합니다. 처음에 데모를 선택해서 자동으로 돌아가는 것을 볼 수 있습니다. DosBox 에서는 CPU 사이클을 많이 낮추어 주어야 볼 만 합니다. 프로그램은 다음의 링크에서 구할 수 있습니다. 역시 Basic 소스가 공개되어 있습니다. BASICA 와 함께 제공되네요.

http://www.myabandonware.com/game/video-trek-88-1f

 

 

 

 

 

이후 더 나은 그래픽 유저 인터페이스(마우스 사용을 포함)로 업데이트 된 버전들이 몇몇 나왔었던 것 같습니다. 하지만 기본 게임 시스템 룰은 그대로 유지하면서요.

 

EGA Trek

http://www.myabandonware.com/game/ega-trek-1km

 

 

 

 

 

 

 

Visual Star Trek

http://www.myabandonware.com/game/visual-star-trek-11y

 

 

 

EGA Trek 은 게임 방법등이 잘 나와있는데 반해 Visual Star Trek (VGA Trek이라고도 한답니다) 은 작자미상에다가 아무 설명이 없어서 일일히 키 사용 방식을 알아내 가면서 하기가 조금 그렇습니다.

 

인터넷을 자꾸 뒤지니 재밌는 것들도 계속 나오네요. 예를 들어 개인이 Windows 용으로 만든 것도 있습니다.

http://home.comcast.net/~raspuzzi/star_trek/startrek.html

 

웹상에서 플래쉬 기반으로 돌아가는 것도 있습니다.

http://www.dan-dare.org/FreeFun/Games/CartoonsMoviesTV/StarTrek.htm

 

역시 웹상이지만 텍스트 베이스로 즐기는 것도 있네요. 배경이 멋집니다. 게임을 배우기 위해 장황한 매뉴얼 다 읽기 그러면 이곳에서 처음 instruction yes로 해서 간단히 정리된 것으로 봐도 괜찮을 것 같습니다.

http://www.arctuviangambit.com/startrek.html

 

 

 

 

본 게임에 관심이 있는 분이라면 Super Star Trek의 document가 다음 링크에 무척 잘 정리가 되어 있습니다. 

http://sst.berlios.de/sst-doc.html

 

사실 개인적으로 스타트랙 드라마/영화는 그리 큰 흥미는 없었는데 이번 계기로 왠지 한번쯤 다시 보게 될 것 같습니다.

 

이상으로 Super Star Trek 에 대한 정리를 마치도록 하겠습니다.

 

 

appltrek.do
다운로드

 

startrek.tgz
다운로드

 

superstartrek(apple2).bas
다운로드

 

superstartrek-gwbasic.bas
다운로드