﻿
//////////////////////////////////////////////////////
// Drum Tabber with Sound in JAVASCRIPT Version 4.01 
// by Jim Cranwell  (cranwell@yahoo.com) 
// This program is Copyright 2008 by Jim Cranwell.
// You may not reprint or redistribute this code.
////////////////////////////////////////////////////

function newin(){
var wingenx=window.open("", "wingenx", "scrollbars=yes,toolbar=no,menubar=no,resizable=yes,top=5,left=5,width=650,height=450"); 
var genx=wingenx.document; 
genx.open("text/html", "replace");

if (titleit.length>0){genx.writeln("<html><head><title>" +titleit+ "</title>");}
else{genx.writeln("<html><head><title>Tab Generator</title>");}
genx.writeln("</head><body bgcolor='#ffffff' onload='self.focus()'>");
genx.writeln("<font size=+1>" +titleit+ "</font><br>");


genx.writeln("<pre>");
for (a=0;a<pr;a++){
genx.writeln(saver[a]) }
genx.writeln("</pre>");

genx.writeln("<hr noshade size=1>");
genx.writeln("| 'Right Click' then 'View Source' to add more lines or save page as .html / .txt");
genx.writeln("| tb vb ds kl enk jz no msg ");
genx.writeln("| <a href=javascript:void('') onClick='window.print()'>Print</a> ");
genx.writeln("| <a href='javascript:close();'>Close</a> |")

genx.writeln("<br>| Page created ")
genx.writeln(" "+Date()+" ");
genx.writeln("using \"Tab Generator\" available at ");
genx.writeln(" <a href='http://www.gootar.com'>http://www.gootar.com</a> ");


genx.writeln("</body></html>");
genx.close();    }//newin

function selectCode(){
		if (document.dym.display.value.length>0){
		document.dym.display.focus(); document.dym.display.select();}
		else alert('Nothing for be selected!')	}

	function SetChecked() {//instucts = document.dym.display.value
		var fn = new Array(14,7,15,10,3,0);
		for (i=0;i<x;i++){document.forms.dym.tune[i].selectedIndex=fn[i];}
			};

//Math.floor((Math.random()*9)+2)

//function SetCheckedbox(val) {document.forms.dym.zeero.selectedIndex=val;} //
		
function tunit(snd){//document.dym.result22.value=snd
var form = document.forms.dym;
 zzz[5] = form.tune[0].selectedIndex ; // str6 += P[form.tune[0].selectedIndex];
 zzz[4] = form.tune[1].selectedIndex ; // str5 += P[form.tune[1].selectedIndex];
 zzz[3] = form.tune[2].selectedIndex ; // str4 += P[form.tune[2].selectedIndex];
 zzz[2] = form.tune[3].selectedIndex ; // str3 += P[form.tune[3].selectedIndex];
 zzz[1] = form.tune[4].selectedIndex ; // str2 += P[form.tune[4].selectedIndex];
 zzz[0] = form.tune[5].selectedIndex ; // str1 += P[form.tune[5].selectedIndex];

//blip(); 	
	 }//

function numberx(z) { if (document.forms.dym.msound.checked ){	playitswf(z) 	}  }//

function number(z,zz) {   strng = Math.floor(z%6); //alert(z)
	
	if (zz > 0){strng = zz; z=zzz[zz]}
	FR = alf.charAt(z);
	
	playitswf(z) ;

	if (document.forms.dym.xxoooo.checked ){ z=50;
	FR=document.forms.dym.spcial[strng].value		
					}//
	
	if(document.forms.dym.zeero.selectedIndex == 6){realtime(z) ; return}
	if(document.forms.dym.zeero.selectedIndex == 5){return}
	
	
	dddddd();
	
	if(strng==5){str6 += FR + ddd;} else {str6 += dddd;}
	if(strng==4){str5 += FR + ddd;} else {str5 += dddd;}
	if(strng==3){str4 += FR + ddd;} else {str4 += dddd;}
	if(strng==2){str3 += FR + ddd;} else {str3 += dddd;}
	if(strng==1){str2 += FR + ddd;} else {str2 += dddd;}
	if(strng==0){str1 += FR + ddd;} else {str1 += dddd;}
	blip();	  }//number

       
	function realtime(z) {yy=0;
	if(strng==5){str6 = str6.substring(yy, str6.length-1) + alf.charAt(z);;}//
 	if(strng==4){str5 = str5.substring(yy, str5.length-1) + alf.charAt(z);;}//
	if(strng==3){str4 = str4.substring(yy, str4.length-1) + alf.charAt(z);;}//
 	if(strng==2){str3 = str3.substring(yy, str3.length-1) + alf.charAt(z);;}//
 	if(strng==1){str2 = str2.substring(yy, str2.length-1) + alf.charAt(z);;}//
 	if(strng==0){str1 = str1.substring(yy, str1.length-1) + alf.charAt(z);;}//
				}//


function dddddd(){
	if(document.forms.dym.zeero.selectedIndex == 0) {ddd="";   dddd=""}
	if(document.forms.dym.zeero.selectedIndex == 1) {ddd="";   dddd="-"}
	if(document.forms.dym.zeero.selectedIndex == 2) {ddd="-";  dddd="--"}
	if(document.forms.dym.zeero.selectedIndex == 3) {ddd="---"; dddd="----"}
	if(document.forms.dym.zeero.selectedIndex == 4) {ddd="-------";dddd="--------"}
		}//

function blip(){ 
document.dym.display.value = (str6 + aa + str5 + aa + str4 + aa + str3 + aa + str2 + aa + str1 + aa + aa);
	}//

var bbbb = 0;  
		
function playitx(){
		cc=0 ; jjj="";
		if (str6.length<3){return false}; yy=1; fixit(); playit(9,0,1)
			
		}//



function playit(xyz,cc,yy){ 

	 sl=str6.length;
	if (sl.length<3){return false}

	m5=-1; m4=-1; m3=-1; m2=-1; m1=-1; m0=-1

	var aa1 = alf.indexOf(str1.charAt(cc+1));
	var aa2 = alf.indexOf(str2.charAt(cc+1));
	var aa3 = alf.indexOf(str3.charAt(cc+1));
	var aa4 = alf.indexOf(str4.charAt(cc+1));
	var aa5 = alf.indexOf(str5.charAt(cc+1));
	var aa6 = alf.indexOf(str6.charAt(cc+1));

 if (aa1 >= 47) {m0=zzz[0]} ;  
 if (aa1 >= 0 && aa1 < 47 ){m0=eval(aa1); }//
 if (m0 !=-1 && m0 < 80){playitswf(m0+fe); }//

 if (aa2 >= 47) {m1=zzz[1]} ;  
 if (aa2 >= 0 && aa2 < 47 ){m1=eval(aa2); }//
 if (m1 !=-1 && m1 < 80){playitswf(m1+fe); }//

 if (aa3 >= 47) {m2=zzz[2]} ;  
 if (aa3 >= 0 && aa3 < 47 ){m2=eval(aa3); }//
 if (m2 !=-1 && m2 < 80){playitswf(m2+fe); }//

 if (aa4 >= 47) {m3=zzz[3]} ;  
 if (aa4 >= 0 && aa4 < 47 ){m3=eval(aa4); }//
 if (m3 !=-1 && m3 < 80){playitswf(m3+fe); }//

 if (aa5 >= 47) {m4=zzz[4]} ;  
 if (aa5 >= 0 && aa5 < 47 ){m4=eval(aa5); }//
 if (m4 !=-1 && m4 < 80){playitswf(m4+fe); }//

 if (aa6 >= 47) {m5=zzz[5]} ;  
 if (aa6 >= 0 && aa6 < 47 ){m5=eval(aa6); }//
 if (m5 !=-1 && m5 < 80){playitswf(m5+fe); }//

	if (bbbb % blipcnt==0){blip();}// 
	
	bbbb++
	
	if (document.forms.dym.ignoreit.checked == 1 && str6.charAt(cc+2)=="|"){yy=2;cccc=2} else {yy=1;cccc=1}//
							
	
	if (xyz){
	str6 = str6.substring(yy, str6.length) + str6.substring(0,cccc);		
 	str5 = str5.substring(yy, str5.length) + str5.substring(0,cccc);
	str4 = str4.substring(yy, str4.length) + str4.substring(0,cccc);
 	str3 = str3.substring(yy, str3.length) + str3.substring(0,cccc);
 	str2 = str2.substring(yy, str2.length) + str2.substring(0,cccc);
 	str1 = str1.substring(yy, str1.length) + str1.substring(0,cccc);

	tiidx = setTimeout("playit(9,0,1)", tm); }//xyz

	if (xyz==724){
	str6 = str6.substring(yy, str6.length) + str6.charAt(cc);		
 	str5 = str5.substring(yy, str5.length) + str5.charAt(cc);
	str4 = str4.substring(yy, str4.length) + str4.charAt(cc);
 	str3 = str3.substring(yy, str3.length) + str3.charAt(cc);
 	str2 = str2.substring(yy, str2.length) + str2.charAt(cc);
 	str1 = str1.substring(yy, str1.length) + str1.charAt(cc);

	tiidx = setTimeout("playit(9,0,1)", tm); }//xyz
		
		}//playit

function playx(){if (tiidx !=null){clearTimeout(tiidx)};if (tiid != null){clearTimeout(tiid)}}//

function insrtx(){ 
if(document.forms.dym.autoload.checked == 1){insrt();}//
				}//
function insrt(){ 
	chip = document.dym.display.value;
	if (chip.indexOf(aa)>0){
		str6 = chip.substring(0,chip.indexOf(aa)-1 );
		       chip = chip.substring(chip.indexOf(aa)+1,chip.length);
		str5 = chip.substring(0,chip.indexOf(aa)-1 );
		       chip = chip.substring(chip.indexOf(aa)+1,chip.length);
		str4 = chip.substring(0,chip.indexOf(aa)-1 );
		       chip = chip.substring(chip.indexOf(aa)+1,chip.length);	
		str3 = chip.substring(0,chip.indexOf(aa)-1 );
		       chip = chip.substring(chip.indexOf(aa)+1,chip.length);
		str2 = chip.substring(0,chip.indexOf(aa)-1 );
		       chip = chip.substring(chip.indexOf(aa)+1,chip.length);
		if (chip.indexOf(aa)>0){
		str1 = chip.substring(0,chip.indexOf(aa)-1 );}
		else{
		str1 = chip.substring(0,chip.length);}
		       //chip = chip.substring(chip.indexOf(aa)+1,chip.length);
		blip();
				}//if
				}//insert
//  **j¤øº°©®¦¡¡·

	var blipcnt = 1;

	function spd(dx) {//tm=dx
		if (dx==401){tm = eval(document.dym.result22.value) ; dx=0}
		if(tm<300){dx=dx/5}
		tm = tm + eval(dx);
		if(tm<10){tm=10}
		document.dym.result22.value = tm;	
		blipcnt = 1;
		if(tm < 140){blipcnt=2}//	
		if(tm < 100){blipcnt=4}//	
		if(tm < 80){blipcnt=8}//	

		}//sdp



function minusit(){
if(str6.length > 0){str6 = str6.substring(0, str6.length - 1 );}
if(str5.length > 0){str5 = str5.substring(0, str5.length - 1 );}
if(str4.length > 0){str4 = str4.substring(0, str4.length - 1 );}
if(str3.length > 0){str3 = str3.substring(0, str3.length - 1 );}
if(str2.length > 0){str2 = str2.substring(0, str2.length - 1 );}
if(str1.length > 0){str1 = str1.substring(0, str1.length - 1 );}				
 blip(); }


function fixitxxx(){sl=str6.length;
slx = "---------------------------------------------------------------------------------------";
if(str5.length > sl){sl = str5.length;}
if(str4.length > sl){sl = str4.length;}
if(str3.length > sl){sl = str3.length;}
if(str2.length > sl){sl = str2.length;}
if(str1.length > sl){sl = str1.length;}
	
str6 += slx.substring(0, sl-str6.length );		
str5 += slx.substring(0, sl-str5.length );
str4 += slx.substring(0, sl-str4.length );
str3 += slx.substring(0, sl-str3.length );
str2 += slx.substring(0, sl-str2.length );
str1 += slx.substring(0, sl-str1.length );
blip();			}//




function fixit(){sl=str6;
slx = "";
if(str5.length > sl.length){sl = str5;}
if(str4.length > sl.length){sl = str4;}
if(str3.length > sl.length){sl = str3;}
if(str2.length > sl.length){sl = str2;}
if(str1.length > sl.length){sl = str1;}

for(b=0;b<(sl.length);b++){						//if (sl.charAt(b) == "|"){alert(slx);}//
if (sl.charAt(b) == "|"){slx += sl.charAt(b);} else {slx += "-";}//

}//
	

str6 += slx.substring(str6.length,sl.length);		
str5 += slx.substring(str5.length,sl.length);
str4 += slx.substring(str4.length,sl.length);
str3 += slx.substring(str3.length,sl.length);
str2 += slx.substring(str2.length,sl.length);
str1 += slx.substring(str1.length,sl.length);
blip();			}//



function dupe(val){
	
str6 += str6.substring(str6.length-val,str6.length );		
str5 += str5.substring(str5.length-val,str5.length );
str4 += str4.substring(str4.length-val,str4.length );
str3 += str3.substring(str3.length-val,str3.length );
str2 += str2.substring(str2.length-val,str2.length );
str1 += str1.substring(str1.length-val,str1.length );
blip();			}//

function adit(val){
if (val=="x"){
val=document.forms.dym.spcial.options[document.forms.dym.spcial.selectedIndex].text;}
 str6 += val; str5 += val; str4 += val; str3 += val; str2 += val; str1 += val;
	blip();	 }//

function tester(){
   document.dym.display.value = str6.charAt(0)

				}//
function newit(){
saver = new Array();
vt = titleit = notes = ""
pr=0;ClearDisplay(); document.dym.result7.value = 'Ø'; }//newit

function ClearDisplay(){                           //zzz =0
	 if(str6.length > 1){str6x = str6;};
	 if(str5.length > 1){str5x = str5;};
	 if(str4.length > 1){str4x = str4;};
	 if(str3.length > 1){str3x = str3;};
	 if(str2.length > 1){str2x = str2;};
	 if(str1.length > 1){str1x = str1;};
	document.dym.display.value = "";
 str6 = " "; str5 = " "; str4 = " "; str3 = " "; str2 = " "; str1 = " ";
 ddd  = " "
			}//


	function xpnd(){insrt();fixit();ClearDisplay();
        str6 = ""; str5 = ""; str4 = ""; str3 = ""; str2 = ""; str1 = "";
	for(b=0;b<(str6x.length);b++){
		str6 += str6x.charAt(b) + "-" ;	
		str5 += str5x.charAt(b) + "-" ;	
		str4 += str4x.charAt(b) + "-" ;	
		str3 += str3x.charAt(b) + "-" ;	
		str2 += str2x.charAt(b) + "-" ;	
		str1 += str1x.charAt(b) + "-" ; }//for
		blip();	}//

	function removeit(){insrt();fixit();ClearDisplay();
        str6 = ""; str5 = ""; str4 = ""; str3 = ""; str2 = ""; str1 = "";
	for(b=0;b<(str6x.length);b++){
		if (str6x.charAt(b) != "|"){str6 += str6x.charAt(b);	}//
		if (str5x.charAt(b) != "|"){str5 += str5x.charAt(b);	}//	
		if (str4x.charAt(b) != "|"){str4 += str4x.charAt(b);	}//	
		if (str3x.charAt(b) != "|"){str3 += str3x.charAt(b);	}//	
		if (str2x.charAt(b) != "|"){str2 += str2x.charAt(b);	}//	
		if (str1x.charAt(b) != "|"){str1 += str1x.charAt(b);	}// 
			}//for
		blip();	}//




function unClear(){
 str6 = str6x; str5 = str5x; str4 = str4x; str3 = str3x; str2 = str2x; str1 = str1x;
	blip();	}//

function savit(){prx=pr; 

saver[pr]=document.dym.display.value ;
pr = pr + 1; 
document.dym.result7.value = pr 
			}//

function loadit(){document.dym.display.value=document.dym.result9.value; }

function saved(val){
	if(val==1){if(saver[prx-1]!=null){prx = prx - 1;}}
	if(val==2){if(saver[prx+1]!=null){prx = prx + 1;}}
 	document.dym.display.value = saver[prx]; document.dym.result7.value = prx+1;}

function instruct(){ document.dym.display.value = instucts}

function titler(){ titleit=window.prompt("name or title?",titleit);}
