keys = new Array(

// ===== Articles =====
"Style Creation;Style Creation Course - Part 1;articles/style_1.htm",
"Style Part Names,SFF1,SFF2,SInt,Text Marker,Source channel,Destination channel;Style Creation Course - Part 2;articles/style_2.htm",
"System Exclusive Messages,SysEx,GM System on,XG,XG Works On,Channel layout;Style Creation Course - Part 3;articles/style_3.htm",
"Generic Styles,Song Styles,Chord notes,Scale notes;Style Creation Course - Part 4;articles/style_4.htm",
"Drum channel;Style Creation Course - Part 5;articles/style_5.htm",
"Bass channel;Style Creation Course - Part 6;articles/style_6.htm",
"Guitar channel;Style Creation Course - Part 7;articles/style_7.htm",
"Brass channel;Style Creation Course - Part 8;articles/style_8.htm",
"Strings channel;Style Creation Course - Part 9;articles/style_9.htm",
"CASM,OTS,MDB,CASM Section,STY file,PST file,PCS file,SST file,PRS file,BCS file,FPS file,Format 0;Style Creation Course - Part 10;articles/style_10.htm",
"Chord Type Accompaniment,Long Fill In parts,Half Bar Fill/Break parts,Different Tempo in parts;Style Creation Course - Part 11;articles/style_11.htm",
"Trouble Shooting,Style Errors;Style Creation Course - Part 12;articles/style_12.htm",
"CASM,Format 1;Style Creation Course - Part 13;articles/style_13.htm",

"Style,MIDI,Format 0,Sequencer;Article: Style MIDI Section Format;articles/style2_1.htm",
"Style,CASM,Ctab,Redirection schema,Chord Root,Chord Type,Note Transposition Rule,NTR,Note Transposition Table,NTT,High Key,Note Low Limit,Note High Limit,Retrigger Rule,RTR,Bass On,Auto Start,Active Keys,Active Chords;Article: Style CASM Section Format;articles/style2_2.htm",
"Style,OTS,One Touch Settings,Harmony,Multi Pad,MIDI,System Exclusive,SysEx,MSB,LSB,NRPN,RPN,DSP,Effects;Article: Style OTS Section Format;articles/style2_3.htm",
"Style,MDB,Music Data Base,Genre,Keyword;Article: Style MDB Section Format;articles/style2_4.htm",
"Style,Style Features,Style Formats,CASM Format,SFF1,SFF2;Article: Style File Features;articles/style2_5.htm",
"Break,Variation,3 Fingers,4 Fingers,Accompaniment Mute,Drum Solo,Bass and Drum only;Article: Breaks and Variations;articles/style2_10.htm",
"Multi Pad,MIDI;Article: Multi Pads;articles/style2_11.htm",
"Style,Break,Part,Time Signature,Tempo,MIDI;Article: Style parts with different Time Signatures;articles/style2_9.htm",
"MIDI,Style,Voices,GM Voice,XG,Program Change,MSB,LSB,Panel Voice,Mega Voice,Super Articulation Voice,Drums,Sound Effects,Voice Number,Plink Noise,MIDI Mega Voice Cleaner,MIDI Revoicer,Style Old Format Converter,Style Revoicer,Voice Finder;Article: MIDI and Style Voices;articles/style2_8.htm",
"MIDI,Style,MIDI to Style,Music Minus One,CMaj7;Article: MIDI to Style Conversion;articles/style2_7.htm",
"Style,MIDI,Style rearrange,Style Remixer,Style Split and Splice,Style part,Sequencer,Text Marker;Article: Style Part Rearranging;articles/style2_6.htm",
"Style Download,Style Save,File extension,Explorer,Windows Explorer;Article: Downloading Styles to Disc;articles/style2_12.htm",
"Style Repair,MIDI Repair;Article: MIDI and Style File Repair;articles/style2_13.htm",

"MIDI Reference,MIDI;Article: MIDI Reference;articles/midi_1.htm",
"MIDI;Article: MIDI - The basic concept;articles/midi_2.htm",
"MIDI,MIDI channels,MIDI messages,Running Status;Article: MIDI - The structure;articles/midi_3.htm",
"MIDI,Note On,Note Off,Program Change,Control Change,System Messages;Article: MIDI - Messages;articles/midi_4.htm",
"MIDI,MIDI Files,Chunk,MThd,MTrk,MIDI Events,MIDI Format;Article: MIDI - Files;articles/midi_5.htm",
"MIDI,Voices,GM Voice,General MIDI;Article: General MIDI Voice List;articles/midi_6.htm",
"MIDI,Voices,GM Voice,General MIDI,Percussion;Article: General MIDI Percussion Key Map;articles/midi_7.htm",
"MIDI,Voices,GM Voice,General MIDI,Note Range;Article: General MIDI Voices - Natural Range;articles/midi_8.htm",
"MIDI,MIDI Controllers,MSB,LSB;Article: MIDI - Controller List;articles/midi_9.htm",
"MIDI,MIDI Messages,Channel Messages,System Messages,Realtime Messages,Meta Messages;Article: MIDI - Message List;articles/midi_10.htm",
"MIDI,Hex,Hexadecimal values;Article: MIDI - Hex Numbers;articles/midi_11.htm",

"Explorer,Windows Explorer,.Net,Java,JAR File,EXE File;Article: Running Software from Explorer;articles/software_1.htm",
"Sound,USB,To Host,COM,Java programs,Drivers,Ports,Windows,CBX,Computer;Article: Sound through the keyboard/computer;articles/software_2.htm",
"CBX,Driver,Windows 2000,Sound;Article: CBX Serial Driver Issue;articles/software_3.htm",
"Software,.Net,Problems,Framework;Article: Technical problems - .Net programs;articles/software_4.htm",
"Software,Java,Problems,Classpath,JRE,Windows,Linux,Apple,Mac;Article: Technical problems - Java programs;articles/software_5.htm",
".Net Framework;Links: Required Software;articles/software_6.htm#net",
"Java,JRE,Java Runtime;Links: Required Software;articles/software_6.htm#jre",
"Acrobat Reader,PDF file;Links: Required Software;articles/software_6.htm#ar",
"WinZip,WinRAR,ZIP file,RAR file;Links: Required Software;articles/software_6.htm#zip",
"Compatibility,Software Compatibility;Article: Software Compatibility;articles/software_7.htm",

// ===== Software =====
"Software,Download,Installation,Java,JRE,.Net,Framework,Windows Explorer,JAR File,PSR,Tyros,CVP,DGX,YPG;Links: My Software;software/software.htm",
//"Software,Creative Style Maker,CASM,Style,Editor,Ctab,Web Application;Software: Creative Style Maker;software/csm/index.htm",
"Software,CASM Editor,CASM,Style,Editor,Ctab;Software: CASM Editor;software/casmedit/index.htm",
"Software,Image To PDF,BMP,GIF,JPG/JPEG,PNG,TIF/TIFF,WMF,Image,PDF;Software: Image To PDF;software/imagetopdf/index.htm",
"Software,Lyrics Finder,Lyrics,Karaoke,Text,MIDI;Software: Lyrics Finder;software/lfind/index.htm",
"Software,MDB Editor,Style,Music Data Base,Editor;Software: MDB Editor;software/mdbedit/index.htm",
"Software,Midi2Style,MIDI,Style,Converter,Manual;Software: Midi2Style;software/midi2style/index.htm",
"Software,Midi2Style,Conversion,Samples,Styles;Software: Midi2Style - Sample Conversions;software/midi2style/m2s_sam1.htm",
"Software,Midi2Style,Musical Problems;Software: Midi2Style - Musical Problems;software/midi2style/m2s_mus_prob.htm",
"Software,MIDI and Style File Checker,MIDI,Style,MIDI Specification;Software: MIDI and Style File Checker;software/midicheck/index.htm",
"Software,MIDI and Style Player,MIDI,Style,Player;Software: MIDI and Style Player;software/mandsplay/index.htm",
"Software,MIDI Formatter,MIDI,Format 0;Software: MIDI Formatter;software/midiformat/index.htm",
"Software,MIDI Mega Voice Cleaner,MIDI,Mega Voice;Software: MIDI Mega Voice Cleaner;software/nomegainmidi/index.htm",
"Software,MIDI Note Event Cleaner,MIDI;Software: MIDI Note Event Cleaner;software/nec/index.htm",
"Software,MIDI Revoicer,Revoice,Transpose,Tempo,MIDI,Editor;Software: MIDI Revoicer;software/revmidi/index.htm",
"Software,Music Finder File Manager;Software: Music Finder File Manager;software/mffm/index.htm",
"Software,Music Book Viewer,PDF,Sheet Music;Software: Music Book Viewer;software/pdfviewer/index.htm",
"Software,OTS Editor,Style,Editor,Harmony,Multi Pad,DSP;Software: OTS Editor;software/otseditor/index.htm",
"Software,OTS Viewer,Voices,Multi Pad;Software: OTS Viewer;software/otsviewer/index.htm",
"Software,OTS Volume;Software: OTS Volume Changer;software/otsvolume/index.htm",
"Software,Software Program Manager,Software versions,Shell,Version;Software: Software Program Manager;software/manager/index.htm",
"Software,Style Duplicates Manager,Duplicates,Style;Software: Style Duplicates Manager;software/sdm/index.htm",
"Software,Style File Renamer,Style,Renamer;Software: Style File Renamer;software/rensty/index.htm",
"Software,Style Fixer,Style,Repair;Software: Style Fixer;software/sfix/index.htm",
"Software,Style Fixer,Style,Repair,EMC;Software: Style Fixer Test Report;software/sfix/stylefixertest.htm",
"Software,Style Format 2 Converter,Style,Conversion,Converter,SFF2;Software: Style Format 2 Converter;software/sf2c/index.htm",
"Software,Style Format Finder,Style,Format,SSF1,SFF2;Software: Style Format Finder;software/sff/index.htm",
"Software,Style Half Bar Fill Creator,Style,Half Bar,Break;Software: Style Half Bar Fill Creator;software/filledit/index.htm",
"Software,Style Old Format Converter,Style,Conversion,Converter,Mega Voice,SFF1;Software: Style Old Format Converter;software/sofc/index.htm",
"Software,Style ReMixer,Style,Editor;Software: Style ReMixer;software/sremix/index.htm",
"Software,Style Revoicer,Style,Revoice,Editor;Software: Style Revoicer;software/revsty/index.htm",
"Software,Style Split and Splice,MIDI,Sequencer,Split,Splice;Software: Style Split and Splice;software/sands/index.htm",
"Software,Style Tempo Editor,Style,Tempo,Editor;Software: Style Tempo Editor;software/stytempo/index.htm",
"Software,Style Time and Tempo in Name,Renamer;Software: Style Time and Tempo in Name;software/ttinname/index.htm",
"Software,Style Time Editor,Style,Time Signature,Editor;Software: Style Time Editor;software/stytime/index.htm",
"Software,Style Unlocker,Edit byte,Style Creator;Software: Style Unlocker;software/stun/index.htm",
"Software,Style Volume Changer,Volume change,Velocity change;Software: Style Volume Changer;software/volchange/index.htm",
"Software,Text Formatter,Chords,Lyrics,Text screen;Software: Text Formatter;software/textformat/index.htm",
"Software,Voice Finder,Voice;Software: Voice Finder;software/xgvoice/index.htm",

// ===== Main Pages =====
"Welcome,News,Home,Site News,This Site;The Unofficial YAMAHA Keyboard Resource Site;index.htm",
"Discussion,Forums,Forum,Fora,Group,SynthZone,Yahoo Groups,PSR Tutorial,Yamaha Personal Keyboard Owner,PSR,Tyros,CVP,DGX,YPG,XG Works;Links: Discussion Fora;fora.htm",
"Resources,FAQ,Knowledgebase,Instructions,Files,Samples,Technical Stuff;Links: Resources;resource.htm",
"Articles,PDF files;My Articles;articles.htm",
"Style,Style Files,SFF Files,Free Styles,Download,Web Sites;Links: Styles;stylesites.htm",
"Software,Jørgen Sørensen,Michael Bedesem,Heiko Plate,Style Editors,Style Players,Registration Editors,Music Finder Editors,Display Editors,Icon Editors,Database Programs,Yamaha Software,XF Tool,Firmware,Updates,CBX,USB,To Host;Links: Software 1;software.htm",
"Software,Jørgen Sørensen,Michael Bedesem,Heiko Plate,MIDI Editors,Text Editors,XG Editors,SysEx Editors,System Exclusive Editors,Utility Programs,Utility Files;Links: Software 2;more_software.htm",
"Software,INS files;Links: Instrument Definition Files;ins_files.htm",
"Yamaha Links,Yamaha,Manuals,Knowledgebase,History,PK Club,Glossary,Demos,MP3,Video;Links: Yamaha;yamaha.htm",
"Casio,GEM,Korg,Roland,Ketron,Solton,Technics,Wersi,Kurzweil,Lionstracs,Mediastation;Links: Other Keyboard Brands;keyboard.htm",
"Danish Music,Denmark;Links: Danish Music;danish.htm",
"Music,Music Resources,Music Theory,Music Tutorials,Music Books,Music Production,Performing,Music Hardware,Articles;Links: Music;music.htm",
"MIDI,MIDI Link Sites,MIDI Search,Midi Database software,MIDI Files,Karaoke;Links: MIDI Files;music_3.htm",
"MIDI,MIDI Sites,MIDI Files;Links: MIDI Sites;midisites_1.htm",
"Music,Software (non Yamaha),Software Search,Software Books,Software Articles,Sequencer SW,Scanning SW,Notation SW,Printing SW,Lyrics SW,Composing SW,Learning and practising SW;Links: Music Software 1;music_2.htm",
"Music,Software (non Yamaha),Utility SW,Audio SW,Drum SW,Band In A Box,Accompaniment Software;Links: Music Software 2;music_4.htm",
"News,Press Releases,Shareware Music Machine,Harmony Central,Google News,KVR Audio,24-7 Press Release;Links: Music News;yam_news.htm",
"Programming,.Net,Java,Visual Basic,VB.Net,C#,C++;Links: Music Programming;programming.htm",
"Documents,Specifications,MIDI,SysEx,System Exclusive Message,XG,XF,MIDI,MIDI Reference,MIDI Specification;Documents and Specifications;docs_specs.htm",
"Song Making,Chords,Composing,Copyright,Rhythm,Rhyming,Patterns,Drums,Loops,Songwriting,Music Paper;Links: Songwriting - Chords - Patterns;songmaking.htm",
"Lyrics,Sheets,Tabs,Fakebooks,Lyric Search,Song Search,Free music;Links: Lyrics - Fakebooks - Sheets - Tabs;music_1.htm",

"Mail;Mail;brev.htm",
"About,This Site,CASM Haze Manager,History,Jørgen Sørensen;About this Site;about.htm",
"What's Up,About Me,My Projects,User Feedback;What's Up ?;whats_up.htm",
"Newsletter,Newsletter Subscription;Newsletter Subscription;nyhedsbrev.htm",

"Jørgen Sørensen,Style,Download;My Styles;styles/styles.htm",
"Support,Donor,Donation,Donate,PayPal,Stamps;Support;support.htm",
"PSR 740,Articles;PSR 740 Corner;740corner.htm"
);



function draw()
{
// tæl antal keywords
var keywords = 0;
for (h=0; h < keys.length; h++)
{
	first=keys[h].split(";");
	second=first[0].split(",");
	keywords += second.length;
}

// lav page header
document.write("<table width='100%'><tr>");
document.write("<td class='light'><h1>Index</h1></td>");
document.write("<td class='light' align='right'>" + keywords + " keywords listed<br><span class='dark'><a href='javascript:window.close();'>Close Window</a></span></td>");
document.write("</tr></table>");

document.write("<table width='100%'><tr><td class='dark'>");
document.write("<table cellspacing='0' cellpadding='0'><tr><td class='dark'>");
document.write("<a href='#a'>A</a> <a href='#b'>B</a> <a href='#c'>C</a> <a href='#d'>D</a> <a href='#e'>E</a> <a href='#f'>F</a> <a href='#g'>G</a> <a href='#h'>H</a> ");
document.write("<a href='#i'>I</a> <a href='#j'>J</a> <a href='#k'>K</a> <a href='#l'>L</a> <a href='#m'>M</a> <a href='#n'>N</a> <a href='#o'>O</a> <a href='#p'>P</a> ");
document.write("<!--<a href='#q'>Q</a>--> <a href='#r'>R</a> <a href='#s'>S</a> <a href='#t'>T</a> <a href='#u'>U</a> <a href='#v'>V</a> <a href='#w'>W</a> <a href='#x'>X</a> ");
document.write("<a href='#y'>Y</a> <a href='#z'>Z</a>");
document.write("</td><td class='dark' align='right' width='15%'>");
document.write("</td></tr></table>");
document.write("</td></tr></table>");

// opret array til alle linier
// fyld indhold i
lines = new Array(keywords);
taller = 0; 
for (i=0; i < keys.length; i++)
{
	first=keys[i].split(";");
	second=first[0].split(",");
	for (j=0; j < second.length; j++)
	{
		lines[taller]=second[j] + "," + first[1] + "," + first[2];				
		taller = taller + 1;	
	}
}

// sortér linie-array
lines.sort();

// dan tabel for visning af linier
document.write("<p><table width='100%'>");
document.write("<tr><td class=dark><b>What</b></td><td class='dark'><b>Where</b></td></tr>");
for (k=0; k < lines.length; k++)
{
	third=lines[k].split(",");
	document.write("<tr><td>" + third[0] + "</td><td><a href=" + third[2] + " target=kilde>" + third[1] + "</a></td></tr>");
	// ========== indsæt vandret delestreg hvis nyt begyndelsesbogstav  - dog kun hvis der skiftes til et bogstav ============
	if (k < lines.length - 1)
	{ 
		if ( lines[k].charAt(lines[k].indexOf(";") + 1).toLowerCase() != lines[k+1].charAt(lines[k+1].indexOf(";") + 1).toLowerCase() && isNaN(lines[k+1].charAt(lines[k+1].indexOf(";") + 1))  ) 
		{
			document.write("<tr><td class='dark' colspan='2'><table width='100%' cellspacing='0' cellpadding='0'><tr><td class='dark' width='33%'><a name=" + lines[k+1].charAt(lines[k+1].indexOf(";") + 1).toLowerCase() + "></a><b>" + lines[k+1].charAt(lines[k+1].indexOf(";") + 1).toUpperCase() + "</b></td><td class='dark' width='33%' align='center'>&nbsp;<a href='#top'><b>Up to the Top</b></a>&nbsp;</td><td class='dark' align='right'><a href='javascript:window.close();'>Close Window</a></td></tr></table></td></tr>");
		}
	}
}

// bundtekst
document.write("<tr><td colspan='2'><hr></td></tr>");
document.write("<tr><td colspan='2' class='light'></td></tr>");
document.write("<tr><td  colspan='2' class='dark' align='center'><b>The Unofficial YAMAHA Keyboard Resource Site</b></td></tr>");
document.write("</table>");


}

