본문 바로가기
비디오 게임 관련

재미로 알아보는 EmuELEC 구동 원리

by DsNo 2020. 4. 13.
728x90

(위 스샷은 클릭하시면 원본 해상도로 보실 수 있습니다.)

 

안녕하세요.

 

EmuELEC 뿐 아니라 RetroPie, batocera, Retro Arena 같은 에뮬레이션스테이션과 레트로아크

기반의 종합 에뮬머신들이 거의 다 해당하는 사항입니다.

 

저도 100% 이해하는것은 아니지만 대략적인 구동 원리와 하고 싶었던 잡담을 적어볼까 합니다.

 

제가 처음으로 리눅스 종합 에뮬 머신을 접해본것은 라즈베리 파이 2 가 나왔을 당시

네이버 구닥동에서 매직파이라는 것이 나왔을때 입니다.

당시에 서울에서 열렸던 레트로 장터에 구경하러 갔다가 매직파이 한대와 추가 3대의 스틱을

연결해서 던전스 & 드래곤스 2 를 시연하면서 매직파이를 현장에서 판매하고 있었을때

너무나 신기해서 한대 구입해서 가져온게 시작이었습니다.

 

그것을 인연으로 이후 리눅스를 통한 종합 에뮬 게임기에 관심을 쭈욱 이어오다가 이후

안드로이드 TV 박스와 오드로이드 시리즈, 라즈베리 파이 4 까지 만져보게 되었습니다.

 

에뮬레이션스테이션이나 레트로아크는 프론트엔드로써 에뮬레이터 코어와 롬 파일의

구동을 좀 더 편리하게 구동하기 위해 개발되었는데 점점 더 발전하면서 유저들에게

더 보기 좋은 시각적인 구성과 편리함을 지원해주고 있습니다.

 

그 중에서도 에뮬레이션스테이션은 테마를 통해 더욱 더 시각적인 효과를 표현할 수 있는데

제작하는 유저의 역량에 따라 그 차이가 엄청납니다.

 

레트로아크 역시 시각적인 효과를 줄 수 있지만 에뮬레이션스테이션 만큼은 아닙니다.

다만 다양한 에뮬레이터를 연결하여 에뮬 게임을 구동 가능하게 해주는 기능 만큼은

현재 최고라고 칭할 수 있습니다.

 

리눅스 계열에 레트로아크가 있다면 PC 쪽은 하이퍼스핀이나 어트랙트 모드가 있습니다.

 

이제부터 EmuELEC 의 대략적인 구동 과정을 설명해 보겠습니다.

 

리눅스 커널을 통해 부팅을 하여 기본적인 설정을 실행함과 동시에 에뮬레이션스테이션을

구동합니다. 이 과정에서 미리 설정해둔 다양한 서비스들이 실행됩니다.

 

마치 윈도우의 서비스와 같은 동작으로 말이죠.

 

윈도우와는 다르게 최소한의 서비스로 작동하기 때문에 사양이 그리 높지않고 부팅시간도

오래 걸리지 않습니다. microSD 메몰에서 작동하는데도 10~15초 정도로 아주 짧습니다.

 

에뮬레이션스테이션이 실행되면 미리 설정해둔 테마를 통해 화면에 뛰어난 시각적 효과로

다양한 메뉴들을 이용할 수 있습니다. 에뮬레이션스테이션은 유저가 지정해둔 gamelist.xml

파일을 통해서 게임 목록 및 롬 파일의 경로와 같은 정보를 가지고 있으며 지정해둔

이미지나 동영상을 화면에 표시를 해줄수도 있고 전반적인 게임 정보를 지정해서 보기좋게

표시할 수도 있습니다.

 

에뮬레이션스테이션이 지정한 코어 정보와 롬 파일의 경로 및 이름을 레트로아크나

스탠드얼론 에뮬레이터로 전송해주면 비로소 에뮬 게임이 시작됩니다.

 

레트로아크 기반의 에뮬레이터 코어에는 반드시 _libretro 라는 이름이 반드시

붙습니다. 이것은 레트로아크를 통해 구동되는 코어라는 표시이기도 합니다.

 

반대로 스탠드얼론으로 동작하는 에뮬레이터 코어에는 붙지 않습니다.

 

레트로아크 기반으로 구동하는 에뮬레이터 코어는 레트로아크에서 아주 세세한 설정이

가능하게 됩니다. 예를들어 화면 비율, 구동하는 비디오, 사운드 드라이버나 컨트롤러

설정과 같은 수 많은 기능들이 있습니다.

 

오히려 너무 많아서 다뤄보지 못하신분들은 어디를 손대야 할지 모를 정도로 말이죠...

대충 구동 방식은 이러합니다.

 

많은 분들이 아시는 월광보합이라고 불리는 에뮬 게임기도 똑같은 방식으로 작동합니다.

 

한줄 요약 : 리눅스 커널 부팅 -> 에뮬레이션스테이션 실행 -> 에뮬레이터 게임 실행