DOS 시대 OPL3(YMF262) 사운드를 실시간으로 재생하는 플레이어입니다.
- ESP32 adlcom ElectricRay 보드 → WiFi UDP → YMFM 에뮬레이션 → 오디오 출력
또는
- SerialtoUSB 케이블 → USB or OTG → YMFM 에뮬레이션 → 오디오 출력
DOS에서 adlcom을 실행하고, esp32에 펌웨어를 올리고 사용하시면 됩니다. adlcom은 제 다른 저장소의 shadow register patch된 버전을 사용하셔야 시리얼포트로 무리없이 운용하실수 있습니다. (https://github.com/Electric-ray/adlcom)
이 프로젝트는 AI를 이용하여 제작되었습니다.
| 폴더 | 내용 |
|---|---|
OPLplayer-Windows/ |
Windows x86 데스크탑 앱 (Visual Studio 2022) |
OPLplayer-Android/ |
Android 앱 (Android Studio / NDK) |
| 'comopl/' | Esp32-s3 스케치 |
- Visual Studio 2022, Windows SDK 10.0, x86 Release
- PortAudio (정적 라이브러리,
3rdparty/portaudio/포함) - YMFM 에뮬레이터 소스 포함
OPLplayer.sln 열기 → Release | Win32 → 빌드
portaudio.dll 을 실행 파일과 같은 폴더에 배치하세요.
- ESP32 UDP 수신 (포트 9800)
- COM 포트 직접 수신 (adlcom ElectricRay Nuke 3바이트 프로토콜 @ 115200bps)
- 사인톤 테스트 / 볼륨·게인 슬라이더 / 타이밍 프리셋
- OPL3 칩 초기화
- Android Studio Hedgehog 이상
- NDK r25+, CMake 3.22+
- minSdk 24 (Android 7.0)
Android Studio → Open → OPLplayer-Android 폴더
Sync → Run ▶
- ESP32 WiFi UDP 수신 (WiFi 네트워크 강제 바인딩)
- OTG USB 시리얼 수신 (FTDI / CP210x / CH34x / PL2303)
- 볼륨·게인 슬라이더 / 버퍼링 프리셋
- 수신 LED 인디케이터
| 항목 | 내용 |
|---|---|
| OPL3 보드 | adlcom ElectricRay (YMF262 + ESP32) |
| 연결 방식 | WiFi (ESP32 AP 모드, 192.168.4.1:9800) 또는 USB 시리얼 |
| 프로토콜 | Nuke.YKT 3바이트 OPL3 write 패킷 |
- YMFM 에뮬레이터: Apache 2.0
- PortAudio: MIT License
- usb-serial-for-android: LGPL 2.1
- Oboe: Apache 2.0
- 이 프로젝트 코드: MIT License
2026 전기가오리 / 네이버카페 도스박물관