
unsigned char *smt1 ="1.rotor rpm";	//example statements to be displayed 
unsigned char *smt2 ="2.generator rpm";
unsigned char *smt3 ="3.running g1";
unsigned char *smt4 = "4.gear oil motor on;
unsigned char *smt5 = "5.hydrulic pressure high";
unsigned char *smt6 = "6.manual yaw clockwise";
unsigned char *smt7 = "7.manual yaw counterclockwise";
unsigned char *smt8 = "8.auto yaw clockwise";
unsigned char *smt9 = "9.auto yaw counter clockwise";
unsigned char *smt10 = "10.start";
unsigned char *smt11 = "11.stop";
unsigned char *smt12 = "12.reset";
unsigned char *smt13 = "13.hyd pump error";
unsigned char *smt14 = "14.brake error";
unsigned char *smt15 = "15.brake solenoid";
unsigned char *smt16 = "16.running g2";

int screen=1;	//screen=1à menu screen
		//screen=0à number screen

void program(void)
{
	lcd_writecommand(SET_RAM_0);
	lcd_clrscr();
	screen=0;		//To enter digit password

	password_status=enterpassword(menu2.password);

	if(password_status)	//true, for correct password
	{
	screen=1;		//menu screen
	lcd_clrscr();
	lcd_gotoxy(0,0);

		lcd(smt1);		//first eight statments
		lcd_putc('\n');		
		lcd(smt2);
		lcd_putc('\n');		//’/n’ - calling the newline() function
		lcd(smt3);
		lcd_putc('\n');
		lcd(smt4);
		lcd_putc('\n');
		lcd(smt5);
		lcd_putc('\n');
		lcd(smt6);
		lcd_putc('\n');
		lcd(smt7);
		lcd_putc('\n');
		lcd(smt8);

		lcd(smt9);		//second eight statements
		lcd_putc('\n');
		lcd(smt10);
		lcd_putc('\n');
		lcd(smt11);
		lcd_putc('\n');
		lcd(smt12);
		lcd_putc('\n');
		lcd(smt13);
		lcd_putc('\n');
		lcd(smt14);
		lcd_putc('\n');
		lcd(smt15);
		lcd_putc('\n');
		lcd(smt16);

	}

void func_key(char Newkey,int screen)
{
	char key;
	key=Newkey;		//’Newkey’ is the detected key

	if(screen==0)	//number keys			
	{
		switch(key)
		{
		case 0:lcd_putc(0x30);		//'0'
			break;
		case 1:lcd_putc(0x31);		//'1'
			 break;
		case 2:lcd_putc(0x32);		//'2'
			 break;
		case 3:lcd_putc(0x33);		//'3'
			 break;
		case 4:lcd_putc(0x34);		//'4'
			 break;
		case 5:lcd_putc(0x35);		//'5'
			 break;
		case 6:lcd_putc(0x36);		//'6'
			 break;
		case 7:lcd_putc(0x37);		//'7'
			break;
		case 8:lcd_putc(0x38);		//'8'
			break;
		case 9:lcd_putc(0x39);		//'9'
			break;
		case 10:up_key();		//'up'
			break;
		case 11:right_key();		//'->'
			break;
		case 12:down_key();		//'down'
			break;
		case 13:left_key();		//'<-'
			break;
		}
    }
	else					//menu function keys	
	{
		switch(key)
		{
		case 2:	program();
			break;
		case 10:lcd_scroll_up();	//scroll up
			break;
		case 12:lcd_scroll_down();	//scroll down
			break;
		case 14:menu();			//'Menu'
			 break;
		case 15:enter();		//'enter'
			 break;	
		}
	}
}

void lcd_scroll_down(void)
{
	SetStartLine(line_num+8);
	return;
}

void lcd_scroll_up(void)
{
	SetStartLine(line_num-8);
	return;
}

void SetStartLine(unsigned char line)	//Display start line setting function
{
	lcd_writecommand(SET_RAM_0 | (line & 63));
	return;
}
