Just a Blog

[MiSTer FPGA] MiSTer 프로젝트 - DE-10 Nano 보드만 사용한 소감 본문

Game

[MiSTer FPGA] MiSTer 프로젝트 - DE-10 Nano 보드만 사용한 소감

wehong 2020. 3. 8. 19:13

* I/O 보드, SDRAM 모듈, USB 허브 장착

* 초기 사용 소감

 

 

1. 구매 동기

작년 말 또는 올해 초 MVS 클론인 CBox 하드웨어에 대한 관심이 생겼는데, 설날 즈음에 갑자기 CBox 보다 MiSTer 프로젝트를 이용하면 어떨가하는 생각이 들어 갑작스럽게 주문을 넣었다. MiSTer 프로젝트에 대한 내용은, 각종 레트로 게이밍 사이트에 많이 소개되어 대략적으로 알고 있었던 터였다.

주문 후 다른 경위로 RetroUSB의 AVS 기기에 관심이 생기기도 했는데, MiSTer 프로젝트의 FPGA 기반 NES 환경을 경험해 보고 AVS 구매를 생각해 봐도 괜찮겠다는 생각이 들기도 했다.

 

 

2. 현재 진행 상태

DE-10 Nano는 아마존에서 구매하고 I/O 보드, SDRAM 모듈, 케이스 등은 MisterAddons 사이트에서 구매했다. 아마존 배송은 해외 배송 중 빠른 편에 속해 금새 받았는데, MisterAddons에서 구매한 다른 것들은 거의 한 달 동안 백오더(backorder) 상태에서 대기(on hold)로 변하면서 계속 지체되었다. 이메일로 문의 결과 중국에서 생산하는 케이스 부품이 코로나 바이러스 사태로 인해 지연되고 있다고 했고, 결국 MisterAddons 측에서 '케이스 빼고 주문 변경해서 보내 줄까?'라고 묻기에 그러자고 했다. 그래도 Priority Mail로 배송했음에도 계속 늦어지고 있으며, 결국 DE-10 Nano 만으로 일부 코어만 테스트 해 보았다.

 

 

 

3. DE-10 Nano 보드만으로 가능한 코어들

DE-10 Nano 보드만 사용하는 코어는 결국 SDRAM을 사용하지 않는 코어가 된다. 게임 콘솔 코어 중에는 Genesis(메가 드라이브)와 TurboGrafx-16(PC엔진)이 있으며, 레트로 컴퓨터 중에는 Apple II+가 있고, 현재 공개된 대부분의 아케이드 코어도 구동 가능하다.

 

 

 

4. 코어 별 사용 소감

 

 

(1) TurboGrafx-16 코어

Super Nt, Mega Sg를 개발한 Analogue사도 PC엔진/TurboGrafx-16 용 기기를 출시하지는 않았기에 반가웠고, 특히 DE-10 Nano 보드 만으로 구동이 되기에 더욱 더 반가웠다.

사용자들에게는 반가운 소식과 아쉬운 소식이 있다. 반가운 소식은 코어가 SuperGrafx 게임까지 구동할 수 있다는 것이고, 안타까운 소식은 이 글을 작성하고 있는 시점에서 CD-ROM 게임을 구동하지 못하고 오직 HuCARD 게임만 구동하다는 점이다. 현재까지 FPGA 기반으로 PC엔진을 복각한 제품이 출시된 적이 없고 SuperGrafx 중고 실기가 현재 30만원이 넘는 가격에 거래됨을 고려하면, DE-10 Nano 보드에 TurboGrafx-16 코어를 사용하는 것 만으로도 장점이 될 수 있겠다 싶다.
이 코어의 느낌을 알아보기 위해 PC엔진 실기와 라즈베리파이 기반의 리콜박스에서 동일 게임을 구동해 보았는데, 사실 큰 차이를 느끼지는 못했다. 컨트롤에서 조금 답답함이 느껴져서 DE-10 Nano 쪽 Linux의 USB polling 주기를 1,000Hz로 변경했다.

 

(2) Genesis 코어

DE-10 Nano 만으로 구동할 수있는 메이저 게임 콘솔 코어이지만, Mega Sg 사용자이기에 사실 크게 관심이 없었다. 시험삼아 구동해 보니 역시 Mega Sg에서의 구동과 큰 차이를 느끼지 못했다.

솔직히 이쪽도 라즈베리파이 기반의 리콜박스에서의 구동과 큰 차이를 느끼기는 어려웠지만, 매우 주관적이지만 의견으로 FPGA 구현물들(MiSTer, Mega Sg) 쪽이 조금 더 경쾌하게 컨트롤 되는 것 같기는 했다. 실기는 구석에 처박아 놓아서 일부러 꺼내 구동하는 않았다.

 

(3) Apple II+ 코어

Apple II의 팬으로서 매우 반가운 코어다. 많은 사람들에게 아쉽겠지만 IIe가 아닌 II+로 구현되어 있다.

디스크 이미지는 NIB, DSK, DO 등 다양한 포맷을 지원하지만, 구동이 잘 안될 때는 이미지의 확장자를 바꾸어 보라고 권고하고 있다.

Apple II의 컨트롤러는 아날로그 기반 입력을 받는데 XBox One 컨트롤러의 아날로그 스틱으로 컨트롤을 해 보려고 했지만 잘 안되었다.

 

(4) 아케이드 코어 (그린베레, 마계촌, 제비우스, 닌자군)

현재 공개되어 있는 아케이드 코어들을 보니, 80년대 말 정도의 구형 아케이드 게임들이 코어로 개발되고 있는 것 같다. 기판에서 점퍼로 하는 여러 설정을 그대로 옮겨 온 것은 신선했다.

MAME 롬을 사용해야 하는데, 기존에는 롬 파일을 가지고 변환 스크립트를 돌려 세트를 만들었다면 최근에는 MRA라는 파일을 통해 코어와 롬 파일을 그대로 사용하는 방법으로 변경된 것 같다.

 

5. 전체 소감

아무 것도 모르는 상태에서, 개념을 익히고 이런 저런 설정을 하는데 꽤 많은 노력과 시간이 들었다. 오픈 소스 프로젝트이므로 바로 실행해 볼 수 있는 것은 별로 없는데, 그건 나쁘지는 않았다.

MiSTer 프로젝트에 의구심을 가졌던 것 중 하나는 입력 장치 인터페이스로 USB 인터페이스를 사용한다는 점이었다. 관련 기기 구매 전 구매를 망설이게 한 부분이기도 하다. 'hardware accuracy'를 우선시 하는 프로젝트 입장에서 실제 인터페이스 보다는 지연이 더 클 수 밖에 없는 USB를 채택했다는 점이 잘 이해가 가지 않았다.  더구나 라즈베리파이 기반의 소프트웨어 에뮬레이션 환경에서도 입력 지연(input lag)을 염려하여 USB 인터페이스 대신 GPIO 인터페이스의 컨트롤러를 사용하는 사용자도 있기에 의구심이 컸다. 물론 현재까지는 생각보다는 차이를 크게 느끼지는 못하겠는데, 아무래도 고유의 입력 보다 지연이 없을 수는 없지 않겠나 싶다.

실기와 FPGA 기반 복각, 그리고 소프트웨어 에뮬레이션 간에 얼마나 차이가 나고 각각 어떤 의미가 있는지도 여전히 의문이다. 어떤 때에는 3가지가 모두 비슷한 것 같고, 어떤 때에는 미묘한 차이가 있는 것 같았다. 

Comments