고전 아케이드 게임 에뮬레이션에 대한 용어와 에뮬레이터들의 특성이 잘 설명된 자료가 있어 소개드립니다.
아케이드 에뮬레이션 시작하기
아케이드 에뮬레이션은 콘솔 에뮬레이션과는 다른 접근 방식이 필요합니다. 아케이드 에뮬레이터 용어 또한 다른 종류의 에뮬레이션에서 사용되는 용어와 다를 수 있습니다.
[ 목차 ]
1단계 : 용어 이해
2단계 : 시스템에 맞는 아케이드 에뮬레이터 선택하기
3단계 : 해당 에뮬레이터에 맞는 올바른 버전의 롬 세트 사용
각 에뮬레이터는 특정 강점을 가지고 있으며 에뮬레이터가 지원하는 고유한 버전의 아케이드 "롬 세트"가 필요합니다.
모든 아케이드 에뮬레이터 코어는 각기 다른 하드웨어와 게임에 최적화되어 있습니다.
이 가이드는 어떤 코어를 사용할지 결정하고 해당 에뮬레이터에 필요한 롬셋 버전을 찾는 데 도움을 주기 위한 것입니다.
1단계: 용어 이해하기
아케이드 에뮬레이터(Arcade emulators) : 아케이드 머신은 콘솔/컴퓨터와 마찬가지로 1971년 최초의 아케이드 머신이 출시된 이후 수많은 제조업체와 세대가 있었으며, 따라서 "아케이드 에뮬레이터"라고 부르는 것은 실제로 수천 개의 다양한 시스템을 다양한 수준으로 충실하게 에뮬레이트할 수 있는 멀티 시스템 에뮬레이터입니다. 아케이드 에뮬레이터로 잘 알려져 있지만 콘솔과 컴퓨터도 에뮬레이션할 수 있다는 점에 유의하세요.
덤프(Dump) : 덤프는 게임 보드/카트리지에 있는 칩 1개를 디지털로 표현한 것입니다.
롬(Rom) : 롬은 하나의 덤프 또는 여러 개의 덤프가 연결된 하나의 파일을 말합니다.
롬셋(Romset) : 말 그대로 "롬 세트"로, 롬의 집합을 의미합니다. 롬셋은 하나 또는 여러 개의 개별 롬이 포함된 아카이브이며, 아케이드 에뮬레이터는 이 게임 형식을 기대합니다.
롬셋 버전(Romset version) : 특정 롬셋이 여러 버전으로 존재하는 것은 드문 일이 아닙니다. 그 이유는 때때로 칩을 디지털화하려는 시도가 실패하여 롬셋이 90%만 완성되어 게임을 완전히 사용할 수 없게 되는 대신 에뮬레이터 코드에 해결 방법을 구현하여 어떻게든 게임을 플레이할 수 있도록 하기 때문입니다. 이러한 칩 중 하나가 마침내 제대로 된 덤프를 얻을 때마다(수십 년 후에 발생할 수 있음), 현재 진행 중인 아케이드 에뮬레이터는 해결 방법을 제거하고 올바른 덤프를 로드하는 방식으로 코드를 업데이트하므로 여러 버전이 존재할 수 있습니다.
샘플(Samples) : 에뮬레이터가 실제 게임 보드에서 나오는 소리를 에뮬레이트하는 대신 녹음된 소리를 사용하는 경우가 있습니다. 칩이 덤프되지 않았거나, 에뮬레이터가 해당 사운드 보드를 에뮬레이션하지 않거나(아직), 에뮬레이터가 다른 소스(OST 등)에서 나오는 고품질 사운드로 에뮬레이션을 대체할 수 있도록 허용하는 등 여러 가지 이유가 있을 수 있습니다.
CHD: 일부 아케이드 게임은 에뮬레이션을 위해 내장 하드 드라이브, CD-ROM, 레이저 디스크 또는 기타 미디어의 데이터가 필요하며, 이러한 형태의 미디어는 CHD 파일로 패키징됩니다. CHD 파일은 아케이드 롬셋이 설치된 폴더 내의 하위 폴더(롬셋 이름에 따라)에 복사해야 합니다.
또한 다양한 종류의 롬셋이 존재합니다:
바이오스 롬셋(Bios romset) : 아케이드 시스템을 실행하는 데 필요한 바이오스가 포함된 롬셋입니다. 예를 들어, 네오지오 롬셋에는 SNK의 네오지오 카트리지 시스템을 실행하는 데 필요한 바이오스가 포함되어 있습니다.
상위 롬셋(Parent romset) : 아케이드 캐비닛에는 여러 버전이 있을 수 있으며, 가장 최신 버전으로 추정되는 롬셋에서 덤프된 롬셋이 상위 롬셋입니다. 부모 롬셋이 작동하려면 바이오스 롬셋이 필요할 수 있습니다.
복제 롬셋(Clone romset): 이전 버전으로 추정되는 아케이드 캐비닛 버전에서 덤프되거나 해당 아케이드 캐비닛의 비공식 버전(해적판, 해킹)에서 덤프됩니다. 복제 롬셋은 부모 롬셋이 작동해야 할 수 있습니다.
병합되지 않은 전체 롬세트(Full non-merged romset): 아카이브에는 해당 롬셋을 실행하는 데 필요한 모든 파일(상위 및 바이오스 롬셋의 모든 롬 포함)이 포함되어 있으므로 롬셋을 독립형으로 사용할 수 있습니다.
병합되지 않은 롬셋(Non-merged romset): 아카이브에 부모 롬셋의 모든 롬을 포함하여 해당 게임을 실행하는 데 필요한 모든 파일이 포함되어 있으므로 독립형으로 사용할 수 있습니다. 이 형식에서는 롬셋을 실행하기 위해 별도의 바이오스 롬셋이 필요할 수 있습니다.
분할 롬세트(Split romset): 이 형식을 사용하면 복제 롬셋에는 부모 롬셋에 있는 롬이 포함되지 않으며, 부모 롬셋에는 바이오스 롬셋(존재하는 경우)에 있는 롬이 포함되지 않습니다.
병합된 롬세트(Merged romset): 클론이 부모 롬세트 압축 파일에 병합되므로 롬세트에 두 개 이상의 게임이 저장됩니다.
권장되는 롬세트
병합되지 않은 롬셋(Non-merged romset)은 몇 개의 롬셋만 사용하려는 경우 권장되며, 분할 롬셋(Split romset)은 에뮬레이터에서 지원하는 전체 롬셋 컬렉션을 유지하려는 경우 권장됩니다. 병합된 롬 세트는 에뮬레이터 내에서 게임의 대체 버전을 실행하는 것이 까다롭기 때문에 전혀 권장하지 않습니다.
2단계: 시스템에 맞는 아케이드 에뮬레이터 선택하기
멀티 시스템 아케이드 에뮬레이터에는 두 가지 제품군이 있습니다: FinalBurn과 MAME입니다. 이러한 에뮬레이터는 사용자가 자신의 장치에 가장 적합한 코어를 선택할 수 있도록 여러 버전으로 제공됩니다. 또한 해당 콘솔을 기반으로 아케이드 하드웨어를 에뮬레이트할 수 있는 몇 가지 콘솔 에뮬레이터도 있습니다. "최고의 아케이드 코어"는 없으며, 각 코어마다 밸런스가 다르기 때문에 사용 중인 디바이스와 플레이하려는 게임을 알지 못하면 추천하기 어렵습니다.
정확성
이론적으로 최신 버전의 에뮬레이터는 항상 더 정확해야하므로 게임의 그래픽, 사운드 및 게임 플레이가 원래 캐비닛에 더 충실 할 가능성이 높습니다. 실제로는 일부 버전에는 수정 사항이 백포트되고 일부 버전에는 수정 사항이 적용되지 않는 구형 MAME 코어의 경우 상황을 예측할 수 없습니다.
입력 지연
정확도 개선은 입력 지연 프레임을 추가하거나 제거할 수 있습니다. 파이널번 네오와 MAME(현재버전)가 평균적으로 입력 지연이 가장 낮은 것으로 알려져 있습니다. 또한 FinalBurn Neo는 런어헤드 및 프리-선점 프레임 기능을 완벽하게 지원하기 때문에 인풋렉이 거의 0프레임에 가깝다는 점에 유의하세요. 런어헤드는 부분적으로 다중 MAME 코어(MAME-Current, MAME2003-Plus, ...)에서도 사용할 수 있으며, 두 번째 인스턴스를 권장합니다.
성능
정확도가 높다는 것은 일반적으로 에뮬레이션이 CPU에 더 많은 부담을 준다는 것을 의미하므로, 이전 버전의 에뮬레이터는 일반적으로 정확도를 희생하더라도 성능이 더 좋으며 최신 버전에 성능 문제가 있는 경우 시도해 볼 가치가 있습니다. 정확도만이 성능 퇴보의 유일한 이유는 아니며, 에뮬레이터 프레임워크도 영향을 미치며, 특히 프레임워크가 수년에 걸쳐 지속적으로 업데이트된 MAME에서 이러한 현상이 두드러지게 나타납니다.
지원 게임
아케이드 에뮬레이터는 수년에 걸쳐 새로운 기기에 대한 지원을 계속 추가하므로 최신 버전일수록 더 많은 게임을 지원합니다. 이는 성능에 관한 한 양날의 검과 같아서, 이전에 에뮬레이트되지 않았거나 불필요한 구성 요소의 기능을 추가하기 위해 이미 에뮬레이트된 구성 요소를 업데이트해야 할 수 있으며, 이 기능이 필요하지 않은 머신의 에뮬레이트 성능에도 영향을 미칠 수 있기 때문입니다.
에뮬레이터 목표
MAME의 목표는 게임과 관련이 없는 기계(프린터, 자판기 등)를 포함하여 현존하는 모든 기계를 최대한 정확하게 에뮬레이트하는 동시에 철저히 문서화하는 것입니다. FinalBurn의 목표는 주로 게임 소프트웨어로서 최종 사용자에게 편안한 경험을 제공하는 것이며, 기존 캐비닛에는 없던 옵션 기능(최신 컨트롤러로 더 나은 경험을 위한 대체 컨트롤, 대체 고품질 음악 등)을 포함할 수 있습니다. MAME 2003-Plus는 FinalBurn과 거의 동일한 목표를 가지고 있으며, 두 에뮬레이터는 실제로 몇 가지 기여자를 공유합니다.
지원 팀
마지막으로, 대부분의 아케이드 코어는 실제 유지 관리자가 없으며 지원 팀이 있는 코어가 원하는 게임을 제대로 플레이할 수 없는 경우 대부분 고정 시간 대안으로 존재합니다. 파이널번 네오와 MAME 2003-plus에는 지원팀이 있습니다(MAME 2003-플러스는 MAME 팀에 의해 작성되지 않은 하드포크라는 점에 유의하세요). MAME(현재버전)는 정기적인 업데이트를 받지만 알려진 문제를 처리하는 정기적인 유지 관리자가 없습니다. 트위터에서 제공하는 MAME 코어에 대해 MAME 팀의 도움을 받으려는 시도는 하지 않는 것이 좋습니다.
사용 가능한 모든 코어에 대한 빠른 둘러보기
FinalBurn Neo
대부분 정확하며, 일부 게임에서 MAME(현재버전)보다 더 정확할 수 있습니다.
알려진 최신의 좋은 롬셋을 사용합니다.
상당히 빠릅니다.
지원 팀이 있습니다.
3D 게임을 지원하지 않고, MAME보다 적은 수의 2D 게임을 지원합니다.
많은 핵과 홈브루를 포함한 새로운 게임에 대한 지원을 계속 추가합니다.
MAME 2003-Plus
원래는 MAME 2003에서 포크되었지만 최신 버전의 MAME에서 일부 에뮬레이션 수정 사항을 통합하기 때문에 일부 게임에서 상당히 정확할 수 있습니다.
이 포크는 매우 빠르며, 원래 작성자는 펜티엄 III @ 733mhz (Xbox OG)에서 실행하도록 의도했습니다.
고정 롬셋이 없으며 항상 최신의 알려진 좋은 롬셋을 사용하지도 않습니다.
지원 팀이 있습니다.
FinalBurn Neo에서 아직 지원되지 않는 몇 가지 고전 게임을 지원합니다.
새로운 게임에 대한 지원을 계속 추가합니다.
MAME 현재 버전
MAME 현재 버전는 일반적으로 가장 느린 코어이며 가장 많은 메모리를 소비하는 코어입니다.
일반적으로 가장 정확합니다.
알려진 최신의 좋은 롬셋을 사용합니다.
에뮬레이트된 머신의 범위가 가장 넓습니다.
새로운 게임에 대한 지원을 계속 추가합니다.
FinalBurn 알파 2012
메모리가 매우 제한된 장치(Wii, NDS, ...)를 사용하는 경우 최적화된 메모리 사용을 위해 코어를 분할합니다.
고정 롬 세트가 있습니다.
파이널번 네오의 이전 버전이므로 더 빠르지만 정확도가 떨어지고 더 적은 게임을 지원하며, 리브레트로 통합도 좋지 않습니다.
초저전력 기기에서만 대안으로 고려해야 합니다.
MAME 2000
가장 빠른 아케이드 코어입니다.
가장 부정확한 아케이드 코어입니다.
고정 롬셋이 있습니다.
지원 게임 목록이 가장 적습니다.
초저전력 기기에서만 대안으로 고려해야 합니다.
MAME 2003
MAME 2000보다 느립니다.
MAME 2000보다 더 정확합니다.
고정 롬 세트가 있습니다.
MAME 2000보다 더 많은 게임을 지원합니다.
전혀 사용하지 말아야 할 것 같고, MAME 2003-Plus가 더 낫습니다.
MAME 2010
MAME 2003보다 느립니다.
MAME 2003보다 더 정확합니다.
고정 롬 세트가 있습니다.
MAME 2003보다 더 많은 게임을 지원합니다.
MAME 2003가 제공하는 대부분의 흥미로운 기능들이 MAME 2003-Plus로 백포트되었으며, 많은 게임이 추가되었습니다.
MAME 2015
MAME 2010보다 느립니다.
MAME 2010보다 더 정확합니다.
고정 롬 세트가 있습니다.
MAME 2010보다 더 많은 게임을 지원합니다.
MAME 2016
MAME 2015보다 느립니다.
MAME 2015보다 더 정확합니다.
고정 롬셋이 있습니다.
MAME 2015보다 더 많은 게임을 지원합니다.
3단계: 해당 에뮬레이터에 맞는 올바른 버전의 롬셋 사용
아케이드 롬 세트에 권장되는 형식은 zip이며, 가장 빠른 로딩과 가장 폭넓은 지원을 제공합니다. 7zip이 작동할 수도 있고 그렇지 않을 수도 있습니다.
앞서 말했듯이 아케이드 에뮬레이터는 수천 대의 다양한 기기를 에뮬레이트하므로 특정 롬셋을 실행하는 기기를 식별할 수 있는 수단이 필요하며, 이를 위해 아카이브의 파일 이름을 사용하기로 결정했습니다. 아케이드 롬셋의 이름을 바꾸면 작동하지 않습니다.
롬셋 내의 각 파일은 특정 목적(프로그램 데이터, 사운드 데이터, 그래픽 데이터 등)을 가진 칩의 덤프이므로 에뮬레이터는 각 덤프의 역할을 식별해야 하며, 이를 위해 서명(crc)을 사용하기로 결정했습니다(파일 이름은 때때로 불량/해킹된 덤프를 로드하기 위한 대체 수단으로 사용될 수 있습니다). 롬 세트에 에뮬레이터에 필요한 정확한 파일이 포함되어 있지 않으면 작동하지 않습니다.
팁
일반적으로 선택한 에뮬레이터에 대한 전체 비병합 롬셋(Full non-merged romset)을 사용하면 더 나은 결과를 얻을 수 있습니다. 개별 아케이드 롬셋으로 시작하면 일반적으로 어떤 에뮬레이터를 대상으로 하는지 또는 게임 실행에 필요한 모든 파일(바이오스, 부모)이 포함되어 있는지 알 수 없기 때문에 작동하지 않을 가능성이 높습니다. 전체 비병합 롬셋(Full Non-Merged romsets)은 각 롬셋 압축 파일에 하나의 게임에 필요한 모든 파일이 포함되어 있으므로 시작하기에 가장 간단한 롬셋 형식입니다.
출처 : Getting Started with Arcade Emulation - Libretro Docs
번역 : Translated with www.DeepL.com/Translator (free version)