2017년 12월 23일 토요일

IOBox 제작 #2 - OPL3 음악도 들어보아요~ ㅎ.ㅎ

데이터 전송 부분을 조금 개선했습니다.

거의 버벅임 없이 소리가 나네요. 으흐흐...


문사운드의 OPL4 칩은 사운드블래스터의 OPL3 칩과 호환이 됩니다.

그러니까, DOSBox로부터 넘겨받은 데이터를 그대로 문사운드로 뿌리면 끝~

그냥 영상으로 바로 보시죠~





그럼, 즐거운 주말 되세요!


2017년 12월 20일 수요일

IOBox 제작 #1 - MoonSound를 DOSBox의 사운드카드로 사용하기

혹시 기억하시는 분 계시려나요?

리눅스 용 paraMSX 에뮬레이터에 실기 turboR의 PSG, 키보드를 연결했던적이 있었죠.

자세한건 아래 링크 참고요~ ㅎ.ㅎ

http://cafe.naver.com/msx/3395


이번에는 윈도 용 PC 에뮬레이터인 DOSBox와 MSX를 연결했습니다.

DOSBox에 MSX 붙여서 뭘 하느냐구요? ㅋ


DOSBox에서는 애드립 및 사운드블래스터가 에뮬레이션이 됩니다.

FM 사운드로 사용되는 칩은 OPL2/3 계열이죠.

MSX의 MoonSound가 OPL4 칩을 사용하기 때문에 H/W적으로 OPL2/3와 호환됩니다.

DOSBox에서 OPL를 액세스 하는 코드를 변경해서, MSX의 사운드를 구동하게되면...

S/W 에뮬레이션 되는 사운드가 아니라, 야마하의 진짜 OPL 사운드를 들을 수 있겠죠!


MSX와 PC는 RS-232C 인터페이스로 연결이 되어있습니다.

보레이트는 115200BPS로 세팅했구요.


DOSBox SVN 소스의 IO 에뮬레이션 코드를 수정해서,

220H, 221H, 388H, 389H 포트 액세스를 MSX로 전송합니다.


MSX에서는 받은 데이터를 이용해서 MoonSound 및 PAC-V를 구동하게 됩니다.

간단한 프로그램을 하나 만들어서 돌려봅니다.

아래는 실제로 동작되는 순간을 찍은 모습입니다.




그러니까 요약하면...

윈도의 DOSBox의 사운드카드 IO가 MSX로 전달된다고 보시면 되겠습니다.



마지막으로 영상을 감상하시지요~ ㅎ.ㅎ

참고로 PC쪽의 스피커는 꺼둔 상태이구요. MSX쪽의 스피커만 켜져있습니다.





그럼, 즐거운 저녁 되세요!


2017년 12월 16일 토요일

PAC-V Tool v1.03


Download: PAC-V_Tool_103_20171216.zip


----------------------------------------------------------------

    PAC-V Tool v1.03 (2017-12-16)

        By 서영만 <email:sharksym@hitel.net>

----------------------------------------------------------------


* UPDATE


  MSX-MUSIC이 내장되지 않은 기종에서, PAC-V 와 FM-PAC 카트리지를

  함께 사용 시 OPLL 소리가 나지않는 현상 수정



* PACV.COM


  PAC-V 카트리지의 SRAM을 관리하는 프로그램입니다.

  MSX-DOS1 및 MSX-DOS2 에서 동작합니다.

  BIOS롬, LED패턴을 카트리지에 다운로드 할 수 있으며,

  파나소닉 PAC 데이터를 SAVE/LOAD 할 수 있습니다.



* 요구 사항


  PAC-V 카트리지

  MSX-DOS1 또는 MSX-DOS2



* 파일 목록


  PACV.COM   - 카트리지 관리 프로그램

  PACV.ROM   - Dummy BIOS 롬

  PACV.INI   - LED 패턴 (기본 수직 막대)

  PACV_1.INI - LED 패턴 샘플#1

  PACV_2.INI - LED 패턴 샘플#2

  PACV_3.INI - LED 패턴 샘플#3



* 사용법


  PACV W|P|S|L Filename [Slot[SubSlot]]


    W: BIOS 롬 다운로드  (Dummy BIOS 또는 FM-PAC BIOS 롬)

    P: LED 패턴 데이터 다운로드       (슬롯번호 생략가능)

    S: PAC 데이터 덤프 및 디스크 저장 (슬롯번호 생략가능)

    L: PAC 데이터 다운로드            (슬롯번호 생략가능)


  예) PACV W FMPAC.ROM 1

      PACV P PACV.INI

      PACV S SRAM.PAC

      PACV L SRAM.PAC



* 주의 사항


  PACV.COM 프로그램은 PAC-V 카트리지 전용 툴입니다.

  파나소닉의 PAC 및 FM-PAC 카트리지에서는 동작하지 않습니다.


2017년 12월 11일 월요일

paraMSX-R 제작 #15 - 사용자 머신 로딩

기본적으로 paraMSX-R에서 사용되는 머신 데이터는 미리 플래쉬롬에 다운로드되어야합니다.

만약 플래쉬롬에 내장되지 않은 머신을 사용하고 싶으면 어떻게 해야할까요?


이걸 어떤 방식으로 만드는게 가장 효과적일지 생각해보았습니다. (6개월 전에요 ㅋ)

결론부터 얘기하면, 머신 데이터 영역을 램으로 구성하는 방식이죠.

머신 데이터는 PARAMSX.COM 실행할 때 함께 로딩을 하구요.


처음 paraMSX-R 설계할 때, 메모리 매퍼를 1024KB까지 지원하도록 했는데요.

512KB만 메모리 매퍼로 쓰고, 나머지 512KB를 머신 데이터 로딩 용으로 바꿨습니다.

매퍼램 1024KB가 있으면, 프로그램 개발/테스트 시에는 유용하게 쓰일 수 있겠지만,

아마 사용자 대부분의 경우는 별로 필요없을 것 같더라구요.


사용자 머신 파일명은 *.MCH 입니다.

도스에서 PARAMSX.COM 구동 시, 파일명을 입력해서 로딩할 수 있습니다.

머신 파일을 로딩하게 되면, 해당 머신으로만 구동이 됩니다.

카트리지에 내장된 머신을 선택하는건 불가능해집니다.


아래는 PARAMSX.COM 1_A1.MCH 실행 후, A1의 데스크팩으로 진입한 모습입니다.





사용자용 머신 파일(MCH)은 512KB 내외의 용량이니까,

2DD에서 구동하시는 분들도 활용이 가능합니다만...

로딩시간 때문에 가능하면 고속/대용량 디스크드라이브에서 활용하시는 걸 추천합니다. ㅎ.ㅎ



그럼, 실제 동작 모습을 보시지요~

처음에는 PARAMSX.COM을 그냥 실행해서 내부 머신 선택하는 모습이 보이구요.

그 후, FS-A1, FS-A1WSX, CBIOS2+ (JP) 모드를 로딩/구동하는 모습이 나옵니다.





그럼, 다음에 또 뵙겠습니다요~ ㅎ.ㅎ/


궁금한 부분 있으시면, 질문글로 올려주세요~


 

2017년 12월 3일 일요일

2017년 송년회 잘 다녀왔어요~

어제 토요일에 2017년 송년회가 있었습니다.

일년 후딱 가네요. 작년 송년회한지 얼마안된 것 같은데..ㅋ


먼저 이벤트 준비/진행해주신 유령군님, 우유속의소주님 감사드리구요~ ㅎ.ㅎb

사진 한장만 올려봅니다.

얼굴을 모자이크할까 고민하다가 걍 사진 크기만 줄였어요.





오랜만에 오신분들도 뵙고, 처음 뵌 분들도 있고해서 즐거웠습니다.

이번에도 역시나, 저는 9시 40분쯤 자리를 떴네요. 득템한 나눔품을 손에 들고서~~ 룰루~


삶의여유님의 게임디스크 3종셋과 이올로님의 송년회 기념 디스크입니다.

레이블 멋지네요! ㅎ.ㅎ/





2017 마지막까지 행복한 날 가득하세요. 건강하시구요!