물리 게임패드
DOSGamePlayer는 블루투스와 USB 게임패드를 자동 감지합니다. 하나 연결하면 화면을 만지지 않고 플레이할 수 있습니다.

게임패드 연결
블루투스
- 게임패드를 페어링 모드로 들어가게 합니다.
- 폰의 설정 → 블루투스 를 엽니다.
- 검색 목록에서 게임패드를 선택합니다.
- 페어링.
페어링 후에는 다음에 게임패드가 켜질 때 자동 재연결됩니다. DOSGamePlayer는 연결 즉시 인식.
USB (OTG)
- USB-OTG 케이블로 게임패드를 폰에 연결 (또는 폰이 USB-C이고 패드가 USB-C면 직접).
- 폰에 USB 장치 알림이 표시됩니다.
- DOSGamePlayer는 즉시 패드를 인식.
테스트된 게임패드
DOSGamePlayer는 Android InputDevice API를 따르므로 HID 클래스 컨트롤러는 모두 동작. 확인된 것:
- Xbox One / Series 컨트롤러 (블루투스/USB)
- 플레이스테이션 4/5 DualShock / DualSense (블루투스)
- 닌텐도 스위치 프로 컨트롤러 (블루투스)
- 대부분의 범용 USB 패드
- 8BitDo SN30 Pro, SF30, M30 등
화면 오버레이 자동 숨김
게임패드가 연결되면 가상 오버레이가 자동 숨김 으로 화면 공간을 확보할 수 있습니다. Settings → Input Controls 에서 토글.
기본 매핑
DOSGamePlayer는 시스템별 합리적인 기본 매핑을 제공:
| 시스템 | D-pad / 왼쪽 스틱 | A | B | X | Y | 숄더 |
|---|---|---|---|---|---|---|
| NES | D-pad | A | B | — | — | — |
| SNES | D-pad | A | B | X | Y | L / R |
| 메가 드라이브 | D-pad | A | B | C | — | — |
| PSX | D-pad + 스틱 | × | ○ | □ | △ | L1/R1 + L2/R2 |
| N64 | D-pad + 스틱 | A | B | — | — | L / R / Z |
| NDS | D-pad + 스타일러스 | A | B | X | Y | L / R |
| 아케이드 | D-pad | A | B | C | D | — |
기본값은 가능한 한 컨트롤러의 물리 라벨과 일치하지만, 패드가 맞지 않으면(예: 스위치 프로는 A/B 반전) 재매핑할 수 있습니다 (아래 참고).
커스텀 버튼 매핑
게임별 조정:
- 게임의 게임 상세 페이지 → Configure Input 열기.
- Input Devices 화면이 연결된 게임패드와 각 물리 버튼을 표시.
- 버튼을 눌러 테스트 — 바가 현재 매핑된 시스템 버튼을 강조.
- Edit Binding 으로 재매핑.
시스템별 기본을 전역 편집도 가능:
- Settings → Input Controls → <system>.
- 동일 UI; 변경은 그 시스템의 모든 게임에 적용.
여러 게임패드
두 개를 연결하면 두 번째는 두 명 로컬 플레이를 지원하는 시스템(대부분의 Libretro 코어)에서 플레이어 2 로 할당됩니다. 연결 순서가 플레이어 순서를 결정하며, Input Devices 화면에서 교환 가능.
연결 해제
패드를 끄거나 블루투스 범위를 벗어나거나 USB를 뽑으면 자동 연결 해제됩니다. (자동 숨김되어 있다면) 화면 오버레이가 다시 나타나 계속 플레이 가능.
문제 해결
- 버튼이 반전되거나 잘못 동작 — Input Devices 에서 게임에 대해 재바인딩. 저장하면 끝.
- 진동 안 됨 — 일부 코어(mGBA, N64, PSX, NDS)만 럼블 지원, 그리고 럼블 HID를 노출하는 유선/블루투스에서만. 럼블 사용 게임으로 빠르게 테스트.
- 블루투스가 자주 끊김 — 패드 펌웨어가 최신인지 확인; 일부 안드로이드 버전은 블루투스 오디오/HID 안정성을 위해 배터리 절약 예외가 필요할 수 있음.
관련 페이지
- 입력 컨트롤 설정 — 전역 컨트롤러 설정
- 게임 상세 — 게임별 Configure Input 진입점
- Retro 플레이어 — 오버레이 자동 숨김