The Menu Bar: Desk: Under the Desk menu title are the program credits and any accessories that were loaded during boot time. Selecting About DoSound... displays a dialog box which presents a brief description of the program as well as the version number and copy write notice. File: Under the File menu title are the disk operations as well as the option to quit the DoSound program. DoSound keeps track of the path and last file name for each of the three types of files that can be loaded and saved. Each time the File Selector box appears, the last accessed path for that file type is presented as well as the last file accessed as the default file name. The note tables and register tables used in the chip mode are saved with the extension .SNG. Also included in this file are some of the various factors associated with the song such as the time signature and tempo. These are the files that DoSound can re-load so that you may continue to work on them. The output file which contains the actual song in XBIOS(32) format has the extension .INL. This is a pure binary file that can placed within your own programs. If you are in the MIDI mode, the Load and Save file entries will be changed to Import and Export respectively. When a SMF file is imported into DoSound, only note on and note off messages are recognized. A limit of 5120 notes will be read. MIDI files are saved with the extension .MID. The format used is the standard MIDI file type 0. Type 0 is a single continuous MIDI track. Standard MIDI files (SMF) that are coded as type 1 may be imported into the DoSound program but will be converted to SMF type 0. Play Song: Displays the file selector box where you can choose a .INL file to be played in background. There is no effect on your current work when this entry is chosen. The internal buffer provided for this option has a maximum size of 12k. Larger files can be re-played with JUKEBOX.PRG. New: Removes the current song from memory. If you are in the Chip Mode and the entry New is selected, any MIDI song in memory will not be erased. If you are in the MIDI Mode and the entry New is selected, any Chip song in memory will not be erased. Load: Presents a file select box where you may choose a new song to load. If a .SNG file is successfully loaded, DoSound will attempt to load the .INL file with the same name from the same path. If the file is found, the song will be ready to play as soon as it is loaded, otherwise DoSound will re-compile the song from the .SNG tables. Save As: This menu entry presents a file select box where you can choose the path and file name that the song should be saved to. Once the song tables have been saved, DoSound will also save the output file to the same path. Both files will have the same name but with a different extension. If changes have been made to the song tables since the last time it was compiled, DoSound will automatically re-compile the current version before the .INL file is saved. Save: This menu entry is only available if the song has been previously saved with the Save As menu entry. This menu entry will save the current song to the known path and file name without prompting you with the file select box. Load Clip: Presents a file select box where you may select a previously saved clipboard file to load. If successful, the data will be placed in the clipboard and the previous contents of the clipboard are erased. Save Clip: This menu entry is only active if the clipboard contains data. When selected, a file select box is presented where you may select a path and file name where the current clipboard contents should be saved. New, Load and Quit: If one of these entries is chosen and changes have been made to the current song that have not been saved, an alert box will appear asking you if you want to save the current song first (a "Cancel" button will also be available which aborts the requested command). Edit: Under the Edit menu title are the various editing features provided. Except for the two Undo commands, all entries work in either the Chip Mode or the MIDI mode. For the MIDI Mode, a separate Undo command is available under the MIDI menu title. Additional edit functions specifically for MIDI files are also provided under the MIDI menu title. Undo Notes: The last action performed which affects the note table can be undone with this entry. If you choose to undo an action, this entry is replaced with Redo. Therefore you can toggle between Undo and Redo. A brief description of what will be undone or redone is displayed in the menu entry. Remember that only the very last action that affects the note table can be undone. Pressing the UNDO key is equivalent to selecting this menu entry. Undo Registers: Same as above except that the last action that affected the register table can be undone (or redone) with this entry. There is no keyboard equivalent for this function, it must be selected from the menu. Cut: Removes the notes selected from the note table and places them in the clipboard. Each notes channel, duration, offset, key and volume are stored in the clipbaord. The previous contents of the clipboard are erased. The register table for the measures selected is not copied to the clipboard. The keyboard equivalent for this command is CTRL+R. Copy: Copies the notes selected from the note table to the clipboard. Unlike cut, they are not removed from the song. The previous contents of the clipboard are erased. The register table for the measures selected is not copied to the clipboard. The keyboard equivalent for this command is CTRL+C. Clear: Removes the notes selected from the note table. Unlike cut and copy, they are not placed in the clipboard. A confirmation is always requested when this entry is chosen. The register table for the selected measures is not cleared. The keyboard equivalent for this command is CTRL+W. Transpose: Displays a dialog box where you can change the keys of the selected notes. Notes can be increased or decreased by any number of half steps or notes with a specific key can be transposed to another specific key. Notes that would be transposed off the keyboard range are not changed. The keyboard equivalent for this command is CTRL+K. Paste (Merge): Copies the contents of the clipboard to the note table beginning at the first measure selected. Notes are "merged" with any notes present in the note table. Since only three notes may be active at any one time, it may not always be possible to merge the clipboard into the work area. If a conflict in channel assignments is detected, an error message will be displayed. The keyboard equivalent for this command is CRTL+P. Insert Measure(s): Inserts the number of measures selected into the note table beginning at the first measure selected. The register table will be shifted accordingly and the new measures will be filled with the default values. The keyboard equivalent for this command is the INSERT key. Delete Measure(s): Deletes the measures selected from the note table. The notes are not copied to the clipboard. A confirmations is always requested when this entry is chosen. The register table will be shifted accordingly and the new measures at the end of the song will be filled with the default values. The keyboard equivalent for this command is the DELETE key. Select Measure(s): Displays a dialog box where you can quickly select a range of measures (or all measures) for editing. If you are not in the Edit Mode when this entry is chosen, you will be when you exit. The keyboard equivalent for this command is CTRL+M. Display Clipboard: Displays a dialog box which provides information on the number of notes in the clipboard and their length in current measures. The clipboard is used to store measures of notes that were cut or copied from the song. As mentioned previously, the resgister table is not effected by cut, copy and paste. The register table contains information relating to the channel enabling, noise period, and wave information at a given point in time. These values remain unchanged until reformatted. Options: Under the Options menu title are various entries which pertain to the entire song as well as an entry to switch back and forth from the Chip Mode to the MIDI Mode. Time Signature: In music, the time signature is a reference which indicates how sheet music is to be read. Here a dialog box allows you to change the time signature. Possible values for the beats per measure are 1-12. The note to represent the beat must be a value of 2, 4, 8, or 16. A 2 represents a half note, a 4 represents a quarter note, an 8 represents an eight note and a 16 represents a sixteenth note. The time signature selected will apply to the entire song. Input Mode: Through this dialog box you may select one of four options to dictate the way notes are assigned to channels while in the Chip mode. In the Floating Channel Mode, DoSound will automatically assign notes the next available channel. In the three Fixed Channel Modes, DoSound will write notes only to the channel you have specified. With this option (if desired) you can insure that your notes are written to a particular channel. Preferences: Within this dialog box you can set up certain personal preferences that apply to the operation of the program. The options available are as follows: Reset dot after new note: If you have selected the dotted note button, enabling this option will turn the dotted note button off whenever you change note values. Reset tuplet after new note: If you have selected the tuplet (3:2) note button, enabling this option will turn the tuplet button off whenever you change note values. Reset accidentals after new note: If you are using the staff for note input and this option is enabled, whenever you make a change to a keys accidental, it will be returned to "As Set" after the note has been written. For instance, if you have the key C set as sharp but you wish to play it naturally, you would depress the N key (or select the entry Natural from the Staff menu title) (see the discussion on Staff menu title below). With this option set, immediately after you have entered the note, your input would be returned to "As Set". Disable Key Click: With this option set, a keystroke will not generate a click. If a song is in the process of being played, a key click will stop the song from playing. If this option has been enabled and you wish to stop the output of a song, press the ESC key. Draw notes -1 pixel: This option controls the drawing of the notes in the work area. Normally when two notes with an identical key start and end at the same time, there is no seperation present in the display indicating that there is not just one note there, but two. If this option is selected, all notes are drawn with a lenth of one less than normal, thus clearly showing the seperation of all notes. Accidentals: Within this dialog box you can set up which keys should have accidentals associated with them. Each key from A to G can be set as either natural, flat or sharp. If the staff is being used for note input, the appropriate designations will be placed on both the bass and treble clefs. When notes are entered via the staff, they are automatically converted to the key specified by the accidentals. For instance, if you have set the key C to be sharp, then placing the mouse pointer over any C position on the staff will show C# in the tone display and will be written as C# to the note table if selected. Notes that are set as flat will be presented in the tone display area with a sharp sign also (for instance D flat is will show up as a C sharp since they are the same). Notes that are entered via the piano will not be automatically converted. The designations on the piano are merely reminders to you that a particular note should be played a particular way. The reason they are not converted is that you have access to the accidental keys on the piano where as you do not have access to them on the staff. Master Tempo: Within this dialog box you may select how fast a song is to be played. This is done by specifying how many 'clicks' there are for a whole note. One click represents 1/50 of a second. The fastest available tempo is 48 clicks per whole note while the slowest is 192 clicks per whole note. Typically, a quarter note last for half a second (or 25/50ths of a second). The initial value of 96 clicks per whole note is used (instead of 100) because it breaks down evenly when continuously divided by two. The slider bar in the tempo dialog box operates just like a window slider bar. If you click on the arrow keys, the tempo will be increased (or decreased) by one click. Clicking inside the slider bar will increase (or decrease - depending on which side of slider you clicked) the tempo by 16 clicks. You may also drag the slider to any position within the bar. The tempo selected will apply to the entire song. If you are in the MIDI Mode, you will be changing the tempo for the MIDI song only and not for the Chip song (and visa-versa). The keyboard equivalent for this command is the T key. Compile & Play: If the sound tables have been changed since the last time they were compiled, DoSound will rebuild the output file. Otherwise the output file will be immediately sent to the sound chip and begin playing. The keyboard equivalent for this command is the F1 key. If the SHIFT key is being held while this menu entry is chosen, a dialog box will appear providing you with the opportunity to select the starting point (measure) that DoSound should begin compiling at. The measure that is currently set as the compiling measure is indicated in the status bar at the bottom of the screen. When a song is saved, the compiling measure is always reset to the first measure so that the entire song is saved. Information: This dialog box presents some information about the current song, including the total number of notes, the number of measures used and the songs duration in minuets and seconds as well as a precise duration in 1/50 of a second intervals. A button is also available to request information on how many bytes the song file will require. The keyboard equivalent for this command is the I key. Display: Under the Display menu title are various menu entries which control the way information is displayed. Piano and Staff: These options switch between the staff and piano displays. The active option is indicated by a check mark. Zoom In: Increases the magnification of the measures by 2x each time selected. The maximum magnification allowed is 4x. With some time signatures the maximum magnification allowed will be smaller. The reason for this is that at least one measure must be fully visible. The keyboard equivalent for this command is the Z key. Zoom Out: Decreases the magnification of the measures by 2x each time selected. The minimum magnification allowed is .25x. With some time signatures the minimum magnification allowed will be higher. The reason for this is that so that the measures will not be squished into oblivion. The keyboard equivalent for this command is the X key. Goto Measure: Displays a dialog box where you can enter a measure number to quickly 'go to'. The keyboard equivalent for this command is the G key. Show channels: Displays a dialog box where you can chose to display notes on specific channels. Any combination of A,B,C or ALL is allowed. The resulting display will draw only notes on the channels you specify. This can be helpful to find all notes on channel A for instance. Show Beats Lines: If active, the beat lines between measures are drawn horizontally across the screen. The keyboard equivalent for this command is the B key. Follow Playback: If follow playback is selected, DoSound will scroll through the music high lighting the measures that are being played. This option must be enabled before Compile & Play is selected. To stop the follow playback once it is in operation, simply press the ESC key. During follow playback, the menu bar is inactive as are all other commands. Staff: Under the Staff menu title are entries specific to the staff input mode. Selecting one of these entries (or the keyboard equivalent) overrides any settings specified in Options Accidentals. The active entry is indicated by a check mark and will remain active until changed (unless Options Preferences has been set up to indicate otherwise). As Set: Indicates that the note should be entered into the song table with its accidental as set with Options Accidentals. Natural: Indicates to enter the note naturally. (This only has an effect if a note was specified as sharp or flat). Flat: Indicates to enter the note as a flat note. (If the note was set up as a flat, it will become a double flat). (If a note was set up as sharp it will become natural). Sharp: Indicates to enter the note as sharp. (If the note was set up to be sharp, it will become double sharp). (If it was set up to be flat, it will become natural.) MIDI: Under the MIDI menu title are the entries specifically for the MIDI mode. This includes a separate Undo command for MIDI editing as well as an options to transfer the MIDI tables to the Chip tables and visa-versa. If you do not have a MIDI capable instrument connected to your computer, you will not be able to record or play back MIDI songs. However, there are some interesting aspects of the MIDI mode that you can use to your advantage to write Sound Chip songs. Undo: The last function entered that changed the MIDI tables can be undone with this command. Like the Undo commands for the Chip mode, it toggles between Undo and Redo. Pressing the UNDO key is equivalent to selecting this menu entry. Play: This entry can be chosen from the menu bar or by depressing the play button in the tool bar. Playback will begin at the measure specified from the tool bar. DoSound may have to build the MIDI buffer and find the first note to begin playing at depending on the situation. A dialog box will be displayed to let you know what DoSound is doing. Pressing any key will stop the MIDI output. Record: Like play, this entry can be chosen from the menu bar or the tool bar. Recording begins with the first MIDI message received. Recordings are written to the MIDI buffer starting at the first measure as specified in the tool bar. This allows you to actually record at any point. All MIDI data that was present in the MIDI tables from the recording measure onwards will be deleted. Recording can be stopped by pressing any key. Recording will also be stopped if the note table runs out of room or if the time table runs out of room. The MIDI tables have room for 5120 notes and a time span of almost 10 minuets. Since the MIDI Mode feature was included as a tool to write songs for the sound chip, only note on and note off messages are recorded. Quantize: Displays a dialog box where you can quantize the notes selected. Quantizing means to adjust the notes timing to perfect intervals. Here you can choose to Quantize to half, quarter, eighth, sixteenth, or thirty-second notes. For instance if you choose to quantize to the closest 1/16 note interval, each selected notes attack will be forced to begin on the closest sixteenth note beat. You may also choose to preserve the note durations or not. If the note durations are not preserved, their ending times will not be altered (since the starting time has changed and the ending time has not, the duration is changed). The keyboard equivalent for this command is CTRL+Q. Durations: Displays a dialog box where you can adjust the durations of the selected notes in various ways. You can either multiply the durations of the selected notes by a percentage or align them to the closest natural value. Dotted notes and/or 3:2 tuplets may be considered when aligning durations to the closest natural value (this is controlled by an internal table). Delays: Displays a dialog box where you can adjust the delay messages of the selected notes. Adjusting the delay messages has the effect of expanding or compressing the length of the notes as well as their starting times. For instance, you could select 2 measures of music and multiply their delay messages by 50%. The result would be that the two measures would now occupy only one measure. The difference from this function verses the Duration option is that the starting times as well as the durations are changed. The keyboard equivalent for this command is CTRL+Y. Transfer: Presents a dialog box where you can set various options relating to the transfer of the MIDI data to the Sound Chip tables. The data can be transferred directly to the Chip clipboard or directly to the work area. Additionally, the write volumes for the three channels can be specified, as well as a note mask. The note mask dictates which notes should be considered for transfer to the Sound Chip tables. Only notes that fall within the specified range will be considered. Since the Sound Chip can only handle three notes active at any one time, you may specify that the high notes or low notes should have priority when being transferred. The Chip time signature as well as the Chip tempo is replaced with the MIDI values. Receive: Copies the contents of the Sound Chip tables to the MIDI tables. Any MIDI data present in the MIDI tables is erased. The MIDI time signature as well as the MIDI tempo is replaced with the Chip values. The Tool Bar: Beneath the menu bar is the tool bar. The tool bar provides quick access to note functions, action modes and register changes. The register buttons are replaced with MIDI buttons when the MIDI mode is selected. Chip Mode: A: Note Buttons: These buttons act like radio buttons, only one may be active at any time. The active button appears depressed. The length of the active note will be the value written to the song table in either the write mode or the step mode. The active note button may also be selected by pressing the numerical keys 1-6. B: Dotted Note Button: Each time this button is selected it will alter its state from active to inactive. In the active state, the current note button selected will be written to the song table as a dotted note. Dotted notes have a length of one and a half times their normal value. The dotted note button may also be selected by pressing the numerical 7 key. C: Tuplet Button: Each time this button is selected it will alter its state from active to inactive. In the active state, the current note button selected will be written to the song table as a 3:2 tuplet. This is the most common form of tuplet found in sheet music. Tuplet notes have a length of two thirds their normal value. This means that 3 tuplet notes will take the space of 2 normal notes. The tuplet button may also be selected by pressing the numerical 8 key. D: Step Marker Buttons: These buttons are only active in the step mode. Rest Button: Selecting this button advances the step marker the length of the active note (adjusted by the dotted note and tuplet buttons if selected). The TAB key can also be used to activate the rest button. Back Button: This is similar to the rest button except that the step marker is moved backwards the length of the active note. The BACKSPACE key may also be used to activate the back button. E: Wave Button: Selecting this button opens a dialog box where you can change the wave parameters for the selected measures. If no measures have been selected, the last measures selected will appear as the default values. The first and last measures that should be edited can be changed at the top of the dialog box. The wave parameters available are the wave type, the wave period and a re-insert flag. Any or all of these factors may be changed. If you do not want to change a particular parameter, simply click on the items text box. A text box that is black with white text means the parameter will be changed. A white box with black text indicates that it will not be changed. If re-insert wave is set to 'Yes' then each note that falls within the measures selected will receive a new wave form before it begins to play (See the discussion on the sound chip in Chapter 1). The area to the left of the wave button displays the active wave information at the time pointed to by the mouse when the mouse is in the work area The first value is the wave number followed by the wave period. If re-insert wave is active there will be a bar over the wave number. F: Volume Button: Selecting this button opens a dialog box where you can change the volume information. There are three options here, changing the write volumes, the global volumes, or the volumes of notes less than a specific length. Changing the write volumes dictates the volume a note receives when it is written to the sound table. The values that appear to the right of the volume button are the current write values. If you are changing the volumes of notes in a selected range, choose the Global Change button. You may select any or all channels to change. If you don't want the volumes for notes on a particular channel changed, click on the text box for that channel. A black box with white text indicates the volume will be changed for notes on that channel. A white box with black text indicates that they will not be changed. Volumes range from 0-16. For a solid tone, the maximum value is 15. For a tone that is to use the wave form volume, a value of 16 is required. To change only the volumes of notes less than a specific length, click on the box before the text 'Lengths less than' (which is at the bottom of the dialog box), and enter the desired length and desired volume. G: Time Indicator: When the mouse pointer is in the work area, the time pointed to by the mouse is displayed in this box. The first number represents the measure, followed by the beat, followed by the click. In 4/4 time there are four beats per measure numbered 1-4, and 24 clicks per beat numbered 0-23. If you are at a zoom level of less than 1X magnification, you may not be able to access all clicks per beat depending on the time signature you are using. H: Note Indicator: When the mouse pointer is in the work area (or on the piano), the note pointed to by the mouse is displayed in this box. If the staff is being used and the mouse is outside the staff area '---' will appear in the note indicator box. I: Action buttons: These buttons are like radio buttons, only one may be active at a time. The active button will appear depressed. Write Mode: The first button with the picture of a pencil is the write mode button. In the write mode the mouse pattern will change to a thin cross hair if moved into the work area. Clicking the mouse button in the work area causes a note to be written to the sound table at the time pointed to and with a length determined by the note buttons. Erase Mode: The second button with a picture of an eraser is the erase mode button. The mouse pattern will change to a framed cross hair if moved into the work area. Clicking the mouse button in the work area causes any note pointed to by the mouse to be erased from the sound table. Edit Mode: The third button with two curved arrows is the edit mode button. In the edit mode you can select measures for editing or edit specific notes. To edit a specific note, simply click on that note and a dialog box will appear giving you the opportunity to change the notes parameters. The starting time, key, volume and duration may be changed. A notes channel assignment cannot be changed. To select a range of measures, move the mouse to the left side of the screen and click on a measure number. If you hold the mouse key down and drag the mouse up or down, the measures will scroll. If you drag the mouse above the first visible measure, the measures will scroll backwards. If you drag the mouse below the last visible measure, the measures will scroll forwards. The range of measures selected will be updated on the bottom of the screen in the status bar at the far right. If you change your mind, and want to make a different selection, release the mouse button and start over. Pressing the ESC key or changing action buttons will also cause the current selection to be reset. Step Mode: The fourth button with a small piano is the step mode button. In the step mode, you may write notes to the song table by clicking on the piano keys or on the staff (or if in the MIDI mode, by playing the MIDI instrument). The mouse pattern will change to a pointing hand when moved over the piano or staff. Notes will be written to the song table at the time indicated by the step marker (a dotted line that appears horizontally across the screen). The step marker will automatically advance once a note has been written. To write a chord of notes, hold down the SHIFT key before the note is selected. DoSound will now wait for at least one more note to be entered before advancing the step marker. A maximum number of three notes may be entered as a chord (afterwards the step marker will automatically advance, except while in the MIDI mode where there is no note limit). Note values may be changed during a chord input. Clicking the mouse in the work area causes the step marker to be moved to the time pointed to. Clicking on a measure number will cause the step marker to be positioned at the start of that measure. The step mode is most useful for entering notes from sheet music. J: Noise Button: Selecting this button displays a dialog box where you can change the noise period for a range of measures. In order for a note to be played with a noise period, it must first be enabled with the enable button. The noise period selected can have a range of 0 to 31 and applies to all channels that are enabled for noise. When the mouse pointer is located in the work area, the noise period active at the time pointed to is displayed in the box to the right of this button. K: Enable Button: Selecting this button displays a dialog box where you can change the channel enabling for a range of measures. Each channel may be enabled for tone and/or noise, or neither. If you do not wish to change the enabling for a specific channel, simply click on that channels text box. A black box with white text indicates that the enabling for that channel will be changed. A white box with black text means that the enabling for that channel will not be changed. When the mouse pointer is in the work area, the enabling active at the time pointed to is displayed in the box to the right of this button. There are two values displayed for each channel in the following format: Y:N Y:N Y:N. The first group relates to channel A, followed by channel B and then C. The first parameter is the tone indicator, the next is the noise indicator. A 'Y' indicates that it is enabled, while a 'N' indicates that it is not. So in the above example all channels are enabled for tone, but not for noise. MIDI Mode: A: Rewind Button: Selecting this button decrements the 'From Measure' counter. The counter will continue to decrement while the mouse key is held down. B: Measure Counter: When either play or record is selected, the requested action will begin at the measure indicated here. Use the rewind and fast forward buttons to change this value. C: Fast Forward Button: Selecting this button increments the 'From Measure' counter. The counter will continue to increment while the mouse key is held down. D: Play Button: Selecting this button is equivalent to selecting the Play menu entry from the MIDI menu title. MIDI playback will begin at the measure indicated in the measure counter. See the discussion on the MIDI menu title. E: Record Button: Selecting this button is equivalent to selecting the Record menu entry from the MIDI menu title. MIDI recording will begin at the measure indicated in the measure counter. Any MIDI data present in the MIDI tables from the measure counter onwards is deleted prior to recording. See the discussion on the MIDI menu title. All other parts in the tool bar respond identically as described under the Chip Mode.