KORG microX utility.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

114 lines
4.8 KiB

  1. kmxtool - KORG microX utility
  2. =============================
  3. Kmxtool is a command-line utility to interact with a KORG microX
  4. synthesizer. It allows to dump and load data from and to the synth, to
  5. query the synth’s status, and to list available Programs.
  6. Kmxtool comes bundled with the asysex program, from which it is derived;
  7. asysex is a generic (non KORG-specific) tool for emitting and receiving
  8. System Exclusive (SysEx) MIDI messages. It reads a SysEx message from
  9. its standard input and sends it to a MIDI device, then receives a single
  10. SysEx message in response (if any) and prints it to standard output.
  11. Usage
  12. -----
  13. Kmxtool uses either ALSA or OSS to access the hardware MIDI ports; it
  14. runs at least on GNU/Linux and should run on most Unix-like systems with
  15. an OSS-compatible interface.
  16. If called without the `-p` option to explicitly specify a MIDI port to
  17. use, kmxtool will scan all available ports until it finds a device
  18. announcing itself as a microX synthesizer.
  19. The default behavior of kmxtool is to print the current status of the
  20. synthesizer:
  21. $ kmxtool
  22. KORG microX synthesizer, version 01.00.00.04
  23. Global channel: 0
  24. Active mode: MULTI
  25. Status of Global mode:
  26. Local Control: No
  27. Clock Source: AUTO
  28. Bank Map: GM
  29. Memorize Mode on Power On: On
  30. Rec. Ext.Realtime Command: Yes
  31. Enable Program Change: Yes
  32. [...]
  33. ### Dumping parameter data
  34. With the `-d` option, you specify the memory slot that you want to dump
  35. from the microX to your computer. Dumped data is written to standard
  36. output in hexdump’s “canonical hex+ASCII” format.
  37. $ kmxtool -d PC7
  38. 00000000 47 6f 73 70 65 6c 20 50 65 72 63 4f 72 67 61 6e |Gospel PercOrgan|
  39. 00000010 c4 32 65 34 65 32 31 32 64 11 1c 09 1b 9c 78 04 |.2e4e212d.....x.|
  40. 00000020 28 40 02 00 40 00 7f 7f 08 41 83 e7 01 8c f1 c5 |.@..@...0A......|
  41. [...]
  42. A memory slot is identified by:
  43. - an uppercase letter indicating the type of slot (`P` for programs, `C`
  44. for combinations, `M` for multis, `D` for drumkits, `A` for arpeggio
  45. patterns, and `E` for external controllers sets);
  46. - (only for programs and combinations) an uppercase letter indicating
  47. the bank, or an asterisk to dump all programs or combinations in all
  48. banks;
  49. - up to three decimal digits indicating the slot number, or an asterisk
  50. to dump all slots in the given bank (for programs and combinations) or
  51. all slots of the given type (for multis, drumkits, arpeggio patterns
  52. and external controllers sets).
  53. The following table gives some examples of memory slot specifications:
  54. | Argument of `-d` | Meaning |
  55. | ---------------- | ----------------------------------------------------- |
  56. | PA78 | dump parameter data for program #78 in bank A |
  57. | PE\* | dump parameter data for all programs in bank E |
  58. | CB50 | dump parameter for combination #50 in bank B |
  59. | C\* | dump parameter data for all combinations in all banks |
  60. | M108 | dump parameter data for multi #108 |
  61. | D\* | dump parameter data for all drumkits |
  62. ### Loading parameter data
  63. The `-l` option performs the opposite of `-d`, that is, loads parameter
  64. data (read from standard input in the same “canonical hex+ASCII” format)
  65. from your computer to a specified memory slot on the microX.
  66. The target memory slot is specified in the same way as for the `-d`
  67. option, except that asterisks are forbidden—you can only load a single
  68. slot at a time, loading an entire bank is not supported.
  69. MIDI backends
  70. -------------
  71. Kmxtool and asysex currently support ALSA and OSS MIDI backends. Please
  72. note that as I only use ALSA, the OSS backend has only been tested
  73. against the ALSA emulation layer for OSS; it *does* work against the
  74. emulated OSS, so I expect it should also work against a real OSS, but I
  75. cannot guarantee that.
  76. MIDI backends available on the target system are enabled by default; if
  77. support for a given backend is not wanted, use the corresponding
  78. `--disable-{alsa,oss}' option at configure time.
  79. When the `-p, --port` option is used, the name of the MIDI port
  80. determines which backend is used. For example, `/dev/midi00` selects the
  81. OSS backend, while `hw:1,0,0' selects the ALSA backend.
  82. Copying
  83. -------
  84. Kmxtool is distributed under the terms of the GNU General Public
  85. License, version 3 or higher. The full license is included in the
  86. [COPYING file](COPYING) of the source distribution.
  87. Homepage and contact
  88. --------------------
  89. The project homepage, where release tarballs may be found, is located at
  90. <http://www.incenp.org/dvlpt/kmxtool.html>. The repository with the
  91. latest source code is available at <https://git.incenp.org/damien/kmxtool>.