Click Here To Go To The Your Computer Archive



Written By Nick Lea


Cover Art
Click Here To Enlarge Loading Screen

Loading Screen
Click Here To Enlarge Opening Screen

Opening Screen
Click Here To Enlarge Screenshot

Game Screenshot

Music On The Beeb

Complete that unfinished symphony with Nick Lea's masterly BBC composition

This program will only run on a BBC 1.2 Operating System with Basic 2 mainly because the word OSCLI is used. To check whether the computer you use is suitable, type:

OSCLI("FX0") (RETURN)

If no error message is produced then this program should run.

The program is a tool for use in the writing, development or simple playback of music. It uses the BBC's three pitch channels to produce a possible three-line tune with simultaneous screen and sound note output. Also included in the program are routines to save and load tunes to or from tape, making it possible to store away a masterpiece you are particularly pleased with. For the musically uninitiated, or the plain lazy, there is a harmonisation routine which generates pseudo-random harmonies to a tune entered.

In its entirety - well, in this un-REM-ed version - the program is rather long and may seem an effort to type in all in one go.

If certain procedures are left out, the program will run, until a non-existent option is selected, and iffound to be useful, they can be added at a later date. The advantage of this is that it initially halves the program length.

The parts of the program which are optional to the main function are:

Line Number Procedure Effect of losing it
2280 PROCspeed will not be able to change speed of playback
2A10 PROCpitch will not be able to change pitch of playback
25A0 PROCsave will not be able to save a tune to tape
2790 PROCload will not be able to load a tune from tape
3130 PROCharmonise will not be able to use the computer harmonise

Once the program - or section of the program - has been entered in the normal fashion, it can be run. This will produce a menu sheet with nine options open to the user. They are:

  1. Play tune in memory.
  2. Enter or edit a tune.
  3. Change playback speed.
  4. Change pitch of playback.
  5. Save a tune onto tape.
  6. Load a tune from tape.
  7. Harmonise a tune in memory.
  8. Clear memory.
  9. Exit program.

When first run, there is no tune in the computer's memory. One can be entered using option 2, selected by just pressing 2. Option 2 produces an instruction sheet which sets out the keyboard of a piano on to the BBC keyboard with the form as shown in table 1.

It shows how to change the lengths of notes using Shifted function keys. Three lines of music can eventually be built up so the line about to be used is asked for. A musical stave is then printed up and the tune can be entered. Return ends the tune and displays the menu sheet again. Selecting option 1 will now play the tune just put into the memory at its correct tempo. Tunes of up to 300 notes can be used and up to three can be played at once. The routines to change playback speed and pitch are self-explanatory and simply alter the global variables: Del and Oct.

The backing store routines - saving and loading - are done using the Beeb's BPUT and BGET statements, thus a tune is treated as a machine-code file, but don't try to run it as one.

The last section of the program, and the last main option, produces harmonies on tracks two and three from a subject tune on track one. It requires the key signature of the tune, which is selected by pressing the appropriate note, and whether it is minor or major.