I built a CS-KAS based on PICs a while ago. It works, but I did not
adopt their strange assign order and instead went with the two popular
ones, "steal oldest note" and "steal least used note". I need to finish
that thing, it still needs the gliss/porta function to actually work.
Never enough time...
Scott
Doesn't the CS have, already embedded, a "steal the oldest" logic which integrates with this weird pitch code encoding+LRU?
Basically, for what I could understand, in a Sustain-II state, if you have all 8 voices playing and have a new note playing, the oldest voice playing is stealed by the new note
Yes, this is a common Yamaha trick, though nothing beats the -12V
logic of the GS1, with a -7V supply node for the 5-volt logic (the patch
controller). Gotta love that old PMOS technology... ;)
I seemed to understand that the GS-1 assigner operates with a very similar logic, compared to the original KAS, have you got any more resources to share with us perhaps?
Cheerz
M
----- Original Message -----
From: The Old Crow
To: yamahacs80@yahoogroups.com
Sent: Thursday, February 19, 2009 5:53 AM
Subject: Re: [yamahacs80] Voice allocation ?
Colin f wrote:
>
>
>> They use the same
>> ring memory table in the GX-1 and key assigner of the CS 50/60/80.
>> There is a somewhat cryptic explanation in the CS service
>> guide, pages
>> 11 to 19, describing the encoder for 4 voices. JH references the
>> service guide on his CS50 page,
>>
>
> You'll find the GX1 KAS schematic here:
> http://www.sequentix.com/gx1/GX1-KAS.zip
>
> Are the separate assigner and octave chips used elsewhere ?
> Looks like they were combined into a single chip for the CS synths, with a
> matrix of keys rather than an input for every single key.
>
They integrated the octave and semitone into a sort of matrix; it
would first sense the octaves of keys by setting the octave pins to 0V
(a grey bit, not logic 1 or 0) and setting the note pins to logic "1"
aka -6.5v. IT would record the octaves found in a buffer. Then it
would ∗reverse∗ the sense of a key and set all the 1s (-6.5v) to 0s
(+8.5v). This would show which actual notes in each octave were
active. Then they pack up the 3-bit octave code and 4-bit note code for
good old time-division multiplexing at the DAC. Skew the clock, and you
get the glissando/portamento. What a weird encoder. :)
I built a CS-KAS based on PICs a while ago. It works, but I did not
adopt their strange assign order and instead went with the two popular
ones, "steal oldest note" and "steal least used note". I need to finish
that thing, it still needs the gliss/porta function to actually work.
Never enough time...
>> If you look closely you'll see the actual electrical
>> operation of the
>> key scanner is ternary, not binary, it uses both -6.5v to 0 and 0 to
>> +8.5v to derive logic states.
>>
>
> I'm sure that's not the case on the GX.
> It has a +6/-9v supply for the assigner and octave scanning chips, but that is just to limit the total supply voltage to 15v for the CMOS devices that are used for the de-mux etc.
>
>
Yes, this is a common Yamaha trick, though nothing beats the -12V
logic of the GS1, with a -7V supply node for the 5-volt logic (the patch
controller). Gotta love that old PMOS technology... ;)
Crow
/∗∗/
[Non-text portions of this message have been removed]