도스 및 윈도우98머신

DOSBOX-X 와 Darlington님표 OPL2 보드 패스스루 테스트기

월반장 2021. 1. 5. 21:28

최근에 OPL3DUO라는 제품에 관심을 가지면서 

참조

www.tindie.com/products/cheerful/opl3-duo/

 

OPL3 Duo! by Cheerful Electronic on Tindie

Synthesizer for Arduino compatible boards with dual OPL3 chips

www.tindie.com

 

이 제품과 호환되는 DOSBOX-X를 테스트해보고 있었습니다.

https://dosbox-x.com/

다운로드는 https://github.com/joncampbell123/dosbox-x/blob/master/INSTALL.md#windows-packages-installer-or-portable

 

 

DOSBOX-X는 최신 버전에서 위 링크사이트의 OPL3DUO와 같은 제작자의 OPL2보드도 지원을 하기 때문에

오리지널 OPL2/3 칩을 통해 도스게임을 즐길 수가 있는데요.

 

이리저리 해보니 일전에 구입한 Darlington님표 OPL2 보드가 이 도스박스와 호환이 되더군요.

 

Darlington님께서 제공한 펌웨어(도스박스 스루패스)가 적용되어 있으면 됩니다.

 

DOSBOX-X에서는 설정해줄 것이 있습니다.

 

dosbox-x.conf을 메모장으로 열어서

(없는 경우 dosbox-x.reference.conf를 파일명 변경하면 됩니다.)

 

[sblaster] 을 찾아들어가 아래 부분은 수정해줍니다.

 

oplemu = opl2board

*이 부분의 옵션은 default, compat, fast, nuked, mame, opl2board, opl3duoboard 인데

Darlington님표 카드는 OPL2이므로 opl2board를 골라주면 됩니다.

 

oplport = com17

*이 번호는 자신의 시리얼포트를 적어주면 됩니다. 저는 17이라 COM17이었습니다. 시리얼포트번호 찾는거야 Darlington님표 카드를 사용중이시라면 어렵지 않을것이라 생각합니다.

 

설정은 여기가 끝입니다.

 

아래는 테스트 영상입니다. DOSBOX-X는 SDL버전을 사용하면 자체 메뉴로 여러가지 설정을 할 수 있어서 편리합니다.

위의 설정도 편집후 저장이 가능합니다.

 

 

 

 

 

더하여 Darlington님표 OPL2보드에 DOSBOX-X에 본래 호환되는 opl2board 의 펌웨어를 덮어보는 테스트도 해보았습니다. 왜냐하면 opl2board의 제작자도 펌웨어에 따라 여러가지 기능을 제공하더군요.

미디신스나 플레이어 등인데 저야 도스박스용도로만 사용하면 되어서 이부분만 테스트해보았습니다.

결과적으로 덮은 펌웨어로도 잘됩니다. DOSBOX-X는 물론이고 Darlington님께서 제공하신 도스박스에서도 해당 펌웨어에서 잘 굴러갑니다. 사실 시리얼 패스스루기능이라 크게 문제없으면 되지 않을까 추측했는데 맞는 것 같네요.

 

아래는 펌웨어 다운로드 및 아두이노업로드 방법입니다.

 

1. https://www.arduino.cc/en/software 에서 Arduino IDE (21년 1월5일 1.8.13 최신) 다운 및 설치

 

2.Arduino IDE 실행 후 툴에서 보드/프로세서/포트번호를 변경하세요.

제가 구입한 Darlington님표 보드는 Arduino Nano, 프로세서는 ATmega328p(OLD Bootloader)입니다.

포트번호는 자신의 시리얼번호

 

 

 

3. Arduino IDE 실행 후 스케치-라이브러리포함하기-라이브러리관리 에서 Arduino OPL2 혹은 OPl2로 검색하면

아래 처럼 라이브러리가 뜹니다.(인터넷은 연결되어 있어야 겠지요...) 버전은 최신으로 고르고 설치

 

4. Arduino IDE 에서 파일-예제-Arduino OPL2-Opl2AudioBoard-serialpassthrough 선택

 

 

5. serialpassthrough가 뜨면 업로드버튼 누르시면 완료 입니다.

 

 

위의 과정이 싫으신 분들은 아래 HEX파일 올려드리니 이걸 사용하시면 됩니다.

SerialPassthrough.ino.hex
0.01MB

 

 

사용법은 Darlington님이 제공해주신 파일에서 Upload.bat를 메모장으로 열어서

 

:dosbox

avrdude -C avrdude.conf -v -p atmega328p -c arduino -P COM%COM% -b 57600 -D -U flash:w:DosBoxTP.hex":i

pause

exit

 

DosBoxTP.hex를 SerialPassthrough.ino.hex로 변경한 뒤

Upload.bat 실행 후 1번 메뉴를 선택해주면 됩니다.

 

opl2board 제작자가 제공하는 serialpassthrough의 HEX 외에 다른 것의 HEX파일을 만들기 위해서는

Arduino IDE에서 예제부르기를 한 후 스케치-확인/컴파일 을 실행하면 임시폴더에 나타납니다.

예를 들어 제 컴에서는 C:\Users\이름\AppData\Local\Temp\arduino_build_66095 에 들어있었습니다.

HEX파일 중 bootloader가 붙은 것은 사용하시면 아두이노의 부트로더가 손상될 수 있으니 쓰지마세요.