8-Bit Software Online Conversion

Music Tracker Version 0.01 (c)1992 P.J.Shaw CONTENTS -------- 1. Music Tracker (A brief introduction) 2. Music Tracker v0.01 3. Music Tracker File Player 4. Music Tracker Envelope Editor 5. Music Tracker Module Maker 6. Music Tracker File Editor 7. Music Tracker Play from Basic Util 8. Technical Information 9. Help & What to do if things don't Work Thank you very much for showing an interest in Music Tracker and Have fun creating and playing songs with it. P.J.Shaw Chapter 1. MUSIC TRACKER (a brief introduction) ----------------------------------------------- Welcome to the Music Tracker package for the BBC B. The software with this manual allows you to play and edit music files that I have dubbed as tracker files because of the way they are played. The files themselves are very simple and easy to understand they are actually in sound command format. For those who are not familiar with the BBC Basic Sound command, refer to the chapter on the tracker file editor and all will be explained there in more detail. Music Tracker was written purely to see if I could do something similar to that on an Archimedes and originally was just supposed to be a demo that looked like a tracker but didn't actually play anything, except an external sound fed into the disconnected speaker inside the beeb coming from an A3000. So in actual fact the Arch was playing th music and the beeb just looked like it was. Anyway, I soon realised that it would be reasonably easy to actually write a tracker based around the sound command. So I started playing with this demo that I had written and fed all the info from the Serial port (A3000) to the Sound command and although it made a terrible noise it did actually work. So I replaced the serial port with the ability to read files. Or more to the point read from the computers memory once the file had been loaded in. Anyway to cut a long story short, the original Music Tracker was born (Option 1 from the Menu on the disc) and around this, various utilities to complement it sprang up. So there you have a brief history of Music Tracker. I have tried to think of most things that you the user would want in this package and I think I've done pretty well. However I never say NO to a good idea and if you have any suggestions as to anything I could add, then please don't be afraid to write me a letter, and if you enclose a disc with your letter you may even get some nice little items of PD & other bits and bobs sent back to you as well as getting some credit in the program for your help. The address to send your suggestions to can be found in the helpful info at the back of the manual. Any suggestions are welcome, even a completely new idea that has nothing to do with Music Tracker. So get Writing and I hope to hear from you soon. Chapter 2. Music Tracker v0.01 ------------------------------ The Music Tracker is the main part of the software and although it has no editing facilities, Tracker files can be edited using a separate program. The main use of this part is to play back the files at a visual speed with user control over them as well as mixing the sounds. Using the tracker allows the loading of separate envelope file to the one that is actually used by the music file (Usually of the same name but stored in the E. directory), This allows you to see what different instruments sound like in your composition. User controls ------------- P/C - Both these are used to play the currently loaded file, The difference between them is that the C option plays the file from start to end (It actually uses the same machine code routine that the file play program uses) and allows you to hear what the full file at it's proper speed sounds like. The P option plays back the file at a slower speed while displaying the current parameters on the screen so that the current note can be seen as it is playing. The information is displayed in the following format :- CHANNEL,VOLUME/ENVELOPE,PITCH,LENGTH :,/ - The / & : Controls are used to step forward & back a note entry. This allows you to view the parameters above without having to play the song. @ - This plays the current note without stepping forward or backward, Combined with the / & : controls allows the user to analyse and work out the note values required to create their own tracker files. R - This resets the music file pointer to the start of the file, useful if you get lost while using the / & : controls L/E - Load music file/Envelope file. This option speaks for itself it allows you to load a tracker file into memory along with an envelope file which defines the instruments. Chapter 3. Music Tracker file player ------------------------------------ This utility allows you to play tracker files at their proper speed without having to use the tracker itself. The program is really easy to use. It displays a list of tracker files on the disk and asks you which one you would like to hear. When you type in the file name there is no need to put the M. prefix in front of the file as the software automatically sets this. The same applies to any of the programs that make up this package, envelope files included, except instead of not typing M. you don't type E. You will then be asked if the envelope file has the same name as the music file. If it has, then just press Y and it will be loaded and the music will play. If not then you will be asked for the name of the envelope file. Once this is typed in, the envelope file will be loaded and the music will play. During play the controls Z,X and S allow you to PAUSE/RESUME and STOP the music respectively, giving you some control over the play back of the tracker file. When the file has reached its end or S is pressed then you are given the choice to (P)lay again (L)oad another or (Q)uit, pressing the appropriate letter selects the required option. Chapter 4. Envelope editor -------------------------- The envelope editor is used to alter the envelope files that define how the instruments sound. The format of a tracker envelope file is identical to the standard BBC envelope files produced by doing a direct memory save of the envelope parameters. In fact that's exactly how Music Tracker handles its envelope files, so any envelope editor can be used to alter envelope files. I have found that the best thing to use is The Island Logic Music systems Synthesizer module with the Save Option set to BBC format envelope file. But you may like to use any editor that you are comfortable with. The keys are very simple and easy to use. It's just a matter of knowing that the key displayed at the left hand side of the / means INCREASE parameter and on the right means DECREASE parameter. Each parameter has its 2 keys displayed below it in the form x/x as described above, the only other keys that are needed are L & P which loads and saves an envelope file and @ to sound the current envelope so you can hear what it sounds like. The envelope command is a very powerful command from BBC basic as it allows you to shape a sound to make it sound like or as near as possible to any instrument you would like to name. Having said that, there is too much information required to describe the use of it properly. Far too much to fit into this manual. For a good description of the BBC envelope statement refer to the BBC Basic User Guide that came with your computer. There is an excellent description of how it works in the chapter under sound. However for those who want a more advanced knowledge of it, then I suggest that you obtain a copy of "CREATIVE SOUND on the BBC Micro" by David Ellis and Chris Jordan originally published by Acornsoft, but should be available elsewhere. This book explains all the advanced things that you can do with the BBC sound system and is well worth the money. For the time being though, I will leave you with some envelopes to try. These are in standard envelope format which is :- Envelope Number,Time,pi1,pi2,pi3,pn1,pn2,pn3,aa,ad,as,ar,ala,ald ENVELOPE 1,3,0,0,0,0,0,0,121,-10,-5,-2,120,120 ENVELOPE 1,8,1,-1,1,1,1,1,121,-10,-5,-2,120,1 ENVELOPE 1,7,2,1,1,1,1,1,121,-10,-5,-2,120,120 Chapter 5. Music Tracker Module Maker ------------------------------------- The module maker is intended for those of you who wish to use Tracker music in your own programs/demos/games or whatever you wish to add the music to. The mouler is not complicated with lots of different key presses like the other sections and is very simple to use. Once the program is run you will be presented with a list of the music files held on the disk. You will then be asked which one you want to make into a module. Enter the name of the file to convert at the prompt (You do not need to put the M. Prefix on any of the file names as all the sections of the package do this for you). When you have entered the name of the music file you will then be asked if the envelope file is the same name as the music file. Normally it will be, but if it isn't you will be asked for the name of the envelope file. Once this is entered there is a brief pause while the module is compiled. You are then asked for a file name to save the module under. This should be saved on to a different disk as there will not be enough room on the tracker disk to save it. When you have the compiled module on disk the following is used to control it:- *<Filename> Will run the Module. *FX13,4 Will stop it playing. *FX14,4 Will restart it where it was stopped. Chapter 6. Music Tracker File Editor ------------------------------------ A file editor is provided to enable you to alter or even create your own tracker music if you have the time and the concentration. The layout of the screen is very much the same as the music tracker in that a box providing a visual reading of the sound command being played is on screen so that you can observe the current values. The format is also the same where the info is displayed as :- Channel,Envelope(Instrument),pitch,length The layout is exactly the same as the BBC Basic sound command, so reference to the chapter on sound in the BBC User guide would be an advantage. The keys are displayed on screen but are also repeated here :- E - Load envelope file ---------------------- This option loads in the file that defines what each of the 4 voices sounds like. In fact up to 16 different instruments can be created, only 4 at a time can be used. The file name should be entered without the E. prefix as the program does this for you. L - Load music file ------------------- This option loads a previously saved music file into memory ready to be played or altered. Again the M. prefix is not needed as the program takes care of this. S - Save music file ------------------- Save current music to disk/Tape I & D - Insert & Delete note at current entry -------------------------------------------- Insert a new note after the current entry or delete the currently selected entry. Z/X Decrease/Increase channel number A/S Decrease/Increase Envelope no Q/W Decrease/Increase Pitch 1/2 Decrease/Increase Length ------------------------------------ These keys are the ones that are actually used to edit the note entries by increasing and decreasing the appropriate parameter at the current entry. @ - Play current entry : & / One entry Back, Forward P - Play complete tracker from start to end. Certain pitches of the note entry correspond to the notes on a musical instrument. As there is no room here to reproduce the table printed in the BBC User guide, If you don't have a copy to hand there is a copy of it in the technical section of this manual. The values for the note lengths are roughly as follows :- 5 - Quaver 10 - Crotchet 20 - Minim 40 - Semibreve and in between values for dotted notes. The exact value depends on you and the above is just a rough guide. Chapter 7. Music Tracker play from basic ---------------------------------------- The play from basic util simply asks for a file and then creates a basic play routine for you to save/change etc. To create your own basic music using the tracker. You are free to change any part of the program for your own needs and to distribute it where and how you like. All that is asked is that you in some way acknowledge that the music was created using Music Tracker. Chapter 8. Music Tracker technical info --------------------------------------- This chapter is intended for the more adventurous of you who want to know more about the package. Standard BBC Pitch Values ------------------------- Certain pitch values represent the note on an instrument. The following table shows the Acorn allocated ones :- NOTE: OCTAVE --------------------------------------------------------------------- ----:1 2 3 4 5 6 -------------------------------------------------------------------- C : 5 53* 101 149 197 C# : 9 57 105 153 201 D : 13 61 109 157 205 D# : 17 65 113 161 209 E : 21 69 117 165 213 F : 25 73 121 169 217 F# : 29 77 125 173 221 G : 33 81 129 177 225 G# : 37 85 133 181 229 A : 41 89 137 185 233 A# : 45 93 141 189 237 B : 1 49 97 145 193 241 * = Middle C Converting Basic music to tracker form -------------------------------------- This process can be very tricky and requires a reasonable knowledge of the Basic programming language to do it. The procedure varies from program to program and the only way you can pick out what you need is to look through the program for a SOUND Command. This may take quite a few forms all depending on the method used to play the music. Some common examples are :- SOUND 1,-15,10,100 : Absolute values SOUND c,v,p,l : Standard Variables SOUND V,E(V+I),ASC(MID$(M$,I,1))+&40,TEMP : Variables using various formulae to work out the note values (Similar to music by the NOIGE) Once you have located all the sound commands you need to put 4 BPUT commands after each sound command as follows :- If the line reads, 100 SOUND c,v,p+12,l*&40 Then you would add, 101 BPUT#file%,c 102 BPUT#file%,v 103 BPUT#file%,p+12 104 BPUT#file%,l*&40 Once you have done this for all the sound statements you then need to open a file to save the data to, add a line to the start of the program along the lines of, 1 file%=OPENOUT"<filename>" and at the end of the program something like: 1000 FOR T=1 TO 4:BPUT#file%,&FF:NEXT:CLOSE#file% Obviously the line numbers will be different. Then run the program with the disk you want to save the data to in the drive. The file will then be compiled. The envelopes are easy to create. Once the program has finished running type :- *SAVE <filename> 08C0 0A00 All music files must be saved with M. in front and the envelope files with E. in front otherwise the programs will not recognise them. Music file Format ----------------- The format of a music file is very simple and identical to the BBC sound command. The file is terminated with 4 bytes of value 255 &FF(Hex) so that the programs know where the end of the music is. If the last 4 bytes are not &FF the programs will just keep playing and playing. Probably just producing junk. The format is as follows :- Note entry 1 - CHN,ENV,PCH,LEN Note entry 2 - CHN,ENV,PCH,LEN Note entry n - CHN,ENV,PCH,LEN Note entry n+1 - &FF,&FF,&FF,&FF Chapter 9. Help and what to do if things go wrong ------------------------------------------------- As far as I know there are no bugs in the software. The software has been tested thoroughly. However bugs have been known to pop up months, even years after the final test. If you discover a bug, then please report it to me at the address below, I would also appreciate your views and thoughts, ideas etc about the package. It is the only way I can find out how well it is doing if I get feed back from the users. If you help me out by reporting a bug and send a blank disk & address I will reward you by filling your disk with Some PD software that I have written and return it to you. Trouble shooting ---------------- Below is a list of common problems. Consult this before taking any further action. Problem : Cause : Recommended Action --------------------------------------------- Disk Fault :Corrupt Disk: Return to the source you obtained it from : : explaining the problem. No Sound :Sound turned: Turn back on using *FX210,0 : off : File not :Wrong file : Check that the file was saved using the found : Name : E./M. Prefixes or that you didn't type them : : when asked for a filename by the software : : or that you typed the correct filename. If you have any other problems write to, P.J.SHAW, 60 Oakfield Lane, The Grove, Consett, Co/Durham, DH8 8AP. Enclosing the disk and a full explanation of the problem if possible.