2015년 11월 25일 수요일

월간 마이크로소프트웨어 휴간 소식을 듣고

월간 `마소` 역사속으로

한국의 컴퓨터 월간지 마이크로소프트웨어(애칭 '마소')가 12월호를 마지막으로 휴간 (이라고는 하지만 언제 재개될지 모르므로 폐간으로 받아들이는 사람이 많은것 같다)한다고 한다. 개인적으로는 최근호는 거의 읽지 않았고 정기구독도 한 적이 없는지라 큰 도움은 되지 못했지만, 오래전의 기억을 더듬어 본다.

PC를 시작한게 84년 즈음 (집에 FC-150이 들어왔을 때)인데 당시에는 컴퓨터 잡지가 기억나는 것이 컴퓨터학습(나중에 마이컴으로 변경), 학생과컴퓨터, 마이크로소프트웨어 정도였다. 다른게 있었는지는 잘 모르겠지만 위 3종은 동네 서점에 가도 항상 볼 수 있었으니 구하기도 쉬웠고. 컴퓨터학습이나 학생과컴퓨터는 주로 학생 계층 내지는 초보자 대상이었고 내용 자체도 보기 쉬운 내용 내지는 8비트 PC (SPC, FC, 애플계열) 위주였는데 비해서 마이크로소프트웨어는 8비트도 다루지만 16비트도 당시 일부 있었고 (IBM-PC가 81년에 발표되었다. 당시 CPU가 인텔 8088인데 이게 8비트와 16비트의 중간 정도라... PC XT에서 8086을 채용하면서 본격적으로 16비트 PC가 된 것으로 기억한다) 꽤 전문적인 내용을 다루고 잡지도 두꺼웠다.

FC-150은 워낙 자료가 귀해서 아파트에서 누가 내다버린 금성전자의 내부 소식지(?)랑 폐품으로 내놓아져 있던 FC-150 모니터 매뉴얼을 주워다 닳도록 읽고 있었는데 BIOS를 다루려면 역시 베이직으로는 한계가 있었고 곧 기계어에 관심을 갖게 되었다. 하지만 문제는 Z80 어셈블리를 다루어야 하는데 FC-150은 어셈블러를 구할수가 없었고 베이직으로 어셈블러를 짤 능력은 안되는지라 (아마 본 책 중에 SPC-1000용의 베이직으로 만든 Z80 어셈블러/디스어셈블러가 있었는데 베이직의 차이 때문에 변환을 포기 했었다) 고민하던 와중에 마이크로소프트웨어 84년 11월호(정확하게 알 수는 없는데 창간 1주년호로 기억하니 아마 그게 맞을거다. 마소는 83년 11월에 창간)를 보게 되었는데 Z80 어셈블리가 0x00 ~ 0xff 까지 (2바이트 명령도 있으니 그거 포함) 몇페이지에 걸쳐 실려 있는 것을 보았고 그걸 당장 사온 다음에, 손과 노트를 사용해서 일단 어셈블리 언어로 (LD A, 30H 이런 식으로) 적고 그걸 다시 잡지를 보면서 기계어로 변환 (위 명령을 변환하면 3E 30 이다. 다시 찾아 봤음)해서 그걸 베이직으로 자작한 (주로 BASIC-G를 썼다) 모니터를 통해서 입력하고 실행하는 식이었다.

당시에 모니터(Monitor)라고 하면 기계어 덤프하고 입력, 실행을 할 수 있는 프로그램을 지칭한 것으로 알고 있었다. 보통은 베이직의 PEEK, POKE, CALL 문으로 직접 메모리를 다루었는데, 한바이트씩 다루어야 하니까 아예 베이직으로 간단한 프로그램을 작성해서 데이터 입력이 가능하게... 정확하게 기억은 안나지만 다음과 같은 식이다.

> D 1000
1000 00 00 00 00 00 00 00 00
1008 00 01 02 03 04 05 06 07

1000번지부터 내용을 덤프(화면에 출력)

> I 1000
3E 30

1000H번지 (지금은 보통 0x1000 이라고 하는데 당시에는 1000H 라고 했다)에 다음 줄부터의 내용을 입력

> G 1000

1000번지의 내용부터 실행 (Program Counter를 바꾸는 식)

저장이야 당연히 카세트 테이프에 하는 것이고...

어쨌든 모니터까지야 어찌어찌 작성 가능했는데 손어셈블이라는 걸 가능하게 해 준건 바로 마소의 덕이었다. 그 이후에 종종 사 보았지만, 마소에서는 FC-150을 거의 다루지 않았기 때문에 주로 MSX나 SPC-1000용의 기사를 보며 침만 흘리거나 실려 있던 작성된 베이직 프로그램을 변환해서 사용하다가, 86년말에 IQ2000을 갖게 되면서 MSX2 발표에 따른 해설 기사에 (아마 정내권씨가 썼던 것으로 기억 하는데 아닐 수도 있다) 나와 있던 그래픽 데모 프로그램을 돌려 보기도 하고, 이후에는 MSX 관련해서 몇가지 좋은 기사가 있어서 80년대 후반까지는 종종 사 보았는데, 16비트 위주로 기사가 바뀌면서 (당시에 안철수씨가 바이러스 관련해서 연재하곤 했었다) 거의 보지 않게 되었다.

MSX관련해서는 MAD-80이라는 (FC-150시절에 그토록 바라던) 모니터/어셈블러/디스어셈블러가 통합된 프로그램이 실렸는데, 이달의 디스켓테이프... 를 구할 돈은 없었고 잡지에 실려 있던 16KB분량의 기계어를 며칠에 걸쳐 다 손으로 입력해서 MAD-80을 실행했을 때의 기쁨이란 이루 말할 수 없는 것이었다. 왜냐하면 더 이상 손어셈블을 안해도 되니까. 그 즈음쯤 가면 잘 쓰는 명령은 거의 외우고 있었지만, 상대 점프같은거 쓰려면 주소 계산까지 해야 하는데 기계어 변환이 안되면 주소 변환이 안되고...

나의 마소에 관한 기억은 주로 8비트 PC에 관한 것이니 이미 30년이 다 된 일이지만, 그만큼 역사와 전통을 자랑하는 잡지가 더 이상 나오지 않는다는 건 매우 아쉽다. 몇년전에 서점에서 사 볼일이 있었는데 (회사 사장님 인터뷰나 같이 일하던 편용현님 인터뷰 실렸을 때) 두께가 예전에 알던 것 반 정도밖에 안되어서 꽤 놀랐던 기억이 있다. 물론 이제는 인터넷에서 구할 수 있는 자료가 훨씬 최신이고 품질도 좋아 졌으니 잡지의 필요성은 많이 줄었을 테지만 당시에는 마소가 최신 자료를 구할 수 있는 유일한 수단 중 하나였다.

어렸을때 꿈 중의 하나는 마소에 기고하는 거였는데 결국 이루지는 못했지만... 언젠가 다시 꼭 부활하는 모습을 보았으면 좋겠다.







댓글 쓰기