|
Above Image The SID Sound Envelope of the Commodore 64.
The Envelope Sampler Data Block. Three lines of data are added to the Script Writer's screen to support the Envelope Sampler. The actual graphic generated by the Envelope Sampler is not a pre- constructed image or a table lookup of data, but built on the fly by continuous sampling at specific intervals of the SID's many registers, the information then calculated, and the envelope graphic laid out in a two-dimensional Cartesian coordinate system. The first (or top) line of the Data Block shows the ADSR time in seconds. The aggregate of the four values constitute the total time the note will sound. This is a read only display of time values, and not the same as the register values entered by pressing F7 and setting ADSR registers to 0-15. The second (or middle) line shows the total time the note will sound (or play) in seconds, and the Off time in seconds. The third (or last) line shows the sample rate in seconds, and any extended (X) time in seconds. An extended note adds its value to the ADS time portion, (or extends the period until the note is turned off) which excludes Release and Off time. Next is any rest time. A Rest that directly follows the current note will increase the Off period, and give the Release more time to reach quiescence. A longer Off period, one that goes beyond the Release Period, will give a staccato effect. ![]() Example 1 Above. This envelope is identical to the top image we have been working with except it is a dotted eighth note (TIM I*) instead of a quarter note (TIM Q) like the first. It has the same register values (A/D = 07/05 and S/R = 07/06) and the same Off value of 04. It produces all the same time values except for a Sustain period of S=00.117 seconds to the quarter note's S=00.229 seconds. Larger notes have the same envelope shapes as lesser notes with like register values except for the Sustain line, which increases with the note value. The Release of Example 1 fell to zero (or reached quiescence) 0.032 seconds before the next note begins. We know the interlude by counting samples (Sample rate 0.008 x 4 = 0.032) ![]() Example 2 Above. An eighth note with an envelope that differs from the two previous envelopes in several ways; the Decay has been shortened, the Sustain level is higher, and the Off time has been narrowed, but the Release value remains the same. However, notice that the Release does not reach zero (or quiescence.) This note's sound will will be truncated when the next note begins its Attack. ![]() Example 3 Above. Similar to the preceding envelope, except Off has been increased to 3 allowing more time for the Release to fall. The Sustain period has been commensurately shortened by the wider Off gap, because the note duration is fixed. But Release in this example never quite reaches zero. Remember, Off is a master setting effecting all 3 voices. A rest immediately following a note will widen Off only for the preceding note.
Examples 4a & 4b Above. In these 2 examples, Off has been increased to 5. Example 4a has lost Sustain altogether as the note is turned off at the peek of Attack. The sound will just rise and fall rapidly. The note duration of Example 4b has been increased 50% by making it a dotted eighth note. The increased duration produces a Sustain interval for this particular note. The same envelope shape could have been achieved by slowing down the tempo, which lengthens the duration for all 3 voices.
Examples 5a & 5b Above. Example 5a is similar to Example 4b, except the Decay Period has increased. Example 5b is the same as 5a but the Sustain Level has been reduced. As a result, the Release Period reaches zero sooner (because it has a shorter distance to fall.) The Release Periods for all the examples above are exactly the same, but the graphics show how various nuances effect this note tail or Release Period. |
| copyright 2005 joseph tiraco |