Windows 95 설치기

두기의 고전게임에서 다운받은 Dosbox 및 게임 세팅(이동)을 이용해서 즐겁게 문명 2를 즐겼더랬다 (이동)

게임 개발자로서의 삶을 바랬기에 경영자의 역활을 강력히 원하던 회사와 계속 충돌하던 시드마이어는 결국 마이크로프로즈 회사와 결별을 해 버린다.

이후 파이락시스라는 이름의 개발사를 설립한 시드마이어는 역사물의 한계 (자기 나라것이 아니면 잘 모름)을 느끼고 역사가 아닌 미래를 다루는 문명 후속작을 기획하는데 반해, 문명 2를 출시했던 마이크로프로즈는 문명의 인기를 그대로 이어가고자 문명의 후속편을 준비한다.

그렇게 해서 나온게 파이락시스의 알파 센타우리, 마이크로프로즈의 문명 : 콜 투 파워다.


문명 : 콜 투 파워

알파 센타우리

이 두 게임 역시 두기의 고전게임에서 다운받아서 하는게 가능하나, 안정적으로 엔딩까지 갔던 문명2와는 다르게 몇 분정도 하다보면 튕겨버린다. 아마도 단순하게 WinG를 이용해서 그래픽 출력을 했던 문명2 보다 미려한 그래픽을 보여주기 위해서 DirectX를 사용하고 하드웨어를 직접 건드리는게 원인인듯 하다.

어쨌든 이 게임을 하기 위해서 Dosbox를 대신하여 VMWare Workstation(이동)을 이용해 보기로 한다. 

무료 가상화 툴은 WMWare말고도 Virtual box가 있으나, VMWare쪽이 좀 더 이쁘다. 


VMWare


VirtualBox

Virtual Box는 오픈소스 진영에서 만드는데, 어느 OS에서나 동일한 Look & Feel을 보여주는걸 미덕으로 삼고 있다. 
문제는 이쪽 진영에 디자인 엔지니어가 없는지 그래픽이 너무 투박하고 구리다. 반면 VMWare는 OS의 컴포넌트를 적극 활용하기 때문에 윈도우의 미려한 폰트와 테마를 그대로 사용한다. 때문인지 성능도 VMWare가 좀 앞서는 느낌이다.

이 가상화 도구는 에뮬레이터와는 다르다. 에뮬레이터는 CPU를 프로그램으로 흉내를 내기 때문에 속도가 느린 반면 가상화 도구는 현재 사용하고 있는 컴퓨터와 분리하여 가상의 CPU가 있는것 처럼 동작하게 해 주는 CPU의 기능을 그대로 사용하여 또 하나의 컴퓨터를 만드는 기술로, CPU에서 직접 가상화를 지원하기 때문에 속도는 어마무시하게 빠르다. 
하지만 CPU를 제외한 나머지 하드웨어 (RAM, 그래픽 카드 등등)은 에뮬레이팅을 하기 때문에 제작회사에 따라서 안정성이 다르다.

목표는 Windows 95 설치. 
이미 지원 종료 된 OS이기 때문에 돈 주고는 못 산다. 돈 주고 사더라도 Microsoft에서는 절대 사용하지 말기를 권고하고 있다. 왜냐면 보안 패치를 안 내니까...

우린 가상머신에서 게임만 할꺼라서 상관없다.

준비물 

SB Driver (Windows 95).iso
17.08MB
Win98_daemon347.iso
1.06MB

 

이정도면 되었다.

플로피 부팅 디스크가 필요한 이유는 크게 두 가지가 있는데 Windows 95가 나왔을 때 CD 부팅이란 개념이 없었는지 CD로 부팅이 잘 안되는게 있고, 윈도우를 설치 할 하드 디스크를 인식 시키고 포맷을 하기 위해서다.

지금이야 하드디스크는 OS가 직접 관리하여 포맷이건 뭐건 하지만 예전에는 CMOS라 불리는 BIOS에서 모든 하드웨어를 검색하고 셋업하면 OS는 BIOS가 셋업한 정보를 이용만 할 뿐이다. 따라서 하드 디스크를 BIOS가 인식하도록 잘 청소 한 다음에 BIOS에 등록하는 절차가 필요하다.

첫 번째 단계는 플로피 디스크 이미지를 다운로드 한 다음에 확장자를 ima에서 img로 바꾼다. 그리고 VMWare 설정에서 플로피 디스크를 다운로드 한 디스크 이미지 파일로 연결을 한다.

Power On!!!

요즘 세대들은 잘 모르는 콘솔 부팅이 시작된다. 까만 화면에 >_ 이렇게 커서만 깜빡일 뿐이다.  아마 GUI 에 익숙해져있다보니 이런 터미널 화면은 매우 생소하고 어려워 보일 것이다. (실제로 어려운게 맞다)

해야 할 일은 시스템에 하드 디스크가 있다고 알려 주는것. 아직 하드디스크가 초기화 되어 있지 않아서 시스템은 하드디스크가 있는지도 모른다.

fdisk 를 입력하고 Enter

 

Fidsk 툴은 대용량 하드 디스크도 지원합니다. 어쩌구 저쩌구
Y -> Enter

1. Create DOS partition or Logical DOS Driver -> 1. Creae Partition 를 선택하여 시스템에 하드디스크를 인식 시키고 ESC를 눌러 빠져나가자. Win 95 당시는 PlugNPlay가 충분히 발달하지 않아서 하드웨어가 바뀌면 반드시 리붓을 해 줘야 한다.
그래야만 앞서 말한 BIOS가 하드디스크를 인식힌다.

2. 리붓을 했으면 이제 검색이 된 하드디스크에 데이터를 담을 수 있도록 청소를 하자
   > format c:

3. 이제 CD에서 setup을 실행시키자. 설치가 시작된다.
  > e:  -> Korean -> Win95 -> Setup 

4. 설치 중간쯔음 재시작을 하는데 플로피 디스크의 부팅 우선순위가 높으므로 플로피로 부팅이 된다.
아직 설치는 덜 되었지만 그래도 패치를 해 주자. 
> patch9x -> Enter -> 1 - > 3 -> yes 순서로 눌러 패치를 해 주자.  
현재 설치 된 Win95 시스템 파일은 CPU의 속도가 1GHz는 커녕 500MHz도 못 넘는 시기에 나온 물건이다. 현재의 CPU는 느려도 2GHz이상이다. 
주워 들은 지식에 의하면 Windows 9x 계열 OS는 Clock 을 설정 할 때 CPU가 약 100만번 동작을 수행 할 때 걸린 시간을 1tick으로 삼는데 (지금은 메인 보드의 AP가 Clock을 조절 해 준다. 이 메인보드의 Clock을 건드리는게 오브클럭이다.) 지금의 CPU는 100만번 동작을 수행하는데 걸리는 시간이 1 mili-sec 보다 작아서 오류가 난다고 한다. 그걸 잡아 주는게 저 patch9x 파일이다.
설치 중간 중간 여러번 리붓을 하는데다, 사운드카드 드라이버니 Direct X니 설치하느라 계속 재부팅을 하는데 부팅 중 지저분한 글자가 보인다면 이렇게 계속 패치를 해 줘야 한다.

드디어 Win95 부팅 성공했다.

하지만 아직 그래픽 드라이버를 잡지 못해서 16컬러밖에 출력을 못 한다.

VMWare의 Manage -> Install VMWare Tool 메뉴를 통해서 그래픽 드라이버를 설치해 줘야 하는데 설치에 성공을 하더라도 그래픽 드라이버가 자동으로 교체되지 않는다.

바탕화면 우클릭 -> 등록 정보 -> 설정 -> 고급 등록 정보 -> 어뎁터 탭의 '변경' 버튼 -> 디스크 있음 -> 찾아보기 -> c:\progra~1\vmware\vmware~1\drivers\video\vmx_svga.inf 선택 -> 적용 버튼을 누르면 그래픽 드라이버가 잡힌다.

이제 사운드카드 차례이다.
그래픽과 사운드만 갖추면 일단 게임을 위한 준비 작업은 다 완료된다.
VMWare CD 이미지를 Sound 드라이버로 변경 후에 내 컴퓨터 -> D:\로 가서 사운드카드 드라이버를 설치한다.

VMWare CD 이미지를 Daemon tools로 변경 후 내 컴퓨터 -> D:\로 가서 데몬 툴을 설치하자. 이 툴은 가상의 CD 롬을 만들고 CD Image (ISO, bin, cue)파일을 시디처럼 사용하게 해 주는 툴이다. 

이제 Direct X를 설치 할 차례다. 하지만 아직 호스트 컴퓨터의 파일을 직접 Win95로 옮길 방법이 없다. Win95는 너무 원시적인 OS라 폴더 공유같은게 없다.

가장 쉬운 방법은 반디집을 이용해서 Direct X 설치 파일을 ISO 형식으로 압축한 다음 CD Image로 불러 오는 방식이다.
Direct X 설치 파일 우클릭 -> 반디집으로 압축 -> 압축 형식을 ISO로 압축 하면 된다.

이제 대충 OS 모양이 나온다.

이제 호스트 컴퓨터의 두기의 고전게임 런쳐가 있는곳으로 간 다음에 Games 하위 폴더에서 문명 : 콜 투 파워 게임을 찾자. 
왠 image.img 파일이 보일 것이다. 아하! Dosbox내에서도 가상 디스크로 구동을 하는구나!

이건 굉장히 합리적인 방식인데, Windows 95 최소 설치만 해도 용량이 250MB를 넘어가게 된다. 
모든 윈도우 고전 게임에 Windows 95를 같이 담았다가는 게임 다운로드 용량도 어마어마 할 것이기에 Windows 95 OS 이미지와 게임 이미지를 분리하여 다운로드 한 다음에 게임 이미지만 교체하여 사용할 수 있도록 한 것이다.

문제는 이 img 확장자는 MAC 컴퓨터로부터 나온거고, VMWare는 이 Img 파일을 읽을 줄 모른다는거다.

다행히 이 img 파일을 VMWare가 읽을 수 있는 vmdk로 변환하는 방법이 있으니

  1. Virtual box에 딸려 있는 Util을 이용하는 것 (vboxmanager convertdd image.img civ_cts.vmdk
  2. 에뮬레이터 Qemu(https://qemu.weilnetz.de/w64) 를 설치하여 딸려 있는 Util을 이용하는 것 (qemu-img convert -f raw -O vmdk image.img civ_cts.vmdk)

둘 중 편한걸 하자. 

이렇게 vmdk로 변환하여 VMWare host에 HDD로 추가 한 다음에 실행을 해 보면!

안돌아감.

왜 앙되는거야!!!

아무 내용도 없는 에러 팝업이 뜨고 그냥 종료 된다.

문명 : 콜 투 파워는 배경 음악을 CD음원으로부터 직접 읽어 들이는 방식인데, 이 방식은 음원 디코딩이 필요 없어서 성능이 느린 예전 컴퓨터에도 원활하게 음악이 안 끊기고 잘 Play되는 잇점이 있어서다.

하지만 두기의 고전게임에 올라 와 있는 문명 : 콜 투 파워는 CD음원을 대신 음원 파일을 로드하여 플레이하도록 패치가 되어 있는 것 같은데 음원 파일을 로드하는 툴이 없어서 나는 에러이다.

_inmm 유틸을 설치하자. 

_inmm238.iso
1.14MB

 

CD Image로 읽은 다음에 _inmm.dll 은 c:\Windows\system 폴더에 복사하고 _inmm238  폴더는 C:\ 에 복사 한 다음에 _inmm.reg 파일을 오른쪽 클릭하여 System 레지스트리에 병합하자.

그리고 다시 실행하면 다음 중 하나와 같은 동작을 한다.

  1. 실행 후 튕긴다.
  2. 에러와 함께 실행이 안된다.
  3. 실행 후 시스템이 멈춘다.

거지같다.

Windows 95, 98 그리고 me 까지는 9x 커널 (가칭) 이라 보호 모드와 리얼 모드를 모두 지원하고 있어서 프로그램이 직접 하드웨어에 접근이 가능하다. 
당시의 OS 운영체제는 매우 느렸기 때문에 대부분의 게임들은 하드웨어에 직접 접근을 하도록 하여 게임 성능을 어느정도 확보 했고 시스템이나 OS의 버그를 이용하는 경우도 많았다.

마이크로소프트에서는 이를 만회하기 위해서 하드웨어 직접 접근할 수 있는 Direct X라는 물건을 내 놓았으나 여전히 성능은 구렸고 사용 방법은 양자역학 뺨 치게 어려웠다. 때문에 제작사들은 Direct X 를 사용함에도 자신들의 노하우를 이용해서 하드웨어를 직접 컨트롤 하는 편법을 많이 썼다. (이런 경향은 Direct X 7.0 에서 개선이 되며 Direct X 9.0c 버전에 이러러서야 많이 해소된다.)

때문에 가상화나 에뮬레이팅에서 매우 불안정하게 동작을 하는 것이다.

PCEM (https://pcem-emulator.co.uk/)이라는 에뮬레이터는 그런 기계적인 요소 하나하나를 가능한 실기에 맞추는걸 목표로 개발 된 에뮬레이터로 저런 게임들이 사용하는 기법들을 모두 실기와 같이 지원하기에 가장 안정적으로 플레이 할 수 있으나, 문제는 그 시절 그 하드웨어만큼 느리게 동작한다.  저 에뮬레이터를 사용한다면 1시간이 넘게 걸리던 Win95 설치를 직접 체험(!!!!) 해 볼 수 있을 것이다.

어쨌거나, Win95 설치는 성공했다. 하지만 게임을 구동하여 플레이는 성공적이지 못했다.