FB01 Sysex Information
This information was gathered from the internet
It has not been verified
Subject: Re: FB-01 microtonality
Date: 27 Feb 87 01:20:52 GMT
7 Feb 87 01:20:52 GMT
In article <13421@cca.CCA.COM> m204help@cca.CCA.COM (Keith Hedger) writes:
>In the ads for the FBO1, it is stated that the instrument will store
>microtonal tunings. Is this the same capability that is available in the new
>DX7's and TX81Z's ??? Can this facility be used to actually play using
>techniques such as Just Intonation etc. ???
Keith, I dunno about any ads, but perusing the manual here, the FB-01 cannot
store microtonal tunings, but it can play microtonal notes (to a resolution of
1 cent, relative to a chromatic note). If you're using a PC (of any brand) to
control your MIDI setup, then you can do your own microtonal scales, but the
FB-01 only knows microtonal notes.
Here's a quickie summary of the MIDI implementation (System Exclusives only):
F0 43 2s 0C F7 Dump Voice Bank 0
F0 43 75 0s 20 00 0x F7 Dump Voice Bank "x"
F0 43 75 0s 20 01 00 F7 Dump Current Configuration Buffer
F0 43 75 0s 20 02 xx F7 Dump Configuration Bufffer "xx"
F0 43 75 0s 20 03 00 F7 Dump All Configuration Memory
F0 43 75 0s 20 04 00 F7 Dump ID Number
F0 43 75 0s 2i 05 00 F7 Dump Instrument "i" Voice Data
Notes: "s" is the system exclusive channel a given FB-01 is to respond to (this
supports multiple FB-01's on the same cablrts multiple FB-01's on the same cable.
"x" is a voice bank number (0..6).
"xx" is a configuration number (0..20 decimal).
"i" is 8 + an instrument nuber (0..7).
F0 43 1s 15 pp dd F7 Conf. Parameter Change By MIDI Channel
F0 43 75 0s 2i pp dd F7 Conf. Parameter Change By Sys Channel + Inst. #
F0 43 1s 15 pp 0y 0x F7 Voice Parameter Change By MIDI Channel
F0 43 75 0s 2i pp 0y 0x F7 Voice Parameter Change By Sys Channel + Inst. #
F0 43 75 0s 10 pp dd F7 Sys. Parameter Change By MIDI Channel
Notes: "pp" has varying ranges for each of the above, and represents a
"s" is as above.
"i" is as above.
"dd" is a data value, generally 7 bits.
"x" and "y" are 4-bit data values (I dunno why!).
This is new stuff for Yamaha. The sequence:
F0 43 75 70
introduces an event list, and it is (of course) terminated by the F7 (EOX).
Any number of events may be enclosed in the list.
0n kk ff Note Off with Fraction
1n kk ff vv Note On/Off with Fraction
2n kk ff vv yy xx Note On/Off with Fraction and Duration
3n cc vv Control Change
4n pp Program Change
5n vv After Touch
6n yy xx Pitch Bend
7n pp dd Inst. Param. Change (1-byte)
7n pp 0y 0x Inst. Param. Change (2-byte)
In addition, the FB-01 cae)
In addition, the FB-01 can return 3 types of "answers" to system exclusive
F0 43 6s 02 F7 ACK
F0 43 6s 03 F7 NAK
F0 43 6s 04 F7 "cancel"
I haven't yet ascertained all the circumstances under which these are sent.
If anyone has specific questions, I'll be happy to answer email, but I don't
guarantee I'll be reading this newsgroup (I have this boss, see, and he has
these expectations that I'll actually get some work done...).
Phone: +1 (201) 522 XXXX (in flux; forget it for now)
From: RAYBRO%HOLON%UTRC@UTRCGW.UTC.COM (William R(ay) Brohinsky)
Subject: Re: Yamaha FB01 Sound Generator
Date: 24 Jan 91 12:51:00 GMT
Here, also are a few of the more important equations:
Fortunately, DX-type synths use numbers from 0-100 or 0-127 for the
output values of each operator. Knowing this number, you can look
up the modulation index that would result from using that number
for a modulator in tables in the back of the book. Now the bad news:
there is no table for the FB01, and the three tables given (with
graphs for interpolation) are for DX7, DX-21, and CX5. Worse yet, the
values from these tables/graphs for a modulation irom these tables/graphs for a modulation index of 1 are
70,~63, and 97.5 (roughly). This is one thing that makes
translating 6-op (where only four operators are used) to 4-op voices.
Next important thing, is to be able to guess the number of significant
sidebands. Although this relies on everything from psychoacoustics,
acoustics, and physiology to power theory, Messrs. Chowing and Bristow
postulate that the number of sidebands to care about is
So if the modulation index is 1, you should keep track of three sidebands.
I would modify this, from logic, that as I approaches zero, the 2 should also
[replace previous 2 lines with:]
Note that they calculate sideband number as
K=sideband number (0,1,2,...n)
This way, by their figuring, you get the carrier and three sidebands on eith
er side of it with I=1. NOTE also that I=0 is an exception, because
an unmodulated carrier MUST be the carrier alone! (i.e., K=0) I suspect that
the first two sidebands rise very quickly with increasing I, which is
why it takes to at least 60 before you get to I=1 when you have a total
of 100 or 127 max!
The only remaining necessity for calculating sideband power are:
remember that the negative sidebands wrap around zero (if the modulationfreq
is greater than the carrier) or at le> is greater than the carrier) or at least approach zero (if the modulation freq
is less than the carrier, and I is large enough, some of them will still
wrap around zero!). This zero wrap is a large part of what allows making
such complex spectra. If the M and C freq's are integral multiples of
one another (even if they are both fractional, like .75 and 1.5) then at least
some of the sidebands that wrap around zero (dependant on I) will overlay
Note also, that any negative frequency is just a positive frequency that
is inverted (180degrees out of phase), and will subtract it's amplitude from
any present positive frequency.
Then, you can figure out the amplitude of the sidebands using bessel functions
and just subtract the negative frequency amplitudes from the positive
frequeny amplitudes for the same |frequency|, HOWEVER:
There is just one more bugaboo in FM:
For some reason, not explicitly stated in the book, the negative sidebands
[read that: the LEFT sidebands] are not all in phase, although the right
sidebands are. For the left sidebands (the lower freq side of the carrier]
each odd sideband is NEGATIVE!
This means that, for an I of 4 (six significant sidebands) the upper sidebands
will all be positive, but the lower ones are
first lower SB: negative
Second lower SB: zero (we are assuming that c=m)
thzero (we are assuming that c=m)
third lower SB: positive (negative because it's odd, negative again because of
the wrap around zero) and at the same freq as the carrier
Fourth lower SB: negative and at the same freq as the first upper sideband
fifth lower SB: positive and at the same freq as the second upper sideband
sixth lower SB: negative and at the same freq as the third upper sideband
The tables and figures in the book are invaluable for figuring all this out.
My description (shot through with corrections) is rather weak.
Note that, since the curve of the TL vs. I graphs is non-linear (I believe
it is logarithmic, starting at zero and remaining close to the TL axis
'til the numbers quoted above for I=1, where it starts to climb to vertical
and parallel to the I axis) that a DX/FB/TX programmer might have to have
a lookup table to program outputs in terms of I. This should be switched
according to algorithm: the carrier(s) should show their outputs in terms
of TL, and carriers should be in terms of I.
As for feedback operators, I don't even want to think about it!
Back to FB01