AMPLINEX 012

image
AMPLINEX issue 012 was published in July 1989. Each AMPLINEX magazine is stored as a 200K single-sided 80-track disk image file (.ssd file type). The image can be used to create disks for a BBC Micro or can be loaded into a BBC emulator. For the disks to run, the BBC (real or emulated) must have an AMPLE Nucleus ROM installed and be running the Hybrid Music System.

News and reviews

In this issue's News and Reviews section we have the latest news from Hybrid Technology as well as reviews of the Music 1000 amplifier, the Roland D-110 MIDI expander and a new AMPLE music disc from an AMPLINEX member.

Hybrid Technology news

Hybrid Technology have pulled out of this year's 'Acorn User Show' (which is taking place as we 'go to press'). In a letter to customers who were expected to attend, Hybrid explained their belief that the show was no longer a suitable event for BBC micro products and that it was instead a promotional event for the Acorn Archimedes range.
We are no longer planning to review the Music 5000 Junior since Hybrid Technology have decided not to release the product. The Music 5000 Junior was announced last November as a low-cost, easy-to-use package using an 'icon-driven' graphical presentation. The package was not AMPLE-based and had its own 32K ROM and disc. Hybrid have now decided to shelve the product in favour of other 'new developments'. Whether the attractive mode 4 graphical display will make an appearance in another guise remains to be seen.

Review of the Music 1000 amplifier

Tony Walduck
This unit comes in the same sized box as the Music 5000. At the front are two volume controls (for two inputs), a power-on indicator (red LED), and three quarter-inch jack sockets for headphones (use of the left-hand socket will mute the loudspeaker outputs).
At the rear are three 5-pin DIN sockets: two are used as independent stereo inputs, and the third is an amplified mixed stereo output, presumably for tape recording, further mixing or external amplification. There are also two DIN loudspeaker sockets (switched by the left-hand jack socket on the front), and the mains on/off switch (single pole).
Within the box is a circuit board very sparsely populated with components. The power supply consists of just a 240v to 6v-0-6v transformer, four 1N4002 diodes and two 3300uF 10v electrolytic capacitors. The amplifier circuitry consists entirely of one NE5532N dual low-noise op-amp, two TDA2030 audio class B amplifiers on a simple heatsink, eight electrolytic capacitors, twelve other capacitors, and nineteen resistors apart from the two 2-gang Log volume controls.
The circuit board is labelled '(C) 1986 HYBRID TECHNOLOGY LTD M100 ISSUE 3' - the Music 100 was the amplifier back in Music 500 days.
My first experience of the output was via headphones (RS dynamic headphones, 20Hz to 20kHz, impedance 8 ohms). My initial reaction was of dismay as I encountered an unacceptably high level of noise (hiss) and hum. I still can not achieve an acceptably quiet background for headphone use.
In addition the volume control has to be turned right down for comfortable headphone use, and at this setting severe subjective attenuation of the high (and lower) frequencies occurs giving a very dull, 'lifeless' reproduction. These subjective effects diminish as the level is turned up, with the result that an acceptably flat response is only achieved at an uncomfortably loud level.
When driving loudspeakers the volume control has to be advanced further and the noise problems, in effect, disappear. The response is acceptably clear until high volumes, when some distortion can appear.
There is no documentation whatsoever with the unit and therefore no published specification - so presumably no unit can fail to reach specification! In fact, one of the problems that I found with the Music 1000 is that I had to buy one before I found out the details of operation (e.g. loudspeaker muting when using headphones).
I would expect the minimum acceptable documentation to give the levels and impedance of all inputs and outputs, and indicate whether the output is short-circuit protected. I can only guess as to the input level and impedance needed for the DIN output.
At £169, the Music 1000 is an expensive amplifier for the limited facilities offered. However, for amplifying the Hybrid Music System other considerations, such as size or arrangement of controls, may assume more importance.
A look inside the unit shows at a glance that it is grossly overpriced for what it contains (I would estimate component costs at way below £50). There are a mere three ICs within this unit, compared with the Music 5000's count of 38! In addition the Music 5000 comes complete with an EPROM, a disc, and a 160-page bound manual. This unit comes with nothing extra.
As far as performance is concerned, whereas for loudspeaker use the unit may be perfectly acceptable, when you have to use headphones (and the unit is specifically designed for headphone use) the quality is of an unacceptably low standard.
I am sorry, but I cannot recommend this unit to others.

A review of the Roland D-110

Roger Sapolsky
My computer-music system has recently been completed with the addition of a Music 2000, a Roland D-110 expander and a Boss BX-600 mixer. This could be my ultimate step, unless a future review of some apparatus, say a D-110 programmer, is convincing enough to make me look again.
The need for a mixer was brought to my attention through AMPLINEX - it is amazing that the Music 2000 User Guide doesn't say a word about it. The mixer makes possible the separate adjustment of the volume and stereo position (PAN) of 2 (or even 3) synthesisers and connects them to a common amplifier or tape recorder.
After a straightforward installation, the Roland D-110 will entertain you with its excellent ROM-based example programs, at the push of a button. The sounds are amazing: the brass-section riffs and drum-breaks of a jazz standard, the guitar in a folk number, all sound like the real things - well, almost!
A few weeks of experiment have disclosed some of the D-110's secrets. First a few definitions. A 'Timbre', or 'Sound', is a 'Tone' plus 5 parameters (key shift, fine tune, etc). The Tone is the basic unit of a sound. The 'Patch' is a selection of 8 Timbres each assigned to a player, readied for 'ensemble play'. Compare this with the Roland MT-32: its timbre is called a Patch, its tone is called a Timbre and it has no patches as just described.
After setting up the synthesiser with the Music 2000, beginners will probably start to work through the Music 2000 User Guide. One of the first suggestions is to assign the MIDI instrument to one of the voices in the example piece, 'Manor'. However, because the slurs in the score are ignored by MIDI, some people may be disappointed by the unpleasant hiccups in the MIDI-instrument version.
This fact is mentioned much further on in the User Manual and fortunately, there is a MIDIBEND instruction to take care of slurs (and slides).
The AMPLE music words dealing with the setting of dynamic levels are also ignored by the components of a drum kit, unless it includes only one instrument but this can be worked around using a system exclusive command (see Hints and Tips in this issue).
The D-110 has 127 preset 'timbres' plus 63 preset 'rhythmic setups'. These may be increased two- or three-fold by optional ROM cards. To select a timbre, you simply write its 'program change number' (CP) before the 'MIDIPROGRAM' command, either in mix9 (the MIDI assignment mix), or the place in the score where you want to select a new instrument.
A 'CP MIDIPROGRAM' command makes the D-110 fetch one of the preset timbres from its own memory, but there is no instruction to access one in a ROM card. Using the front panel controls seems to be the only solution, unless you transfer the chosen timbre from the card into memory. This action wipes out an existing timbre, but not its companion tone which is stored in memory (sections 'a' and 'b'). Tones in these sections may not be written to, in contrast with section 'i' which stores 64 programmable tones.
A consequence of the increase in available players and sounds, plus the time-saving brought by calling 'patches' is that programming becomes simpler. With a few hundred 'instruments' at his or her disposal (including the AMPLE presets and user instruments - often as good as their D-110 counterparts), the average amateur musician may seldom feel the need to create new sounds.
It is true that the selection of the 200-odd parameters to define a sound is difficult in the absence of a text-book giving the user a guideline. The sound programs which are regularly published in French magazines (to which I have access) unfortunately ignore the D-110. I have the consolation of being able to program pieces of music intended for the Atari, without sacrificing any of the players or reducing the number of notes in the chords. I have an interest in jazz music and I have been able to use arrangements for 3 horns, piano, bass and drums, with provision for solos, to good effect.

'Jazz Disc Volume 1' by John Bartlett

Roy Follett
It makes a nice change to review a music disc compiled by an AMPLINEX member - and the pleasure was increased by its content.
There are eleven tunes, nine of which are original, the other two being 'Black Eyes' and 'Swing Low Sweet Chariot'. The arrangements mostly have a guitar flavour.
The most striking feature of this disc is the way John Bartlett has captured a sound that is most definitely a performance, with the nice touch a musician can bring to a tune. If you want to hear what AMPLE, in the hands of a musician, can really do, this is the disc for you.
Personally, I never thought I would hear tunes programmed on a computer that did not sound precisely that; i.e. with the pedantic, rigid timekeeping that a computer can do so well. John has broken the mould. Here is a collection of good tunes, good programming, and above all a pleasure to listen to.
'The Jazz Disc volume 1' costs £3.50 - see the advertisement this issue for details on how to obtain the disc.

Published in AMPLINEX 012, July 1989

Windman

by Neil Walker

Amjam trio present

A bit of fiddling with the system clock via the WIND word. I have used part9a to control the articulation of the vibe player, by moving the WIND start position further into the bar as the 1st phrase is repeated.

There is not much spare time left for, for example, the Mixing Desk, due I think to the VOICE changes on drums, and overworking the vibe player.

The music is a bit of AMPLE wind (the other kind!), originally written to be played quite slowly.

Neil Walker
 

Source: AMPLINEX 012 disk, file $.WINDMAN


Published in AMPLINEX 012, July 1989

Time is on My Side

by Jack Wrigley

Composed by: Norman Meade

A Rolling Stones classic that was first recorded by Irma Thomas way back in the early sixties

Originally recorded by Irma Thomas in the early 60's, but best remembered by the Rolling Stones' 1964 version.

Well, AMPLE plays some old fashioned rhythm and blues music!

I would be the first to admit that this 'barely scratches the surface' of AMPLE compared to some of the weird and wonderful approaches to programming published by AMPLINEX. However, it works and may serve as an example to newer members that if you're prepared to enter parts 'longhand' then very little knowledge of AMPLE is required. That certainly couldn't be said of the old AMPLE BCE system!

Jack Wrigley
 

Source: AMPLINEX 012 disk, file $.TIMEIS


Published in AMPLINEX 012, July 1989

Syrens

by Lol Taylor

The first version of this piece I made using an EMS Synthi in the late 1960s. I had to do a lot of dubbing so that the result finished up with tape hiss and clipping in the louder parts.

Unfortunately I haven't yet located the tape reel so this version is based on memory only, and must vary from the original quite a lot.

The sirens are sea nymphs, part woman part bird, whose songs lure sailors to their deaths.

LT
 

Source: AMPLINEX 012 disk, file $.SYRENS


Published in AMPLINEX 012, July 1989

Still is the Night

by Bill Buckley

This music is written so that it plays forever and so this recording is just a sample of the music that it could produce.

 

Source: AMPLINEX 012 disk, file $.STILL


Published in AMPLINEX 012, July 1989

Star Trek Theme

by David Reed

Composed by: Alexander Courage

 

Source: AMPLINEX 012 disk, file $.STARTRK


Published in AMPLINEX 012, July 1989

Sleepy Shores

by Tony Fishpool

Composed by: Johnny Pearson

 

Source: AMPLINEX 012 disk, file $.SLEEPY


Published in AMPLINEX 012, July 1989

See Nature Rejoicing

by Roy Atkins

Composed by: Henry Purcell

I am a British expatriate living in The Netherlands. This year marks the 300th anniversary of the Golden Revolution, when William of Orange left Holland to claim the throne of England and with his wife Mary reigned for many years.

The tercentenary, which ends on 1st July 1989, has been celebrated by numerous cultural events linking the two countries. Many of the events have featured the music of Henry Purcell, the composer to the Royal Court of W&M.

This piece was part of a suite written to celebrate Queen Mary's 33rd birthday in April 1694. She died later that year.
 

Source: AMPLINEX 012 disk, file $.NATURE


Published in AMPLINEX 012, July 1989

Rainbow

by Tim Sketchley

 

Source: AMPLINEX 012 disk, file $.RAINBOW


Published in AMPLINEX 012, July 1989

Prelude and Fugue in C

by Paul Nuttall

With apologies to Bach

 

Source: AMPLINEX 012 disk, file $.PRELFUG


Published in AMPLINEX 012, July 1989

Magnetic Media

by The Awfully Nice Software Co

 

Source: AMPLINEX 012 disk, file $.MEDIA


Published in AMPLINEX 012, July 1989

Living for the City

by Peter Stephens

Composed by: Stevie Wonder

 

Source: AMPLINEX 012 disk, file $.LIVING


Published in AMPLINEX 012, July 1989

La Volta

by Pete Holdroyd

Composed by: Michael Praetorius

This jolly little number in waltz time is yet another piece of Baroque music, following on from La Venissiene (in AMPLINEX 009).

La Volta was probably collected by Praetorius in the early 17th century, and arranged by him. It is possible that he composed it himself.
 

Source: AMPLINEX 012 disk, file $.LAVOLTA


Published in AMPLINEX 012, July 1989

The Killjoy Blues

by Diccon Maude

Or 'Cacophony in Motion'. An experiment.

I know that not everyone will like this piece _ sorry if you don't. However, there may be ideas in it that you can use.

As the titles say, it is an experiment - in randomization, echo, and stereo positions, among other things.

Look into the words and see if you can understand the processes.

Good luck with your own experiments.

Diccon Maude
 

Source: AMPLINEX 012 disk, file $.KILLJOY


Published in AMPLINEX 012, July 1989

Drunken Plea

by Paul Hibbert

This is the first song ever to be completed by myself.

I must have been really sad about something because the lyrics go on and on and I wouldn't want to bore you with them.

Suffice it to say that no matter how bad the tune or lyrics are, this one will always be special to me.
 

Source: AMPLINEX 012 disk, file $.PLEA


Published in AMPLINEX 012, July 1989

Cavatina

by John Bartlett

Composed by: Stanley Myers

One item of possible interest in this arrangement is the 'mix' change between parts 'e' and 'f'. There have been queries from time to time about unmixes and the audibility of such changes. In this piece parts 'a' to 'e' are played by 3 separate players - two with 3 voices and one with 2 voices. But part 'f' required 1 player with 6 voices.

The normal 'unmix'-'newmix' method can leave a nasty glitch in the sound, most particularly in rhythmic pieces.

The alternative is to remix within the parts themselves.

In this piece there is little to choose between either method, but both are demonstrated.

The conventional solution can be found in parts 'y', 'z', 'mix1', 'mix2' and 'play1'. Simply type play1 and the last two parts will play. 'mix1' is a 'sub-unmix' as described in the manual and 'mix2' is a conventional mix.

The 'internal' remixing can be seen in 'part1e', 'part3e' and 'part1f'.

The solution was to let player 2 (with two voices) play the last bar of part 'e' and juggle players 1 and 3. This is achieved by freeing players 1 and 3 in section 'e' with the instruction

3SHARE 3VOICES UNUSED

and assigning the new voices to player 1 with '1SHARE 6VOICES' in 'part1f'.

It is important to take care where these instructions are placed because if they are not placed properly the glitch can be worse than with the conventional method!

The 'solo' instrument is one which I created many moons ago and always serves well for a guitar voice.

Appreciation also to Richard Bettis whose ACT definition has been used unmodified for the arpeggios.

But enough of this!

Just listen to the beautiful music.
 

Source: AMPLINEX 012 disk, file $.CAVATIN


Published in AMPLINEX 012, July 1989

Wave-Designer bugs and solutions

Dr Mike Mellors
I received a copy of the Soundsculptures Music 5000 Wave-Designer software package for a BBC Master 128K computer earlier this year. The software is very good, has obviously been well thought out, and is easy to use. In particular, the manual is excellent.
There are niggles, such as no choice of disc drive other than 0 for all disc I/O, but then it is difficult to get everything right for all users. I did find that the printing option worked without problems on my Star NL10 printer once line feeds were enabled (see earlier review in AMPLINEX 004).
However, the software does contain some bugs - 3 small ones that the user can live with if he knows about them, and 1 very large one that the user should not live with and of which he may be unaware. I have written to the designer to ask him to consider correcting these bugs.
I must emphasise that my observations and comments apply to the BBC Master compatible version of the Wave-Designer package for the Music 5000. I believe that the large bug applies also to the Music 500, since the Music 500 software produces correct waveforms on the Music 5000 hardware.
The bugs are listed below :
1) The PLAY facility: the computer hangs up at the data transfer stage with the transfer message remaining on screen. CTRL+BREAK is the only way out. Hence this useful design facility cannot be used, which means that all waveforms have to be stored on disc before loading into the Music 5000.
2) When individual waveforms (preset W) are loaded from disc into the Wave-Designer, only odd-numbered waveform stores are loaded correctly.
When loading a waveform into an even-numbered store the first point of the waveform (point number 1) loads into the location intended for point number 128 of the previous odd-numbered waveform. The remaining points (2 to 128) load into locations intended for its points 1-127. The location for point 128 remains unloaded.
Thus, if you load wave stores 1 to 13 in that order, one at a time, each odd-numbered store has its point number 128 corrupted and each even-numbered store has its point number 1 corrupted. Avoid the bug by using only odd-numbered waveform stores for loading in single waveforms (preset W).
For a single file of 13 waves (preset P) the loading into the waveform stores occurs without error.
3) When saving a set of 13 waveforms (preset P) to disc the last point (number 128 of waveform 13) does not get saved. Hence this point remains at some previous value for waveform 13 when the file is loaded into the Music 5000 or the Wave-Designer.
4) The Wave-Designer data files do not produce the designed waveforms when loaded into the Music 5000. The waveforms produced are severely distorted in a non-linear fashion when compared with the designed waveforms, which means that the spectral content of the sound produced is different to that designed.
Bug number 1 is unfortunate, but in view of bug number 4 it is irrelevant. This last bug was found through curiosity - to see how closely the waveforms emerging from the Music 5000 compared with the designed waveforms. I put an oscilloscope on the output of one of the channels of the Music 5000 taking care to switch off the other channel by setting its AMP to zero. I was amazed to find that the waveform I saw looked nothing like that expected.
A few measurements and calculations soon confirmed that a logarithmic conversion had being applied to the Wave-Designer data by the time it emerged from the Music 5000. A look inside the Music 5000 (how else could I find out?) not only confirmed the form of conversion but also the parameters of the law being applied.
Hybrid Technology have used a mu-law DAC chip to enable high dynamic range and high signal-to-quantization noise to be obtained with 8-bit data. It seems the Wave-Designer does not take this into account in loading the data into the Music 5000. If the waveform data were encoded correctly before loading into the Music 5000 the designed waveforms would be produced.
I have, therefore, written a program to enable users of the Wave-Designer to obtain the designed waveforms from the Music 5000. The program encodes the waveform data files stored on disc by the Wave-Designer into the correct form, so that subsequent loading of the encoded data produces the correct results.
During the design phase both the original and encoded data files need to be kept, since the Wave-Designer works with the original files and the Music 5000 needs the encoded files if the user is to hear the sound of the waveform as designed. Only when the design is finished can the original data be deleted.
The data conversion program works with DFS and assumes files of prefix W or P as used by the Wave-Designer system. The program removes bug number 2 by prompting the user for the value of point number 128 for waveform 13 for waveforms with preset P. The program also allows the user to choose disc drive numbers for original (input) and encoded (output) files.
I would suggest that a copy of the program is stored on the waveform disc.
As well as producing encoded data files for the Music 5000 the program can also produce data files which, when loaded into the Wave-Designer, will show the user what Music 5000 waveforms result without the encoding process. Hence you can view the results you would normally get. These are 'view' files, distinguished by giving them a file name beginning with the letters VIEW (lower case letters are also acceptable).
The program should run on BBC B, B+ and Master machines. It has been set to run with PAGE at &1900 and has been tested on a BBC Master and Model B. The instructions for running the program are given below. The program prompts for all the input required.
Instructions for the wave converter program U.TFWave:
1) Enter *RUN U.TFWave to run the program
2) Enter a disc drive number for the input files (those produced by the Wave-Designer) and for the output files (those to be produced by U.TFWave)
3) Enter the file prefix, W or P, as assigned by the Wave-Designer
4) Enter the input and output file names (if drive numbers are the same and file names identical then the output file overwrites the input file, which might be desired when a design is completed). Note that an output file beginning with the letters VIEW will produce a file for input to the Wave-Designer which will enable you to 'view' the Music 5000 output which would be produced by the original Wave-Designer data
5) If the file prefix is P the value of point number 128 for waveform 13 will be requested
6) When the output file has been produced you can choose to continue with another file, change disc drive numbers, or exit the program
If any file fails to open an appropriate message is issued. Replies to the prompts should not be preceded by spaces. The Return key is used to enter the reply to allow any mistakes to be corrected.
The Wave-Designer is a good piece of software but its bugs need correcting. I hope the U.TFWave program enables users to make proper use of the Wave-Designer software package.

Related file on this disc:
U.TFWave - Wave-Designer data file converter

Published in AMPLINEX 012, July 1989

Instruments

To make the best use of disc space we have combined several instrument definitions into one file. These can be saved individually if required, either by loading/saving via a word processor or from within AMPLE (after *EXECing in this file) using:
*SPOOL insfile
"insname" TYPE
*SPOOL
where 'insfile' is the file on which the individual instrument definition is to be held and 'insname' is the
% word containing the instrument definition.
"guitar" [2 CHANS
1 CHAN
   ON RM    300 OFFSET
2 CHAN
  128 AMP
EVERY CHAN
  Hard       Delvib       Long
% by Ian Waugh
% See Questions and Answers section
]
"sb4info" [DISPLAY
%
% Notes on 'synbass4' by Mike Dobson
%
% A fairly meaty percussive bass sound
% with a nice zappy quality. This is
% virtually the same as a sound on the
% Casio CZ-1 synth, which used to cost
% four times the price of a music
% 5000/4000!
%
% It sounds best between -3: and 0:
]
"synbass4" [4 CHANS
1 CHAN
 Reedy       Zap         Strike
   60 SHIFT   ON SYNC
2 CHAN
 Watery      Flat        Strike
  90 AMP  OFF  INVERT
3 CHAN
 Bright      Delvib      Peaked
 -192 SHIFT  OFF SYNC  OFF RM
4 CHAN
 Metal       Zap         Click
 128 AMP  OFF  INVERT
EVERY CHAN
  ON  PHSET
% by Mike Dobson, see 'sb4info'
]
"timpani" [2CHANS
1CHAN
 Pure Strike  68 FM -25 SHIFT
2CHAN
 Metal Percuss -112 SHIFT 90 AMP
EVERY CHAN ON PHSET
% Usual timps range about -2:F to -1:G
% Much above 0:C the timps become
% bells - good for very deep sound
% effects
% NB! Frequency Modulation with Metal
% waveform puts 1CHAN sharp, hence -25
% SHIFT. If you alter the FM setting
% be prepared to tinker with 1CHAN
% SHIFT too.
% by Roger Cawkwell
]
"vox4" [4 CHANS
1 CHAN
 High      Vibrato   Strike
 128 AMP   ON SYNC  -420 SHIFT
2 CHAN
 Syncer    Slowvib   Spike
3 CHAN
 High      Deepvib   Strike
 128 AMP   ON SYNC  -440 SHIFT
4 CHAN
 Syncer    Vibrato   Spike
   1 SHIFT 200 OFFSET
EVERY CHAN
 OFF PHSET
% by Mark A J Mulders
]
"electro" [2 CHANS
1 CHAN
 Watery    Zap       Strike
 128 AMP   ON SYNC  -420 SHIFT
2 CHAN
 Syncer    Slowvib   Peaked
   1 SHIFT 200 OFFSET
EVERY CHAN
 OFF PHSET
% Just the sort of 'electronic' sound
% you expect from a computer really.
% by Mike Dobson
]

Published in AMPLINEX 012, July 1989

A&B Computing ‘Jukebox’ program – correction

Allan Gardner
For more details see Hints and Tips section in AMPLINEX 012, published July 1989.
"fkey4"[]  "select"[]
"prog"[]   "run"[]
"fkey4" [
IF("KEY4|""jukebox""LOAD run|M"OSCLI
)ELSE("KEY4 CLEAR|M"OSCLI)IF
]
"select" [
% select file for running or storing
0 oldx #! 6 oldy #! 0 ord #!
0 newx #! 6 newy #! pick
REP( #IN #11 13 #= )UNTIL(
#11 138 #= IF(newy #? 16#< IF(no-y
IF(update   1 newy #+! pick)IF)IF)IF
#11 139 #= IF(newy #?  6#>
IF(update  -1 newy #+! pick)IF)IF
#11 137 #= IF(newx #? 21#< IF(no-x
IF(update  13 newx #+! pick)IF)IF)IF
#11 136 #= IF(newx #?  0#>
IF(update -13 newx #+! pick)IF)IF
#11 135 #= IF( ON fkey4 prog )IF
114 #= IF(refresh)IF
)REP #2  prog
]
"prog" [
% program file sequence buffer
names ptr-a #! 1 ord #+! ord #?
#11 64 #<  IF(
newx #? 3 #+ newy #? tab NOUT
42 ptr-b #? #B!
newy #? 5 #- newx #?
13 #/ #2 11 #* #+ 1#-
FOR(ptr-a #? #B? 1 #+ ptr-a #+!)FOR
7 FOR(1 ptr-a #+! 1 ptr-b #+!
ptr-a #? #B? ptr-b #? #B!
)FOR
1 ptr-a #+! 1 ptr-b #+!
0 ptr-b #? #B!
)ELSE(#2)IF
]
"run" [
% runs Jukebox after clearing any
% currently programmed sequence
% Also resets f4 to normal definition
OFF fkey4
"FX4,1"OSCLI
screen
select
fndnxt
]

Published in AMPLINEX 012, July 1989

Hints and tips

Programming pop and rock music

Ian Waugh
If anyone is interested in programming pop music I can recommend a book called 'Sequencer Trax Chart Hits' (£5.95 from Hal Leonard, distributed by IMP) which contains nine, note for note arrangements of tunes in four or five parts. Contents include: Every Breath You Take, Flashdance, Kyrie Eleison, Maniac, Miami Vice (your own DIY Jan Hammer kit!), Neutron Dance, One More Night, When The Going Gets Tough and Who's Johnny.
There is also an interesting series of books called Rock Scores (£6.95 from Music Sales) which contain 'exact transcriptions' of songs by a variety of rockers. Some are in as many as ten parts and may include guitar parts, too, so a full implementation is likely to be beyond the scope of the Hybrid Music System - but you could still have fun with them. The series includes AC/DC, The Beatles, Iron Maiden, Ritchie Blackmore, Rolling Stones, Bruce Springsteen, Bon Jovi, Huey Lewis, Billy Joel and Phil Collins.

Space saving in the Staff editor

Carl Robinson
When entering music in the Staff editor make your first word 'sig' - containing the clef, time signature and key signature only. If you are using these throughout the piece then they can then be omitted from the other words. To hear a piece play, come out of STAFF and set up the required voices. Type 'sig' then type the part you want to play or press f1 with the part in the Staff editor. Also, don't forget to put 'sig' at the beginning of your main play part.

Controlling the Roland D-110

Roger Sapolsky
When using the Music 2000 MIDI interface to drive the Roland D-110 expander the AMPLE music words dealing with the setting of dynamic levels are ignored by the components of a drum kit, unless it includes only one instrument. This can, however, be worked around using a system exclusive command.
I found the appropriate 'channel command' on page 114 of the D-110 manual: &F0 &Bn (where n is the channel number - 1) 7 nn (where nn is the sound level, maximum 100) &F7. The Music 2000 User Guide gives two alternative definitions of a word 'sysex' to send messages more than one byte long with 'MIDIOUT'. Using the second version of 'sysex' the full command then becomes:
-1 &F0 &B9 7 nn &F7 sysex
Including &F7 in sysex and making a short word including -1..7 makes the command simpler.
Getting to know the many preset sounds on a new synthesiser can be best done if all the sounds of a given category, say the basses, play a short appropriate riff in succession. A loop in a simple program greatly facilitates the process.
For example,
"part1a" [SCORE
 47FOR(
   INDEX MIDIPROGRAM riff1
 )FOR
]
will play 'riff1' first with 'Tuba' (program number 48), next with 'EnglishHorn' (47), and so on, until 1 is reached or Escape is pressed. A rest of convenient duration at the end of 'riff1' would enable the listener to note down any comments.
For rhythmic timbres the word
"part1a" [SCORE
  kn FOR(
     INDEX 60 #- PITCH rhy1
     )FOR
]
can be used, where 'kn' is the 'key number' defining an instrument, and 'rhy1' is a rhythm pattern.

Sheet music inaccuracies

Jack Wrigley
Poorly transcribed music has been discussed in AMPLINEX before, but one thing the Staff editor 'Bad bar' message has shown me is the number of 'misprints' present on contemporary sheet music. Originally, this led me to waste a great deal of time trying to figure out why I couldn't lose the annoying message. I never expected the note values to be wrong! Given the price of sheet music I think the 'Tin Pan Wallies' could do better.

'Riders on the Storm'

Andrew Leahy
Having recently purchased the AMPLE music disc 'Music City 2' I was most impressed with Bernie Dawson's rendition of 'Riders on the Storm', which includes lyrics timed with the music.
The 'music only' version of the song has a snare part, which is not played with the 'lyric' version. If you want the snares included in the 'lyric' version the 'RUN' word needs to be altered. Change the following line,
%music and lyrics %"123457-abcde"PLAY
to
%music and lyrics%"1234567-abcde"PLAY

A & B Computing 'Jukebox' program

Allan Gardner
In the 'Jukebox' program described in the November 1988 issue of A&B Computing magazine, there is a potential bug associated with the re-definition of function key 4.
In the program, the f4 key is re-defined to produce
"Jukebox"LOAD run
to load and run Jukebox, and to abort any playing sequence that has already been defined.
The problem is that the f4 key is always re-defined, even if the sequence consists of only one file.
So, if you load a music program via Jukebox, and then start to edit that file, pressing f4 will not clear the current contents of the editor, as you might expect, but will instead load and run Jukebox.
This bug was subsequently corrected in the second version of the program, but A&B Computing have decided not to print the new listing; instead it will only be available on a support disc with the September 1989 issue (available from the first Friday in August).
The second version has several new features, namely:
1) Full wrap-around of the cursor, in all directions
2) Sequences can be programmed from all available disc surfaces (This feature may be of interest to Jack Wrigley and other users of 40-track disc drives who want a menu system which accesses multiple drives)
3) On-screen help facility
4) Auto-repeat of a sequence
5) Menu of filenames can be sorted and presented alphabetically.
As A&B Computing have not yet made the second version available, I have created an ASCII file of the corrections needed to cure the f4 key problem. This can be *EXECed into the first version of the Jukebox program (as entered from the November 1988 magazine). This will correct the f4 key error, but will obviously not give the extra facilities of version two.
Unfortunately, as ASP (the publishers of A&B Computing) now hold the copyright on the program I cannot include it in its entirety in the new format.

Related file on this disc:
H.Jukef4 - corrections to version 1 of Allan Gardner's A&B Computing 'Jukebox' program
In the Features section of this issue is an article by Allan Gardner on different methods of automatically chaining together AMPLE programs.

Published in AMPLINEX 012, July 1989

Chaining files - a further discussion

Allan Gardner
In the Questions and Answers sections of AMPLINEX 008 and 010 a few points were raised about the problem of chaining one program from another. I would like to discuss these further in order, I hope, to clear up any misunderstandings that some members may have.
Firstly, may I say that there is no one correct way to accomplish the chaining of one file by another, (or anything else in AMPLE) - the main criterion is 'does it work?', and secondly, 'does it work the way you want it to?'
In chaining from one file to another it might seem there are not too many other factors to worry about, but:
1) Do you want to use an editor whilst the music is running?
2) Do you want to use the keyboard (e.g. to TYPE 'info'), whilst the music is running?
3) Are you not concerned about using the master player (the keyboard) but do want to stop any surplus text printed on the screen at the time of CHAINing?
When I first encountered the problem of chaining files, my main consideration was for a chaining method that did not put anything on the screen. Also I did not want to use the function keys, as they are often re-defined, so that, for instance, you cannot always rely on function key 9 being the 'Jukebox' key (see editor's note in the Hints & Tips section of AMPLINEX 010).
So the result of all this was the method of performing a loop in the master player. This checked for the value of a variable which was set by a music-player at the end of the piece of music.
The example I supplied to DCT, which is available as a downloadable worksheet, is simply this method in a fairly easy-to-understand format.
The subsequent version supplied with the AMPLE Jukebox program in November 1988's edition of A&B Computing is virtually the same, the only difference being that the file to LOAD RUN is always 'Jukebox', as the file sequence can be predetermined from the Jukebox program itself.
It is worth noting that I wrote these versions at the end of 1987, and I still have a lot of learning to do about the intricacies of AMPLE. (The DCT submission went in at the beginning of 1988 and the A&B submission in May 1988 - and you thought 2 months was a long time to wait for the next issue of AMPLINEX!)
Both of these versions suffer from the problem of not having access to the keyboard, because the master player is tied up with checking the 'finished' variable, (not, as suggested in AMPLINEX 010, because of the use of QTIME and IDLE).
This does, however, stop the use of any editors that may be present (there being no keyboard control), but does not prohibit the use of screen output within the program. I have used this chaining method on a piece which prints lyrics on to the screen and then chains back to the Jukebox when it has finished.
If you want to use the Mixing Desk whilst running a program that auto-chains, then use Bernie Dawson's example (Hints and Tips in AMPLINEX 009), which works fine provided that you are actually using the Mixing Desk (or Notepad) whilst the program is running. Should you change your mind and run the program from the MAIN menu, then an error will be generated at the end of the music.
The main difficulty when trying to understand the operation of the various methods is the use of strings. There are two main points to be aware of:
1) A string ("...") used inside a word definition puts it on top of the string stack. A string entered in command mode is put as the second item down, underneath the input line string.
2) System words like LOAD and SAVE take the string from below the input line, leaving the input line undisturbed.
(For a full explanation see the AMPLE Nucleus Programmer Guide page 51, and if you fully understand it then please explain it to me!)
Also on this subject it is worth mentioning that a command can be terminated with a tab character (ASCII 9) instead of the normal carriage return character (ASCII 13). Try MEM<tab> and you will see what I mean.
I think this has something to do with the method that Bernie Dawson uses, as he puts the "filenam"LOADRUN on the string stack and then pushes the tab character into the keyboard buffer to re-enter the Mixing Desk.
To finish off, here is yet another method for auto-chaining. It requires just one word ('chain') to be placed after the last note sounded (in any part or sub-part). You don't need to alter the RUN word; it doesn't alter any function key definitions; it allows full use of the keyboard whilst the music is playing; and you can even use the editors provided you <tab> out to command mode before the end of the music is reached.
The one slight disadvantage with this method is that it will print "filenam"LOADRUN on the screen, before loading in the next program.
There are many ways around that problem but I'll leave that as an 'exercise for the reader'.
Also, it won't work as it stands, if you stay in the Mixing Desk or Notepad, but it will exit the MAIN menu before chaining.
The definition of the word 'chain' is:
"chain" [
REP( QTIME -200 #< )UNTIL(
IDLE )REP 13$CHR "LOADRUN" $+ """" $+
"filenam" % filename to LOAD RUN
$+ """" $+ 0$CHR $+ LEN FOR( 1 $- ASC
#B12 138 &FFF4 CODE #2 #2 )FOR $2
]
All you do is to include the word 'chain' in the part or sub-part that plays the last note, at a point after that last note.
The way it works is this:
The first line is a repeat loop that waits for the sound queue to empty.
The following line starts to build up the string
<NULL>"filenam"LOADRUN<CR>
The NULL character (ASCII 0) is the standard way to exit the MAIN menu.
Because the string add word ($+) adds the second string to the front of the first string (so, "NEX" "AMPLI" $+ produces "AMPLINEX") the string has to be built up in reverse order. Thus we start with the carriage return character (ASCII 13), followed by "LOADRUN", followed by """" which is a string containing a single quote (") character.
The filename is then entered on to the string stack.
Another quote character is then added, and the string is completed by adding the NULL character.
This string is then pushed, 1 character at a time, into the keyboard buffer. This is performed by a FOR(...)FOR loop with the word LEN ensuring that it loops enough times to process every character in the string.
Within the FOR(...)FOR loop the $- word is used to strip 1 character off the string, leaving the rest of the string at the second level down on the string stack (the reverse of the $+ operation, in fact).
This single-character string is then converted into its equivalent ASCII number (via ASC) and this number is switched into the high-byte position by #B12 (so that, for example, &22 becomes &2200). This is necessary because the high-byte contains the Y value for the OSBYTE call 138 which inserts a character into the keyboard buffer. This is then performed via the CODE command.
Finally, the remaining empty string is discarded with $2.
So, to summarize,
<NULL>"filenam"LOADRUN<CR>
is entered into the keyboard buffer character by character, once the music has ended.
If you use a repeating structure, like
"RUN" [ "123-aabbaa"PLAY ]
then define a new part which contains only the 'chain' word and put it at the end of the PLAY list. For example,
"part1z" [ chain ]
"RUN" [ "123-aabbaaz"PLAY ]
If you don't normally alter function key 9 from the default
"Jukebox"LOAD RUN|M
and if you always want the chained program to be "Jukebox" (e.g. if you use the program from A&B) then the above example can be simplified to:
"chain" [
REP( QTIME -200 #< )UNTIL( IDLE )REP
&8900 138 &FFF4 CODE #2 #2
]
as this merely pushes the contents of function key 9 into the keyboard buffer once the sound queue is empty.
I hope this gives some further ideas of what can be done, and possibly clears up any illusions of 'right' and 'wrong' ways to accomplish things in AMPLE.

Published in AMPLINEX 012, July 1989

Making longer programs

Roger Sapolsky
With Notepad loaded, the amount of free space available for the AMPLE program is a meagre 12209 bytes. In fact, the practical limit (marked by the display of 'no room' messages even after entering COMPACT) is somewhat less than this. RUNning the program may then be possible only by returning to the Main menu (which deletes the Notepad module from memory).
I will now describe a simple method which makes considerably bigger AMPLE programs feasible.
I will first assume that the system disc used in the process described is standard (with no modified !BOOT file). The steps are as follows:
a) Type the main part of your program (say, parts a, b and c) as usual. RUN it and debug it thoroughly. If further music parts (say parts d, e and f) remain to be added, put e, f and g at the end of the PLAY sequence.
b) Save the program twice, first naming it say, 'prog1', then 'prog2' the second time.
c) LOAD 'prog2'. Delete a few music parts, after making sure they will not be needed in the creation of parts e, f and g. The memory thus made free should then be large enough to accommodate the new parts.
d) Type parts e, f and g as usual. PLAY them, and make the necessary adjustments until you are satisfied with the result.
e) SAVE the completed 'prog2' in case further modification is needed then
f) SPOOL the program to a text file,
*SPOOL t.prog2 WRITE *SPOOL
g) LOAD 'prog1' and then read in the text file of 'prog2' words,
*EXEC t.prog2
h) You may now RUN the resulting 'prog1', not forgetting to SAVE it!
Using the modified !BOOT file described by Roger Cawkwell ('Saving memory via modules', AMPLINEX 005) will bring a further improvement, since the deletion of both 'MENU' and 'INS1' will free a total of 2068 bytes. For those members who wish to experiment with Roger's method, the few tips which follow may help:
- Don't forget to unlock the !BOOT file with *ACCESS (for beginners only, this one!)
- After deleting the line which loads 'MENU' don't forget to also delete the line which calls 'MAIN'. Without the Main menu, modules can be loaded via the MLOAD command, e.g.,
"PAD" MLOAD
If you delete 'INS1' from the !BOOT file and you then load a program which needs it, it will be loaded automatically.
In conclusion, I think it is essential to be able to enter larger programs at a time when the Music 2000 gives us the possibility of having even more players busy.

Published in AMPLINEX 012, July 1989

Questions and answers

Question: Triggering of drum machines

I would like to know if it is possible to start, and keep running, a drum machine in time with an AMPLE tune via the AMPLE program.
The drum machine I use is a Korg DDM-110 with SYNC in/out and TRIG out.
Carl Robinson

Question: Music 500 and Music 5000

My query follows on from that of Patrick Cain in AMPLINEX 010. I have three Music 500 synthesisers with serial numbers a) 101453, b) 101637 and c) 102566. Synthesisers b) and c) sound the same in all respects but a) sounds quite different. The one instrument that really shows up this difference is the basic Organ. On a) this is very distorted on all eight voices.
Can anyone advise me whether synthesiser a) is faulty or if this earlier unit is technically different to the later two? If it is different, can this be put right with a modification? When I asked Hybrid Technology about this they were far from being helpful because I did not purchase any of my Music 500's directly from them. Also, does anyone have a circuit diagram?
John Pugh

Answer: Controlling MIDI instruments

In AMPLINEX 010 Taj Letocha asks about accessing drum fills on the Casio HT700 and Yamaha DD10. I had occasion to explore the Casio HT-3000 - the HT-700's big brother - and I don't think this can be done.
MIDI supports Start, Stop and Continue messages - so you should be able to start and stop the Casio's drums by setting its clock to External and sending Xs and ^s from the Music 2000. But there is not a special MIDI message to allow you to trigger a drum fill.
Also, I could discover no way of accessing the HT-3000's drum sounds via MIDI. In other words they don't seem to respond to MIDI note number messages as sounds on dedicated drum machines do. One odd thing I did discover - it took me nigh on two days! - is the fact that the HT-3000 (and so, I suspect, the HT-700) does not respond to Song Position messages. This is just the way the synthesiser has been designed.
Ian Waugh

Question: MIDI slides and bends

In using the Roland D-110 expander with the Music 2000 MIDI interface I have found the word 'gl' (page 44 of the Music 2000 User Guide) to be the best substitute to the AMPLE Slide command. In the case of limited pitch-bend ranges, I have used the number 512 instead of 1024 in 'gl' which produces a smoother slide.
The 'stepsnumber' input in the command, however, is not the one I would expect. To obtain a 3 semitone bend, I had to input 4 with 512 (or 2 with 1024) used in gl. I haven't yet found a way to 'slide' over more than 4 tones. Also, what is the 'pitch bend sensitivity' mentioned on page 44?
Roger Sapolsky

Question: Archimedes A3000 computer

In response to Chris Jordan's comments in AMPLINEX 010, now that the covers are off the latest BBC computer, does Hybrid Technology regard the machine as 'finished' enough to develop AMPLE for?
I'm sure many AMPLINEX members with old BBC Model B's (if not 40-track drives!) are looking long and hard at the A3000 as a suitable upgrade, but want to continue with and improve their AMPLE music.
The Electron add-ons company, 'Pres', are reported to be introducing a 1MHz port for the A3000, so would any of the current hardware be usable, even if only in emulation mode?
On a slightly different subject, is the Music 3000 expander (announced in AMPLINEX 011) compatible in any way with the Music 2000 software? For instance, could the 16 voices of the Music 5000 + 3000 be used in addition to those available on a MIDI instrument?
Jack Wrigley

The Music 2000 and Music 3000 are fully compatible. All 16 voices on the Music 5000 + 3000 combination are usable in addition to a potential 32 MIDI voices. The maximum number of players remains at ten. The Music 2000 User Guide warns, however, that if you try to control a MIDI instrument via each of the Music 2000's three output lines 'by the time you have added three MIDI parts to a piece which already uses most of the Music 5000 voices, you may well be nearing the limit of available memory and processing power.' The same caution would apply to a Music 5000 + 3000 + 2000 combination.

Question: The MERGE command

Does the MERGE command mentioned on page 17 of the AMPLE Nucleus Programmer Guide (issues 1 and 2) actually exist? I can find no other reference to it. If it does exist, how do you use it?
J Benton

The inclusion of the MERGE command in the AMPLE Nucleus Programmer Guide was a mistake. The command, to merge one program with another will, however, be included in a 'utilities' package currently being developed by Hybrid Technology.

Answer: Use of ROMRAM board

In AMPLINEX 011 Diccon Maude asks whether any other member has managed to use the Watford RAMROM board to provide extra memory for AMPLE. I also have a ROMRAM board, but unfortunately it can only be used to increase usable memory with applications which explicitly support it. Therefore, a major re-write of AMPLE would be required to gain any advantage.
The question asks about Sideways RAM - this should not be confused with Shadow RAM, which immediately increases available memory in most applications (including AMPLE).
Peter Miller

Question: Music 4000 silences

I am having trouble at the moment with pieces composed on the Music 4000 keyboard. When I compose the individual parts and set them up to RUN together there is always a moment of silence between the playing of part1a and part1b. This is annoying since it breaks the continuity of the music. Could someone help?
Gideon Kay

Answer: Acoustic guitar instrument

In AMPLINEX 011 Pete Miller and Diccon Maude ask about an acoustic guitar sound. I noticed that other members have also asked how to produce certain types of instrument.
I think the first thing to realise when trying to create new sounds is that the Hybrid Music System uses a type of synthesis which is just not able to create absolutely any sound under the sun.
When extolling the virtues of the latest synthesiser, exuberant salespeople in music shops have been heard to say, 'The range of sounds you can produce is limited only by your imagination'. This is just not true no matter what instrument they are referring to - samplers included.
The Hybrid Music System, therefore, is good at certain types of sounds and not so good at others and you must accept and work within its limitations.
One other point to bear in mind is the lines you make these sounds play. A brass riff on piano, for example, will not sound quite right. On the other hand, if a string-type sound is used to play typical string lines (fourths are quite popular) then the realism of the sound will be enhanced. The envelope characteristics (attack, delay, sustain, release) probably play a more important part in our perception of a sound than the waveform.
Anyway, I have used an instrument called 'guitar' which is a modification of Elguit. I can't remember now if this was my own creation or if I pinched it from somewhere else (probably the latter) but I think it does quite a good job as an acoustic guitar, helped by the lines it plays.
Ian Waugh

Ian Waugh's 'guitar' instrument is included in the Instruments section of this disc.

Question: Music 2000 and Casio HT-3000

Can anyone tell me if my Casio HT-3000 keyboard will work properly with the Music 2000 MIDI interface?
Paul Nuttall

Question: £500 Synthesiser

I am looking around for a programmable synthesiser with some good preset sounds and near full-size keys, to use on its own and with the Hybrid Music System. The problem is finance - I don't intend to spend more than £500.
If someone has purchased such a keyboard and can recommend it, I would be grateful to hear from them.
Peter Miller

Question: Fanfare for the Common Man

The 'info' in 'Fanfare for the Common Man' (AMPLINEX 011 music) mentioned that the piece was written as an aid to a 20-piece brass arrangement.
My girlfriend plays a double b-flat bass in a brass band and is very interested in getting hold of this arrangement for her band to try out.
Could 'Robonk' (the author(s) of the of the AMPLINEX piece) please provide more details of the arrangement, and where it can be obtained?
John Spry

Answer: Keys of tuned instruments

In response to Andrew Smith who had 'hit a brick wall' in attempting to transcribe an orchestral arrangement (AMPLINEX 011), instruments such as Bb clarinets and Eb saxophones are 'transposing instruments', simply because a clarinet automatically transposes notes one tone down, while an Eb saxophone transposes them one and a half tones up.
When the Music 5000 plays music written for such instruments, a transposition is necessary to obtain the same note pitches as played by the instruments.
Obviously, the AMPLE commands to use here are -2@ (clarinet) and 3@ (saxophone).
Naturally, the key signatures indicated on the music parts must also be entered after SCORE. For instance, if the piano in the band plays in the key of Ab (4 flats in the key signature), the Bb clarinet will play in Bb (2 flats) and the saxophone in the key of F (1 flat). You don't need to know this however, since the information is on the scores.
I hope I have helped to make the 'brick wall' tumble down.
Roger Sapolsky

In the early days, brass instruments such as trumpets could play only the notes of the harmonic series. It was therefore necessary to have instruments with different lengths of tubing for playing in different keys. To make life easier for the player his score was always written in the key of C no matter in which key it sounded.
When instruments were improved so as to be able to play chromatic scales it was still found that tone colour was better in some instruments when they used (say) B flat or A as their natural key. Thus, very few C clarinets are now made.
As scores are written with the players in mind, those of us who just read them come up against the problem of these transposing instruments. Older scores may contain many transposers and this makes it difficult to read them and to imagine the actual music. Modern scores use fewer transposers.
If you examine an orchestral score you will find that the majority of the instruments have the same key signature (instruments such as violins and flutes are not transposers) but one or two differ. Examine the ones with differing key signatures. If you find one with a key signature two sharps up (e.g. D instead of C) it means that that player has to play D for it to sound a C.
One simple way of defining such an instrument in AMPLE is to include in the definition:
EVERY CHAN
-32 SHIFT
which tunes the instrument a tone lower. It saves you having to re-write the score before programming. Be aware also that some instruments are written in a different octave to that in which they play because otherwise they would be written off the top or bottom of the staff.
Here are some suggestions for the SHIFT instruction:
Piccolo                                       192
Cor Anglais                                  -112
Clarinet in E flat                             48
Clarinet in B flat                            -32
Clarinet in A                                 -48
Bass clarinet in B flat                      -224
Double bassoon                               -192
Horn in F                                    -112
Trumpets in B flat                            -32
Trombones usually are written as they sound     0
Tuba in F                                    -112
Tuba in E flat                               -144
String bass                                  -192
Solo tenor singer                            -192
I have never tackled brass band scores but I would expect to find the following:
E flat instruments                            +48
B flat instruments                            -32
  to which we might have to add              -192
  or even                                    -384
  depending on the size of the instrument.
Lol Taylor

Question: 80-column print utility

The AMPLINEX print utility U.print80 (included in AMPLINEX 005) is a marvellous facility. I use it to print out all the relevant information in each issue. I do, however, have a recurring problem.
Having happily printed out almost everything on issue 011 I came to the last item - U.Xample1 - when all hell broke loose: flashing red and green print at the top of the screen followed by a 'hang-up'.
The only way I could get anything on paper was to go into Command mode, load U.Xample1 and use WRITE. This, however, printed the whole program - not just the text - and in 40-column not 80. A proper mess. This has happened before and presumably is because the file in question is a program and not just text. How can I print just the text and in 80-column form?
G H Richardson

You are right about the reason for the problems with printing the U.Xample1 file. It is an AMPLE program not a text file and is therefore unsuitable for use with the U.print80 utility. The only way to use the 80-column utility with such a file is to SPOOL the output to a file, import it into a text editor to remove any control codes and unwanted text, and use the resulting file with the U.print80 utility.
To create a file of the screen output load the program required into AMPLE and then type
*SPOOL outfile
at the AMPLE command prompt. Then RUN the program as normal. Once all the text has been displayed, close the output file with
*SPOOL
This file ('outfile') should then be loaded into a word processor or other text editor and the control codes (such as the clear screen commands which will cause a form feed on most printers) and unwanted text stripped out. The resulting file can then be reformatted into 80-columns using the text editor or saved and processed via the U.print80 program.
Because of the variety of programming styles used in AMPLE programs it is unlikely that an automatic utility like U.print80 could be created to print their text contents directly.

Question: Sideways RAM programs

I wonder if contributors of Sideways RAM utility programs would consider providing their original assembly code listing (in addition to the ROM image)? Since these are most likely to be 'service' ROMs responding to call 4 (i.e. performing new *COMMANDS) then many AMPLINEX members with their own skeleton ROMs could add any new routines to save Sideways RAM space.
I only have 32K of Sideways RAM in two banks of 16K with the AMPLE ROM image taking up one bank and a choice of say ZROM19 or the ANHF ROM for the other. Clearly by merging these it would be much more useful. It is a large task to disassemble the code from a hex dump or disassembler listing.
Stewart M Wilkie

We can, of course, only publish what is submitted to AMPLINEX, and in some cases the author of a ROM-based program may not wish to publish the source code. However, we are always glad to receive suggestions for the extension of the facilities provided by such programs and combining several utilities into one ROM image is certainly something we will consider.

Answer: Registration slips

In AMPLINEX 011 Peter Wright said that he had sent off his Music 5000 registration slip several months ago but had heard nothing and asked 'Is this something that other AMPLE users have found?'
Since returning my registration slip to Hybrid Technology I have heard nothing from them about their new products or about their music discs. I have had to rely on AMPLINEX for all such details. I don't know if any other members share my concern at this lack of follow up?
Paul Nuttall

Like Peter Wright, Hybrid Technology have never sent me any information other than with orders that I've placed with them. Their newsletter ('Hybrid Music System News') looked interesting, but it seems to be only occasionally updated and available at shows. Maybe they are leaving all the publicity work to the AMPLINEX editorial team. If this is the case, perhaps you should give Chris Jordan a regular spot!
Jack Wrigley

In response to Peter Wright's question regarding registration strips - when I purchased my Music 5000 upgrade and subsequently a Music 4000 keyboard, I too completed registration slips.
Nearly 2 years has passed and I have received no information either in the way of technical support or on new products, software etc.
When questioned at last year's Micro User show Hybrid Technology expressed surprise and took my name and address. I have still received nothing.
It appears that the only way to be kept informed is to write or phone Hybrid on a regular basis or, of course, to read AMPLINEX.
Surely, it is not too much to expect some form of recognition for their hundreds of customers - otherwise, why bother to include a registration slip in the first place?
So, come on Hybrid, what about a twice-yearly newsletter or free sample disc of selected current AMPLE albums? After all, we did purchase your products in the first place and may do so again.
Alan Mothersole

Hybrid Technology say that their policy is to inform customers of 'significant developments' in the Hybrid Music System and only the Music 4000 keyboard has so far fallen into that category. The Music 3000 expander unit (reviewed in AMPLINEX 011) is expected to be one of the subjects of the next customer-wide mailshot later this year.

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 012, July 1989

Printing out AMPLINEX information

There are three ways to print out the information seen in AMPLINEX.
You can print out an AMPLINEX file as it is displayed on the screen from within AMPLINEX; you can print the files themselves as you would any other text file; or you can load the files into your own word processor and re-format them as required before printing.
1) To print a file from within AMPLINEX choose the 'SET PRINT ON/OFF' option from the Introduction menu. This allows you to toggle a software 'print switch' on or off. If the switch is set ON then any AMPLINEX file which is displayed on the screen will be sent to the printer. This will continue until you set the switch off again using the same Introduction option. An asterisk is displayed at the top of the screen next to the issue number when the print option is ON and the print status is shown at the bottom right of the screen as text is displayed within AMPLINEX.
It is now also possible to print out part of a file from within AMPLINEX. There are two ways to do this:
a) To print a single page of an AMPLINEX file, make sure the 'print switch' is OFF and then select the menu option which displays the file. When the page you wish to print is displayed, and the 'Press RETURN to continue' prompt is showing at the bottom of the screen, press the letter 'P' on the keyboard. The page being displayed will then be sent to the printer. Pressing RETURN will then continue to display the file without printing.
b) To start printing part-way through a file, you can turn on the 'print switch' by pressing the CTRL and 'P' keys together when the 'Press RETURN to continue' prompt is displayed. Subsequent pages which are displayed will then be sent to the printer. The 'print switch' can be turned off again in the same way.
2) If you prefer to print the parts you require outside of AMPLINEX - all the data is held in files on the AMPLINEX disc. The files are in directories named according to the sections in which they appear and the file names can be seen at the foot of the screen as they are displayed in AMPLINEX so you can make a note of the ones you require.
The file directories allocated to each section of AMPLINEX are as follows:
$. for Music
A. for the Introduction and Adverts
F. for Features
H. for Hints and Tips
I. for Instruments
N. for News and Reviews
Q. for Questions and Answers
U. for Utilities
In addition to the text files, the AMPLE instrument definitions can also be printed directly from within AMPLINEX. Music and utility programs written in AMPLE can only be printed by LOADing the programs into the Studio 5000 and using the WRITE command (see Studio 5000 User Guide page 100).
3) If you wish to re-format the text before printing you should load the files into your word processor. The files contain unjustified text restricted to 38 columns width. The files contain only printable ASCII characters except for a control code (ASCII 11) which marks the screen page breaks. View treats these as left margin tabs and if necessary they can be removed with a C/^L// command.
Two utilities have been published in AMPLINEX to aid with the re-formatting of text files:
In AMPLINEX 003 'Hints and Tips' (H.ints003) there were instructions for a Wordwise segment program to automatically format AMPLINEX text files. The segment itself was included in AMPLINEX 004 (H.WWconv).
In AMPLINEX 005 there was a utility to print formatted 80-column text direct from an AMPLINEX text file. The instructions (U.print/i) and the BASIC program (U.print80) are both within the 'Utilities' section. A modification to this program (to provide a wider margin) was included in the 'Hints and Tips' section of AMPLINEX 006. See also the Update section of AMPLINEX 008 for a note concerning BASIC 1 users.

Published in AMPLINEX 012, July 1989

Next issue news

The next issue of AMPLINEX is planned for release at the end of September 1989. This means that all applications for a FREE copy (i.e. those with discs containing contributions) must be received by MONDAY 4TH SEPTEMBER. Anyone paying the £2.00 fee should apply by Friday 29th September.
In issue 013 we celebrate the second birthday of AMPLINEX and we are planning a number of special features including the competition to win the latest addition to the Hybrid Music System, the Music 3000 expander. Of course, to help to make this issue something special we need your contributions - so please let us have the benefit of your words and music for the next issue of AMPLINEX.

Published in AMPLINEX 012, July 1989