Questions and answers

Answer: Shadow RAM choice

In answer to Keith Taylor's question in AMPLINEX 017: I don't think there is a Shadow RAM board for the BBC that doesn't have its drawbacks. However, one that seems to have less operating problems than most is the Integra-B from Computech.
It can be set to access Shadow RAM, and AMPLE seems to make full use of it. The Shadow modes can be disabled, so that games and other non-Shadow applications can be run.
Its one big handicap though, is the price - £135. But for that you do get Shadow RAM, Sideways RAM and extra ROM slots, as well as other goodies. Unfortunately, Hybrid's Sideways RAM utilities (in the AMPLE Toolbox) will only work on a Master 128, not on a B+ or expanded Model B.
Patrick Black

Answer: The 'M.M5' module

Further to the question in AMPLINEX 016 about the meaning of various words in the M5 module: AEN, PEN and ONEN select respectively amplitude, pitch and both envelopes for subsequent GATE effect.
For example, PEN ON GATE will start just the pitch envelope. This is used, for example in 'Mexico Suite third movement'. A useful definition is:
"pgate" [PEN GATE]
Hybrid Technology

Question: FOR(...)FOR command

When I have a piece of music on the screen containing a FOR(...)FOR command, and I try to use the f1 'play' key, it always produces a '! Bad context' error, forcing me to MAKE it and type in its name as a command. Can anyone help, please?
David Bloxham

Answer: Mozart's musical dice-game

In response to Vincent Fojut's query in AMPLINEX 017 concerning Mozart's musical dice game: a more recent source of information on this topic may be found in the book 'Creative sound on the BBC' (pages 185-194) published by Acornsoft and written by David Ellis and Chris Jordan. I suggest this as an excellent source in the first instance.
It provides quite a comprehensive introduction, together with diagrams to show the essential structure of the random 'generator', and a program, written in BASIC, but with the musical notation in the DATA statements - known affectionately as Music Composition Language (MCL) - having a relatively familiar appearance!
If any AMPLINEX members interested in music programming have not yet seen this book I recommend they get hold of a copy and browse through.
Len Chirgwin

'Creative sound on the BBC microcomputer Model B' by David Ellis and Chris Jordan published by Acornsoft in 1985 at £9.95p (ISBN 0907876226) contains both a description of the dice game attributed to Mozart and a complete program in BASIC which uses the internal sound chip of the BBC B. Some time ago, Micro User were offering the book at a discount. Although not currently advertised, they may still be able to supply.
Alan Minns

Answer: Music City on Prestel

Philip Hunter AMPLINEX 017 asks about Music City. This used to have Music 500 and 5000 files, but it closed some time ago. It has recently been resurrected, but is now dedicated to MIDI - no AMPLE files. As far as I know there isn't an area on Prestel catering for AMPLE any more.
However, a modem will give access to AMPLE DCT, who have a very good Music 500(0) section. They are at Dudley College of Technology, and their phone number is (0384) 239944. There is a free area and Maestro, for which there is an annual access fee of £3.50p (for MCPS copyright charges).
You pay the cost of the phone call, but nothing else. They do like contributions though!
Patrick Black

Music City indeed no longer supports the Music 5000 system. It used to: in fact, it is where I got my first break, but that was two years ago, when it was run by Ian Guinan and Guy Oldhams. Music City now concentrates mainly on MIDI, Amiga and ST thingumajigs, under new government.
The only music board I know of that supports the Music 5000 is that run by 'Panda' man David King: AMPLE-DCT. The address for contributions or information) is:
David King
Dudley College of Technology
The Broadway
DUDLEY
West Midlands
DY1 4AS
The DCT database covers a wide variety of other areas too, not just music.
Phil Comber

Questions: Letters after modules

When MCAT is used, it displays the module name, version number and then some letters. What do the letters mean?
David Bloxham

Answer: AMPLINEX Staff Printer (1)

Like Jack Wrigley (AMPLINEX 017) I was also very interested in the Staff printing utility published in AMPLINEX 016, but was annoyed to find that it did not seem to work on a BBC B with Aries B32 Shadow RAM. However, it is quite straightforward to alter the program to do so.
Lines 9 and 10 in the file U.ASP can be deleted as these select the Shadow RAM on a Master. Line 11 must be left in as it expands the space available for user-defined characters, which are used by the Staff Printer to define the symbols on the staff.
In the file U.ASP2, I found that the program would work perfectly if the
PROCass:CALL code%
in line 40 was REMarked out.
Julian Benton

Answer: AMPLINEX Staff Printer (2)

In reply to Neil Walker's query about the AMPLINEX Staff Printer (AMPLINEX 017), the short answer is no. The purpose of the 'CALL code%' command is to provide a cyan/black stippled border to the screen windows. In the machine code, the subroutine call to &FFB3 is machine specific - it does not exist on the humble Model B! I seem to remember that its purpose is to write a byte to the video memory. Although no harm is done if this routine is omitted, it can be implemented fairly simply for the Aries system.
With apologies to Bob Ord, I have removed some redundant code from his dump routine to reduce its length and added a short piece of code to give the stippled border. This new U.ASPcode file (included on this disc) is suitable only for the Aries system and replaces the original one. To use it, modify the U.ASP2 program by deleting the whole of PROCass starting at line 290 and at line 40 replace 'PROCass:CALL code%' by 'CALL &ACE'.
Bob Ord is to be congratulated on getting such a complex program to work. Alas, when I came to test my modification, two problems arose.
1) In decoding a program word, he searches for the word 'SCORE' following the '%STAFF' command - but not all STAFF words begin with SCORE. This may be corrected by modifying line 2110 thus:
2110 REPEAT:m%=m%+1:UNTIL?m%=&51
2) If the program encounters a double octave jump, such as '!!a', it will stop with a 'Subscript' error. If lines 950 and 960 are replaced by the following, both '!' and '!!' are handled correctly.
955 IFd%-&DC ELSEz%=m%?1:z%=m%? (1-(z%=&DC)):t%=1-((z%MOD2)*2): IFb%cptr%=cptr%+7*t%ELSE pptr%=pptr%+7*t%
Jack Wrigley's problem (AMPLINEX 017) is a little more complex. Yes, the '*FX114' and '*SHADOW' lines must be removed but retain the '*FX20,3'. This explodes the character font and raises the value of OSHWM by three pages to make room for the special characters used in the staff printing - this is why PAGE is reset to &1C00. But now, because the Aries Shadow RAM is initiated by default, OSHWM is raised by a further page to provide workspace for the Aries system. It is necessary to specify PAGE at &1D00 in order to make room.
This may not leave enough memory for the variables. It would be better to allocate a specific page (e.g. &1800) for the Aries workspace thus:
*XOFF
<BREAK>
*XON 20 18
MODE 7
The program should then run properly.
Alan Minns

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.

Related files on this disc:
U.ASPcode - Replacement file for the AMPLINEX Staff Printer (published in AMPLINEX 016) for use with the Aries Shadow RAM board.

Published in AMPLINEX 018, July 1990