cmd.h

来自「ADS下的bios工程」· C头文件 代码 · 共 95 行

H
95
字号
#ifndef _BIOS_CMD_H
	#define _BIOS_CMD_H

	#include  <bios/types.h> 

	/* Definition for Command Line */ 

	#define MAX_LENGTHOF_COMMANDLINE	256	/*  Maximum value of command line length       */
	#define MAX_LENGTHOF_COMMAND	 	10  /*  Maximum value of command                   */
	#define MAX_NUMOF_COMMAND	 		24	/*  Maximum number of the command.             */  
											/*  it is used by command Table size           */
	#define MAX_NUMOF_ARGS		 		5	/*  Maximum number of the arguments            */
											/*  in command line                            */
	#define MAX_LENGTHOF_ARGS 	 		10	/*  Maximum value of the length of a argument  */

	#define MAX_CURRENT_NUM_ARGS	 	2
	#define MAX_CURRENT_STR_ARGS	 	7

	#define MAX_COMMAND_LIST	 		10	/* Maximum number of commands */
	#define IS_USED 					0x80000000


	typedef struct cmdlist 
	{
		char commandline[MAX_LENGTHOF_COMMANDLINE];
		u32 comlen;
		struct cmdlist *nextcmd;	
		struct cmdlist *prevcmd;	
	} CMDPOOL ;


	typedef struct bioscmd 
	{
		char *cmd_name;
		u32 (*cmd_action)(u8, char (*argv)[MAX_LENGTHOF_ARGS], CMDPOOL *pCmd);  
		u32 cmd_length;
		char *cmd_help;	/* if command "help xxxx " runs, this message will be used.*/  
						/* It must be ended by '\0' */
	} BIOSCMD;



	/****************************************************************************/
	/*                     BIOS SHELL COMMAND FUNCTIONS                         */
	/****************************************************************************/
	extern void         InitCommandPool(CMDPOOL *);
	extern u32          ReadCommand(CMDPOOL *,u32 *);
	extern CMDPOOL      *PutPrompt(CMDPOOL *,u32 *,u32 );

	/* 
	 *  Command Running
	 */
	extern u32          RunCommand(CMDPOOL *) ;

	/*
	 *  ParseCommandLine
	 */
	extern u32 ParseCommandLine(char (*argv)[MAX_LENGTHOF_ARGS], char *commandline) ;

	/*
	 *   Search the command and return the index of the command.
	 */
	extern u32 LookUpCommand(char* cmd) ;

	/*
	 *   Print the command help message
	 */
	extern void PrintHelpMessage(char *cmd) ;


	/****************************************************************************/
	/*                     BIOS DRIVER FUNCTIONS                                */
	/****************************************************************************/

	extern u32 ListOfCmd(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 HelpCmdLi(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 FlashUtils(u8 argc,char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 FlashUtils2(u8 argc,char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 DownLoadCmdLi(u8 argc,char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 DownLoadCmdLi2(u8 argc,char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 BootCmdLi(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 ExitCmdLi(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;
	extern u32 MemDump(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS], CMDPOOL *pCmd);
	extern u32 LCDOUT(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS], CMDPOOL *pCmd);

	#define   NO_OF_HISTORY     50
	extern u32 HistoryCmdLi(u8 argc, char (*argv)[MAX_LENGTHOF_ARGS],CMDPOOL *pCmd) ;

	extern void do_logo(void);
	extern void debug(unsigned char *);
	extern void debug_nand(int, int);
	void LCDPutChar(char);

#endif /* _BIOS_CMD_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?