To try out a demo of the latest 3.0 version of COMP-G-TAB, you can Download a ZIP archive of it from here
/-----------------------------------------\
| |
| Welcome to COMP-G-TAB Ver. 3.0 (c) 1995 |
| |
| By Hillel Steinberg |
| |
| hillels@erols.com |
| |
| 2404 Glenmore Terrace |
| Rockville, MD 20850 |
| U.S.A. |
| |
-------------------------------------------------------------------------------
| |
| ***** Contents ***** |
- Introduction
- MIDI and MIDI files
- COMP-G-TAB
- Installation of COMP-G-TAB
- Dos Version Notes
- Windows 16 bit Version Notes
- Windows 32 bit Version Notes
- COMP-G-TAB Output
- Registration
- Todo List
Introduction
------------
A popular form of written notation for guitar is called tabulature (TAB for
short). TAB notation is easy to learn, and requires less guess-work than
standard notation when it comes to locating the notes on your guitar. While
standard music notation describes WHICH notes should be played, TAB describes
WHERE they should be played. For example, some notes on the guitar are
identical in pitch, but are located on different strings/frets. Here is a
small example of TAB notation which illustrates these anomalies:
(high) E ----0--------------------------------
B ----0--------------------------------
G ----1--------------------------------
D ----2--------------------------------
A ----2-------------0---1---2---3------
(low) E ----0----------5---------------------
The strings are shown top to bottom, high to low, starting with the high E.
The number indicates the fret at which the note will be played on a particular
string. For example, the left most '1' is part of a 6 string E chord. The
'1' indicates that the first fret on the third highest string should be
played. To the right are several other single notes. The first two, '5' and
'0' (a '0' means the string is strummed 'open', without left hand fretting)
are actually identical pitches. However, this TAB specifies that even though
these two notes are the same pitch, they should be played on two different low
strings (A and E).
MIDI and MIDI files
-------------------
MIDI (Musical Instrument Digital Interface) is a specification for the
transmission of music data between two electronic devices. MIDI
specifications describe everything from the electronic signals to the cable
interface. MIDI specifications also exists for files which store musical
information to be transmitted to a MIDI device at a later time. MIDI files
(usually with the extension '.MID') meeting this specification can be found on
Bulletin Boards, on CDROMs, and throughout Internet (e.g., ftp.uwp.edu). They
can also be created from other types of digital music files, such as .MOD
files (using a MOD2MID converter). They can be played through a speaker using
simple software and a sound board. Advanced sound boards can even feed MIDI
information directly to synthesizers for immediate playback.
Each MIDI file contains the musical notes, and directions on how they should
be played. Notes are grouped into tracks. There are three types of MIDI
files. The first type, '0', is a one-track MIDI file. All song information
must be contained within this single track. This type is ideal for songs
which have only one instrument playing. Two or more instruments played
simultaneously would require a muli-track format, which is where type '1' MIDI
files enter. Type '1' MIDI files are made up of a set of tracks which will be
played simultaneously. This is useful for songs requiring more than one
instrument or hand. Finally, type '2' MIDI files can contain more than one
track of information like type '1' files, but the tracks do not have to be
played simultaneously. Instead, the tracks are considered sequences of notes,
and each sequence can be played as required. Each track which stores a
sequence, however, should still contain sequences from the same musical score.
Once a MIDI file is created, it can be played back with the proper hardware
and software. Unfortunately, few programs are available which can transcribe
these MIDI pieces back into the sheet music from which they came. Even fewer
exist which can write guitar TAB from these MIDI files. This is where COMP-G-
TAB enters.
COMP-G-TAB
----------
COMP-G-TAB can be used to convert MIDI (types 0, 1, 2) to guitar TAB sheet
music. This program works well on MIDI files which have large sections of
notes played in the same proximity (i.e., two handed piano, or single track
MIDI files using many simultaneously playing instruments are difficult to
translate). The guitar's octave range is also limited in comparison to
instruments, such as the piano, and does not easily provide for good
positioning of very high or low notes.
Thus, COMP-G-TAB employs several algorithms for coping with this deficiency.
I have tested COMP-G-TAB with over 600 MIDI files, and have found useful
output from over 50% of the them. There is a good chance COMP-G-TAB will be
able to unravel the mysteries of your favorite MIDI song!
Installation of COMP-G-TAB
--------------------------
Both the Windows and DOS installation procedures are discussed here. If you
obtained an archive ZIP file (i.e., from an anonymous FTP site on Internet),
then you first need to unpack the ZIP file onto a diskette. If you have a
Registered version of the software, you do not need an UNZIP utility program
because the main files on disk are not provided in a compressed format.
PKUNZIP is one of many tools which are available on Internet which can unpack
ZIP files. If you use another UNZIP tool, then substitute it in the lines
below. For example, if the CGTABV21.ZIP is on the 'B:' drive, then issue the
following commands:
1. B:
2. CD \
3. PKUZIP CGTABV21.ZIP
DOS version installation:
To install the Registered version COMP-G-TAB software on the hard disk from a
floppy, issue the following commands:
1. Change to floppy drive (e.g. type 'B:')
2. Type INSTALL (S) (D) where S is the source drive, and D is the
destination drive (e.g. INSTALL B: C:)
3. Read instructions in that appear, and the README.TXT.
Windows 16/32 bit version installation:
The installation of COMP-G-TAB for Windows is relatively simple. First follow
the instructions above to unpack and install the COMP-G-TAB software on the
hard disk. If, for example, the software was installed in C:, then you would
then take the following steps. Start Windows, create a new icon (i.e.,
Windows 3.x do New, Program Item, Browse, and Windows 95 just do New,
Shortcut, Browse on the desktop) by locating the directory
'C:\CGTABV30\CGTABW21.EXE' or 'C:\CGTABV30\CGTABW30.EXE' if you want to use
the 32-bit version. Don't forget to change the working directory to
'C:\CGTABV30' also, so the Help file can be located during COMP-G-TAB
execution.
The following requirements must be satisfied to run the COMP-G-TAB software:
1. IBM-PC 386 compatible or better.
2. Windows 3.1, Windows 95, or better. Windows 95 or WIN32 is required to
run the 32-bit version.
3. At least 4 meg of RAM to load and process a good size MIDI file.
4. A MIDI file you wish to transcribe. Some are included as examples.
5. Windows version requires that the 'Courier' font is loaded.
6. Optional: printer and installed soundcard.
The following is the usage for the DOS COMP-G-TAB version:
Usage: COMPGTAB with flags:
-p -w -a -d -f -o -s -l -h -r -v
-n -c <#> -t <#> -g <#>
Where:
-p Suppress tab printing, used with a,d options
-w Wait for RETURN before printing next line of TAB
-a Suggest appropriate '-t' values by analyzing music
-d Turn debug on
-f Force fit notes onto the fret-board
-o Override some errors detected
-s Show special parameters line
-l Show channel line
-h Show chords line
-r Show raw track only, no track header information
-v Show program version information
-n redirect output to
-c <#> Adjust <#> of TAB notes per line
-t <#> Transpose notes by <#> frets
-g <#> Alternate guitar tunings (low to high):
0. E A D G B E (Standard)
1. D A D G B E (Drop D)
2. D G D G B D (Open G)
3. D A D G A D (D Modal)
Dos Version Notes
-----------------
The DOS version of COMP-G-TAB is flexible, and yet easy to use. The general
format of the program is:
CGTABV21 -X -Y -Z EXAMPLE.MID
In this case, EXAMPLE.MID is the MIDI file you wish to analyze, and X/Y/Z are
selectable options for modifying the way COMP-G-TAB does its job.
You can use as many options on the command line (and in any order) as you
want. The 'p' option is useful when you are not interested in the TAB output.
For example, if you are interested in the debug messages (helps to understand
how the file is decoded) or the transpose values, then use this option to
suppress the TAB output. The 'w' option helps if you are trying to play along
with the TAB, and you need to see each line one-at-a-time. The 'a' option
will suggest transpose values that place the range of the MIDI song within the
range of the guitar (or as close as possible). Here is an example of the
output from this option:
Lowest note: A2'.
Highest note: E8'.
Lowest note is low! Suggest option: '-t 10'.
In this case, COMP-G-TAB is suggesting that the song be transposed up ten
frets in order to accommodate the range of the song and the guitar. Both
positive and negative transpose values may be suggested with this option. It
may also occur that transpose values are suggest which can't be used (i.e. the
range of the guitar simply can't handle the range of the song). You may want
to use the suggested transpose to move the lowest notes up, but later use
smaller transpose values which will not ruin the already high ones.
The 'd' option turns the debug output on. This is useful in determining how
COMP-G-TAB interpreted the file. This is mostly useful when reporting
problems to me (my Internet address is provided above). One word of warning
though, the 'd' option produces a huge amount of output. You can redirect
this output to a file by using the DOS redirect '>' symbol. For example, to
trap the debugged output of 'TEST.MID' to 'debug.txt', just type:
CGTABV21 -P -D TEST.MID > DEBUG.TXT'
Then you can just 'TYPE' the file out at a later time. Normally, the TAB is
shown directly on the screen. If you want to redirect the output to a file,
but do not want to do it through DOS (like above), then use the 'n' option.
Using this option, tabulature output is redirected to the named file.
The 'f' option forces the notes to fit onto the TAB. If a note is to low,
then it is moved up by octaves until it will fit on to the TAB line. The
opposite is true when the note is too high (15th fret or above on high
string).
The 'c' option will adjust the number of TAB positions on each line. This is
useful if you are going to print the TAB out at a later time, and your printer
has more (or less) room per line than the current default which COMP-G-TAB
provides.
Sometimes COMP-G-TAB will encounter MIDI data which it cannot interpret. For
now, COMP-G-TAB usually just reports the error, and terminates. Occasionally
it may be useful to for COMP-G-TAB to finish the file (i.e., you may want to
see the TAB generated up until the error). Use the 'o' option to override
some non-fatal errors. If the errors are bad enough, however, the program
WILL terminate. An example of this is when memory is exhausted during a MIDI
load.
An example of the COMP-G-TAB output from the 'TEST.MID' file provided is shown
below:
Filename: test.mid
Type: Single Multi-Channel Track
Tracks: 1
Track 1:
|---0----------------------| |------------------------|
|G--0----------------------| |------------------------|
|T--0----------------------| |----------------------0-|
|A--2----------------------| |-------0--1--2--3--4----|
|B--2--------------0--1--2-| |-3--4-------------------|
|---0--1--2--3--4----------| |------------------------|
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
A C P V W
Em
The output above was produced with the options 'h', 's', and 'l' options. The
'h' option turns on 'chord' detection, which is why the 'Em' is shown. The
's' option turns on the special parameters line which is why there are the
letters, A, C, P, V, and W. Each letter stands for a different special event:
A - After touch. New pressure to old note detected.
C - Control change. Special control parameter detected.
P - Program change. Change instrument patch for channel.
V - Pressure (velocity) for selected channel detected.
W - Pitch Wheel changed (i.e., a string bend).
The 'l' option turns on the channel line. This is why there is a string of
1's under the TAB line. There are 16 channels possible under MIDI. Channels
above 9 are labeled A,B,C,D,E, and F to keep them one character.
There are also many guitar tunings. COMP-G-TAB uses the standard tuning by
default (E,A,D,G,B,E). TAB can be generated in other tunings with the 'g'
option. Three other tunings are currently supported: Drop D, Open G, and D
Modal. If there are requests for others, I will add them.
Finally, the 'w' option allows you to play along with the TAB on the screen,
by pausing and waiting for a RETURN after each line of TAB.
Windows 16 Bit Version Notes
----------------------------
The Windows version of COMP-G-TAB is fairly straightforward. First, a MIDI
file is opened with the 'File, Open Midifile' menu options. After the MIDI
file is read, the number of tracks found are displayed. If this is an
unregistered version of COMP-G-TAB, only the first 7 lines of the first 3
tracks are computed and accessible.
What is first displayed in the Edit area below is the output tabulature for
'All Tracks' (or the first 3 if it is a DEMO version). The Edit window can
only display approximately 50,000 characters, so there may be some truncation
of the output. A warning will appear if this has occurred. Not to worry, you
can view entire individual tracks by using the 'Tracks' pulldown and selecting
the desired track number. The track choices listed under this menu pulldown
actually change each time you read in a new MIDI file to reflect the correct
number of tracks.
Options under the 'Display' and 'Colors' menus let you change the look and
feel of the tabulature window.
You can then modify or print the tabulature. Editing is possible by simply
clicking in the Edit window and adding text. Other standard editing features
such as cut, copy, and paste are available under the 'Edit' menu. To print
the tabulature, first select the 'Print Setup' menu option under 'File' to
make sure the correct printer is selected. Then select the 'Print Track Tab'
or 'Print All Tab' option depending on whether you want to print one track, or
all tracks.
You can play the currently open Midi file by selecting the 'Play Midifile'
option under the 'File' menu. If you want to stop the song while it's
playing, simply select the 'Stop Midifile' option.
If you need to look up a particular chord, then simply select the 'Chords'
menu item. A panel will appear, and you can type in any Major, Minor, or
Seventh chord name. To specify a Sharp chord, use the '#' symbol. To specify
a Flat chord, use the '-' symbol. For example, type 'e-m7', and then click
'Display' to show what a E Flat Minor 7th chord looks like. Each line is
shown top-to-bottom high-to-low string. Open strings are indicated by a 'o'
before the line. Unstrummed strings are indicated by an 'x' before the
string. An 'X' placed on a line indicates which fret on which string should
be played. Chords are only shown for Standard Tuning.
Special output options can be configured under the 'Options' menu. Selections
on the 'Option Panel' will only have an effect the next time a MIDI file is
processed with the 'Open Midifile' option. Your favorite options on the
'Option Panel' can be saved, and then loaded at a later time when you run
COMP-G-TAB again.
The following options are offered on the 'Option Panel':
Show Channel:
Show channels (0-9, A-F) for each note under each TAB line. Channels are used
for many reasons, but they mainly provide a mechanism for assigning notes to
different instruments or keyboards.
Suppress Output:
Suppress the tabulature output. This option is used when you just want to
analyze the MIDI file with other options set.
Debug Output:
Adds Debug output to show how the tabulature was created. Use this option
only if you want reams of DEBUG output!
Force Fit Notes:
Force each note to fall on the tabulature lines even if they are too low or
high. This is accomplished by raising or lowering the notes by octaves when
necessary.
Show Special Parameters:
Setting this option will produce a separate line under each tabulature line
explaining where special note parameters events should be performed. The
parameters are currently as follows:
W - Pitch bend. Similar to a string bend.
A - Aftertouch. Change in volume for a single note that was previously
sounded.
C - Control Change. Special situations. Example, piano pedal.
P - Program Change. Changes the patch for a channel. Example, new instrument
on a synthesizer.
V - Velocity Change. Changes the volume (key pressure) of all notes on a
particular channel.
Suggest Transpose Values:
After processing the MIDI file, output suggestions are shown for transpose
values which would put the notes onto the tabulature lines. Warning, this
option may produce conflicting results. For example, the suggestions may be
to have a positive AND negative transpose value. This happens when the notes
in the song are diverse and contain some that are higher than the 15th fret on
the high string, and lower than notes on the lowest string. In this case, the
'Force Fit Notes' option is suggested.
Override Errors:
Use this option to ignore some of the errors in an unrecognizable or flawed
MIDI file.
Show Chords:
On a separate line, show where note patterns in the tabulature form chords,
and indicate their names. Also, at the end of the tabulature output, a picture
of each chord will be shown to denote those chords which were found while
processing the MIDI file. Note: these chords may vary from their counterparts
in the TAB, and are usually 'OPEN' chords (chords with at least one 'OPEN'
string, usually located in the first few frets). Chords positions are shown as
x's on lines. The top line corresponds to the High string. The bottom line
corresponds to the Low string. If a line does not have an 'x' on it, but does
have an 'x' on the left side of a string, then this string should NOT be
played. If there is an 'o' on the left of a string, then the string should be
played "OPEN". These chords will only be valid if you are in 'Standard
Tunning' - see 'Option Panel' for more details.
Tab Values/Line:
This numeric value indicates the maximum TAB notes per line. It is currently
set to 26, but it can be set anywhere from 1 to 26.
Transpose Steps:
This numeric value indicates the number of frets (half steps) which each note
should be moved up or down. Use this option to raise or lower a song's notes
onto the guitar fretboard.
Tunings:
There are currently five guitar tuning options. The default tuning is
'Standard Tuning', but some songs are easier to play with other tunings. If
I've missed a tuning that you would like COMP-G-TAB to use, simply select the
'Custom' toggle and put the fret deltas from the Standard tuning that you
would like. The standard tuning is E, B, G, D, A, E from high to low. If you
would like to lower the low E to a D, as in DROP-D tuning, simply enter the
sequence 0, 0, 0, 0, 0, -2.
Windows 32 Bit Version Notes
----------------------------
The 32 bit version of COMP-G-TAB is now the only growing component to the MIDI
conversion suite. It is modeled after the 16 bit version, but the tabulature
is represented here as graphical, not textual. For example, the "Copy" option
under the "Edit" menu copies the selected track into the Windows Cut buffer as
a graphic bitmap. This image can then be pasted into a paint program.
There are other differences, but most of the differences currently reside in
the updated visual Windows components used, and not the functionality offered
by the application. Improvements in this area are next to follow.
Improvements can be seen in three areas. The tabulature window is now
supports graphics in addition to text. The notes are place and grouped
within the measure where they are to be played.
The options panel has been completely overhauled, and has additional printing
and mode options. The music media player also has been redone, and supports
scrolling tabulature along with the music. Even the Chord utility has
been updated.
COMP-G-TAB Output
-----------------
The Tabulature output is NOT automatically COPYRIGHTED by the author of COMP-
G-TAB. If the source MIDI file is not Public Domain, however, then the author
of the original MIDI file probably has rights to the tabulature output also.
If other packages are included on the distribution diskette (in a DIST
directory), then they are unmodified software distributed WITHOUT cost (cost
is only for the Registration of my software) to the user. They are
distributed according to the agreement enclosed with the software, and can
also be retrieved directly from accessible sources on Internet. The author of
COMP-G-TAB takes NO responsibility for damages due to the use of this software
or data.
Registration
------------
If this version of COMP-G-TAB is an unregistered DEMO version of the product.
It can be uploaded to Bulletin Boards, to Private Services (Prodigy,
CompuServe, AOL, etc..), to various sites on Internet, or even passed to
friends. Registered copies of COMP-G-TAB must not be copied (except for
personal use), modified, or distributed in any way.
You may try COMP-G-TAB for a 30 day trial period. After which time, you must
register the product by mailing in the Registration form, or remove the COMP-
G-TAB software from your systems. The Registration form is included in the
file 'FORM.DOC'. After mailing in your Registration form, you will receive the
full version of COMP-G-TAB on your choice of media.
The current DEMO version will only show the TAB for the first 7 lines of the
first 3 tracks. The cost of Registration for those in the U.S. is
$18.00/copy. This cost covers the disk, shipping charges, and my coding time.
Once you have a Registered copy, you can receive COMP-G-TAB updates at just
5$/request (always Email me first to make sure that a new version of this
software is available). For orders of more than 4 copies, the cost is only
$14.00/copy. For orders outside the U.S., add an additional $5.00 for shipping
and handling. Orders outside the U.S. must be made with either a U.S. Money
Order, or a check drawn against a U.S. bank. Sorry, the cost for collection
on foreign notes are usually more than the checks themselves! Refer to the
file 'FORM.DOC' for more details. Don't forget to check for the status of new
releases (by the Email or Snail Mail to the respective addresses shown above)
BEFORE you send away for them.
Todo List
---------
1. Advanced TAB editing.
2. Offer multiple note and chord position possibilities.
3. Precise BEND notation. Example, 1/2, 1, 1&1/2 steps, etc...
4. Ability to recognize more chord variations.
5. More advanced MIDI playing options.
![]() |
The space for these WWW pages has been provided by Turner Consulting Group (tcg@us.net). |