2013년 12월 18일 수요일

[Korg X2] 윈도우7에서 HSR 2.0 미디 인터페이스로 SysEx 전송하기

90년대에 나온 신세사이저에서는 플로피 디스크 드라이브가 매우 중요한 장치였다. 음원 설정이나 시퀀스 데이터 등을 백업할 수 있는 거의 유일한 수단이었기 때문이다. 별도의 확장 PCM 카드가 없는 상태에서는 내장 ROM에 수록된 웨이브폼을 변형하여 갖가지 음원(악기 소리)을 만들어 내는데, 이러한 세팅을 저장하거나 바꾸려면 플로피 디스크를 통해야만 했다.

가장 큰 문제는 플로피 디스크 드라이브의 수명이 그리 길지 않고, 또 Korg X2에 들어있는 드라이브는 국내에서 널리 보급된 PC에 들어있는 것과 커넥터의 모양이 달라서 교체하기가 곤란하다는 점이다. 정확히 말하자면 커넥터가 아니라 얇은 플렉서블 판에 동박이 입혀진 리본 케이블 형태의 것을 그냥 꽂게 되어 있는 것이다. 게다가 2HD도 아니다! 상황이 이러하니 FDD가 망가졌을 때의 유일한 대안은 현재의 설정 상태를 SysEx로 덤프한 것을 파일로 보유하고 있다는 가정 하에, 다시 X2로 되돌려 보내는 것이다.

그런데 이 작업이 그렇게 쉽지만은 않다. 이를 위해서는 미디 인터페이스가 필요하다. 윈도우 9X, XP 시절에는 조이스틱/미디 포트가 달린 사운드카드가 흔했었고 여기에 연결 가능한 미디 인터페이스가 있었다. 이 당시에는 Korg X2/X3 계열의 악기를 위한 Xedit라는 걸출한 프로그램이 있어서 음원 디스켓에 담겼던 .PCG 파일의 내용을 X2 혹은 X3로 직접 보낼 수 있었다. 잘은 모르겠지만 이러한 방식의 전송은 SysEx의 형식은 아니었을 것이다.

Xedit는 안타깝게도 윈도우 3.x 시절의 프로그램으로서 윈도우 9x까지만 동작한다. 윈도우 XP라면 MIDI OX라는 프로그램을 이용할 수 있다. 내가 2008-2009년 정도에 했던 짓도 바로 이를 활용한 것이다. 각 음색 디스크를 로딩해 놓은 다음, MIDI OX를 써서 SysEx 파일 형태로 받아 놓았던 것이다. 당시의 경험을 돌이켜본다면, USB 미디 인터페이스는 윈도우 XP + MIDI OX에서 잘 작동하지 않았다.

낡은 신세사이저에 SysEx를 보내려면 USB 케이블 형태의 미디 인터페이스와 MIDI OX의 궁합이 잘 맞지 않는다. USB 미디 인터페이스는 윈도우에서 드라이버를 제공하는데, 이게 신통하지 않다는 것이 정설이다. 따라서 아웃풋 버퍼의 크기를 적당히 늘리고 버퍼 사이의 딜레이(밀리초)를 늘려서 에러 없이 SysEx를 전송하는 조건을 찾아야 한다. 기본 설정으로는 메모리가 부족하다는 황당무계한 에러가 발생한다. 단, X2 -> PC로의 덤프는 MIDI OX + USB 미디 인터페이스로도 잘 된다. 버퍼의 의미는 MIDI-OX FAQ의 아홉번째 질문과 답인 "9. MIDI-OX: How do I configure Buffers...?"에 설명이 나오는데 완벽하기 이해하기는 어렵다.

결국 한참 웹을 뒤져서 가장 무난히 작동하는 SysEx 전송 프로그램을 발견하였다. 바로 C6 SysEx Manager(2020년 7월 현재 유효한 다운로드 링크)라는 것이다. 이것은 원래 Elektron이라는 악기의 SysEx 관리를 위해 만들어진 프로그램으로 보이는데, 윈도우7 + HSR 2.0 미디 인터페이스 + Korg X2에서 문제 없이 작동함을 확인하였다. 설정할 것이 있다면 Configure 메뉴에서 딜레이를 200 ms로 늘려놓는 것뿐이다. 아마 딜레이 시간이 충분히 주어지지 않으면 X2가 데이터를 받아서 처리하는데 허덕이게 되는 모양이다.

C6 SysEx Tool v1.51의 시스템 요구사항.


내가 제안하는 방법은 다음과 같다.

  1. 완전히 공장 초기화 상태로 만들어 놓는다: [Enter]키와 커서 [다운]키를 동시에 누른 상태에서 전원을 넣는다. 액정 표시창에는 Init00이 표시될 것이다. 이 작업은 꼭 필요한 것이 아닐지도 모르겠지만 초기화를 해서 메모리를 텅 비워두는 것이 좋을 것이다.
  2. Global menu의 3D(MIDI FILTER 2)에서 EX:ENA인지 확인한다. EX:DIS로 되어 있으면 SysEx 송수신이 불가능하다.
  3. 미디 인터페이스를 컴퓨터와 X2 사이에 연결한다. C6 SysEx 매니저를 실행하고 Configure 메뉴에서 Delay를 200(ms)으로 조절한다.
  4. 적당한 SysEx 파일을 로드하여 보낸다. [링크1] [링크2] <= 여기에 있는 파일들은 내가 직접 X2에 디스켓을 로딩한 뒤 다시 PC로 덤프하여 만든 것이다.
  5. 전송이 완료되면 X2 액정창에 "Processing..."이라는 메시지가 더 이상 나와서는 안된다.

이 방법을 알아내기 전인 어제 윈도우7에서 MIDI OX를 가지고 놀다가 음원이 다 날아가버린 뒤, 정말 눈앞이 캄캄했었다. Xedit를 다시 설치할 마땅한 컴퓨터가 없는 상황에서 도대체 어떻게 해야 하나? 조이스틱 포트가 달린 중고 사운드 블라스터를 다시 구입해서 윈도우 98이나 XP를 설치해야 하나? 오로지 X2의 설정 관리만을 위하여? 아이패드용 미디 관리 도구(Midi Tool Box)는 되지 않을까 싶어서 9달러가 넘는 돈을 주고 앱을 구입했건만 역시 되지 않았다. 버퍼 크기나 딜레이를 조정할 수 있는 기능이 아이패드용 앱에는 전혀 들어있지 않다. 단, X2에서 SysEx를 덤프해 오는 것에는 문제가 없어 보인다.

댓글 없음: