C:\WINCE600\PLATFORM\iMX35-3DS-PDK1_7\SRC\BOOTLOADER\EBOOT\menu.c
中, 語法大概是這樣:
BOOL BLrescure_cmd(BLMENU_ITEM *pMenu);
#define MENUrescure { L'A', L"rescure from SD", BLrescure_cmd, 0, 0, 0 }
#define SocMenu MENUrescure, Null_Menu
#define MainMenu { CommonMenu, SocMenu }
// Local Variables
static BLMENU_ITEM g_menu[] = MainMenu;
基本上 g_menu 裡擺的全是 BOOL (BLMENU_ITEM*) 的 function pointer, 而擺進去的 function 就自己在外面另開 .c 去 implement 就可以, 只是要留意一下各家 BSP 對 BLmenu() 的處理手法都不太一樣, 隨著 return 值的不同, 有的還可以跳回選單, 有的就直接跳去開機.
沒有留言:
張貼留言