Accompaniment Machine Instruction Manual

Copyright 2013

PO Box 13595, Albuquerque, NM 87192 U.S.A. Telephone: +1-505-220-3975 Fax: +1-617-752-9077 E mail: Internet:


Here are a few tips to avoid problems with the program: 1. The Accompaniment Machine is designed for modern multicore desktops and laptops running Windows Vista, Windows 7 or Windows 8. All program functions may not be available on older computers running Windows XP. 2. Drivers must be installed so that your keyboard appears as an available MIDI device in Windows. 3. Ideally, turn on the keyboard before running the program. 4. To avoid conflicts, leave the keyboard in its default startup state while the Accompaniment Machine is running. In particular, do not change keyboard voice settings. 5. The program gives the highest priority to redrawing the screen. To avoid gaps in the musical output, do not move the program window while playing MIDI sequences in the Player or Performance windows.


1 Introduction 1.1 What is a style? . . . . . . . . . . . . . . . . . 1.2 Quick introduction: exploring the program . . . 1.3 Quick introduction: recording an accompaniment 1.4 Quick introduction: playing a song . . . . . . . 1.5 How does it work? . . . . . . . . . . . . . . . . 1.6 Connecting a MIDI device . . . . . . . . . . . . 2 Style organizer 2.1 Style basics . . . . . 2.2 Organizing styles . . 2.2.1 Navigation . 2.2.2 Operations . 2.2.3 Popup menu 2.3 Previewing styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 7 9 11 13 15 17 17 19 19 20 20 21 23 23 23 25 27 28 30 32 33 33 34 34 35 36 36 37 40 41 43 45 46 46 46 47 48 49

3 Voice laboratory 3.1 Introduction . . . . . . . . . 3.2 MIDI voice basics . . . . . . 3.3 Building a new voice . . . . . 3.4 Fine-tuning the voice . . . . . 3.5 Saving and loading voice sets 3.6 XG voices and drum sets . . . 3.7 Capturing voice parameters .

4 Performance 4.1 Style controls . . . . . . . . . . . . 4.2 Guiding the style root and chord . . 4.2.1 Yamaha easy-chord system 4.2.2 KBDI system . . . . . . . . 4.2.3 Full chord system . . . . . 4.2.4 Casio chord system . . . . 4.3 Operation sequences . . . . . . . . 4.4 Defining melody voices . . . . . . . 4.5 Settings, real-time events . . . . . 4.6 Songs and sets . . . . . . . . . . . 4.7 Recording a performance . . . . . . 5 MIDI player window 5.1 Function . . . . . 5.2 Navigation . . . . 5.3 Building playlists . 5.4 Playing MIDI files 5.5 MIDI file resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


6 Techniques 50 6.1 Connecting Yamaha keyboards to a computer . . . . . . . . . . . . . . . . . . . . . 50 6.2 MIDI audio output to the computer . . . . . . . . . . . . . . . . . . . . . . . . . . 50 6.3 Making USB drive letters the same on all your computers . . . . . . . . . . . . . . 51




The Accompaniment Machine (AMac) is a sophisticated yet inexpensive program used to amplify the capabilities of digital keyboards and to create accompaniments for solo or group performances. The key is the program’s ability to access the thousands of Yamaha-format1 keyboard styles available on the Internet – virtual backup bands for your performances. The following section reviews what a style is. Sections 1.2, 1.3 and 1.4 are brief walkthroughs that give a quick introduction to AMac2 . Section 1.2 discusses the structure of the program and introduces the Player, Style Organizer and Voice Laboratory windows. Section 1.3 describes how to build accompaniments in the Performer window. Section 1.4 covers the creation of songs, sequences for real-time keyboard performances. Section 1.5 describes how AMac works while Section 1.6 shows how to make sure your keyboard and computer are connected. Some program features... • Access thousands of styles available on the Internet and use them on any keyboard or synthesizer. • Employ the complete set of style sections (MainA,...,MainD,...,Fill In DD ). • With the standardized resources of AMac, instantly play your songs on different keyboards or with different computers. • Listen to styles and organize your collection in the Style organizer window. See how the styles will sound with different tempos and chord shifts. • Change between a main and alternate voice set during a performance for a dramatic effect. • Create song files that contain all information to restore your setups. • Set up sequences of operations (like style-section shifts) before a performance. During the performance, step through the operations by pressing a keyboard control key. • Use advanced sequence options such as fades, stop-on-first-beat, alternate voices, volume changes and tempo shifts. • Organize voices, styles, songs and sets in the familiar environment of your computer’s file system. All resources can easily be transferred to a different computer or E mailed to a colleague. • Create new voices with full control over GM and XG MIDI parameters or capture voice settings directly from your keyboard. Save your custom settings in permanent voice files for use in songs.
KBD-Infinity has no affiliation with the Yamaha Corporation. For convenience, this manual has active links in the table of contents and in the index to take you instantly to topics.
2 1


Figure 1: Accompaniment Machine interface, Performer window. • Build accompaniments and play them during performances with the AMac MIDI player. Advanced player features include saved playlists, lyric display, sequence options and an equalizer to level the volumes of a set of MIDI files. • Perform in a familiar environment – AMac supports all fingering systems for style harmony, including an advanced three-finger system to play the ten chord types commonly encountered in popular songs.


What is a style?

Styles are the core resource for the Accompaniment Machine. Conceptually, styles are the automatic accompaniment templates included in digital keyboards (consoles )3 from Yamaha and other manufacturers. Physically, a style is a binary file that contains special MIDI sections to define the musical content and other data to tell how to decipher it. A console generally has a built-in set of styles that the user chooses with buttons or wheels. Additional style files may be installed on the console with some effort. One problem is that the style files from different manufacturers are not compatible. There are even compatibility issues within a single manufacturer. Yamaha styles for high-end workstations will not function on entry-level consoles. Yamaha-format styles have been developed for decades and constitute the largest and most diverse available set. The prime advantage of AMac is that the program can interpret every existing Yamaha-format style file and can play them on consoles and synthesizers from any manufacturer. This includes styles for the newest high-end workstations.
To avoid confusion, we shall apply the term console to the complete digital keyboard and reserve the term keyboard for the set of piano keys.


Chapter 2 gives details on the structure of style files. For now, it is sufficient to note that the MIDI chunk of a style file consists of a sequence of short musical phrases (one or a few measures) called sections that are delineated by markers. The following sections may be included:
Intro A, Intro B, Intro C Main A, Main B, Main C, Main D Ending A, Ending B, Ending C Fill in AA, Fill in AB, Fill in BB, Fill in BA, Fill in CC, Fill in DD

Styles often do not contain all sections. Even if a style is complete, manufacturers introduce limitations in low-end consoles so they play only a subset. One of the functions of AMac is to remove this limitation. Sections of the type Intro are intended to play once and then to segue into a Main section. The Main sections cycle continuously pending a user signal. An Ending plays once and then stops the sequence. Harmonic variations introduce variety when playing Main sections. There are also several variants of each type of section. Generally, the accompaniment becomes more intense (e.g., richer orchestration, more complex rhythms,...) proceeding from Main A to Main D. The Fill In sections provide transitions between the Main variants. A typical song may follow the sequence IntroA → Main A → Fill In AB → Main B → Ending B. When styles are played directly on a console, the user must press buttons to signal section changes. When using AMac to control the console, the user prepares a sequence in advance and advances through the sections by pressing a single control key on the keyboard. A style sequence starts when the user presses a key combination that signals the harmonic root and chord type to be applied. As the song progresses, the player presses different key combinations to signal changes of harmony and control keys or buttons to signify style-section shifts. With a good choice of styles and sections, the end result is a good approximation to a backup band.


Quick introduction: exploring the program

To begin, make sure that your keyboard is connected to the computer. (If not, see the suggestions in Sect. 1.6). Also, ensure that the keyboard is in the default startup mode (if necessary, restart it). Amac has four windows – to move between them, click the buttons at top-center of the program screens (Fig. 2). The windows have the following functions: • Performance. This window handles the main program activities: 1) create setups for songs and 2) accompany real-time performances. • Voice laboratory. Experiment with MIDI settings to create custom melody voices. Save the results to make them available in the Performance window. • Style organizer. Check out features of styles and organize your collection. • MIDI player. Play sequences of MIDI and karaoke files for background music or to accompany performances. To get started, click the Player button. If you have a keyboard connected, click Change port and choose the desired output device. In a first-time run of AMac, the file selector on the left-hand side points to the default resource directory 7

Figure 2: Window navigation buttons

Thereafter, a licensed program will restore the MIDI device setting and the last directory you accessed. Double-click on the file AllThroughTheNight.mid to add it to the playlist at the center. Then click Start to play the song on your keyboard. In the Player, you can build and save playlists of any length. You can save relative volume settings in playlists. This feature is useful because MIDI files that you find on the Internet often have large variations in volume. Next, click the blue button with the bass clef to move to the Style organizer window. Both file organizer windows at the bottom point to the Demo directory which contains the style file BallingTheJack.sty. Double-click on the file entry in either window to load it into the previewer. This is a rich style file that includes almost all possible sections (with the exception of Fill in AB ). The main repeating sections have four measures (4/4 time at a tempo of 125 quarter notes/minute). Click the Main A button to hear a single instance of the simplest main section. For comparison, click on Main C. It has an adding string padding to add depth. To deemphasize the strings, check the Context box and start Main C. The section plays continuously. Click the Equalizer button to bring up the equalizer dialog. Move the Pad slider to 50%. To see how the style sounds at a faster, double-click on the number 125 in the Base tempo box and type in 160. Click on different entries in the Chord radio button array to check how the style sounds when shifted to different chord types. The controls and displays at the bottom of the window constitute a full-featured two-window file manager. You can delete or rename files, build a directory tree, and move or copy files between the windows. The file manager is an effective tool to organize your style collections. Chapter 2 gives a complete description of the functions. Next, click the maroon button with the treble clef to go to the Voice Laboratory. The purpose of this window is to build a collection of melody voices optimized to your keyboard or synthesizer. Click the Load voice file button. The selection dialog again points to the Demo directory. Load the file AMac Standard.MDV which contains a set of GM (general MIDI) voices with no XG settings. The set of available voices appears in the listbox at lower-right. When you enter the Voice Laboratory, AMac sends a Local Off message to your keyboard. In this case, the notes that you hear are those defined by the program rather than the internal processor of the keyboard. Double-click on 013 Marimba and play some notes in the upper part of your keyboard. You should hear a marimba sound rather than a piano. Experiment with some of the other voices. The controls on the left-hand side of the window can be used to set the full complement of MIDI messages for synthesizer control. (Note that your keyboard or synthesizer may not respond to all of the control messages). Load the marimba voice and move the Reverb/depth slider. A setting of 0 sounds like an open field and a setting of 127 sounds like an enclosed, echoing room. Try cranking up the Chorus setting. With a high value, the sound approximates 8

a ground of marimba players. Set the Octave control to -1 to move the voice down an octave. If your keyboard supports XG voices, check your reference manual to find settings for the XG bank. For example, on a Yamaha DGX-640 keyboard, voice 193 is designated Carillon. To make the sound, set the GM instrument to 015 (tubular bells) and the LSB (least significant byte) of the XG bank to 097. You’ll notice a significant different between the standard GM voice (LSB = 0) and the XG voice (LSB = 97).


Quick introduction: recording an accompaniment

One of the main applications of AMac is to prepare custom MIDI files to accompany performances using Yamaha-format styles as building blocks. The MIDI files you prepare may have introductions, main sections, transitions and endings with changes of harmony, volume and tempo matched to a specific song. The MIDI sequences may be sent directly to an onstage keyboard or synthesizer during a performance, or they may be converted to an audio file with a Digital-Audio Workstation. One advantage of using an accompaniment for a keyboard solo is that all functions of the keyboard are available and both your hands are free. You can play a two-part melody or operate the pitch-bend wheel. Here, we’ll inspect an accompaniment for a flute duet of the holiday song We Three Kings of Orient Are. We’ll use an unusual style to add interest to the familiar tune. As a basis, we’ll apply the chord progression from a fakebook4 . Click the brown button with musical notes to go to the Performance window, the nexus of AMac. If necesssary, click the Choose port button and set your keyboard as the MIDI input device. To begin, you’ll need to make some settings. Click the Settings button (at top-right) to bring up the dialog of Fig. 3. Click the Set control note button to put the program in keysensing mode. Press the key that you will use as the sequence controller – generally, the lowest one on your keyboard. Pressing this key during a performance tells AMac to advance in the operation sequence (for example, changing the style from Main A to Main B ). The control key is not used for musical information. You can also change the Split note. Keys above the split note are used to play the melody. Keys at or below the split note signal root and chord shifts in the style. For this task, we’ll use only notes below the split point. To conclude the setup, use the Style lead radio buttons at the upper-left to choose how to signal chords: • Yamaha easy-chord system. AMac supports an augmented version of the familiar Yamaha easy chord system (Sect. 4.2.1). Pressing a single root key sets the style in the corresponding major chord (e.g., press any G key below the split point to play GMaj ). The root key plus the closest lower white key gives a 7 chord, the root plus the closest lower black key gives a min chord, and the root plus the closest lower white and black keys gives a min7 chord. There are two extra chords in AMac: the root plus the two closest white keys gives Maj7 and the root plus the two closest black keys gives a dim chord. For any other combination, the programs tries to match one the chords listed in Fig. 14. • KBDI system. A simplified fingering system (Sect.4.2.2) that expands on the Yamaha system. The ten most common chords used in popular songs may be played with simple patterns of one to three fingers. Again, if a combination is not recognized, AMac tries to match one of the chords listed in Fig. 14.

The Ultimate Christmas Fakebook, 5th Edition (Hal Leonard, Milwaukee), 199.


Figure 3: Performance settings dialog. • Casio chord system. The basic system used on Casio keyboards. Again, a pressing a single key gives the root Maj chord. Press the root key plus any single lower key for a min chord. The root plus any two lower keys gives a 7 chord and the root plus any three keys gives the min7 chord. • Chords. Play all chords directly according to Fig. 14. In this case, the lowest key gives the root. Section 4 gives detailed information about leading style harmony. Exit the Settings dialog and click the Load song button and choose the prepared example WeThreeKingsAcc.ASG. Note that the voices on the right-hand side are set to Undefined. In this case, your computer will not send voice information for channels below 08h when the song starts. Such information could over-write voice settings you have already made on the keyboard. Note that the song file defined all parameters (such as the tempo), the accompaniment style and an operation sequence The sequence displayed in the top-center list box, has the operations:
Intro B Main B Main D Main A Ending B

We can now generate an accompaniment MIDI file. Figure 4 shows a harmony diagram for the song. The operations described in this paragraph will take some practice – the main goal of the text is show what can be done. Press the Arm recorder button or the F7 key. Start the style by pressing a key combination below the split point to signal Emin. Don’t worry about the time interval between pressing the arm button and starting the song. AMac synchronizes everything to the initial notes of the style and leaves one blank measure at the beginning of the MIDI file. After playing the four-measure introduction, AMac continues with the Main B section in Emin. After two measures, press a B7 key combination to shift the harmony. Continue through the first verse. The red symbols in Fig. 4 designate control-key presses. Press the control key once during the last measure to switch the accompaniment to Main D with a more full sound. Note that AMac waits until the end of the current measure 10

Figure 4: Accompaniment example: We Three Kings of Orient Are (John H. Hopkins) before switching sections. Wait a measure or two and for a transition and then proceed with the second verse. The Ending B section is rather quiet compared to Main D and a direct transition is jarring. Pressing the control key in the last measure shifts to the more gentle Main A section. During the Main A measure, press the control key to start Ending B. After the section has ended, press the Arm recorder button again to stop the recording. Then, click Save recording and give the file a descriptive name like WeThreeKingsAccmp.MID. Use the Player window of AMac to preview the MIDI file. You can play one song or you could make playlist of accompaniment files and use the Single selection option to perform a set.


Quick introduction: playing a song

This section illustrates the role of AMac as a real-time performance assistant. Click the Load song button and choose the selection BallinTheJack.KSG in the default directory. AMac loads the following information: • The style associated with the song (left-hand side). • The sequence of operations implemented by the control key on your keyboard (center). • Voice settings for the melody (right-hand side). In this case, the first verse is played in harmony on the organ, and the second verse is played by a tenor saxophone with organ harmony. The program sends information on the synthesizer voice setups to your keyboard when the song is loaded. Press a key on your keyboard in the melody section above the split note – you should organ notes in harmony. Next, click the Start/Stop button in the Style group on the right-hand side. When the style starts, play a few melody notes. If you do not hear simultaneous style and melody notes, your computer may not be powerful enough to run AMac. Click the Start/Stop button or press the Escape key to stop the style. To begin, we’ll test the left-hand functions. Signal a G7 chord using keys below the split point following your fingering system of choice. As directed by the operation sequence, the 11

Figure 5: Song example: Ballin’ The Jack (Jim Burris, Chris Smith) program starts the six-measure Intro B section of the style. The Measure field in the Style group gives a countdown. Introduction sections automatically go the next sequence operation when complete. In this case, the program plays the Main C section continuously, waiting for the next control operation. Press the control key that you defined for your keyboard once. AMac completes any pending measure beats of Main C and then switches to the single-measure Fill in DD. After this measure, the program executes the Toggle alt voice command. This operation changes the melody voices and does not affect the bass sound. The program automcatically proceeds to Main D. Press the control key one more time at the end of the second verse to hear Ending B. The final step is to play a complete song. Figure 5 gives the song score in fakebook format. The sequence is set up for playing the song twice. The solo in the first verse is played by an organ, the second verse by an alto saxophone. Both verses have an organ harmony. The red circles designate points to press the control key to advanced the sequence. High circles designate actions on the first verse and low circles the second. To review, you play the song through after the six measure introduction. At the first ending, press the keyboard control key to signal the Fill in DD section. During this section, press the control key again to switch to the alternate voice set. After playing the song a second time, press the control key to signal Ending B. While practicing the song, you probably don’t want to repeat the introduction ending every time. To skip the introduction, select the sequence operation Main C and signal a G7 chord to start.



How does it work?

A basic understanding of the interaction between a computer and a keyboard is useful to use AMac effectively. Figure 6 shows a block diagram of a full-functioned digital keyboard. Although externally it appears to be a unified device, it includes three processing units that communicate through MIDI signals. The physical keyboard is a set of 61 to 88 switches connected to a relatively simple processor. The main function of this unit is to send MIDI messages consisting of three bytes: a status byte and two data bytes. • The Status byte designates whether a key has been pressed (NoteOn ) or released (NoteOff ). • The first data byte gives the keyboard note (a number from 0 to 127). • The second data byte gives the note volume if touch control is active. Otherwise, the data byte has the maximum value 127.5 The keyboard processor may have other functions like monitoring the setting of the pitch-bend wheel and sending appropriate messages. When the keyboard is in Local mode, the MIDI signals from the keyboard are transmitted to the main processor as well as to the computer output port. The functions of the main processor are controlled by the assortment of buttons, knobs and dials on the keyboard. Performance functions may include the following: • Add voice control information to the MIDI stream to specify how the synthesizer should interpret notes from the keyboard (e.g., flute, saxophone, piano,). • Add information from a loaded style to the MIDI stream, with harmonic offsets controlled by keys pressed in the lower part of the keyboard. • Calculate harmonies and add additional notes to the melody line when Harmony is active. The main processor may have additional functions, like playing songs, adding metronome clicks to the MIDI stream and driving an LCD display. The output from the main processor goes to the MIDI synthesizer, a processor that drives a digital-to-analog converter. This device converts the arriving numerical MIDI messages to complex waveforms that contain information on attack, overtones and other features to represent an interesting instrumental voice. The waveforms are ported to the internal amplifier and speakers of the keyboard or to an external amplifier. Even entry-level keyboards from Yamaha have functional keys and good synthesizers. The main performance limitations reside in the main processor (dashed box in Fig. 6). Only a small subset of style sections is typically supported and it is often difficult to back up song settings and add new styles. The primary function of AMac is to replace this processor (Local mode off). MIDI signals generated by the keyboard processor travel to your computer through the USB cable. Within the computer, AMac uses the information to generate complex MIDI signals to represent a style and multi-voice melody. This information can be ported to the keyboard synthesizer or to virtual instruments within the computer. Using AMac gives several advantages:
Pressure sensors are expensive, so most touch-sensitive keyboards do not measure how hard you press a key. Rather, they use two simple switches to measure how fast you press it. Hence, the volume of a MIDI note is often called the velocity.


Figure 6: Relationship between AMac and a digital keyboard


Figure 7: Dialog to set the MIDI input and output devices • Modern 64-bit computer processors outperform the older processors found in keyboards. • Low-price personal computers may have > 8 gigabytes of memory and > 500 gigabytes of hard-disk storage. With this capability, you can store an unlimited number of styles and song presets. • Its easier to build songs and manipulate resources using a color monitor, a mouse and a computer keyboard rather than the non-standard buttons and wheels on different keyboards. • The main processor of the keyboard is an isolated, proprietary device. In contrast, a personal computer is an open system that can communicate with the entire world through the Internet.


Connecting a MIDI device

A connection between your keyboard and computer is necessary to use AMac. It is also the key to enjoying a wide variety of other software and activities. If your digital keyboard is not connected to a computer, you can explore only a tiny fraction of its potential. Computers connect to a variety of output devices using many conventions. Communication with musical instruments is through a MIDI (Musical Instrument Digital Interface) serial port. In days past, MIDI connections were made with special cables and connectors. The keyboard generally had two MIDI connectors for output and input. It was necessary to buy a computer interface box to convert a parallel or serial port to MIDI input/output connections. The configuration of Fig. 6 would require two MIDI cables. Today, MIDI connections between a keyboard and computer are combined into a single USB cable that handles information flow in both directions. Windows computers support virtual 15

MIDI interfaces. Connected devices are available to programs like AMac through interfacing standards. To connect a keyboard to a computer, drivers must be installed so that the virtual interface recognizes the device. Driver installation occurs automatically when you plug in a Casio keyboard. For Yamaha keyboards, you must install the drivers manually. See Sect. 6.1 for tips on the procedure. If all goes well, turn on your keyboard and then run AMac. Click the brown button with musical notes to go to the Performer. Choose Change port to open the dialog of Fig. 7. The keyboard is usually the only input device available, but there may be multiple output devices. The choice Microsoft GS wavetable synth is available on all Windows computers. It is a rudimentary program to convert the MIDI note numbers to audio signals and to send them to the computer soundcard. Typically, you would pick the keyboard as the output device because it has a better synthesizer. Select the keyboard in the input and output list boxes and click OK to exit the dialog. AMac saves the choices when you exit. The program attempts to restore the device settings the next time it runs.



Style organizer
Style basics

Styles are the heart of AMac. They are the automatic accompaniments that can turn a simple rendition of a song into a professional-sounding performance. AMac supports the style format defined by the Yamaha Corporation for their digital keyboards. Tens of thousands of such styles covering all musical genres are available for download on the Internet. The function of the Style Organizer window (Fig. 8) is to help you sort through the vast array of available styles to find the right one for a song. Go to the window from the other program windows by clicking the blue button with the bass cleff. This section reviews some basic features of style files. The following section describes capabilities of the Style Organizer. Yamaha styles are contained in files with names of the form FPrefix.STY6 . The first part of the file consists of a standard MIDI header and a single MIDI track. The track is divided into short musical sections by markers. The sections have the following names: • Main A, Main B, Main C, Main D • Intro A, Intro B, Intro C • Ending A, Ending B, Ending C • Fill in AA, Fill in AB, Fill in BB, Fill in BA, Fill in CC, Fill in DD • Break AA, Break BB A style need not contain all sections – simple styles may include only a few7 . The sections in the first group (Main A, Main B...) provide the bulk of the accompaniment. They are intended to be played cyclically through most of the song. In most styles, Main A is the simplest variation, with progressively more embellishment and richer orchestration in the other sections. If you play two verses of a song, the first is usually accompanied by Main A, switching to a more complex option to add variety in the second verse. The Intro sections are introductions to the Main types, played once at the beginning of the song. Again, the complexity increases from Intro A to Intro C. The Ending sections are played once at the end of song. The Fill in sections (which always consist of a single measure) are used as bridges between the Main types. Finally, Break AA and Break BB are advanced features implemented on some Yamaha keyboards that appear rarely in available styles. You can listen to style files in the Player window (Chap. 5). Here, AMac reads the MIDI track and ignores the section markers and other information. You will hear the style sections played in sequence. If you play several styles, you will notice that some sound good and some sound terrible. The ones that sound good follow a style standard:
6 Alternative suffixes for style files are .BCS (Basic), .PRS (Professional), .SST (Session) and .PCS (Piano combo). All styles have the same format, independent of the suffix 7 The internal routines of a keyboard like the PSR E423 can play only a small subset of style sections: Main A, Main B, Intro A, Ending A and Fill in AB


Figure 8: Style organizer screenshot • Only notes consistent with a CMaj7 chord are included. In this case, it is easy for a program like AMac to transpose and to change notes to shift the style to any root and chord in response to performer input. • MIDI information is limited to channels 08h to 0Fh8 . Therefore, style information may be transmitted without interfering with the melody voices on channels 00h to 02h (Sect. 3.2). Table 1 shows the functions of the style channels. Bad sounds result when a style does not conform to the standard. Unfortunately, this is usually the case. Exceptions may include the following: • Extra information may be included in different MIDI channels. This information must be redirected to the standard style channels. • Some MIDI channels may be in a different chord than Maj7 and may even have a different root. • There may be MIDI channels whose information should be transmitted only when certain chords are played. The data section of the style file contains the information necessary to sort all this out. AMac organizes everything for you when the style is loaded.
A note on channel numbers. MIDI supports 16 channels, often referred to as Channels 1 through 16. The actual channel numbers exchanged between the keyboard and computer are 0 through 15. This manual uses hexadecimal numbers to designate channels (00h through 0Fh) as a reminder that the second convention is used.


Table 1: MIDI channels used by styles Channel 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh Function Sub rhythm Rhythm Bass Chord 1 Chord 2 Pad Phrase 1 Phrase 2 Comments Rhythm instruments if XG MSB = 127, otherwise may be used for general tonal instruments Drum set Bass instrument (e.g., piano or tuba) Chord instrument (e.g., guitar) Chord instrument (e.g., guitar) A floating voice (e.g., strings or a choir) Melodic phrases, often in intros and endings Melodic phrases, often in intros and endings


Organizing styles

Figure 8 shows the layout of the Style Organizer. The organizer has two main functions: • Preview styles (controls at the top). • Organize style files to create performance collections (controls at the bottom). We’ll start with commands in the lower portion of the window. The two listboxes show the contents of two directories (folders) on your computer’s hard disk or removable USB drives. In typical use, one of the directories contains a large collection of style files that you want to preview. The other directory contains a subset of styles that you have selected for a song or performance. Navigation controls to switch to different directories appear above each listbox. Controls that act on files are located between the listboxes. The red active-button shows the listbox that currently has the focus. Some of the file controls (Delete, Rename, Create dir ) act on selected files in the active listbox. The other controls (Copy, Move ) transfer files from the active listbox to the other one. The active listbox changes if you click on the opposite listbox or on any of the controls on the other side. 2.2.1 Navigation

Directory names in a listbox are shaded and file names are unshaded. Directories always appear first. To move into a directory, double-click it’s name. Use the Up button to move up one level in the directory tree. The Root button takes you to the root of the current drive. Use the Change drive menu to change the active listbox to a different drive of the computer. Sometimes it’s useful to set both listboxes to the same location (for example, to move files into a new child directory). To set the right box to the same location as the left box, right-click on the right-hand active-button. As you move between directories, AMac saves a list of previous locations. Use the Back button to move to the previous directory. When you move back, the program saves a list of locations in the forward stack. In this case, use the Forward button to return to a directory. AMac saves it’s current state when you exit. Information includes the current directories of the left and right listboxes and saved locations. The settings are restored the next time you run the program. 19



The file-operation controls located between the boxes are the core of the style organizer. They perform the following functions: • Copy: copy the selected directories and files of the active listbox to the directory of the other listbox. • Move: move the selected directories and files of the active listbox to the directory of the other listbox. In this case, the directories or files are copied to the destination directory, checked for validity and then deleted in the source directory. • Delete: permanently erase the selected directories and files of the active listbox. • Create dir: create a new directory within the directory of the active listbox. Type a name in the text field of the dialog and press OK or Cancel. Alternatively, press Enter in the text field to create the directory or Esc to cancel the operation. • Add location: you may often return to a specific directory used for style storage. In this case, a saved location can eliminate the effort of stepping through the directory tree each time. Use this button to add the currently-active folder to the list of saved locations. • Saved locations: this button raises a dialog with a list of your saved directories. Doubleclick on an entry to switch to the directory in the active window. Alternatively, select a location and click OK. To delete a location, select it and click the Remove from list button. Click Cancel if you decide not to change the location of the active window. You can drag entries up and down with the mouse to organize the list. You can copy the path of the directory locations of the left or right windows to the clipboard. Click on the text field listing the directory above the window and press Ctrl-C. You can also copy the names of any group of directories or files in either window to the clipboard. Make a selection using the standard rules and then press Ctrl-C. The style organizer shows the progress of extended copy, move or delete operations. During this period, other program commands are deactivated. Click Cancel to abort the operation. 2.2.3 Popup menu

Right click anywhere in the window to access the popup menu, which includes the following options: • Display all files/Display only style files. Toggle the list box display to show all files or only files with the extensions STY, .BCS, .PRS, .SST or .PCS. • Sort by name. Directories are listed in alphabetic order with their last-modification date, and files are organized alphabetically with their byte size. • Sort by date. Both directories and files are ordered first by last-modification date and then alphabetically by name showing the last-modification date. • Sort by extension. The same as the previous option, except that files are grouped alphabetically by their extension (suffix) and then by name. 20

Figure 9: Style equalizer • Refresh view. Use this command to update the display if you change the files in one or both of the displayed directories with an external program.


Previewing styles

To load a style for preview, double-click on a style file in either the left or right listbox. The controls at upper-left show file properties. Style type indicates whether the file follows the older (SFF1) or newer (SFF2) format. The Base tempo (in quarter notes per minute) is the default style tempo. Type in a number (from 10 to 300) in the text box to preview the style at a different tempo. There is a button in the center section of the window for each possible style section. The active buttons show which sections are present in the currently-loaded style. Click an active button to hear one instance of the section. The Number of measures in the current section is displayed. This information is useful to identify whether Intro or Ending sections are simple or elaborate. When a section is playing, you can Pause or Stop it with the buttons on the right-hand side. There is also a volume control. Sections play once if the Context checkbox is unchecked. Activate Context when you want to hear how the sections sound when repeated or when they merge into other sections. In the context mode, sections play according to the following rules: • Current section of type Main: play in a continuous loop. • Current section of type Intro: play the introduction and then one instance of the corresponding Main section. • Current section of type Ending: play the corresponding Main section and then the ending. • Current section of type Fill or Break: play the lead Main section, the fill and then the following Main section. Use the radio buttons in the player control section if you want to hear how the style sounds when transposed to different chord types (see Table 14 for chord definitions). 21

The sounds of MIDI files (style files included) may change when played on different devices, depending on how the synthesizer represents the GM or XG voices (see Sect. 3.2). A rhythm section that sounded perfect to the style developer may be deafening on your keyboard. Also, you can significantly alter the character of a style by changing the relative volume levels of channels. To tune channel volumes, check the Context box and click on one of the Main sections for continuous play. Then click the Equalizer button to bring up the dialog of Fig. 9. Use the equalizer to reduce the volume of individual style channels (Table 1). Changes are immediately audible and will be maintained when you exit the equalizer. In the Style Organizer window, the equalizer settings are for preview purposes and do not change the style file. The equalizer is also accessible in the Performance window. Here, you can make the style volume settings a permanent part of a song record.



Voice laboratory

Voices are the instrumental sounds that you use to play the melody of a song above the bass line supplied by the style. In the Performance window, AMac can send the melody notes you play to three different instrumental sounds on your keyboard (MIDI channels 00h, 01h and 02h). The notes to channels 01h and 02h may be the same as those to channel 00h (unison), or they may be displaced by octaves or by harmonic intervals based on the current style chord. Optionally, a set of alternate voices may be defined so you can switch instruments during a song. On a mechanical instrument, mastering a song means learning to play the correct notes with good intonation and phrasing. Electronic keyboards add a new dimension to the creative process. You can choose from a variety of musical resources that can enhance the quality of your performance. One of the key components is a rich and appropriate melody voice set. The Voice Laboratory gives you the tools to find ideal voice settings for your keyboard and to save your experiments in an easily accessible form. In the Performance window, you can load prepared voices from voice sets (sets of voice specifications for different instruments). The information in these files is similar to the collection of predefined voices on your keyboard. The function of the Voice Laboratory is to create or to modify voice collections to use in performances. An understanding of some MIDI principles will help you use the Voice Laboratory and voices in the Performance Window effectively. Section 3.2 reviews the essentials. Sections 3.3 and 3.5 walk you through the steps of building a new voice and saving it so you can use it again. Section 3.6 covers advanced XG voice capabilities. Enter the Voice Laboratory window by clicking the maroon button with the treble clef symbol from any other window in AMac. Figure 10 shows the window layout. Controls are divided into groups by function. MIDI port commands are at the lower left. An output port is necessary to hear the voice settings. If an input device like a keyboard is present, the program echoes notes you play with the current voice settings. If there is no input device, you can still hear the voice with the Send test notes command. Controls to set parameters of the current voice are grouped at upper-left and lower-center. Controls to edit the current voice are in the upper central area. Commands on the right-hand side apply to voice files.


MIDI voice basics

As discussed in Sect. 1.5, AMac receives numerical data from your keyboard (generally via a USB port), does computations and then sends back appropriate messages to the keyboard or to a different MIDI synthesizer. Incoming numbers contain information such as the identity of a pressed key, the press speed and the duration of the note. Outgoing data can be classed into two groups:


Figure 10: Voice laboratory • Setup information. • Performance information. The performance information consists mainly of NoteOn and NoteOff signals, sent at the appropriate times. In contrast, setup information is sent at t = 0, before the performance starts. An important component of the setup is the definition of voices. For example, if a NoteOn signal is sent to MIDI channel 2, should the resulting sound approximate a violin, a clarinet, a tuba,...? In the absence of any setup information, every channel sounds like an acoustic piano, the default on most keyboards. AMac and the keyboard communicate over 16 MIDI channels – each channel can represent a different musical instrument. Channels 08h through 0Fh are set aside for styles. The associated setup information is built into the style and is sent automatically when the style starts. You cannot control this information other than adjusting relative volume levels. AMac sends melody information over channels 00h, 01h and 02h. You have complete control over the characteristics of the melody voices. The Voice Laboratory makes it easy to experiment with different settings and to save the results. Voice settings on a MIDI synthesizer such as a keyboard are sometimes called patches. The term is a holdover from the days of analog synthesizers. A collection of oscillators, filters, envelope generators and other equipment was physically patched together to produce a specific, complex audio signal in response to a MIDI note number. There was a revolutionary change with the advent of digital synthesizers. Thousand of dollars worth of interconnected electronic devices could be replaced with a set of numbers (parameters) applied to wave-generation algorithms. An inexpensive keyboard could easily hold parameter sets for thousands of patches. With an effectively infinite number of possibilities, some standardization was essential. In particular in order to circulate standard MIDI files, it was necessary that all synthesizers produced about the same instrumental sounds. The requirement lead to the general MIDI (GM) 24

convention, a set of 128 standard instrument sounds that a synthesizer should be capable of reproducing. If so, the synthesizer is GM compliant. Table 2 lists the options. The computer communicates what instrument sound should be approximated by the synthesizer in a particular MIDI channel by sending the following two-byte message:
First byte: C0h + ChanNo Second byte: GMCode

The message is called a program command. The channel number covers the range ChanNo = 00h to 0Fh, so the first number may vary from C0h to CFh. The quantity GMCode is the number in Table 2 and covers the range 00h (0) to 7Fh (127). At a minimum, the setup transmission consists of program commands for each of the channels used in the song. Finally, note that there is considerable variation between synthesizers in the quality and characteristics of the standard instrumental sounds, so the audio signal generated from a MIDI file will differ somewhat on each device. During setup, the computer can also send control change information to fine-tune the voice characteristics. For example, we could set the reverberation (or depth) level. Reverberation determines the level of multiple reflections of sound (echos) in the virtual performance space. A value of 00h corresponds to open space space or an anechoic chamber while the maximum value 7Fh corresponds to a closed space with hard walls. The computer sends the following three-byte MIDI message:
First number: B0h + ChanNo Second number: 5Bh Third number: Reverb level (00h to 7Fh)

The first byte, B0h to BFh, indicates that control information follows for the MIDI channel. The second byte shows the type of control information – the number 5Bh indicates reverberation level. The final byte is the value.


Building a new voice

To illustrate the procedure, let’s define a voice from scratch. Click the New voice button. AMac sets the voice controls on the left-hand side of the window to default settings: • General MIDI patch to 00h (acoustic grand piano), • Volume level to 5Ah, • No special settings for effects like Reverb, Brightness = 40h. • Pan level 40h (equal volume on the right and left sides if the synthesizer supports stereo). Click the Send test notes button. You short hear a short scale and chord played in a piano voice. A better way to test voices is to play selections on a keyboard. If your keyboard is attached, choose it as the MIDI input device (use the Change port button if necessary). Set the synthesizer as the MIDI output device – we’ll assume the same keyboard is used as the output device. Play a few notes. You should hear the piano voice. Now, click on the down-arrow on the GM 25

Table 2: GM Voices
000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 Acoustic Grand Piano Bright Acoustic Piano Electric Grand Piano Honky-tonk Piano Electric Piano 1 Electric Piano 2 Harpsichord Clavinet Celesta Glockenspiel Music Box Vibraphone Marimba Xylophone Tubular Bells Dulcimer Drawbar Organ Percussive Organ Rock Organ Church Organ Reed Organ Accordion Harmonica Bandoneon Acoustic Guitar (nylon) Acoustic Guitar (steel) Electric Guitar (jazz) Electric Guitar (clean) Electric Guitar (muted) Overdriven Guitar Distortion Guitar Guitar Harmonics Acoustic Bass Electric Bass (finger) Electric Bass (pick) Fretless Bass Slap Bass 1 Slap Bass 2 Synth Bass 1 Synth Bass 2 Violin Viola Cello 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 Contrabass Tremolo Strings Pizzicato Strings Orchestral Harp Timpani String Ensemble 1 String Ensemble 2 Synth Strings 1 Synth Strings 2 Choir Aahs Voice Oohs Synth Choir Orchestra Hit Trumpet Trombone Tuba Muted Trumpet French Horn Brass Section Synth Brass 1 Synth Brass 2 Soprano Sax Alto Sax Tenor Sax Baritone Sax Oboe English Horn Bassoon Clarinet Piccolo Flute Recorder Pan Flute Blown Bottle Shakuhachi Whistle Ocarina Lead 1 (square) Lead 2 (sawtooth) Lead 3 (calliope) Lead 4 (chiff) Lead 5 (charang) Lead 6 (voice) 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 Lead 7 (fifths) Lead 8 (bass + lead) Pad 1 (new age) Pad 2 (warm) Pad 3 (polysynth) Pad 4 (choir) Pad 5 (bowed) Pad 6 (metallic) Pad 7 (halo) Pad 8 (sweep) FX 1 (rain) FX 2 (soundtrack) FX 3 (crystal) FX 4 (atmosphere) FX 5 (brightness) FX 6 (goblins) FX 7 (echoes) FX 8 (sci-fi) Sitar Banjo Shamisen Koto Kalimba Bagpipe Fiddle Shanai Tinkle Bell Agogo Steel Drums Woodblock Taiko Drum Melodic Tom Synth Drum Reverse Cymbal Guitar Fret Noise Breath Noise Seashore Bird Tweet Telephone Ring Helicopter Applause Gunshot


instrument control and choose a different voice, like a celesta. Notes should now have a different sound. Here’s what’s happening. When you press or release a key, the keyboard sends signals to the computer. The signals are intercepted by AMac, and the program echoes them (i.e., sends the same information back to the keyboard) on MIDI channel 00h. The keyboard produces an audio signal that depends on the program information it has received. When you changed the GM instrument, AMac sent the MIDI message
First byte: C0h Second byte: 08h (celesta) Third byte: 00h

to the synthesizer. All subsequent NoteOn messages will be represented by a celesta-like sound. Here’s a couple things that may go wrong: • What if you hear both a piano and a celesta sound? In this case, the keyboard is not only sending information to the computer, but also sending information directly to its own output. The MIDI convention is to sum signals arriving from all sources. It’s necessary to set the keyboard to Local Off. This happens automatically on Yamaha keyboards. AMac sends a Local Off signal whenever you enter the Voice Laboratory and sends Local On when you exit. Some Casio keyboards do not recognize the Local Off signal, so you must set it manually. • The voice setting on a Yamaha keyboard may affect note output to the computer, even if the keyboard is set to Local off. Some keyboard voices may have octave displacements and even voice doubling on multiple channels, which can cause confusion. Be sure the keyboard is in the powerup default state when you use AMac and do not change the hardware voice when the program is running.


Fine-tuning the voice

Use the set of controls on the left-hand side to customize the voice. It is important to recognize that some of the controls may not have an effect, depending on the sophistication of your synthesizer. Inexpensive Casio keyboards use waveform samplers rather than an actual synthesizer. Therefore, most of the parameters (except chorus, reverb and octave) are ignored. Moderate price Yamaha keyboards respond to all the controls on the left side, but not the controls in the center. Experiment with your own keyboard to see which controls are recognized. All sliders have the range 00h (0) to 7Fh (127). The controls have the following functions: • Volume. The default volume of the voice. • Reverb/depth. Effect of the performance space – a higher value gives a longer echo effect. • Chorus. Simulation of multiple players (like a string section). With a high value, the synthesizer broadens the frequency width of overtones. A low value corresponds to a solo instrument. • Cutoff/brightness. A low-pass filter – a high value passes all frequencies while a low value passes only low frequencies for a mellow sound. 27

• Resonance/timbre. Instruments create a series of overtones, integer multiples of the fundamental note frequency. A instrument like a banjo has a high content of overtones, while a flute has a low content. A high value of this parameter gives strong overtones, while a low value gives reduced overtones. Incidentally, if you want to appear musical be sure to pronounce timbre as tamber (as in tambourine). • Attack time. Musical instruments like pianos typically do not produce notes with uniform amplitude. Instead, the amplitude follows an envelope like that of Fig. 11: a louder section when the hammer strikes the string, a sustained period while the key is held down and then a decay when the key is released. The profile of Fig. 11 is called an ADSR envelope (attack/decay/sustain/release). Generally, the amplitudes are built into the parametric definitions of the synthesizer, but you can adjust the timings. Use this control to adjust the attack time. Note that there are only A, D and R commands – the S time is controlled by how long you hold the key. • Release time. The release time of the ADSR envelope. • Left/right. This command, also know as Pan, controls stereo effects. For a setting of 00h, the voice sounds only in the left channel. A setting of 7Fh gives sound in the right channel. • Octave. An octave displacement, implemented in AMac rather than in the synthesizer. As an application example, a displacement of -1 is usually used with a tenor saxophone to get a more soulful sound without the need to transpose the notes of the song. • Sound variation. A generalized control for synthesizers that support multiple variants of an instrument sound. • Decay time. The decay time of the ADSR envelope. • Vibrato rate. Vibrato is a low-frequency modulation of pitch. This control sets the modulation frequency. • Vibrato depth. This control sets the frequency range for the vibrato modulation, generally small compared to the fundamental frequency. • Vibrato delay This control sets the phase of the vibrato modulation relative to the NoteOn signal. • Tremolo depth Tremolo is a low-frequency modulation of amplitude. This control sets the volume change.


Saving and loading voice sets

When you find a good combination of parameters, you’ll want to save the voice to use in your performances. Modify the voice name if you want something more descriptive, and then click the button Add as new to list. The voice appears in the listbox in the lower-right corner of the window. You can create and add any number of voices to the list.


Figure 11: Parameters for note amplitude envelope. The list is not a permanent record, so it is important to save your results before exiting the program. Use the Save voice file command and specify a prefix to create a voice file with suffix MDV (for MIDI voice). The next time you run AMac, you can reload the file and work with the entries in the list: • Add more voices. • Delete entries. • Edit voices by tuning the parameters. • Reorder the list. To add a voice, define a set of parameters and click the Add as new to list button. To delete voices, highlight entries in the list and then click the Delete voices button. To select multiple entries, hold down the Ctrl key. To select a block, select the top and bottom entries while holding the Shift key. To remove all entries, use the Clear voice list button. To change one of the voices in the list, double-click on it or select it and click the Edit voice button. The voice name and its associated parameters are transferred to the control area on the left-hand side. After making changes, there are two options to move the results to the voice list: • Use the Update in voice list button to replace the old voice. • Use the Add as new to list button to append the voice settings to the end of the list. In this case, the voice must have a unique name.


The AMac distribution includes three voice set files that you can use as templates for your work: • KBDI STANDARD.MDV. A basic set of 119 GM instrument voices with default parameter settings. • PSRE423.MDV. A set of XG voices captured from the Yamaha PSR E423 keyboard. These voices are best used on Yamaha keyboards. • DGX640.MDV. A set of XG voices captured from the Yamaha DGX-640 keyboard. These voices are best used on Yamaha keyboards.


XG voices and drum sets

Digital synthesizers can produce thousands of instrumental sounds, far more voices than the 128 of the general MIDI convention. XG parameters allow you to access the full set of voices available on your keyboard. In the XG convention, voices are arranged in banks of 128. The bank number (a 14 bit quantity) is specified by two seven bit numbers: MSB contains the top 7 bits and LSB contains the lower 7 bits. The maximum number of voices on a synthesizer that support the XG convention is (128)3 = 2, 097, 152. In practice, the number of available synthesizer voices is much smaller. The drawback of XG is that the voices are not standardized between manufacturers and may even differ between keyboards from the same manufacturer. Therefore, voices that you create with XG parameters may be appropriate only for your keyboard. This is the reason that most of the MIDI files you download on the Internet use only GM voices. If your goal is to perform on your keyboard, XG voices are a good option if you know the correct parameters. These may be listed in the reference material supplied with the device. For example, the Yamaha PSR E423 supports 700 voices, with XG parameters given in the Data List manual. The setting for the ChristmasBel voice, GM instrument = 098, MSB = 000 and LSB = 067, gives a warm bell sound. In most cases, if a synthesizer does not support XG voices or does not recognize the particular XG specification, it will substitute the general MIDI voice. Manufacturers usually define XG voices so that they sound similar to the corresponding GM voice. In the example, GM voice 098 is FX 3 (crystal), close to ChristmasBel. Therefore, XG voices may have an acceptable sound on different keyboards. The XG parameters can be used to make rhythm (percussive) sounds on your keyboard. Such sounds have a broad spectrum without a well-defined pitch. Rhythm sounds are a key component of most styles – by convention, they are transmitted over MIDI channel 09h. Because pitch information is not required, the note value in NoteOn and NoteOff MIDI messages is used to determine the type of drum sound. Like the general MIDI instrument voices, there is a set of general MIDI percussion sounds recognized by all synthesizers that support the GM standard. The options are listed in Table 3. To illustrate, if a synthesizer receives a NoteOn signal on MIDI channel 09h with note value 39h, it produces the sound of a hand clap. The XG parameters may be used to send rhythm information on other channels, such as channel 00h used by the Voice Laboratory. To illustrate, set XG MSB = 127, XG LSB = 0 and GM Instrument = 0, and then play some notes. You should hear drum sounds. The type of drum may depend on your keyboard characteristics. For example, on the PSR E423 there is a default one octave displacement. Set the Octave control to -1 and play notes. The expanded set of percussion instruments will match the small pictures above the keyboard. 30

Table 3: General MIDI percussion sounds Note 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 Drum sound Bass Drum 2 Bass Drum 1 Side Stick/Rimshot Snare Drum 1 Hand Clap Snare Drum 2 Low Tom 2 Closed Hi-hat Low Tom 1 Pedal Hi-hat Mid Tom 2 Open Hi-hat Mid Tom 1 High Tom 2 Crash Cymbal 1 High Tom 1 Ride Cymbal 1 Chinese Cymbal Ride Bell Tambourine Splash Cymbal Cowbell Crash Cymbal 2 Note 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 Drum sound Vibra Slap Ride Cymbal 2 High Bongo Low Bongo Mute High Conga Open High Conga Low Conga High Timbale Low Timbale High Agog Low Agog Cabasa Maracas Short Whistle Long Whistle Short Giro Long Giro Claves High Wood Block Low Wood Block Mute Cuca Open Cuca Mute Triangle Open Triangle



Capturing voice parameters

In the Voice Laboratory, you may be able to import your favorite keyboard voices into AMac and save them in a voice file to use with your performances. The process is possible with keyboards that have an InitSend function. In this case, the device exports MIDI messages containing the setup information discussed in Sect. 3.2 (e.g., GM program, XG parameters,...). The following procedure applies to the Yamaha PSR E423: 1. Prepare the keyboard. Press the Function button and use the Category buttons to scroll to InitSend. 2. In AMac, press New voice to clear parameters and then press the Capture voice button. The green indicator indicates that the program is in capture mode. 3. On the keyboard, activate InitSend by pressing Yes in the Reset group. 4. Click the Capture voice button again to take the program out of capture mode. The settings of the controls and parameters on the left-hand side replicate the voice. You can test the settings by pressing keys on the keyboard or click the Send test notes button. 5. Modify the voice name if desired and add it to the voice file listbox. The voice will be included when the voice file is saved. This procedure was used to create the voice file PSRE423.MDV.




The Performance window is the most important component of AMac. It executes real-time operations to control styles, voices and command sequences during your performance or practice. The key to the Performance window is the song file. The file preserves the work you performed creating the song environment – it is available with a single mouse click. Song files contain the following information: • A header with current parameter settings of the Performance window. • The current operation sequence, which contains information about changes to make in response to the control key (e.g., different style sections). • MIDI message parameters that define up to six melody voices (three standard voices and three alternate voices.) • Volume equalizer settings for the style channels. • The complete style file. The implication is that the song file contains everything necessary to play the song. There is no worry of a missing-file error during a performance. You can also save sets (song collections). Sets may sequence through any number of song files, enough for an entire evening’s entertainment. The following section describes the functions of controls in the Style group at the left-center of Fig. 12. Section 4.2 discusses fingering options for guiding the root and chords of the style to match the harmonies of the song. Section 4.3 covers operation sequences, a list of style section changes and other real-time performance options that you set up before performing a song. The changes are implemented by pressing a single keyboard control key. Section 4.4 covers the controls on the right-hand side of Fig. 12 for melody voice creation. You can define three simultaneous voices, either in unison, octave or harmony. Section 4.5 discusses parameters that control program options (e.g., the control and split keys). Section 4.6 reviews the controls of the Song/Set group on the lower-left in Fig. 12. Finally, Sect. 4.7 describes how to make MIDI recordings of your AMac performances.


Style controls

A song must be associated with a Yamaha-format style. Therefore, the first step in building a song is to load a style. It’s not necessary to find the perfect style at the beginning – it can always be changed later. Style commands are located in the Style group at the left-center of the window. Use the Load style button to find a style file and place it in memory. AMac shows the time signature and default tempo. For a quick preview, click on the Start/Stop button or use the Escape key. If you want detailed information about the sections of the currently-loaded style, click the blue button with the bass clef to go to the Style Preview window. You can then return to the Performance window without a loss of information9 .
If you load a different style while in the Style Preview window, it will appear as the loaded style in the Performance window.


Figure 12: Screenshot of the Performance window. The Equalizer was described in Sect. 2.3. Clicking the button opens the dialog of Fig. 9. Use the sliders to balance the components of the style for the right sound. The settings are recorded when you save a song. You can also change the global Volume of the style (relative to the melody). To change the Tempo, type a new value (in quarter notes per minute) in the text field.


Guiding the style root and chord

When performing a piece using styles, the function of your left hand is to signal the harmony of style notes. The required information is 1) the chord root note and 2) the chord type. AMac supports four fingering systems. 4.2.1 Yamaha easy-chord system

The easy-chord system for Yamaha keyboards makes it relatively simple to lead styles harmonically. When accompaniment is active, pressing a single key in the bass region of the keyboard (below the split point) shifts the notes of the style so that they correspond to the major chord of the key note. For example, press a G key below the split point to specify a GMaj chord. Other chords are formed by simultaneously pressing additional keys below the root key. The following rules are standard on Yamaha keyboards: • Press the root key and the next lower white key to define a 7 (seventh) chord. • Press the root key and the next lower black key for a min (minor) chord. • Press the root key and both the next lower white and black keys for min7 (minor seventh) chord.


Figure 13: KBDI chord system AMac augments the system with two additional common chords: • Press the root key and the next two lower white keys to define a Maj7 (major seventh) chord. • Press the root key and the next two lowest black keys for a dim (diminished) chord. Note that the program displays the current chord in the Chord text field. The richness of styles compensates for the limited chord set, so you can usually make a good rendition of a song with the six-chord set (analogous to the bass key rows on an accordion). Occasionally you may want a special chord for just the right effect. In this case, you can play any of the chord patterns described in Sect. 4.2.3. If AMac cannot match an easy-chord pattern, it searches for a full chord pattern. In the event that no match is found, the program plays a major chord using the lowest note as the root. 4.2.2 KBDI system

The KBDI chord system is an expansion of the Yamaha easy-chord system that supports more chords. The ten most common chords encountered in popular songs can be played using combinations of 1, 2 or 3 fingers. The Yamaha method of referencing chords to adjacent black and white keys is sometimes confusing because the pattern depends on the location of the root note and often leads to awkward finger positions. The MIDI note step (a difference of 1 in the GM note number) is the basis of the KBDI system (for example, B is one step below C and B ♭ is two steps below C ). Figure 13 shows the KBDI fingering conventions. Depressing a single key (the root) gives a major chord. Pressing the root key and the adjacent lower one (-1 step) gives a 7 chord (e.g., B/C for C7 ). Similarly, pressing the root key and the next lower one (-2 steps) gives a minor chord (e.g., B ♭/C for Cmin ). As with the Yamaha system, you can also use the advanced chords listed in the following section.


Figure 14: Full chord set recognized by AMac (shown for a root note of C ). 4.2.3 Full chord system

The most versatile but most difficult approach is to play full chords to guide the root and chord type. AMac recognizes the thirty-one chord patterns shown in Fig. 14. The root note is always the lowest one. Transposing a chord is easy in a MIDI program. For example, shifting a C7sus4 chord to a D♯7sus4 is simply a matter of adding 3 to each MIDI note number. In contrast, on a keyboard the player must remember how the steps translate into sharps and flats, a task for an accomplished pianist. Furthermore, it may not be possible to play chords with a large span on a 61-key keyboard. 4.2.4 Casio chord system

Casio chord fingering is the easiest to use and also the most limited. Again, the highest key determines the root. Pressing a single key gives a major chord. Pressing the root and any lower key produces a 7 chord. The root plus two any two lower keys gives a minor chord and the root plus three keys gives a min7 chord. Because of the arbitrary spacings of keys in the 2,3 and 4 key combinations, this option does not support full chords.



Operation sequences

Real-time changes of style sections and other properties are essential for an interesting performance. With keyboard controls and other performance software, you must press specific buttons to invoke the changes. Buttons have three disadvantages: • Identifying which button to press in real time provides a distraction from your playing. • It is impractical for the manufacturer to include a keyboard button for every possible action, so the options are limited. • An incorrect button press can lead to disaster (e.g., ending a style rather than changing main sections). In contrast, AMac has a unique system where all changes are invoked by a single control key on your keyboard (Fig. 15). Pressing the key advances the program to the next entry in a sequence that you prepare before playing the song. The sequence appears in the listbox at top-center in Fig. 12. When a style is first loaded, the default sequence is MainA|Stop. In this case, pressing a key combination below the split point starts the Main A section of the current style. The Main A section of the style plays continuously with the current tempo and equalizer settings. The style stops when the control key is pressed. Here’s a more interesting sequence:

In this case, AMac starts IntroA in response to keys below the split point. The program shows a measure countdown in the Measure text field. After the introduction, the program automatically advances to the MainA section and plays it continuously. During this time, you would play the first verse of a song. Pressing the control key at the end of the verse, the program plays the single measure of the FillAB section and then advances to the MainC section, which is played continuously for the second verse. At the end, a control-key press invokes EndingC. The program stops the sequence when the ending section is complete. By default, the program starts at the first operation in the sequence. You can start anywhere in the sequence by selecting an operation in the listbox before starting the style by pressing keys below the split point. For example, to practice the ending of the example song, select MainC and then begin playing. The example shows how to switch between available sections of a style. AMac sequence operations offer many more options, including fades, global volume changes and alternate voice sets. The following list documents the full set of sequence operations. If the action is the first one in the sequence, it starts immediately when keyboard keys below the split point are pressed. Otherwise, changes occur at the end of a measure of the previous section. • Main A, Main B, Main C, Main D. If another section is playing, the program waits until the end of the current measure. Then, it switches to the specified section and plays it in a continuous loop until the next control signal. [No parameter] • Intro A, Intro B, Intro C. Introduction sections play once, and then the program proceeds to the next sequence entry. [No parameter]


Figure 15: AMac control key – usually the lowest one on the keyboard. • EndingA, EndingB, Ending. Ending sections play once, and then the program stops the style. [No parameter] • Fill In AA, Fill In AB, Fill In BB, Fill In BA, Fill In CC, Fill In DD. The program plays the single-measure section and then proceeds to the next sequence entry. [No parameter] • Break AA, Break BB. The programs plays the single-measure section and then proceeds to the next sequence entry. [No parameter] • Stop style. AMac stops the style immediately (the program does not wait until a measure end). [No parameter] • Stop one beat. The program waits until the end of the current measure, plays the downbeat of the next measure and then stops the style. This option often provides a good simple ending. [No parameter] • Pause style. The program immediately stops the style and then restarts when the control key is pressed again. A single Pause operation in the sequence both stops and starts the style. The next entry in the sequence must be a style section type (Main A, Main B,...,BreakBB). • Fade out. The program fades out at the end of a song by lowering the system volume of the output device. The volume of both melody and style channels is reduced. The parameter is the fade out time in seconds. You can enter fractional values (e.g., 12.6 seconds). • Volume. The operation sets the relative volume of all channels (melody and style). A parameter value of 1.0 corresponds to the initial volume settings upon entering the song. The initial volume level of melody channels is set by clicking the Set current voice button and changing the volume slider. The initial volume of style channels depends on settings in the style file and the Equalizer settings. A parameter value of 0.5 reduces the volume by 50%. You can raise the volume above the initial level with a parameter greater than 1.0 (up to 5.0). Note that high values may result in volume saturation of some channels.


• Melody volume. The operation sets the relative volume of voice channels. The parameter is a number between 0.0 and 1.0. • Style volume. The operation sets the relative volume of style channels. The parameter is a number between 0.0 and 1.0. • Tempo set. Use this operation to set an absolute tempo. The parameter is the desired tempo in quarter notes per minute. Note that the tempo change takes place immediately upon pressing the control key. • Tempo change. Use this operation to make a relative change in the present value of the tempo. The parameter may have the range 0.2 to 5.0. A value of 2.0 doubles the tempo while a value 0.5 halves it. • One beat measure. Use this command or the following two to play a song where a measure has an irregular number of beats. In response to the command, the program waits until the end of the current measure, plays one beat of the current style and then continues with the regular pattern. As an example, suppose there is a 5/4 measure in a 4/4 song. Use this command and press the control key at any time in the preceding measure. AMac plays 1 + 4 beats and then continues with the normal 4/4 pattern. [No parameter] • Two beat measure. The program waits until the end of the current measure, plays two beats of the current style and then continues with the regular pattern. For example, use this operation if a song in 4/4 has a six-beat measure. [No parameter] • Three beat measure. The program waits until the end of the current measure, plays three beats of the current style and then continues with the regular pattern. [No parameter] • Toggle alt voice. Use the operation once to switch to the alternate set of voice discussed in the following section. Use the operation again to return to the normal voice set. As an example, with this feature you can use a completely different set of voices for the second verse of a song. Note that songs always initialize to start with the normal voice set. Use the Add entry popup menu to build or to expand an operation sequence. If a current operation is selected, the new entry is added below it. Otherwise, the new entry is added at the end of the list. Use the mouse to change the order of operations. Left-click on an operation, hold down the left button and move the operation to the desired location. To remove an operation from the list, select it and click the Remove entry button or the Delete key. The Clear sequence button removes all entries. Finally, note if you change the style associated with a song, not all style sections referenced in a sequence may be available. If a section is not supported in the current style, AMac makes an optimal substitution.


Figure 16: Tune active voice dialog called from the Performance window.


Defining melody voices

AMac has many options for defining melody voices. The program supports three simultaneous instrument voices, either in unison, at octave displacements or in harmony. You can define two independent voice sets and switch between them in a song. Voice controls are collected in the Voice group on the right-hand side of the Performance window (Fig. 12). The three voices of the standard set are shown in Fig. 16. Voice0 is transmitted to MIDI channel 00h of the synthesizer, Voice1 to channel 01h and Voice2 to channel 02h. Click on a voice name to make it active. The active voice name is shown in bold letters. To work on the alternate voice set, activate the Alternate voices checkbox. There are two ways to set the active voice: • Load a voice file following the procedure described in Chap. 3. Then double-click one of the entries in the listbox at bottom-right to transfer its parameters. • Create a voice from scratch by clicking the Adjust current voice button. To employ voices that you have created in the Voice Laboratory, use the Load voice file button to load a file (FName.MDV). Then, double-click on one of the entries to load its parameters into the active voice. If the voice settings are not ideal for the song, you can tune them by clicking the Adjust current voice button. AMac displays a dialog with the same controls as the voice laboratory (Fig. 16). As parameters are changed, the external synthesizer is updated so you can hear the effect by playing notes on the keyboard. Anything may be changed, including the voice name and the GM instrument. The active voice is updated when you exit the dialog. Note that these changes affect only the voice in the song. They do not modify the loaded voice file. The settings are recorded when you save a song file. To create a voice from scratch, make an undefined voice active then click the Adjust current voice button. Finally, to delete a voice, make it active and then use the Remove voice button. When the Harmony checkboxes to the right of Voices 01h and 02h are unchecked, the voices play in unison. (In other words, channels 00h, 01h and 02h receive the same MIDI notes). To 40

add octave displacements, make a voice active and then click the Adjust active voice button. Set the Octave control in the dialog. To use harmony, the primary voice (Voice 00h) must be defined. If a single Harmony checkbox is active, AMac plays the corresponding voice with duet harmony (with notes of Voice 01h lower than those of Voice 00h). Harmonic displacements depend on the current root and chord of the style. If both harmony checkboxes are active, the program produces trio harmony with the notes of Voicer 01h lower than those of Voice 00h, and the notes of Voice 02h lower than those of Voice 01h. The same rules apply to the alternate voice set. Real-time calculations of harmony in response to chord changes in style are complex. AMac may get mixed signals if your bass playing is loose or error-prone. Therefore, it’s a good idea to practice a song with harmony deactivated until you become proficient. In the event of an error resulting in a hung harmony note, immediately press the bass notes for the current or the next chord to clear it. Here is a suggested exercise to check out the voice capabilities. Load any style and define the following operation sequence:
Main A|Toggle alt voice|Toggle alt voice|Toggle alt voice|Stop style

Load the voice file KBDI Standard.MDV. Choose Harpsichord for Voice 00h and Celesta for Voice 01h. Go to the Settings dialog and set the Initial chord to CMaj (Sect. 4.5). Check how the combined voice sounds with Harmony for Voice 01h checked and unchecked. Next, check the Alternate voices box. Pick Drawbar organ for Voice 00h and Marimba for Voice 01h. Start the style by pressing a C key below the split point. Note that the song automatically starts in the primary voice set. Play some notes and press the control key to alternate between the voices.


Settings, real-time events

There are several parameters to define for the Performance window. Click the Settings button at the upper-right to bring up the dialog of Fig. 17. Click one of the radio buttons in the Style lead group to set the fingering system to guide the style harmony. Section 4.2 describes the options. Note that the current choice is stored in a song file, so you can use different fingering systems for different songs. Table 4 gives a list of program parameter settings recorded in song files. Next, you should set the Control key and the Split point appropriate for your keyboard. The control key advances the operation sequence (Sect. 4.3). Usually, it is the lowest key on the keyboard (Fig. 18). Click the Set control note button. The green indicator shows the program is in sensing mode. Press the desired key. AMac displays the note value and exits sensing mode. The split point determines whether a key press plays the melody or guides the style harmony. All keys pressed above the split point play the melody. All keys pressed at or below the split point guide the style. The default setting is F ♯ below middle C. To set the value, click the Set split note button and then press a key. The remaining items control how the style is performed. The Initial chord setting is useful when you are using harmonic voices (Sect. 4.4) and the melody starts before the style. Normally, the style root and chord type determines the displacements of harmony voices. If the style is not playing, you must supply the initial chord information. This information is saved in a song. The Style sampling time determines simultaneity for multiple key presses below the split point. The default time is 25 milliseconds. For this value, if several keys are pressed within 41

Figure 17: Settings dialog in the Performance window.

Figure 18: Setting the control and split keys.


a 25 ms window, AMac assumes they are parts of a single chord. To find a good value, exit Settings and play some chords with or without a loaded style. Watch the response in the Chord text field. Lower the value if the program can follow your playing; otherwise, raise it10 . In the Style chord transposition group, radio buttons define two options: • Maintain chord structure. In this option, AMac plays chords following the exact patterns of Fig. 14. In other words, the notes of a C7 are raised four MIDI notes to play an E7 chord. Chords sound progressively higher until the root reaches the Highest root note. With the default value F ♯, notes are transposed down an octave for roots in the range G -B. • Maintain note range. The program introduces octave transpositions so that chord notes occupy about the same range for all roots. The first option gives strong harmonic changes and is suitable for up-tempo songs. The second option gives a smoother sound and is appropriate for gentle or romantic songs. Some background is necessary to understand the final parameter, Harmony restart. The setting comes into play when melody-voice harmony is active. The issue arises from the nature of MIDI – notes don’t simply stop, they must be actively turned off. If a note shifts pitch, the old note must be turned off and the new one turned on. Suppose you are holding the note C in the melody (Voice 00h) and you change the harmony from CMaj to F7. The notes for Voices 01h and 02h must be corrected for the new harmony. Old notes are always turned off. In Harmony restart is active, then new calculated note values for Voices 01h and 02h appropriate to F7 are turned on. This works well for continuous-tone instruments like organs and flutes. Problems arise with instruments that have a sharp attack and strong decay like pianos and guitars. Your synthesizer plays the loud attack every time a note turns on. This could produce jarring sounds during subtle chord shifts. For these types of instruments, it is best not to restart the note. In summary, here is the rule: • The Harmony restart checkbox should be active for instruments with sustained melody voices like organs, violins, trumpets and flutes. • Uncheck the box for percussive or plucked melody instruments like pianos, guitars and harps.


Songs and sets

You can devote a lot of work to perfecting the resources for a song. Clearly, you only want to do the work once. Furthermore, all the data should be instantly available whenever you perform the song. The song file is the answer. Table 4 lists the song file contents. The file collects everything necessary to perform the song – no additional data files are necessary. Press the New song button to clear the current song and start a new one. Be sure to supply a name for the song in the text field. (The name is used as the prefix of the song file with extension ASG.) Then, load a style, define voices and set the operation sequence. All of these settings may be changed later. As you work, save the file periodically. Recover song file settings with the Load song button.

Values of the Style sampling time much larger than the default may result in a noticeable delay


Table 4: Song file contents Header – current program parameters Split note Style tempo Style volume Style initial chord Style highest root note Style lead type Style chord transposition Style harmonic restart Sequence Codes and parameters for all operations Voices Settings for 1-6 voices as defined in the Tune voice dialog Harmony status for standard and alternate voices Style Style equalizer settings Complete style information

A set is a collection of songs for a practice session or performance. The songs of the current set appear in the listbox at bottom-center. To create a set, load each song and press the Add song to set button. You can change the order of entries by dragging them. You can add more songs later. To remove entries, select one or more songs and press the delete key. When the list is complete, use the Save set command to create a file (SetName.KST). Use the Load set buttons to read a set file. It is important to recognize that a set file does not contain the contents of the included song files. Rather, it is a text list of song file names and absolute paths. To use a set, the song files must be present in their original directories. Here is safe procedure to make sure all resources are available for a performance: • Set aside a USB stick specifically for your performances. • On the drive, create a directory with an identifying name for each performance. • Copy the song files you will use in a performance to the appropriate directory. • In AMac, load the songs from the USB drive and add them to a set. • Save a set file in the root directory of the USB drive. In this way, you can carry your performance resources with you and even use them on a different computers. If you use multiple computers, it is essential that the USB drive assumes the same drive letter (A:,B:,...,F:,...) for all the computers. Section 6.3 shows how to make sure this condition applies. The buttons on the right-hand side of the Song/Set group are used during a practice session or performance. The commands can also be invoked by pressing function keys. Click the First 44

song button or press F4 to load the song at the top of the list. Double-click an entry to start in the middle of the list. Thereafter, press the Next song button or the F2 key to move to the next song in the sequence. Press the Prev song button for a reprise.


Recording a performance

To make a MIDI recording of a song, click the Arm recorder button. AMac activates the armed signal to show that is ready to record MIDI events. The program also transfers voice control information for the melody and style to the recording arrays. When you play the song, NoteOn, NoteOff and other signals generated by the program are stored in memory. Click the Arm recorder button again when you are finished. You can then use the Save recording command to make a permanent copy. The recording process has some features to note: • Metronome functions are not included because the style provides the timing. • There is no need to worry about when to start playing after clicking the Arm recorder button. Nothing is recorded until the program detects a NoteOn event from the keyboard. AMac sets the start time and shifts events so that the measures in the saved MIDI file always start at the beginning of style measures, even if you play a melody pickup. • The program records events in a single MIDI track (Type 0 file). Most MIDI editing programs (like digital audio workstations) will split MIDI channel information into individual tracks. • The recorder saves MIDI events produced by AMac. It cannot record MIDI signals generated by your keyboard or other devices acting autonomously. To make a MIDI file of keyboard output without AMac, use the MiniMIDI Recorder available on our Internet site.



MIDI player window

Call the MIDI Player window (Fig. 19) from any other other window by clicking the green button with the phonograph disk symbol. The player is a versatile utility to play MIDI or karaoke files. The term play means that the file bytes are transmitted to your keyboard or other MIDI device with the proper timing to reproduce the musical content. The player has two main functions: • Automatically play sets of MIDI files. With this capability, you can use your keyboard and audio setup to provide background music for events or between performance sets. • Play performance accompaniments. For example, if you want to play a melody line that requires both hands and the full keyboard, you can prerecord the style sequence using the record functions of the Performance window. Controls are grouped by function in different areas of the window. Controls to set the MIDI output port are at the upper-left11 . Navigation controls are on the lower-left side. With these, you can move between directories (folders) of your hard disk or attached USB drives to collect MIDI files. The files may be added to the playlist box at the center12 . You can change the order of entries in the playlist and add or delete songs. The command group on the right-hand side controls the play functions (Start, Pause or Stop the playlist). Synchronized lyrics appear in the box at the lower-right if you play a karaoke file. Following sections describe the control groups in detail.



The navigation listbox on the left-hand side of the window shows the contents of disk directories on your computer. A directory may contain files and subdirectories. In the list, subdirectories are marked with a tan background. The text field above the control buttons shows the current directory. Enter a subdirectory by double-clicking its entry. Use the Up button to move to the parent directory. The Root button takes you to the highest level of the current drive. Use the Drive popup menu to switch between drives of your computer (including removable USB drives). The Back and Forward buttons are useful when you move back and forth between directories to collect MIDI files. Click Back to return to the previous directory. If you click Back one or more times, you can then click Forward to reverse direction. AMac saves the current directories and restores them the next time you run the program.
11 12

The player does not require MIDI input signals and will function if a MIDI input port is not defined. A playlist is a group of songs (MIDI files) that are played in a prescribed order.


Figure 19: MIDI player window


Building playlists

A playlist is a set of MIDI files played in sequence to create a program. The box in the center of the player window lists the files. To create a playlist, click Clear list if necessary and move the navigation listbox to a directory where the MIDI files are stored. Add a single file to the playlist by double-clicking its entry. Add multiple files by selecting them and the clicking the Add to list button. To select individual files, hold down the Ctrl key and left-click each entry. To select a block of files, left-click to select the top entry, hold down the Shift key and left-click the bottom entry. Alternatively, select the top file, hold down the Ctrl key and use the down arrow to extend the selection. When finished, you can move to a different directory and add more files. Note that the program will only add files with suffixes MID and KAR to the playlist. You can change the order of files in a playlist. To move a single file, select it by holding down the left mouse button and then drag it to its new position. To move a block of files, make a selection, move the mouse to a position inside the selection, hold down the left key and drag the block. Use the Remove button to delete entries in the playlist. Note that this operation does not delete the referenced file. Use the commands Save list and Load list to record and to restore playlists. Playlists are saved as text files with the suffix APL (AMac playlist). The format is simple, so it is relatively easy to create or to modify lists outside the program with a text editor. Table 5 shows an example of the file content. The full path to the file is followed by a comma and the relative volume level, an integer from 0 to 100. MIDI files downloaded from the Internet often have widely different volume levels. You can equalize the volumes of selections in a playlist and record the values. Run through the playlist sequence. While a selection is playing, adjust the volume slider to a good setting and click the Volume set button. The level will be associated with the selection. Afterward, be sure to save the playlist to record the new information.


Table 5: Example of a AMac playlist file.
* AMac playlist file E:\KBDInfinityResources\MidiCollections\MedievalChristmas\boarhed2.mid,67 E:\KBDInfinityResources\MidiCollections\MedievalChristmas\coventry.mid,75 E:\KBDInfinityResources\MidiCollections\MedievalChristmas\dadme.mid,67 E:\KBDInfinityResources\MidiCollections\MedievalChristmas\einros.mid,67 E:\KBDInfinityResources\MidiCollections\MedievalChristmas\hollyivy.mid,55 E:\KBDInfinityResources\MidiCollections\MedievalChristmas\jubilo.mid,67

As with any computer task, organizing files for playlists involves a trade off between shortterm ease and long-term benefits – you can avoid future headaches with some initial effort. It is important to recognize that a playlist is a set of file paths, not a set of files. If the files are moved or lost (e.g., by unplugging a USB drive), then the playlist will not work (AMac skips files that cannot be located). If you want to carry playlists to different computers, we suggest that you put the referenced MIDI files on a dedicated USB drive and build the playlists from that drive. If you work on a single computer, keep the referenced files in a dedicated resources directory on the hard drive.


Playing MIDI files

Commands to play the entries of the playlist to the chosen MIDI device are on the right-hand of the window. These commands are active only when playlist files are available. The default mode (Sequence to end ) is to play the entire playlist in order. The default start point is the top of the list. Highlight an entry to start in the middle. The program shows the name of the current file, its length, the MIDI file type (0 or 1) and the number of tracks. Use the Start button to initiate the sequence13 The progress bar shows the play position in the current file. The Pause button temporarily halts the sequence – push Resume to continue. The Stop button terminates the sequence. Click Next to skip to the next file in the sequence or Previous to return to the previous one. The Volume slider controls the play volume. There are four sequence types: • Single selection. Play a single selection and then stop. The program plays either the first item in the playlist or the first selected item. • Sequence to end. Starting from the top of the list or from the first selected item, play the files in sequence and stop after the last one. • Cycle. Operation is similar to Sequence to end, but the program returns to the top of the list after the last file. Press Stop to terminate playing. • Random. Play files continuously in random order. Press Stop to terminate playing. In all cases, the Interval control sets the number of seconds between selections. If you play a karaoke file or MIDI file with embedded lyrics, they appear synchronously in the lyric text area at the lower right. If you want to save a copy of the lyrics as a text file, play

To avoid an interruption in the playback, do not move the AMac window when the player is active.


the song in Single selection mode. Use the Save lyrics button, which becomes active at the end of the song.


MIDI file resources

There are thousands of MIDI files in all genres freely available on the Internet. Want the national anthem of Afghanistan? No problem. Here are a few links to get started: ( Free MIDI tracks and Karaoke Song Files ( Cool MIDI ( ( ( Partners in Rhyme ( ( MIDI Music Collection ( Mutopia ( MFiles ( MIDI Database ( Classical Archives ( Jaycee’s Broadway, West End and Movie Musicals ( TV Show Themes ( Classical Midi Files ( The Corner Lounge ( A Johann Sebastian Bach Midi Page ( Classical Guitar MIDI Archives (



Connecting Yamaha keyboards to a computer

There are some pitfalls in the Yamaha procedure, so we will briefly review the steps. To begin, it’s important to recognize that you can’t have active drivers for two different models of Yamaha keyboards on a computer at the same time. If you want to change keyboards, use the Windows de-installer to remove the current driver before proceeding. On the CD supplied by Yamaha, go directly to the appropriate driver directory (typical names, USBdrv32, USBdrv64) and run the setup program. If you are going to use AMac, it is not necessary to install the Musicsoft Downloader. The setup process is a little peculiar. Normally, in Windows you install the drivers and then plug in the device - not so with the Yamaha software. Heres the procedure: • Connect the keyboard to the computer with a USB cable and turn on the power. Windows will sense the device and try to find a driver. It will fail and ask if you want to search for the driver. Do not search just cancel out of the New hardware wizard. • Run the appropriate setup.exe. Agree to everything. Ignore the Windows message that the software is insecure – simply move forward to the end. • You can check the installation by clicking on the Safely remove hardware tool in the Windows Taskbar. There should be an entry for the Yamaha USB-MIDI driver.


MIDI audio output to the computer

On occasions, you may want to direct output from AMac to a computer device (speaker, headphones,...). For example, computer output is useful if you are using a basic keyboard for input without a synthesizer and speakers. The default MIDI output port on Windows computers, Microsoft GS Wavetable Synth, is inadequate for AMac and any other performance software for two reasons: • The sound quality is poor, and there is no option to adjust sound parameters like reverb and chorus. • The software has a latency, a delay of approximately half a second between creating a MIDI message (pressing a key) and hearing a sound. Fortunately, there is a free alternative that resolves the problems. Installation takes about 10 minutes. The primary program is CoolSoft VirtualMIDISynth, which installs as a MIDI output port on a Windows system. The program requires an available sound font (a database of waveforms for MIDI voices). There is a list of links to 10 free sound fonts on the CoolSoft web site:

A good option is the Arachno sound font, available at 50

Figure 20: Advanced options tab in the VirtualMIDISynth Configurator.

Unless you have SfArk compression software installed, download the package in the plain SF2 decompressed format (, 136 MB). After unzipping, the important file is:
Arachno SoundFont - Version 1.0.sf2

Move it to a permanent location on your hard disk. Return to the CoolSoft site, click on Download in the navigation bar at the top, and download the file

Run the installer and accept the option to run the Configurator after completion. Click the + (plus) button in the SoundFont tab. In the dialog, navigate to the location where you stored Arachno SoundFont Version 1.0.sf2 and choose it. Run your MIDI software to test the ports. You should see the option CoolSoft VirtualMIDISynth in addition to Microsoft GS Wavetable Synth. Choose it and play some notes. The sound is infinitely better, but you may be disappointed to find that the latency is almost as bad as the Microsoft driver. To fix this, run the Configurator and choose the Advanced options tab (Fig. 1). Lower the value of Additional output buffer from 250 to 5. This reduces the latency to a value consistent with performances. When you run AMac or another program that uses the CoolSoft VirtualMIDISynth port, there will a startup delay as the large soundfont is loaded into your sound card. Almost all sound cards support soundfonts. If this method doesn’t work, you have the exception.


Making USB drive letters the same on all your computers

It is often annoying when USB drives are assigned different drive letters (A:,B:,...,L:,..) when you plug them into different computers. With regard to AMac, drive assignment changes 51

can be a problem if you carry performance resources with absolute file references (like playlist and set files) between computers. A fix is relative easy. First, pick a drive letter that will not conflict with existing device definitions on all the computers you want to use. To be safe, you could pick a high letter like M:. You must perform the following operations on each computer you want to use (i.e., you are changing the operating system settings, not the USB drive): • Plug in the USB drive • Run Control panel. • In Windows Vista, pick Administrative tools. In Windows 7, pick System and security/Administrative tools. • Pick Computer management. • Choose Storage/Disk management. • You should now see a list of installed storage devices, including the USB drive. • Right click on the USB drive and pick Choose drive letter and paths.... • In the dialog, click the Change button, choose a new letter, and then OK out. Ignore the warning about changing paths if you are sure it will not be a problem. The drive will now assume the letter you assigned when it is plugged into the computer.


accompaniment, 9, 10, 46 ADSR envelope, 28 alternate voice, 39, 40 AMac advantages, 13 alternate voice, 40 control key, 37, 41 harmony control, 43 initial chord, 41 operation sequence, 11, 37 performance window, 33 player window, 46 program features, 5 recording, 45 sets, 43 song files, 11, 33 songs, 43 split point, 41 style harmony, 9 style organizer window, 17 style sampling time, 43 voice laboratory, 23 walkthrough, 7 window functions, 7 Arachno soundfont, 50 brightness, 27 capture voice from keyboard, 32 Casio chord, 10 Casio chord fingering, 36 channels style, 18, 24 style channel table, 19 voice, 23, 24 chord chart, 36 chord fingering Casio, 36 full, 36 KBDI, 35 Yamaha, 34 chords, 9, 34 chorus, 27 clear hung note, 41 computer audio, 50 connection, keyboard/computer, 13, 15 control key, 37, 41 Coolsoft VirtualMIDISynth, 50 drum sets, 30 table, 31 equalizer, 22, 34 fade, 38 fakebook, 9, 12 file organizer, 19, 46 full chord fingering, 36 GM voices, 25 table, 26 harmony, 34, 41 duet, 41 melody, 41 trio, 41 harmony control, 43 hung note, 41 initial chord, 41 Internet sites, MIDI files, 49 irregular measures, 39 karaoke file, 49 KBDI chord fingering, 35 keyboard local mode, 13 local mode, 13 lyrics, 49 melody alternate voice, 39 voices, 40 volume, 39 Microsoft GS wavetable synth, 16, 50 MIDI cables, 15 channels, 18, 24 control change commands, 25, 27 53

drivers, 16 drum sets, 30 file, 10, 47 GM drum table, 31 GM voices, 23, 25, 26 input ports, 23 interface, 15 messages, 13, 23 NoteOn/NoteOff, 13 output ports, 23, 46, 51 patches, 24 player, 46, 48 program commands, 25 recording, 10, 45 velocity, 13 voice control, 13, 23 XG voices, 23, 30 MIDI files, 47 Internet, 49 MIDI player window, 7 Mini MIDI Player, 17 operation sequence, 10, 11, 37 build, 39 start, 37 pan, 28 performance window, 7, 33 player window, 11, 46 playlist, 47 playlist, 46, 47 file, 47 file organization, 48 sequence control, 48 volume, 47 program features, 5 recording, 45 reverberation, 27 set, 43 controls, 44 file organization, 44 song, 43 example, 12 file structure, 33 files, 11 soundfont, 50

split point, 41 style channel usage, 18 context preview, 21 definition, 6 equalizer, 22, 34 file, 17, 33 harmony, 9, 34, 43 in song, 33 irregular measures, 39 measures, 37 organizing, 19 sections, 7, 11, 17, 37 standards, 17 substitute sections, 39 tempo, 39 volume, 39 style organizer window, 7, 8, 17 style sampling time, 43 synthesizer, 23, 25, 27 tempo, 39 timbre, 28 tremolo, 28 USB drive letter, 52 USB connector, 15 velocity, 13 vibrato, 28 voice ADSR envelope, 28 brightness, 27 build, 25, 40 capture from keyboard, 32 channels, 23 chorus, 27 file, 29, 40 melody, 40 pan, 28 problems, 27 reverberation, 27 timbre, 28 tremolo, 28 vibrato, 28 voice control, 11, 13 voice laboratory, 7, 8, 23 54

Windows drivers, 16 USB driver letter, 52 XG voices, 30 Yamaha driver installation, 50 easy chord, 9, 34 style, 17, 33