Questions and answers

Question: Use of READY with DIM arrays

I am writing an AMPLE program that will allow 'editing' of a MIDI expander unit. The program uses KEYB so that after MIDI setup information has been sent, the Music 4000 keyboard is active to play the selected MIDI voice.
I have used the DIM command to define arrays whose elements are variables used by my MIDI setup messages, but unfortunately, KEYB uses READY which has the effect of clearing all the memory reserved with DIM. So after each MIDI setup using KEYB the program 'forgets' where the arrays are located.
As the limit of 125 words prevents me from defining individual GVAR variables instead of using arrays, can anyone suggest how READY can be 'replaced' but still allow KEYB to function as intended? I have explored the AMPLE Nucleus Programmer Guide and so far have found no way to make KEYB work without READY. If I knew what memory addresses were 'free' could I reserve and poke the array space directly and not use DIM?
Les Pearce

Answer: 'Too many numbers' error

In response to Steve Hawley's problem in AMPLINEX 008: when I first obtained my AMPLE Nucleus ROM, I too got this error - always when using the Staff editor and always after entering 108 items. I returned the ROM and disc to Hybrid who sent me a replacement which behaved perfectly. So Steve, send it back to Hybrid.
Paul Nuttall
I too had problems with the Staff editor - it generated the 'Too many numbers' error, but only when the item counter (top right of screen) showed more than 100.
I contacted Hybrid concerning this problem and a few months later a replacement system disc arrived in the post, with an updated version of the Staff editor on it (Stave V3.0), on which this problem seems to have been cured. My advice, then, is to ring Hybrid and tell them about the problem as a new system disc could eliminate it.
K Harridence

Question: Long PLAY sequences

When constructing a recent piece of music, there were so many sections and mixes (not to mention unmixes) that the PLAY sequence carried on to a second line, followed by the word PLAY. I thought nothing of this until I came to play it when I found it didn't work.
I tried various permutations and alternatives without success and was eventually obliged to find ways of reducing the number of sections to get them into one line. It did not seem to matter if the word PLAY was put on the second line, and the piece now plays satisfactorily.
On examining more professionally written programs ('Cry' on Cosmix for instance) I was somewhat astonished to find that the "RUN" word merely gave the player sequence "123456"PLAY without any section or mix sequence. How this is achieved completely baffles me. It must be in the program somewhere, but I can't see anything which gives me any clue. Nor can I see anything about this in the Studio 5000 User Guide. Can anyone please show how this is done?
G H Richardson

For some advice about long PLAY strings see Questions and Answers in AMPLINEX 007. As to your comment about the PLAY structure in several 'Cosmix' pieces, the reason there are no mix numbers or section letters after the player details is because none are used in the piece. That is, the only parts are 'part1', 'part2', etcetera up to 'part6', and there is only one 'mix'.

Answer: MIDI instrument selection

I read with particular interest the comments about the Roland MT-32 (AMPLINEX 008) and Roger Sapolsky's question about whether he should buy the MT-32 to use with AMPLE (AMPLINEX 007). I use an MT-32 with AMPLE and currently write more for it than for the Music 5000. It works very well with the Music 2000 MIDI interface. However, like all gadgets that can be adjusted, it soon becomes a compulsion to try and improve the voices.
Apart from minor niggles, the MT-32 MIDI implementation is good. I would like to hear comments from fellow users and I also look forward to the possibility of MT-32 MIDI programmes being exchanged via AMPLINEX.
David Reed

Question: AMPLE from bulletin boards

Having successfully downloaded much software from Prestel (initially MusicLink, and then Music City), I have recently moved on to try to download AMPLE software from various bulletin boards, but with differing levels of success.
Of the 1200/75 baud Viewdata formats:
AMPLE DCT (& Maestro) - no problems.
'The Firm' (Seahaven BBS) - only 2 out of 8 tunes worked, but all the menus downloaded worked OK. Those that didn't work gave the 'Bad program' error.
Of the scrolling formats:
AMPLE DCT2 - all programs had problems or word definitions missing. (This requires the use of XMODEM, but the program offered on the board does not guarantee success.)
I am particularly keen to download from 'The Firm' as there appears to be a wide choice of titles available, but repeating the download gives an identical file with the same problem.
Has anyone had problems like this, and if so, have you found any solutions? In case it is relevant, I am using a Pace Nightingale modem and Commpanion (CommSoft) software.
Tony Walduck

Answer: Aries B32 memory saving

In AMPLINEX 008, Jack Wrigley asks why he ends up with less memory with an Aries B32 memory board fitted. For a full answer he should refer to my piece in the 'Hints & Tips' section of AMPLINEX 007. In the meantime, if he types in
*XON 20 A <RETURN>
before booting the system disc, the missing memory (and more!) will miraculously appear.
Pete Christy

Question: MIDI possibilities

All this Music 2000 MIDI interface discussion has set me wondering: I've got a Yamaha DD-10 drum machine that I use at the moment purely as backing when playing my Symphony keyboard live. This has 24 PCM percussion voices, which sound much better than any 2-channel Music 500(0) equivalents.
Now, given a Music 2000 (please!), presumably any 8 of those voices could could be used in addition to the 8 Music 500(0) ones. The only MIDI socket it has is "MIDI in", would this be sufficient?
Also, when using the 500(0) alongside a MIDI instrument, what happens in the Mixing Desk? Is there a modified version supplied with the 2000 software that displays 16 voices?
One last question, would a program designed to play from a combination of hardware such as I've described above be accessible by other AMPLINEX members with a Music 2000, but using a different MIDI instrument?
Jack Wrigley

Answer: Acoustic instruments

In AMPLINEX 005, Jeff Parton requested information on the harmonic spectra of acoustic instruments. One potential starting point is an article by Hal Chamberlin (I'm afraid I don't have the title) in the April 1980 issue of Byte magazine. This featured harmonic graphs for half-a-dozen or so acoustic and 'invented' instruments.
The footnotes mention a series entitled 'Lexicon of Analysed Tones' which featured in an American magazine, Computer Music Journal, around 1977/78. I don't know if the magazine is still in publication some 11 years on, but its address is/was:
Computer Music Journal,
People's Computer Company,
Box E, 1263 El Camino Real,
Menlo Park,
California 94025, USA
Vincent Fojut
For anyone interested in the spectra of classical organ pipes the following book is recommended. It gives a graphical presentation of the harmonic analyses of 27 different types of pipe.
'Organ Registration - in theory and practice', E Harold Geer, J Fischer & Bro (New Jersey), 1957
Another relevant book is
'Dictionary of Pipe Organ Stops', Stevens Irwin, Schirmer Books, 1965
Although no data is given on spectra the general shape of the harmonic series is discussed for a large number of different pipes.
Dr Mike Mellors

Answer: Synchronising music and lyrics

Michael Harbour (AMPLINEX 007) asked how to output the lyrics of a song to the screen at the right moments. The AMPLE Nucleus Programmer Guide suggests using the AMPLE command QTIME to do this.
Set up the following word:
"wait" [REP(QTIME 0#<)UNTIL(IDLE)REP]
and then use a 'dummy' player (normally part9) to handle the text output.
For example, if each section of the piece (introduction, verses and chorus) is 4 bars (of length 192) long, and text needs to be printed at the start of each section (except the introduction) then
"part9" [
192,^^^^ wait "verse 1 text" $OUT
192,^^^^ wait "verse 2 text" $OUT
192,^^^^ wait "chorus text " $OUT
192,^^^^ wait "verse 3 text" $OUT
% etc.
]
will output text after the introductory 4 bars have been played.
This example would output the entire text of each verse or chorus to the screen at once. If output is required line by line, word by word or even note by note, this can be done by replacing the 4 bar durations in part9 by the gap duration needed.
Ivor Abiks

Question: New lines in Notepad

I discovered recently, after much gnashing of dentures, that pressing the RETURN key to get to a new line in Notepad is of no use. You have to use the arrow key to move to a new line. If you use 'RETURN' you just get told 'Mistake' - and a fat lot of use that is!
Jim Brook

The only way I can reproduce the problem you describe is by putting an invalid command in the TRY string. For example, entering
"0: ABCDEFGH" TRY
at the command prompt and then pressing RETURN whilst in panel mode (with a flashing block cursor) will generate the 'Mistake' error message.
If this is not the problem, please let us have a copy of a program where this occurs and details of what commands you perform.

Question: AMPLE Nucleus vocabulary

Does anyone know if there is an AMPLE Nucleus vocabulary list word, the equivalent of FORTH's VLIST? It can be useful to have an on-screen dump of words for quick reference. I know there isn't one defined in the AMPLE Nucleus Programmer Guide.
Dr Mike Mellors

As far as I know there is no such word. It would be fairly simple, however, to make such a facility available as part of the AMPLE Nucleus Help Facility ROM which was included in AMPLINEX 008. If other members are interested, or if anyone has any other ideas on uses for the ROM, please let us know.

Editor's note:
The comments following some of the questions above are only my opinions on the subject and should not be taken as definitive answers.
Your comments are most welcome on any of the questions posed, whether they supplement, confirm or correct any I have expressed.

Published in AMPLINEX 009, January 1989