공식 MAME는 diff 패치를 제공한다.
공식 버전의 소스를 받아서 diff 패치 해준 뒤 컴파일하면 해당 버전의 실행파일이 만들어진다.
해당 버전을 구할 수 없어서 직접 컴파일을 시도하였다.
이전 버전에 목을 매는 특별한 이유는 없다. 본인은 MAME를 실사용하기보다는 콜렉션이 취미이기 때문이다. 한국에는 플레이 목적으로 해킹버전을 컴파일하는 경우는 볼 수 있었으나 공식 버전을 컴파일 하는 경우는 아직 찾아볼 수 없었다.
컴파일 유틸리티는 Mingw라는 프로그램이며 이 프로그램은 무료 컴파일러로서
mameworld에서 받으면 된다.
버전별로 컴파일러가 다르므로 MinGW-3.2.0-rc-3.exe + mingw-over-092.zip(0.92 - 0.104u1) 용을 받으면 된다.
MinGW-3.2.0-rc-3.exe를 받아서 설치한다.
기본적으로 C:\Mingw에 설치된다. 아직 중요 컴파일러가 설치되어 있지 않으므로 mingw-over-092.zip를 받아서 압축을 해제한 후 C:\Mingw에 덮어씌운다.
마메 공식 홈페이지에서 0.95 소스를 다운로드 한다.
역시 0.95u1 diff 파일을 다운로드 한다. (찾기 힘들지만 공식 홈페이지 찾아보면 있다.)
이후 C 드라이브 기준으로 설명한다.
C:\mame095s 폴더에 압축을 해제한다.
mame.zip이 압축 해제된다.
mame.zip을 mame095base.zip으로 이름을 바꾸어 준후 마우스 오른쪽 클릭하여 mame095base폴더에 압축풀기를 선택한다. 이유는 나중에 설명.
그럼 내용물은 C:\mame095s\mame095base 안에 압축 해제되어 있을 것이다.
시작-실행에서 cmd를 입력하여 커맨드창을 띄운다.
이제 컴파일러를 실행할 path를 지정해 주어야 한다. 물론 고급 설정창에서 입력하면 항상 지정되지만 버전별로 컴파일러가 다르므로 본인은 그렇게 하지 않았다.
C:\>path=C:\Mingw\bin
입력하면 컴파일러의 위치가 지정된다. 물론 커맨드창을 닫으면 위치 지정은 해제된다.
095u1.diff 파일을 C:\mame095s 폴더에 복사한다.
커맨드창에 cd C:\mame095s 를 입력하여 해당 폴더로 이동한다.
커맨드창에 patch -p0 -E <095u1.diff 를 입력하면 자동으로 패치가 진행된다.
095u1.diff 파일을 메모장으로 열어보면 패치할 위치가 mame095base 폴더로 지정되어 있다.
즉, mame095base 폴더 안에 압축을 풀어야 패치가 정상적으로 진행된다.
패치도중 패치할 대상 또는 파일을 물어보면 실패한 것이다.
이제 커맨드 창에 make를 입력한다.
자동으로 컴파일 되어 C:\mame095s 폴더에 4개의 실행파일이 생성된다.
이때 생성된 mame.exe는 정보보기 하면 컴파일된 날짜와 0.95u1으로 확인된다.
본인은 공식 소스와 공식 diff로만 컴파일하여 공식 0.95u1을 생성하였다.
어짜피 0.95 버전은 Win32버전이므로 DOS에서 실행되지 않는다.