Creation of the FMenus cfg file if not existing on the calc

This commit is contained in:
Nemh 2015-02-04 00:11:10 +01:00
parent be202295c4
commit 6cb1541ce6
4 changed files with 26 additions and 12 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -546,29 +546,30 @@ int Console_GetKey()
int Console_FMenu(int key)
{
unsigned char *entries[MAX_MENU_ITEMS] = {NULL};
if(key == KEY_CTRL_F1) {
/*entries[0] = (unsigned char *)Console_Make_Entry((const unsigned char *)"sqrt(");
//unsigned char *entries[MAX_MENU_ITEMS] = {NULL};
return Console_Draw_FMenu(key, &FMenu_entries[key-KEY_CTRL_F1]);
/*/if(key == KEY_CTRL_F1) {
entries[0] = (unsigned char *)Console_Make_Entry((const unsigned char *)"sqrt(");
entries[1] = (unsigned char *)Console_Make_Entry((const unsigned char *)"cos(");
entries[2] = (unsigned char *)Console_Make_Entry((const unsigned char *)"root(");
return Console_Draw_FMenu(key, entries);*/
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[0]);
//return Console_Draw_FMenu(key, entries);
return Console_Draw_FMenu(key, &FMenu_entries[0]);
}
if(key == KEY_CTRL_F2) {
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[1]);
return Console_Draw_FMenu(key, &FMenu_entries[1]);
}
if(key == KEY_CTRL_F3) {
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[2]);
return Console_Draw_FMenu(key, &FMenu_entries[2]);
}
if(key == KEY_CTRL_F4) {
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[3]);
return Console_Draw_FMenu(key, &FMenu_entries[3]);
}
if(key == KEY_CTRL_F5) {
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[4]);
return Console_Draw_FMenu(key, &FMenu_entries[4]);
}
if(key == KEY_CTRL_F6) {
return Console_Draw_FMenu(key, /*entries*/&FMenu_entries[5]);
}
return Console_Draw_FMenu(key, &FMenu_entries[5]);
}*/
return 0;
}
@ -669,13 +670,26 @@ int Console_Init()
void Console_FMenu_Init()
{
//ToDo : handle when there's no file ...
int i, number=0, key;
int i, number=0, key, handle;
//unsigned char debug[40] = {'\0'};
unsigned char* tmp_realloc = NULL;
unsigned char temp[20] = {'\0'};
unsigned char* original_cfg;
unsigned char* cfg = memory_load("\\\\fls0\\FMENU.cfg");
// Does the file exists ?
// Todo : check the error codes...
if(!cfg) {
unsigned char conf_standard[] = {"F2\ncos(\nsin(\ntan(\nF1\ntest(\ntest(\nF4\nje(\nsuis(\nvivant(\nF5\nabdibol(\ngeorges(\ngali(\npom(\npom(\nde(\natol(\nF6\nreturn(\nsolve(\nF3solve(\nfactor(\nsimplify(\nmatrix(\nd("};
memory_createfile("\\\\fls0\\FMENU.cfg", strlen(conf_standard)+1);
handle = memory_openfile("\\\\fls0\\FMENU.cfg", _OPENMODE_READWRITE);
memory_writefile(handle, conf_standard, strlen(conf_standard)+1);
memory_closefile(handle);
cfg = memory_load("\\\\fls0\\FMENU.cfg");
}
original_cfg = cfg;
while(*cfg) {