이번 글 부터는 제가 만들었던 프로그램들과 그에 관련된 툴, 라이브러리 설명을 붙여보겠습니다.
대략 시간순으로 등장한다고 보시면 맞습니다~ ㅎ.ㅎ
그럼, 'IMS 플레이어'부터 시작합니다.
IMS 파일 아시죠? PC의 애드립, 사운드블라스터에서 OPL2를 이용한 음악파일인데요.
이걸 MSX-DOS2에서 연주해주는 프로그램을 만들어봤습니다.
기본적으로 MoonSound를 위해 만든 플레이어지만, OPLL만으로도 플레이 가능합니다.
BNK로 쓰이는 악기 이름과 비슷한 OPLL 내장 악기를 선택해주는 방식입니다.
이 프로그램은 메모리매퍼를 활용하는 가장 기본적인 프로그램입니다.
OPL4, OPLL을 위한 플레이어 루틴이 서로 다른 뱅크에 배치되어있습니다.
플레이 시, 어차피 하나의 칩만 사용할테니까 모든 코드를 하나의 뱅크에 넣으면 뱅크 용량만 커지겠죠?
일반적인 IMS 파일은 32KB ~ 128KB 정도입니다.
이 IMS 파일을 한번에 로딩하기 위해 메모리매퍼 세그먼트를 동적으로 할당하여 사용합니다.
만약 제가 90년대에 아이큐2000용으로 플레이어를 만들었다면?
아마 IMS 데이터를 VRAM에 로딩하는 방식을 썼을 것 같네요.
이제는 넉넉한 메모리로 편하게 프로그래밍을 할 수 있습니다. 역시 목마른 사람이 우물을 파는 게 좋아요.
그리고, turboR의 고속모드를 활용하려면 적극적으로 내장 메모리을 이용해야합니다!
아래는 IMSP 초기버전의 동작영상이니 구경하셔요~ ㅎ.ㅎ
아시다시피, M 파일매니저에 OPL4 전용의 IMSP 기능이 내장되어 있어서, 이젠 저도 안쓰는 프로그램이 됐지만...
만약 OPL4 사운드 카드가 없으시면 OPLL도 지원되니, 한번 트라이해보세요 ㅎ.ㅎ
아래 페이지에서 다운받을 수 있습니다.
https://sharksym.blogspot.com/2019/04/imsp-v06-ims-player-for-msx-dos2-2019.html
그럼, 다음 편에서 이어집니다요~
