지난 paraMSX 이야기 1편은 1995년에서 2002년 사이의 추억이었습니다.
이걸로 끝내려니 쬐금 아쉬워서, 2편도 가봅니다!
90년대 MSX 에뮬레이터가 크게 유행하면서, 저는 미련이 남아있던 게임들을 플레이하는 데에 시간이 많이 썼어요.
전세계가 인터넷으로 연결되니, 해외에서 만들어진 크랙버전 및 영문 패치 버전도 해보고 재밌었죠.
에뮬로 80년대 게임 제작사들이 사용하던 테크닉들을 확인하는 것도 즐거웠구요.
게임 판매량을 올리기 위해, 디스크를 포기하고 롬팩만 만들던 코나미가 참 안쓰러웠던 것도 생각나네요.
MSX2용 게임도 VRAM 64KB 기준으로 만들던 개발자들의 마음은 까맣게 타들어가지 않았을까...ㅋ
암튼 그렇게 시간은 흘러 2003년 쯤이 되니까, 활활 타던 에뮬의 열기도 싸늘해졌습니다요.
파라동에도 회원님들은 다 떠나고 골수 유저들만 남게 되었구요.
하이텔은 웹서비스만 남기고 텍스트 서비스(VT)를 중단했고, 이듬해에는 한미르랑 통합해서 파란(Paran)으로 바뀌었죠.
이 시절이 진짜 MSX 암흑기였던 걸로 기억합니다. 파라동 게시판은 한달에 글 한두개 올라오던 시절.
아마 다들 회사에서 바쁘게 일하던 시절이라 그랬던 걸로 생각됩니다요~
이제 본론으로 넘어갑니다...
저에게 2003년은 MSX 실기생활로 돌아오게 되는 시점이었죠. GT를 구하게 되면서요 ㅎ.ㅎ
이베이에서 고파의 야망과 스내처 SCC-I 카트리지를 구했죠.
고파의 야망은 롬을 뽑아서, EPROM에 다른 SCC 게임들을 구워다가 교체하면서 즐겼구요.
SCC-I는 DRAM을 128KB로 증설해서 1메가(128KB) 전용 메가램으로 활용했었지요.
아마 회사에서 임베디드쪽으로 일하시는 분들은 다들 비슷한 생각을 해보셨겠지만,
고파의 야망을 그냥 FlashROM 롬팩으로 만들어서 쓰면 편하겠구나 그런 생각이 들더라구요.
일단 전자부품 가게로 달려가서 5V 플래쉬롬인 AT29C040 (512KB) 칩을 샀습니다.
고파의 야망 보드에 때려넣고, ATLOAD라는 간단한 플래쉬롬 다운로더를 만들어서 썼죠.
GT에는 작은 SRAM 디스크가 내장되어 있는 거 아시나요? 참고로 ST엔 없어요 ㅎ.ㅎ
여기에 ATLOAD.COM과 AUTOEXEC.BAT를 넣어두고, GT의 내장소프트 스위치를 켠상태로 부팅하면...
GT가 롬디스크의 DOS2로 부팅하면서 커맨드 프롬프트로 빠져나옵니다. 이게 MSX-View를 skip하는 기능이죠.
플래쉬롬 다운로드가 필요할 때는 이렇게 고속으로 부팅해서 ATLOAD만 살짝 실행할 수 있어요.
.
.
.
paraMSX 얘기는 언제 나오냐구요? 이제 나옵니다ㅋ
저는 MSX용 프로그램을 만들 때, GEN80과 HI-TECH C를 주로 썼습니다.
모두 CP/M용 툴이라서, MSX-DOS에서도 무난하게 쓸 수 있죠.
21세기에, 컴파일러를 실기에서 느릿~느릿~ 돌릴 수는 없겠구요. 당연히 에뮬레이터를 사용합니다.
보통 CP/M 에뮬, MSX-DOS 에뮬을 많이 쓰는데, 저는 그냥 paraMSX를 썼어요.
에뮬에서 클럭을 30배로 세팅해서 Z80 107MHz로 돌렸죠.
빌드하기 편하도록 실행하면 디스크 이미지랑 클럭세팅 된 상태로, MSX2+ 머신으로 부팅하게 되어있죠.
MSX2+의 부트 로고도 패치해서 걍 스킵~스킵~ㅎ
아래는 VMware의 윈도XP에서 구동한 paraMSX의 모습입니다.
2003년쯤에 30배속으로 돌렸으니까, 지금은 300배속으로 놓아도 잘 돌아가겠군요!
오랜만에 HI-TECH C 오리지널 버전도 돌려봅니다.
에뮬에서는 HELLO.C 빌드하는데 1초도 안걸립니다요 ㅎ.ㅎ
회사에서는 주임 연구원일 때, 신입 사원들 교육용 개발보드도 만들었는데요.
C166 MCU를 쓰는 칩에 SRAM과 DRAM도 용량이 꽤 널널했거든요.
그래서 떠오르는 생각은? 'MSX 에뮬을 넣어보자' ㅎ.ㅎ
CPU 성능 상 V9938 에뮬은 느려서, 그냥 MSX1 테스트만 해봤습니다.
그 때 찍은 사진도 살짝 보여드려요. GPU 출력을 640x480으로 둬서, 바깥쪽 검은 테두리가 나왔을 거에요.
paraMSX 튜닝버전은 나중에 파라동 자료실에도 따로 올렸었는데, 관심있는 분이 1도 없던ㅋ
2004년부터는 MMC/SD Drive를 개발하게 되면서, 각종 툴을 만드느라 paraMSX를 많이 썼구요.
디버깅을 위해 paraMSX에 MMC/SD 에뮬도 추
가했었죠.
아래처럼 MMC/SD V2 매뉴얼에 있던 스샷들도 전부 paraMSX로 캡쳐된 거였습니다요~
잠시 옛 추억에...ㅎ.ㅎ
2010년에는 제가 쓰던 LCD TV에 paraMSX를 포팅해서 돌려보았어요.
유럽향 DTV인데 리눅스를 사용합니다. CPU는 MIPS 324MHz 였던가? 그럴거에요.
MSX 본체의 키보드 I/O를 TV쪽 paraMSX의 키보드 I/O로 전달하는 식으로 돌아갑니다.
GT에는 자작한 RS-232C 카트리지를 꽂고, TV쪽은 USB to 232C 어댑터로 서로 연결합니다.
GT에서 시리얼 터미널을 띄워서 TV쪽 리눅스에 로그인 후 paraMSX를 실행합니다요.
TV쪽에서는 SCART RGB 화면 위에 paraMSX가 오버레이 되어서 나오게 됩니다.
옛날 PC VGA 카드에서는 그래픽 화면 위에 동영상 오버레이를 해주는데, 그거랑 정반대로 동작하는거죠 ㅎ.ㅎ
아래 영상에서는 키보드 I/O 때문에 좀 느리게 동작하는데, 나중에 개선했던 걸로 기억합니다요.
옛날 영상이라도 구경하셔요~ ㅎ.ㅎ
여기까지가 2003년 ~ 2010년의 paraMSX 추억이었습니다.
그럼, 이만~~ ㅎ.ㅎ/




