[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

819.0. "Yamaha TX81z Programming Question" by NIMBUS::DAVIS () Fri May 29 1987 11:09

    One of the guys I play with just replaced his old ARP electric piano
    with a Wersi keyboard and a TX81Z box. Now the fun begins, trying to
    learn FM programming. We both have had quite a bit of experience with
    analog synths and more recently the ESQ and CZs, but THIS ... arghh !
    Anyway, a question to get us started please. 
    
    We're trying to create a "fifths" patch to replace a sound on the
    ARP. This is an electric piano that adds a fifth above each note
    played. Easy enough to do with the layering or echo utilities in
    the TZ but then you're limited to four voices. Not good. Can anyone
    suggest how we might modify an existing piano patch to add a fifth
    in the sound itself?
    
    And while on the subject of operator frequencies ... we were playing
    with the frequency ratio to try and get this fifth, but the numbers
    for the fine freq ratio don't seem to increment in any pattern we
    could recognize. One click would jump it by .06 and the next might
    move it by .08. It didn't sound like it was incrementing by semi-tones
    as I would expect. Can someone give me a brief explanation of what
    intervals are possible to select and why? Or am I just better off
    getting some manuals and starting at the beginning. Thanks.
                            
    Rob
    
T.RTitleUserPersonal
Name
DateLines
819.1FM:== For Madmen....JAWS::COTEThe Voice Of ReasonFri May 29 1987 11:3230
    Here are the frequency ratios used by Yamaha in their DX21, 100,
    27, and Fb01 4-op synths. Do they jive with the TX81Z? 
    
    Yamaha picked what *they* felt were the most usefull ratios.
    
    I have a patch in the DX does just what you're attempting, adds
    a fifth. Unfortunately it's a string patch. Is this part of the
    ROM voices on the TX? You may be able to dissect that and find which
    component(s) add the fifth. It seems like it's never as easy as
    simply gooseing up one operator. Let me know if you don't have the
    patch and I'll take mine apart.
    
    One thing I've noticed in FM is that the operator level parameter
    affects the final patch much stronger than you may expect. Comparing
    it to a DCO level parameter will only confuse you. A slight nudge
    one way or the other can drastically change your patch. Experiment.
    
    Edd    (Freg. Ratios courtesy Todd Rhodes)
    
    0.50       0.71       0.78       0.87       1.00       1.41
    1.57       1.73       2.00       2.82       3.00       3.14
    3.46       4.00       4.24       4.71       5.00       5.19
    5.65       6.00       6.28       6.92       7.00       7.07
    7.85       8.00       8.48       8.65       9.00       9.42
    9.89       10.00      10.38      10.99      11.00      11.30
    12.00      12.11      12.56      12.72      13.00      13.84
    14.00      14.10      14.13      15.00      15.55      15.57
    15.70      16.96      17.27      17.30      18.37      18.84
    19.03      19.78      20.41      20.76      21.20      21.98
    22.49      23.55      24.22      25.95
819.2Fm fun10011::BARTHFri May 29 1987 12:4926
    As we know, the course frequencies follow the harmonic series, right?
    I.e., frequencies translate as follows:
    
    	0.50	down an octave				(I think these
    	1.00	root					are correct)
    	2.00 	up an octave
    	3.00 	up an octave and a fifth
    	4.00	up two octaves
    	5.00	up two octave and a third
    
    	etc.

    What you're asking is how to produce the fifth above the root, in
    the above diagram, if I undrestand you correctly.
    
    This would be by setting one operator (carrier) to root (1.00) and
    setting another operator (carrier) to 1.50, I believe (i.e., set
    the course frequency to 1.00 and adjust the fine frequency to get
    1.50).  Use your ear.  You can hear when a fifth is made.
    
    Then just add a modulator to each of these carriers to make the
    sound more interesting.  That's how I'd do it on a DX7, anyway.
    
    Happy FM!
    
    Ron
819.3slightly flat. whats 7/12?JON::ROSSNetwork partner excited first try!{pant}Fri May 29 1987 14:3113
    
    I dont know what yamaha maps to, but,
        
    isnt the ratio .5  HALF way up the octave....
    
    which is 6 of 12 notes....
        
    which turns into a flat 5 (f#)...
    
    or not?
    
	rr
        
819.4BARNUM::RHODESFri May 29 1987 16:1321
I think Ron was on the right track.  The trick to a fifth is to use a two
carrier pattern (at least two), set one ratio to 2.0, and the other to
3.0.  The final sound can be transposed down an octave (ooops, now that
I think of it 1.00 and 1.50 would have done it, jes like Ron (Barth) stated.

I have a few programs that run on the Vax and plot FM waveshapes.  I don't
exactly remember what they do (one plots a stack of operators and the other
???), but they are nice to learn how to make pseudo square waves and triangle
waves, etc.  Send me mail if you want them.

Important fact:  The more you drive a modulator with its output level,
the brighter the sound gets (sort of).

There is an article on one of the keyboards (the special MIDI issue?) that
gives the basics on DX programming.  As I remember, it was very informative
and explained things such that they seemed intuitive.  I'll have to look
the issue up...

Todd.


819.5I'm kunphused...JAWS::COTEI'm not making this up...Mon Aug 22 1988 10:0510
    Everytime I try to enter a patch into my TZ I get beat up in the
    "Edit Frequency" page when it comes to RTO and FIX...
    
    Almost every patch I've seen published has data for *both* arguments.
    Aren't they mutually exclusive?? If an operator has an RTO value
    of 1.00, then isn't any value in FIX RANGE moot?
    
    Can someone shed some light on this???
    
    Edd
819.6MIZZOU::SHERMANsocialism doesn't work ...Mon Aug 22 1988 10:2010
    They are mutually exclusive.  The TZ won't let you enter both values.
    I'm a bit rusty on the details (I've not yet used FIXED frequencies
    for my own patches), but I think I've seen patches where they list
    the FIXED frequency even though it's not used.  I think this is
    the result of using a computer to dump the innards.  I think also
    that though the FIXED frequencies may not be used, they are still
    stored.  Just a guess, 'cause my TZ ain't handy to check this out
    ...
    
    Steve
819.7JAWS::COTEI'm not making this up...Mon Aug 22 1988 10:517
    That was my guess, but I'm looking for verification. The Yamamanual
    was typically vague...
    
    ...so hard to know when you get a patch right if it came on paper.
    You've no idea what it's supposed to sound like...
    
    Edd
819.8Global pitch bend range paramter?MARLIN::DIORIONo, I'm not bored...really...ZzzzzzzzzzzzzWed Sep 20 1989 13:4710
Question:

Is there a way to change the pitch bend range *globally* on ALL of the
TX81Z's ROM/RAM patches?

I like my pitch bend set to bend a whole step (2 semitones).

I'll be bummin' if the answer is no.

Mike D
819.9Oh no, I recommended this unit!!!WEFXEM::COTEAnother day, another segue...Wed Sep 20 1989 13:553
    You be bummin'...
    
    Edd
819.10There's got to be a "workaround".MARLIN::DIORIONo, I'm not bored...really...ZzzzzzzzzzzzzWed Sep 20 1989 14:1413
>< Note 819.9 by WEFXEM::COTE "Another day, another segue..." >
>                     -< Oh no, I recommended this unit!!! >->
>    You be bummin'...

Well, I'm not bummin' that bad if I can change the pitchbend range and
store the "new" patch in RAM. After all, it came with a TZ-Quad board in 
it, so I have memory locations to burn (literally). I really only need 
the pitchbend set that way for soloing with lead-type sounds. 

In fact, I should be able to do this, or even better, change the pitchbend 
and store the modified patch in "performance" memory, correct?

Mike D
819.11WEFXEM::COTEAnother day, another segue...Wed Sep 20 1989 15:4313
    You'll have to store the edited patch in one of the "T" banks. (I
    *think* the original TZ-Quad board disables the use of the "I"
    bank in favor of the 4 additional ones it supplies. The TZQuad+
    enables use of all five.)
    
    PB is a patch parameter, not a performance parameter.
    
    One of my favorite TZ 'tricks' is to save the same patch to 4 to
    8 RAM location with the pitch bend set to various intervals.
    Layer all the patches together in a performance. When you hit the
    PB wheel your single note 'expands' into a BIG chord....
    
    Edd
819.12HAMER::COCCOLIWed Sep 20 1989 18:095
    
     On of mine is to do the same thing with the patches having the
    same sound, but differing portamento rates. Especially with an analog(sine)
    type sound. Fattens the sucker up!.
                                      rich
819.13Sys Ex help??!!NRPUR::DEATONMon Nov 06 1989 11:3230
	O.K., a new problem...

	I tried using system exclusives last night to change a parameter in the
performance memories.  Unfortunately it didn't work.

	The format for the parameter changes goes something like this:

	$F0	Sysex Header
	$43	Yamaha Id
	$13	Basic Channel Identifier (I use MIDI ch. 4)
	$13	Group/subgroup number
	$__	Parameter number
	$__	Parameter data
	$F7	End of Exclusive

	Now, the problem seemed to be in the "Group/subgroup" field.  Looking at
page 67 in the manual, it identifies the group code for Performance parameter
change to be 00010011, or $13, which also happens to be the same group/subgroup
code for changing "additional Voice parameters".  How does it know the 
difference between "additional Voice parameters" parameter number 01 and 
"performance memory parameters" parameter number 01?

	I assume this is a typo in the manual.  Does anyone know the right code
for performance memory?  (for what its worth, it appears that code $13 DOES
indeed change data in the "additional voice parameter" section).

	Dan

P.S.  I LOVE all the control that Yamaha gives you through System Exclusives!
	
819.14Problem solved, thanks all for the help! 8^)NRPUR::DEATONTue Nov 07 1989 10:5253
RE < Note 819.13 by NRPUR::DEATON >

	Well, I got impatient and decided to get it right from the horse's mouth
(YAMAHA).  I called them late yesterday afternoon and after the usual multiple 
forwarding of calls, line disconnections and calling of different numbers (all 
toll-free, thankfully), I got an answer.

	There is, indeed a misprint in the manual.  The group/subgroup code for
changing a performance parameter via SysEx is $10, not $13.  I tried it last 
night and it worked just fine.

	In case anyone is wondering just WHY I would want to do this via SysEx, 
I just thought I'd share a procedure that I consider a real breakthrough in
overcoming one of the limitations of the TX81Z - RAM memory.  You don't get
much RAM space to put your great programming and performance setup ideas.  Some 
people have solved that problem by getting the TZQuad.  From what I've heard,
that is a very good alternative for a good price.  But I have found another way
that is both easy and requires no hardware modifications...

	My idea is to set up performance "shells", that is, setups that do not
necessarily contain patches or other specifics, but just slots within which to
put a patch or set of patches.  I might have one that uses one voice for one
patch and the other seven voices for something else.  Another performance memory
may have a mono slot for a voice, a two-voice slot for a lead patch and the 
remaining five voices for some comping patch.  And so on...

	With a simple set of SysEx commands (very easy to do on my MC500), I can
select a performance memory and "load" it with the appropriate patches for a 
given set of songs.  The number of commands could be no more in number than the
number of patches I need to load, but could be as many as the number of specific
changes I need to set up in that performance memory (for instance, adding an a
delay effect to the "slot").

	How would this be useful?  Let's say you're using the TZ to handle both
your bass patches and various fills.  Now if you're like me, you don't use all
that many different bass patches in comparison to the number of different types 
of fills you need.  The problem, initially, is in having enough performance 
memories to hold both the bass patch you use most of the time and the countless
different fill patches you need only once in a night.  (If you were using a 
separate unit for bass, chances are you'd just use program change commands to 
access those incidental TZ fill patches directly).

	By setting up these "shell" performance memories, you can handle most
of your needs with only one or two memory slots.  For me, I usually only use
one or two different patches at a time from the TZ, so two performance memory
shells would be all that is necessary.  Simply call up the performance memory,
load it with the patches necessary for a given song, and play away.

	Like I said, I *love* the amount of control Yamaha puts into their
synthesizers via Sysex!

	Dan