프린세스 메이커3 한국어판은 총 3가지가 있습니다.
만트라판
후지쯔판
스팀판
 
현재 가장 구하기 쉬운 버전은 스팀판입니다. 다만 10명중 10명에게 물어보면 거의 다 스팀판 싫어합니다... 일본어 음성이라 별로인 것도 있고 옛날 추억삼아 하는 게임이라 그때 그 느낌이 아니라서 별로라는 군요.
 
대부분은 만트라판을 추천합니다만 이쪽은 또 호환성 문제가 많습니다. 16비트 코드를 요구하는 부분이 있어서 최신 OS에선 당연하다는 듯 제대로 안 돌아갑니다.
그래서 XP이후에 출시된 후지쯔판에 만트라판 데이터를 섞은 버전을 추천하는 편입니다. Winlator도 16비트 코드가 당연히 안 돌아가므로 32비트 코드로만 구성된 후지쯔판이 가장 잘 돌아갑니다. (만트라판이 안 돌아가는건 아닌데 뭔가 버벅거립니다.)
 
본래라면 당연히 직접 구하셔야 합나다만...
https://doogie838.tistory.com/1206

 

프린세스 메이커 3 후지쯔판 + 만트라 데이터 , Princess Maker 3 FUJITSU Version + MANTRA Data {시뮬레이션-

영등위 / 게등위 등급번호 : 2003-FCR00862024.08.22 수정: - 오월의 신부 엔딩 수정2023.11.15 수정: - 앨범 전체 해금/초기화 기능 추가2023.11.01 수정: - 구동이 잘되는 후지쯔판을 기준으로 

doogie838.tistory.com

여기서 호환성패치와 기타 등등이 되어진 버전을 구할 수 있습니다. 암호가 걸려있다는 문제가 있는데 그건
https://nemo838.tistory.com/4494

 

압축파일 비밀번호 안내

블로그에 있는 게임들을 실행하려면 [여기] 를 클릭해서 최신 게시물에 첨부된 런처를 먼저 다운 받아 압축을 풀어놓고 [http://cafe.daum.net/nemo838/iAzP/2] 에서 영상 보고 따라 하세요 런처를 이용하

nemo838.tistory.com

여기에 써있으니 그걸 잘 이용하시면 됩니다.
 
저작권이 아직 멀쩡히 살아있는 게임입니다. 왠만하면 스팀판이라도 구매는 하고 해당 파일을 이용하도록 합시다. (저는 사실 이미 두가지 판본의 CD를 갖고 있습니다만 설치 후 융합하는게 귀찮은 관계로...)
 
위의 고전게임 배포 블로그에선 레지스트리와 버그픽스, 호환성 패치가 되어져 있으므로 일반 PC에선 아주 잘 굴러갈겁니다. 심지어 Wine에서도 잘 굴러갑니다.
 
다만 Winlator에서 굴리려면 추가 삽질이 동반됩니다.
우선 컨테이너는

Name은 알아서 잘 정하시고 Graphic Driver는 VirGL을 쓰겠습니다. 뭔가 이쪽이 오류가 덜 합니다.

Game Controller는 솔직히 다 필요없으므로 꺼주시는 걸 추천합니다. 컨테이너 설정은 이 정도면 됩니다.
 
 
그리고 게임도 미리 어느정도 PC에서 손을 본 다음 스마트폰에 설치합시다.
알아서 잘 해당 블로그에서 잘 다운로드 받아보면  _inmm을 통해 CD-DA패치가 되어 있으며 dgvoodoo를 통해 DDraw 호환패치가 되어져 있습니다. 이중 dgvoodoo를 무력화 할 것입니다. 이유는 VirGL에서 문제가 있거든요.
 

여기 보시면 ddraw.dll 파일이 있습니다. 이걸 파일명을 바꿔줍니다. 전 뒤에 .bak을 붙였습니다. 만약 DXVK를 꼭 쓰겠다고 하신다면 원래대로 다시 돌려주시면 됩니다.
 

PM3_Winlator_patch.zip
0.90MB


 
그리고 위 파일을 다운받아 덮어 씌웁니다.
해당 파일은 오프닝 영상을 없애고 호환성 로더를 실행 시키기 위한 DLL파일과 실행파일에 직접 해킹을 통해 메시지박스를 제거한 버전입니다. 메시지 박스가 제거된 관계로 게임이 안 꺼지는 문제가 있는데 어차피 최신 OS에서는 제대로 종료가 안 되고 프로세스가 남아 강제종료 해야 합니다.

이렇게 하시면 게임은 준비됩니다. 이걸 스마트폰에 넣습니다.
 

 
스마트폰과 USB연결 후에 Download 폴더에 통째로 복사하면 되겠지요. 아니면 다른 방법을 통해 복사하시면 됩니다.
 
이제 Containers 에서 해당 컨테이너를 실행합니다.

이제 여기서 아까 넣은 폴더를 선택후에 C:로 복사합니다. D:에서 바로 실행도 가능하긴 한데 뭔가 오류가 있을 가능성이 있고 Android시스템과 꼬일 수 있습니다. 복사를 합시다.
 

 
이렇게 C:안에 복사를 해두면 실수로 다운로드폴더에서 지워버려도 남아 있게 됩니다.
이제 바로 실행!은 아니고 레지스트리를 입력해야 합니다.
 
시작 - system tools - Registry Edtiror를 클릭합니다.
 

 
레지스트리-레지스트리 가져오기
이후에 C:에 우리가 복사한 곳으로 가면 Doogie라는 폴더가 있습니다. 위 블로그 제작자분이 만들어둔 레지스트리 입력파일입니다. 이걸 입력해야 게임이 실행됩니다.
 

레지스트리 파일이 모여 있는 곳 여기 있는 모든걸 다 입력해야 한다.

여기 보시면 파일이 4개가 있는데 파일을 하나하나 열기해서 입력해야 합니다.
 

성공적으로 추가되었다고 메시지가 뜨는데 이걸 한번씩 다 하세요. SetPathX.reg를 제외하고 총 3번 하시면 됩니다.
(SetpathX.reg는 윈도8이후 전용입니다. Wine에선 SetPath.reg만 해도 문제없습니다)
 
그리고 OS를 윈도우XP로 바꿉시다. 후지쯔판은 XP를 위해 만들어진 버전입니다. 따라서 XP로 해야 잘 실행되겠지요.

시작- System Tools - Wine Configuration
여기서

 
windows 버전을 WindowsXP로 바꿉니다.
그리고

 
데스크탑 종료를 해줍니다.
이제 컨테이너가 꺼질텐데 다시 실행하려고 하면 실행이 안 될겁니다. 아마 셧다운 되는데 시간이 걸려서 그럴겁니다. 조금 기다리거나 휴대폰을 그냥 껐다 켜는게 더 빠를 수도 있습니다.
 
이제 다시 Containers에서 다시 환경을 실행해 봅시다.
 
그리고 _PM3Win.exe가 있을 겁니다. 오리지널 프린세스메이커3가 아닌 검정색 아이콘입니다.
이 프로그램은 호환성을 위한 메모리 패치 및 강제종료시 프로세스가 남는 것을 감시하는 역할을 합니다. 즉, 최신OS에서의 호환 문제를 해결합니다.
 
이걸 실행해 봅시다.
몇번실행하다보면 어느 순간 실행이 됩니다.

 
그리고 위 스크린샷에 있는 위치즈음을 클릭 해보면 환경설정이 가능해집니다.

 
CDDA연주는 무슨이유인지 계속 오류가 나면서 귀찮아 지는 문제가 있습니다. 그렇기에 BGM을 꺼버리는게 동작하는데 가장 좋습니다.
다만 아래의 Winamp방식으로 바꿔서 재생하니 제대로 된 음악을 들을 수 있었습니다. 제일 아래 설정 참조. 다만 Winamp가 따로 돌아가다보니 휴대폰에 불이나려 합니다. 그냥 끄는게 정답일수도 있습니다.

그리고 화면 특수효과도 꺼주셔야 게임할때 안정적으로 돌아갑니다. 저게 켜지면 은근히 버벅거리더군요.

Winamp설정안하고 기본 (DirectShow방식)을 쓰면 아래처럼오류납니다. WMP가 문제인걸로 보입니다.

CD-DA가 되어야 배경음악이 나올텐데 이게 말을 안 듣습니다. 이것도 일종의 호환패치인데 아쉽더군요. 리눅스 PC에서는 따로 가상드라이브를 만들어서 해당 ISO파일을 넣는 방식으로 음악을 들었는데 Winlator에선 안 되니 아쉽네요. _inmm이 이용도로 나온건데 아쉽네요.(WMP를 설치하면 된다는 이야기도 있는데 안 해봤습니다.)

그래서 위에 호환패치에 이러한 설정으로 된 레지스트리를 포함했습니다.(BGM을 기본적으로 끕니다)

이제 이후에는 게임을 켤때마다 이런식으로 켜면 힘들겠죠?
바로 실행 가능한 아이콘을 만들어 봅시다.

 
_PM3WIN.exe 파일을 여기서 복사합니다. 그리고 Desktop 에다가 바로가기를 만듭니다.
메뉴에 보면 있는 Edit-Paste Shortcut을 누르면 됩니다.

 
 
이러면

햄버거 매뉴 - Shorcuts에 이렇게 아이콘이 뜨게 됩니다. 이걸 누르면 바로 실행이 됩니다. 이제 작은 마우스는 쓸 일이 없을 테니 터치스크린으로 교체를 하고 이를 위해 가상 버튼을 하나 만듭시다.
 

 
햄버거 버튼을 누르고 Input Controllers를 누릅니다.
 

 
그리고 여기서 추가로 더하기 버튼을 눌러서 가상버튼 프로필을 만듭시다.

우리는 여기서 PM3라고 했습니다. 그냥 이건 마음대로 하시면 됩니다.

 
Controls Editor를 눌러서 이제 버튼을 배치합시다.
이제 여기서 가로모드로 하는걸 추천합니다. 아마 저는 오른쪽 위나 아래에 뒤로 가기 버튼 역할을 할 수 있는 ESC버튼을 만들려고 합니다.

 
 
해당 화면에서 버튼을 만들고자 하는 부분을 먼저 클릭 한 뒤에 버튼을 누르면 None 이라는 이름의 동그라미 하나가 생깁니다. 이게 버튼 역할을 할겁니다. 이걸 이리저리 끌고 다니면서 위치 조정을 할 수 있습니다. 그다음 톱니 버튼을 누르면 여기에 어떤 기능을 부여 할 수 있습니다.

여기서 Binding에 ESC를 하나 만듭시다. 프린세스 메이커는 이거 하나만 있어도 됩니다. 나머지는 마우스 클릭이거든요. 빨리 넘기기 위한 CTRL 키를 만드셔도 되는데 저는 귀찮아서 넘기겠습니다.
 
그리고 Shorcuts로 실행 했을때 버튼과 해상도를 설정합시다. Shortcuts를 눌러서 다시 세팅을 추가로 합시다.
 
 

오른쪽의 점점점을 누른다음 Settings를 눌러서 손을 봅시다.

 
Screen Size를 960x544로 바꿉니다. 이유는 사실 640x480의 게임에 창테두리를 포함하는 크기입니다.
 
그리고 Win Components가 있는 부분을 오른쪽으로 땡기다 보면  Advanced가 있습니다.

여기서 Input Controls에 Profile을 아까 우리가 만든 PM3 프로파일로 바꾸고
아래 Simulate touch screen에 체크를 합니다.
 
이제 게임을 다시 실행해 봅시다.

이제 스마트폰에서 게임이 가능해졌습니다. 심지어 터치스크린이라 옛날과 또 다른 맛이 있습니다.
 
P.S 제가 올린 실행파일에서 메시지 박스를 제거 했는데 이게 일반 PC에선 문제가 전혀 없습니다. 그런데 winlator에선 메시지가 게임창 뒤로 넘어가서 게임이 안 넘어가는 문제가 있습니다. 그래서 그냥 메시지박스가 나오지 않도록 바이너리 패치가 일부 적용되었습니다. 이로인해 불안정해질 가능성이 없지않아 있습니다.
 
 
===============================25.3.10==============
배경음악이 안나오는건  _inmmserv.exe와 DirectShow가 문제가 생긴 탓으로 보입니다.
그래서 역사와 전통의 Winamp로 구동되게끔 조금 손을 대봤습니다.

Winlator_inmm_Winamp.zip
1.43MB

 

Winlator_inmm_Winamp_Nohtml.zip
0.42MB

 

이걸 프린세스메이커3가 설치된곳에 풀어서 덮어씌운다음 다시 실행하면 CDDA가 Winamp로 재생될겁니다.

 

위의것은 음질이 좋기로 유명한 프라운호퍼 디코더가 적용된 2.95버전입니다. 다만 WineGecko를 설치해야합니다.

 

아래는 HTML이 제거된 2.09버전입니다. 대신 음질은 애매합니다. 하지만 WineGecko가 필요없기에 조금더 가볍습니다.

우선 AudioDriver를 Pulseaudio로 바꿔줍니다.
ALSA는 한 프로세스가 독점하면 다른 프로세스가 접근할 수없는 문제가 있습니다. (대신 PulseAudio는 사운드 딜레이가 약간 있습니다)

그리고 NoHTML이 아닌 것을 적용하셨다면

시작-System Tools- Wine Gecko Install을 눌러 WineGecko를 설치하거나 그냥 Winamp폴더의 winamp.exe를 따로 실행해서 WineGecko를 설치합니다.

Winamp 2.95는 HTML을 요구합니다. 마음에 안 드시면 Nohtml버전을 쓰시면 됩니다. 대신 음질은 상대적으로 구립니다.

그리고 프린세스메이커3를 실행하고 환경설정에 들어갑니다.

여기서 CDDA로 바꿔줍니다.
이건 게임 실행때마다 바꿔주셔야합니다. BGM을 미리 활성화하니까 어찌된영문인지 게임이 멈추더군요. 그래서 이런방식으로 게임실행후 BGM을 활성화했습니다.

이제 거의 완벽해졌습니다!

,

생각보다 재미있는 프로그램이 나왔습니다.

아니 그동안 그냥 제가 몰랐던거에 가까운거지요.

 

winlator라는 안드로이드 앱입니다.

방식은 Box64(https://github.com/ptitSeb/box64)

 

GitHub - ptitSeb/box64: Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64, RV64 and LoongArch Linux device

Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64, RV64 and LoongArch Linux devices - ptitSeb/box64

github.com

를통해  ARM에서 AMD64를 에뮬레이팅하고

해당 에뮬레이팅 환경위에서 Wine을 구성해서 Windows 프로그램을 돌리는 것입니다.

 

그리고 Windows 프로그램을 돌리는 이유중 하나는 DirectX다보니 DXVK나 WineD3D같은 호환 레이어를 통해 GPU가속을 진행합니다.

쉽게 말해서 Wine을 Box64와 최소한의 X11 에서 돌리면서 DXVK를 통해 스마트폰의 Vulkan환경에 직접 접근하는 방식입니다.

 꼭 Vulkan이 아니더라도 Wine에서 구동이 된다면 스마트폰에서도 느리게나마 구동이 가능하다는 의미입니다.

 

공식 github는 https://github.com/brunodev85/winlator

 

GitHub - brunodev85/winlator: Android application for running Windows applications with Wine and Box86/Box64

Android application for running Windows applications with Wine and Box86/Box64 - brunodev85/winlator

github.com

여기지만 대부분 사람들은 공식 Winlator대신 MOD버전을 이용한다고 하더군요.

 

저부터도 glibc버전이 달라진 https://github.com/ajay9634/winlator-ajay

 

GitHub - ajay9634/winlator-ajay: Android application for running Windows applications with Wine and Box86/Box64

Android application for running Windows applications with Wine and Box86/Box64 - ajay9634/winlator-ajay

github.com

이 MOD를 이용하고 있습니다. 왜냐하면 최신 Wine환경에서 glibc버전의 영향이 크거든요. 최신버전의 Wine을 위해선 아무래도 glibc가 같이 버전이 어느정도 되어야 합니다. 특히 Proton같은 변형 Wine을 쓴다면 더더욱 glibc가 필요합니다. 그리고 무엇보다 해당 버전은 MIDI가 지원됩니다. 고전게임에선 MIDI가 주로 이용되었으니까요.

 

한번 저는 여기에서 고전게임을 한번 실행해 보도록 하겠습니다. 다만 가능하면 인스톨이 대신 기존 설치된 게임을 복사해서 쓰는걸 추천합니다. 레지스트리 입력을 자동으로 해주는 게임도 있습니다. (디스크스테이션 게임이 대표적)

 

우선 설치를 해야겠지요. APK를 이용해서 설치하는건 따로 알려드리지 않습니다.

https://github.com/ajay9634/winlator-ajay/releases

 

Releases · ajay9634/winlator-ajay

Android application for running Windows applications with Wine and Box86/Box64 - ajay9634/winlator-ajay

github.com

전 여기서 winlator-ajay 7.1.2을 쓰고 있습니다. 내장된 Wine은 9.0을 기반으로 한 커스텀 버전입니다. 그럭저럭 최신버전입니다.

 

처음 설치하면

출처 : https://winlator.com/winlator-glibc/

 

이렇게 뜨면서 시스템파일을 설치합니다. X11과 Box64, 그리고 내장된 Wine 을 설치하는 중입니다.

그리고 나면 Containers라는 화면이 뜹니다. 그리고 왼쪽 위에는 햄버거 버튼이 있어서 이것 저것 확인이 가능합니다.

 

Docker를 써보셨으면 Container 개념이 바로 잡히실겁니다. 각 Container는 일종의 Wine Prefix 역할을 합니다. Playonlinux나 Lutris를 통해 각 프로그램별로 환경을 갖추는 바로 그걸 의미 합니다.

 

저는 이미 이것저것 설치해둔 터라 뭔가가 많이 있습니다만 처음 시작하면 아무것도 없을 겁니다. 오른쪽 위에 +를 눌러봅시다.

 

Name은 Container 이름이며 사이즈는 우선 720p로 그대로 두는걸 추천합니다. 해상도가 높으면 구동시 버벅임이 심해지고 너무 작으면 창이 밖으로 넘어가는 불상사가 일어납니다.

 

Wine Version이야 당연히 Windows 호환 레이어의 버전입니다. 특정 프로그램의 경우 구버전에서 잘 돌아가는 프로그램도 있지만 우선 내장된 버전이 이것이니 이걸 그대로 이용합시다.

그리고 Graphic Driver 이게 중요한데 스냅드래곤 칩셋의 경우 Turnip이 꽤 좋은 퍼포먼스를 보여줍니다. 특히 DXVK를 쓸 수 있어서 Vulkan을 쓰므로 상당히 좋은 모습을 보입니다. 다만 호환성은 반대로 떨어집니다. 이건 PC리눅스에서도 마찬가지였습니다.

 

VirGL은 호환성이 상당히 좋은 드라이버입니다. Qemu등에서 쓰이는 드라이버로 PC에선 상당히 좋은 모습을 보여주지만 Vulkan이 작동되지 않습니다. WineD3D를 통해 OpenGL로 구동해야 합니다. 웃긴건 삼성 최신 칩셋에서는 Vulkan성능이 상당히 좋은 GPU가 들어갔음에도 VirGL을 통해 OpenGL을 써야하는 뭔가 안타까운 상황입니다. 개발이 지속되면 삼성칩셋에서 Vulkan이 구동될 수도 있을겁니다만 아직은 아닙니다.

 

만약 굉장히 오래된 고전게임을 구동한다면 개인적으로 VirGL을 쓰는걸 추천합니다. DXVK가 구형 API를 지원 못하는 관계로 쓰나마나인 경우가 잦습니다. dgVoodoo같은 레이어를 쓰기도 하는데 스마트폰에선 퍼포먼스가 PC에 비해 떨어지는 관계로 CPU 발열이 엄청나더군요. 차라리 WineD3D를 써서 CPU부담을 줄이는걸 추천합니다. 어차피 고전게임들은 그렇게 많은 성능을 요구하지 않습니다.

 

MIDI SoundFont는 MIDI를 구동할때 필요합니다. MIDI를 사용한 게임(뿌요뿌요2, 환세취호전 등)을 쓰신다면 이걸 켜주시면 음악을 들을 수 있습니다. 심지어 윈도우 기본 폰트보다 상당히 좋은 품질이 나옵니다.

 

그 외에 Drives를 추가해서 스마트폰의 외부에 접근이 가능하게 할 수 있습니다. 참고로 기본 설정은 D드라이브가 스마트폰의 다운로드 폴더입니다. 보통은 기본으로 두는 편입니다.

 

그리고 오른쪽 아래의 체크를 누르면 컨테이너가 생성됩니다.

이제 여기서 재생버튼(?)을 누르면

 

윈도우와 흡사한 화면이 나오면서 파일탐색기가 같이 뜹니다. 그리고 터치패드를 이리저리 문지르다보면 마우스포인터가 노트북 터치패드 처럼 움직인다는 것을 알 수 있습니다.

 

네, 터치스크린 방식이 아닌 노트북 터치패드처럼 쓴다고 생각해야 합니다. (물론 터치스크린처럼 쓸 수도 있습니다만 작은 파일을 선택하거나 하기엔 답답하기에 이게 더 편할 수 있습니다.)

사실 이 화면은 Wine Desktop화면입니다.

 

 

제가 사용하는 ajay모드 버전을 쓰신다면 fix wfm launch를 한번 해주시는걸 추천합니다. 가끔 Wine Desktop에서 밖으로 빠져나가서 따로 실행되는 프로그램들이 있습니다. 일반 리눅스 데스크탑이라면 알아서 따로 열린창으로 작업이 가능하지만 우린 Wine Desktop만으로 작업을 해야하니 난감한 상태가 됩니다. 이 설정은 해당 문제를 방지해줄 수 있습니다.

 

그리고 D:를 통해서 아까 설정한 스마트폰 내의 다운로드 폴더에 접근이 가능합니다. 만약 아무것도 안 뜬다면 컨테이너를 닫은다음 Drives 설정으로 들어가서 접근 허용해주시면 됩니다.

 

즉, 이제 필요하다면 다운로드 받은 프로그램을 D드라이브에서 복사해서 가져오거나 직접 실행하는 방식으로 해당 컨테이너에서 굴릴 수 있게 된다는 의미입니다.

다만, Wine에서도 그렇게 삽질이 동반되었는데(그동안 제가 해왔던 삽질을 생각해보자면...)여긴 아키텍처가 다르니 일부 그냥 돌아가는 프로그램들을 제외하면 더했으면 더했지 덜 하지는 않을겁니다.

 

 

뒤로 버튼을 한번 누르면 세로모드로 바꾸거나 키보드를 소환하거나 닫아 버릴 수도 있습니다. Input Control을 통해 가상 버튼을 만들어서 게임에서 써먹을 수도 있습니다. 만약 멈춰버려서 말을 안 듣거나 하면 Task Manager를 통해 특정 프로그램을 닫을 수도 있습니다. Exit는 당연히 해당 컨테이너를 닫아버리는 기능이겠지요.

 

참고로 컨테이너를 닫은 다음 시간이 어느정도 지나야 완벽히 닫깁니다. Box64 서비스가 내려가는 시간이 꽤 걸리는 듯 합니다. 이것도 리눅스가 셧다운 될때 꽤 시간이 걸린다는걸 생각해보시면 될 듯 합니다.

 

아마 다음에는 고전게임중 하나인

 

이걸 해볼까 합니다. 가상버튼들이 뭔가 이상한데 이건 다른 게임용으로 만든 버튼이 튀어나온 탓입니다.(...)

이건 꽤 삽질이 많이 동반 되었기에 이정도의 삽질은 해야 게임이 된다는걸 보여줄 수 있을것 같거든요.

,



Playstation은 90년대에 처음 등장하고 지금까지 시리즈가 내려와 그동안 게임콘솔계의 큰 업체였던 SEGA를 침몰 시킨 흔한 가전업체(?) Sony의 게임기입니다.


지금은 어느새 PS4까지 나와서 게임들이 쏟아져 나오고 있습니다. 당시 소니에서는 이렇게까지 잘 나갈거라고 생각은 안 했다고 합니다. 하지만 어쨌건 게임은 충실히 나오게 되었고 이는 PS2가 나올때까지 계속되었습니다.


그렇다면 당연히 이런 게임기의 에뮬레이터가 안 나올 수는 없겠지요. 초창기에 Platstation의 에뮬레이터가 만들어지고 있다고 했을 때 말도 안 된다고 징징댔던 사람도 있었다고 합니다. 하지만 시대는 변하고 PC의 성능은 말도 안 되게 좋아져서 PS 실기만으로 해결 할 수 없는 화질 등의 개선이 이루어지는 등 지금은 에뮬레이터의 성능이 훨씬 더 막강해 졌습니다.


현재까지 알려진 Playstation의 에뮬레이터는 다음과 같습니다.


1. VGS

2. Bleem!

3. ePSXe (http://www.epsxe.com/)

4. PCSX (https://pcsxr.codeplex.com/)


이외에도 상당히 많지만 보통은 이 정도만 사용합니다.


특히 여기서 Bleem!은 에뮬레이터의 존재에 대해 많은 것을 일깨워준 물건인데 에뮬레이터 주제에 유료로 판매하려고 했던 물건입니다. 결국 소니의 저작권 철퇴를 맞고 사라지게 되었습니다.


VGS는 Shuffix란 업체에서 만든 것인데 2D는 굉장히 빨랐지만 3D가 영 아닌 모습이 나오게 되어서 이 쪽도 사용자 층이 확 줄어버렸습니다. (Shuffix란 이 업체는 VirtualPC란 엄청난 물건을 내놓게 되고 승승장구 했었지만 결국 가상머신 기술이 필요했던 Microsoft에 인수 되었습니다.)


결국 남은 것은 ePSXe와 PCSX만이 남았군요. 이 둘 중에서 유명한 것은 ePSXe입니다. 사용자층도 넓고 플러그인의 개발이 아직도 진행중입니다.


https://play.google.com/store/apps/details?id=com.epsxe.ePSXe

성능에 걸맞게 유료다! 하지만 Drastic보다는 싸다.

다만 그 성능에 걸맞게 4500원 상당하는 유료 앱이라는 것이 걸림돌입니다. PC용은 무료로 배포되고 있지만 안드로이드는 포팅상의 문제가 있는 것인지 유료입니다. 

하지만 정말 성능과 플러그인 지원만큼은 정말 훌륭합니다.


그 중 제일 대박인 플러그인은 FinalFantasy7의 로우폴리곤 모델을 하이폴리곤으로 바꿔주는 플러그인인데 기본적인 그래픽 향상이 눈에 확연히 보입니다. 그 밖에도 특정 게임용 플러그인들이 즐비합니다. 그만큼 지원이 좋다는 의미겠지요.


그럼 PCSX를 알아볼까요?

지금의 PCSX는 PCSX-Reloaded(통칭 PCSXR)라 해서 한번 PCSX에서 갈라진 프로젝트입니다. 기존의 PCSX홈페이지는 사라졌고 지금은 여기있는 PCSXR이 그 역할을 수행중입니다.

그런데 ePSXe에 비해 딱히 나은 것도 없고 사용자층이 두터운 것도 아니지만 제가 이 프로그램을 알려드리는 것은 다 이유가 있겠지요.


바로 이 프로그램이 대부분 안드로이드용 PS1 에뮬레이터의 기반 소스 코드가 되기 때문입니다. (즉, 이건 오픈소스입니다.) psx4droid란 물건이 가장 유명한데 이 물건은 아쉽게도 업데이트가 끊기고 최신 안드로이드에 대응을 못하면서 사장 되었습니다. 물론 구형 안드로이드 폰이 있으신 분은 이 쪽을 찾으시면 되겠지요.


psx4droid의 스크린샷. 하지만 안드로이드 5.0이후부터는 제대로 돌아가지 않는다...



그래서 또 다른 앱은 없나 살펴보니 PlayStore에 있더군요. 바로 이번 주인공 PowerPSX란 앱입니다.


https://play.google.com/store/apps/details?id=com.emula.popsx

광고가 붙어있기는 하지만 무료입니다. psx4droid가 정상적으로 돌아갔다면 이 쪽을 추천했겠지만 이쪽은 제대로 안 돌아가는 관계로 대신 업데이트가 정상적으로 이루어지는 PowerPSX를 추천하는 것입니다.


대놓고 PCSX를 기반으로 했다고 하는 psx4droid와 달리 PowerPSX는 딱히 기반 코드를 알려주고 있지 않습니다. 다만, PCSX의 코드를 썼을 것이라는 느낌은 여러가지 게임을 돌리면서 대충 느껴지고 있습니다. PCSX에서 생긴 문제가 여기서도 똑같이 일어나거든요.


PowerPSX로 돌린 Megaman X4 스크린샷. 간만에 추억에 잠겨.... 폭망했다.


일단 2017년 현재 현역 안드로이드 환경에서 문제가 없습니다. 다만 내장 바이오스를 사용하면 호환에 문제가 많아 (PCSX 사용시와 동일한 증상) 따로 구글에서 SCPH1001이라 검색하거나 여기서(https://www.loveroms.com/extras/psx-bios.php)바이오스를 구해서 넣어주시는 것을 추천합니다. 일본판보다는 북미판바이오스가 호환성이 더 좋다고 하네요.


그리고 VR모드라고 지원을 하기는 하는데 이쪽은 그다지 좋지는 않군요. 그냥 화면을 분할해서 양쪽에 똑같은 화면을 뿌리는 수준입니다. 혼자 게임하고 싶다면 나쁜 생각은 아닌데 굳이 그러고 싶지는 않네요. 하지만 무료에 이 정도면 훌륭합니다.


결론부터 말씀드리자면 만약 돈을 지불해서라도 호환성과 각종 플러그인 지원을 받고 싶으시다면 ePSXe를

그냥 PCSX수준의 호환성 정도면 충분하다고 생각하신다면 PowerPSX를 이용하시면 됩니다.



처음 안드로이드 에뮬레이터 글을 쓴게 14년인데 근 3년만에 새로운 글을 올렸네요. 다음에는 N64나 다른 에뮬레이터 이야기도 하고 싶은데 시간이 될지는 잘 모르겠습니다.

,

저번 포스팅에서는 NDS 에뮬레이터에 대해서 포스팅을 했습니다. 우리나라에 NDS가 들어오던 시절에 또 다른 휴대용 게임기가 있었지요. 바로  PSP입니다. 제가 처음 PSP란 놈을 봤을 때가 아마 2000번대였던 것으로 기억합니다. 1000번대가 나오던 시절에는 제 친구들과 주변인 모두 가난한 학생이었고 굳이 PSP를 사야겠다는 생각이 들 정도로 재미있는 게임은 없었습니다. 즉, 견인차 역할을 해주던 메인 타이틀이 없었던 것이지요. 


그러다가 한국에서 견인차 역할을 해준 대중적(?) 게임이 하나 등장하게 됩니다. 그 물건이 바로 DJMAX Portable입니다. 저번 NDS 에뮬레이터 이야기에서 포켓몬스터가 주류로 나왔다면 이번 PSP에서는 이것이 주류로 나올 것입니다. 몬스터 헌터나 페르소나 시리즈도 PSP의 견인차 역할을 하기는 했지만 제가 Djmax portable나오기 이후의 이야기인데다가 제가 처음 PSP란 놈을 본 것도 다 DJMAX Portable시리즈 때문에 PSP를 사 들고 나타난 놈이 있어서 이 게임을 테스트 게임으로 삼아야 할 것 같습니다.


우선 에뮬레이터 이야기 하기 전에 게임기 이야기를 마저 하자면 PSP도 NDS 마냥 지하철 한 칸에 여러 사람이 들고 있지는 않아도 최소한 지하철을 생각 없이 돌아보면 들고 있던 사람이 보이는 그런 수준으로 꽤 많이 팔린 게임기 입니다. DJMAX Portable 출시 이후로는 학생들도 심심찮게 들고 다니는 모습이 많이 보이더군요. 그 뒤에 판매량이 좋아지고 2000번대와 3000번대 등의 신제품들이 나오면서 PSP도 휴대용 게임기로서의 역할을 충실하게 하게 됩니다. 물론 스마트폰들이 등장하면서 NDS와 함께 보기 힘들어진 같은 운명을 걷게 되기는 합니다. 하지만 역시 NDS와 마찬가지로 게임들 자체는 상당히 재미있는 것들이 많아서 인기 있던 게임기라면 통과의례로 겪는 에뮬레이터들이 만들어지게 됩니다. 그러나 구조가 비교적 간단했던 NDS와는 다르게 PSP는 생각보다는 복잡했던 모양입니다. 애초에 기기 성능도 조금 더 높고 게임 데이터 양도 훨씬 더 많아서 그럴 수 있겠다는 생각도 들지만 각종 홈브류(게임기 제작 업체로 부터 인증받아 정식 판매되는 승인된 게임이나 프로그램이 아닌 개인이 만들어낸 게임과 프로그램)들이 개발되는 것과 비교해서 에뮬레이터 개발은 비교적 늦은 편입니다. 그러다 어느날 한 에뮬레이터가 등장하게 됩니다. 그 이름은 Jpcsp입니다.


Jpcsp의 초기 화면 여느 프로그램 마냥 간단한 화면이다. 그런데 일부 라이브러리가 인식이 안 되서 구동하는데 조금 애먹었다.


PPSSPP 이야기 한다면서 갑자기 왜 Jpcsp 이야기냐고 하시는 분이 있을 것 같아서 말씀드립니다. 사실 PPSSPP가 지금의 호환성과 성능을 갖추게 되기 전까지 PSP에뮬레이터는 이 물건이 전부였습니다. 그리고 이 Jpcsp가 갖고 있던 문제는 PPSSPP가 해결하는 수순으로 갔고요. Jpcsp가 없었다면 지금의 PPSSPP가 나왔을 것이란 생각은 하기가 어려울 수도 있습니다. 그리고 다른 PSP에뮬레이터가 있었기는 했지만 이 물건이 가장 호환성이 좋았습니다. 다른 에뮬레이터는 그저 홈브류 개발 및 테스트용으로 만들어져서 홈브류를 구동하는 수준이었습니다. 하지만 Jpcsp는 본격적으로 정식 판매되는 UMD를 지원한는 에뮬레이터였습니다.


그런데 Jpcsp는 초기 단계라서 그런 것인지 문제가 여기저기서 터져나왔습니다. 이를 해결 하기 위해 정말 많은 사람들이 머리를 싸맸습니다. 지금은 Jpcsp의 태생적으로 해결이 안되는 것도 있고 PPSSPP가 해결한 문제도 있습니다.


첫번째 문제는 오디오코덱 문제입니다. PSP는 소니의 코덱기술을 사용하고 있는데 이것이 저작권 및 특허가 걸려있어서 에뮬레이터 개발에 문제가 되는 것이었습니다. 어느 분들은 에뮬레이터인데 그냥 가져다가 쓰면 안 되냐는 사람도 있을 지도 모르겠지만 에뮬레이터는 불법이 아닙니다. 하지만 특허가 걸린 기술을 가져다가 마음대로 사용하면 그 프로그램 자체가 불법으로 낙인 찍힙니다. 아니면 로열티를 내야 하는데 소니가 에뮬레이터의 로열티를 받으면서 허용해 줄 것 같습니까? 그래서 Jpcsp는 한동안 소리없이 에뮬레이터를 작동시켰어야만 했습니다. 이후의 사운드포지(소니가 만든 프로그램입니다.)의 라이브러리를 이용해서 우회하는 방안을 통해 재생시키는 법을 이용했지만 소리는 나와도 거의 누더기마냥 돌아가는 방식이라 가뜩이나 떨어지는 성능에 성능을 더 떨어뜨리는 방법이었습니다. 게다가 리눅스나 MacOSX는 써먹지도 못하는 방식이었고요. 지금도 오디오 코덱은 해결이 안 된 것으로 알려져 있습니다. 그런데 PPSSPP는 우회 리버스 엔지니어링으로 해결했다고 하네요?


두번째 문제는 자바로 만들어진 것입니다. 자바로 만들어서 여러 OS를 한번에 지원해주지만 문제는 자바이기에 속도가 C나 C++로 만들어진것에 비해 상당히 떨어집니다. 이 문제가 아까의 오디오코덱문제와 합쳐져서 엮이면 극악의 성능으로 바뀝니다. 요즘이야 PC성능이 좋아서 이 마저도 씹을 수 있을 정도지만 기기의 최고 성능으로 끌어내야할 게임이란 소프트웨어가 성능이 떨어진다면 문제가 많은 것이지요. 그래서 사람들은 C나 C++로 개발해달라고 아우성이었지만 Jpcsp가 원래 자바로 만든 에뮬레이터라는 뭔가 상당히 Geek스러운 물건이라 굳이 C로 다시 만들 이유야 없었습니다. 잠시 PCSP라는 C++로 만들어진 물건도 나왔지만 이것은 호환성이 너무 떨어져서 그대로 묻혀버렸습니다.

Jpcsp에 비해 빠르지만 호환성이 너무 떨여저서 묻힌 에뮬레이터 PCSP 이마저도 PPSSPP의 등장으로 2012년 이후 업데이트 중단이다.

세번쨰 문제는 오픈소스가 아니라는 것입니다. JAR파일 형태로 배포하기 때문에 만약 개발자가 때려치면 이 에뮬레이터의 수명은 그대로 끝이 나게 됩니다. 에뮬레이터의 특징 상 누군가가 소스를 받아주지 않으면 그냥 사라지는 것입니다. 위의 PCSP도 소스코드에 대한 이야기는 없는 것으로 보아 오픈소스가 아닌 것으로 보입니다. 오픈소스라면 묻히더라도 나중에 누군가가 다시 발굴해서 써먹을 지도 모를 일이고 다른 프로그램에 일부로써 쓸 수도 있습니다. 하지만 에뮬레이터라면 묻힐 일이 거의 없기도 하지요.


이러한 기존 Jpcsp의 문제를 극복하고 해결한 에뮬레이터가 바로 이번에 주인공인 PPSSPP입니다.


PPSSPP의 타이틀화면 다른 에뮬레이터랑 다르게 화려한 편이다. 그리고 오픈소스라는 것을 강조하기 위해 GPL이라 찍혀있는 것이 선명하다.

이 물건은 앞의 Jpcsp와의 차이가 큰 물건입니다. 앞에서 말했던 성능문제를 C/C++로 개발함으로써 해결했고 오디오코덱을 리버스엔지니어링을 통해서 저작권 및 특허를 회피했으며(이는 처음부터가 그랬던 것은 아니고 업데이트 하면서 해결했습니다.) GPL을 적용해서 배포한 오픈소스 프로그램입니다. 한번에 Jpcsp의 문제를 전부 해결했습니다. 이 에뮬레이터가 나오면서 게임을 즐기기위해 Jpcsp를 돌렸던 사람들은 전부 PPSSPP로 넘어왔다고 합니다.Jpcsp는 게임을 즐기기 보다는 자바로 만들어진 것이라는 그 사실이 워낙 특이하고 재미있어서 나온 것이니 Jpcsp가 묻힐 일은 없지만, 대세가 아무래도 PPSSPP로 넘어갔다는 사실은 확실히 와 닿는 것 같습니다.


그리고 PPSSPP가 Jpcsp뿐만아니라 다른 에뮬레이터와 차이를 보이는 것이 하나 더 있는데 그것이 바로 Android버전의 계획입니다. 다른 에뮬레이터는 안드로이드 버전과 PC버전을 다른 프로젝트로 생각하는데 비해(DeSmuME와 nds4droid, PCSX와 PSX4droid, FinalburnAlpha와 aFBA의 관계와 비슷합니다.)PPSSPP는 안드로이드버전도 같은 프로젝트 내에서 개발합니다. 즉, PPSSPP의 PC버전이 0.9.8이면 안드로이드 버전도 동시에 0.9.8로 업데이트 되는 것입니다. DeSmuME의 업데이트 이후 시간이 지난 후에 nds4droid가 업데이트되는 것과는 차이가 납니다. 덕분에 안드로이드에서 PSP게임을 돌릴 수 있게 됨으로써 지하철에서 보기 힘들어진 PSP는 스마트폰에 의해 또 다시 밀리게 됩니다. 그런데 이미 팔릴만큼 팔렸고 더 이상 소프트웨어도 안 나오는 판국에 밀릴 것도 없기는 하지만 PSP용 게임이 다시금 수요가 생길 지도 모른다는 생각이 드네요.(그것이 거래량에 추가 될지는 미지수이기는 합니다.)


그러나 같은 프로젝트 내에서 같이 업데이트되는 안드로이드와 PC버전은 코드가 약간 다른 것인지 소프트웨어 호환면에서 약간 차이를 보입니다. 일부 게임의 경우 PC버전에서는 구동이 잘 되지만 안드로이드에서 구동이 안 된다는 사람들이 많으며 반대로 안드로이드에서는 구동이 잘 되는데 PC에서 안 된다는 게임도 있습니다. 이것이 Arm과 x86의 차이일지 아니면 코드가 다른 것인지는 조금 살펴봐야 알 것 같지만, (일부의 소스코드가 다른 듯 합니다.안드로이드에서 무사히 구동하게 위해 코드 최적화를 하면서 차이가 생긴 듯 합니다.) 오픈소스이니 잦은 업데이트로 해결 할 수 있을 것이라고 믿습니다.


안드로이드와 PC 모두 잘 돌아가는 대표적인 게임 DJMAX Portable 2


PC에서는 잘 돌아가는 반면 안드로이드에서는 돌아가지 않는 DJMAX Portable 3 같은 시리즈지만 구동면에서도 차이가 있다. 2015.5 지금은 안드로이드에서도 무지하게 잘 된다...

안드로이드 버전에서는 써본 결과 터치 인터페이스가 상당히 불편합니다. 원하는 곳으로 이동이 안 될때가 있고 액션 게임의 경우에는 컨트롤 미스로 게임을 던져 버리고 싶을 때도 있더군요. USB-OTG를 지원하는 스마트폰이라면 그냥 조이패드를 붙여서 개임을 하던가 아니면 알아서 적응을 해서 게임을 하는 수밖에는 없을 듯 합니다. 특히 PSP는 워낙 버튼이 많아서 NDS게임을 스마트폰에서 하는 것에 비해 답답한 면이 많습니다.(NDS게임에는 대개 액션보다는 터치 게임이 많은 것도 한몫 합니다.) 이는 PPSSPP의 잘못이 아니기는 하지만 개인적으로 전용 컨트롤러를 하나 만들고 싶게 하는 수준입니다. 일반 조이패드를 끼우고 지하철에서 할 수는 없는 노릇이니까요.


버튼수가 너무 많아서 터치 인터페이스 자체를 거의 덮을 지경. 컨트롤 미스라도 나면 정말 화가 머리끝까지 난다.


하지만 내 학생시절 부러워 했던 PSP를 지금의 스마프폰에서 굴릴 수 있게 된 점은 상당히 마음에 듭니다. 특히 DJMAX Portable시리즈를 입맛만 다시고 제대로 한 적은 없는데(대신 PC버전인 Trilogy는 열심히 했습니다.)이제야 할 수 있게 되었네요. 누군가 그랬습니다."최고의 게임기는 PC"라고 그랬지요. 이제 한 문장 더 추가되어야겠네요. "최고의 휴대용 게임기는 스마트폰입니다."

,

닌텐도DS는 스마트폰 시대 이전의 지하철이나 버스에서 흔히 볼 수 있는 물건 중 하나였습니다. 그 당시 제 기억으로는 이나영와 장동건이라는 걸출한 스타의 CF를 통해서 홍보했던 것으로 기억합니다. 


이 때 정말 NDSL이 어마어마하게 팔려나갔습니다. 아 NDS가 아니라 NDSL이요. 닌텐도코리아를 통해 들어온 닌텐도DS는 NDSL입니다. 닌텐도DS 시리즈는 "휴대용 게임기의 강자는 역시 닌텐도다."라는 인식을 심어주기에는 충분했습니다. PSP가 훨씬 더 성능이 좋고 많은 기능들로 무장했었지만 장동건과 이나영을 앞세운 마케팅효과가 정말 주요했습니다.


하지만 닌텐도DS들은 어느 날 뜻하지 않은 경쟁자를 만나서 거리에서 모습을 감추기 시작합니다. 다름아닌 아이폰을 필두로 한 스마트폰들이 등장하면서 몰락의 길을 걷기 시작합니다. 아니, 이미 NDS와 NDSL, 그리고 NDSi는 수명이 끝나가고 있었다고 봐도 상관없었습니다. 하지만 갑작스럽게 사라졌다는 느낌일까요? 스마트폰들이 NDS시리즈를 밀어냈다는 느낌이 강했습니다. 하지만 NDS는 스마트폰에는 없는 정말 재미있는 게임들이 많았고 지금도 상당히 재미있습니다. 하지만 그렇다고 지금 NDS를 들고 다니는 것은 조금 무거운 느낌이 듭니다. 주머니에 들어가는 스마트폰이 있는데 NDS는 그에 비하면 너무 두껍다는 느낌입니다.


이런 NDS를 스마트폰을 대신 할 수 있게 만든 것이 바로 이번에 소개할 NDS에뮬레이터인 nds4droid와 Drastic입니다. 특히 Drastic은 스마트폰에서의 속도 문제를 해결한 에뮬레이터라 비싼 가격에도 어마어마한 양을 팔았습니다. 한 때 플레이스토어 다운로드 수 1위까지 갔었으니까요. nds4droid는 현재 가장 PC에서 호환성이 좋다는 DeSmuME를 기반으로 만들어져서 호환성 하나는 기막힙니다. 거두절미하고 바로 이야기 해보도록 하지요.


nds4droid는 오픈소스로 만들어진 DeSmuME의 소스코드로 만들어진 에뮬레이터입니다. 사실 이전에 NDS에뮬레이터 중에 no$gba라는 에뮬레이터가 있었습니다만, 업데이트가 워낙 안 되어서 이를 밀어내고 신흥 강자로 우뚝 선 에뮬레이터입니다. NDS게임을 PC에서 하겠다면 DeSmuME로 굴리는 것이 당연한 수준이지요. 호환성도 가장 좋고 속도도 상당히 괜찮습니다. 포켓몬스터 시리즈같이 유명한 게임의 경우에는 별 문제 없이 된다고 봐도 됩니다.


DeSmuME로 포켓몬스터 시리즈 정도는 별 문제없이 잘 돌아간다. 이 에뮬레이터를 안드로이드에 포팅하면? 스크린샷은 포켓몬스터-화이트2


약간 나온지 지난 물건은 필터까지 적용해서 깔끔한 화면으로 충분히 돌릴 수 있는 수준. 스크린샷은 포켓몬스터-하트골드


PC에서도 상당한 호환성을 보유한 에물레이터이고 오픈소스이기까지 한 물건이니 당연하게도 이를 안드로이드에서 돌리기 위한 프로젝트가 시작되었지요. 그리고 이윽고 nds4droid란 이름으로 플레이스토어에 등록됩니다. 사실 NDS에뮬레이터는 이전에도 상당히 많은 수가 플레이 스토어에 등록되었는데 가짜가 반이고 호환성 꽝이 나머지 였습니다. 되기는 되어도 1~2fps나올까말까한 수준이었지요. 그런데 nds4droid는 느리기는 하지만 그래도 15fps는 나와주었습니다. 실기에 비해 상당히 답답하기는 해도 못 할 수준은 아니었다는 것입니다. 포켓몬스터 블랙,화이트 이후 시리즈는 좀 힘들기는 했지만 그래도 그럭저럭 돌아가주며 희망을 보여주었습니다. 무엇보다 오픈소스인것도 한몫했습니다."NDS게임들이 스마트폰에서 돌아갈 날이 얼마 안 남았구나"라면서요. 그렇게 nds4droid를 통해 안드로이드 환경에서 NDS게임을 할 수 있다는 희망을 보게됩니다.


nds4droid로 포켓몬스터 블랙버전을 돌린모습 Nexus7 2011년형으로 돌린 것인데 타이틀에서 12fps이 나온다. 못할 수준은 아니지만 답답한 면은 있다.


nds4droid가 호환성을 확보하고 돌아가는 모습을 보여준 후, 어느 날 갑자기 플레이스토어에 갑작스런 핵폭탄이 떨어지게 됩니다. 그 이름이 바로 Drastic입니다. 6000원이라는 상당한 가격임에도 판매량이 어마어마했고, 별5개가 마구 쏟아지는 그런 어플리케이션이 나온 것입니다. 그 이유가 지금까지의 에뮬레이터의 추종을 불허하는 어마어마한 속도를 보여주었기 때문입니다. 그냥 실기 그대로의 속도를 보여주며 포켓몬스터, 마리오, 젤다같은 NDS게임들을 별 무리없이 돌리는 모습을 보여주었습니다. 심지어 실기와 비교해도 속도 차이가 전혀 나지 않았습니다. 이는 NDS에뮬레이터계의 거의 혁명 수준이었습니다.


Drastic의 타이틀 화면 군더더기없이 깔끔하다.


하지만 속도에서 혁명을 보여준 Drastic은 초기엔 호환성 문제가 많이 터졌습니다. 대표적인 것이 포켓몬스터 블랙/화이트버전에서 갑작스런 백화현상이 일어나는 것이었습니다. 지금은 당연하게도 해결되었지만 이 백화현상을 피하기 위해서 nds4droid로 세이브파일을 옮겨서 백화현상이 일어나는 구간을 지나간 뒤에 다시 Drastic으로 세이브 파일을 옮기는 등의 술수를 이용했습니다. 이외에 제가 직접 겪었던 문제로 날짜가 마구 헝클어지는 문제가 있습니다.(저는 최근

에도 겪었습니다. 7월인데도 배경은 겨울로 인식이 되더군요. 남반구로 인식이 된 것인지 해결이 아직 완벽히 안 된 듯 합니다.)하지만 개발자가 열의를 가지고 개발을 하고 있고, 사람들도 계속 구입 중인 것을 보면, 이런저런 문제는 해결될 듯 합니다.

하지만 Drastic은 큰 문제를 하나 안고 있습니다. 바로 오픈소스가 아니라는 사실입니다. PC에서 no$gba가 대세였다가 몰락 하게 된 이유는 no$gba가 클로즈드소스이면서 업데이트가 끊기는 바람에 오픈소스인 DeSmuME에게 밀린 것입니다. Drastic도 갑자기 업데이트가 끊길 가능성은 충분합니다. 개발자가 만약 업데이트가 어렵다면 오픈소스로 전환 할 수도 있겠지만, 지금의 판매량을 보면 그럴일은 거의 없을 것 같고, 개발자측에서 양심을 믿고 계속 개발해주기를 바래야 합니다. 두번째 문제로 닌텐도의 태클로 플레이스토어에서 추방될 수도 있습니다. NDS이전에 GBA에뮬레이터들이 플레이스토어에서 추방당한 전력이 있기에 이는 가능성이 정말 농후합니다. Tiger에뮬레이터도 당시에 정말 많은 게임기들을 지원했고 상당한 다운로드수(Tiger에뮬레이터들은 무료버전이 있었습니다.)를 보유했지만 그냥 전부 다 퇴출당하고 구글링을 통해서 구할 수밖에 없는 물건이 되었습니다. 오픈소스라면 소스코드가 남아있고 git을 통해 다운로드 받아서 쓸 수 있기 때문에 사라질 염려는 없다고 볼 수 있습니다. 그런데 nds4droid도 아직 플레이스토어에 남아있고 Drastic도 무사히 있는 것을 보면 닌텐도에서도 그냥 NDS시리즈는 포기한 것일지도 모르겠습니다. (한때 대숙청되었던 GBA에뮬레이터도 다시 올라와 있는 것을 보면 닌텐도에서 그냥 태클 걸기를 포기 했을 수도 있습니다.) 하지만 갑자기 닌텐도가 마음이 바뀌어서 언제 구글에 언제 갑자기 태클을 걸지도 모르지요.


nds4droid는 Drastic의 등장으로 갑자기 위축되었다는 느낌이 들지만 반대로 Drastic으로 인해 nds4droid의 성능을 향상 시킬 수있는 가능성을 발견 한 듯한 느낌이 듭니다. 사실 Drastic이 발전하는 것은 발전하는 것이지만 nds4droid가 발전하는 것이 사용자들에게는 더욱 좋습니다. 일단 무료인데다가 오픈소스라서 플레이스토어에서 사라져도 구하기가 쉽거든요. 개인적으로는 nds4droid를 응원하고 있습니다만, Drastic이 너무 좋아서 계속 Drastic을 이용하게 되네요.


이상으로 Drastic과 nds4droid에 대해 알아보았습니다. 사용방법이야 굳이 따로 알려주지 않아도 될 것이라고 믿고 단순한 고찰만 했습니다. 어차피 플레이스토어에도 나와있고 도움말만 읽어봐도 다 나와있으니 그대로 하시면 되니까요. 이 에뮬레이터 이야기 시리즈는 그냥 에뮬레이터에 대한 역사(?)와 고찰에 대해서만 이야기 하도록 하겠습니다. 다른 블로그에만 가도 자세히 나와있는데 제가 굳이 알려드릴 이유는 없을 것 같으니까요.


다음 이야기는 PSP에뮬레이터 PPSSPP에 대한 이야기를 해보겠습니다.

,

1. aFBA

소스코드 : https://github.com/Cpasjuste/libafba

바이너리 : http://android.mydedibox.fr/afba/aFBA.apk

aFBA는 여러 안드로이드 아케이드 에뮬레이터 중에서도 Tiger Arcade나 다른 아케이드 에뮬레이터를 제치고 가장 최적화된 에뮬레이터로 꼽히는 에뮬레이터입니다.

사실 아케이드 에뮬레이터의 본좌는 Mame입니다. 하지만 안드로이드용 mame는 속도가 아직까지는 별로더군요. Mamedroid 외에더 mamedroid reloaded란 것도 나왔지만 롬 호환성만 좋아졌을뿐 aFBA에 비하면 그렇게 성능이 좋지 못합니다. aFBA는 아케이드 에뮬레이터 중에서 Final Burn이란 에뮬레이터를 기반으로 하는데 cps1,2 pgm, neogeo같이 그럭저럭 잔뼈 굵은(pgm이 메이저 급이었던가요?)기판은 지원하지만 마이너한 기판은 가차없이 미지원입니다. 이를 기반으로 했기에 aFBA도 마찬가지로 일부 메이저 기판만 지원합니다. 하지만 성능은 우월합니다. 넥서스원에서도 메탈슬러그3를 무사히 돌려서 게임이 가능했으니까요. MetalSlug3가 오래된 게임이기는 하지만 Mamedroid에서는 게임플레이가 도저히 못해 먹을 수준이었지만 aFBA는 아주 훌륭했습니다.

 TigerArcade와의 비교에도 aFBA가 압승이더군요. 지원기판수도 비슷한데다가 타이거 에뮬레이터는 구하기도 어려운편이라 그냥 이렇게 사장되어가는 분위기입니다. 심지어 aFBA는 오픈소스라 사라질 염려도 없습니다. 한때 나마 유료로 판매했던 neoDroid도 이거에 밀리더군요. 아마도 aFBA는 소스코드가 있는한 계속적인 업데이트도 가능하리라 보는데 최근 업데이트가 없는듯 합니다. 그도그럴것이 cps나 네오지오나 새로운 게임은 나오지도 않는데다가 킷캣에서도 민망할정도로 잘 돌아가고 있어서 커밋할 필요성을 못느껴서 그런듯합니다. 롬셋이 급변하지 않는이상 12년 버전인 1.6이 장수할 것 같네요. 

전체적인 인터페이스도 다른 에뮬레이터에 비하면 환상적입니다. 너무깔끔해서 에뮬레이터가 아니라 어느 웹페이질 보는 듯합니다. Tiger시리즈가 투박한 인터페이스를 자랑한거에 비하면 거의 깔끔하게잘 만들었습니다.


만약 속도가 느리다면 게임내에서 한번 뒤로를 누른 다음 위쪽 도구 상자중에서 두 번째 버튼을 터치 그리고 none을 고르시면 확실히 성능이 나아짐을 보입니다. 사실 이것은 브라운관 느낌이 나도록 하는 필터가 작동하면 서 생긴 일종의 프레임 하락인데 게임하면서 굳이 필요없는 필터를 제외함으로써 프레임의 이득을 보고자 하는 것입니다. 필터가 빠짐으로써 게임이 약간 깨끗해 보이는 효과도 얻을 수 있습니다. 만약 원한다면 더 깔끔하게 보이게 하는 필터를 적용해도 좋습니다. 다만, 이때는 성능이 좀 좋아야 히겠지요.


지원게임은 MAME가 지원하는 게임이면 됩니다. 다만, 기판이 CPS1,2 NeoGeo, PGM 그리고 이들보다 이전의 물건인 경우 정도만 가능합니다. Finalburn지원 리스트를 보시는 것이 더 빠르겠군요.





다음 포스팅에는 포켓몬스터 6세대를 스마트폰으로 가능 하게한 drastic과 nds4droid에 대한 포스팅을 해보도록 하겠습니다.

,