function initScreen()
{
	setTimeout("window.scrollTo(0,1);",100);
}

function click_zero() {	_appendDigit("0"); }
function click_one() {	_appendDigit("1"); }
function click_two() {	_appendDigit("2"); }
function click_three() {	_appendDigit("3"); }
function click_four() {	_appendDigit("4"); }
function click_five() {	_appendDigit("5"); }
function click_six() {	_appendDigit("6"); }
function click_seven() {	_appendDigit("7"); }
function click_eight() {	_appendDigit("8"); }
function click_nine() {	_appendDigit("9"); }

function click_point() { 
	var DigitsSoFar = document.getElementById("results").innerHTML;
	var ClearDigits = document.getElementById("cleardigitsbit").innerHTML;
	if(document.getElementById("arithfunction").innerHTML != "")
		_appendDigit("0.");
	else if(ClearDigits == "Y")
		_appendDigit("0.");
	else if(DigitsSoFar == "0")
		_appendDigit("0.");
	else if (DigitsSoFar == "0.0")
		return;
	else
		{
		//alert(DigitsSoFar.indexOf(".") == -1);
		if(DigitsSoFar.indexOf(".") == -1)
			{
				//alert(".");
				_appendDigit(".");
			}
	 	}
	 }


function _appendDigit(Digit)
{
	//alert(Digit)
	var DigitsSoFar = document.getElementById("results").innerHTML;
	if(document.getElementById("arithfunction").innerHTML == "")
	{
		var ClearDigits = document.getElementById("cleardigitsbit").innerHTML;
		if(ClearDigits == "Y")
			{
				document.getElementById("results").innerHTML = Digit;
				document.getElementById("cleardigitsbit").innerHTML = "N";
			}
		else if(DigitsSoFar == "0" | DigitsSoFar == "0.0")
			document.getElementById("results").innerHTML = Digit;
		else
			document.getElementById("results").innerHTML = DigitsSoFar + Digit;
	}
	else
	{
		document.getElementById("currentarith").innerHTML = document.getElementById("arithfunction").innerHTML
		document.getElementById("arithfunction").innerHTML = "";
		document.getElementById("results").innerHTML = Digit;
	}
	//alert("Click() " + DigitsSoFar);
	
}

function click_backsp()
{

	var DigitsSoFar = document.getElementById("results").innerHTML;
	
	if(document.getElementById("arithfunction").innerHTML != "")
		document.getElementById("arithfunction").innerHTML = "";
	else if (DigitsSoFar == "0" | DigitsSoFar == "0.0")	
		return;
	else 
	{
		if(DigitsSoFar.length > 1)
			document.getElementById("results").innerHTML = DigitsSoFar.substring(0 ,DigitsSoFar.length-1)
		else
			document.getElementById("results").innerHTML = "0";
	}
}

function click_negate()
{
	var DigitsSoFar = document.getElementById("results").innerHTML;
	if(DigitsSoFar == "0" | DigitsSoFar == "0.0")
		return;
	else
		{
		var MinusSign = DigitsSoFar.indexOf("-");
			if(MinusSign == -1)
				document.getElementById("results").innerHTML = "-" + DigitsSoFar;	
			else
				document.getElementById("results").innerHTML = DigitsSoFar.replace("-","");
		}
}
function StoreCurrentValue()
{
	var DigitsSoFar = document.getElementById("results").innerHTML;
		if(DigitsSoFar == "0" | DigitsSoFar == "0.0")
		return;
	else
		{
			if(document.getElementById("xval").innerHTML == "0")
				{
					//alert(DigitsSoFar);
					document.getElementById("xval").innerHTML = DigitsSoFar;
				}
			/*else
				{
				alert(DigitsSoFar);
				document.getElementById("yval").innerHTML = DigitsSoFar;
				//document.getElementById("xval").innerHTML = DigitsSoFar;
				}
			*/
		}
}

function DoArithmetic(ArithType)
{
//alert(ArithType);

if(document.getElementById("cleardigitsbit").innerHTML == "Y")
{
	document.getElementById("cleardigitsbit").innerHTML = "N";
}

var CurrentArithFunction = document.getElementById("arithfunction").innerHTML;
if(CurrentArithFunction != "")
{
//	if(CurrentArithFunction != " " && ArithType == "equal")
	document.getElementById("xval").innerHTML = "0";
	document.getElementById("yval").innerHTML = "0";
}
		switch(ArithType)
			{
				case "add":
				document.getElementById("arithfunction").innerHTML = "+";
				break;
				
				case "subtract":
				document.getElementById("arithfunction").innerHTML = "-";
				break;
				
				case "multiply":
				document.getElementById("arithfunction").innerHTML = "x";
				break;

				case "divide":
				document.getElementById("arithfunction").innerHTML = "&#247;";
				break;
				
				case "equal":
				document.getElementById("arithfunction").innerHTML = " ";
				break;
				
				case "power":
				document.getElementById("arithfunction").innerHTML = "^";
				break;
				
				
			}
	var DigitsSoFar = document.getElementById("results").innerHTML;
	var ValOfX = document.getElementById("xval").innerHTML;
	var ValOfY = document.getElementById("yval").innerHTML;
	//alert(DigitsSoFar);
	//alert(ValOfX);
	if(ValOfX == "0" | ValOfX == "0.0")
	{
	//	old StoreCurrentValue();
		document.getElementById("xval").innerHTML = DigitsSoFar;
		ValOfX = DigitsSoFar;
	}
	else
		{
		//alert(document.getElementById("currentarith").innerHTML);
		if(ArithType != "equal")
		{
			//if()
			document.getElementById("yval").innerHTML = DigitsSoFar;
			ValOfY = DigitsSoFar;
		}
		else if(document.getElementById("yval").innerHTML == "0")
		{
			document.getElementById("yval").innerHTML = DigitsSoFar;
			ValOfY = DigitsSoFar;
		}
		else
		{
			document.getElementById("cleardigitsbit").innerHTML = "Y";
		}
		//alert (document.getElementById("currentarith").innerHTML);
		//alert(Number(ValOfX) -Number(ValOfY));
		//alert("\xF7");
		switch(document.getElementById("currentarith").innerHTML)
			{
				case "+":
				document.getElementById("results").innerHTML = Number(ValOfX) + Number(ValOfY);
				break;
				
				case "-": //subtract
				//alert("subtract");
				//document.getElementById("arithfunction").innerHTML = "&#8211;";
				document.getElementById("results").innerHTML = Number(ValOfX) - Number(ValOfY);				
				break;
				
				case "x":
				//document.getElementById("arithfunction").innerHTML = "x";
				document.getElementById("results").innerHTML = Number(ValOfX) * Number(ValOfY);				
				break;

				case "\xF7": //divide
				//document.getElementById("arithfunction").innerHTML = "&#247;";
				document.getElementById("results").innerHTML = Number(ValOfX) / Number(ValOfY);				
				break;
				
				case "^":
				document.getElementById("results").innerHTML = Math.pow(Number(ValOfX), Number(ValOfY));				
				break;

				
			}
			//reset for next calculation
		document.getElementById("xval").innerHTML = document.getElementById("results").innerHTML;
		document.getElementById("yval").innerHTML = 0;
		}
}
function click_add() {DoArithmetic("add");}
function click_subtract() {DoArithmetic("subtract"); }
function click_multiply() {DoArithmetic("multiply"); }
function click_divide() {DoArithmetic("divide"); }
function click_equal() {DoArithmetic("equal");}

function click_clear()
{
	document.getElementById("results").innerHTML = "0";
	document.getElementById("yval").innerHTML = "0";
	document.getElementById("xval").innerHTML = "0";
	document.getElementById("arithfunction").innerHTML = "";
	document.getElementById("currentarith").innerHTML = "";
	//document.getElementById("arithfunction").innerHTML = "";
}


function click_memclear()
{
	document.getElementById("memval").innerHTML = "0";
	document.getElementById("memhasvalue").innerHTML = "";
}

function click_memadd()
{
	document.getElementById("memhasvalue").innerHTML = "M";
	document.getElementById("memval").innerHTML = Number(document.getElementById("memval").innerHTML) + Number(document.getElementById("results").innerHTML);
}
function click_memsubtract()
{
	document.getElementById("memhasvalue").innerHTML = "M";
	document.getElementById("memval").innerHTML = Number(document.getElementById("memval").innerHTML) - Number(document.getElementById("results").innerHTML);
}
function click_memrecall()
{
	document.getElementById("results").innerHTML = document.getElementById("memval").innerHTML 
	document.getElementById("cleardigitsbit").innerHTML = "N";
}
function click_Pi()
{
	//document.getElementById("results").innerHTML = Math.PI; //"3.141592653589793";
	document.getElementById("cleardigitsbit").innerHTML = "Y";
	_appendDigit(Math.PI);
}
function click_oneOverX()
{
	document.getElementById("results").innerHTML = 1/Number(document.getElementById("results").innerHTML);
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_squared()
{
	document.getElementById("results").innerHTML = Number(document.getElementById("results").innerHTML) * Number(document.getElementById("results").innerHTML);
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_cubed()
{
	document.getElementById("results").innerHTML = Math.pow(Number(document.getElementById("results").innerHTML), 3)
	// * Number(document.getElementById("results").innerHTML) * Number(document.getElementById("results").innerHTML);
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_squareroot()
{
	document.getElementById("results").innerHTML = Math.sqrt(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_ytothex()
{
	DoArithmetic("power");
}
function click_Ln()
{
	document.getElementById("results").innerHTML = Math.log(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_log()
{
	document.getElementById("results").innerHTML = 	Math.log(Number(document.getElementById("results").innerHTML)) / Math.LN10;
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_etothex()
{
	document.getElementById("results").innerHTML = Math.exp(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_sin()
{
	document.getElementById("results").innerHTML = Math.sin(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_sinh()
{
	var x = Number(document.getElementById("results").innerHTML)
	document.getElementById("results").innerHTML = (Math.exp(x) - Math.exp(-x))/2;
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_asin()
{
	document.getElementById("results").innerHTML = Math.asin(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_cos()
{
	document.getElementById("results").innerHTML = Math.cos(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_cosh()
{
	var x = Number(document.getElementById("results").innerHTML)
	document.getElementById("results").innerHTML = (Math.exp(x) + Math.exp(-x))/2;
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_acos()
{
	document.getElementById("results").innerHTML = Math.acos(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_tan()
{
	document.getElementById("results").innerHTML = Math.tan(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_tanh()
{
	var x = Number(document.getElementById("results").innerHTML)
	document.getElementById("results").innerHTML = (Math.exp(2 * x) - 1) /(Math.exp(2 * x) + 1);
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_atan()
{
	document.getElementById("results").innerHTML = Math.atan(Number(document.getElementById("results").innerHTML));
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
function click_factorial()
{
	var x = Number(document.getElementById("results").innerHTML);
	var y = Number(1);
	
	if(x !=0)
	{
		for (var i = 1; i<=x; i++)
		{
			y = y * i;
		}
		document.getElementById("results").innerHTML = y;
	}
	else
		document.getElementById("results").innerHTML = 1;
	document.getElementById("cleardigitsbit").innerHTML = "Y";
}
