
var nBuddy = 0;
var stopBugging = false;
realBuffer='' //"<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>";
var printBuffer = "<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>";
//var printBuffer = "<font class=\"lletraverda\">ArtNodes</font>[<font class=\"lletrablava\">console</font>]€>";
var bufferMinSize = 118;


//Detecta navegadors
var isNS4 = (document.layers) ? true : false;
var isIE4 = (document.all && !document.getElementById) ? true : false;
var isIE5 = (document.all && document.getElementById) ? true : false;
var isNS6 = (!document.all && document.getElementById) ? true : false;

function doCursor(){	
	if (isIE5) x=theConsole; 
	if (isNS6) x=document.getElementById("theConsole");
	if (isNS4) x=document.layers[1].document.layers[1];
	
	if (isIE4 || isIE5){	
			if (nBuddy%2 == 0) {														
						x.innerHTML = printBuffer + '&#149';
			}else{					
						x.innerHTML = printBuffer + ' ';		
	  	}
	}else if (isNS6){
			if (nBuddy%2 == 0) {																																																								
						
						// Eliminem el char '' que escriu NS6 al keypress(8)
						if (realBuffer.indexOf('') > -1)  realBuffer = realBuffer.replace('', '') ;						
						x.innerHTML = '<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>' + realBuffer + '<font class=\"lletraverda\">&#149</font>';						
			}else{											
						// Eliminem el char '' que escriu NS6 al keypress(8)
						if (realBuffer.indexOf('') > -1)  realBuffer = realBuffer.replace('', '') ;						
						x.innerHTML = '<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>' + realBuffer + '<font class=\"lletraverda\"> </font>';						
			}	
	}else	if (isNS4){ 		
			if (nBuddy%2 == 0) {				
					var Text_buffer=printBuffer + '<font class=\"lletraverda\">&#149</font>';  //layer theConsole 
					x.document.open();
					x.document.write(Text_buffer);
					x.document.close();		

			}else{								
					var Text_buffer=printBuffer + '<font class=\"lletraverda\"> </font>';  //layer theConsole					
					x.document.open();
					x.document.write(Text_buffer);
					x.document.close();
			}
	}
		nBuddy++;	
		if (!stopBugging) setTimeout('doCursor()', 500);
}


// Per tecles de control (backspace)
	
function controlKey(e) {
	var strCommand;			
if (isNS6) var x=document.getElementById("theThinker");
if (isNS4) var x=document.layers[1].document.layers[2].document.layers[1];														

	if (isIE4 || isIE5) {					
			switch (event.keyCode) {
				case 8:	// Esborrar (backspace)																		
					if ((printBuffer.length - 1) >= bufferMinSize) {
							printBuffer = printBuffer.substring(0,printBuffer.length - 1);
						}												
				
				break;				
				case 13:	// Enter (CR)				
				theThinker.innerHTML = '<img src=\"img/clock_tag.gif\">';				
				strCommand = printBuffer.substring(bufferMinSize, printBuffer.length);
					if (strCommand.length > 0) {
						parseIt(strCommand);
						printBuffer = printBuffer.substring(0, bufferMinSize);
						}				
				break;
			}
		}else if (isNS6) {    
      var keycode = e.which					
			switch (keycode) {				
				case 8:	// Esborrar (backspace)																		
					if ((printBuffer.length - 1) >= bufferMinSize) {
						//printBuffer = printBuffer.substring(0,printBuffer.length - 1);
						printBuffer = "<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>";
						realBuffer = realBuffer.substring(0,realBuffer.length - 1);																																				
						printBuffer = "<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€>" + realBuffer + "</font>";																		
						
						}
				break; //no cal IE captura els 2 events
				case 13:	// Enter (CR)				
	//			x.innerHTML = '<img src="img/clock_tag.gif">';
				strCommand = printBuffer.substring(bufferMinSize, printBuffer.length);
					if (strCommand.length > 0) {
						strCommand=realBuffer;	
						//alert(realBuffer);
						parseIt(strCommand);
						printBuffer = printBuffer.substring(0, bufferMinSize);
						}
				break;				
				default:		// Qualsevol tecla      				
				printBuffer = printBuffer + '<font class=\"lletraverda\">' + String.fromCharCode(e.which) + '</font>';
				//realBuffer=realBuffer + String.fromCharCode(e.which);												
				//alert(String.fromCharCode(e.which));
				//printBuffer = printBuffer  + String.fromCharCode(e.which);
			}		
		}else if (isNS4){
      var keycode = e.which		
			switch (keycode) {
				case 8:	// Esborrar (backspace)																	
					if ((printBuffer.length - 1) >= bufferMinSize) {
						//printBuffer = printBuffer.substring(0,printBuffer.length - 1);
						printBuffer = "<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€></font>";
						realBuffer = realBuffer.substring(0,realBuffer.length - 1);												
						//fer= printBuffer + realBuffer;						
						printBuffer = "<font class=\"lletraverda\">ArtNodes[</font><font class=\"lletrablava\">console</font><font class=\"lletraverda\">]€>"+realBuffer+"</font>";						
					}
				break;
				case 13:	// Enter (CR) 														
				//	x.document.open();
					//x.document.write('<img src=\"img/clock_tag.gif\">');
//					x.document.close();												
					//strCommand = realBuffer.substring(bufferMinSize, realBuffer.length);					
					strCommand=realBuffer;	
						if (strCommand.length > 0) {							
							parseIt(strCommand);											
							printBuffer = printBuffer.substring(0, bufferMinSize);
							realBuffer='';
						}				
				break;
				default:		// Qualsevol tecla      				
				printBuffer = printBuffer + '<font class=\"lletraverda\">' + String.fromCharCode(e.which) + '</font>';				
				realBuffer=realBuffer + String.fromCharCode(e.which);								
				//printBuffer = printBuffer  + String.fromCharCode(e.which);
			}
	}
}




//Per tecles normals
function keyDown(e) {				
	
	if ( isIE4 || isIE5) {
			switch (event.keyCode) {
				case 13:	     // Enter (ignorar)							
				break;
				default:		// Qualsevol tecla
				printBuffer = printBuffer + String.fromCharCode(event.keyCode);								
			} 		
	}else if (isNS6){			
			switch (e.keyCode) {
				case 13:	     // Enter (ignorar)							
				break;
				default:		// Qualsevol tecla								
				x=document.getElementById("theConsole");
				printBuffer = printBuffer + String.fromCharCode(e.keyCode);				
			  realBuffer=realBuffer + String.fromCharCode(e.which)				
				//alert(string.fromCharCode(e.which));	
				//x.innerHTML=printBuffer;
			} 		
	
	}else{             //Ns 4.x
			switch (e.keyCode) {
				case 13:	     // Enter (ignorar)			
				break;
				default:		// Qualsevol tecla      
				printBuffer = printBuffer + '<font class=\"lletraverda\">' + String.fromCharCode(e.which) + '</font>';
				realBuffer=realBuffer + String.fromCharCode(e.which)				
				//printBuffer = printBuffer + String.fromCharCode(e.which);
				}	
	}
}


document.onkeypress = keyDown;
document.onkeydown = controlKey;
		

//document.onkeypress = controlKey;
//document.onkeydown = keyDown;

 











