Guitar II DenzoSoft
Introduction
This software in designed for everyone who
knows some basics of guitar and wants to know further more. This
in not an archive of chords and scale but it is a guitar engine
for searching freatboard positions.
It basically doesnt know anything about
guitar, but with some parameters it can find all for you. So all
you have to learn is the way by which you can program it to do
what you want.
This software is build not only for guitar, but
also for bass, mandolin, banjo etc: each one is defined only by
its own tunig just defined in the software.
This Sw is composed basically by 2 main
windows: the first is a generic musical analyzer the second is
guitar oriented.
All the functions are accessible by menu and
are structured in the better way i can.
The sw save automatically all the operation and
result in 2 journal file (guitar.dat and guitar.tab respectively
in general format and in tablature format) that can be used for
recollectinf information and exercise (both are text files).
From the main features:
- Learnig more than 100 scales, and 70
chords
- Possibility of autodefinig other ones
- More than 15 tuning for a lot of string
instruments (up to 14 strings)
- Possibility of autodefinig other ones
- Armonizing every scales with every pattern
(per thirds, fourths etc or with masks like every sixth
chord or other)
- Finding all scales associated with one
chord
- Finding all rivolti: for
example Cmaj,Em5#,Gsus4/6
- Finding all similar chord, or resolution
chord respect any scales
- Estending a chord over a scale
- Finding all chord in a scale (more generic
than armonizing)
- Finding all subscales of one scale: all
pentatonic for example in C MAGGIORE
- Playing scales and chords with MIDI sounds
- Allow tuning your instruments according
with the selected tuning
- See on the freatboard all notes selected
- Calculating chords defining freat on a
virtual freatboard.
- You can export all chord in chordPlay
format
- All extension for MUS (my own music
format) managing
- All of this mapped on a piano keyboard
for pianists
For guitrists
- You can reconsult all the result you find
in tab format in the journal
- You can analyze upon a freatboard all
selected object: you can see chords defining a lot of
parameters, idem for scales and arpeggios.
- Upon these you can create your own
exercize using a very interesting exercize builder
- You can link 2 chords according with chord
voicing (sw find the better positions)
- You can analyze all interesting position
of a sequence of note: sw allow you to define some
parameters for finding the position you prefer for
playing any chords and any melody. Then you can exercize
yourself with this playing with computer.
- You can describe chord by its note and sw
find better position on the freatboard
- You can see all in very good graphic
format and print it (scales and chords).
- You can define your own archives for
scales and chords and save them.
Please tell me if this is not enaught!
You can find me at desanctis@praxis.it
Here you'll find the 2.0 version, but in a few
weeks i hope to finish 3.0 with a better interface and new
functions if you help me with other ideas and algorithm.
If you want complete version please contact me!
I don't want money, only ideas.
Technical notes:
This program runs over win 3.x, (also tested upon win95 and
winNT).
You must use VBRUN300.DLL for use this software
Installation:
You have only to unzip the file with -d option in any directory
you want, you'll see a subdirectory containing 2 files .ADS (2
archives).
1. The main window
The application starts with this window: it
basically presents a lot of generical musical algorithm and the
possibility of their definition.
The mask is so divided (from left to right):
- A white box that is the
ElencoArmonico where i usually save some
results like armonizing chords or other.
- Below you can find 2 other box in which
are usually saved the npte in the scale/chord selected
- Below again is an informative box in which
i save in another form the results of operations.
- The green/cyan boxs are the lists of all
defined scales/chords (if you select Accordi in the menu
youll see the chord one)(I usally call this Objects).
A single click on a item makes visible the note composing
that object in the box just described. A double click
fills then blue box below that describe the properties of
the object on which makes operations (selected object).
- The violet box contains the guitar tuning
(octave/note) and you can change it by clickin with left
or right mouse).
- On its right you can see the tonic list (
the selected note is assumed to be the tonic of the
selected object).
- FinallY in the right corner you can find
the instruments combo for midi output.
The most complex part of this window is the
description of its menu structure:
File:
- here you can find item for saving all
user-defined data like scale/chord/tuning
- you can makes a temporary copy of journal
(guitar.dat, guitar.tab)
- You can load Mus (not activated)
- You can export all chord in chordplay
format (another very interesting freeware application)
Edit:
You have here the function for modify
chord/scale lists:
- Aggiungi=add the item specified in the
blue box at the list carret position
- Togli=delete the selected list element
- Modifica: modify the selected list element
with what is in the blue box
The objects are memorized with string that
describe the name (15 chars ??) and the intervalls:
Cmaj is composed by C E G or by 0 (Tonic), 4 (4
semitones over the precedent note -> E), 3 (same as before G).
So C D E F G A B is 0 2 2 1 2 2 2
In this way you describe scale indipendently by
tonic. (Simple?)
The other menu regards the management on
Elenco armonico the big with box on the left:
- You can save new chors or list described
in ElencoArmonico in the chord/scale list (the one that
is showed in that moment and automatically generate new
chords).
- You can memorize in the clipboard all
selct chords in scale/chord list for other use
- Idem for elementsin
ElencoArmonico
- You can clear all item in elenco armonico
- Delete selected item in ElencoArmonico
- Delete duplicate items in ElencoArmonico
- Sorting items in ElencoArmonico
- Put in Elenco armonico all object in
clipboard
NB A part of this menu is visible after a right
click on ElencoArmonico
Now well see the very intesting things:
Varie:
In this menu you can reach a lot of musical
function for elaborating the Object
- PerSuonare allows you to play the selected
Object like a Chord or Scale and to define all sound
parameters like duration or length of notes, semitones
traslations etc.
- PerArmonizzare is used for performing
armonization of scales:
- You can define the number of note, then
intervalls among them or a mack for non classic
armonizations like in sixth, or other: for example if i
want to know all chord 6/9 from C MAGGIORE Ill
define a mask like 356 in which i consider the tonic for
default, the third, fifth and sixth (C 6;D m6;E m6b;F 6;G
6;A m6b;B m5b6b).
- The default is 357246 that means select 3rd
5th 7th 9th 11th
13th. Remember that the number of really
selected notes depends by the number of notes to
armonize.
- Finally you can select a chord and use it
like a paradigm for generatin a mask.
- The item Armonizzazione starts the
armonizing algorthm that write results in ElencoArmonico.
NB the object that is armonized is the one in
the 2 blue box. Remember!!!!
So you can see that all operations can be made
indifferently upon chords than scales.
UtilitiesArmoniche helps you in another
kind of elaborations:
You can convert the object rappresentation
between the three used formats:
- Number (presented before) 043
- Chord name C M
- Notes C E G
Respectively.
- Then you can calculate the
rivolti (i dont know english word): so
selecting C M I obtain C ;E m5#;G no5 sus4/6;
- You can resolve Chord respect one scale: G
7 resolvs on C in CMAGGIORE, but resolvs on D#m4 or C#
4/6 on F# scale.
- You can calculate chord with one different
note for (chord voicing): C#m5b;G sus5b/6;G sus6;G
sus5#/6;G#sus5#/maj7;A sus7;A#sus5b/6;E m5b;B sus5#/4;E
m;C sus4;F susadd9;C sus4#;F#sus5b/add9b;C sus;C sus6b;C
sus6;C sus7;C susmaj7;B sus5#/add9b;C sus;C sus;C
susadd9b;C#sus5b/maj7;G sus5b/4;C susadd9;G sus4;C m;G
sus5#/4;C aug;E aug;G#aug;E sus5#/4;A m;E
sus5b/6b;A#sus5b/add9;E sus6b;E sus5#;E sus5#/6;E
sus5#/7;E sus5#/maj7;E sus5#;E sus5#;E sus5#/add9b;F
susmaj7;C 5b;E sus5#/add9;F#sus5b/7
- You can calculate the associated scales
with CM:
- A BLUES I 02121112
- A BLUES II 0212113
- A Diminuita(T-sT)01212121
- A Dorico 0212221
- A Dorico_2b 0122221
- A dorico-major 02111221
- A dorico-major 02111221
- A Eolio 0212212
- A Etiope I 0212212
- A Frigio 0122212
- A frigio-minor 012223
- A Javanese 0122221
- A Lidio_min 0213121
- A min_NATURALE 0212212
- A MINORE 0212212
- A PENT blues 032113
- A Pent m7/4 03223
- A PENTATONICA m 03223
- A phrigio-major 01211212
- A Spagnola II 0212212
- A Unghe-gypsy 0213112
- A ungherese M 0312121
These are only a very small part of effective
result.
- You can calculate the subscales: for
example Em pentatonic E G A B D is a subscale of C
MAGGIORE. For this you define: how many notes for your
subscale, then minimum and maximum intervall between 2
notes of your subscale and then select
CercaSottoscale. Youll find this:
- A m5#/7/4 03232
- A m7/4 03223
- A sus11 02323
- A sus11/5# 02332
- B m5#/7/4 03232
- B ø6b 03322
- C add9/6 02232
- C susadd9/4/6 02322
- D m4/6 03222
- D m7/4 03223
- D sus11 02323
- D susadd9/4/6 02322
- E m5#/7/4 03232
- E m7/4 03223
- F 5b/add9/6 02223
- F add9/6 02232
- G 9 02233
- G add9/6 02232
- G sus11 02323
- G susadd9/4/6 02322
From C MAGGIORE.
- Riconoscimento scala allows you to
recognize a 7 note scale: C D E F G# A# B is Ionico 5# 6#
- GradiDellaScale tells you what degrees are
in the scale: for example C D E F G# A# B = T 2 3 4 5# 7
7#
- AccordiNellaScala find all sequences of
notes that can be interpreted like chord (with third or
fifth) using the selected scale notes.
- EstensioneAccordoSuScala allows you to
find all the extensions of one chord respect a scale: for
example starting from C M on C MAGGIORE:
- A m7 0343
- B sus5#/add9b/4 0143
- C 043
- C 4 0412
- C 6 0432
- C add9 0223
- C maj7 0434
- D no5 sus11 0235
- E m5# 035
- E m5#/4 0323
- E m5#/7 0352
- E m5#/add9b 0125
- E m6b 0341
- F susmaj7/9 0254
- G no5 4/6 0414
- G no5 sus4/6 054
- G no5 sus7/4/6 0541
- G no5 susadd9/4/60234
- G sus4/6 0522
All chord include its rivolti
FinestraDiAnalisi:
This item actives the guitar analysis window
upon the selected object
The last 2 menu show the chords or the scales
list.
NB Keep attention to the use of double click on
the ElencoArmonico because replace the contents of the 2 blue
box.
2. The guitar analyzer
As we have seen previuosly you can applicate a
lot of functions to all Objects defined obtaining other Objects.
The selected or active object is usually one that is stored in
the 2 blue box.
Now you may want to make another kind of
elaborations on this object, for example you may want to see how
you can paly it on guitar.
Again you have to keep clear that chords and
scales are only a practical division of Objects so you can select
C maj7/9 and want to see how to play it as a chord or as an
aorpeggio: the only difference is the value of some parameters
you have to defined for descibe to engine how to map the note on
the freat board. This point is really important because you'll
see a lot of parameters but only one command button to start the
elaborations.
This window is activated by the
FinestraDiAnalisi menu (the first item sets the blue box
parameters as actual analysis parameters, the second mantains
previuos ones)
On the left side you can see a button and 2
text box: the upper one tells you the state of elaboration and
the number of found positions; the lower one tells you the
formula of the analyzing Object (the tonic is visible in the
menubar as other information).
The button Comincia starts elaboration.
On the right side you can see a multiline text
box in which you'll find results of elaborations. If you
right-click it you'll see the archive windows.
All results are stored in journals, in the text
box and in temporary archive: this is usable to see positions
found, to save them or to visualize them graphically. In any
moment there are 2 active archive: the temporary one in which you
can find the last results and the saved one in which you can put
all things you don't want to loose. For all archive there are a
lot of managing functions.
DefParametri: this menu allows you to
define all elaboration parameters
- NumeroNote: how many note for each string
- NumeroTasti: how many freat for each
position
- TastoInizio: the beginnig freat for
analysis (used only for scales)
- InTutteLeTonalità: the elaboration must
be repeat for every 12 tonic
Accordi: allows the definition of Chord
Parameters
NB chords are caraterized by NumeroNote=1!!!!!
- ValoriDefault: set default values for
chord analysis (NumNote=1,NumTasti=4,...)
- Estratti: tells that you want positions in
Which not all strings must be played
- TastiEstrazione: tells how many freats
define the 'Estratti' window (is used for implementing
estratti, but here i don't want to loose time describing
it, left default!)
- Spezzati: tells that you want chords with
non contiguous playing strings like C M [x 3 2 x 1 3] the
x on G string make chord broken (Spezzato).
- Plettrabili: this tells that you want only
strumming chords in which all broken string can be
stopped with some finger: for example C M [x 3 2 x 1 3]
is ok because the x on G string is stoppable with finger
on D string, but C M [x 3 2 0 x 3] is not ok because
there isn't any finger on G string. This parameter is
important to find Funky or other picking chords.
- Aperti: tells that you want open also
chord like E m [0 7 9 0 0 0], Ok for New Age or arpeggied
chords.
- Rivolti: allows you to see also all
positions in wich tonic isn't the lowest note like C/G [3
3 2 0 1 0]
- Dita: tells that you want to filter
position that will be played with only four finger: now i
manage only the case by which only index can makes barre
(if you can suggest me other algorithm please tell me)
- NumMinCordeDaPremere: minimun number of
string to press
- NumMaxCordeDaPremere: greatest number of
string to press
- NumMaxCordeCosec: greatest number of
string to press concecutively
NB This 3 parameters allows you to filter how
string must be selected: for example i want only the position
(used in some jazz finger styles) in which a chord is build only
in 4 consecutive strings like C maj7/9 [x 3 2 4 3 x]. I'm still
looking for an intelligent way of definig chord like
bass-note+3-consecutive-highest-notes: now this could be only
partially achieved with NumMinCordeDaPremere=NumMinCordeDaPremere
and NumMaxCordeConsec=3 that find also position like 3bass+1high,
then you have to filter by yourself.
- EscludiAutomaicamenteLaV: allows you to
filter chord notes, for example you know that in a C 7
the fifth (G) could be omitted (idem in each its
extension)
- Maschera: allows you to specify your own
mask like EscludiAutomaicamenteLaV: each selected degree
will be (if necessary) excluded, rememeber to check
MascheraAttiva for activate this management, if it's not
checked the engine ignores the selected degrees.
Scale: Now we can start with scales
the first 3 item allows you to sets default
settings for finding 3-notes-for-string-scales,
2-notes-for-string-scales or pentatonic, and
various-notes-for-string-scales. Fondamentally you have 2 search
algorithm: 1 looks in a range of position and try to put here all
notes, the second maps a specified number of notes on each
string.
SuTuttaLaTastiera: search all positions of
scales along the freat board (Modes). If this is not checked
you'll find only the position starting from TastoInizio described
before.
- TastoMassimo: set the last position for
SuTuttaLaTastiera search
- CtrlNote: this forces the engine to work
with second type algorithm
- TutteLeNote: forces the engine to work put
all scale notes (this can modify the frame limit)
- Ripetizioni: forces engine to accept
repeated notes (useful for tapping for example)
- AccordiSuScale: this show the
archive-selected-chord upon the scale position for
learnid scale respect chord position
- Indietro: forces engine to go back in
start position of n freat for each string: useful to find
scales like this:
C Cromatica
00 01 02 03 04 05 06 07 08 09 10 11 12
|--|4 |5b|5
|--|--|--|2 |3m|3
|--|--|--|--|7#|T |2b
|--|--|--|--|--|--|5#|6 |7
|--|--|--|--|--|--|--|--|4 |5b|5
|--|--|--|--|--|--|--|--|--|--|2 |3m|3
(Indietro=2)
NB you'll find this also forcing TutteLeNote.
But in the text box you'll see a bad rapresentation (graphical
one in still correct).
- ImportaListaAccordi: this item forces
engine to find the postion of all clipboard-memorized
Object (for example you can memorize Object from
ElencoArmonico) so you can find all position for a very
large number of scales/chords with the same settings. You
can also use InTutteLeTonalità and find all chords in
all position with all tonic directly in your archive (it
takes time!).
- PulisciListaAccordiTrovati: this force
engine to clear before every elaboration the temporary
archive.
- CreaEsercizi: is a very interesting
algorithm to generate exercise upon the last find
position in tab format.
- CaratteristicheRappresentazione: allows
you to define the aspect of text for position generated.
Funzioni: usefull function
Now i've defined only a function for linking
armonically 2 chords: this finds the better position of one chord
if it cames after another given position chord. You can select
chords directly form archive and obtain tab and/or chord
diagrams. (interesting for chord voicing!)
GestioneMus: I don't want to spend to
much time on this because it will take many lines to explain its
function. Fondamentally this allows to find all better position
in which a given music (a MUS file) could be played on the freat
board. This is very useful, if you're interested i'll send you a
more detailed description. Obviously there are many parameters to
set according you guitarist capabilities.
Grafici: this menu activetes the
managing of graphical rapresentation of archive contenets for
graphical printing or simple analysis.
Disegna...: show graphics
CaratteristicheGrafica: allows you to define
graphic parameters.
TuttoSchermo: in a maximized window
NumeroAccordiPerPagina: number of position for
each page (if the number of your objects is less than this you'll
see them graeter so that page seems full)
Then you can define what kind of informations
you want: Freat Numbers, Note Names, little circles or scale
degree.
Finally...
Archivi: allows you the archive
management
NB Remember that you'll see archives after a
right click on the main text box
As action you can:
- ModificaElemento: Modify the selected
element in the archive
- MostraArchivio: Show the saved archive
- MostraArchivioTemporaneo: Show the
temporary archive
- SounaComeScala: Play selected element like
a scale
- CopiaTuttiNell'archivio: Copy all the
selected items in the saved archive
- MemorizzaMusCorrispondente: Memorize the
equivalent .MUS
CaricaArchivio: allows to load a saved archive
(nb starting the programs load Accordi.ads like defaul saved
archive)
SalvaComeArchivio: allows you to save on HD you
save archive
For now it seems to be suficient.
every question is well accepted.