1. 개요
Emulator[1]원래는 '경쟁자', '모방자'라는 뜻의 영단어다. 컴퓨터 과학용어로써의 '에뮬레이터'는 다른 프로그램이나 장치를 모방하는 컴퓨터 프로그램 또는 전자기기를 가리키는 말. 다시 말해서, 에뮬레이터는 하드웨어 기반일 수도, 소프트웨어 기반일 수도 있다. 지원되지 않는 하드웨어에서 소프트웨어를 실행하기 위하는 목적으로 널리 쓰인다.
2. 에뮬레이터의 예시
멀리 갈 필요 없이, 64비트 Windows에서는 32비트 에뮬레이션을 위해 WoW(Windows on Windows) 기능을 제공한다. 프로그램을 설치할 때 "Program Files"와 "Program Files(x86)"이 나뉘는 것이 그 이유.프린터 대부분에는 HP 레이저젯 프린터의 시스템 규격을 모방하는 모드가 있다. 한때 여러 소프트웨어가 HP 프린터의 스펙에 맞춰져 제작되었기 때문에 해당하는 소프트웨어가 제대로 작동할 수 있도록 HP의 프린터와 같은 규격으로 프로그램과 통신하고 이를 실제 프린터의 신호로 변환하는 식으로 동작하여 프로그램으로는 HP 프린터인 것처럼 동작하게 하는 것이다. 이를 두고 프로그램을 속인다는 표현을 쓰기도 한다.
애플 II와 MS-DOS 시절에는 OS 차원에서 한글을 지원하기가 어려운 환경이었기 때문에 메인보드의 슬롯에 '한글 카드'라는 물건을 꽂아서 사용한 적이 있다. 한글 글꼴과 한글의 입력/처리에 관하는 기능을 하는 카드인데, 이게 가격이 꽤 비쌌기 때문에 나중에는 한글 카드의 동작을 소프트웨어로 흉내내는 한글 에뮬레이터가 나와서 널리 쓰였다. 대표적으로 CHP, NKP[2], DKBB[3]이 유명했다. 486~펜티엄 초기까지는 국산 그래픽 카드가 시장에서 많이 팔렸는데, 이 한글 에뮬레이터를 폰트롬까지 내장한 것들이 많았다. MS의 도스가 HBIOS.COM으로 완성형 한글을 지원하지만 윈도우 95가 출시되며 KSC5601 위주로 환경이 고정되었고, 도스 텍스트 화면을 볼 일이 없어지자 한글 에뮬레이터도 에뮬레이션도 단종되었다.
허큘리스 그래픽 카드로 CGA 지원 게임을 실행할 수 있도록 CGA 에뮬레이션을 수행하는 'SIMCGA'라는 프로그램도 있다. 역시나 허큘리스가 CGA 환경을 가상으로 구동하여 CGA만 지원하는 프로그램을 구동하기 위하는 에뮬레이터다. 한국의 16비트 PC 환경이 한글 표시 문제로 변형 CGA를 사용하던 일부 고가 대기업 제품을 제외하면 허큘리스에서 SVGA로 바로 넘어가버렸기 때문에 1989년의 정부 결정으로 널리 보급된 교육용 컴퓨터 사양에서 SIMCGA는 오랫동안 애용되었다.
PC통신 시절에 사용된 PC통신 프로그램의 본래 명칭은 <터미널 에뮬레이터>(Terminal Emulator). 이것은 PC통신 자체가 서버는 유닉스 터미널에서 돌아가는 환경이지만 유저들의 PC 통신 환경은 백에 아흔아홉(보다 더 될 것이다)은 유닉스가 아닌 도스나 윈도이기 때문에 프로그램으로 유닉스 터미널 규격을 모방하여 접속했기 때문이다.
오늘날에도 보편적으로 사용되는 에뮬레이터의 예로는 VMware와 Virtual PC, VirtualBox 같은 가상 머신 프로그램들이 있다. 이쪽은 하드웨어 가상화 개념에 가깝지만 그래픽, 사운드 카드 같은 일부 특정 장비를 흉내내어 구현한다. 윈도 NT 계열로도 MS-DOS 소프트웨어를 호환하고자 만든 VDM(Virtual DOS Machine) 역시 일종의 에뮬레이션 구현을 바탕으로 하는 가상 머신. 다만, 오늘날에는 32비트 윈도에만 있고, 64비트 윈도에는 없다.[4] 리눅스상에서 MS 윈도우 가상환경을 지원하는 Wine도 기능만 보면 에뮬레이터의 일종으로 볼 수 있다. <Wine>이 "Wine is not an emulator"의 약자라고 할 정도로 개발진은 에뮬레이터임을 부정하고 있고, 실제로 동작 방식이 일반적인 에뮬레이터와 다른 일종의 API 호환 레이어 같은 성격을 띄지만 이런 종류의 구현도 넓게 보면 에뮬레이터의 일종으로 볼 수 있다.
ARM 기반 PC에서 x86 프로그램을 실행하거나 그 반대의 상황에서 바이너리를 변환해 주는 에뮬레이터를 사용한다.
Java 같은 플랫폼 독립적인 프로그램들은 에뮬레이터와 비슷한 가상 머신으로 실행하는 방식으로 호환성을 확보한다. 안드로이드 역시 OS 자체를 리눅스 커널 위에서 가상 머신(QEMU VM)으로 돌린다. 사실상 에뮬레이터와 가상 머신은 기본적으로 같은 기술이 바탕이지만 에뮬레이터는 특정 다른 장치의 동작을 모방하고, 가상 머신은 그럴 수도 아닐 수도 있는 차이가 있다. 가상머신의 좋은 예가 자바의 JVM과 안드로이드인데, JVM은 특정한 기기를 모방하는 것이 아니라 자체 스펙으로 추상화된 가상 기기로 동작하는 것일 뿐이다. 안드로이드는 가상 머신이지만 자신만의 기기 위에서 굴러가기에 에뮬레이터는 아니다. 따라서 에뮬레이터(특히 소프트웨어적인 에뮬레이터)는 가상 머신의 범주에 포함되는 영역이라고 할 수 있다.
FPGA(field programmable gate array)를 이용하여 특정 하드웨어와 똑같이 동작하도록 설계하는 것도 일종의 하드웨어적인 에뮬레이트라고 할 수 있다. 실제로 원칩 MSX처럼 특정한 하드웨어를 재현할 수 있도록 한 FPGA 소스 코드와 메인보드 설계가 오픈 소스 형식으로 공개되어 있는 경우가 드물지 않게 있다. 예시
실제로 존재하지 않는 장치의 에뮬레이터라는 컨셉을 잡고 프로그램이나 게임을 만들기도 한다. 판타지 콘솔이라는 컨셉의 PICO-8이나 메가 드라이브 미니 2에 수록된 스페이스 헤리어 II의 세가 마크 V 버전이 여기에 해당된다.
2.1. LLE vs HLE
Low Level Emulation / High Level Emulation주로 CPU나 메모리 이외의 하드웨어(GPU 등)의 에뮬레이션을 어느 관점에서 구현하느냐에 따라 LLE냐, HLE냐로 나뉘게 된다.
원래 에뮬레이터는 하드웨어를 분석해서, CPU가 해당 하드웨어에 명령과 데이터를 주면 어떤 식으로 동작하는 지에 대해 파악한 뒤 해당 프로세스를 일일이 구현하는 방식으로 개발되었다. 특히 대부분 어셈블리어를 사용해서 게임을 개발한 메가 드라이브, 슈퍼 패미컴 등의 4세대 콘솔까지는 이와 같은 방식으로 에뮬레이터를 개발하였다.
그러다가 1999년, 처음으로 유의미하게 게임 구동이 가능했던 Nintendo 64 에뮬레이터 'UltraHLE'가 등장하면서 에뮬레이터 개발에 새로운 방식이 제안되었다. 이 에뮬레이터는 N64 게임이 C로 개발되었다는 데서 착안하여, 하드웨어 전체를 저레벨에서 구현하는 대신 이 C 코드가 호출하는 API를 구현하는 방식으로 개발되었다. 덕분에 당대 자주 사용되던 펜티엄 2와 Voodoo 그래픽 카드를 사용한 PC에서 비교적 원활하게 게임이 구동되어 에뮬레이션 개발계에 많은 영향을 주었다. 그래서 이렇게 하드웨어를 API 레벨에서 구현하는 방식을 HLE라고 부르게 되었으며, 반대로 상술한 하드웨어를 일일이 구현하는 방식은 LLE라고 부르게 되었다.
HLE 방식은 LLE보다 훨씬 빠른 속도로 구동된다는 장점이 있으나, 완전히 하드웨어 부분의 에뮬레이팅을 하지 않다보니 호환성은 LLE 방식보다 당연하게도 떨어질 수 밖에 없다. 실제로 UltraHLE는 20개 정도의 게임만 구동되며, 개발 중단 및 다른 에뮬레이터의 등장으로 현재는 'HLE의 시초'라는 의의만 가진 채 게임 구동용으로는 사용되지 않는 에뮬레이터가 되었다. 그러나 HLE의 장점인 빠른 속도의 에뮬레이션은 분명 장점이기 때문에, 2021년 현재의 에뮬레이터는 HLE와 LLE 모두 활발하게 사용하며, 양쪽 다 과거에 비해 정확성 면에서 크게 발전한다. 특히 복잡한 하드웨어가 많아지면서 분석하기가 어려워지고, 덩치 큰 OS가 많아지면서 OS에서 제공하는 API를 통해 하드웨어에 접근하는 경향이 많은 비교적 현대 콘솔의 에뮬레이션인 경우는 HLE의 비중이 높아진다.
다음은 2021년 기준은 자주 사용되는 에뮬레이터들의 주요 구현 방식의 예이다.
- 가장 널리 쓰이는 PSP 에뮬레이터인 PPSSPP는 (공식 홈페이지를 인용하면) 'PSP의 OS를 시뮬레이션하는' 전형적인 HLE 에뮬레이터이다. 사실 이것은 PSP의 하드웨어 상당수가 문서화되지 않은 데다가 직접 접근이 불가하고 API로만 접근할 수 있는 것이 컸다.
- 슈퍼 패미컴의 에뮬레이션은 기존에도 LLE 방식으로 구현했지만, higan은 LLE의 큰 장점인 높은 정확성을 극대화해 개발한 에뮬레이터로, 다른 동 기종 에뮬레이터에 비해 상당히 높은 사양을 요구한다. 이에 영향을 받아, 패밀리컴퓨터, 메가 드라이브 등 슈퍼 패미컴 이전 시대 기종의 에뮬레이터에 높은 사양을 요구하는, 정확성이 높은 LLE 에뮬레이터의 개발 빈도가 많아졌다.
- 게임큐브/Wii 에뮬레이터인 Dolphin은 GPU는 LLE로 구현되었지만 나머지 부분은 상당수가 HLE로 구현되는 등, 하이브리드 방식이다. 사운드 프로세서는 HLE와 LLE 가운데 하나를 선택할 수 있는데, 원래 HLE 에뮬레이션은 초기에는 많이 구동되는 게임들에서도 문제가 많이 발생했지만 꾸준한 업데이트를 통해 2021년 현재는 대다수의 게임에서 문제없이 구동된다.
- PS3 에뮬레이터인 RPCS3 및 3DS 에뮬레이터인 Citra 등 역시 HLE와 LLE를 모두 사용하는 방식이다. 기본 구동은 HLE이되 문제가 생기면 LLE로 구동하라고 권장하는 방식이 많으며, 업데이트를 거쳐 HLE 구동에 문제가 없는 게임들이 많아진다.
- Bochs는 태생부터 LLE로 구동된다. 그 때문에 3dfx 에뮬레이션조차 DOSBox(예: DOSBox-X 및 DOSBox Pure)나 PCem과 다르게 소프트웨어 렌더링으로 처리하기에 계단현상이 생긴다.[5]
3. 콘솔 에뮬레이터
에뮬레이터의 분류 가운데 특정한 게임기의 환경을 컴퓨터나 다른 기종으로써 가상화된 형태로서 구현해 주는 에뮬레이터를 다른 에뮬레이터와 '콘솔 에뮬레이터(Console Emulator)'로 구별해서 부른다. 일반적인 사용자가 '에뮬레이터'라고 하면 대개는 이것을 가리키는 말. 흔히 '에뮬'로 줄여 부르기도 한다.[6]구현의 범위는 아케이드 머신부터 휴대용 기기에 이르기까지 다양하고, 여태 나온 게임기들의 대부분이 이미 에뮬레이터로 구현되어 있다. 제작은 대부분 리버스 엔지니어링(역설계)을 거쳐 이루어진다. 이를 통해 하드웨어의 구조를 파악한 뒤에 CPU의 처리 과정[7]과 메모리 전송 등을 전부 소프트웨어적으로 구현하고 컨트롤러의 입력이나 그래픽/사운드 처리는 DirectX 등을 사용하여 구현하는 방식이 주를 이룬다. 이러게 만들어진 가상의 기기 위에 실제 게임기의 소프트웨어를 올려서 구동시키는 것이 원리다. 따라서 에뮬레이터로 구동되는 소프트웨어는 대개 해당 기기의 기판, 롬 카트리지 등으로부터 파일로 복제한, 일명 '롬 파일'의 형식으로, 내용은 실기로 구동되는 것과 동일한 것이다. 이런 이유로 에뮬레이터는 에뮬레이션의 대상인 프로세서보다 훨씬 높은 성능을 필요로 한다. 프로세서를 이용하여 직접 구동하는 것과, 프로그래밍을 통하여 그 프로세서를 가상으로 구현해서 메모리 위에 띄워 놓은 뒤에 메모리를 오가며 구동하는 것의 속도 차이가 넘사벽으로 크기 때문이다. 단지 에뮬 이용자들이 흔히 사용하는 x86, Arm 계열 CPU의 성능 향상이 매년 빠른 속도로 이루어지고, 기반이 되는 콘솔의 사양 자체가 낮아 부담을 잘 느끼지 않을 뿐.
1990년대 후반 MAME가 개발되면서 역사가 시작되었고, PC로 다른 기종 게임을 돌릴 수 있다는 점+추억의 게임을 다시 할 수 있다는 점은 당시로는 매우 신기하게 받아들여졌다. 그 전까지는 PC로 다른 기종 게임이 이식된 경우가 많이 있었지만[8] 당시 PC 성능때문에 원본과는 다르거나 다운이식인 경우가 대부분이었던 반면 에뮬은 원본을 그대로 즐길 수 있기 때문에 이식작과는 차원이 달랐다.
콘솔 게임기는 PSP과 PMP의 V43, Dingoo A320, (물리 키패드가 있는) 스마트폰 등 에뮬레이터를 구동하는 데 적합한 환경을 지니고 있으면 '에뮬머신'이라는 다른 이름이 붙기도 한다. 다음 세대 기기의 성능이 점차 향상되고 통신망이 발달하면서 쉽고 빠르게 데이터를 주고받을 수 있는 환경이 되자 자체적인 에뮬레이터를 제작해서 DLC 형태로 재발매하는 게임들도 늘어났다. 닌텐도의 버추얼 콘솔이 한 예시이고, PSN과 XBLA로 서비스되는 플레이스테이션 및 구 엑스박스 게임들도 소프트웨어 에뮬레이션의 형태로 이식된 것들이다.
위 내용처럼 일반적으로 에뮬레이터가 원본 기기보다 매우 높은 성능을 요구하는 것은 당연한 일이지만, 그 밖에 콘솔의 구조적 특징이나 에뮬레이터 자체의 결함 때문에 필요 성능이 본래 성능과 비교하여 기하급수적으로 높거나 성능은 다른 에뮬레이터와 차이가 적지만 개발이 어려운 경우도 있다. 이 분야의 본좌로는 시스템 구조가 복잡해서 같은 시대의 경쟁 기종보다 훨씬 늦게 개발이 이루어진 세가 새턴이 있다. 문서를 보면 알겠지만, 설계가 워낙 땜빵으로 덧붙은 탓에 구조가 지저분하고 당대에도 게임 개발이 어렵기로 유명한 기기인데, 이런 구조는 가상화 구현에도 당연히 나쁜 영향을 미쳐 새턴 에뮬레이터는 같은 세대의 기기인 플레이스테이션은 말할 것도 없고, 후속기인 드림캐스트 에뮬레이터보다도 넘사벽으로 높은 사양을 요구하는 괴악한 것이 되었다. 새턴보다 더한 것도 있는데, 아래 문단 참고.
캡콤의 아케이드 기판인 CPS2, CPS3는 복제 방지 기술이 구현을 막는 경우. 암호화가 워낙 복잡해서 평문으로 복호화된 롬 추출이 어려웠고, 결과적으로 에뮬레이터를 만들 수가 없었다. CPS2 에뮬레이션 개발에 핵심적인 일을 한 '라줄라'라는 개발자가 'XOR 테이블'이라는 일종의 복호화 테이블을 찾아내는 식으로 우회적 구현되었고, 한참 뒤에야 암호화가 완전히 풀려서 결국 아케이드 머신과 같은 동작으로 구현할 수 있게 되었다. 한편, 세이부 개발의 일부 게임의 롬은 추출되었지만, 기판의 암호화가 아직도 풀리지 않고 있다고 한다.
초대 엑스박스는 하드웨어의 대부분이 문서화되어 있지 않고, 사람들의 에뮬레이터 요구 또한 적은 편이라 아직도 제대로 된 에뮬레이터가 없다. 이쪽은 하드웨어가 x86 PC에 가까운 것인데도 개발이 지지부진하여 MS의 고소미가 두려워서라는 루머도 있다. CPU는 평범한 인텔 물건이지만 GPU와 사운드 시스템 쪽은 엔비디아의 커스텀 하드웨어인 것이 가장 큰 걸림돌이다. 지포스 3에 일부 지포스 4의 기능이 추가된 형태다 보니 둘 다와 차이가 있어서 분석이 더딘 편이다. #
또한 같은 이유로 7세대 콘솔인 PS3와 엑스박스 360은 8세대 콘솔이 나온 뒤에도 에뮬레이터 개발 상황이 더딘 편이다. 360은 하드웨어가 아직 제대로 문서화되어 있지 않고, PS3는 셀 아키텍처가 복잡한 구조이며, 이들 역시 에뮬레이션에 많은 양의 리소스를 써야 한다. 이들 CPU는 2000년대 중반 성능이지만 10여 년 지난 2020년 현재 기준으로도 현 세대 하드웨어로 에뮬레이션하기에는 사양이 낮은 게 절대로 아니다. higan만 써봐도 알 수 있을 것이다. 그나마 다행인 것은 3D 콘솔 에뮬레이터는 대개 GPU로 렌더링을 수행하는 하드웨어 렌더러를 지원해 CPU의 부담을 많이 덜어주는 점이다. 5세대 이후로 GPU의 연산 성능은 무섭도록 발전했는데, 현대의 게이밍 GPU는 에뮬레이터들에 충분한 성능을 제공하므로 걱정하지 않아도 된다.[9] 이걸 CPU로 전부 에뮬레이팅하려면 끔찍한 부담이 생길 것이다.
에뮬레이터와 롬 파일을 확보하면 패미컴처럼 오래되어 더 이상 구하기 어려운 게임기와 게임을 영원히 지속할 수 있다. 한 번 특정 언어로 포팅된 에뮬레이터 엔진이 나오면 모든 플랫폼 콘솔의 칩셋의 수명이 다하는 순간에 사라질 운명이던 게임들이 다른 환경으로 포팅, 빌드되면서 불멸 할 수 있는 것이다. 이런 점 때문인지 2010년대 중반 즈음부터는 아예 콘솔 제조사가 직접 에뮬레이터를 만들기 시작했다.
에뮬레이터는 기존 콘솔 게임들을 더 높은 퀄리티로 즐길 수 있게 해준다. 2D 게임들은 셰이더를 넣어서 선명하게 만들고, 3D 게임들은 텍스처 필터링에 HD 렌더링을 하면 실기로와는 차원이 다른 그래픽을 누릴 수 있고, CPU를 오버클럭해 실기로 할 때의 프레임 드롭이 지나친 게임을 쾌적하게 즐길 수도 있다.
다만 리듬 게임 같은 경우 정확한 타이밍을 요구하기 때문에 에뮬레이션의 인풋랙이 치명적일 수 밖에 없다. 그래서 리듬 게임 만큼은 실기를 사서 플레이하는 것이 권장된다. 또한 특정한 하드웨어를 요구하는 게임의 경우 에뮬레이션이 불가능하거나 어려운 경우가 많다.
본 문서의 최상단 정의에서 보듯 에뮬레이터는 특정한 하드웨어 또는 소프트웨어의 작동을 모방하는 것이면 무엇이든 '에뮬레이터'로 부를 수 있지만, 일상 생활에서 '에뮬레이터'라는 단어는 거의 게임 구동을 위하는 콘솔 및 구형 컴퓨터 에뮬레이터를 지칭하는 이유는 실질적으로 에뮬레이터가 필요한 경우가 게임뿐인 일이 대부분이기 때문이다.
오피스 프로그램 또는 그래픽, 동영상 편집기를 사용하려는 목적으로 구형 컴퓨터 기기의 에뮬레이터 또는 가상머신을 사용하는 경우는 거의 없다. 이런 잘 나가는 전문가용, 업무용 프로그램은 새 하드웨어나 운영체제에 대응되는 신 버전이 개발되어서 굳이 구 버전을 돌릴 일이 그다지 없고[10], 제작사가 망하거나 개발이 중단되었으면 어쩌든 얼렁뚱땅으로나마 대체 프로그램을 찾을 수 있다. 가령 아래아 한글이 망하면 마이크로소프트 워드나 리브레오피스를 쓰면 되고, 파이널 컷이 망하면 어도비 프리미어라도 꺼내올 수 있다.
하지만 게임은 다르다. 게임은 놀이, 취미의 영역이고, '생산적'인 것은 아니다. 게임은 완구와 비슷해서 유행이 지나면 그다지 안 팔려 단종되거나 사라진다. 게임 소프트웨어도 특정한 하드웨어나 OS에서 돌아가는데, 그 게임의 유행이 사라져 판매도 중단되면 굳이 업무용 프로그램처럼 새 기기, 새 OS에서 작동하도록 호환성을 보장해 줄 필요성이 없는 것이다. 살면서 꼭 필요한 것이 아니고, 회사는 더이상 그것으로 돈을 벌기 어려우니까. 이 또한 규모의 경제와 유관하다고 할 수 있다. 하지만 그런 철지난 추억을 가진 사람들은 있고, 그런 사람들이 이미 사라져 버린 콘솔이나 구형 PC용 게임을 하고자 에뮬레이터를 찾는 것이다.[11] 드라마/영화 촬영에 쓰기도 하고, 복고와 전작빠의 존재도 비슷한 예이다. 물론 에뮬레이터가 있어도 게임 롬 파일이 있어야 돌릴 수 있다.
일반적으로 통용되는 콘솔 에뮬레이션의 난이도 순서는 대략 다음과 같다. 뒤로 갈수록 에뮬레이션에 높은 에뮬레이터의 성능이 필요하다. 단 하드웨어 뿐 아니라 에뮬레이터 난이도나 성숙도 등 다양한 요인에 영향받는다. 특히 플스2 는 세대에 비해 제대로 된 에뮬에 매우 높은 성능이 필요하다.
게임보이 < 패미컴(NES) < SEGA 메가드라이브 < 게임보이 어드밴스 < 수퍼패미컴 (SNES)
< 플레이스테이션 1 < 닌텐도 DS < 닌텐도 64 < SEGA 드림캐스트 < PlayStation Portable
< 세가 새턴 < 닌텐도 게임큐브 < 닌텐도 Wii < 닌텐도 3DS < PlayStation 2 < 닌텐도 Wii U < Nintendo Switch
현재 ARM CPU 기반의 60달러 정도의 휴대 리트로 게임기는 대략 PS1 정도나 NDS 정도까지 원활, 100달러 정도의 게임기는 닌텐도 64 까지는 완벽, PSP 정도 까지가 대부분의 게임이 원활한 정도이다. 그 이상은 게임에 따라 프레임 드랍 등 성능이 부족해 보통 x86 CPU 기반의 고성능 하드웨어가 필요하다.< 플레이스테이션 1 < 닌텐도 DS < 닌텐도 64 < SEGA 드림캐스트 < PlayStation Portable
< 세가 새턴 < 닌텐도 게임큐브 < 닌텐도 Wii < 닌텐도 3DS < PlayStation 2 < 닌텐도 Wii U < Nintendo Switch
3.1. 하이스코어에서의 에뮬레이터
아케이드 게임의 하이스코어 집계에선 에뮬레이터로 세운 스코어는 이유 불문하고 무조건 우소스코어로 여긴다. 여차 말하지만 에뮬레이터로 세운 스코어랑 실기로 세운 스코어를 동급으로 놓는 것 자체가 말도 안 되는 일이고, 실제 기기와 에뮬레이터상의 플레이 환경 차이와 정확성, TAS의 위험성까지 고려해야 한다. 그래서 일본 하이스코어 협회에선 당연히 에뮬레이터를 이용해서 찍은 스코어의 신청을 받아주지 않는다. 게임 제작사에서 별도로 인정하면 모를까. 다만 오락실이 많이 줄어들고 비인기 게임이 설치된 기기의 경우 사실상 절멸된 한국에서는 실기로 아케이드 게임을 하기 어려운 환경이므로 일본과는 상황이 다르다.하이스코어에서 에뮬레이터의 위치는 아무리 잘 쳐줘야 참고용 점수일 뿐이다. 이를 잘 보여주는 예시가 BBH의 쇼크 트루퍼스 3271만[12]과 WY의 도돈파치 대왕생 블랙레이블 A타입 37.2억[13], Aozaki의 메탈슬러그 2 1070만. 이 세 기록은 에뮬레이터로 찍은 기록인 점 때문에 전일로 인정되지 못하고 참고용 기록으로 여겨진다. 그리고 SRT의 드래곤 스피릿 200.6만은 에뮬레이터 기판으로 찍은 기록이다. 대한민국으로 치면 월광보합으로 찍은 기록인 셈으로 이걸 인정한다는건 월광보합으로 찍은 기록을 인정하겠다는 소리나 다름없다. 당연히 이거 역시도 참고용 기록으로만 여겨진다.
CYS-SAK의 1999 X-36 360.1만은 에뮬레이터로 찍은 기록이라는 근거로 제시된 Project ARCA에서 2021년 12월 20일에 개정된 판본에서 기판으로 플레이했다고 정정되었기에 이 목록에서 빠지게 되었다. 하지만 CYS-SAK의 경우엔 증거부족으로 목록에서 빠진것이다.
3.2. 관련 문서
4. 법적 문제
4.1. 콘솔 하드웨어의 저작권
4.1.1. 미국
미국에서는 저작권이 있는 바이오스나 다른 소스를 도용하지 않는 한, 상업 목적이 있어도 에뮬레이터 개발 및 이용 자체는 합법이다. 미국에 있던 플레이스테이션 에뮬레이터 VGS의 개발사, Connectix와 SCE 사이의 법적 공방에서 확인받은 바 있다. 에뮬레이터가 바이오스를 시뮬레이션하는 것도 합법으로, 이를 위해 호환 바이오스를 개발하는 경우도 있다.다만, VGS는 2000년에 일어난 사례로, 현재는 많은 수의 소프트웨어가 리버스 엔지니어링을 금지하는 EULA를 따르기 때문에 EULA를 따르는 소프트웨어를 리버스 엔지니어링하여 영리적 목적으로 쓰면 계약 위반에 따르는 민사 소송을 각오해야 한다. 이 이유로 블리자드에서는 배틀넷 에뮬레이터 개발자에게서 승소한 바 있다.[14]
하지만 2024년 닌텐도의 yuzu와의 합의문에서, 플랫폼 홀더가 걸어놓은 프로텍터를 우회하여 구동하는 기술 자체를 DMCA 위반이라고 명시하여 법원에 제출하여 에뮬레이터 자체를 예전처럼 합법이라고 할 수 없게 되었다.
4.1.2. 한국
이 곳을 참고할 것. 쉽게 말하면 비상업적인 목적(연구, 학술)인 경우에만 제한적으로 허용하고 있다.4.2. 소프트웨어의 저작권
에뮬레이터 사용자로서 꼭 알아야 하는 것이 있는데, 에뮬레이터로 돌리는 게임 및 BIOS 롬 파일은 소유한 원본 매체(카트리지, CD, 실물 콘솔)에 있는 걸 직접 복사해야 한다. 롬 파일을 추출하는 방법은 여러 가지로서 실기 콘솔에 커스텀 펌웨어를 설치할 수 있으면 대개 손쉽게 롬 파일을 추출할 수 있다. 그럴 수 없으면 CD와 DVD 같은 광매체는 광디스크 드라이브 등을 이용해 개인이 원본 매체에서 쉽게 추출할 수 있지만, 카트리지 매체는 별도 장비가 필요하다. 닌텐도에서는 게임 추출기로 게임을 추출하는 것도 불법이라고 말하고 있다. 자세한 내용은 롬 파일 문서의 법적 문제 문단 참고.닌텐도의 버추얼 콘솔, Nintendo Switch용 클래식 게임 서비스, 소니의 클래식 타이틀, 엑스박스 시리즈의 하위호환 지원 타이틀 등은 본사에서 직접 만든 에뮬레이터이고, 버추얼 콘솔로 돌아가는 소프트웨어도 원작자의 허락을 받고 정당한 대가를 지불한 것이다. 구작 게임을 이식할 때 에뮬레이터 방식으로 이식하는 게 싸고 빠르기 때문에 일반적으로 추가요소를 넣기 위한 것이 아니라면 공식적으로 에뮬레이터 방식으로 이식하는 경우가 많다.
4.3. 소프트웨어의 DRM
7세대부터 콘솔 게임들이 DRM을 사용하기 시작하면서 이전과는 다른 법적 문제가 생겨났다. 에뮬레이션을 통해 컴퓨터 상에서 게임의 백업본을 실행하면 DRM을 위반하게 되는 것이고, 이는 에뮬레이터가 'DRM을 우회하는 용도의 프로그램'이 되어 저작권에 위배되는 것으로 간주될 수 있다.[15] 2010년대 중반 이후로 7세대 이상 콘솔 에뮬레이터들이 점점 거시적인 성과를 내놓기 시작하면서 일부 유저들이 이 점에 우려를 하기 시작했다.결국 2017년, ATLUS에서 자사 게임 페르소나 5의 DRM 위반을 이유로 플레이스테이션 3 에뮬레이터 RPCS3 팀원에게 자사 게임을 구동할 수 있는 기능을 삭제할 것을 요구하는 일이 벌어졌다. 다행히 RPCS3 측이 홈페이지에서 페르소나 5에 관한 정보를 삭제하는 것으로 일단락된 듯하다.[16] 다만, 페르소나 5는 여전히 RPCS3로 실행할 수 있다. 자세한 내용은 해당 에뮬레이터 페이지 참고.
일단은 RPCS3의 경우 이미 복사되어 파일로 만들어진 게임을 실행할 뿐이기 때문에 DRM을 위반한 건 아니다.[17]
5. 에뮬레이터 목록
특이 사항 및 에뮬레이터가 구동되는 기기가 PC 밖의 기종도 지원하는 것은 따로 표기할 것. 실기 자체가 아닌 에뮬레이터가 여러 기종(패미컴·슈퍼 패미컴, 메가 드라이브·게임 기어 등)을 지원하는 것은 '☆'로 표시하고, 다기종 에뮬레이터 문단 참고. 아케이드 기판끼리는 아래 문단 참고. 정확성을 추구하는 사이클 수준의 것은 '★'로 표시할 것. (참고, 번역글)(1, 2, 3) 개발이 중단된 것은 '▩'로 표기할 것.iOS용은 애플 정책상 앱스토어에 등록할 수 없지만 개발자용 앱을 이용하는 방식으로 설치할 수 있다. 다만 이 정책은 2024년 4월에 애플이 "레트로" 게임 콘솔 에뮬레이터에 한해 완화하였고, GBA4iOS 기반의 멀티플랫폼 에뮬레이터인 Delta가 처음으로 앱 스토어에 등록되었다.
아래 목록은 전체가 아닌 일부로서 더 많은 에뮬레이터를 보고 싶으면 zophar.net, Emulation-general 위키, 위키피디아도 참고하는 게 좋다.
5.1. 가정용·휴대용 게임기, 일반 컴퓨터
5.2. 아케이드 기판 에뮬레이터
- MAME☆: 윈도우, MAC, 리눅스용 아케이드 에뮬레이터. 지원하는 기판이 가장 방대하고 많아서 \'에뮬레이터계의 본좌'로 불린다. 성능보다 정확도를 우선시하는 경향이 크고, 공식 MAME 말고도 많은 변종 MAME가 있다.
- 파이널번 네오☆ : CPS1, CPS2, CPS3, 네오지오 등 지원. 정확도보다 성능을 우선시하는 경향이 크고, MAME 다음으로 지원하는 기판이 많다.
- Flycast : NAOMI 1·2, 드림캐스트, ATOMISWAVE, 에뮬레이터. 본래 RetroArch의 코어로 시작했으며 후에 스탠드얼론으로 이식했다. 드림캐스트도 지원하며 본래 Reicast의 본진이었던 안드로이드로도 돌릴 수 있다. 파이트케이드도 이를 기반으로 한다. 다만 HIKARU는 아직 지원하지 않는다.
- Demul ▩(2018년): 윈도우용 NAOMI 1·2, ATOMISWAVE 에뮬레이터. 드림캐스트 호환 기판 에뮬레이터인 만큼 드림캐스트도 에뮬레이트된다. 추후에 패치로 케이브의 CV1000와 HIKARU, Gaelco 등 다른 히타치 사의 CPU를 사용한 기판도 지원하기 시작했다. 넷플 기능도 지원하는데, PC 사양이 받아주면 NAOMI 1·2, ATOMISWAVE 게임은 원활하게 넷플된다. 2018년 이후 개발 중지.
- 네오레이지 ▩: 네오지오(MVS·AES)
- 카왁스 ▩(2016년, 1.65): CPS1·2, 네오지오(MVS·AES)
- 네뷸라 ▩(2007년, 2.25b): CPS1·2, 네오지오(MVS·AES), PGM, 일부 코나미 기판.
- Neo Danji ▩: MS-DOS용 한국 제작 네오지오 에뮬레이터. 네오지오 에뮬레이터 가운데 가장 먼저 사운드 지원을 제공하였으나 MAME 등등도 지원하기 시작하면서 사장되었다.
- DICE ▩(2014년, 0.9): 'Discrete Integrated Circuit Emulator'의 약자. 퐁을 비롯한 몇몇 70년대 아케이드 게임들을 돌릴 수 있다. 여담이지만 이 에뮬레이터가 지원하는 게임들은 CPU와 메모리로 구성된 일반적인 컴퓨터가 아닌지라 이산 논리 회로로 구현된 게임이므로 엄밀히는 에뮬레이터가 아닌 시뮬레이터에 가깝다.
- Modeler ▩(2001년 말, 0.9.3a): 세가 시스템 32, MODEL1. 윈도우 7으로는 팅긴다. MODEL1 게임은 MAME가 전부는 아닌 몇 개만 지원한다.
- Callus ▩: MS-DOS용. CPS1 지원.
- Callus95 ▩: 윈도우용.
- CPS3 Emulator ▩: CPS3 지원.
- CPX3 ▩: 엑스박스용.
- ZiNc ▩: 소니 ZN-1, 남코 System 11 등. 플레이스테이션 호환 기판 에뮬레이터.
- Raine: 타이토 F2, F3 기판 등 MC68000 베이스의 타이토 기판 게임 위주의 에뮬레이터. CPS, 네오지오 CD(NeoRaine) 등으로 지원 범위를 넓혔다.
- SSF, Kronos: ST-V. 세가 새턴 호환 기판 에뮬레이터.
- TeknoParrot: LINDBERGH, RINGEDGE/RINGWIDE, 타이토 Type X, X2, X Zero, SYSTEM ES 시리즈 등: 엄밀히는 에뮬레이터가 아닌 x86 PC기반 아케이드를 돌리는 호환 레이어이다. 상당히 광범위한 기판을 지원하는데, 지원하는 게임 목록도 후덜덜한 편이다. 또한 언젠가부터 철권 7 FR을 지원하기 시작했다. 2020년 3월 17일에 출시된 프로젝트인 UnityParrot으로 ONGEKI가 구동이 확인되면서 재조명되고 있었고, 2021년 9월에 와서는 ALL.Net P.Ras와 신태고마저 뚫어버려 화제가 되었다.
- 안드로이드용
- 핀볼
- Visual Pinball
- Unit3D Pinball
5.3. 다기종 에뮬레이터
기종 자체가 다른 기종 게임의 하위 호환을 지원하는 경우(SMS←MD, (GB←GBC)←GBA←NDS 등)는 제외. 아케이드 기판끼리는 위의 아케이드 기판 에뮬레이터 문단에서 볼 것.- EmuDeck
- RetroArch: 엄밀히 말하면 그 자체는 에뮬레이터가 아니고, '코어'로 불리는 실제 에뮬레이터를 실행하는 프론트엔드이다. 그 특성상은 이론상 가동 가능 하드웨어는 아주 많으며, 여기에 한 줄로 요약하기는 힘들다. 여러 문제점이 있어도 불구하고 다수의 에뮬레이터들이 점점 단독 실행 바이너리보다는 RetroArch 코어로 개발하는 일이 늘면서 좋든 싫든 해당 에뮬레이터를 사용해야 할 일이 점점 늘어난다.
- MAME: MAME 자체가 다양한 아케이드 기판을 에뮬레이션하는 프로젝트이고, 이에서 파생한 콘솔/컴퓨터 에뮬레이터 프로젝트인 MESS가 있었다. MAME와 MESS가 통합되어 0.162 이후 버전의 MESS는 나오지 않고, 2015년 5월에 출시된 MAME 0.162 버전부터 가정용·휴대용 게임기와 컴퓨터도 에뮬레이션한다. 자세히는 MAME와 MESS의 통합형인 UME가 'MAME'로 개명된 것이다.
- Mednafen[18]: 오픈 소스. 아타리 링스, 닌텐도 게임기(패미컴, 게임 보이, 슈퍼 패미컴, 게임 보이 컬러, 게임 보이 어드밴스), 네오지오 포켓 컬러, PC 엔진, PC-FX, 원더스완 컬러, 세가 게임기(세가 마스터 시스템, 메가 드라이브, 게임 기어, 세가 새턴), 플레이스테이션 에뮬레이션 지원하고 있다.
- MorphGear ▩(2009년 경): 윈도우, 윈도우 모바일용. 닌텐도 게임기(패미컴, 슈퍼 패미컴, GBC, GBA), 세가 게임기(메가 드라이브, 게임 기어).
- BizHawk: 닌텐도 게임기(패미컴, 디스크 시스템, 게임 보이, 슈퍼 패미컴, GBC, GBA, NDS, 3DS), 세가 게임기(세가 마스터 시스템, 메가 드라이브, 메가 CD, 세가 새턴), 아타리 7800, 아타리 링스, PC 엔진, PC 엔진 CD, 콜레코비전, 인텔리비전, 코모도어 64, TI-83, PS1, 애플 II 지원. 2023년 업데이트로 MAME 코어까지 지원되면서 상당수의 아케이드 게임들까지 구동할 수 있게 됐다. 단, chd 등의 디스크이미지를 사용해야 하는 게임들은 아직 불완전. 제일 큰 가치라면 기종을 가리지 않고 강제 세이브 및 로드, 그리고 리플레이 기능이 아주 완벽에 가깝게 지원된다는 것. 게다가 자체적으로 AVI 파일로 영상을 덤프할 수 있는 기능도 있다. 말 그대로 '덤프' 작업을 하는 거라 리플레이 재생 + AVI 덤프를 켜고 리플레이를 빠르게 돌리건, 중간에 일시정지를 걸었다 풀건, 아직 제대로 지원되지 않는 겜이라 게임이 끊기면서 돌아가건 결과물인 AVI 파일은 정상 속도로 나온다.[19] 리플레이를 1프레임씩 진행하며 저장하는 것도 가능하기에 TAS 제작에 특화된 에뮬레이터.
- blueMSX ▩(2009년, 2.8.2), MSX.emu: MSX, 콜레코비전, SG-1000, SC-3000, SF-7000, SVI-318, SVI-328 지원.
- Genesis Plus GX
- Kega Fusion ▩(2010년, 3.64): 세가의 게임기인 SG-1000부터 마스터 시스템, 메가 드라이브, 게임 기어, 메가 CD, 슈퍼 32X까지 지원한다.
- PicoDrive: 메가 드라이브, 피코 지원.
- higan(前 bsnes): 닌텐도 게임기(패미컴, 게임 보이, 슈퍼 패미컴, 슈퍼 게임 보이, BS-X 사테라뷰, 슈패미 터보, 게임 보이 컬러, 게임 보이 어드밴스), 세가 게임기(세가 마스터 시스템, 메가 드라이브, 게임 기어), PC 엔진, 슈퍼그래픽스, 원더스완, 원더스완 컬러 지원. 그리고 유일하게 MSU-1 SNES 홈브루 칩도 지원한다. 슈퍼 패미컴 한정으로 완전한 구현도를 볼 수 있으나 반대로 높은 컴 사양을 요구한다. 7z로 압축된 롬 파일도 지원한다.
- VICE: 코모도어 64, 코모도어 128, PET, VIC20 등.
- Akiko ▩(2001년 경): 코모도어 CDTV, 아미가 CD32.
- FS-UAE: 아미가 500(CDTV 포함)·500+·600·1200(CD32 포함)·1000·3000·4000.
- SIMH: PDP-1(스페이스워!가 이 기종용으로 나왔다), PDP-11(처음으로 나온 테트리스가 이의 클론인 Electronika 60용이다) 등.
- Xe
- Emulator 3000
Handheld Quake - 시뮬레이터이다.- Calculators 3000: 계산기 에뮬레이터이자 시뮬레이터이다.
- PCE - PC Emulator ▩(2013년, 0.2.2): 아타리 ST, 메가 ST, IBM PC 5150, Macintosh 128K, Macintosh 512k, Macintosh 512ke, Macintosh Plus, Macintosh SE, Macintosh Classic, RC759 Piccoline
- Tand-Em ▩(1999년, 0.55)
- OpenEmu: OS X 10.11 El Capitan 이상용.
- QEMU: x86, ARM, PowerPC, SPARC 하드웨어 등의 에뮬레이션을 지원하는 오픈 소스 하이퍼바이저. 서버 가상화부터 휴대폰 에뮬레이터까지, 굉장히 범용적인 용도로 사용된다.
- Lakka: RetroArch와 LibreELEC을 기반으로 한, 레트로 게임 콘솔 에뮬레이션용 리눅스 배포판. 라즈베리 파이, ODROID, 바나나 파이 등을 비롯, 다양한 리눅스 기반 단일 기판 컴퓨터(SBC)용을 지원하며, 나아가 닌텐도 스위치용까지 지원한다.
- 닌텐돈트: Wii/vWii용 게임큐브 및 트라이포스 게임 실행 홈브루 앱이다.
5.4. 그 밖의 에뮬레이터
- CPU
- 한글 카드
- CHP
- NKP
- DKBB
- Voodoo 래퍼(wrapper)
- 언어 코드
- NTLEA ▩(2015년, Ntleas 46 빌드)
- Locale Emulator
- IPX 네트워크
- DOSBox: IP 주소를 이용하며, 터널링도 해준다.
- Terminal Emulator: 유닉스 터미널의 소프트웨어적 에뮬레이션이다. 초창기의 터미널은 VT100과 한국통신의 하이텔 전용 단말기처럼 하드웨어 방식이다.
- Dynamips/GNS3: Cisco의 IOS를 소프트웨어로 에뮬레이션하는 프로그램이다. GNS3는 Dynamips의 GUI 버전. GNS3는 현재는 많이 발전하여 Cisco의 IOU와 NX-OS, Jun OS를 VMware를 통하여 에뮬레이션할 수도 있다.
5.5. 공식 에뮬레이터
해당 기기의 개발사가 직접, 또는 개발사의 허가를 받고 제작한 에뮬레이터다. 추가적인 불법 요소를 사용하지 않고 이 방법을 이용하는 에뮬레이팅은 전부 합법이다.- 닌텐도
Wii U 이후 대부분의 닌텐도 공식 에뮬레이터는 닌텐도의 자회사인 닌텐도 유럽 연구 개발(NERD)에서 개발을 담당한다. - 버추얼 콘솔 ▩: Wii 이후 닌텐도 콘솔 전용이지만, Wii U 한정으로 닌텐도 DS 소프트도 지원한다. 해당 문서 참고.
- 닌텐도 스위치의 클래식 게임: 온라인 구독자 전용 무료 서비스. 현재는 패미컴/NES, 슈퍼 패미컴/SNES, N64, GB, GBC, GBA 소프트 한정 지원.
- 닌텐도 클래식 미니 콘솔
- 미니 패미컴, 미니 슈퍼 패미컴, NES 클래식, SNES 클래식 등.
- 이 밖의 닌텐도 공식 고전 게임 합본/이식 타이틀들
- Heritage - 패미컴 리믹스에 사용된 패미컴 에뮬레이터.
- Kachikachi - 패미컴 에뮬레이터. 패미컴 미니, NES 클래식에서 사용된다.
- Canoe - 슈퍼 패미컴 에뮬레이터. 슈퍼 패미컴 미니, SNES 클래식에서 사용된다.
- TRL-NX - iQue에서 제작한 닌텐도 64 에뮬레이터. 슈퍼 마리오 3D 컬렉션에 내장된 슈퍼 마리오 64를 구동하는 데에만 사용됐다.
- Hovercraft - 위 에뮬레이터를 기반으로 NERD가 개발한 닌텐도 64 에뮬레이터. 클래식 게임 서비스에도 사용된다.
- Hiyoko - 게임보이, 게임보이 컬러 에뮬레이터.
- Sloop - 게임보이 어드밴스 에뮬레이터.
- Hagi - 게임큐브 및 Wii 에뮬레이터. 피크민 1+2, 슈퍼 마리오 3D 컬렉션 내의 슈퍼 마리오 선샤인, 슈퍼 마리오 갤럭시를 구동하는 데 사용되었다.
- Zebra - 닌텐도 스위치용 새턴 아카이브에서 사용된 세가 새턴 에뮬레이터.
- 아타리
- 아타리 플래시백 시리즈
- 아타리 VCS
- 이 밖에 아타리사가 직접 제작한 클래식 합본/이식 타이틀
- 세가
- 메가 드라이브 미니
- 아스트로시티 미니
- 이 밖에 세가사가 유통한 클래식 합본/이식 타이틀들
- 소니(플레이스테이션 시리즈)
- PSP, PS Vita, PS3, PS4용 플레이스테이션 클래식 타이틀
- Pops ▩: PS2와 PSP, PS3에 탑재된 소니의 공식 에뮬레이터. 다운로드로 판매되는 PS 어카이브즈 게임과, PS2의 하위호환 기능은 이 에뮬레이터로 돌아간다. 기기 내부에 탑재된 만큼 개인이 이용할 수 없었지만, PSP와 PS2가 해커들에게서 뚫려 현재는 임의의 롬 파일도 실행할 수 있다.
- 플레이스테이션 3용 PS2 에뮬레이터 ▩: 초기형 PS3는 기본적으로 지원되어 (호환되는) 모든 PS2 디스크를 실행할 수 있다. 말기 모델에는 없지만, 커스텀 펌웨어를 설치하면 모든 기종의 PS3로 PS2 디스크(또는 디스크 이미지 파일)를 실행할 수 있다. 코브라 드라이브를 사용하면 슬림 기종에서도 이용할 수 있으나, 구동률이 들쭉날쭉하고 ISO를 특정 툴로 변환해야 구동할 수 있다. CD 이미지의 경우는 bin 그대로 변환해야 한다. iso로 임의로 변환하면 호환이 안 된다. PS2 클래식이 존재하는 게임 중에서도 이 방식으로 구동되지 않는 게임이 몇몇 있다. 대표적으로 네오지오 배틀 컬리시엄. 괴혼의 경우는 구동되는 듯 싶다가 갑자기 기기를 강제로 종료하는데, 메모리 프로텍션 기능 때문으로 추정된다. 설정 파일을 따로 넣어서 구동하면 완벽구동이다.
- 마이크로소프트
- 엑스박스 시리즈
- Fusion ▩ - 엑스박스 360용 엑스박스 에뮬레이터.
- Fission - 엑스박스 원, 엑스박스 원 X용 엑스박스 360, 엑스박스 에뮬레이터.
- 엑스박스 시리즈 X용 엑스박스, 엑스박스 360 에뮬레이션.[21]
- 하위 호환을 위해 개발한 엑스박스 원용 에뮬레이터가 있는데, ScummVM처럼 특정 기기의 에뮬레이터가 아니고 엑스박스 360용 특정 게임의 에뮬레이터이다.
- MS Windows 언어 코드
- 마이크로소프트 에뮬레이터
- VBS, HVCI - MBEC(인텔)/GMET(AMD)/TTS2UXN(퀄컴) 기능이 없는 CPU용. Windows 10, Windows 11의 코어 격리 기능에 쓰인다.
- VSM - VBS 기술로 구현되는 가상화 공간.
- 애플
- Mac 68k emulator ▩ - 파워 매킨토시에 내장된 PowerPC에서 m68k 환경 에뮬레이션.
- Rosetta ▩ - OS X 10.4부터 10.6까지 탑재된 x86에서 PowerPC 환경 에뮬레이션.
- Rosetta 2 - macOS 11부터 탑재된 ARM에서 x86 환경 에뮬레이션.
- NEC CPU
- NEC V20(인텔 8088 클론) ▩, V30(인텔 8086 클론) ▩ - 에뮬레이션 모드, 인텔 8080 지원.
- NEC V60[22] ▩ - V20/V30 에뮬레이션 모드, 인텔 8086 지원.
- 기타
- M2engage - M2에서 개발한 에뮬레이터를 총칭하는 코드네임. 닌텐도, 세가, 코나미 등 다양한 종류의 콘솔 및 아케이드 시스템 에뮬레이션이 존재한다.
- 블리자드 엔터테인먼트에서 스타크래프트 EUD 맵의 일부 오프셋을 1.21 이후 버전에도 지원하고자 개발한 EUD 에뮬레이터가 있다.
- 구글 플레이 게임즈
- 퍼플 - 엔씨소프트의 공식 앱플레이어.
5.6. 에뮬레이터가 없거나 불완전한 것만 있는 게임기/기판
아래 기종들은 에뮬레이터가 없거나 무난히 플레이 할 수 있는[23] 게임이 적거나 없는 에뮬레이터만 있는 게임기/기판이다.아래 게임기/기판용 상용 게임을 완벽하게 돌릴 수 있다고 주장하는 에뮬레이터는 모두 가짜이다. 스크린샷과 유튜브로 올린 비디오 따위는 실기로도 얼마든지 띄울 수 있는 것들이고, 증거가 될 수 없다. 진짜 에뮬레이터는 스크린샷이나 비디오 따위가 아닌 소스 코드를 공개한다. 만약에 새로운 에뮬레이터를 자처하는 사이트가 있으면 관련 블로그나 커뮤니티를 찾아서 예전에 이미 낚시로 판명난 사이트인지 아닌지를 확인하고, 생긴 지 얼마 안 지나서 아직 잘 알려지지 않는 사이트이면 악성코드일 수 있으니 진위 여부가 판별될 때까지 기다리는 것이 좋다. 자세한 내용 및 가짜로 판명난 에뮬레이터는 아래 문단에서 확인할 것.
5.6.1. 휴대용
- Electronic Quarterback(콜레코 제작)
- R-Zone(타이거 일렉트로닉스 제작)
- N-Gage
- PS Vita
2016년에 <HENkaku>라는 익스플로잇이 나와 홈브루들이 나오기 시작했으니 에뮬레이터 개발에 여력이 생길 가능성이 생겼다. - Vita3K: 2020년 6월 기준은 일부 비주얼 노벨 게임은 소리가 없는 점을 제외하면 플레이되는 수준까지 개발되었다. 윈도우, 맥, 리눅스 용으로 제작된다. 안드로이드나 iOS로 하기엔 상당한 최적화를 해야 하고, 기기의 성능도 더 나아져야 할 것이다. 그렇기에 스마트폰용 에뮬레이터는 아직은 거의 기대할 수 없을 것 같다. 사람들의 관심이 큰 덕분인지 발전 속도는 상당히 빨라 보인다. 오픈 소스여서 관심이 있거나 코딩에 자신있는 사람들은 github로 가서 빌딩용 파일들을 찾아 보면 된다. 구동만 해 보려면 Vita3K의 홈페이지에서 받자. 2023년 02월 13일 공식 홈페이지에서 안드로이드 버전 공식 배포가 결정되었다.
- vita2hos (Github)
Nintendo Switch 및 스위치 에뮬레이터에서 작동하는 에뮬레이터. 정확히는 에뮬레이션이 아니라 (Wine과 같은) 호환성 레이어에 가깝다. 스위치도 비타와 같은 ARM 아키텍처 프로세서를 사용하기 때문에[24] 스위치에는 없는 비타용 API 호출을 자체적으로 구현하고, 이외 부분은 전부 네이티브로 돌리는 방식이다. 개발 초기이며 아직 상용 게임은 구동 불가. - GP2X/GP2X Wiz/CAANOO
5.6.2. 가정용
- 컬러 TV 게임, 카세트 비전: 후자는 CPU를 카트리지 안에 넣어버렸으며, 전자는 CPU 없이 본체에 내장된 게임만 플레이할 수 있다. 이들을 구현하는 건 이들용 게임들을 에뮬레이터 없이 네이티브로 이식하는 것과 마찬가지이므로 에뮬레이트 개념이 없는 것과 동일하지만, 마그나복스 오디세이처럼 집적 회로만으로 이루어진 게임기들도 에뮬레이터로 구현할 수 있긴 하니 에뮬레이터가 없는 건 관심도가 낮은 탓이 크다.
- CD-i: 무관심으로 인해 사실상은 버려진 상태이다.
- CD-ice ▩(2001년)
- cdiemu ▩(0.5.3 베타): 사운드를 제대로 지원하지 않고, 실행할 수 없는 게임들도 여럿 있다.
- MAME ☆: 이쪽도 cdiemu와 같은 상황. cdiemu로 안 되는 게임이 여기서 먹히는 경우도 있다.
- TinyCDi ▩(2009년): MAME/MESS 기반의 에뮬레이터.
- 안드로이드 기기로 구동한 사례가 있는 듯하다.
- 엑스박스 360(XBOX 360)
Xenia가 2016년 8월 기준으로 50여 개의 상용 게임들을(콜옵4, 매스이펙트 등등) 플레이할 수 있는 단계까지 완성. 그래도 아직 대부분의 게임은 플레이할 수 없으며 XBOX 에뮬레이터와 비슷한 상황이다. 유일하게 아직 불안정한 7세대 콘솔 게임기이다. Wii의 돌핀 에뮬레이터는 매우 안정적이고, PS3의 RPCS3도 최근의 패치로 안정권에 접어들었다. 진척률이 더딘 이유는 당연히도 XBOX와 동일한 이유. XBOX가 x86 아키텍처 에뮬레이팅의 복잡한 구현 문제 탓에 오랫동안에 불안정한 상태였다가 CXBX-R, XQEMU 등이 등장하여 겨우 안정권에 진입한 상태이니 그보다 높은 세대인 XBOX360 역시 더딜 수밖에 없다.
- Wii U, Nintendo Switch를 제외한 8·9세대 콘솔
Wii U는 게임큐브, Wii와 같은 PowerPC 계열의 CPU 아키텍처를 사용해서 출시 4년 만에 상용 게임을 플레이할 수 있는 Cemu가 등장했다. - PlayStation 4
<spine>이라는 에뮬레이터가 현재 개발되니 엑원과는 달리 이쪽은 희망이 있긴 하다. 이 에뮬레이터로 록맨 클래식 컬렉션 구동이 확인되었다. 그 밖에도 현재 RPCSX, PCSX4 등등의 에뮬레이터가 개발된다. - Xbox One
구엑박과 360와는 차원이 다른 강력한 보안기술을 가진 기기로서 그동안에 나온 기기들 중 최강의 보안기술을 가진 콘솔로도 유명하다. 이 강력한 보안기술을 과시하고 싶은 건지 아예 인터넷 브라우저를 사용할 수 있게 만들었다고 한다. - PlayStation 5
최근 인터넷 브라우저로 끝내 익스플로잇이 뚫리고 말았으니 에물레이터의 개발도 이론상 가능할 것이다. - 판매량이 적은 콘솔들
5.6.3. 아케이드 기판
- 세가의 기판
- 세이부 개발의 일부 자체 기판: 롬 자체는 모두 덤프되었으나 기판의 특이한 성질 때문에 구동되지 않거나 불안정하다. 암호화가 CPS3보다도 지독한 모양(제로 팀[25], 세이부 컵 축구[26]).
- 하이퍼 네오지오 64: MAME가 지원하지만 기판이 복잡해서 겨우겨우 나온 세가 새턴, ST-V의 에뮬레이터와 달리 제대로 돌아가는 에뮬레이터가 아직도 나오지 않는 상태. 세가 새턴보다 복잡하다는 이야기도 있다.
- SYSTEM 2X6 시리즈와 Python 2, SYSTEM 357을 비롯한 모든 PS2 이후 가정용 콘솔 기반의 아케이드 기판
- 시스템 보드 Y2: KOF 2002 UM 하나만으로 먹고사는 기판. PGM2가 지원되기 시작한 MAME에서 롬이 덤프된 것이 확인되었다.
- PGM3: 아톰 PC 기반으로 만든 IGS의 기판. 출시된 게임은 삼국전기 3 HD 단 하나뿐. 롬 덤프가 확인되었다.
- 인터파크 게임즈 NEXUS 3D: ARM 프로세서를 내장한 VRender3D에 기반하고, MIDI 배경음악을 사용한다. 아르카나 하트와 FULL이 이 기판 작품이며, 2부터는 PC 기반을 쓴다.
- Fit of Fighting: 용호의 권의 해적판인데, 최악의 게임성에 1인 모드에서 모든 캐릭터를 선택할 수 있다. 그것보다 이 게임은 배경음은 물론이요, 어떤 소리도 나지 않는데, MIDI를 사용한 기판이기 때문. 그래서 MAME에서는 소리 미지원으로 뜬다.
- 타이토 울프 시스템, 타이토 Type X4, NESiCAxLive 2
- Zealer Board의 일부 게임: 브레차 소프트(SNK 출신들이 모인 회사)의 크리스탈 오브 킹 같은 것은 잘 구동되나, 안 되는 게임도 있다. 오피스 여인천하가 대표적이다.
- SYSTEM 10: SYSTEM 11 계열의 2D 최적화 염가형 기판이나, 기판의 암호화가 지독한 건지 개발팀에 관심이 없는 건지 0.221 이후 버전에서도 실행조차 못 하는 상황. 미스터 드릴러의 후속작과 태고의 달인 구기판 초기작이 이 기판으로 발매되었다.
- 레이저디스크 게임용 몇몇 기판(참고)
- Daphne[27] ▩: 'Multiple Arcade Laserdisc Emulator'라고 했다.
- Hypseus Singe: Daphne의 포크 버전.
- Laser ▩: 'Little Arcade System Emulator Releases'의 약자.
- MAME
- 그 밖의 마이너 기판 또는 해적판 기판(기판 정보 참고)
5.6.4. 시뮬레이터만 있는 것
5.7. 불법 에뮬레이터
보통 에뮬레이터가 아닌 다른 에뮬레이터의 소스 코드를 무단으로 도용한 에뮬레이터. 자신이 직접 개발하거나 원작자 허가를 받고 소스 코드를 포크해서 커스터마이징한 것이 아닌 원작자의 허락 일절 없이 소스 코드를 그대로 때려박은 사례이다. 다만 에뮬레이터의 제작 과정이 불법이라 언제 내려갈 지 모른다 정도의 뜻이지, 이를 사용하는 것이 불법이라는 의미는 아니다.- DamonPS2: PCSX2의 소스 코드 무단 도용.
- 안드로이드용 -oid 계열 에뮬레이터들: Mupen64Plus 기반인 N64oid가 대표적. -oid 시리즈는 오픈 소스 프로젝트들을 불법으로 가져다 쓴 앱으로, 2010년대 초반의 구글 플레이에서 삭제되었고, 개발이 중지되었다. 플러그인 옵션을 제공하지 않으며, 그래픽, 사운드 등에서 다양한 옵션이 부재한다.
- 네코 플레이어: RPG 만들기 시리즈 에뮬레이터. RGSS 플레이어를 역분석해서 제작한 에뮬레이터라 저작권법에 걸려 잘렸다. 빈 자리는 Joiplay 에뮬레이터가 대체하게 되었다.
- MAMEALL: MAME4droid의 소스 코드를 그대로 갖다가 사용했다. 쓸데없이 용량이 커졌으며, 버전명은 '0.159u2'으로 되어 있으나 당연히 인앱에서는 그대로 '0.139u1'이다. 대표적으로 벌레공주님을 위시한 CV1000 게임은 아예 리스트에도 뜨지 않으며, 플레이 스토어 스샷에서는 앱의 실제 버전인 0.139에선 아예 켜지지조차 않는 길티기어 이스카를 노란색 배경(실행은 가능)으로 표시해 놓는 패기를 보여준다. 또한, 앱을 열면 나오는 저작권 문구도 원본 앱에서 그대로 갖다 썼다.
- EGG NS Emulator: 안드로이드용 닌텐도 스위치 에뮬레이터. 구동률이 놀라운 수준이라고 영상으로 홍보한다. 그 이유야즉슨 이 에뮬레이터는 yuzu의 소스 코드를 일부 무단으로 도용했기 때문이다. 제2의 DamonPS2. 그와는 별개로 모든 영상에서 똑같은 컨트롤러가 나오는데, 현시점으로 전용 컨트롤러가 필요한 모양이다.
6. 가짜 에뮬레이터
기기가 나온 지 얼마 안 지난 기종 에뮬레이터이면 가짜인 게 많다. 목적은 대개 랜섬웨어나 트로이 목마 같은 바이러스일 가능성이 높으며, 그나마 양호한 게 검색 유입에 쓴 가짜 키워드 정도다.내용물이 매우 수상하고 바이오스마저 설치 형태로 주니까 몹시 꺼림칙한데, 풀면 나오는 설치 파일 아이콘 자체부터 영 못 믿을 것처럼 생긴 것이 특징. 열면 당연히 큰일 난다. 자동으로 설치되고 설치 파일 속 바이러스가 강제로 실행되어 랜섬웨어가 깔린다. 7zip으로 풀면 나오는 내용물은 역시나 랜섬웨어 파일이다. 따라서 가짜 에뮬레이터를 피하고 싶으면 에뮬레이터를 구글로 찾지 않는 게 좋고, 신뢰할 만한 대형 커뮤니티나 공식 사이트에서 인지도가 있는 에뮬레이터를 내려받는 것이 좋다.
아무나 편집할 수 있는 나무위키의 특성상 이 문서 역시 맹신은 금물. 한때 아래의 3DS Emulator X가 위의 3DS 에뮬레이터 목록에 버젓이 올라 있었듯이 구글 검색 결과로 긁어온 결과가 문서에 추가되는 경우가 있다. 대개는 위키페어리들이 매의 눈으로 보다가 문서를 손보겠지만, 목록도 워낙 길고 복잡하니 못 보고 넘어간 채로 상당 시간에 있을 수도 있다. 어느 정도는 알아보고 오피셜 사이트, 대형 커뮤니티 같은 믿을 수 있는 곳에서 다운로드하는 것을 권장한다.
6.1. 대강의 목록
아래는 그 가운데 구글 검색 결과 상위권을 차지한 사이트를 중심으로 한 일부 목록이다. 사이트 이름 또는 에뮬레이터 이름이 '(콘솔 이름) Emulator'인 것은 EMU7800과 Model2Emulator, 안드로이드용 .emu 시리즈 같은 진짜 에뮬레이터일 수도 있지만, 구글 검색으로 유입하려고 제목을 지은 가짜 에뮬레이터일 가능성이 매우 높다. 가짜 에뮬레이터도 이게 다가 아니니까 충분한 주의를 바란다. 무엇보다 여기에 정리될 정도면 한 번 이상 당한 피해자가 반드시 있다는 것이다.- 닌텐도 3DS
http://3dsemulatorx.net- 3DS Emulator X
현재는 사이트가 열리지 않는다.http://3dsemulator.org- eMu3Ds
현재는 Citra 정보가 나온다. 도용한 듯.https://3dsemulator24.com/
파일 다운로드 후에 이상한 파일을 추가로 다운로드하랬다. 현재는 가방 쇼핑몰 사이트가 뜬다.- 엑스박스 360(XBOX 360)
https://xemu360.software.informer.com/- XeMu360 - 플레이스테이션 3
http://playstation3emulator.net- PSeMu3
여기에서 배포한 것은 진짜 랜섬웨어이기에 다운로드하면 멀쩡한 컴퓨터가 박살난다. 초반에는 바이러스가 안 떠서 유저를 안심시키고 바이오스를 설치해야 실행할 수 있다면서 홈페이지 내의 바이오스 설치 파일을 던져준다. 이것을 실행하면 랜섬웨어에 감염된다. 해당 프로그램은 C나 C++로 만든 것도 아니고 vb로 만든 것이다. vb로 만든 것부터 에뮬레이터가 아닌 사용자의 컴퓨터를 아작내겠다고 선전포고하는 것임을 알 수 있다. VB Decompiler Pro로 파일을 열면 그냥 소스 내용이 열리는데, 에뮬 관련 스크립트가 하나도 없는 빈 파일이다. 랜섬웨어 파일도 vb로 열리는데, 랜섬웨어가 깔리는 링크로 연결되어 있다. 바이러스 토털 사이트에서 검사 결과, 바이러스로 진단한 백신이 총 44개인 랜섬웨어이다.
현재는 사이트가 열리지 않는다.- 플레이스테이션 4
http://ps4emulator.org- PCSX4
PSeMu3와 같은 제작자가 vb로 만들어 배포하는 진짜 랜섬웨어이다. 사이트 이름은 'PCSX4'이지만, 프로그램명은 'PCSX4'가 아니고 'PCXS4'이다.- 닌텐도 스위치
https://www.malavida.com/en/soft/switchdroid/android/#gref- SwitchDroid
BIOS missing! 더 이상 진행되지 않는다.- 플레이스테이션 5
https://psemux.com/psemux
설치 파일을 열면 이상한 프로그램들만 깔린다.
7. 진짜인지 가짜인지 불명확한 에뮬레이터
가짜라고는 명확히 판명되지 않았으나, 아무런 정보나 영상이 공개되지 않아 진짜 에뮬레이터라 하는 것도 의심을 살 만한 에뮬레이터 목록. 정보가 더 공개될 때 에뮬레이터 목록이나 가짜 에뮬레이터 목록으로 옮겨진다.7.1. 목록
- 플레이스테이션 3
- http://esxemulator.com - ESX
가짜 에뮬레이터였는데 현재는 진짜로 개발하는 듯하기도 하다.
8. 관련 문서
[1] '예뮬레이터'로 잘못 쓰는 경우가 많다. '예물'이라고 잘못 쓰기도 한다. 많은 게이머들이 그만큼 나이들었음을 시사한다. 이제 게이머들이 사회를 이끈다[2] 프로그램 파일명이 "CHP.COM", "NKP.COM"이어서 이렇게 불렸다. 둘다 삼보 상용조합형을 지원하는 한글 에뮬레이터.[3] '한글 도깨비'라는 한글카드를 소프트웨어적으로 흉내내주는 에뮬레이터다.[4] x64의 long 모드로는 VDM 구동에 필요한 CPU의 기능인 가상 8086 모드(VM86)가 동작하지 않기 때문이다.[5] 그런데도 3dfx 에뮬레이션 코드를 DOSBox에서 가져왔다고 한다(...)[6] 영어, 일본어로는 '에뮤(Emu, エミュ)'.[7] 대개의 게임기에 쓰인 CPU는 x86이 아니기 때문에 CPU의 기본적인 동작부터 가상으로 구현해야 한다. 이 점이 CPU 처리를 별도로 에뮬레이션하지 않고 패스스루하는 VMware류의 가상머신과의 가장 큰 차이점.[8] 스트리트 파이터 2, 록맨 X, 골든 액스 등 의외로 PC로 이식된 타기종 게임들은 굉장히 많다.[9] higan은 오늘날 콘솔의 GPU에 대응되는 SNES의 PPU를 대부분 정확하게 에뮬레이트하기에 매우 느리다. 반대로 저성능의 3DS용으로 만들어진 Snes9x for 3DS는 이 작업을 GPU에 맡겨서 아주 빠르지만 정확성을 희생했다.[10] 한국에서는 출판업계에서 구형 Mac OS X 10.4 버전이 탑재된 파워PC 맥이 오래 굴려진 경우가 있긴 한데, 해당 문서 참조.[11] 반대로 월드 오브 워크래프트나 리그 오브 레전드처럼 단일한 게임 앱이 히트를 오래 치고 장수하면 최신 환경에 호환성을 맞춘다.[12] 3766만은 잔혹설정 OFF에다가 레벨8 세팅이라 우소스코어로 간주하여 제외[13] 플레이 플랫폼이 GOTVG다.[14] #[15] DRM 우회의 불법 여부는 국가마다 다르다. DRM 문서에 따르면 '이용권을 가진 본인이 다른 기기등에서 사용할 목적으로 해제하는 것, 정확히는 정당한 권한을 가지고 프로그램을 사용하는 자가 다른 프로그램과의 호환을 위하여 필요한 범위에서 프로그램 코드 역분석을 하는 경우'에는 합법이다. 에뮬레이터를 이용한 백업 게임 구동은 불법이 아닌 듯 하다.[16] 이는 페르소나 5와 관련된 내용을 게시하는 것이 저작권 침해라는 주장에 따라 문제될 수 있는 내용을 삭제한 듯 하다.[17] 복사 방법을 안내하는 글이 홈페이지에 있었는데, 나중에 삭제되었다.[18] 'My Emulator Doesn't Need A Frickin' Excellent Name'의 약자[19] 정확히는 AVI 캡처 설정에 있다. 'Sync to audio'로 되어 있으면 오디오를 기준으로 삼게 된다.[20] 다만 동명의 짝퉁들 때문에 예나 지금이나 구하기가 어렵다.[21] 엑스박스 원, 엑스박스 원 X 게임들은 '네이티브 호환+스마트 딜리버리' 지원.[22] 외부 데이터 버스와 어드레스 버스를 32비트화한 V70 포함.[23] 일반적으로 에뮬레이터의 롬 파일 호환 여부를 나누는 기준인 5가지 분류(크래시/로딩 거부, 메인 화면 표시가능, 게임 내 그래픽 표시가능, 플레이가능, 완벽)에 따를 때.[24] 스위치는 ARMv8, 비타는 ARMv7이지만, ARMv8은 ARMv7과의 하위호환성을 가진다. 일부 ARMv7으로 작동하는 스위치 게임(주로 Wii U 이식작)도 있다.[25] 원본 롬은 구동되나 불안정하다. 말기판의 클론인 NEW와 2000은 정상 플레이 가능.[26] 뚫린 건 해적판 한 개다. 이쪽은 아예 원본이 구동되지 않는다.[27] 'Daphne'라는 이름은 이쪽 계열의 시초인 드래곤즈 레어의 히로인 이름에서 따왔다. 롬 파일은 'Singe'라는 이름의 폴더에 넣게 되어 있는데, 이는 보스의 이름.