FileCon - MIDI Song File Converter Version 0.93 4/13/88 By Jim Sproul Introduction ____________ FileCon is a utility program. It allows you to load and play MIDI songs and sequences, in various formats, and save them in formats which are compatible with sequencing programs from Sonus. This document describes FileCon Version 0.93. This version is not the final version of the program. Only a few file formats are supported here. But, as the conversions are completed, many more will be available in future updates. FileCon is provided as a free service from Sonus, to help you make better use of Sonus software products. However, FileCon is NOT public domain. Sonus retains all copyrights to the software. You may distribute FileCon freely, upload FileCon to information services (such as Compuserve or Genie), or make any number of backup copies of the program. However, you may NOT modify the program in any way, or distribute the program without this document file or copyright notice. FileCon will be distributed free of charge with a number of Sonus software products for the Atari ST. All registered owners of these products will receive updates to FileCon as the new formats become available. As of this writing, Sonus SuperScore is being distributed with FileCon V0.93. What Can FileCon Do? ____________________ FileCon V0.93 can load MIDI music files in the following formats: 1) Sonus Song Files - These files are created with Sonus MasterPiece, and SST sequencers. The files appear on the disk directory with the extension 'SNG'. 2) Sonus Sequence Files - These files are created with Sonus MasterPiece, and SST, and SuperScore. The files appear on the disk directory with the extension 'SEQ'. 3) Steinberg Pro-24 Song Files - These files are created with Steinberg Pro-24 sequencer. (Version 2.0 was used to create the FileCon conversion.) These files appear on the disk directory with the extension 'SNG'. FileCon V0.93 can save MIDI music files in the following formats: 1) Sonus Sequence Files - These files can be used with Sonus MasterPiece, SST, and SuperScore. What Other Formats Are Coming? ______________________________ Future versions of FileCon will load MIDI music files in the following formats: 1) Hybrid Arts SMPTE Track format. 2) Dr. T KCS format. 3) Passport Master Tracks format. 4) MIDIFile format. This is the proposed standard file format for MIDI music files, already being used by Passport Master Tracks, and several programs for the Macintosh. 5) Text (ASCII) format - This format will allow MIDI music to be created and edited with a simple word processing program. This will be valuable to educational institutions that have limited access to sequencing programs. The format used will be compatible with the one being used in the Cakewalk sequencer, by Twelve Tone Systems, for IMP PC computers. Future versions of FileCon will save MIDI music files in the following formats: 1) MIDIFile format. 2) Text (ASCII) format. Getting Started _______________ You will need the following things in order to use FileCon: 1) An Atari ST computer with a monitor. Version 0.93 of FileCon will work in high or medium resolution. The function of the program is the same in either case. 2) A disk containing the FileCon program. (FILECON.PRG and FILECON.DAT) 3) A disk containing MIDI music files you wish to convert or play. 4) One, or more, MIDI synthesizers or sound modules. This is optional, and is only required if you want to audition the converted musical pieces. Load and run FileCon just as you would any GEM compatible program. Simply find the FileCon program icon in the disk directory window and double click. After a few moments the FileCon main screen will appear. The Main Screen _______________ The FileCon main screen consists of one large window, that contains all of FileCon's controls and displays. A typical GEM menu bar provides access to some of FileCon's features. At the top of the window is an information bar providing the current memory status of FileCon. Two memory values are shown in the information bar, since FileCon divides the available memory in half. Part of the memory is used to contain the original MIDI file information. The other part is used to build the converted sequences. The left half of the window contains a box titled 'Sequences'. Inside this box are 24 rectangular numbered icons. These icons represent the 24 sequences that FileCon can load into memory simultaneously. Each sequence may have up to 32 linear tracks or recorded material, giving a total of 768 tracks. When you load a MIDI music file it will be converted and stored in one of these sequences. In the upper right hand corner of the window is a box titled 'Counters'. There are two counter displays in this window. These counters work somewhat like the counters on a tape recorder, except that they display time in a metrical fashion, instead of showing how many feet of tape have been played. The first three digits represent the measure (bar). The second two digits represent the beat within the measure, and will vary according to the time signature (meter) of the sequence. The last three digits represent the pulse division within the quarter note. All Sonus products for the Atari ST use an internal resolution of 192 pulses per quarter note (PPQN). Any MIDI music converted by FileCon is converted to 192 PPQN, regardless of the original resolution of the music. The upper counter (CTR) shows the current position within the current sequence. This counter will 'run' when the sequence is playing. The lower counter (END) shows the end time of the current sequence. For example, if the end time were 005:01:001, then the sequence would stop playing when the first beat of the fifth bar were reached. Such a sequence would be four bars long. The TOP button can be used to return the CTR counter to the beginning of the current sequence, or 001:01:001. The SET button can be used to change the programmed end time of a sequence. This will set the end time to whatever position the CTR counter is at. Note that this does NOT remove any recorded material from the sequence, but only determines when the sequence will stop playing. The end time is also used when appending a sequence to another sequence, as you will see. Beneath the counters box are five buttons, which we call the Transport controls. These are used to move the CTR counter forward and backward, and to start the current sequence playing. At the bottom of the window is an icon resembling the trash cans at a fast food restaurant. You can get rid of unwanted sequences by dragging them to the trash can. A Word About Songs And Sequences ________________________________ Sequencing programs fall into two general categories; linear and modular. A linear sequencer works in a fashion quite similar to a tape recorder. In other words, you record your material onto a finite set of parallel tracks that play back simultaneously. Adding material is usually a matter of cutting pieces of a track and splicing them in other places. A modular sequencer is similar to having a number of tape recorders, each playing after the previous one is finished playing. You record your material on parallel tracks, just as you would with a linear sequencer, but you divide the work into sections. For example, you might record an introduction in the first section. Then, you might record a refrain in the second. And, a chorus could be recorded in the third section. You could then configure the sequencer to play the introduction, followed by the refrain, then the chorus, and the refrain again, and finish up with two repeats of the chorus. In this manner, each musical piece of a song need only be recorded once. There are some inherent drawbacks to the modular sequencer approach. The most significant is that it usually takes a moment to switch from one section to the next. This can be anywhere from a brief 64th note, to a rather long 16th note. Fortunately, a modular sequencer can also be used as a linear sequencer, since it is quite easy to simply record all (or most) of the material into one section. This would eliminate the pause, or 'seam', between sections. However, it is quite difficult, if not impossible, to use a linear sequencer as a modular one. All Sonus sequencers for the Atari ST are of the modular variety. In Sonus terminology, a section is called a 'Sequence', and a finished arrangement is called a 'Song'. However, some Sonus products (SuperScore) are only compatible with single sequences. FileCon provides a method for merging modular songs into single linear sequences. The Current Sequence ____________________ Notice that the first sequence icon in the window is filled in with black. The black icon is called the selected, or current sequence. When you save a sequence you will be saving the current sequence. Conversely, when you load a sequence you will be loading into the current sequence. To select a different sequence just point at the sequence icon with the mouse and click. Loading A MIDI Music File _________________________ The first step is to choose what type of file you wish to convert. Move the mouse pointer to the Format menu and you will see a list of available formats for loading and saving music files. (Formats which are not yet implemented by FileCon will be shown in grey.) Select the 'Load" format that matches the format of the file you wish to convert. The currently selected format will be shown with a check mark. Next, move the mouse pointer to the File menu and select 'Load File". You will get the familiar GEM file selector. Find the file you wish to convert. What happens next will depend on the type of file you are loading. We will cover each file type currently supported by FileCon. Once a music file has been loaded you will see a black oval inside the icon of all recorded sequences. Loading A Sonus Song File _________________________ Sonus Song files have the the extension SNG in the directory. This three character extension is used by a number of other sequencers, also. FileCon is smart enough to tell the difference between different files, regardless of the file extension. The first thing you will see is an alert box warning you that loading a Sonus Song file will clear all sequences from memory. This is because a Sonus Song file is a modular file, and may contain up to 24 sequences. If you wish to continue then click on OK, otherwise click on cancel. The mouse pointer will change into a bee for several moments, and then the screen will be updated to show the individual sequences which the song contained. Loading A Sonus Sequence File _____________________________ This is the simplest conversion, since there really is no conversion to be done. The sequence is simply loaded into the selected sequence slot. Loading A Steinberg Song File _____________________________ The Steinberg Pro-24 program is a 24-track linear sequencer. FileCon converts a Pro-24 song file (with the extension .SNG) to the first 24 tracks in the selected sequence. As was previously mentioned, many sequencers use the three character extension SNG on their files. Although FileCon, and other Sonus programs, can tell the difference between files, regardless of the filename extension, Steinberg Pro-24 cannot. Be careful! If you attempt to load a Sonus SNG file into Steinberg Pro-24 the program may crash! It is strongly advised that you keep your files on different disks. (This problem was encountered with Steinberg Pro-24, version 2.0, and may not exist in subsequent versions.) After the file is loaded, and checked for compatibility with the Steinberg Pro-24 song format, you will see a dialog box containing several options. Sonus sequencing programs allow you to specify ranges within individual tracks to perform editing operations, such as quantize or transpose. In contrast to this, the Steinberg Pro-24 program allows you to record tracks in sections, called patterns, and specify the parameters for each section individually. The dialog box allows you to specify which of the pattern parameters in the original Steinberg file should be performed on the converted music. The parameters which can be applied to the conversion are listed below, along with a brief explanation of what happens during the conversion process. 1) Quantize. The Steinberg Pro-24 program allows you to set a quantize value for each pattern, ranging from a quarter note, to a thirty second note triplet. When this option is selected FileCon will quantize each pattern to the value specified in the original Pro-24 file. 2) Transpose. The Steinberg Pro-24 program allows you to set a transpose value for each pattern, ranging up to 127 semitones up or down. When this option is selected FileCon will transpose each pattern up or down according to the interval specified in the original Pro-24 file. 3) Velocity. The Steinberg Pro-24 program provides two methods of real-time velocity adjustment. In fixed mode, the velocity of each note event is fixed to a specified value. In shift mode, the velocity of each note is shifted up or down by the amount specified. When this option is selected FileCon will perform the specified velocity adjustment (fixed or shift) by the amount specified in the original Pro-24 file. 4) Delay. The Steinberg Pro-24 program allows a pattern to be moved forward or backward in time. When this option is selected FileCon will adjust each pattern by the amount specified in the original Pro-24 file. 5) Split. The Steinberg Pro-24 program allows a pattern to be split at some note value. Any notes below the specified value are sent to a different MIDI channel. When this option is selected FileCon will convert the channel data of the appropriate note events. This can get rather sticky. All Sonus sequencing programs, including FileCon, can send a recorded track to up to four MIDI channels, and on one or two MIDI output ports. (The second MIDI output port requires an additional piece of Sonus hardware.) When different MIDI output channels are selected these channels will override the original channels of the recorded data. When the split option is selected it will affect only the channels of the recorded data. In order to hear the track play with the original split intact the channel setting of the track must be made passive. See the section on setting track channels for more information. 6) Filters. The Steinberg Pro-24 program allows specific events to be filtered from a pattern. When this option is selected the specified events will be removed from the pattern during the coversion. This works slightly different than the method used in the Steinberg Pro-24 program, as Pro- 24 will allow note-on and note-off events to be filtered separately. If either note-on or note-off events are being filtered, FileCon will remove ALL NOTE EVENTS from the track. FileCon requires that each track be balanced, and that there must be a corresponding note-off event for each note-on event in the track. There are many parameters in the original Pro-24 file that FileCon will not convert. Recorded tempo and meter changes will not be converted as Sonus sequencing programs accomplish these with multiple song elements. (Remember, Sonus sequencers are modular.) FileCon does not set the initial tempo or meter from the original Pro-24 file, either. You may set these to any value desired using the appropriate function in the Edit menu. FileCon does not calculate the End time of the converted sequence, but leaves it at the original setting. You may, of course, change the End time anytime you wish. Setting the End time to 001:01:001 will allow the sequence to play indefinitely. You should, however, set the End time to some reasonable value before trying to use the converted music with Sonus SuperScore. You should refer to the documentation that comes with the Steinberg Pro-24 program for more detailed information on any of the parameters described here. Playing A Converted Song ________________________ Once you have loaded a music file you can audition it by simply clicking on the PLAY icon. The icon will turn black, the counter will begin rolling, and the music will start playing. Note that the mouse pointer dissappears while the song is playing. To stop the song you should press the space bar on your computer keyboard. Setting The MIDI Channels _________________________ You can set up to four MIDI playback channels for each track in each sequence. To do this point at the appropriate sequence and double click on it's icon. The dialog box that appears will have thirty two icons, representing the thirty two tracks in that sequence. Any tracks which are recorded will be displayed with a black oval inside the icon. To set the channels for a particular track point at the icon of the track you wish to set and click. The large track selector dialog will disappear, and a small dialog will appear with the current channel setting for that track. There are four settings in the dialog box, corresponding to the four channels you can set for this track. When a channel is shown with two tildes (~~) then that channel setting is 'passive', or not enabled. When all four channel settings are passive then the track will be played to whatever MIDI channels are contained in the actual track information. Note that the channels must be set in a top to bottom order. That is, until the top setting is dialed up from the passive position you cannot adjust any of the channel settings below it. Conversely, if you set a channel setting to passive, then all settings below it will also be set to passive. This is because FileCon processes channelization in the same order you see it here. When FileCon encounters a passive setting it stops checking the rest of the settings. There are two buttons for each of the four channel settings, marked A and B. These buttons allow you to determine which of the two MIDI ports the data should be transmitted from. Port A refers to the MIDI port which is built into your Atari ST computer. Port B refers to an optional piece of hardware, available from Sonus, that connects to your MODEM port, and provides an additional sixteen MIDI channels. When you are finished using the Channel dialog you can click on OK or CANCEL. You will be returned to the Track Selector dialog so that you can continue setting channels for other tracks. When you are finished setting channels on all tracks you should click on CANCEL in the Track Selector. Erasing A Sequence From Memory ______________________________ Point at the sequence you wish to erase, press and hold the left mouse button. The mouse pointer will change into a hand, and the sequence icon will be surrounded by a 'ghost' box. Keeping the left mouse button pressed, drag the ghost box to the Trash Can icon, labeled 'REFUSE'. When the hand is over the Trash Can release the mouse button. An alert box will appear, warning you that you are about to erase the sequence. Click on OK to continue, or CANCEL to abort. Copying or Merging A Sequence _____________________________ You can make a backup copy of a sequence in memory, or merge a sequence with another (also known as 'bounce'). Follow the procedure above for erasing a sequence, but instead of dragging the ghost icon to the Trash Can you should drag it to the icon of the destination sequence. If the destination sequence is not recorded then a backup copy will be made there. If the destination sequence is recorded then you will be shown an alert box giving you the option of merging the two sequences, replacing the destination with the source, or cancelling the operation. Playing A Sequence From Some Point Other Than The Beginning ___________________________________________________________ You can start playing a sequence from any point by simply setting the CTR counter to the position you wish. To adjust the CTR counter simply click on the icons marked BEAT and PULSE. The arrows on the icons indicate which direction the counter will roll. Clicking once on the icon will change the counter by one increment, either beat or pulse. Holding the mouse button down while pointing at one of these icons will cause the counter to roll continuously, until you let go of the mouse button. Once you have set the CTR counter to the position desired simply click on the PLAY icon to start playing the current sequence from that position. Any time you wish to move the counte quickly back to the beginning of the current sequence simply point at the button marked TOP (beside the CTR counter) and click. Setting The End Time ____________________ The displayed end time of a sequence is used to determine when a sequence will stop playing. It is also used when appending two sequences together. More on appending sequences later. When you change the end time of a sequence you will not change any of the recorded information in the sequence. In other words, if you set the end time to a value that is lower you will not cause any information to be removed from the sequence. The information which would normally have been played after the new end time will not be reached during playback, since FileCon will stop playing when it reaches the end time. Use the procedure described above to set the CTR counter to the position where you would like the end time to be set. Then click on the button marked SET (beside the END display). The Desk Menu _____________ If you have used your Atari ST computer for any length of time then you know that the Desk menu is where you access your desk accessories. For a complete description of how to use menus and desk accessories please refer to the Atari ST Owners Manual, which was provided with your computer. At the top of this menu is a selection titled 'About FileCon...'. If you select this option you will see a dialog box with authorship, copyright, and version number information. To hear a commercial announcement try the following: 1) Make sure that the volume control on your monitor is turned up. Simultaneously hold down the Control, left Shift, and Alternate keys. 2) While holding these keys, point at the FileCon icon and click the left mouse button. Listen... The File Menu _____________ Clear Memory ____________ As the name implies, selecting this option will clear any recorded sequences from memory. You will see an alert box giving you one last chance to change your mind. Set Drive _________ Selecting this option will call up a dialog box with a number of buttons in it. There is a button for each disk drive which the Atari ST is capable of connecting to. There are sixteen of these. Theoretically, you could connect sixteen floppy disk drives to your Atari ST. (Actually, the Atari ST hardware does not allow for this many floppy drives.) However, it is far more common to use some of these disk drive assignments for RAM disks, or hard disk partitions. The buttons which are black-on-white represent disk drives which your Atari ST recognizes as being connected. The buttons which are grey-on-white represent disk drives which your Atari ST does not recognize. The button which is white- on-black signifies the drive which is currently selected. Even if you only have one disk drive the Atari ST always assumes the presence of drive B. This little trick allows you to copy files and disks with only one disk drive. If you only have one disk drive then select drive A and click on OK. Whichever drive you select, that drive will be used in the file selector dialog when you load or save a file. Most of you know that you can also change the selected disk drive by changing the drive letter in the PATH section of the file selector dialog box. You probably also know that by doing this the file selector 'forgets' the default three character extension, and shows every single file on the newly selected disk drive. Although this is only a minor inconvenience, it can be avoided by using the Set Drive dialog box to change drives before using the file selector to load or save. Load File _________ Selecting this option allows you to load a MIDI music file in the format currently selected on the Format menu. Save File... ____________ Selecting this option allows you to save a MIDI music file in the format currently selected on the Format menu. Quit ____ Selecting this option will take you back to the GEM desktop. You will see an alert box giving you one last chance to change your mind. The Format Menu _______________ Set Tempo... ____________ Selecting this option will call up a dialog box allowing you to set th tempo of the current sequence. You can either use the scroll buttons in the dialog box to adjust the value, or type in a new value. Any value between 40 and 250 (quarter notes per minute) is allowed. You may change the tempo at any time, but if you set the tempo of a blank sequence you may find that your preset tempo is replaced when you load or copy into that sequence. Set Meter _________ Selecting this option will call up a dialog box allowing you to set the time signature of the current sequence. Once again, you have scroll buttons which you can use to change the values. There are two values to set in this dialog. The upper value represents the number of beats in one measure (the numerator of the meter fraction). Any value from 2 to 32 is acceptable. The lower number represents the note fraction that receives a beat count. Values of 2, 4, 8, 16, and 32 are allowed. Of course, these stand for half, quarter, eighth, sixteenth, and thirty second note fractions, respectively. Append Sequence _______________ Selecting this option will call up a dialog box that provides a method for 'connecting' two sequences together. This allows you to create linear sequences from modular songs. This is how it works. First, you select the sequence which you would like to tack onto another sequence. This is called the 'Source' sequence in the dialog box. Second, you select the sequence which you would like to tack onto. This is called the 'Destination' sequence. When you click on the OK button FileCon will append the Source sequence onto the end of the Destination sequence. It does this by making an internal copy of the Source sequence, shifting it backward in time by the length of the destination sequence (length is determined by the End time of the destination), then merging the two sequences together. All along we have been saying that the end time was used to determine when the sequence would stop playing, and that you could change it anytime without actually removing any material from you sequence. However, when you append one sequence onto another any material which would have occured after the end time of the destination sequence will be removed first. Otherwise, the sequence yuou append to the destination would overlap this material, and you would not get the results you expect. As you can see, appending a sequence to another will irreversibly change the destination sequence. You may wish to make a copy of the destination sequence and use the copy to try out this edit operation. After you append a sequence the end time of the destination is automatically adjusted to reflect the material which was added. Bear in mind that the tempo and meter of the appended material will now be the same as the tempo and meter of the original destination sequence. Extract Seq... ______________ With this option you can copy just a portion of a sequence into another blank sequence. The dialog box allows you to specify the starting and ending time, as well as the sequence into which the section is to be copied. Erase Trk(s)... _______________ You can use this option to selectively erase tracks from the current sequence. This could be useful if you want to append two copies of a sequence to another, but you want different parts to play each time. You will see a dialog box similar to the one used to select tracks for channelization. Select the track you wish to erase, or hit CANCEL. You will see an alert box giving you a chance to change your mind. Conclusion __________ That covers the features in the current version of FileCon. Sonus will update FileCon to provide new features and formats, and to fix reported bugs, as soon as the new versions are ready. You can call Sonus at the number below to find out which is the current version of this program, or to report any bugs which you find. Sonus Corporation 21430 Strathern, Suite H Canoga Park, CA (818)702-0992