2012년 4월 21일 토요일

MAME 0.94u4 Compile

이전 작업에서 계속 설명한다.

094u4.dif 파일을 메모장으로 열어보면 mame094u3 위치에 패치가 되는 것을 알 수 있다.

0.94u3에서 작업한 결과물을 다른 곳으로 복사 또는 삭제한 뒤 obj 폴더를 삭제한다.

커맨드창에 cd..을 입력하여 상위 폴더로 이동

ren mame094u2 mame094u3 를 입력하여 폴더명을 바꾸어 준다.

patch -p0 -E <094u4.dif 를 입력하여 패치 실행

cd mame094u3를 입력하여 makefile이 있는 폴더로 이동]

make를 입력하여 컴파일 실행

이로써 0.94버전은 0.94u4까지 모두 컴파일 완료 하였다.

src 폴더 내의 version.c를 메모장으로 열어보면

char build_version[] = "0.94u4 ("__DATE__")";

가 나오는데 "__DATE__" 부분을 당시 날짜로 바꾸어 저장한 뒤 컴파일 해도 무방하나 굳이 그럴 필요까지는 없을 듯하다.


MAME 0.94u3 Compile

이전 작업에 이어서 설명한다.

094u3.dif를 열어보면 mame094u2에 패치가 진행되는 것을 알 수 있다.

그럼 아까 진행했던 커맨드창으로 돌아간다.

cd..을 입력하여 상위 폴더로 이동

ren mame094u1base mame094u2를 입력하여 폴더명을 바꾸어 준다.

obj폴더 및 이전에 생성된 결과물을 다른 곳으로 복사한 뒤 삭제한다.

patch -p0 -E <094u3.dif를 입력하여 패치한다.

cd mame094u2를 입력하여 makefile이 있는 폴더로 이동

make를 입력하여 컴파일을 시작한다.

참고로 0.94u3 컴파일 시 Q9400 CPU,DDR2 4G 컴퓨터에서 약 5분 정도 걸리는듯 하다.

0.94u1 및0.94u2의 경우 10~20분, 0.144u1의 경우 1시간 이상 걸리는듯 했다.


MAME 0.94u2 Compile

위와 같이 0.94u1이 성공적으로 컴파일 완료 되었다.
094u1 컴파일시 4개의 파일(chdman.exe,mame.exe,romcmp.exe,xml2info.exe)이 생성되는데 이것이 컴파일된 결과물이다.
094u1 폴더 내에 obj폴더라는 임시폴더가 생성된 것을 볼 수 있는데 이것을 삭제한다. obj 폴더가 남아 있을 경우 다음에 있을 0.94u2 컴파일 시 오류가 날 수 있다.

094u2.dif 파일을 메모장으로 열어보면

드래그한 부분을 보면 094u1base 폴더가 지정되어 있는 것을 확인할 수 있다.

커맨드창에 cd..을 입력하여 상위 폴더로 이동한다.

커맨드창에 ren mame094 mame094u1base를 입력하여 C:\mame094s\mame094 폴더의 이름을 094u1base로 바꾸어 준다.

patch -p0 -E <094u2.dif 를 입력하여 패치 진행

cd mame094u1base를 입력하여 makefile이 있는 해당 폴더로 이동한다.

make를 입력하면 컴파일이 진행된다.


MAME 0.94u1 Compile

이전 MAME 0.95u1 Compile 게시물을 참조하여 컴파일 유틸리티를 그대로 사용한다.

마메 공식 버전 다운로드 페이지에서 0.94 소스를 다운로드 한다.

C드라이브 기준으로 설명한다.

C드라이브 루트에 소스파일을 저장한 후 오른쪽 버튼을 눌러 mame094s 폴더에 압축풀기를 선택한다.

그럼 C:\mame094s에 mame.zip으로 압축이 풀린다.

mame.zip을 mame094.zip으로 이름을 바꾸어 준 후 역시 오른쪽 버튼을 눌러 mame094 폴더에 압축풀기를 선택한다.

094u1.dif 파일을 C:\mame094s에 복사한다.

시작-실행-CMD를 입력하여 커맨드창을 띄운다.

C..을 입력하여 C 드라이브의 루트로 이동한다.

path=C:\Mingw\bin 입력 후 엔터

cd mame094s 입력하여 mame094s 폴더로 이동한다.

patch -p0 -E <094u1.dif 입력 후 엔터를 치면 패치가 진행된다.

cd mame094를 입력하여 makefile이 있는 폴더로 이동한다.

make를 입력하면 컴파일이 진행된다.


2012년 4월 20일 금요일

MAME 0.95u1 Compile

공식 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에서 실행되지 않는다.


2012년 4월 13일 금요일

기타 포털과 네이버의 수준 차이

질문 : 지나가다가 봤는데 이런 색상이 이쁜데 무슨 색상인가요?

이런 질문 게시물이 올라 왔다고 할때 다른 포털과 네이버의 유저들은 어떤 답을 하게 될까?
이것은 픽션이며 답변 또한 생각한 것에 지나지 않는다.

기타포털 :

디자인20년 님 : 이것은 기본적으로 ####색 계통으로 보이며 모니터 상으로는 ####색이라고 할 수 있습니다. 시각적으로는 ####색으로 보이나 ####색과 가까운 색이라 할 수 있으며 좀더 자세하게 색상값을 ##프로그램으로 확인한 결과 RGB색은 #######이며 학술적인 색상은 ####이며 일반적으로 ####색이라 할 수 있습니다. 혹시라도 겉의 색을 말씀하신 거라면 쪽지 주십시오.
└건축20년 님 : 이것은 모니터는 ####색으로 보이나 ####색은 벽지에 발랐을 경우 ####색이 되며 페인트칠의 경우 ####색이 됩니다. 건축자재가 자연적으로 ####색을 띈 경우는 드물며 ####색은 ####의 특징이 있어서 ####를 첨가해야 #### 효과를 볼 수 있습니다. 건축학적으로 볼 때 ####색은 ####한 느낌을 주어 ####를 시공하여 ####한 느낌을 가져와서 수준 높은 공간감을 주어 비교적 고가에 팔립니다.
그래픽20년 님 : 이것은 ####에 많이 쓰이는 색으로 ####색과 ####색의 조화가 어우러집니다. 컴퓨터로 가볍게 ####와 ####를 섞어서 쓰기도 해요.
게임폐인20년 님 : 이것은 ####게임에 많이 쓰이는 색으로 ####맵과 ####캐릭터에 많이 쓰입니다. 이것과 비슷한 색으로 게임을 만들면 ####특징이 있으며 ####한 결과를 가져옵니다. 캐릭터가 살아서 움직이는듯한 느낌이랄까요. 하지만 잘 섞어서 써야 ####한 효과를 볼 수 있습니다. 잘못쓰면 기형적인 느낌이 납니다.
질문자 님 : 감사합니다.

네이버 :

지나가던 님 : 가운데요?
└허접 님 : 가운데 말씀하시는 듯...
└댓글왕 님 : 지나가던 님 반갑습니다. 여기서 또 뵙네요.
└질문자 님 : 가운데요...
초수 님 : ##색 아닌가요?
└댓글왕 님 : ㅇㅇ ##색이 맞는듯...
중수사칭 님 : ##색 같습니다.
중수 님 : ##색이 확실합니다만...
└궁금한 님 : 이게 왜 ##색인가요?
└중수 님 : 이게 ##색은 아니잖아요?
└질문자 님 : 저도 ##색이라고는 생각했습니다만...
└댓글왕 님 : 아무렴 중수님이 답변하신 건데 맞겠죠.
고수 님 : ##색 맞습니다.
└댓글왕 님 : 고수님 반갑습니다...
초고수 님 : ##색이요.
└댓글왕 님 : 초고수님 반갑습니다...
찌질한 님 : 윗분들 말이 맞습니다.
└댓글왕 님 : 글쵸?
초수 님 : 제 친구가 그러는데 ####색이라고 하던데요?
└댓글왕 님 : 초고수님께서 이미 ##색이라고 하셨습니다만...
재야의초고수 님 : 이 양반들 할말없게 만드시네...####색이 맞습니다. 잘보고 갑니다.
└댓글왕 님 : 중수님이 ##색이라고 하셨습니다만...
└재야의초고수 님 : 찍어보니 ####색입니다.
└중수 님 : 지금 태클거시는 건가요? 다른분들도 ##색이라고 하고 계십니다만...
└초딩 님 : 우리 아빠가 ###색이래요.
└초딩2 님 : 우리 엄마는 #####색이라던데요?
└유딩 님 : 오늘 색칠공부 할때 나온 색이다~!
└댓글왕 님 : 어째서 이게 ####색입니까?
└재야의초고수 님 : 이것은 ####프로그램으로 ####작업을 하면 ####색상이며 RGB색상은 ########이며 그래픽적으로 봤을때는 ####색상에 가깝습니다.
(재야의초고수 님께서 카페를 탈퇴하셨습니다.)
└중수 님 : 오호, 그럴수도 있군요. 일리가 있는듯...
└찌질한 님 : 못알아 듣겠어요. 단어가 너무 어렵습니다.
└댓글왕 님 : 재야의초고수 님 직업이 그래픽하세요?
└중수 님 : 우와, 따봉! 이런분을 원했습니다.
└댓글왕 님 : 몰라뵜습니다. 많은 가르침 주세요.
└매니저 님 : 재야의초고수 님 탈퇴하셨어요.
└댓글왕 님 : 매니저님 저 댓글 많이 달았는데 등업좀...

이미 규모가 큰 카페가 자리잡고 있는데 동종의 신설카페가 왜 계속 생기는지 도무지 모르겠다.
생기는 것까지는 좋은데 네이버 카페는 등업제도가 좀 심하다.
따라서 뻘글이 굉장히 많다. 카페에 가입하고서 게시물을 읽기 위해 카페 취지와는 상관없는 유머글이 복사되어 올라온다.
이것을 해결하는 방법은 무궁무진한데 네이버는 해결할 기미가 없다.
모든 카페에 적용될 방법을 연구하여 특허신청이나 해볼까... 일반인이 불편했던 점을 특허신청 한다면 대형포털들은 앞다투어 해결책을 연구할 것이다.