2017-04-14

NEW 3DS에서 레트로아크 실행기

레트로아크(RetroArch)는 거의 모든 종류의 과거 게임을 실행할 수 있는 에뮬레이터다. 윈도우즈, 안드로이드, 리눅스, OS X 등은 물론이고, 각종 게임기 플랫폼에서도 돌아간다.
다만 3DS, PSP, XBOX, Wii 같은 게임기에서 레트로아크를 돌리려면, 해킹이 필요하다. 에뮬레이터는 게임기들이 인식하는 공식 프로그램이 아니기에 그렇다.
복잡한 절차를 거쳐 해킹된 NEW 3DS LL에 레트로아크를 깔아보았다.

■3DS에서 레트로아크 설치법
www.retroarch.com에 가서 DOWNLOADS를 누르면 레트로아크가 기종별 버전으로 올라가 있다. stable 폴더에 있는 건 정식 버전이고, nightly 폴더에 있는 건 베타 버전이다. nightly 버전이 더 최신이기 때문에 나는 nightly 버전을 골랐다.
3DS용은 nintendo/3ds 폴더에 있다. RetroArch_3dsx.7z와 RetroArch_3dsx.cia.7z가 있는데, 3dsx는 3dsx 홈브류 툴에서 실행하도록 된 파일이고, cia는 FBI를 통해 코어별로 각각 설치하게 만든 파일이다. 편의상 난 cia 파일을 내려받았다.

압축을 풀면 cia 폴더와 retroarch 폴더가 있다. cia 폴더에서 필요한 에뮬 코어 파일만 골라서 해킹된 3DS의 Micro SD카드에 있는 cias 폴더에 넣는다. retroarch 폴더는 Micro SD카드 루트에 그대로 복사하면 된다. 각종 설정 파일과 세이브 파일이 retroarch의 하위 폴더로 저장된다. cia 에뮬 코어 파일들은 3DS에서 FBI를 실행시켜 각각 설치하면 된다.

genesis_plus_gx_libretro 메가드라이브, 메가CD, 세가마크3, 게임기어, SG-1000
mame2003_libretro 과거 오락실 게임
mednafen_ngp_libretro 네오지오 포켓
mednafen_pce_fast_libretro PC엔진 휴카드, PC엔진CD
mednafen_wswan_libretro 원더스완
nestopia_libretro 패미컴
pcsx_rearmed_libretro 플레이스테이션1
snes9x2010_libretro 슈퍼패미컴
gpsp_libretro 게임보이 어드벤스드

난 위의 에뮬 코어를 골라서 설치했다. MSX나 DOSBOX 게임도 끌리긴 했는데, 화면이 작은 3DS에는 키보드 입력 문제 등으로 불편할 것 같아 이번엔 안 깔았다.

그리고 Micro SD카드에 에뮬 게임 롬파일들을 넣어준다. 롬파일들은 한 폴더를 만들어서 그 안에 게임기별로 분류하는 게 좋다. 내 경우는 루트에 EMULROM 폴더를 만든 뒤 그 아래에 FC, SFC, PCE... 등으로 분류했다. 그런 다음 에뮬 설정의 디렉토리 항목에서 EMULROM을 지정해주면 롬파일 실행할 때 찾는 시간을 줄여준다.


에뮬 코어 cia 파일들을 깔면 게임기 에뮬별로 아이콘이 만들어지는데, 각각 따로 노는 것 같아도 설정 파일은 Micro SD카드의 retroarch의 하위 폴더에 저장된다. 그래서 한 에뮬 코어에서 공통 설정을 바꾸면 다른 에뮬 코어에서도 동일하게 바뀐다.

■에뮬 코어별 소감
패미컴

3DS에서 되는 패미컴 에뮬 코어는 nestopia와 fceumm 두 가지다. nestopia는 PC에서도 주력으로 쓰고 있는 에뮬이고, 정확도면에서도 fceumm를 앞서서 당연히 nestopia를 골랐다. 다만 몇몇 해적판 게임들은 fceumm에서 구동력이 더 좋다고 한다. nestopia는 패미컴 디스크 게임도 지원한다. 그러려면 Micro SD카드의 retroarch/cores/system 폴더에 디스크 바이오스(disksys.rom)를 넣어줘야 한다.
8비트 게임기이니 쌩쌩 잘 돌아간다.

슈퍼패미컴

snes9x2010으로 잘 돌아가는데 지웠다. SNES9X 3DS라는 에뮬이 따로 있기 때문이다. 성능은 비슷하지만, 편의성에서 SNES9X 3DS가 더 낫다.

PC엔진

휴카드 게임은 잘 돌아간다. 원래 mednafen_pce_fast는 정확도가 좋다는 평이다. CD게임들은 바이오스를 어디에 넣어야 하는지 몰라서 처음엔 실행을 못 했다. 패미컴 디스크 바이오스와 마찬가지로 retroarch/cores/system 폴더에 PC엔진 CD 바이오스인 system3.pce 파일을 넣으면 된다.


다만 파일이 iso+MP3(wav) 조합은 실행이 잘 안 되고, cue+iso, cue+bin 조합이 실행이 잘 된다.

메가드라이브, 메가CD, 세가마크3, 게임기어, SG-1000

잘 된다. Genesis Plus GX는 평이 좋은 에뮬이다. 메가드라이브 게임뿐 아니라 세가마크3, SG-1000, 게임기어도 돌아간다. 메가드라이브 32X 게임은 안 돌아간다. 메가CD 게임은 PC엔진CD와 마찬가지로 바이오스(bios_cd_j.bin) 넣어주고 파일 조합도 신경써야 한다. 게임기어 게임을 해봤는데, 강제 세이브 저장&로드할 때 시간이 3초 이상 걸린다. SD카드 저장 속도 문제인지 모르겠지만, 액션 게임에선 문제가 될 수도 있겠다.

원더스완 & 네오지오 포켓

특별히 할 말이 없을 정도로 잘 된다. 원더스완은 안드로이드나 PC에서 다른 에뮬로 돌릴 때 편의성이나 음질에서 다소 불만족스러웠는데, 레트로아크는 그보다는 나아 보인다. 다만 두 게임기 모두 재미있는 게임이 그리 많지는 않다.

플레이스테이션1
pcsx_rearmed_libretro인데 바이오스가 필요하다. 돌아가긴 돌아가는데, 느리다. New 3DS 성능이 딸려서 그런 건지 에뮬 성능이 딸려서 그런 건지 모르겠다. 이 속도라면 그냥 안드로이드나 PC 에뮬로 하는 게 낫겠다.

게임보이 어드밴스

gpsp_libretro로 돌린다. 많은 게임을 해보진 않았지만, 무난하게 돌아가는 편. 바이오스가 필요하다. 게임보이 어드밴스 게임만 돌아간다. 게임보이 게임은 gambatte_libretro로 돌릴 수 있는데, 난 다른 에뮬로 깔았다.

MAME 오락실 게임
mame2003_libretro로 돌아간다. 주의할 점은 롬파일 버전이 0.78 버전이어야 한다는 점. 최신 mame 코어도 있을 텐데 3DS용은 조금 옛날 버전이다. 게임에 따라 잘 돌아가는 것도 있지만, 느리거나 음악이 끊기는 것도 있다. 잘 되는 게임만 선별해서 한다.


PC엔진CD와 메가CD 게임이 돌아간다는 걸 알고 내 3DS에 게임을 마구 집어넣었는데, 게임 불감증에 빠지기 딱 좋은 것 같다. 많이 집어넣어봐야 동시에 할 수 있는 것도 아니지 않는가. 게다가 굳이 PC와 연결된 대형TV 놔두고 3DS의 작은 화면으로 눈 아프게 할 필요가 있을까 하는 생각이 이제 와서 든다. PC엔진이나 메가드라이브 게임이 원래 휴대용에 맞춘 게 아니었기 때문에 더 그렇다.
게임 플레이보다는 그냥 3DS에서 에뮬을 돌릴 수 있다는 데 만족하는 게 아닌가 싶다. ㅋ

댓글 4개:

  1. an exception occurred 이오류 떠요ㅜ

    답글삭제
  2. 네오지오를 실행시키고 싶은데 에뮬레이터만 자꾸 깔게되네요 혹시 사용방법에 대해 알수있나요?

    답글삭제
  3. 바이오스는 어디서 구하나요?

    답글삭제
    답글
    1. https://archive.org/details/OpenEmuBIOSPack

      삭제