OSDN Git Service

Add README.mts
authorShoichi Tamuki <tamuki@linet.gr.jp>
Sun, 29 Feb 2004 08:13:05 +0000 (08:13 +0000)
committerShoichi Tamuki <tamuki@linet.gr.jp>
Sun, 29 Feb 2004 08:13:05 +0000 (08:13 +0000)
ChangeLog
doc/C/Makefile.am
doc/C/Makefile.in
doc/C/README.mts [new file with mode: 0644]
doc/ja_JP.ujis/Makefile.am
doc/ja_JP.ujis/Makefile.in
doc/ja_JP.ujis/README.dl
doc/ja_JP.ujis/README.mts [new file with mode: 0644]

index 618544e..4d80f22 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2004-02-28  TAMUKI Shoichi <tamuki@linet.gr.jp>
+
+       * doc/ja_JP.ujis/README.dl:
+         Was written in iso-2022-jp, convert to eucJP
+       * doc/C/README.mts, doc/ja_JP.ujis/README.mts: Add
+       * doc/C/Makefile.{am,in}, doc/ja_JP.ujis/Makefile.{am,in}:
+         Fix to fit with change above
+
 2004-02-29  Saito <saito@intaa.net>
 
        * interface/w32g_tracer.bmp:
index b00495f..b4b45a5 100644 (file)
@@ -29,4 +29,5 @@ EXTRA_DIST = \
        README.xskin \
        README.xaw \
        README.alsaseq \
-       README.m2m
+       README.m2m \
+       README.mts
index e3fdef1..7444dde 100644 (file)
@@ -254,7 +254,8 @@ EXTRA_DIST = \
        README.xskin \
        README.xaw \
        README.alsaseq \
-       README.m2m
+       README.m2m \
+       README.mts
 
 subdir = doc/C
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff --git a/doc/C/README.mts b/doc/C/README.mts
new file mode 100644 (file)
index 0000000..2b7cd64
--- /dev/null
@@ -0,0 +1,643 @@
+----------------------------------------------------------------------
+MIDI Tuning Standard summary
+----------------------------------------------------------------------
+
+(1) Bulk Tuning Dump Request (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 00 tt F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+00             sub-ID#2 = "bulk tuning dump request (Non Real-Time)"
+tt             tuning program number (0 - 127)
+F7             EOX
+----------------------------------------------------------------------
+
+(2) Bulk Tuning Dump (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 01 tt <tuning name> [xx yy zz] ... chksum F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+01             sub-ID#2 = "bulk tuning dump (Non Real-Time)"
+tt             tuning program number (0 - 127)
+<tuning name>  16 ASCII characters
+[xx yy zz]     frequency data for one note (repeated 128 times)
+chksum         checksum (XOR of all bytes excluding F0, F7, and chksum)
+F7             EOX
+----------------------------------------------------------------------
+
+(3) Single Note Tuning Change (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 02 tt ll [kk xx yy zz] F7
+
+F0 7F          Universal Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+02             sub-ID#2 = "single note tuning change (Real-Time)"
+tt             tuning program number (0 - 127)
+ll             number of changes (1 change = 1 set of [kk xx yy zz])
+[kk            MIDI key number
+ xx yy zz]     frequency data for that key (repeated 'll' number of times)
+F7             EOX
+----------------------------------------------------------------------
+
+(4) Bulk Tuning Dump Request (Bank) (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 03 bb tt F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+03             sub-ID#2 = "bulk tuning dump request (Bank) (Non Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+F7             EOX
+----------------------------------------------------------------------
+
+(5) Key-Based Tuning Dump (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 04 bb tt <tuning name> [xx yy zz] ... chksum F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+04             sub-ID#2 = "key-based tuning dump (Non Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+<tuning name>  16 ASCII characters
+[xx yy zz]     frequency data for one note (repeated 128 times)
+chksum         checksum (XOR of all bytes excluding F0, F7, and chksum)
+F7             EOX
+----------------------------------------------------------------------
+
+(6) Scale/Octave Tuning Dump 1-Byte Form (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 05 bb tt <tuning name> [xx] ... chksum F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+05             sub-ID#2 = "scale/octave tuning dump 1-byte form
+                               (Non Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+<tuning name>  16 ASCII characters
+[xx]           frequency data for C,C#,... B (12 bytes total)
+                       00H means -64 Cent
+                       40H means +/- 0 Cent
+                       7FH means +63 Cent
+chksum         checksum (XOR of all bytes excluding F0, F7, and chksum)
+F7             EOX
+----------------------------------------------------------------------
+
+(7) Scale/Octave Tuning Dump 2-Byte Form (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 06 bb tt <tuning name> [xx yy] ... chksum F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+06             sub-ID#2 = "scale/octave tuning dump 2-byte form
+                               (Non Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+<tuning name>  16 ASCII characters
+[xx yy]                frequency data for C,C#,... B (24 bytes total)
+                       00H 00H means -100 cents (8,192 steps of .012207 cents)
+                       40H 00H means 0 cents (equal temperament)
+                       7FH 7FH means +100 cents (8,191 steps of .012207 cents)
+chksum         checksum (XOR of all bytes excluding F0, F7, and chksum)
+F7             EOX
+----------------------------------------------------------------------
+
+(8) Single Note Tuning Change (Bank) (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7
+
+F0 7F          Universal Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+07             sub-ID#2 = "single note tuning change (Bank) (Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+ll             number of changes (1 change = 1 set of [kk xx yy zz])
+[kk            MIDI key number
+ xx yy zz]     frequency data for that key (repeated 'll' number of times)
+F7             EOX
+----------------------------------------------------------------------
+
+(9) Single Note Tuning Change (Bank) (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7
+
+F0 7E          Universal Non-Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI tuning standard"
+07             sub-ID#2 = "single note tuning change (Bank) (Non Real-Time)"
+bb             tuning bank number (0 - 127)
+               (described as 1-128 in MIDI Tuning Specification)
+tt             tuning program number (0 - 127)
+ll             number of changes (1 change = 1 set of [kk xx yy zz])
+[kk            MIDI key number
+ xx yy zz]     frequency data for that key (repeated 'll'number of times)
+F7             EOX
+----------------------------------------------------------------------
+
+(10) Scale/Octave Tuning 1-Byte Form (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 08 ff gg hh [ss] ... F7
+
+F0 7F          Universal Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+08             sub-ID#2 = "scale/octave tuning 1-byte form (Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bits 2 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+[ss]           12 byte tuning offset of 12 semitones from C to B
+                       00H means -64 cents
+                       40H means 0 cents (equal temperament)
+                       7FH means +63 cents
+F7             EOX
+----------------------------------------------------------------------
+
+(11) Scale/Octave Tuning 1-Byte Form (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 08 ff gg hh [ss] ... F7
+
+F0 7E          Universal Non Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+08             sub-ID#2 = "scale/octave tuning 1-byte form (Non Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bits 2 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+[ss]           12 byte tuning offset of 12 semitones from C to B
+                       00H means -64 cents
+                       40H means 0 cents (equal temperament)
+                       7FH means +63 cents
+F7             EOX
+----------------------------------------------------------------------
+
+(12) Scale/Octave Tuning 2-Byte Form (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 09 ff gg hh [ss tt] ... F7
+
+F0 7F          Universal Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+09             sub-ID#2 = "scale/octave tuning 2-byte form (Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bits 2 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+[ss tt]                24 byte tuning offset of 2 bytes per semitone from C to B
+                       00H 00H means -100 cents (8,192 steps of .012207 cents)
+                       40H 00H means 0 cents (equal temperament)
+                       7FH 7FH means +100 cents (8,191 steps of .012207 cents)
+F7             EOX
+----------------------------------------------------------------------
+
+(13) Scale/Octave Tuning 2-Byte Form (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 09 ff gg hh [ss tt] ... F7
+
+F0 7E          Universal Non Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+09             sub-ID#2 = "scale/octave tuning 2-byte form (Non Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bits 2 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+[ss tt]                24 byte tuning offset of 2 bytes per semitone from C to B
+                       00H 00H means -100 cents (8,192 steps of .012207 cents)
+                       40H 00H means 0 cents (equal temperament)
+                       7FH 7FH means +100 cents (8,191 steps of .012207 cents)
+F7             EOX
+----------------------------------------------------------------------
+
+(14) Temperament Tonality Control Tuning (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 0A sf mi F7
+
+F0 7F          Universal Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+0A             sub-ID#2 = "temperament tonality control tuning
+                               (Real-Time)"
+sf             number of sharp/flat (1 byte)
+                       39H means 7 flats
+                       3FH means 1 flat
+                       40H means key of C
+                       41H means 1 sharp
+                       47H means 7 sharps
+mi             major/minor (1 byte)
+                       00H means major key
+                       01H means minor key
+                       02H means passing major key
+                       03H means passing minor key
+F7             EOX
+----------------------------------------------------------------------
+
+(15) Temperament Tonality Control Tuning (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0A sf mi F7
+
+F0 7E          Universal Non Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+0A             sub-ID#2 = "temperament tonality control tuning
+                               (Non Real-Time)"
+sf             number of sharp/flat (1 byte)
+                       39H means 7 flats
+                       3FH means 1 flat
+                       40H means key of C
+                       41H means 1 sharp
+                       47H means 7 sharps
+mi             major/minor (1 byte)
+                       00H means major key
+                       01H means minor key
+                       02H means passing major key
+                       03H means passing minor key
+F7             EOX
+----------------------------------------------------------------------
+
+(16) Temperament Type Control Tuning (Real-Time)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 0B ff gg hh tt F7
+
+F0 7F          Universal Real-Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+0B             sub-ID#2 = "temperament type control tuning (Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bit 2 = port A/B
+                       bits 3 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+tt             temperament type (1 byte)
+                       00H means equal temperament
+                       01H means Pythagoras tuning
+                       02H means mean-tone tuning
+                       03H means pure intonation
+                       40H means user-defined temperament #0
+                       41H means user-defined temperament #1
+                       42H means user-defined temperament #2
+                       43H means user-defined temperament #3
+F7             EOX
+----------------------------------------------------------------------
+
+(17) Temperament Type Control Tuning (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0B ff gg hh tt F7
+
+F0 7E          Universal Non Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+0B             sub-ID#2 = "temperament type control tuning (Non Real-Time)"
+ff             channel/options byte 1
+                       bits 0 to 1 = channel 15 to 16
+                       bit 2 = port A/B
+                       bits 3 to 6 = reserved for future expansion
+gg             channel byte 2 - bits 0 to 6 = channel 8 to 14
+hh             channel byte 3 - bits 0 to 6 = channel 1 to 7
+tt             temperament type (1 byte)
+                       00H means equal temperament
+                       01H means Pythagoras tuning
+                       02H means mean-tone tuning
+                       03H means pure intonation
+                       40H means user-defined temperament #0
+                       41H means user-defined temperament #1
+                       42H means user-defined temperament #2
+                       43H means user-defined temperament #3
+F7             EOX
+----------------------------------------------------------------------
+
+(18) User-defined Temperament Entry (Non Real-Time)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0C tt <temper name>
+               ll [fh fl bh bl aa bb cc dd ee ff] ... F7
+
+F0 7E          Universal Non Real Time SysEx header
+<device ID>    ID of target device (7F = all devices)
+08             sub-ID#1 = "MIDI Tuning Standard"
+0C             sub-ID#2 = "user-defined temperament entry (Non Real-Time)"
+tt             temperament program number (0 - 63)
+<temper name>  16 ASCII characters
+ll             number of formula (1 formula =
+                               1 set of [fh fl bh bl aa bb cc dd ee ff])
+[fh            applying pitch bit mask byte 1
+                       bits 0 to 3 = circle of fifth forward 8 to 11
+                       bits 4 to 5 = reserved for future expansion
+                       bit 6 = major flag (reversal)
+ fl            applying pitch bit mask byte 2
+                       bits 0 to 6 = circle of fifth forward 1 to 7
+ bh            applying pitch bit mask byte 3
+                       bits 0 to 3 = circle of fifth backward 8 to 11
+                       bits 4 to 5 = reserved for future expansion
+                       bit 6 = minor flag (reversal)
+ bl            applying pitch bit mask byte 4
+                       bits 0 to 6 = circle of fifth backward 1 to 7
+ aa bb         fraction (aa/bb)
+ cc dd ee ff]  power ((cc/dd)^(ee/ff)) (repeated 'll' number of times)
+F7             EOX
+----------------------------------------------------------------------
+
+----------------------------------------------------------------------
+Preset temperament of Temperament Type Control Tuning
+----------------------------------------------------------------------
+
+First, Pythagoras tuning (major) chromatic scale is expressed by the
+following recurrence relations.  Here, the index [] is a offset of the
+tonic.  The operation results are surely settled between 1 and 2, so
+they will be made into double or half if necessary.
+
+[Pythagoras tuning (major) chromatic scale]
+pytha_maj[ 0] = 1                       # C  1
+pytha_maj[ 7] = pytha_maj[ 0] * 3/2     # G  3/2
+pytha_maj[ 2] = pytha_maj[ 7] * 3/2     # D  9/8
+pytha_maj[ 9] = pytha_maj[ 2] * 3/2     # A  27/16
+pytha_maj[ 4] = pytha_maj[ 9] * 3/2     # E  81/64
+pytha_maj[11] = pytha_maj[ 4] * 3/2     # B  243/128
+pytha_maj[ 6] = pytha_maj[11] * 3/2     # F# 729/512
+--
+pytha_maj[ 5] = pytha_maj[ 0] * 2/3     # F  4/3
+pytha_maj[10] = pytha_maj[ 5] * 2/3     # Bb 16/9
+pytha_maj[ 3] = pytha_maj[10] * 2/3     # Eb 32/27
+pytha_maj[ 8] = pytha_maj[ 3] * 2/3     # Ab 128/81
+pytha_maj[ 1] = pytha_maj[ 8] * 2/3     # Db 256/243
+
+On the other hand, pure intonation (major) chromatic scale can be
+expressed by the following recurrence relations.  Here, sc means a
+syntonic comma (81/80).
+
+[pure intonation (major) chromatic scale]
+pure_maj[ 0] = 1                        # C  1
+pure_maj[ 7] = pure_maj[ 0] * 3/2       # G  3/2
+pure_maj[ 2] = pure_maj[ 7] * 3/2       # D  9/8
+pure_maj[ 9] = pure_maj[ 2] * 3/2 / sc  # A  5/3
+pure_maj[ 4] = pure_maj[ 9] * 3/2       # E  5/4
+pure_maj[11] = pure_maj[ 4] * 3/2       # B  15/8
+pure_maj[ 6] = pure_maj[11] * 3/2       # F# 45/32
+--
+pure_maj[ 5] = pure_maj[ 0] * 2/3       # F  4/3
+pure_maj[10] = pure_maj[ 5] * 2/3 * sc  # Bb 9/5
+pure_maj[ 3] = pure_maj[10] * 2/3       # Eb 6/5
+pure_maj[ 8] = pure_maj[ 3] * 2/3       # Ab 8/5
+pure_maj[ 1] = pure_maj[ 8] * 2/3       # Db 16/15
+
+It can be understood that pure intonation is similar to Pythagoras
+tuning fundamentally except descending with 1sc at A and rising with
+1sc at B flat while going up and down respectively from the tonic in
+the circle of fifths.
+
+Similarly, expressed Pythagoras tuning and pure intonation (minor)
+chromatic scale by the following recurrence relations.  Although the
+fractions written to right-hand side is terrible values, the
+recurrence relations themselves are very simple.
+
+[Pythagoras tuning (minor) chromatic scale]
+pytha_min[ 0] = 1                       # C  1
+pytha_min[ 7] = pytha_min[ 0] * 3/2     # G  3/2
+pytha_min[ 2] = pytha_min[ 7] * 3/2     # D  9/8
+pytha_min[ 9] = pytha_min[ 2] * 3/2     # A  27/16
+pytha_min[ 4] = pytha_min[ 9] * 3/2     # E  81/64
+pytha_min[11] = pytha_min[ 4] * 3/2     # B  243/128
+pytha_min[ 6] = pytha_min[11] * 3/2     # F# 729/512
+pytha_min[ 1] = pytha_min[ 6] * 3/2     # C# 2187/2048
+pytha_min[ 8] = pytha_min[ 1] * 3/2     # G# 6561/4096
+pytha_min[ 3] = pytha_min[ 8] * 3/2     # D# 19683/16384
+--
+pytha_min[ 5] = pytha_min[ 0] * 2/3     # F  4/3
+pytha_min[10] = pytha_min[ 5] * 2/3     # Bb 16/9
+
+[pure intonation (minor) chromatic scale]
+pure_min[ 0] = 1                  * sc  # C  1     * sc
+pure_min[ 7] = pure_min[ 0] * 3/2       # G  3/2   * sc
+pure_min[ 2] = pure_min[ 7] * 3/2 / sc  # D  10/9  * sc
+pure_min[ 9] = pure_min[ 2] * 3/2       # A  5/3   * sc
+pure_min[ 4] = pure_min[ 9] * 3/2       # E  5/4   * sc
+pure_min[11] = pure_min[ 4] * 3/2       # B  15/8  * sc
+pure_min[ 6] = pure_min[11] * 3/2 / sc  # F# 25/18 * sc
+pure_min[ 1] = pure_min[ 6] * 3/2       # C# 25/24 * sc
+pure_min[ 8] = pure_min[ 1] * 3/2       # G# 25/16 * sc
+pure_min[ 3] = pure_min[ 8] * 3/2       # D# 75/64 * sc
+--
+pure_min[ 5] = pure_min[ 0] * 2/3       # F  4/3   * sc
+pure_min[10] = pure_min[ 5] * 2/3       # Bb 16/9  * sc
+
+The differences from the major tuning are that the boundary of
+Pythagoras tuning goes up three positions, that the positions of
+descending with syntonic comma are changed, and that pure intonation
+is adjusted 1sc higher so that melodic parts' tonic (Pythagoras
+tuning) and harmonic parts' tonic (pure intonation) are overlapped.
+
+By the way, mean-tone tuning is also prepared besides Pythagoras
+tuning and pure intonation as preset temperament of TiMidity++.  While
+mean-tone tuning (major) is based on the general one whose major
+thirds are pure, mean-tone tuning (minor) is based on Salinas tuning
+whose minor thirds are pure.  Both mean-tone tuning (major) chromatic
+scale and mean-tone tuning (minor) chromatic scale can be expressed by
+the following recurrence relations.
+
+[mean-tone tuning (major) chromatic scale]
+mt_maj[ 0] = 1                          # C  1
+mt_maj[ 7] = mt_maj[ 0] * 5^(1/4)       # G  5^(1/4)
+mt_maj[ 2] = mt_maj[ 7] * 5^(1/4)       # D  5^(1/2) / 2
+mt_maj[ 9] = mt_maj[ 2] * 5^(1/4)       # A  5^(3/4) / 2
+mt_maj[ 4] = mt_maj[ 9] * 5^(1/4)       # E  5/4
+mt_maj[11] = mt_maj[ 4] * 5^(1/4)       # B  5^(5/4) / 4
+mt_maj[ 6] = mt_maj[11] * 5^(1/4)       # F# 5^(3/2) / 8
+--
+mt_maj[ 5] = mt_maj[ 0] / 5^(1/4)       # F  2 / 5^(1/4)
+mt_maj[10] = mt_maj[ 5] / 5^(1/4)       # Bb 4 / 5^(1/2)
+mt_maj[ 3] = mt_maj[10] / 5^(1/4)       # Eb 4 / 5^(3/4)
+mt_maj[ 8] = mt_maj[ 3] / 5^(1/4)       # Ab 8/5
+mt_maj[ 1] = mt_maj[ 8] / 5^(1/4)       # Db 8 / 5^(5/4)
+
+[mean-tone tuning (minor) chromatic scale]
+mt_min[ 0] = 1          * sc            # C  1                 * sc
+mt_min[ 7] = mt_min[ 0] * (10/3)^(1/3)  # G  (10/3)^(1/3)      * sc
+mt_min[ 2] = mt_min[ 7] * (10/3)^(1/3)  # D  (10/3)^(2/3) /  2 * sc
+mt_min[ 9] = mt_min[ 2] * (10/3)^(1/3)  # A  5/3               * sc
+mt_min[ 4] = mt_min[ 9] * (10/3)^(1/3)  # E  (10/3)^(4/3) /  4 * sc
+mt_min[11] = mt_min[ 4] * (10/3)^(1/3)  # B  (10/3)^(5/3) /  4 * sc
+mt_min[ 6] = mt_min[11] * (10/3)^(1/3)  # F# 25/18             * sc
+mt_min[ 1] = mt_min[ 6] * (10/3)^(1/3)  # C# (10/3)^(7/3) / 16 * sc
+mt_min[ 8] = mt_min[ 1] * (10/3)^(1/3)  # G# (10/3)^(8/3) / 16 * sc
+mt_min[ 3] = mt_min[ 8] * (10/3)^(1/3)  # D# 125/108           * sc
+--
+mt_min[ 5] = mt_min[ 0] / (10/3)^(1/3)  # F  2 / (10/3)^(1/3)  * sc
+mt_min[10] = mt_min[ 5] / (10/3)^(1/3)  # Bb 4 / (10/3)^(2/3)  * sc
+
+The point that the boundary of mean-tone tuning goes up three
+positions, and that mean-tone tuning is adjusted 1sc higher, are the
+same situation as Pythagoras tuning and pure intonation.
+
+Now, I think that mean-tone tuning could use for a harmony-melody
+because of the characteristic that is more harmony-like than
+Pythagoras tuning, and a scale is not uneven like pure intonation.
+
+----------------------------------------------------------------------
+The major/minor in the temperament tonality
+----------------------------------------------------------------------
+
+The basic chords used in general music in C major are not only C, G, F
+but also Am, Em, Dm which appear frequently.  There may also be Cm,
+Gm, Fm, A, E, D, and so on.  Since these chords are not supported only
+in pure intonation (C major), players need to change temperaments
+according to progress of music.
+
+To solve the issue, TiMidity++ prepares
+
+(1) pure intonation (C major)
+       based on the pitch of C in Pythagoras tuning (C major)
+(2) pure intonation (A minor)
+       based on the pitch of A in Pythagoras tuning (A minor)
+(3) pure intonation (passing C major)
+       based on the pitch of A in Pythagoras tuning (C major)
+(4) pure intonation (passing A minor)
+       based on the pitch of C in Pythagoras tuning (A minor)
+
+I will explain more precisely.  The following table gives the lattice
+(Cartesian model) of the scale system:
+
+-----------------------------------------------------------------------------
+D--   A--   E--   B--   F#--  C#--  G#--  D#--  A#--  E#--  B#--  F##-- C##--
+Bb-   F-    C-    G-    D-    A-    E-    B-    F#-   C#-   G#-   D#-   A#-  
+Gb    Db    Ab    Eb    Bb    F     C     G     D     A     E     B     F#   
+Ebb+  Bbb+  Fb+   Cb+   Gb+   Db+   Ab+   Eb+   Bb+   F+    C+    G+    D+   
+Cbb++ Gbb++ Dbb++ Abb++ Ebb++ Bbb++ Fb++  Cb++  Gb++  Db++  Ab++  Eb++  Bb++ 
+-----------------------------------------------------------------------------
+
+The notation "ABCDEFG" is according to Pythagoras tuning.  The
+notation "+", "-", "++" and "--" mean 1sc higher, 1sc lower, 2sc
+higher and 2sc lower respectively.
+
+A certain pure intonation is given as 12 sounds arranged by the
+rectangle of 4x3 from the lattice.  For example, C tuning, A tuning,
+A- tuning and C+ tuning are given as following tables respectively:
+
+[C tuning (C major)]
+----------------------
+A-    E-    B-    F#- 
+F     C     G     D   
+Db+   Ab+   Eb+   Bb+ 
+----------------------
+
+[A tuning (A minor)]
+----------------------
+F#-   C#-   G#-   D#- 
+D     A     E     B   
+Bb+   F+    C+    G+  
+----------------------
+
+[C+ tuning (passing C major)]
+----------------------
+A     E     B     F#  
+F+    C+    G+    D+  
+Db++  Ab++  Eb++  Bb++
+----------------------
+
+[A- tuning (passing A minor)]
+----------------------
+F#--  C#--  G#--  D#--
+D-    A-    E-    B-  
+Bb    F     C     G   
+----------------------
+
+I think it is nice to select the tuning combination whose pitch of
+parallel key is slightly lower for major music, and slightly higher
+for minor music.
+
+----------------------------------------------------------------------
+User-defined temperament entry
+----------------------------------------------------------------------
+
+The function of user-defined temperament entry (experimental) is
+implemented in TiMidity++.  This corresponds to (18) of MIDI Tuning
+Standard summary (see the end of this document).  For example, it can
+generate various temperaments by the following SysEx's.
+
+[equal temperament]
+f0 7e 00 08 0c 00                                   ; temper prog number
+65 71 75 61 6c 00 00 00 00 00 00 00 00 00 00 00     ; "equal"
+01                                                  ; number of formula
+0f 7f 00 00 01 01 02 01 07 0c                       ; (both) 2^(7/12)
+f7
+
+[Pythagoras tuning]
+f0 7e 00 08 0c 01                                   ; temper prog number
+50 79 74 68 61 67 6f 72 61 73 00 00 00 00 00 00     ; "Pythagoras"
+02                                                  ; number of formula
+00 3f 40 1f 03 02 01 01 00 01                       ; (maj) 3/2
+43 7f 00 03 03 02 01 01 00 01                       ; (min) 3/2
+f7
+
+[mean-tone tuning]
+f0 7e 00 08 0c 02                                   ; temper prog number
+6d 65 61 6e 2d 74 6f 6e 65 00 00 00 00 00 00 00     ; "mean-tone"
+02                                                  ; number of formula
+00 3f 40 1f 01 01 05 01 01 04                       ; (maj) 5^(1/4)
+43 7f 00 03 01 01 0a 03 01 03                       ; (min) (10/3)^(1/3)
+f7
+
+[pure intonation]
+f0 7e 00 08 0c 03                                   ; temper prog number
+70 75 72 65 20 69 6e 74 6f 6e 61 74 69 6f 6e 00     ; "pure intonation"
+04                                                  ; number of formula
+00 3f 40 1f 03 02 01 01 00 01                       ; (maj) 3/2
+00 04 40 02 05 01 02 03 04 01                       ; (maj) 5*(2/3)^4
+43 7f 00 03 03 02 01 01 00 01                       ; (min) 3/2
+40 22 00 00 05 01 02 03 04 01                       ; (min) 5*(2/3)^4
+f7
+
+[Kirnberger-3]
+f0 7e 00 08 0c 00                                   ; temper prog number
+4b 69 72 6e 62 65 72 67 65 72 2d 33 00 00 00 00     ; "Kirnberger-3"
+02                                                  ; number of formula
+00 0f 00 00 01 01 05 01 01 04                       ; (both) 5^(1/4)
+00 30 00 1f 03 02 01 01 00 01                       ; (both) 3/2
+f7
+
+[Hirashima temperament]
+f0 7e 00 08 0c 01                                   ; temper prog number
+48 69 72 61 73 68 69 6d 61 00 00 00 00 00 00 00     ; "Hirashima"
+02                                                  ; number of formula
+00 1f 00 03 01 01 05 01 01 04                       ; (both) 5^(1/4)
+00 00 00 3c 03 02 01 01 00 01                       ; (both) 3/2
+f7
+
+[Werckmeister-3]
+f0 7e 00 08 0c 02                                   ; temper prog number
+57 65 72 63 6b 6d 65 69 73 74 65 72 2d 33 00 00     ; "Werckmeister-3"
+02                                                  ; number of formula
+00 07 00 00 01 09 02 01 0f 04                       ; (both) 2^(15/4)/9
+00 18 00 3f 03 02 01 01 00 01                       ; (both) 3/2
+f7
+
+[well-temperament]
+f0 7e 00 08 0c 03                                   ; temper prog number
+77 65 6c 6c 2d 74 65 6d 70 65 72 00 00 00 00 00     ; "well-temper"
+02                                                  ; number of formula
+00 07 00 00 01 09 02 01 0f 04                       ; (both) 2^(15/4)/9
+00 00 01 7f 03 02 01 01 00 01                       ; (both) 3/2
+f7
+
+TAMUKI Shoichi <tamuki@linet.gr.jp>
index e03a4ca..748e7ad 100644 (file)
@@ -26,4 +26,5 @@ EXTRA_DIST = \
        README.tk \
        README.xskin \
        README.xaw \
-       README.m2m
+       README.m2m \
+       README.mts
index f568904..053e800 100644 (file)
@@ -251,7 +251,8 @@ EXTRA_DIST = \
        README.tk \
        README.xskin \
        README.xaw \
-       README.m2m
+       README.m2m \
+       README.mts
 
 subdir = doc/ja_JP.ujis
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
index 0981922..3f2b82f 100644 (file)
@@ -1,13 +1,13 @@
-====================== \e$B%@%$%J%_%C%/%$%s%?!<%U%'!<%9\e(B ======================
-`-i' \e$B%*%W%7%g%s$G;XDj$9$k%$%s%?!<%U%'!<%9%b%8%e!<%k$r!$%@%$%J%_%C%/%j%s%/$r\e(B
-\e$BMQ$$$F%m!<%I$9$k$3$H$,$G$-$^$9!%\e(B
-SHARED_LIB_PATH \e$B%G%#%l%/%H%j$N2<$K!$\e(B(SHARED_LIB_PATH \e$B$O%^%/%m\e(B)
+====================== ¥À¥¤¥Ê¥ß¥Ã¥¯¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹ ======================
+`-i' ¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤹ¤ë¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¥â¥¸¥å¡¼¥ë¤ò¡¤¥À¥¤¥Ê¥ß¥Ã¥¯¥ê¥ó¥¯¤ò
+ÍѤ¤¤Æ¥í¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡¥
+SHARED_LIB_PATH ¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ë¡¤(SHARED_LIB_PATH ¤Ï¥Þ¥¯¥í)
 
 interface_<ID>.so
 
-\e$B$H$$$&%7%'%"!<%I%i%$%V%i%j$r:n@.$7$^$9!%$3$3$G!$\e(B<ID> \e$B$O\e(B -i \e$B%*%W%7%g%s$G;XDj\e(B
-\e$B$9$k%$%s%?!<%U%'!<%9\e(B ID \e$B$G$9!%$3$N\e(B \e$B%7%'%"!<%I%i%$%V%i%jFb$G!$0J2<$N$h$&$J4X?t$r\e(B
-\e$B:n@.$7$F$*$-$^$9!%\e(B(\e$B$3$3$G$b\e(B <ID> \e$B$K$O\e(B \e$B%$%s%?!<%U%'!<%9\e(B ID \e$B$,$O$$$j$^$9!%\e(B)
+¤È¤¤¤¦¥·¥§¥¢¡¼¥É¥é¥¤¥Ö¥é¥ê¤òºîÀ®¤·¤Þ¤¹¡¥¤³¤³¤Ç¡¤<ID> ¤Ï -i ¥ª¥×¥·¥ç¥ó¤Ç»ØÄê
+¤¹¤ë¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹ ID ¤Ç¤¹¡¥¤³¤Î ¥·¥§¥¢¡¼¥É¥é¥¤¥Ö¥é¥êÆâ¤Ç¡¤°Ê²¼¤Î¤è¤¦¤Ê´Ø¿ô¤ò
+ºîÀ®¤·¤Æ¤ª¤­¤Þ¤¹¡¥(¤³¤³¤Ç¤â <ID> ¤Ë¤Ï ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹ ID ¤¬¤Ï¤¤¤ê¤Þ¤¹¡¥)
 
 ControlMode* interface_<ID>_loader(void)
 {
@@ -17,22 +17,22 @@ ControlMode* interface_<ID>_loader(void)
        return ctl;
 }
 
--i<ID> \e$B$G;XDj$7$?%@%$%J%_%C%/%$%s%?!<%U%'!<%9$O!$\e(B
-interface_<ID>.so \e$B$,FI$_9~$^$l!$%$%s%?!<%U%'!<%9$N<BBN$O!$\e(B
-interface_<ID>_loader() \e$B$,%3!<%k$5$l$k$3$H$G:n@.$5$l$^$9!%\e(B
+-i<ID> ¤Ç»ØÄꤷ¤¿¥À¥¤¥Ê¥ß¥Ã¥¯¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ï¡¤
+interface_<ID>.so ¤¬Æɤ߹þ¤Þ¤ì¡¤¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Î¼ÂÂΤϡ¤
+interface_<ID>_loader() ¤¬¥³¡¼¥ë¤µ¤ì¤ë¤³¤È¤ÇºîÀ®¤µ¤ì¤Þ¤¹¡¥
 
-\e$B$^$?!$\e(BSHARED_LIB_PATH \e$B%G%#%l%/%H%j$N2<$K!$\e(B
+¤Þ¤¿¡¤SHARED_LIB_PATH ¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Ë¡¤
 
 interface_<ID>.txt
 
-\e$B$H$$$&%U%!%$%k$N\e(B 1 \e$B9TL\$K%$%s%?!<%U%'!<%9$N4JC1$J@bL@$r5-=R$7$F$*$/$H!$\e(B
-\e$B$=$NJ8;zNs$,\e(B `-h' \e$B%*%W%7%g%s;XDj;~$KI=<($5$l$^$9!%\e(B
-
-\e$BCm0U!'\e(B
-\e$B%@%$%J%_%C%/%j%s%/$GFI$_9~$`$Y$-%$%s%?!<%U%'!<%9$O!$\e(Bmake \e$B;~$K$=$N%$%s\e(B
-\e$B%?!<%U%'!<%9$r30$7$F$/$@$5$$!%\e(B-i<ID> \e$B%*%W%7%g%s$G\e(B TiMidity \e$B$r5/F0$9$k\e(B
-\e$B$H!$$^$:!$\e(Bmake \e$B;~$K;XDj$5$l$?%9%?%F%#%C%/$J%$%s%?!<%U%'!<%9$rC5$7$^$9!%\e(B
-\e$B$b$7$3$N;~;XDj$5$l$?%$%s%?!<%U%'!<%9$,AH$_9~$^$l$F$$$k$H!$$=$N%$%s%?!<\e(B
-\e$B%U%'!<%9$,MQ$$$i$l!$%@%$%J%_%C%/%j%s%/MQ$N%$%s%?!<%U%'!<%9$OFI$_9~$^$l\e(B
-\e$B$^$;$s!%%9%?%F%#%C%/$J%$%s%?!<%U%'!<%9$,8+$D$+$i$J$$>l9g$K8B$j!$%@%$%J\e(B
-\e$B%_%C%/%j%s%/MQ$N%$%s%?!<%U%'!<%9$r%5!<%A$7$^$9!%\e(B
+¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤Î 1 ¹ÔÌܤ˥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Î´Êñ¤ÊÀâÌÀ¤òµ­½Ò¤·¤Æ¤ª¤¯¤È¡¤
+¤½¤Îʸ»úÎ󤬠`-h' ¥ª¥×¥·¥ç¥ó»ØÄê»þ¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡¥
+
+Ãí°Õ¡§
+¥À¥¤¥Ê¥ß¥Ã¥¯¥ê¥ó¥¯¤ÇÆɤ߹þ¤à¤Ù¤­¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ï¡¤make »þ¤Ë¤½¤Î¥¤¥ó
+¥¿¡¼¥Õ¥§¡¼¥¹¤ò³°¤·¤Æ¤¯¤À¤µ¤¤¡¥-i<ID> ¥ª¥×¥·¥ç¥ó¤Ç TiMidity ¤òµ¯Æ°¤¹¤ë
+¤È¡¤¤Þ¤º¡¤make »þ¤Ë»ØÄꤵ¤ì¤¿¥¹¥¿¥Æ¥£¥Ã¥¯¤Ê¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òõ¤·¤Þ¤¹¡¥
+¤â¤·¤³¤Î»þ»ØÄꤵ¤ì¤¿¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤¬ÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ë¤È¡¤¤½¤Î¥¤¥ó¥¿¡¼
+¥Õ¥§¡¼¥¹¤¬ÍѤ¤¤é¤ì¡¤¥À¥¤¥Ê¥ß¥Ã¥¯¥ê¥ó¥¯ÍѤΥ¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤ÏÆɤ߹þ¤Þ¤ì
+¤Þ¤»¤ó¡¥¥¹¥¿¥Æ¥£¥Ã¥¯¤Ê¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ë¸Â¤ê¡¤¥À¥¤¥Ê
+¥ß¥Ã¥¯¥ê¥ó¥¯ÍѤΥ¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤ò¥µ¡¼¥Á¤·¤Þ¤¹¡¥
diff --git a/doc/ja_JP.ujis/README.mts b/doc/ja_JP.ujis/README.mts
new file mode 100644 (file)
index 0000000..5e9823d
--- /dev/null
@@ -0,0 +1,634 @@
+----------------------------------------------------------------------
+MIDI Tuning Standard³µÎ¬
+----------------------------------------------------------------------
+
+(1) ¥Ð¥ë¥¯²»Äø¥À¥ó¥×Í×µá(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 00 tt F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+00             ¥µ¥ÖID#2¡§¡È¥Ð¥ë¥¯²»Äø¥À¥ó¥×Í×µá(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+F7             EOX
+----------------------------------------------------------------------
+
+(2) ¥Ð¥ë¥¯²»Äø¥À¥ó¥×(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 01 tt <tuning name> [xx yy zz] ... chksum F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+01             ¥µ¥ÖID#2¡§¡È¥Ð¥ë¥¯²»Äø¥À¥ó¥×(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+<tuning name>  ²»Äø̾(ASCII16ʸ»ú)
+[xx yy zz]     Ã±²»¤Î²»Äø¥Ç¡¼¥¿(128²ó·«¤êÊÖ¤·)
+chksum         ¥Á¥§¥Ã¥¯¥µ¥à(F0,F7,chksum¤ò½ü¤¤¤¿Á´¥Ð¥¤¥È¤ÎXOR)
+F7             EOX
+----------------------------------------------------------------------
+
+(3) ¥­¡¼Ã±°Ì²»ÄøÊѹ¹(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 02 tt ll [kk xx yy zz] ... F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+02             ¥µ¥ÖID#2¡§¡È¥­¡¼Ã±°Ì²»ÄøÊѹ¹(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+ll             Êѹ¹¤Î¿ô([kk xx yy zz]¤Î¥»¥Ã¥È)
+[kk            MIDI¥­¡¼ÈÖ¹æ
+ xx yy zz]     ¥­¡¼¤Î²»Äø¥Ç¡¼¥¿(Êѹ¹²ó·«¤êÊÖ¤·)
+F7             EOX
+----------------------------------------------------------------------
+
+(4) ³ÈÄ¥¥Ð¥ë¥¯²»Äø¥À¥ó¥×Í×µá(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 03 bb tt F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+03             ¥µ¥ÖID#2¡§¡È³ÈÄ¥¥Ð¥ë¥¯²»Äø¥À¥ó¥×Í×µá(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+F7             EOX
+----------------------------------------------------------------------
+
+(5) ³ÈÄ¥¥Ð¥ë¥¯²»Äø¥À¥ó¥×(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 04 bb tt <tuning name> [xx yy zz] ... chksum F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ±þÅú¥Ç¥Ð¥¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+04             ¥µ¥ÖID#2¡§¡È³ÈÄ¥¥Ð¥ë¥¯²»Äø¥À¥ó¥×(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+<tuning name>  ²»Äø̾(ASCII16ʸ»ú)
+[xx yy zz]     Ã±²»¤Î²»Äø¥Ç¡¼¥¿(128²ó·«¤êÊÖ¤·)
+chksum         ¥Á¥§¥Ã¥¯¥µ¥à(F0,F7,chksum¤ò½ü¤¤¤¿Á´¥Ð¥¤¥È¤ÎXOR)
+F7             EOX
+----------------------------------------------------------------------
+
+(6) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö²»Äø¥À¥ó¥× 1¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 05 bb tt <tuning name> [xx] ... chksum F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+05             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö²»Äø¥À¥ó¥×
+                               1¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+<tuning name>  ²»Äø̾(ASCII16ʸ»ú)
+[xx]           12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(12¥Ð¥¤¥È)
+                       00H¡§¡Ý64¥»¥ó¥È
+                       40H¡§¡Þ 0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH¡§¡Ü63¥»¥ó¥È
+chksum         ¥Á¥§¥Ã¥¯¥µ¥à(F0,F7,chksum¤ò½ü¤¤¤¿Á´¥Ð¥¤¥È¤ÎXOR)
+F7             EOX
+----------------------------------------------------------------------
+
+(7) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö²»Äø¥À¥ó¥× 2¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 06 bb tt <tuning name> [xx yy] ... chksum F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+06             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö²»Äø¥À¥ó¥×
+                               2¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+<tuning name>  ²»Äø̾(ASCII16ʸ»ú)
+[xx yy]                12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(24¥Ð¥¤¥È)
+                       00H 00H¡§¡Ý100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,192ÃÊ)
+                       40H 00H¡§¡Þ  0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH 7FH¡§¡Ü100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,191ÃÊ)
+chksum         ¥Á¥§¥Ã¥¯¥µ¥à(F0,F7,chksum¤ò½ü¤¤¤¿Á´¥Ð¥¤¥È¤ÎXOR)
+F7             EOX
+----------------------------------------------------------------------
+
+(8) ³ÈÄ¥¥­¡¼Ã±°Ì²»ÄøÊѹ¹(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+07             ¥µ¥ÖID#2¡§¡È³ÈÄ¥¥­¡¼Ã±°Ì²»ÄøÊѹ¹(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+ll             Êѹ¹¤Î¿ô([kk xx yy zz]¤Î¥»¥Ã¥È)
+[kk            MIDI¥­¡¼ÈÖ¹æ
+ xx yy zz]     ¥­¡¼¤Î²»Äø¥Ç¡¼¥¿(Êѹ¹²ó·«¤êÊÖ¤·)
+F7             EOX
+----------------------------------------------------------------------
+
+(9) ³ÈÄ¥¥­¡¼Ã±°Ì²»ÄøÊѹ¹(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 07 bb tt ll [kk xx yy zz] ... F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+07             ¥µ¥ÖID#2¡§¡È³ÈÄ¥¥­¡¼Ã±°Ì²»ÄøÊѹ¹(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+bb             ²»Äø¥Ð¥ó¥¯ÈÖ¹æ(0¡Á127)
+tt             ²»Äø¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á127)
+ll             Êѹ¹¤Î¿ô([kk xx yy zz]¤Î¥»¥Ã¥È)
+[kk            MIDI¥­¡¼ÈÖ¹æ
+ xx yy zz]     ¥­¡¼¤Î²»Äø¥Ç¡¼¥¿(Êѹ¹²ó·«¤êÊÖ¤·)
+F7             EOX
+----------------------------------------------------------------------
+
+(10) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥° 1¥Ð¥¤¥È·Á¼°(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 08 ff gg hh [ss] ... F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+08             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥°
+                               1¥Ð¥¤¥È·Á¼°(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+[ss]           12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(12¥Ð¥¤¥È)
+                       00H¡§¡Ý64¥»¥ó¥È
+                       40H¡§¡Þ 0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH¡§¡Ü63¥»¥ó¥È
+F7             EOX
+----------------------------------------------------------------------
+
+(11) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥° 1¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 08 ff gg hh [ss] ... F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+08             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥°
+                               1¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+[ss]           12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(12¥Ð¥¤¥È)
+                       00H¡§¡Ý64¥»¥ó¥È
+                       40H¡§¡Þ 0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH¡§¡Ü63¥»¥ó¥È
+F7             EOX
+----------------------------------------------------------------------
+
+(12) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥° 2¥Ð¥¤¥È·Á¼°(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 09 ff gg hh [ss tt] ... F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+09             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥°
+                               2¥Ð¥¤¥È·Á¼°(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+[ss tt]                12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(24¥Ð¥¤¥È)
+                       00H 00H¡§¡Ý100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,192ÃÊ)
+                       40H 00H¡§¡Þ  0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH 7FH¡§¡Ü100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,191ÃÊ)
+F7             EOX
+----------------------------------------------------------------------
+
+(13) ¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥° 2¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 09 ff gg hh [ss tt] ... F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+09             ¥µ¥ÖID#2¡§¡È¥¹¥±¡¼¥ë/¥ª¥¯¥¿¡¼¥Ö¡¦¥Á¥å¡¼¥Ë¥ó¥°
+                               2¥Ð¥¤¥È·Á¼°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+[ss tt]                12Ⱦ²»(¥É¡Á¥·)¥Á¥å¡¼¥Ë¥ó¥°¡¦¥ª¥Õ¥»¥Ã¥È(24¥Ð¥¤¥È)
+                       00H 00H¡§¡Ý100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,192ÃÊ)
+                       40H 00H¡§¡Þ  0¥»¥ó¥È(Ê¿¶ÑΧ)
+                       7FH 7FH¡§¡Ü100¥»¥ó¥È(0.012207¥»¥ó¥È¤Î8,191ÃÊ)
+F7             EOX
+----------------------------------------------------------------------
+
+(14) ²»Î§Ä´À­À©¸æ¥Á¥å¡¼¥Ë¥ó¥°(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 0A sf mi F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+0A             ¥µ¥ÖID#2¡§¡È²»Î§Ä´À­À©¸æ¥Á¥å¡¼¥Ë¥ó¥°(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+sf             Ä´¹æ¤Î¿ô(1¥Ð¥¤¥È)
+                       39H¡§¢õ¡ß7
+                       3FH¡§¢õ¡ß1
+                       40H¡§Ä´¹æ¤Ê¤·
+                       41H¡§¢ô¡ß1
+                       47H¡§¢ô¡ß7
+mi             Ä¹Ä´/ûĴ(1¥Ð¥¤¥È)
+                       00H¡§Ä¹Ä´
+                       01H¡§Ã»Ä´
+                       02H¡§·Ð²áŪĹĴ
+                       03H¡§·Ð²áŪûĴ
+F7             EOX
+----------------------------------------------------------------------
+
+(15) ²»Î§Ä´À­À©¸æ¥Á¥å¡¼¥Ë¥ó¥°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0A sf mi F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+0A             ¥µ¥ÖID#2¡§¡È²»Î§Ä´À­À©¸æ¥Á¥å¡¼¥Ë¥ó¥°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+sf             Ä´¹æ¤Î¿ô(1¥Ð¥¤¥È)
+                       39H¡§¢õ¡ß7
+                       3FH¡§¢õ¡ß1
+                       40H¡§Ä´¹æ¤Ê¤·
+                       41H¡§¢ô¡ß1
+                       47H¡§¢ô¡ß7
+mi             Ä¹Ä´/ûĴ(1¥Ð¥¤¥È)
+                       00H¡§Ä¹Ä´
+                       01H¡§Ã»Ä´
+                       02H¡§·Ð²áŪĹĴ
+                       03H¡§·Ð²áŪûĴ
+F7             EOX
+----------------------------------------------------------------------
+
+(16) ²»Î§¼ïÊÌÀ©¸æ¥Á¥å¡¼¥Ë¥ó¥°(¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7F <device ID> 08 0B ff gg hh tt F7
+
+F0 7F          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+0B             ¥µ¥ÖID#2¡§¡È²»Î§¼ïÊÌÀ©¸æ¥Á¥å¡¼¥Ë¥ó¥°(¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡§¥Ý¡¼¥ÈA/B
+                       ¥Ó¥Ã¥È3¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+tt             ²»Î§¼ïÊÌ(1¥Ð¥¤¥È)
+                       00H¡§Ê¿¶ÑΧ
+                       01H¡§¥Ô¥¿¥´¥é¥¹²»Î§
+                       02H¡§ÃæÁ´²»Î§
+                       03H¡§½ãÀµÎ§
+                       40H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#0
+                       41H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#1
+                       42H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#2
+                       43H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#3
+F7             EOX
+----------------------------------------------------------------------
+
+(17) ²»Î§¼ïÊÌÀ©¸æ¥Á¥å¡¼¥Ë¥ó¥°(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0B ff gg hh tt F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+0B             ¥µ¥ÖID#2¡§¡È²»Î§¼ïÊÌÀ©¸æ¥Á¥å¡¼¥Ë¥ó¥°(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+ff             ¥Á¥ã¥ó¥Í¥ë/¥ª¥×¥·¥ç¥ó¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á1¡§¥Á¥ã¥ó¥Í¥ë15¡Á16
+                       ¥Ó¥Ã¥È2¡§¥Ý¡¼¥ÈA/B
+                       ¥Ó¥Ã¥È3¡Á6¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+gg             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë8¡Á14
+hh             ¥Á¥ã¥ó¥Í¥ë¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á6¡§¥Á¥ã¥ó¥Í¥ë1¡Á7
+tt             ²»Î§¼ïÊÌ(1¥Ð¥¤¥È)
+                       00H¡§Ê¿¶ÑΧ
+                       01H¡§¥Ô¥¿¥´¥é¥¹²»Î§
+                       02H¡§ÃæÁ´²»Î§
+                       03H¡§½ãÀµÎ§
+                       40H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#0
+                       41H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#1
+                       42H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#2
+                       43H¡§¥æ¡¼¥¶ÄêµÁ²»Î§#3
+F7             EOX
+----------------------------------------------------------------------
+
+(18) ¥æ¡¼¥¶ÄêµÁ²»Î§ÅÐÏ¿(Èó¥ê¥¢¥ë¥¿¥¤¥à)
+----------------------------------------------------------------------
+F0 7E <device ID> 08 0C tt <temper name>
+               ll [fh fl bh bl aa bb cc dd ee ff] ... F7
+
+F0 7E          ¥æ¥Ë¥Ð¡¼¥µ¥ë¡¦Èó¥ê¥¢¥ë¥¿¥¤¥àSysEx.¥Ø¥Ã¥À
+<device ID>    ÂоݥǥХ¤¥¹ID(7F¡§Á´¥Ç¥Ð¥¤¥¹)
+08             ¥µ¥ÖID#1¡§¡ÈMIDI¥Á¥å¡¼¥Ë¥ó¥°É¸½à¡É
+0C             ¥µ¥ÖID#2¡§¡È¥æ¡¼¥¶ÄêµÁ²»Î§¥À¥ó¥×(Èó¥ê¥¢¥ë¥¿¥¤¥à)¡É
+tt             ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ(0¡Á63)
+<temper name>  ²»Î§Ì¾(ASCII16ʸ»ú)
+ll             Äê¼°¤Î¿ô([fh fl bh bl aa bb cc dd ee ff]¤Î¥»¥Ã¥È)
+[fh            Å¬ÍѲ»Äø¥Ó¥Ã¥È¥Þ¥¹¥¯¡¦¥Ð¥¤¥È1
+                       ¥Ó¥Ã¥È0¡Á3¡§¸ÞÅÙ·÷¾å¾º8¡Á11ÃÊ
+                       ¥Ó¥Ã¥È4¡Á5¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+                       ¥Ó¥Ã¥È6¡§Ä¹Ä´¥Õ¥é¥°(¥ê¥Ð¡¼¥µ¥ë)
+ fl            Å¬ÍѲ»Äø¥Ó¥Ã¥È¥Þ¥¹¥¯¡¦¥Ð¥¤¥È2
+                       ¥Ó¥Ã¥È0¡Á6¡§¸ÞÅÙ·÷¾å¾º1¡Á7ÃÊ
+ bh            Å¬ÍѲ»Äø¥Ó¥Ã¥È¥Þ¥¹¥¯¡¦¥Ð¥¤¥È3
+                       ¥Ó¥Ã¥È0¡Á3¡§¸ÞÅÙ·÷²¼¹ß8¡Á11ÃÊ
+                       ¥Ó¥Ã¥È4¡Á5¡§¾­Íè¤Î³ÈÄ¥¤Î¤¿¤áͽÌó
+                       ¥Ó¥Ã¥È6¡§Ã»Ä´¥Õ¥é¥°(¥ê¥Ð¡¼¥µ¥ë)
+ bl            Å¬ÍѲ»Äø¥Ó¥Ã¥È¥Þ¥¹¥¯¡¦¥Ð¥¤¥È4
+                       ¥Ó¥Ã¥È0¡Á6¡§¸ÞÅÙ·÷²¼¹ß1¡Á7ÃÊ
+ aa bb         Ê¬¿ô(aa/bb)
+ cc dd ee ff]  ¤Ù¤­¾è((cc/dd)^(ee/ff))(Äê¼°¤Î¿ô²ó·«¤êÊÖ¤·)
+F7             EOX
+----------------------------------------------------------------------
+
+----------------------------------------------------------------------
+²»Î§¼ïÊÌÀ©¸æ¥Á¥å¡¼¥Ë¥ó¥°¤Î¥×¥ê¥»¥Ã¥È²»Î§
+----------------------------------------------------------------------
+
+¤Þ¤º¡¤¥Ô¥¿¥´¥é¥¹²»Î§(ĹĴ)Ⱦ²»³¬¤ò¡¤²¼µ­¤Î¤è¤¦¤ÊÁ²²½¼°¤Çɽ¸½¤·¤Æ¤ª¤­¤Þ
+¤¹¡£¤³¤³¤Ç¡¤[]Æâ¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï¡¤¼ç²»¤ò´ð½à¤È¤·¤¿¥ª¥Õ¥»¥Ã¥È¤Ç¡¤±é»»·ë
+²Ì¤¬É¬¤º1¤È2¤Î´Ö¤Ë¼ý¤Þ¤ë¤è¤¦¤Ë¡¤É¬Íפ˱þ¤¸¤Æ2Çܤޤ¿¤Ï1/2Çܤ·¤Æ¤¤¤Þ¤¹¡£
+
+[¥Ô¥¿¥´¥é¥¹²»Î§(ĹĴ)Ⱦ²»³¬]
+pytha_maj[ 0] = 1                       # C  1
+pytha_maj[ 7] = pytha_maj[ 0] * 3/2     # G  3/2
+pytha_maj[ 2] = pytha_maj[ 7] * 3/2     # D  9/8
+pytha_maj[ 9] = pytha_maj[ 2] * 3/2     # A  27/16
+pytha_maj[ 4] = pytha_maj[ 9] * 3/2     # E  81/64
+pytha_maj[11] = pytha_maj[ 4] * 3/2     # B  243/128
+pytha_maj[ 6] = pytha_maj[11] * 3/2     # F# 729/512
+--
+pytha_maj[ 5] = pytha_maj[ 0] * 2/3     # F  4/3
+pytha_maj[10] = pytha_maj[ 5] * 2/3     # Bb 16/9
+pytha_maj[ 3] = pytha_maj[10] * 2/3     # Eb 32/27
+pytha_maj[ 8] = pytha_maj[ 3] * 2/3     # Ab 128/81
+pytha_maj[ 1] = pytha_maj[ 8] * 2/3     # Db 256/243
+
+¤³¤ì¤ËÂФ·¡¤½ãÀµÎ§(ĹĴ)Ⱦ²»³¬¤Ï¡¤²¼µ­¤Î¤è¤¦¤ÊÁ²²½¼°¤Çɽ¸½¤¹¤ë¤³¤È¤¬¤Ç
+¤­¤Þ¤¹¡£¤³¤³¤Ç¡¤sc¤Ï¥·¥ó¥È¥Ë¥Ã¥¯¡¦¥³¥ó¥Þ(=81/80)¤Î°ÕÌ£¤Ç¤¹¡£
+
+[½ãÀµÎ§(ĹĴ)Ⱦ²»³¬]
+pure_maj[ 0] = 1                        # C  1
+pure_maj[ 7] = pure_maj[ 0] * 3/2       # G  3/2
+pure_maj[ 2] = pure_maj[ 7] * 3/2       # D  9/8
+pure_maj[ 9] = pure_maj[ 2] * 3/2 / sc  # A  5/3
+pure_maj[ 4] = pure_maj[ 9] * 3/2       # E  5/4
+pure_maj[11] = pure_maj[ 4] * 3/2       # B  15/8
+pure_maj[ 6] = pure_maj[11] * 3/2       # F# 45/32
+--
+pure_maj[ 5] = pure_maj[ 0] * 2/3       # F  4/3
+pure_maj[10] = pure_maj[ 5] * 2/3 * sc  # Bb 9/5
+pure_maj[ 3] = pure_maj[10] * 2/3       # Eb 6/5
+pure_maj[ 8] = pure_maj[ 3] * 2/3       # Ab 8/5
+pure_maj[ 1] = pure_maj[ 8] * 2/3       # Db 16/15
+
+¼ç²»¤«¤é¸ÞÅÙ·÷¾å¾º»þ¤ËA¤Ç1sc²¼¹ß¡¤¸ÞÅÙ·÷²¼¹ß»þ¤ËBb¤Ç1sc¾å¾º¤¹¤ëÅÀ°Ê³°¤Ï¡¤
+´ðËÜŪ¤Ë¥Ô¥¿¥´¥é¥¹²»Î§¤ÈƱ¤¸¤È¤¤¤¦¤³¤È¤¬Íý²ò¤Ç¤­¤Þ¤¹¡£
+
+ƱÍͤˡ¤¥Ô¥¿¥´¥é¥¹²»Î§(ûĴ)Ⱦ²»³¬¤È½ãÀµÎ§(ĹĴ)Ⱦ²»³¬¤ò¡¤²¼µ­¤Î¤è¤¦¤Ê
+Á²²½¼°¤Çɽ¸½¤·¤Æ¤ß¤Þ¤¹¡£±¦Â¦¤Ë½ñ¤«¤ì¤¿Ê¬¿ô¤Ï¡¤¤â¤Î¤¹¤´¤¤ÃͤˤʤäƤ¤¤Þ
+¤¹¤¬¡¤Á²²½¼°¼«ÂΤϤȤƤ⥷¥ó¥×¥ë¤Ç¤¹¡£
+
+[¥Ô¥¿¥´¥é¥¹²»Î§(ûĴ)Ⱦ²»³¬]
+pytha_min[ 0] = 1                       # C  1
+pytha_min[ 7] = pytha_min[ 0] * 3/2     # G  3/2
+pytha_min[ 2] = pytha_min[ 7] * 3/2     # D  9/8
+pytha_min[ 9] = pytha_min[ 2] * 3/2     # A  27/16
+pytha_min[ 4] = pytha_min[ 9] * 3/2     # E  81/64
+pytha_min[11] = pytha_min[ 4] * 3/2     # B  243/128
+pytha_min[ 6] = pytha_min[11] * 3/2     # F# 729/512
+pytha_min[ 1] = pytha_min[ 6] * 3/2     # C# 2187/2048
+pytha_min[ 8] = pytha_min[ 1] * 3/2     # G# 6561/4096
+pytha_min[ 3] = pytha_min[ 8] * 3/2     # D# 19683/16384
+--
+pytha_min[ 5] = pytha_min[ 0] * 2/3     # F  4/3
+pytha_min[10] = pytha_min[ 5] * 2/3     # Bb 16/9
+
+[½ãÀµÎ§(ûĴ)Ⱦ²»³¬]
+pure_min[ 0] = 1                  * sc  # C  1     * sc
+pure_min[ 7] = pure_min[ 0] * 3/2       # G  3/2   * sc
+pure_min[ 2] = pure_min[ 7] * 3/2 / sc  # D  10/9  * sc
+pure_min[ 9] = pure_min[ 2] * 3/2       # A  5/3   * sc
+pure_min[ 4] = pure_min[ 9] * 3/2       # E  5/4   * sc
+pure_min[11] = pure_min[ 4] * 3/2       # B  15/8  * sc
+pure_min[ 6] = pure_min[11] * 3/2 / sc  # F# 25/18 * sc
+pure_min[ 1] = pure_min[ 6] * 3/2       # C# 25/24 * sc
+pure_min[ 8] = pure_min[ 1] * 3/2       # G# 25/16 * sc
+pure_min[ 3] = pure_min[ 8] * 3/2       # D# 75/64 * sc
+--
+pure_min[ 5] = pure_min[ 0] * 2/3       # F  4/3   * sc
+pure_min[10] = pure_min[ 5] * 2/3       # Bb 16/9  * sc
+
+ĹĴ¤È¤Î°ã¤¤¤Ï¡¤¥Ô¥¿¥´¥é¥¹²»Î§¤Î¶­³¦°ÌÃÖ¤¬´°Á´5ÅÙ3¤Äʬ¾å¾º¤·¤Æ¤¤¤ë¤Î¤È¡¤
+¥·¥ó¥È¥Ë¥Ã¥¯¡¦¥³¥ó¥Þ¾å¾º/²¼¹ß¤Î°ÌÃÖ¡¤¤ª¤è¤ÓÀûΧ¥Ñ¡¼¥È(¥Ô¥¿¥´¥é¥¹²»Î§)¤È
+ȼÁեѡ¼¥È(½ãÀµÎ§)¤ÇûĴ¤Î¼ç²»¤¬°ìÃפ¹¤ë¤è¤¦¤Ë¡¤½ãÀµÎ§¤ò1sc¹â¤¯Ä´À°¤·¤Æ
+¤¤¤ëÅÀ¤Ç¤¹¡£
+
+¤È¤³¤í¤Ç¡¤TiMidity++¤Î¥×¥ê¥»¥Ã¥È²»Î§¤È¤·¤Æ¡¤¥Ô¥¿¥´¥é¥¹²»Î§¡¤½ãÀµÎ§¤Î¾
+¤Ë¡¤ÃæÁ´²»Î§¤âÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ÃæÁ´²»Î§(ĹĴ)¤Ï¡¤Ä¹3ÅÙ¤¬½ãÀµ¤È¤¤¤¦°ìÈÌ
+Ū¤Ê¤â¤Î¤Ê¤Î¤ËÂФ·¡¤ÃæÁ´²»Î§(ûĴ)¤Ï¡¤Ã»3ÅÙ¤¬½ãÀµ¤Ê¥µ¥ê¥Ê¥¹²»Î§¤È¤¤¤¦¹½
+À®¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ÃæÁ´²»Î§(ĹĴ)Ⱦ²»³¬¤ÈÃæÁ´²»Î§(ûĴ)Ⱦ²»³¬¤Ï¡¤²¼µ­¤Î
+¤è¤¦¤ÊÁ²²½¼°¤Çɽ¸½¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+
+[ÃæÁ´²»Î§(ĹĴ)Ⱦ²»³¬]
+mt_maj[ 0] = 1                          # C  1
+mt_maj[ 7] = mt_maj[ 0] * 5^(1/4)       # G  5^(1/4)
+mt_maj[ 2] = mt_maj[ 7] * 5^(1/4)       # D  5^(1/2) / 2
+mt_maj[ 9] = mt_maj[ 2] * 5^(1/4)       # A  5^(3/4) / 2
+mt_maj[ 4] = mt_maj[ 9] * 5^(1/4)       # E  5/4
+mt_maj[11] = mt_maj[ 4] * 5^(1/4)       # B  5^(5/4) / 4
+mt_maj[ 6] = mt_maj[11] * 5^(1/4)       # F# 5^(3/2) / 8
+--
+mt_maj[ 5] = mt_maj[ 0] / 5^(1/4)       # F  2 / 5^(1/4)
+mt_maj[10] = mt_maj[ 5] / 5^(1/4)       # Bb 4 / 5^(1/2)
+mt_maj[ 3] = mt_maj[10] / 5^(1/4)       # Eb 4 / 5^(3/4)
+mt_maj[ 8] = mt_maj[ 3] / 5^(1/4)       # Ab 8/5
+mt_maj[ 1] = mt_maj[ 8] / 5^(1/4)       # Db 8 / 5^(5/4)
+
+[ÃæÁ´²»Î§(ûĴ)Ⱦ²»³¬]
+mt_min[ 0] = 1          * sc            # C  1                 * sc
+mt_min[ 7] = mt_min[ 0] * (10/3)^(1/3)  # G  (10/3)^(1/3)      * sc
+mt_min[ 2] = mt_min[ 7] * (10/3)^(1/3)  # D  (10/3)^(2/3) /  2 * sc
+mt_min[ 9] = mt_min[ 2] * (10/3)^(1/3)  # A  5/3               * sc
+mt_min[ 4] = mt_min[ 9] * (10/3)^(1/3)  # E  (10/3)^(4/3) /  4 * sc
+mt_min[11] = mt_min[ 4] * (10/3)^(1/3)  # B  (10/3)^(5/3) /  4 * sc
+mt_min[ 6] = mt_min[11] * (10/3)^(1/3)  # F# 25/18             * sc
+mt_min[ 1] = mt_min[ 6] * (10/3)^(1/3)  # C# (10/3)^(7/3) / 16 * sc
+mt_min[ 8] = mt_min[ 1] * (10/3)^(1/3)  # G# (10/3)^(8/3) / 16 * sc
+mt_min[ 3] = mt_min[ 8] * (10/3)^(1/3)  # D# 125/108           * sc
+--
+mt_min[ 5] = mt_min[ 0] / (10/3)^(1/3)  # F  2 / (10/3)^(1/3)  * sc
+mt_min[10] = mt_min[ 5] / (10/3)^(1/3)  # Bb 4 / (10/3)^(2/3)  * sc
+
+ÃæÁ´²»Î§(ûĴ)¤Î¶­³¦°ÌÃÖ¤¬´°Á´5ÅÙ3¤Äʬ¾å¾º¤·¤Æ¤¤¤ë¤Î¤È¡¤Á´ÂΤò1sc¹â¤¯Ä´
+À°¤·¤Æ¤¤¤ëÅÀ¤Ï¡¤¥Ô¥¿¥´¥é¥¹²»Î§(ûĴ)¤È½ãÀµÎ§(ûĴ)¤ÈƱ¤¸»ö¾ð¤Ç¤¹¡£
+
+¤µ¤Æ¡¤¤³¤ÎÃæÁ´²»Î§¤ÎÍÑÅӤǤ¹¤¬¡¤¥Ô¥¿¥´¥é¥¹²»Î§¤è¤êÏÂÀ¼Åª¤Ç¤¢¤ê¡¤¤«¤Ä½ã
+ÀµÎ§¤Î¤è¤¦¤Ë²»³¬¤¬Æ̱ú¤·¤Ê¤¤¤È¤¤¤¦ÆÃÀ­¤«¤é¡¤ÏÂÀ¼Åª¤Ê¥á¥í¥Ç¥£¤Ë»È¤¨¤ë¤Î
+¤Ç¤Ï¤Ê¤¤¤À¤í¤¦¤«¤È¹Í¤¨¤Æ¤¤¤Þ¤¹¡£
+
+----------------------------------------------------------------------
+²»Î§Ä´À­¤Ë¤ª¤±¤ëĹĴ/ûĴ
+----------------------------------------------------------------------
+
+°ìÈÌŪ¤Ê¥ÏĹĴ¤Î¶Ê¤Ç»È¤ï¤ì¤ë¼çÍ×»°Ï²»¤Ï¡¤C¡¤G¡¤F¤À¤±¤Ç¤Ê¤¯Am¡¤Em¡¤Dm¤â
+ÉÑÈˤ˸½¤ì¤Þ¤¹¡£¤Þ¤¿¡¤Cm¡¤Gm¡¤Fm¡¤A¡¤E¡¤D¤Ê¤É¤â¤¢¤êÆÀ¤Þ¤¹¡£¤³¤ì¤é¤Î¥³¡¼
+¥É¤Ï¡¤½ãÀµÎ§(¥ÏĹĴ)¤À¤±¤Ç¤ÏÂбþ¤Ç¤­¤Ê¤¤¤Î¤Ç¡¤¥×¥ì¡¼¥ä¡¼¤Ï¶Ê¤Î¿Ê¹Ô¤Ë¹ç
+¤ï¤»¤Æ²»Î§¤òÊѹ¹¤¹¤ë¤³¤È¤¬É¬ÍפǤ¹¡£
+
+¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤¿¤á¡¤TiMidity++¤Ç¤Ï²¼µ­¤Î²»Î§¤òÍÑ°Õ¤·¤Æ¤¤¤Þ¤¹¡£
+
+(1) ¥Ô¥¿¥´¥é¥¹²»Î§(¥ÏĹĴ)¤ÎC¤Î¥Ô¥Ã¥Á¤ò´ð½à¤È¤·¤¿½ãÀµÎ§(¥ÏĹĴ)
+(2) ¥Ô¥¿¥´¥é¥¹²»Î§(¥¤Ã»Ä´)¤ÎA¤Î¥Ô¥Ã¥Á¤ò´ð½à¤È¤·¤¿½ãÀµÎ§(¥¤Ã»Ä´)
+(3) ¥Ô¥¿¥´¥é¥¹²»Î§(¥ÏĹĴ)¤ÎA¤Î¥Ô¥Ã¥Á¤ò´ð½à¤È¤·¤¿½ãÀµÎ§(·Ð²áŪ¥ÏĹĴ)
+(4) ¥Ô¥¿¥´¥é¥¹²»Î§(¥¤Ã»Ä´)¤ÎC¤Î¥Ô¥Ã¥Á¤ò´ð½à¤È¤·¤¿½ãÀµÎ§(·Ð²áŪ¥¤Ã»Ä´)
+
+¤â¤¦¾¯¤·ÀºÌ©¤ÊµÄÏÀ¤ò¤·¤Þ¤¹¡£²¼µ­¤Î¤è¤¦¤Ê²»·ÏÌÖ¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£
+
+-----------------------------------------------------------------------------
+D--   A--   E--   B--   F#--  C#--  G#--  D#--  A#--  E#--  B#--  F##-- C##--
+Bb-   F-    C-    G-    D-    A-    E-    B-    F#-   C#-   G#-   D#-   A#-  
+Gb    Db    Ab    Eb    Bb    F     C     G     D     A     E     B     F#   
+Ebb+  Bbb+  Fb+   Cb+   Gb+   Db+   Ab+   Eb+   Bb+   F+    C+    G+    D+   
+Cbb++ Gbb++ Dbb++ Abb++ Ebb++ Bbb++ Fb++  Cb++  Gb++  Db++  Ab++  Eb++  Bb++ 
+-----------------------------------------------------------------------------
+
+¡ÈABCDEFG¡É¤Îɽµ­¤Ï¥Ô¥¿¥´¥é¥¹²»Î§¤Ë½¾¤¤¤Þ¤¹¡£¤Þ¤¿¡È+¡É¡È-¡É¡È++¡É¡È--¡É
+¤Îɽµ­¤Ï¡¤¤½¤ì¤¾¤ì1sc¾å¾º¡¤1sc²¼¹ß¡¤2sc¾å¾º¡¤2sc²¼¹ß¤ò°ÕÌ£¤·¤Þ¤¹¡£
+
+¤³¤Î²»·ÏÌÖ¤«¤é¡¤4¡ß3¤ÎĹÊý·Á¤ËʤÖ12¤Î²»¤ò¼è¤ê½Ð¤»¤Ð¡¤1¤Ä¤Î½ãÀµÎ§¥Á¥å¡¼
+¥Ë¥ó¥°¤òÀßÄê¤Ç¤­¤Þ¤¹¡£Î㤨¤Ð¡¤C¥Á¥å¡¼¥Ë¥ó¥°¡¤A¥Á¥å¡¼¥Ë¥ó¥°¡¤A-¥Á¥å¡¼¥Ë
+¥ó¥°¡¤C+¥Á¥å¡¼¥Ë¥ó¥°¤Ï¡¤¤½¤ì¤¾¤ì²¼µ­¤Î¤è¤¦¤Ëɽ¸½¤Ç¤­¤Þ¤¹¡£
+
+[C¥Á¥å¡¼¥Ë¥ó¥°(¥ÏĹĴ)]
+----------------------
+A-    E-    B-    F#- 
+F     C     G     D   
+Db+   Ab+   Eb+   Bb+ 
+----------------------
+
+[A¥Á¥å¡¼¥Ë¥ó¥°(¥¤Ã»Ä´)]
+----------------------
+F#-   C#-   G#-   D#- 
+D     A     E     B   
+Bb+   F+    C+    G+  
+----------------------
+
+[C+¥Á¥å¡¼¥Ë¥ó¥°(·Ð²áŪ¥ÏĹĴ)]
+----------------------
+A     E     B     F#  
+F+    C+    G+    D+  
+Db++  Ab++  Eb++  Bb++
+----------------------
+
+[A-¥Á¥å¡¼¥Ë¥ó¥°(·Ð²áŪ¥¤Ã»Ä´)]
+----------------------
+F#--  C#--  G#--  D#--
+D-    A-    E-    B-  
+Bb    F     C     G   
+----------------------
+
+ĹĴ¼çÂΤζʤˤÏÊ¿¹ÔÄ´¥Á¥å¡¼¥Ë¥ó¥°¤Î²»Äø¤ò¶Ï¤«¤Ë²¼¤²¤¿¥Á¥å¡¼¥Ë¥ó¥°¤ÎÁÈ
+¤ß¹ç¤ï¤»¤ò¡¤Ã»Ä´¼çÂΤζʤˤÏÊ¿¹ÔÄ´¥Á¥å¡¼¥Ë¥ó¥°¤Î²»Äø¤ò¶Ï¤«¤Ë¾å¤²¤¿¥Á¥å
+¡¼¥Ë¥ó¥°¤ÎÁȤ߹ç¤ï¤»¤ò´ðËܤËÁªÂò¤¹¤ì¤Ð¡¤¤¹¤³¤Ö¤ëÎɹ¥¤Ê·ë²Ì¤Ë¤Ê¤ë¤È»×¤¤
+¤Þ¤¹¡£
+
+----------------------------------------------------------------------
+¥æ¡¼¥¶ÄêµÁ²»Î§ÅÐÏ¿
+----------------------------------------------------------------------
+
+TiMidity++¤Ï¡¤¥æ¡¼¥¶ÄêµÁ²»Î§¤ÎÅÐÏ¿µ¡Ç½¤ò¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£MIDI Tuning
+Standard³µÎ¬(ËÜʸ½ñ¤ÎËöÈø¤ò»²¾È)¤Î(18)¤ËÁêÅö¤·¤Þ¤¹¡£Î㤨¤Ð¡¤²¼µ­¤Î¤è¤¦
+¤ÊSysEx.¤òÍ¿¤¨¤ë¤³¤È¤Ë¤è¤ê¡¤ÍÍ¡¹¤Ê²»Î§¤ÎÀ¸À®¤¬²Äǽ¤Ç¤¹¡£
+
+[Ê¿¶ÑΧ]
+f0 7e 00 08 0c 00                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+65 71 75 61 6c 00 00 00 00 00 00 00 00 00 00 00     ; "equal"
+01                                                  ; Äê¼°¤Î¿ô
+0f 7f 00 00 01 01 02 01 07 0c                       ; (ξÊý) 2^(7/12)
+f7
+
+[¥Ô¥¿¥´¥é¥¹²»Î§]
+f0 7e 00 08 0c 01                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+50 79 74 68 61 67 6f 72 61 73 00 00 00 00 00 00     ; "Pythagoras"
+02                                                  ; Äê¼°¤Î¿ô
+00 3f 40 1f 03 02 01 01 00 01                       ; (ĹĴ) 3/2
+43 7f 00 03 03 02 01 01 00 01                       ; (ûĴ) 3/2
+f7
+
+[ÃæÁ´²»Î§]
+f0 7e 00 08 0c 02                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+6d 65 61 6e 2d 74 6f 6e 65 00 00 00 00 00 00 00     ; "mean-tone"
+02                                                  ; Äê¼°¤Î¿ô
+00 3f 40 1f 01 01 05 01 01 04                       ; (ĹĴ) 5^(1/4)
+43 7f 00 03 01 01 0a 03 01 03                       ; (ûĴ) (10/3)^(1/3)
+f7
+
+[½ãÀµÎ§]
+f0 7e 00 08 0c 03                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+70 75 72 65 20 69 6e 74 6f 6e 61 74 69 6f 6e 00     ; "pure intonation"
+04                                                  ; Äê¼°¤Î¿ô
+00 3f 40 1f 03 02 01 01 00 01                       ; (ĹĴ) 3/2
+00 04 40 02 05 01 02 03 04 01                       ; (ĹĴ) 5*(2/3)^4
+43 7f 00 03 03 02 01 01 00 01                       ; (ûĴ) 3/2
+40 22 00 00 05 01 02 03 04 01                       ; (ûĴ) 5*(2/3)^4
+f7
+
+[¥­¥ë¥ó¥Ù¥ë¥¬¡¼Âè»°ÈÖ]
+f0 7e 00 08 0c 00                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+4b 69 72 6e 62 65 72 67 65 72 2d 33 00 00 00 00     ; "Kirnberger-3"
+02                                                  ; Äê¼°¤Î¿ô
+00 0f 00 00 01 01 05 01 01 04                       ; (ξÊý) 5^(1/4)
+00 30 00 1f 03 02 01 01 00 01                       ; (ξÊý) 3/2
+f7
+
+[Ê¿Åçã»Ê²»Î§]
+f0 7e 00 08 0c 01                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+48 69 72 61 73 68 69 6d 61 00 00 00 00 00 00 00     ; "Hirashima"
+02                                                  ; Äê¼°¤Î¿ô
+00 1f 00 03 01 01 05 01 01 04                       ; (ξÊý) 5^(1/4)
+00 00 00 3c 03 02 01 01 00 01                       ; (ξÊý) 3/2
+f7
+
+[¥ô¥§¥ë¥¯¥Þ¥¤¥¹¥¿¡¼Âè»°ÈÖ]
+f0 7e 00 08 0c 02                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+57 65 72 63 6b 6d 65 69 73 74 65 72 2d 33 00 00     ; "Werckmeister-3"
+02                                                  ; Äê¼°¤Î¿ô
+00 07 00 00 01 09 02 01 0f 04                       ; (ξÊý) 2^(15/4)/9
+00 18 00 3f 03 02 01 01 00 01                       ; (ξÊý) 3/2
+f7
+
+[¥¦¥§¥ë¥Æ¥ó¥Ú¥é¥á¥ó¥È]
+f0 7e 00 08 0c 03                                   ; ²»Î§¥×¥í¥°¥é¥àÈÖ¹æ
+77 65 6c 6c 2d 74 65 6d 70 65 72 00 00 00 00 00     ; "well-temper"
+02                                                  ; Äê¼°¤Î¿ô
+00 07 00 00 01 09 02 01 0f 04                       ; (ξÊý) 2^(15/4)/9
+00 00 01 7f 03 02 01 01 00 01                       ; (ξÊý) 3/2
+f7
+
+Åĸþ Àµ°ì <tamuki@linet.gr.jp>