Home -> Magazines -> Issues -> Articles in this issue -> View
Acorn Electron | |
Article from Electronic Soundmaker & Computer Music, March 1984 | |
Musical possibilities?
Part two of last month's feature on the BBC Envelope command has been held over to allow this review to appear first.
Another micro attracts Gary Herman's critical attentions

Sounds are produced, as with the BBC, through an on-board loudspeaker by use of the BASIC commands SOUND and ENVELOPE. Superficially, these commands are identical to the sound commands on the BBC — but appearances are deceptive.
For one thing, there are only two channels available to the user — one for music and one for noise. Then there is no facility for controlling amplitude envelopes using the ENVELOPE command — ADSR parameters are fixed. These two deficiencies combine to seriously limit the musical applications of the computer.
The two sound commands use the BBC syntax:
SOUND C,A,P,D
ENVELOPE N,T,PI1,PI2,PI3,PN1,PN2,PN3,AA,AD,AS,AR,ALA,ALD
In practice, C (the channel number) is only 0 (noise) or 1 (music) and the last six parameters of ENVELOPE are set to 0 since there is no control over amplitude envelopes. Using the SOUND command alone, C sets channel, A sets amplitude (from 0 to - 15), P sets pitch (from 0 to 255, increasing in integer steps of a quarter semitone and covering just over five octaves) and D sets duration (from 0 to 254, increasing in integer steps of 0.05 seconds with - 1 and 255 playing a note of indefinite length).
The SOUND command, then, is pretty standard, offering simple control of pitch or noise quality (using channel 0 and setting P to a value between 0 and 7). There is only one real problem and that is fairly easy to correct. Despite the apparent simplicity of the pitch setting (just add 48 to go up an octave), 'tuning' errors begin to creep in as you move to the highest notes which can, of course, be numerically adjusted.
Unlike SOUND, ENVELOPE has no real equivalent on any other micro apart from the BBC. It is an inordinately complicated command on the BBC and only a little easier to use and understand on the Electron.
The first parameter following ENVELOPE specifies which SOUND command it relates to. Setting the SOUND command, say, to SOUND 1,3,101,10 will call envelope 3. Thus, 3 is the first parameter following the ENVELOPE command relating to this SOUND command. There are 16 possible envelopes — numbered one to 16. The second parameter following ENVELOPE determines the length of each step in the envelope (in hundredths of a second) and turns on or off auto-repeat.
A number from 0 to 127 means that the pitch envelope will repeat — if necessary — for the total duration of a note (as given by SOUND). A number between 128 and 255 means that the pitch envelope will only operate for as long as the ENVELOPE command specifies and will not repeat should the sound last longer than its envelope. Confusing, is it not?
SOUND 1,1,53,40 specifies a sound of two seconds duration (40 X 0.05 seconds). ENVELOPE, 1,10... specifies that each step in the envelope for that two-second sound will be 10 hundredths of a second long — or one tenth of a second. So, there can be at most 20 steps in the two-second sound. Now we come to the hard bit, the next parameters following the ENVELOPE command break the sound up into three parts and specify how the pitch will change (up or down by so many quarter semitones) for each step in each of the three parts and then specify how many steps there are to be in each of the three parts.
For example:
10 ENVELOPE 2,25,0,16,12,1,1,1,0,0,0,0,0,0
20 SOUND 1,2,53,120
gives a most interesting effect: three distinct notes repeating for a period of six seconds. The total duration of six seconds is given by the figure '120' in line 20 (interpreted as 120*0.05 seconds). Line 20 also specifies an initial pitch value of 53 — which is middle C — and opens channel 1 and calls envelope 2. Envelope 2 is defined in line 10. Each step lasts 25*0.01 seconds (which is a quarter of a second) and there is one step only in each of the three sections of the envelope (the '... ,1,1,1, ...' in the command). The first section shows no change in the specified pitch (indicated by the first zero in the ENVELOPE command). Therefore, middle C is played for a quarter second. After that, the pitch rises by 16 units for the second section: E above middle C is played for a quarter second. Finally, the pitch rises by a further 12 units: G above middle C is played for a quarter second. This C-E-G arpeggio lasts for a total of 0.75 seconds, and since .25 (the step duration parameter) is less than 128 it repeats until six seconds is up (which is eight times in all). Replacing 25 by 152 (127 + 25) plays C for a quarter second, E for a quarter second and G for 5.5 seconds — the pitch envelope does not repeat.
It is clear that ENVELOPE — even in the Electron's slimmed-down version — is a powerful command, allowing vibrato, siren effects and pitch bending as well as crude arpeggios like the above. Only practice will make perfect, because no matter what is said, the commands are very complicated. Since this is a review of the Electron, however I must conclude by saying-that such practice will be immeasurably more rewarding, musically, on a BBC than on an Electron.
When Is A Computer |
The Musical Micro - How To Save £54,800 |
Multitasking |
Software Support - Hints, Tips & News From The World Of Music Software |
Software Support |
Backing Up Is Hard To Do |
Music Composition Languages (Part 1) |
Amiga Notes |
On the net |
MIDI and the Micro |
ST Notes |
Software Support - Hints, Tips & News From The World Of Music Software |
Browse by Topic:
Feature by Gary Herman
mu:zines is the result of thousands of hours of effort, and will require many thousands more going forward to reach our goals of getting all this content online.
If you value this resource, you can support this project - it really helps!
New issues that have been donated or scanned for us this month.
All donations and support are gratefully appreciated - thank you.
Do you have any of these magazine issues?
If so, and you can donate, lend or scan them to help complete our archive, please get in touch via the Contribute page - thanks!