[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference napalm::commusic_v1

Title:* * Computer Music, MIDI, and Related Topics * *
Notice:Conference has been write-locked. Use new version.
Moderator:DYPSS1::SCHAFER
Created:Thu Feb 20 1986
Last Modified:Mon Aug 29 1994
Last Successful Update:Fri Jun 06 1997
Number of topics:2852
Total number of notes:33157

936.0. "Yamaha SYSEX Format Specification and Discussion" by ACORN::BAILEY (Ultrix--Live Free and Die) Mon Sep 07 1987 03:08

    Something I've always wondered about, but never asked.  Why doesn't
    Yamaha publish their SYSEX formats?  Are they public domain, but
    just not spread around, or do you have to pay them a million dollars
    and four fatted calves per year to get your hands on them?
    
    I'd like to write a voice editor for my DX, but I loath the thought of
    having to talk directly to Yamaha International. 
    
    I'm told that the format for the DX7 is described in the service
    manual.  Are all Yamaha products like this?
    
    Steph
T.RTitleUserPersonal
Name
DateLines
936.1How about a DX-7 MIDI spec (Sorta)AKRON::RATASKITom Rataski - SWS Akron,OhioTue Sep 08 1987 00:38283
    < Note 936.0 by ACORN::BAILEY "Ultrix--Live Free and Die" >
                           -< Yamaha SYSEX facism? >-

>    Something I've always wondered about, but never asked.  Why doesn't
>    Yamaha publish their SYSEX formats?  Are they public domain, but
>    just not spread around, or do you have to pay them a million dollars
>    and four fatted calves per year to get your hands on them?

     A copy of the DX-7 SYSEX info that I pulled off of USENET a while
    back follows the body of this reply.
        
>    I'd like to write a voice editor for my DX, but I loath the thought of
>    having to talk directly to Yamaha International. 

     You can get any Yamaha service manual by calling the Yamaha service
    PARTS desk. I beleive I posted the number here in a previous reply
    about a year ago. All Yamaha service manual are between $15 and
    $20 no matter how large or small.   
    
        
>    I'm told that the format for the DX7 is described in the service
>    manual.  Are all Yamaha products like this?

    I have in front of me a document titled "Digital Programmable Algorithm
    Synthesizer DX7/9 Service Manual". Sorry - No sysex info in it,
    so if you were going to get a copy just for SYSEX info., you will
    be wasting your $20.00. As far as the rest of Yamaha products the
    CX5 manual doesn't have anything either. If you can get hold of
    a TX-7 manual, I am told, it has all kinds of SYSEX info, and it
    was an oversite that it was left out of the DX-7 owner's manual.

    
    Newsgroups: net.music.synth
Path: decwrl!sun!dss
Subject: Re: Need codes for DX7 data retrieval (Another MIDI question)
Posted: 3 Sep 86 03:04:23 GMT
Organization: Sun Microsystems, Inc.
Keywords: patch data, function parameter data
 
 
>I need some info on how to get data out of my DX7.  Specifically,
>patch data and function parameter data.  I want to make a patch librarian
>that will remember the function parameter settings for each sound as well as
>the volume setting.
 
 
Here's some info that has been passed along from generation to generation
through the ages by oral tradition :-).  I make no claims about its correct/
complete-ness.
 
I'm getting a TX-7 soon and will post any additional stuff as appropriate.
-daniel
 
---------------------------------------------------------------------------
 
			Yamaha DX-7 Midi Messages
 
1. TRANSMISSION DATA
1.1 Channel Information
 
1001nnnn	key ON & channel number (n=0 -> ch1)
0kkkkkkk	key number (k=36 -> C1; k=96 -> C6)
0vvvvvvv	key velocity (v=0 -> key OFF; v=1 -> ppp; v=127 -> fff)
1011nnnn	control change & channel number (n=0 -> ch1)
0ccccccc	control number
0vvvvvvv	control value
 
------------------------------------------------
C	Parameter		V
------------------------------------------------
1	modulation wheel	0 ~ 127
2	breath controller	0 ~ 127
D0	after touch		0 ~ 127
4	foot controller		0 ~ 127
6	data entry knob		0 ~ 127
64	sustain foot switch	0->OFF, 127->ON
95	portamento foot switch	0->OFF, 127->ON
96	data entry+1		0 ~ 127
97	data entry-1		0 ~ 127
------------------------------------------------
 
1100nnnn	program change & channel number (n=0 -> ch1)
0ppppppp	program number (p=0 -> voice1; p=31 -> voice 32)
1110nnnn	pitch bender & channel number (n=0 -> ch1)
0vvvvvvv	pitch bender & value LS byte
0vvvvvvv	pitch bender value MS byte (0; 64; 127)
 
--------------------------------
MS byte		LS byte
--------------------------------
0 ~ 64		0
65 ~ 127	2 (MS byte - 64)
--------------------------------
 
1.2 System exclusive information.
 
  1.2.1 MIDI active clock
  11110000	status byte
  0iiiiiii	identification number (i=67 -> YAMAHA)
  MIDI active clock is continuously output at 80ms intervals,
  except during bulk dump data transmission/reception.
 
  1.2.2 Bulk data for one voice
  11110000	status byte
  0iiiiiii	identification number (i=67 -> YAMAHA;
  0sssnnnn	sub status (s=0) & channel number (n=0 -> ch1)
  0fffffff	format number (f=0 -> 1 voice)
  0bbbbbbb	byte count MS byte
  0bbbbbbb	byte count LS byte
  0ddddddd	data 1st byte
    ...
  0ddddddd	data 155th byte
  0eeeeeee	check sum (2's complement of the sum of 155 bytes)
 
  1.2.3 Bulk data for 32 voices
  11110000	status byte
  0iiiiiii	identification number (i=67 -> YAMAHA;
  0sssnnnn	sub status (s=0) & channel number (n=0 -> ch1)
  0fffffff	format number (f=9 -> 32 voices)
  0bbbbbbb	byte count MS byte
  0bbbbbbb	byte count LS byte (b=4 -> 96; 32 voices)
  0ddddddd	data 1st byte
    ...
  0ddddddd	data 4096th byte
  0eeeeeee	check sum (2's complement of the sum of 155 bytes)
 
  1.2.4 Parameter change
  11110000	status byte
  0iiiiiii	identification number (i=67 -> YAMAHA;
  0sssnnnn	sub status (s=0) & channel number (n=0 -> ch1)
  0gggggpp	parameter group number (g=0 -> common dx7 voice parameter,
			g=2 -> dx7 function parameter)
  0ppppppp	parameter number
   0ppppppp	parameter number
  0ddddddd	data
 
  NOTE: dx7's manufactured before august 83 use B003 for after touch.)
 
g=0: common dx7 voice parameter
=====================================================
 P   parameter			d
=====================================================
  0 op6 eg rate 1		0 ~ 99
  1             2
  2             3
  3             4
  4       level 1
  5             2
  6             3
  7             4
  8     keyboard level scale break point
  9              left depth
 10              right depth
 11              left curve	0 ~ 3
 12              right curve
 13     keyboard rate scaling	0 ~ 7
 14     mod sensitivity ampl.	0 ~ 3
 15     operator key vel sens.	0 ~ 7
 16     operator output level	0 ~ 99 
 17     oscillator mode		0 ~ 1
 18                freq coarse	0 ~ 31    
 19                     fine	0 ~ 99
 20                detune	0 ~ 14
----------------------
 21
...  op5 ~ op1
125
----------------------
126 pitch eg rate 1		0 ~ 99
127               2
128               3
129               4
130         level 1
131               2
132               3
133               4
134 algorithm select		0 ~ 31
135 feed back			0 ~ 7
136 oscillator sync		0 ~ 1
137 lfo speed			0 ~ 99
138     delay
139     pmd
140     amd
141     sync			0 ~ 1
142     wave			0 ~ 4
143 mod sensitivity pitch	0 ~ 7
144 transpose			0 ~ 48
--------------------
145 voice name 1		ascii
     ...
154 voice name 10
--------------------
155 operator on/off	d6  d5  d4  d3  d2  d1  d0
       0=off, 1=on       0  op1 op2 op3 op4 op5 op6
=====================================================
 
g=2: dx7 function parameter
=====================================================
 P   parameter			d
=====================================================
 64 mono/poly mode change	0 ~ 1
 65 pitch bend range		0 ~ 12
 66            step
 67 portamento mode		0 ~ 1
 68            glissando
 69            time		0 ~ 99
 70 modulation wheel range	0 ~ 99
 71                  assign	0 ~ 7
 72 foot controller range	0 ~ 99
 73                 assign	0 ~ 7
 74 breath controller range	0 ~ 99
 75                   assign	0 ~ 7
 76 after touch range		0 ~ 99
 77             assign		0 ~ 7
=====================================================
 
 
2.  RECEPTION DATA
2.1 Channel Information
Reception is possible when the channel number of the received data
matches the channel number set up at the dx7.
 
1000nnnn	key OFF & channel number (n=0 -> ch1; n=15 -> ch16)
0kkkkkkk	key number (k=0,1 -> c#-2; k=127 -> G8)
0vvvvvvv	key velocity (v ignored)
1001nnnn	key ON & channel number (n=0 -> ch1; n=15 -> ch16)
0kkkkkkk	key number (k=0,1 -> c#-2; k=127 -> G8)
0vvvvvvv	key velocity (v=0 -> OFF; v=1 -> ppp; v=127 -> fff)
1011nnnn	control change & channel number (n=0 -> ch1; n=15 -> ch16)
0ccccccc	control number
0vvvvvvv	control value
 
-------------------------------------------------
  c parameter			  v
-------------------------------------------------
  1 modulation wheel		0 ~ 127
  2 breath controller
 D0 after touch
  4 foot controller
  5 portamento time
  6 data entry knob (MASTER TUNE only)
  7 volume (lowest 4 bits ignored)
 64 sustain foot switch		0->off; 127->on
 65 portamento foot switch	0->off; 127->on
 96 data entry+1		127->on only
 97 data entry-1		127->on only
125 OMNI all key off		ignored
126 MONO all key off		ignored
127 POLY all key off		ignored
-------------------------------------------------
 
1100nnnn	program change & channel number
0ppppppp	program number (p=0 -> voice 1; p=31 -> voice 32)
1110nnnn	pitch bender & channel number
0vvvvvvv	pitch bender value LS byte (ignored)
0vvvvvvv	pitch bender value MS byte (0-64-127)
 
2.2 System exclusive information
  2.2.1 MIDI active clock
  MIDI active clock is received regardless of any channel number.
  If the clock is interrupted for more than 666ms at any time other
  than during reception of bulk data, the dx7 assumes that the
  transmitter power is off or the line has been disconnected,
  and stops note output.
 
  2.2.2 Bulk data for one voice
  1-voice bulk data is received in the same format as the transmitted
  data when the MIDI channel numbers match in the "System Information
  Available" mode.
    
  2.2.3 Bulk data for 32 voices
  32-voice bulk data is received in the same format as the transmitted
  data when the MIDI channel numbers match in the "Sys Info Avail" mode,
  and when Memory Protect is OFF.
 
  2.2.4 Parameter change
  Voice and function parameters are received in the same format as the
  transmitted data when the MIDI channel numbers match in the
  "Sys Info Avail" mode.
 
---------------------------------------------------------------------------
    

936.2DFLAT::DICKSONNetwork Design toolsTue Sep 08 1987 12:072
The manual that comes with the FB01 describes all the
MIDI message formats the FB01 understands.
936.3ECADSR::SHERMANbut I DID simulate...sort of...Tue Sep 08 1987 12:151
    Pretty much ditto for the TX81Z manual.
936.4my manual has itSAUTER::SAUTERJohn SauterTue Sep 08 1987 12:366
    My DX7 manual has precisely the information in .1, even to the note
    about August 1983.
    
    Also, you can order system-exclusive information from the International
    MIDI association for a nominal price.  I did this for the DX7-II.
        John Sauter
936.5Write when you go to beta...MAY20::BAILEYUltrix--Live Free and DieTue Sep 08 1987 21:314
    Thanks.
    
    Steph