These programs and data are copyright 1999,2000,2001 by Kent Dalton. You may freely redistribute unmodified versions of the program distribution
provided all files remain intact and unmodified. If you wish to sell or profit from the distribution of these files you may not do so without
the express written consent of Kent Dalton. Those wishing to contact me for this purpose may do so via
e-mail.
For folks who just want to update an existing version right now:
If you need installation instructions jump down to the "Install" section of the page.
If you came here to grab the POD Line 6 Libraries (Organized by Amp Type) Collection get it now by clicking on the POD:
Watch the Dates/Versions here if you want to determine whether your installation is up to date. NOTE: Documentation development (the boring un-fun part) lags the Software development (Fun part) considerably.
Click Here to view the version history
This package consists of a set of utilities to aid in guitar fretboard visualization and exploration. It started out as a basic set of Chord
and Scale diagram generators (I did an initial release of these in an early form about a year and a half ago which required perl but also ran
under Unix, see the Implementation details if you're really curious) and the project has grown from there.
It is currently offered as copyrighted freeware, it doesn't cost anything
(although I reserve the right to charge for it in the future or develop a
commercial package based on it) but I do own the rights to the entire
suite.
Here are the current base capabilities provided by the suite:
Generate Scale Diagrams
Generate Chord Diagrams
Determine Chord Names based on Fingering
Generate Arpeggio Diagrams
Determine Chords that fit into a given Key/Scale
Determine Scales that fit into a given Chord Progression
The tools all understand the same basic chord types and scale set (Currently knows 269 scales). The programs support a wide array of
custom tunings. In the offhand chance that a scale or tuning is not known to the tools, the user can input completely custom
scale patterns and tunings as described in this document.
1. Download the zip distribution via this link.
2. Unzip the package to a temporary directory
3. Run 'Setup.exe'
4. Delete the temporary files.
The GUI Frontend will appear in the program manager group as 'KD's Guitar Utilities'. This program's sole
purpose is to provide a frontend/wrapper for the other tools in the suite and can be used to access all of the suite's
capabilities from a single starting point.
Execution and use simply consists of launching the program yielding the main dialog:

Front End Main Dialog
The list of buttons in the dialog describe the different functions of the tool suite. Clicking a button launches the corresponding tool that
provides the function described by the button text. The drop down menus provide the same ability via a menu interface.
The help menu provides an 'About' dialog box and the 'Done' button ends the program execution.

Jimi reminds us what it's all About...
These programs are all based on one another and function in the same basic way. Here is the main dialog for the Chord Diagram program:

Chord Diagram Tool Main Dialog
Here are links to the Scale and Arpeggio diagram dialogs if you wish to see them individually.
That's pretty much it!
The programs can now generate a MIDI file example of the scale, chord, or arpeggio being viewed and send this file to an external player. The playback capability is not Native, so you must define the external player via the 'Edit Settings' dialog. The default player settings are based on the Windows Media Player Default settings. Individual MIDI playback parameters, like tempo and instrument can be set via the settings editor also.
If everything is setup correctly pressing the new 'Play' button beside the tuning selector on the main dialog (note: pictures in this document have not been updated to shoe the 'Play' button) will generate a temporary MIDI file and then send this to the external MIDI player for listening. If you do not have an external player you can grab Windows Media Player or save the MIDI file for later processing using the 'File->Save MIDI' command.
NEW -- Options are now edited via the 'Edit Settings...' dialog from the 'Settings drop down menu. Here is an example from the 'Scale' diagram generator:

Scale Settings Editor
Root Note Highlighting - This colors the Scale or Chord root note differently
than the other notes. This is 'On' by default.
Note Letters - Print the letter text of the note name inside the note
circle on the diagram. This option is 'On' by default.
Frets (Scale Program Only) - Adjust the number of Frets on the diagram display. Default value is '5'.
Inversion Options (Chord Program Only)
Default Value is 'All Inversions'.
Default Save Path - Determines directory location where save operations will occur.
MIDI Play Command - Determines the name and arguments for external MIDI Player. The guitar utilities do not have a native MIDI playback capability. They rely on the user having an external MIDI player installed on their system (nearly all windows systems with sound have some sort of base MIDI player capability preinstalled). The default is "C:\Program Files\Windows Media Player\mplayer2.exe /play /close" which is the default location for the installation of the MS Windows Media Player and the arguments to immediately play the MIDI file and then close the window. If you do not have a MIDI Player or would just like to try a new one grab Windows Media Player from Microsoft for free.
MIDI Tempo - Length of a quarter note in beats per minute.
MIDI Note Length - Length of note to play for each note or chord.
MIDI Instrument - Select the MIDI instrument to use for playback.
IMPORTANT NOTE: Once you have selected 'Done' on the edit settings dialog, if you wish for the changes to become permanent, you must save the settings using the 'Save Settings...' option from the 'Settings' menu. SETTINGS ARE NOT AUTOMATICALLY SAVED.
The Save options are found under the 'File' drop down menu. They will prompt for a file name with a File Selector (the default Output directory is the program documentation directory). After entering a file name in the entry box at the bottom hit 'Accept' to save or 'Cancel' to abort.

These programs all allow saving of the current diagram view as either PostScript or Text via the 'Save PostScript' and 'Save Box as Text' options. I've got some downloadable examples linked below:
Example PostScript Output:
Example Text Output:
There is also a 'Save all as text' selection on the 'File' menu which will save the entire fretboard as text for the Arpeggio and Scale programs and will save all the chord fingerings for the selected chord type for the chord program.
Examples:
One cool thing I like to do is convert the PostScript to PDF using Adobe's Acrobat Distiller. You can make some cool charts to print on non-PS printers.
Example: A Dorian PDF
NEW FEATURE -- MIDI and ABC format output.
These two newly supported formats work the same way as the other save file formats. They can save the example scale or chord in ABC or MIDI file format and are selected via the 'File' Menu. Select the desired save format and then select the save location with the File Selector. To change output file parameters, like tempo, MIDI Instrument, etc, see the settings editor.
ABC is standard text notation format for music files. See http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt for a description of the ABC format.
MIDI is a platform independent format for saving binary music files.
ABC Examples:
E Harmonic Minor MIDI File
In order to input custom scales or tunings you must select 'Custom' from the appropriate menu in the menu bar at the top of the window the option buttons in the dialog box area of the window do not allow this option.
Custom Scales
To Input custom scales, Select the 'Custom' option from the 'Scale' drop
down menu. This will bring up the custom scale dialog. Input the step
pattern for the scale as a comma separated list of the number of half
steps in the scale pattern starting from the root. \
So for example: If we wished to enter the Major scale which has a step
pattern of "Whole Step, Whole Step, Half Step, Whole Step, Whole Step,
Whole Step, Half Step" we would enter:
2,2,1,2,2,2,1
into the Custom Scale dialog box.
Example of a Custom Scale Entry
Custom Tunings
To Input a custom tuning, select the 'Custom' option from the 'Tuning'
drop down menu. This will bring up the custom tuning dialog. Input the
six open string values from lowest to highest separated by spaces into
the dialog.
For example, to enter standard tuning into the custom tuning dialog
you would enter:
E A D G B E
and hit 'Ok' in the Custom Tuning Dialog.
Example Custom Tuning
The chord namer is a program that attempts to come up with a chord name for a user entered fingering. It knows a wide variety of chord types and looks for inversions, as well.

Chord Namer with detail mode off.
The fingering is entered into the text entry area next to the 'Compute' button using a TAB-like
notation where six numeric values from left to right represent the fretting of the six strings from the the low E at the leftmost input
to the high E as the rightmost input. Use the letter 'x' to represent unplayed strings and the number zero to represent open strings.
Press the 'Compute' Button
For Example - A Major could be entered as: x00222
Checking the detailed analysis info check box will allow you to see how the program analyzes the notes in the chord and tries to determine
the best chord name.

Chord Namer doing detailed analysis on an open A Major Chord
This program does not currently support non-standard tunings.
The intent of Key Chord program is to determine a set of chords that
'fits in' with a particular scale. This is sort of a compositional tool and probably my favorite program in the suite (close runner up
is the other 'Key' program for scales)
Say you have some nice licks or melody line composed in a particular scale and you'd like to figure out a chord progression that fits in with
the melody. Or better yet, say you have a verse or section of a tune composed that uses as particular key and you want to explore spicing up
the chord progression by using something other than simple Major/Minor/7 chords. This program can give you plenty of ideas to play with in these
situations.

Key Chord Program Calculating Chords for use with E Mixolydian Scale
The results are divided up into two basic sections the 'Basic Note
Values' (labeled in blue at the top of the dialog) and the 'Chord Analysis' Section (labeled in red below the Basic Note Values).
In the Basic Note Values section, the Selected Scale's note contents and the corresponding Major scale's note content in the two buttons at the
top along with the Scale Degrees contained in the displayed scale
relative to the Major (ie I, II, bIII, etc) and the Step Pattern for the computed scale. Clicking on the Computed or Scale Notes button will
launch the Scale diagram program for that particular scale if you wish to see the note pattern.
<insert scale example>
In the 'Chord Analysis' section, the notes contained in the scale are in the leftmost column of the results and the Chords that were determined
to fit in the scale have buttons to the right of their base note. Clicking on the base note will bring up a dialog containing any
corresponding modes of the parent scale that correspond to that note value. Clicking on a mode name will recompute the display using the
corresponding mode.

Modes corresponding to F#/Gb in E
Mixolydian Scale
Clicking on the chord names will bring up the Chord diagram program for
that particular Chord.

Viewing the 'Eadd11' Chord from the Keychord View
Clicking 'Done' exits the program.
The Key Scales program is similar to the Key Chords program: The intent of Key Scales program is to determine a set of scales that 'fits in' with a particular chord progression. If you often come up with cool chord progressions or riffs and don't know what scale to solo in with them, this program can help.
The first step is to enter the chords in the progression into the entry boxes on the entry screen. You can enter chord fingerings using the
notation for the 'Chord Namer' program or enter proper chord names like
'Dmaj', 'Amin', 'G7', 'Gadd9', etc.

Key Scale Chord Progression Input Window
Once the chords are entered hitting 'Compute' will close the window and open the results
window:

Key Scale
Progression Analysis Results
The results window will show an analysis of each of the chords in the progression (as you'd expect clicking on one of these will bring up a
chord diagram). Under the chord analysis are buttons for each of notes represented in the progression clicking on one of these notes will bring
up a list box showing the scales that can be used for that note as the key with the chord progression entered.

Available Scales for the Chord Progression based on 'C' as the root
As with the chord names, Clicking a scale name within the list will bring up a corresponding diagram:

Scale Diagram Generated by Clicking 'Theta Kalyan' in the Scale List
I don't use a whole ton of different tunings so there aren't as many represented here as I'd like, mostly due to my own lack of expertise. But if you have any you want me to support explicitly that aren't here, let me know, they're easy to add.
| Tuning Name | Open String Pattern |
| Standard | E A D G B E |
| Half Step | Eb Ab Db Gb Bb Eb |
| Fourths | E A D G C F |
| Drop D | D A D G B E |
| Drop D to D | D A D G B D |
| Open G | D G D G B D |
| Open D | D A D F# A D |
| Open C | C G C G C E |
| Open E | E B E A B E |
| DADGAD | D A D G A D |
| Lute | E A D F# B E |
| Lute 2 | E A D F# A E |
| Big City | D A D F# A A |
| D Wahine | D A D F# B D |
| D Minor | D A D F A D |
| D Modal | D A D D A D |
| G6 | D G D G B E |
| GMinor | D G D G Bb D |
| C6 | C G C G A E |
| Baritone | B E A D F# B |
| Baritone 2 | A D G C E A |
| Old Spanish | D G D G A E |
| D Modal | D A D G A D |
| Bron Y'Aur | C A C G C E |
| Parvardigar | C G C G C D |
| Bruce Palmer Modal | E B E E B E |
| New Standard | C G D A E G |
| Low C | C G D G A D |
| Shifted E | E G# C# F# B E |
These are all of the scales I could find. Like with the tunings, if you do find any that are missing that you want me to support let me know, these are really easy to add also.
|
Scale Name |
Step Pattern (in Half Steps) |
| 8 tone Spanish | 1,2,1,1,1,2,2,2 |
| 8 tone Spanish Mode II | 2,1,1,1,2,2,2,1 |
| 8 tone Spanish Mode III | 1,1,1,2,2,2,1,2 |
| 8 tone Spanish Mode IV | 1,1,2,2,2,1,2,1 |
| 8 tone Spanish Mode V | 1,2,2,2,1,2,1,1 |
| 8 tone Spanish Mode VI | 2,2,2,1,2,1,1,1 |
| 8 tone Spanish Mode VII | 2,2,1,2,1,1,1,2 |
| 8 tone Spanish Mode VIII | 2,1,2,1,1,1,2,2 |
| Aeolian | 2,1,2,2,1,2,2 |
| Aeolian bb7 | 2,1,2,2,1,1,3 |
| Algerian | 2,1,2,1,1,1,3,1 |
| Alt Alt | 1,1,2,2,1,2,3 |
| Alt bb3 | 1,1,2,2,2,2,2 |
| Alt bb3 bb7 | 1,1,2,2,2,1,3 |
| Alt bb6 bb7 | 1,2,1,2,1,2,3 |
| Alt bb7 | 1,2,1,2,2,1,3 |
| Alt n2 | 2,1,1,2,2,2,2 |
| Alt n5 bb7 | 1,2,1,3,1,1,3 |
| Alt n6 | 1,2,1,2,3,1,2 |
| Arabian n2 | 2,2,1,1,2,2,2 |
| Arabian | 2,1,2,1,2,1,2,1 |
| Augmented | 3,1,3,1,3,1 |
| Augmented Mode II | 1,3,1,3,1,3 |
| Balinese | 1,2,4,1,4 |
| Bebop Dominant | 2,2,1,2,2,1,1,1 |
| Bebop Dominant Mode IV | 2,2,1,1,1,2,2,1 |
| Bebop Dominant Mode V | 2,1,1,1,2,2,1,2 |
| Bebop Dominant Mode VI | 1,1,1,2,2,1,2,2 |
| Bebop Dominant Mode VII | 1,1,2,2,1,2,2,1 |
| Bebop Dominant Mode VIII | 1,2,2,1,2,2,1,1 |
| Bebop Dorian | 2,1,2,2,2,1,1,1 |
| Bebop Dorian Mode II | 1,2,2,2,1,1,1,2 |
| Bebop Dorian Mode III | 2,2,2,1,1,1,2,1 |
| Bebop Dorian Mode IV | 2,2,1,1,1,2,1,2 |
| Bebop Dorian Mode V | 2,1,1,1,2,1,2,2 |
| Bebop Dorian Mode VI | 1,1,1,2,1,2,2,2 |
| Bebop Dorian Mode VII | 1,1,2,1,2,2,2,1 |
| Bebop Dorian Mode VIII | 1,2,1,2,2,2,1,1 |
| Bebop Locrian Add5 | 1,2,2,1,1,1,2,2 |
| Bebop Locrian n2 | 2,1,2,1,2,2,1,1 |
| Bebop Locrian n2 Mode II | 1,2,1,2,2,1,1,2 |
| Bebop Locrian n2 Mode III | 2,1,2,2,1,1,2,1 |
| Bebop Locrian n2 Mode IV | 1,2,2,1,1,2,1,2 |
| Bebop Locrian n2 Mode V | 2,2,1,1,2,1,2,1 |
| Bebop Locrian n2 Mode VI | 2,1,1,2,1,2,1,2 |
| Bebop Locrian n2 Mode VII | 1,1,2,1,2,1,2,2 |
| Bebop Locrian n2 Mode VIII | 1,2,1,2,1,2,2,1 |
| Bebop Major | 2,2,1,2,1,1,2,1 |
| Bebop Major Mode II | 2,1,2,1,1,2,1,2 |
| Bebop Major Mode III | 1,2,1,1,2,1,2,2 |
| Bebop Major Mode IV | 2,1,1,2,1,2,2,1 |
| Bebop Major Mode V | 1,1,2,1,2,2,1,2 |
| Bebop Major Mode VI | 1,2,1,2,2,1,2,1 |
| Bebop Major Mode VII | 2,1,2,2,1,2,1,1 |
| Bebop Major Mode VIII | 1,2,2,1,2,1,1,2 |
| Bebop Minor | 2,1,2,2,1,1,1,2 |
| Blues | 3,2,1,1,3,2 |
| Blues M3 | 3,1,1,1,1,3,2 |
| Blues M3 Mode II | 1,1,1,1,3,2,3 |
| Blues M3 Mode III | 1,1,1,3,2,3,1 |
| Blues M3 Mode IV | 1,1,3,2,3,1,1 |
| Blues M3 Mode V | 1,3,2,3,1,1,1 |
| Blues M3 Mode VI | 3,2,3,1,1,1,1 |
| Blues M3 Mode VII | 2,3,1,1,1,1,3 |
| Blues Mode II | 2,1,1,3,2,3 |
| Blues Mode III | 1,1,3,2,3,2 |
| Blues Mode IV | 1,3,2,3,2,1 |
| Blues Mode V | 3,2,3,2,1,1 |
| Blues Mode VI | 2,3,2,1,1,3 |
| Byzantine | 1,3,1,2,1,3,1 |
| Chinese | 4,2,1,4,1 |
| Chinese Mongolian | 2,2,3,2,3 |
| Composite II | 1,3,2,1,1,3,1 |
| Composite II Mode II | 3,2,1,1,3,1,1 |
| Composite II Mode III | 2,1,1,3,1,1,3 |
| Composite II Mode IV | 1,1,3,1,1,3,2 |
| Composite II Mode V | 1,3,1,1,3,2,1 |
| Composite II Mode VI | 3,1,1,3,2,1,1 |
| Composite II Mode VII | 1,1,3,2,1,1,3 |
| Diminished | 2,1,2,1,2,1,2,1 |
| Dominant #2 | 3,1,1,2,2,1,2 |
| Dominant Augmented | 2,2,1,3,1,1,2 |
| Dominant Sus | 2,3,2,2,1,2 |
| Dominant Sus Mode II | 3,2,2,1,2,2 |
| Dominant Sus Mode III | 2,2,1,2,2,3 |
| Dominant Sus Mode IV | 2,1,2,2,3,2 |
| Dominant Sus Mode V | 1,2,2,3,2,2 |
| Dominant Sus Mode VI | 2,2,3,2,2,1 |
| Dominant b2 | 1,3,1,2,2,1,2 |
| Dorian #4 | 2,1,3,1,2,1,2 |
| Dorian | 2,1,2,2,2,1,2 |
| Dorian Augmented | 2,1,2,3,1,1,2 |
| Dorian b2 | 1,2,2,2,2,1,2 |
| Dorian b2,#4 | 1,2,3,1,2,1,2 |
| Dorian b4 | 2,1,1,3,2,1,2 |
| Dorian b5 | 2,1,2,1,3,1,2 |
| Double Harmonic | 1,3,1,2,1,3,1 |
| Egyptian | 2,3,2,3,2 |
| Enigmatic | 1,3,2,2,2,1,1 |
| Enigmatic Minor | 1,2,3,1,3,1,1 |
| Enigmatic Minor Mode II | 2,3,1,3,1,1,1 |
| Enigmatic Minor Mode III | 3,1,3,1,1,1,2 |
| Enigmatic Minor Mode IV | 1,3,1,1,1,2,3 |
| Enigmatic Minor Mode V | 3,1,1,1,2,3,1 |
| Enigmatic Minor Mode VI | 1,1,1,2,3,1,3 |
| Enigmatic Minor Mode VII | 1,1,2,3,1,3,1 |
| Enigmatic Mode II | 3,2,2,2,1,1,1 |
| Enigmatic Mode III | 2,2,2,1,1,1,3 |
| Enigmatic Mode IV | 2,2,1,1,1,3,2 |
| Enigmatic Mode V | 2,1,1,1,3,2,2 |
| Enigmatic Mode VI | 1,1,1,3,2,2,2 |
| Enigmatic Mode VII | 1,1,3,2,2,2,1 |
| Ethiopian ARaray | 2,2,1,2,2,2,1 |
| Ethiopian Geez | 2,1,2,2,1,2,2 |
| Half Whole Diminished | 1,2,1,2,1,2,1,2 |
| Harmonic Major | 2,2,1,2,1,3,1 |
| Harmonic Minor | 2,1,2,2,1,3,1 |
| Hawaiian | 2,1,2,2,2,2,1 |
| Hindu | 2,2,1,2,1,2,2 |
| Hindustan | 2,2,1,2,1,2,2 |
| Hirojoshi | 2,1,4,1,4 |
| Hirojoshi Mode II | 1,4,1,4,2 |
| Hirojoshi Mode III | 4,1,4,2,1 |
| Hirojoshi Mode IV | 1,4,2,1,4 |
| Hirojoshi Mode V | 4,2,1,4,1 |
| Hungarian Gypsy | 2,1,3,1,1,2,2 |
| Hungarian Gypsy | 2,1,3,1,1,3,1 |
| Hungarian Gypsy Persian | 1,3,1,2,1,3,1 |
| Hungarian Major | 3,1,2,1,2,1,2 |
| Hungarian Minor | 2,1,3,1,1,3,1 |
| Ionian #2 | 3,1,1,2,2,2,1 |
| Ionian #5 | 2,2,1,3,1,2,1 |
| Ionian #6 | 2,2,1,2,3,1,1 |
| Ionian | 2,2,1,2,2,2,1 |
| Ionian Augmented#2 | 3,1,1,3,1,2,1 |
| Ionian b5 | 2,2,1,1,3,2,1 |
| Japanese A | 1,4,2,1,4 |
| Japanese B | 2,3,2,1,4 |
| Japanese Ichikosucho | 2,2,1,1,1,2,2,1 |
| Japanese Taishikicho | 2,2,1,1,1,2,1,1,1 |
| Javaneese | 1,2,2,2,2,1,2 |
| Jewish Adonai Malakh | 1,1,1,2,2,2,1,2 |
| Jewish Ahaba Rabba | 1,3,1,2,1,2,2 |
| Jewish Magen Abot | 1,2,1,2,2,2,1,1 |
| Kumoi | 2,1,4,2,3 |
| Kumoi Mode II | 1,4,2,3,2 |
| Kumoi Mode III | 4,2,3,2,1 |
| Kumoi Mode IV | 2,3,2,1,4 |
| Kumoi Mode V | 3,2,1,4,2 |
| Locrian | 1,2,2,1,2,2,2 |
| Locrian bb3 bb7 | 1,1,3,1,2,1,3 |
| Locrian bb6 | 1,2,2,1,1,3,2 |
| Locrian bb7 | 1,2,2,1,2,1,3 |
| Locrian n2 | 2,1,2,1,2,2,2 |
| Locrian n2 n7 | 2,1,2,1,2,3,1 |
| Locrian n3 | 1,3,1,1,2,2,2 |
| Locrian n6 | 1,2,2,1,3,1,2 |
| Locrian n7 | 1,2,2,1,2,3,1 |
| Lydian #2 | 3,1,2,1,2,2,1 |
| Lydian #3 | 2,3,1,1,2,2,1 |
| Lydian #6 | 2,2,2,1,3,1,1 |
| Lydian #6,#2 | 3,1,2,1,3,1,1 |
| Lydian | 2,2,2,1,2,2,1 |
| Lydian Augmented #3 | 2,3,1,2,1,2,1 |
| Lydian Augmented #6 | 2,2,2,2,2,1,1 |
| Lydian Augmented | 2,2,2,2,1,2,1 |
| Lydian Augmented#2 | 3,1,2,2,1,2,1 |
| Lydian Dominant | 2,2,2,1,2,1,2 |
| Lydian Dominant Augmented | 2,2,2,2,1,1,2 |
| Lydian Minor | 2,2,2,1,1,2,2 |
| Lydian b2 | 1,3,2,1,2,2,1 |
| Lydian b3 | 2,1,3,1,2,2,1 |
| Major | 2,2,1,2,2,2,1 |
| Major Locrian | 2,2,1,1,2,2,2 |
| Major Pentatonic | 2,2,3,2,3 |
| Mela Bhavapriya | 1,1,3,2,1,1,3 |
| Mela Chakravakam | 1,3,1,2,2,1,2 |
| Mela Chalanata | 3,1,1,2,3,1,1 |
| Mela Charukesi | 2,2,1,2,1,2,2 |
| Mela Chitrambari | 2,2,2,1,3,1,1 |
| Mela Dharmavati | 2,1,3,1,2,2,1 |
| Mela Dhatuvardhani | 3,1,2,1,1,3,1 |
| Mela Dhavalambari | 1,3,2,1,1,1,3 |
| Mela Dhenuka | 1,2,2,2,1,3,1 |
| Mela Dhirasankarabharana | 2,2,1,2,2,2,1 |
| Mela Divyamani | 1,2,3,1,3,1,1 |
| Mela Gamanasrama | 1,3,2,1,2,2,1 |
| Mela Ganamurti | 1,1,3,2,1,3,1 |
| Mela Gangeyabhusani | 3,1,1,2,1,3,1 |
| Mela Gaurimanohari | 2,1,2,2,2,2,1 |
| Mela Gavambodhi | 1,2,3,1,1,1,3 |
| Mela Gayakapriya | 1,3,1,2,1,1,3 |
| Mela Hanumattodi | 1,2,2,2,1,2,2 |
| Mela Harikambhoji | 2,2,1,2,2,1,2 |
| Mela Hatakambari | 1,3,1,2,3,1,1 |
| Mela Hemavati | 2,1,3,1,2,1,2 |
| Mela Jalarnavam | 1,1,4,1,1,2,2 |
| Mela Jhalavarali | 1,1,4,1,1,3,1 |
| Mela Jhankaradhvani | 2,1,2,2,1,1,3 |
| Mela Jyotisvarupini | 3,1,2,1,1,2,2 |
| Mela Kamavardhani | 1,3,2,1,1,3,1 |
| Mela Kanakangi | 1,1,3,2,1,1,3 |
| Mela Kantamani | 2,2,2,1,1,1,3 |
| Mela Kharaharapriya | 2,1,2,2,2,1,2 |
| Mela Kiravani | 2,1,2,2,1,3,1 |
| Mela Kokilapriya | 1,2,2,2,2,2,1 |
| Mela Kosalam | 3,1,2,1,2,2,1 |
| Mela Latangi | 2,2,2,1,1,3,1 |
| Mela Manavati | 1,1,3,2,2,2,1 |
| Mela Mararanjani | 2,2,1,2,1,1,3 |
| Mela Mayamalavagaula | 1,3,1,2,1,1,3 |
| Mela Mechakalyani | 2,2,2,1,2,2,1 |
| Mela Naganandini | 2,2,1,2,3,1,1 |
| Mela Namanarayani | 1,3,2,1,1,2,2 |
| Mela Nasikabhusani | 3,1,2,1,2,1,2 |
| Mela Natabhairavi | 2,1,2,2,1,2,2 |
| Mela Natakapriya | 1,2,2,2,2,1,2 |
| Mela Navanitam | 1,1,4,1,2,1,2 |
| Mela Nitimati | 2,1,3,1,3,1,1 |
| Mela Pavani | 1,1,4,1,2,2,1 |
| Mela Ragavardhani | 3,1,1,2,1,2,2 |
| Mela Raghupriya | 1,1,4,1,3,1,1 |
| Mela Ramapriya | 1,3,2,1,2,1,2 |
| Mela Rasikapriya | 3,1,2,1,3,1,1 |
| Mela Ratnangi | 1,1,3,2,1,2,2 |
| Melodic Augmented | 2,1,2,3,1,2,1 |
| Melodic Minor | 2,1,2,2,2,2,1 |
| Minor | 2,1,2,2,1,2,2 |
| Minor Pentatonic | 3,2,2,3,2 |
| Minor Pentatonic Mode III | 2,3,2,3,2 |
| Minor Pentatonic Mode IV | 3,2,3,2,2 |
| Minor Pentatonic Mode V | 2,3,2,2,3 |
| Mixolydian | 2,2,1,2,2,1,2 |
| Natural Minor | 2,1,2,2,1,2,2 |
| Neapolitan Major | 1,2,2,2,2,2,1 |
| Neapolitan Minor | 1,2,2,2,1,3,1 |
| Oriental | 1,3,1,1,3,1,2 |
| Pelog | 1,2,1,3,1,4 |
| Pelog Mode II | 2,1,3,1,4,1 |
| Pelog Mode III | 1,3,1,4,1,2 |
| Pelog Mode IV | 3,1,4,1,2,1 |
| Pelog Mode V | 1,4,1,2,1,3 |
| Pelog Mode VI | 4,1,2,1,3,1 |
| Pentatonic Major | 2,2,3,2,3 |
| Pentatonic Minor | 3,2,2,3,2 |
| Persian | 1,3,1,1,2,3,1 |
| Persian Mode II | 3,1,1,2,3,1,1 |
| Persian Mode III | 1,1,2,3,1,1,3 |
| Persian Mode IV | 1,2,3,1,1,3,1 |
| Persian Mode V | 2,3,1,1,3,1,1 |
| Persian Mode VI | 3,1,1,3,1,1,2 |
| Persian Mode VII | 1,1,3,1,1,2,3 |
| Phrygian #4 | 1,2,3,1,1,2,2 |
| Phrygian | 1,2,2,2,1,2,2 |
| Phrygian b4 | 1,2,1,3,1,2,2 |
| Phrygian bb3 | 1,1,3,2,1,2,2 |
| Phrygian n3 | 1,3,1,2,1,2,2 |
| Super Locrian | 1,2,1,2,2,2,2 |
| Super Lydian Augmented | 3,2,1,2,2,1,1 |
| ThetaAsavari | 2,1,2,2,1,2,2 |
| ThetaBhairav | 1,3,1,2,1,3,1 |
| ThetaBhairavi | 1,2,2,2,1,2,2 |
| ThetaBilaval | 2,2,1,2,2,2,1 |
| ThetaKafi | 2,1,2,2,2,1,2 |
| ThetaKalyan | 2,2,2,1,2,2,1 |
| ThetaKhamaj | 2,2,1,2,2,1,2 |
| ThetaMarva | 1,3,2,1,2,2,1 |
| Whole Half Diminished | 2,1,2,1,2,1,2,1 |
| Whole Tone | 2,2,2,2,2,2 |
The main programs are implemented as 'Perl' code and then compiled
using IndigoStar's Perl2Exe.
Only the PC Version is provided here but they run under Solaris, Linux, and
probably any other box that supports the Perl/Tk environment. I am not
distributing the Perl source for use on Unix since there doesn't seem to be much
general interest, if someone has a desperate desire to use the tools under Unix
I would consider providing source if the recipient would agree to a
nondisclosure.
The perl-compiled programs are a tad slow when exiting and invoking other programs because the shareware version of the perl2exe program was
used to compile them and thus have a two second delay on exit. If
someone wants to pay for these programs, I'd be happy to use the money
to buy a commercial copy of perl2exe. :)
Thanks to ActiveState (insert URL) for their
PC Perl port.
The C++ Programs were compiled using the 'mingw' (insert URL) port
of GCC for windows.
The chord and scale C++ programs are based on C++ source code Rick Eesley released into the public domain and were downloaded from the
Harmony Central WWW Site. A big thanks goes out to Rick for making
some usable free code for others to work from, it gave this project a good jumpstart!!
abc2midi is used for the MIDI file generation and translation from abc to MID. See http://abc.sourceforge.net/abcMIDI/ for the complete package plus source.