EmulationStation 및 AttractMode 초기 설정

요즘 라즈베리파이를 사용하여 에뮬게임을 즐기고 있는데요.
저는 Retroarch(에뮬레이터) 기반으로 ES(Emulation Station, 프론트엔드) 또는 AM(Attract mode, 프론트엔드)를 사용하고 있습니다.
여기서 프론트엔드란 쉬운(또는 화려한) UI를 통해 에뮬레이터와 게임롬을 연결하여 구동시켜주는 프로그램입니다.
PC에서는 하이퍼스핀이 유명하죠.

국내에서를 라즈겜동( http://cafe.naver.com/raspigamer )과 같은 카페 등에서 라즈베리파이용 이미지들이 배포되고 있으며,
해외에서는 Arcade Punks ( https://arcadepunks.com ) 가 유명합니다.

이러한 라즈베리파이용 이미지들을 다운 받은 후
micro SD를 SD Card Formatter로 포멧 후 Win32DiskImager를 사용하여 이미지를 write할 수 있습니다.
이미지를 write 후에 라즈베리파이로 실행 시킨 후에 제 환경에 맞춰 세팅하고 있습니다.

아래 내용은 제 게임환경에 맞춰 설정하는 내용입니다.

[파티션 확장]
    $ sudo raspi-config -> 7 Advanced Options -> A1 Expand Filesystem

[오디오 선택 #1]
    $ sudo raspi-config -> 7 Advanced Options -> A4 Audio

[오디오 선택 #2]
    3.5파이 : sudo amixer cset numid=3 1
    hdmi : sudo amixer cset numid=3 2
    hdmi 및 3.5파이 양쪽 : sudo amixer cset numid=3 0
    테스트 : aplay /usr/share/sounds/alsa/Front_Right.wav

[비밀번호 변경]
    $ sudo passwd pi
    $ sudo passwd root

[root 원격 로그인]
    $ sudo vi /etc/ssh/sshd_config
    PermitRootLogin yes

[게임목록 소유 변경]
    $ sudo chown pi:pi $(find /home/pi/RetroPie/roms -name gamelist.xml)

[환경설정]
    $ sudo apt-get install vim
    $ vi .profile (pi, root 계정)
    alias ll='ls -alF'
    alias vi='vim $*'
    alias h='history'
    export PS1="[\[\e[36;1m\]\u@\[\e[32;1m\]\h:\[\e[31;1m\]\$PWD\[\e[0m\]]\\$ "
    $ source .profile

[vim 설정]
    $ vi ~/.vimrc
    set number                        " line 표시를 해줍니다.
    set ai                            " auto indent
    set si                            " smart indent
    set cindent                       " c style indent
    set shiftwidth=4                  " shift를 4칸으로 ( >, >>, <, << 등의 명령어)
    set tabstop=4                     " tab을 4칸으로
    set ignorecase                    " 검색시 대소문자 구별하지않음
    set hlsearch                      " 검색시 하이라이트(색상 강조)
    set expandtab                     " tab 대신 띄어쓰기로
    set background=dark               " 검정배경을 사용할 때, (이 색상에 맞춰 문법 하이라이트 색상이 달라집니다.)
    set nocompatible                  " 방향키로 이동가능
    set fileencodings=utf-8,euc-kr    " 파일인코딩 형식 지정
    set bs=indent,eol,start           " backspace 키 사용 가능
    set history=1000                  " 명령어에 대한 히스토리를 1000개까지
    set ruler                         " 상태표시줄에 커서의 위치 표시
    set nobackup                      " 백업파일을 만들지 않음
    set title                         " 제목을 표시
    set showmatch                     " 매칭되는 괄호를 보여줌
    set nowrap                        " 자동 줄바꿈 하지 않음
    set wmnu                          " tab 자동완성시 가능한 목록을 보여줌
    syntax on                         " 문법 하이라이트 킴

[키보드 변경]
    $ sudo vi /etc/default/keyboard
    XKBLAYOUT="us"   --> 영국에서 미국으로 변경

[제로쿨 한방 스크립트]
    $ git clone https://github.com/ipromiseyou/RetroPie-AutoSet.git
    $ cd RetroPie-AutoSet
    $ chmod 755 *.sh
    $ sudo ./04.RootLogin.sh 
    $ sudo ./05.Network_Wait_Disable.sh 
    $ sudo ./06.TimeZone.sh 
    $ sudo ./09.GPIO.sh 

[해상도 변경]
    $ sudo vi /boot/config.txt
    #hdmi_force_hotplug=1
    #hdmi_drive=2
    hdmi_group=1
    hdmi_mode=16   --> 4:3 / 1024x768 / https://elinux.org/RPiconfig

[드림캐스트 키 설정]
    레트로파이 설정 -> [P] Manage packages -> [opt] Manage optional packages -> 
    [138] reicast -> [C] Configuration / Options -> [1] Configure input defives for Reicast

[드림캐스트 해상도]
    $ vi /home/pi/.reicast/emu.cfg
    height = 800
    width = 1280

[키설정]
    emulation station (start 진입)
        [Y] [X] [LS]
        [B] [A] [RS]

        [LT] [Y] [X] [LS]
        [RT] [B] [A] [RS]

    attract mode (tab 진입)
        ⓢ ⓗexit
        [LT] [Y]favourite  [X]randomGame   [LS]nextFilter
        [RT] [B]back       [A]select       [RS]filterMenu

    dreamcast 
        [X] [Y] [LT]
        [A] [B] [RT]

[Mame 설정]
    tab > input(general) > User Interface
        config menu : tab
        UI up/down/left/right : 키보드 방향키, 스틱 방향키
        UI Select : 키보드 Enter, A버튼
        UI Cancel : 키보드 ESC, Select+Start버튼

    tab > input(general) > Player 1 Controls
        P1 Up/Down/Left/Right : 키보드 방향키, 스틱 방향키
        P1 Button 
        ⓨ⑷ ⓧ⑸ ⓛ⑹
        ⓑ⑴ ⓐ⑵ ⓡ⑶

    tab > input(general) > Other Controls
        1 Player Start : 1, 1P의 Start버튼
        2 Player Start : 2, 2P의 Start버튼
        Coin 1 : 5, 1P의 Select버튼
        Coin 2 : 6, 2P의 Select버튼

[개인용 파이썬 환경 #1]
    $ sudo apt-get install python3-pip
    $ sudo pip3 install --upgrade pip
    $ sudo apt-get install rpi.gpio
    $ sudo apt-get install python3-pygame
    $ sudo pip3 install keyboard
    $ vi /opt/retropie/configs/all/autostart.sh
    sudo /usr/bin/python /home/pi/kimstar/coinMachine.py &
    sudo /usr/bin/python3 /home/pi/kimstar/exitByStartButton.py &

[개인용 파이썬 환경 #2]
    $ sudo apt-get install rpi.gpio
    $ mkdir /home/pi/kimstar
    $ vi /home/pi/kimstar/pishutdown.py --> http://kimstar.kr/7826/
    $ vi /lib/systemd/system/pishutdown.service
    [Unit]
    Description=RetroPie-Shutdown Service
    After=multi-user.target
    
    [Service]
    Type=idle
    ExecStart=/usr/bin/python /home/pi/kimstar/pishutdown.py
    
    [Install]
    WantedBy=multi-user.target
    $ sudo systemctl enable pishutdown.service

[vim 팁]
    - 코드 붙여넣기 :set paste
    - ^M 제거 :%s/\r//g

 

 

Notice

  • 이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-변경금지 2.0 대한민국 라이선스에 따라 이용할 수 있습니다. 크리에이티브 커먼즈 라이선스
  • 저작권과 관련된 파일요청 및 작업요청을 받지 않습니다.
  • 댓글에 대한 답변은 늦을 수도 있습니다.
  • 2 댓글

      • kimstar 글쓴이응답

        누구 댓글인가 한참 생각했네..
        이메일 도메인 보고 알았잖아.. ㅎㅎ
        나야 뭐.. 잘 살고 있어. ^^

    답글 남기기

    이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다