예제 #1
0
파일: main.c 프로젝트: kcoewoys/project
int main(int argc, const char *argv[])
{
	pid_t pid;

	 CLEAR();
	 HIDE_CURSOR();

	//开启终端读取一个字符的功能
	disable_terminal_return();

	//创建一个线程
	pid = fork();
	PERROR("fork", pid);

	//进入父进程//控制游戏的基本运行
	if (pid > 0)
	{
		//延时1秒,等待子进程就绪
		sleep(1);
		father_process();
	}

	//进入子进程//控制玩家的操作
	if (pid == 0)
	{	
		child_process();
	}

	CLEAR();
	RESET_CURSOR();
	SHOW_CURSOR();

	return 0;
}
/*****************************************************************************
 * Function name: CLI_T_Main
 * Description  : cli main function, get input string and call menu engine.
 * Input  params: None
 * Output params: None
 * Return val   : None
 *****************************************************************************/
void *CLI_T_Main(void* arg)
{
        static char InputBuf[256];

        disable_terminal_return();

        /* Display main menu */
        F_DisplayMenu();

        while (demo_running)
        {
                printf("%s", STR_ENTER_COMMAND);
                InputBuf[0] = '\0';
#ifdef  __linux__
                //loop:
                //fgets(InputBuf, 256, stdin);
                
                get_line(InputBuf);
#else
#ifdef WP_HW_WINPATH3
                flush();
#endif
                gets(InputBuf);
#endif
                printf ("\n");
                F_MenuEngine(InputBuf);
        }

        return arg;
}
int CLI_MAIN_Shell(void)
{
        restore_terminal_settings();
        if (system("sh"))
                puts("invoke shell failed\r\n");
        disable_terminal_return();
        
        return 0;
}