MAME

공식 홈페이지

김마메랑은 무관하다 사실은 관계 있다

1 소개

Multiple Arcade Machine Emulator의 약자. 말 그대로 오락실 게임 기계의 CPU, 비디오, 사운드 등을 가상으로 구현해서 기판에서 PC로 덤프된 롬파일을 실행시키는 에뮬레이터. 과거에는 오픈소스 소프트웨어면서도 자유 소프트웨어의 기준에 부합하지 않는 여러가지 제약이 있는 독자적인 라이선스를 사용한 탓에 자유 소프트웨어라고 보기는 어려웠으나, 2016년에 BSD/GPLv2 이상으로 갈아타면서 현재는 자유 소프트웨어이기도 하다.

'메임'이라고 발음하는 게 맞지만,[1] 우리나라에서는 '마메'로 굳어져 버렸기 때문에 '메임'이라고 하면 못 알아듣는다. 어차피 주로 인도유럽어족계 말로도 '마메'라 발음하니 언어마다 다르다고 할 수 있다.

오락실 게임을 돌리는 에뮬레이터이기 때문에 일단 프로그램 자체는 가볍다. 그러나 PC, 맥, XBOX, 플레이스테이션 등 게임을 구동할 수 있는 플랫폼이 어느 정도 한정되어있는 가정용 게임 산업과는 달리, 오락실 게임들은 업체마다 사용하는 플랫폼이 천차만별이기에 MAME는 버전업되어 게임이 추가되면 될수록 그런 플랫폼들을 하나하나 모두 지원해야 하기 때문에 점점 요구되는 시스템 사양은 늘어나고, 용량이 커질 수밖에 없다.

대부분의 사람들은 이것을 게임을 플레이하는 용도로 사용하지만, MAME 제작진들은 게임플레이는 뒷전이고 기계를 정확하게 그대로 재현하는 데만 신경쓰기 때문에 요즘 나오는 빠른 기판들의 경우 최적화가 전혀 안 되어있어 속도가 매우 느리다. 마음만 먹으면 속도를 높일 수 있는 사람들이 정확성을 이유로 이것을 해결하지 않고 있기 때문에 애를 먹고 있는 사람들이 많다.[2] 다행히도 2000년대 중후반부터 멀티쓰레딩을 지원해서 듀얼코어 CPU 이용자들은 그나마 덕을 보고 있다. 사실 최소 최적화는 이제는 구시대 유물이 된 펜티엄4로도 거의 호환이 가능하다. 현재 집계된 과거형 오락실 게임만 하더라도 5천개가 넘어간다. 그걸 하나하나 다 해보는 유저들도 대단하다. 70% 이상의 게임이 구동가능하지만 일부는 비디오/스트림 덤핑 등 때문에 구동은 가능한데 제대로 안 돌아가든가 버벅거린다(...). 어떤 게임들은 샘플을 이용해서 사운드를 재생하는 편법을 쓴다. 이나 모나코 GP처럼 TTL#s-4만 쓰는 비 CPU 기반 게임을 왠만하면 지원하지 않고, 세가의 MODEL1은 몇개의 게임만 불완전하게 지원하지만, MODEL2MODEL3는 아예 지원을 하지 않는다.

구동이 가능한 게임이더라도 게임이 출시된 뒤에 5년이 지나지 않은 게임은 지원을 하지 않는 것도 일종의 암묵의 룰이다. 솔직히 일부 게임을 제외하고는 모든 롬이 저작권 위반이라고 봐야 한다. 그렇지만 당장 주력으로 판매하지 않고 있거나 판매 중단한 오래된 게임만 롬파일로 만들면 게임 개발사들이 그냥 묵인하고 넘어가는 경우가 많다. 하지만 최신 게임의 롬 파일이 돌아다닐 경우 개발사가 당장 MAME 개발자, 롬 배포자 등에게 고소미#s-2를 시전해서 MAME의 존속과 업데이트를 위협할 것이다. 그래서 그 위험을 피하기 위해 '5년 룰'을 만들어 스스로 준수 중이라고 보면 될 듯. 예전에 CPS2 롬을 덤프한 사람은 아예 3년이 지나지 않은 게임은 덤프된 자료를 공개하지 않았다. 하이퍼 스트리트 파이터 2가 대표적인 예시. 다만 예전에 네오지오 때(2000년~2005년)는 그거 다 무시되고 개조된 버전들이 돌아다니기도 하였지만...

0.148 버전까지는 디렉토리 내부 구조를 열어봐도 되는 파일과 안 되는 파일을 구분짓는 헤더로 따로이 디렉토리를 구분지어 놨는데. 0.150 버전 이후부터는 아예 열람을 못하게 막아놨다. 불법적으로 취급하는 사람들에 대한 조치인 듯.

2010년에는 개발자들의 노력으로 흑역사하이퍼 네오지오 64도 MAME로 실행할 수 있게 되었다. 다만 완벽하지 않으므로 사운드 지원이 안 되며[3], 특히 시혼 64는 라이프바, 컷인 등등 2D 그래픽들이 폴리곤에 가려지는 처참한 모습도 볼 수 있다. 개발자가 말하기를 하이퍼 네오지오가 완벽히 구동되려면 4~5년을 기다려야 할 듯 하다고... 그러나 6년 지난 아직도 불완전하다.

2011년에는 케이브 3세대 게임들이 지원되어 뭇 슈팅 덕후들에게 충격과 공포를 안겨줬으나 아무래도 현재 XBLA로 팔고 있는 게임도 있는 만큼 케이브에서 직접 마메팀에 케이브 3세대 게임들을 지원 목록에서 삭제시켜 달라는 요청을 했다. 그리고 2014년 1월 1일부로 공식 지원 목록에 다시 추가되어서 MAME 0.153 이상 버전에서는 다시 공식적으로 지원하게 되었다.

마메가 제공하는 게임들은 동전이 필요한 오락실 게임이고, 마메는 특성 상 동전을 무한히 사용할 수 있다. 덕분에 오락실에서 못 깨온 수많은 게임의 엔딩을 볼 수 있게 되었다. 발컨이라도 무한 코인 러시로 게임을 클리어할 수 있다. 다만 게임에 따라서는 코인 러시로도 해결하지 못할 정도로 악랄한 구간이 존재하거나 컨티뉴 자체가 없는 게임도 있으므로 게이머의 실력 또는 치트나 강제 저장을 요구하는 경우가 있다.

MAME도 창 모드로 실행할 수 있다. 커맨드 창에서 mame.exe -createconfig 를 입력하면 mame 디렉토리 내에. mame.ini가 생성된다. 이 파일 내부에 window 다음에 0인 부분을 1로 수정하고 MAME를 구동시키면 창 모드로 플레이가 가능하다. 다만 프론트엔드와 같이 쓰는게 일반적이거니와 한참 더 편하기도 해서 딱히 알아둘 필요는 없고, 아는 사람도 많지 않다.

MAME 0.142u4 버전부터 HLSL 기능을 지원하는데, GPU가 픽셀 셰이더 3.0 이상을 지원할 경우 이걸 통해서 CRT스럽게 화면을 볼록하게 한다든가 화면 뭉개기 등을 사용할 수 있어서 좀 더 새로운 화면으로 게임을 플레이할 수 있게 되었다. 물론 MAME와 소스 및 버전 번호를 공유하는 MESS에서도 마찬가지.

2 변종들

MAME는 오픈소스라서 윈도우즈가 아닌 다른 OS용으로, PC가 아닌 다른 기종용으로도 많이 나왔다. 심지어 GP32PSP용 MAME까지 있다. (물론 하드웨어 성능 때문에 실행되는 게임들은 고전 게임에 한정) 물론 소스를 잘 다듬으면 현재 나온 게임기에서도 구동은 가능하다고 한다. 그래서 몇몇 게임 제작사에서 자사의 고전 게임 모음 컬렉션에 MAME 소스를 사용하기도 한다.[4]

게임 개발사들의 소송방지바람을 위해서 2016년까지는 소스 코드를 열람하고 수정할 수는 있었지만 상용으로 재배포할 수 없었다. 시간이 지나면서 새로운 문제가 생겼는데, 가령 입장료를 받는 게임 박물관에서 고전 게임을 전시하거나, 게임 제작사에서 자사의 게임을 MAME를 통해서 배포하고 싶어도 상용 배포 금지 조항이 문제가 되었다. 그래서 MAME 프로젝트는 2015년부터 거의 1년 동안 모든 개발자들을 찾아다니면서 BSD/GPLv2 이상으로 라이선스 변경에 대한 동의를 얻었다. 그 결과 2016년 3월에 라이선스 변경이 확정되었다. 가마수트라의 관련 글.

변종 MAME의 하나인 MAME Plus!는 많은 원칙을 어기고 있기 때문에 공식 포럼에서 저 에뮬레이터 이야기를 하면 달갑지 않게 보는 상황이 종종 보인다. 그리고 개발 중단

일본에서 제작한 MAME Plus Plus!라는 변종 MAME도 있는데 넷플레이 기능을 제공하여 상당한 인기를 끌었으며 원래 극악한 프레임수를 보여주는 3D 게임들에 대해 Zinc 플러그인 기능을 제공하여 원활하게 3D 게임이 구동되게끔 한 놀라운 변종이었다. 허나 당연하게도 Zinc 제작자가 이에 대해 분노, MAME Plus Plus!가 계속 업데이트 되면 더이상 Zinc를 개발하지 않겠다고 엄포를 놓은 관계로 한때 이 버전이 개발이 중단된 상태였다가 3D 플러그인 기능만 빠진 채로 언제부턴가 다시 버전업을 재개중.(변종 마메의 하나인 MAMEhub는 한 기기안에 두명 이상의 플레이어와 협력/대전 플레이를 지원한다. 이 경우에는 까임보다는 오히려 옹호가 더 많다.)

핀볼을 구현한 PINMAME도 있다. 어떤 방식이냐면 기본 롬은 전광판과 I/O 관련밖에 표시안되지만 핀볼기계에 새겨진 그림들과 LED 점등여부를 구현한 아트웍 파일들이 있어야 제대로 구동되는 식인듯 하다. 비주얼 핀볼로 핀볼 에뮬통을 만들라는 의도인듯 하다. 문제는 PINMAME용 롬들이 하나같이 수천개 단위다 보니 이 pinmame 전용 롬이 편입된 0.141버전부터 전체롬 스캔속도를 올리는데 일조하였다.

스코어링의 신뢰성을 위해 TAS나 강제 세이브 등의 기능을 제거한 울프마메라는 변종도 있다.

오락실에 가보면 400가지 게임기니 매직박스니 해서 여러 게임 가운데 하나를 골라 플레이할 수 있는 기계를 종종 볼 수 있는데, 다름아닌 이 MAME를 베이스로 한 컴퓨터를 캐비닛에 넣어 구동하는 위대한 대륙의 물건이다. 게임별로 키설정을 저장할 순 없는건지 KOF 시리즈에 맞춰 나이키 키배열(위에서부터 4 5 6 1 2 3 배열)로 되어 있는지라 스파 시리즈를 비롯한 캡콤의 6버튼 격투 게임들은 위아래가 뒤바뀐 키배열이 되어버리니 정신건강상 없는 셈 치는 게 좋다. 또한 반응 속도가 조금 느리다는 이야기도 있다.

덤으로 포포루에서도 MAME의 소스를 쓱싹하여 서비스를 제공하는 데 쓰기도 했다. 포포루 초기 시절에 GM이랑 대결하는 이벤트방을 열었는데 거기서 몇몇 유저가 마메 베낀 거 아니냐고 질문하자 대답은 그런 오해를 많이 받지만 베끼지 않았고 독자적인 소스를 사용하고 있다고 했다(...). 모든 게임은 롬 파일로 구동되며 특정 지점에서 세이브 된 파일을 로드하면서 게임이 시작된다. 한 예로 날짜에 따라 변하는 킹오파 98의 캐릭터 사이의 상성도 포포루에선 365일 언제나 고정이었다. 제작자와의 협의 따윈 없었던 듯. 포포루도 사실 불법의 여지가 있었다. 사실상 그들도 저작권 준수, 적법성에 대해서는 아무런 책임을 지지 않는다고 언급했으니.

HBMAME는 MAME가 지원하지 않는 일부 기판을 지원한다. 다만 모나코 GP 등의 일부 게임은 사운드 샘플이 있어야 한다.
  1. 좀더 정확히 하면 영어 단어 'maim'과 같은 발음. 현재는 사라진 옛 공식 홈페이지에 있던 내용이다. 'name'이나 'game'을 어떻게 읽는지 생각해 보자.마미로도 읽을 수 있다
  2. 당연한 것이긴 하다. 애초에 목적이 속도가 아니니까.
  3. 2016년 1월 24일 기준으로 최신 버전은 사운드가 나오지만 제대로 나오진 않고 그나마 나오는 것도 굉음 수준이다.
  4. 근데 게임 롬파일 덤프해서 배포하는 것도 저작권 위반이긴 매한가지이다. 물론 MAME 소프트웨어 자체는 저작권을 위반한 소프트웨어가 아니지만, MAME 위에서 돌리는 롬파일 대부분이 저작권을 침해한 것들이다. 단지 오래된 게임이 담긴 롬파일이라서 개발사에서 법적 조치를 갖지 않고 내버려 두고 있을 뿐이다. 아니면 개발사가 망해서 해당 게임이 버려져 있거나...