2011년 4월 20일 수요일

OPL4의 OPL2 호환성과 IMS 플레이어

어제 퇴근 후,

 OPL4과 OPL2 매뉴얼을 놓고 서로 비교를 해봤습니다.

 

OPL4가 구버전 OPL2,3와 호환되는 것으로 알려져있는데,

 실제 SW 적용 시는 어떤지가 관건이었지요.

 

근데 OPL4 매뉴얼을 봤더니,

 FM 신스 쪽은 첨부터 SW적으로도 하위 호환이 되도록 구성이 되어있더군요.

참고로 OPLL은 OPL2의 간단 버전으로 동작은 비슷해도 레지스터 구성이 조금씩 차이가 있었지요.

 

부랴부랴, IMSP4 (IMS player for Moonsound) 프로젝트를 하나 만들고 테스트를 해봤습니다.

역시나 거의 코드 수정없이 출력이 잘나오는군요. *_*

십여전 기억에 남아있던 오리지날 OPL2 (옥소리3.8 ㅎ.ㅎ)와 비슷하게 나오네요. 아하핫...

 

음, 결론은... "문사운드용 IMS 연주기도 쉽게 만들어짐" 입니다.

 

여기서 문득 든 생각이, 게임용으로 문사운드를 활용한다면...

OPL2(또는 OPL3)의 FM 사운드를 배경음악으로 넣고,

PCM 출력으로 효과음 넣으면, 상당히 낮은 CPU 점유만으로 활용이 가능하겠더군요. ㅎ.ㅎ;

 

여기까지 왔더니... 하나 더 드는 생각 !

준성님은 10년전에 다 해보셨을거 같은 느낌이 !!! ㅎ.ㅎㅋ

 

준성님~~,

 만들어 놓으신거 자료 좀 풀어보셔요~ !! ㅋ

 

 

 

음... 혹시 알고 계신 분도 있겠지만~ㅋ

제가 지금 쓰는 IMS 플레이 관련 코드(애드립 라이브러리 포함)는

10년전에 윈앰프용으로 만든 IMS 플러그인 코드를 그대로 쓰고 있습니다.

 

근데, 이게 MSX로 구현하다보니, 클럭 스피드를 정확하게 처리하는데 고민을 좀 해야겠더군요.

현재 코드는 VDP V-blank 인터럽트 주기를 사용하기 때문에 속도를 정확하게 맞추기가 힘드네요.

 

터보알의 내장 타이머를 쓰거나, 아니면 VDP H-blank 인터럽트를 함께 써야될 거 같은데...

암튼 좀 문제가 있어요~ ㅎ

 


 

어쨋든, IMSP 문사운드 버전은 요번주 중으로 정리해서 올려놓겠습니다.

 

현재 코드는 BNK파일 사이즈 제한(약 10KB)이 있어서,

 옛날처럼 100KB넘는 STANDARD.BNK 등을 처리할수 있도록 개선이 좀 필요하고요.

현재 16KB 제한인 IMS 파일 사이즈도 숙제로 남아있고요.

 

결국 대용량의 연속 메모리를 처리할수 있는 방법이 있어야 이런 것들이 개선가능하겠습니다요~~ ㅎ.ㅎ


댓글 없음:

댓글 쓰기