Tweaks in ST and Minimig menus.
This commit is contained in:
578
menu.cpp
578
menu.cpp
@@ -416,6 +416,7 @@ void substrcpy(char *d, char *s, char idx)
|
||||
}
|
||||
|
||||
#define STD_EXIT " exit"
|
||||
#define STD_BACK " back"
|
||||
#define STD_SPACE_EXIT " SPACE to exit"
|
||||
#define STD_COMBO_EXIT " Ctrl+ESC to exit"
|
||||
|
||||
@@ -1819,7 +1820,7 @@ void HandleUI(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
MenuWrite(entry, " back", menusub == selentry, 0, 0);
|
||||
MenuWrite(entry, STD_BACK, menusub == selentry, 0, 0);
|
||||
}
|
||||
menusub_last = selentry;
|
||||
menumask = (menumask << 1) | 1;
|
||||
@@ -3745,7 +3746,7 @@ void HandleUI(void)
|
||||
break;
|
||||
|
||||
case MENU_ST_SYSTEM1:
|
||||
menumask = 0x7fff;
|
||||
menumask = 0xffff;
|
||||
OsdSetTitle("Config", 0);
|
||||
helptext_idx = 0;
|
||||
m = 0;
|
||||
@@ -3815,7 +3816,7 @@ void HandleUI(void)
|
||||
OsdWrite(m++, s, menusub == 14);
|
||||
|
||||
for (; m < OsdGetSize() - 1; m++) OsdWrite(m);
|
||||
OsdWrite(15, STD_EXIT, menusub == 15);
|
||||
OsdWrite(15, STD_BACK, menusub == 15);
|
||||
|
||||
parentstate = menustate;
|
||||
menustate = MENU_ST_SYSTEM2;
|
||||
@@ -4039,7 +4040,7 @@ void HandleUI(void)
|
||||
}
|
||||
|
||||
for (; m < OsdGetSize() - 1; m++) OsdWrite(m);
|
||||
OsdWrite(15, STD_EXIT, menusub == 9, 0);
|
||||
OsdWrite(15, STD_BACK, menusub == 9, 0);
|
||||
|
||||
menustate = MENU_ST_LOAD_CONFIG2;
|
||||
break;
|
||||
@@ -4089,7 +4090,7 @@ void HandleUI(void)
|
||||
}
|
||||
|
||||
for (; m < OsdGetSize() - 1; m++) OsdWrite(m);
|
||||
OsdWrite(15, STD_EXIT, menusub == 9, 0);
|
||||
OsdWrite(15, STD_BACK, menusub == 9, 0);
|
||||
|
||||
menustate = MENU_ST_SAVE_CONFIG2;
|
||||
break;
|
||||
@@ -4220,7 +4221,7 @@ void HandleUI(void)
|
||||
OsdWrite(m++, " Reset Hanging Notes", menusub == 5);
|
||||
|
||||
while (m < 15) OsdWrite(m++);
|
||||
OsdWrite(15, STD_EXIT, menusub == 6, 0);
|
||||
OsdWrite(15, STD_BACK, menusub == 6, 0);
|
||||
|
||||
menustate = MENU_MT32PI_MAIN2;
|
||||
}
|
||||
@@ -4228,7 +4229,7 @@ void HandleUI(void)
|
||||
|
||||
|
||||
case MENU_MT32PI_MAIN2:
|
||||
if (menu || back || left)
|
||||
if (menu || back || left || (select && menusub == 6))
|
||||
{
|
||||
if (is_minimig())
|
||||
{
|
||||
@@ -4296,10 +4297,6 @@ void HandleUI(void)
|
||||
menustate = MENU_MT32PI_MAIN1;
|
||||
}
|
||||
break;
|
||||
|
||||
case 6:
|
||||
if (select) menustate = MENU_NONE1;
|
||||
break;
|
||||
}
|
||||
|
||||
if (is_minimig()) minimig_set_extcfg(mt32_cfg);
|
||||
@@ -4311,277 +4308,6 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
/******************************************************************/
|
||||
/* minimig main menu */
|
||||
/******************************************************************/
|
||||
case MENU_MINIMIG_MAIN1:
|
||||
menumask = 0x3DF0; // b01110000 Floppy turbo, Harddisk options & Exit.
|
||||
OsdSetTitle("Minimig", OSD_ARROW_RIGHT | OSD_ARROW_LEFT);
|
||||
helptext_idx = HELPTEXT_MAIN;
|
||||
|
||||
// floppy drive info
|
||||
// We display a line for each drive that's active
|
||||
// in the config file, but grey out any that the FPGA doesn't think are active.
|
||||
// We also print a help text in place of the last drive if it's inactive.
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
if (i == minimig_config.floppy.drives + 1) OsdWrite(i, " KP +/- to add/remove drives", 0, 1);
|
||||
else
|
||||
{
|
||||
strcpy(s, " dfx: ");
|
||||
s[3] = i + '0';
|
||||
if (i <= drives)
|
||||
{
|
||||
menumask |= (1 << i); // Make enabled drives selectable
|
||||
|
||||
if (df[i].status & DSK_INSERTED) // floppy disk is inserted
|
||||
{
|
||||
char *p;
|
||||
if ((p = strrchr(df[i].name, '/')))
|
||||
{
|
||||
p++;
|
||||
}
|
||||
else
|
||||
{
|
||||
p = df[i].name;
|
||||
}
|
||||
|
||||
int len = strlen(p);
|
||||
if (len > 22) len = 21;
|
||||
strncpy(&s[6], p, len);
|
||||
s[6 + len] = ' ';
|
||||
s[6 + len + 1] = 0;
|
||||
s[6 + len + 2] = 0;
|
||||
if (!(df[i].status & DSK_WRITABLE)) s[6 + len + 1] = '\x17'; // padlock icon for write-protected disks
|
||||
}
|
||||
else // no floppy disk
|
||||
{
|
||||
strcat(s, "* no disk *");
|
||||
}
|
||||
}
|
||||
else if (i <= minimig_config.floppy.drives)
|
||||
{
|
||||
strcat(s, "* active after reset *");
|
||||
}
|
||||
else
|
||||
strcpy(s, "");
|
||||
OsdWrite(i, s, menusub == (uint32_t)i, (i>drives) || (i>minimig_config.floppy.drives));
|
||||
}
|
||||
}
|
||||
|
||||
m = 4;
|
||||
sprintf(s, " Floppy disk turbo : %s", minimig_config.floppy.speed ? "on" : "off");
|
||||
OsdWrite(m++, s, menusub == 4, 0);
|
||||
OsdWrite(m++);
|
||||
OsdWrite(m++, " Hard disks \x16", menusub == 5, 0);
|
||||
OsdWrite(m++, " CPU & Chipset \x16", menusub == 6, 0);
|
||||
OsdWrite(m++, " Memory \x16", menusub == 7, 0);
|
||||
OsdWrite(m++, " Audio & Video \x16", menusub == 8, 0);
|
||||
//if (spi_uio_cmd16(UIO_GET_OSDMASK, 0) & 1)
|
||||
{
|
||||
menumask |= 0x200;
|
||||
OsdWrite(m++, " MT32-pi \x16", menusub == 9);
|
||||
}
|
||||
|
||||
OsdWrite(m++);
|
||||
OsdWrite(m++, " Save configuration \x16", menusub == 10, 0);
|
||||
OsdWrite(m++, " Load configuration \x16", menusub == 11, 0);
|
||||
|
||||
while (m < 14) OsdWrite(m++);
|
||||
OsdWrite(m++, " Reset", menusub == 12, 0);
|
||||
OsdWrite(15, STD_EXIT, menusub == 13, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_MAIN2;
|
||||
parentstate = MENU_MINIMIG_MAIN1;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_MAIN2:
|
||||
if (menu) menustate = MENU_NONE1;
|
||||
else if (plus && (minimig_config.floppy.drives<3) && menusub < 4)
|
||||
{
|
||||
minimig_config.floppy.drives++;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (minus && (minimig_config.floppy.drives>0) && menusub < 4)
|
||||
{
|
||||
minimig_config.floppy.drives--;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (select || recent || minus || plus)
|
||||
{
|
||||
if (menusub < 4)
|
||||
{
|
||||
ioctl_index = 0;
|
||||
if (df[menusub].status & DSK_INSERTED) // eject selected floppy
|
||||
{
|
||||
df[menusub].status = 0;
|
||||
FileClose(&df[menusub].file);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else
|
||||
{
|
||||
df[menusub].status = 0;
|
||||
fs_Options = SCANO_DIR;
|
||||
fs_MenuSelect = MENU_MINIMIG_ADFFILE_SELECTED;
|
||||
fs_MenuCancel = MENU_MINIMIG_MAIN1;
|
||||
strcpy(fs_pFileExt, "ADF");
|
||||
if(select) SelectFile(Selected_F[menusub], "ADF", fs_Options, fs_MenuSelect, fs_MenuCancel);
|
||||
else if (recent_init(0)) menustate = MENU_RECENT1;
|
||||
}
|
||||
}
|
||||
else if (menusub == 4 && !recent) // Toggle floppy turbo
|
||||
{
|
||||
minimig_config.floppy.speed ^= 1;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (select)
|
||||
{
|
||||
if (menusub == 5) // Go to harddrives page.
|
||||
{
|
||||
menustate = MENU_MINIMIG_HARDFILE1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 6)
|
||||
{
|
||||
menustate = MENU_MINIMIG_CHIPSET1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 7)
|
||||
{
|
||||
menustate = MENU_MINIMIG_MEMORY1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 8)
|
||||
{
|
||||
menustate = MENU_MINIMIG_VIDEO1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 9)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MT32PI_MAIN1;
|
||||
}
|
||||
else if (menusub == 10)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MINIMIG_SAVECONFIG1;
|
||||
}
|
||||
else if (menusub == 11)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MINIMIG_LOADCONFIG1;
|
||||
}
|
||||
else if (menusub == 12)
|
||||
{
|
||||
menustate = MENU_NONE1;
|
||||
minimig_reset();
|
||||
}
|
||||
else if (menusub == 13)
|
||||
{
|
||||
menustate = MENU_NONE1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (c == KEY_BACKSPACE) // eject all floppies
|
||||
{
|
||||
for (int i = 0; i <= drives; i++) df[i].status = 0;
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (right)
|
||||
{
|
||||
menustate = MENU_COMMON1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (left)
|
||||
{
|
||||
menustate = MENU_MISC1;
|
||||
menusub = 3;
|
||||
}
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_ADFFILE_SELECTED:
|
||||
memcpy(Selected_F[menusub], selPath, sizeof(Selected_F[menusub]));
|
||||
recent_update(SelectedDir, selPath, SelectedLabel, 0);
|
||||
InsertFloppy(&df[menusub], selPath);
|
||||
if (menusub < drives) menusub++;
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_LOADCONFIG1:
|
||||
helptext_idx = 0;
|
||||
if (parentstate != menustate) menumask = 0x400;
|
||||
|
||||
parentstate = menustate;
|
||||
OsdSetTitle("Load config", 0);
|
||||
|
||||
m = 0;
|
||||
OsdWrite(m++, "", 0, 0);
|
||||
OsdWrite(m++, " Startup config:");
|
||||
for (uint i = 0; i < 10; i++)
|
||||
{
|
||||
const char *info = minimig_get_cfg_info(i, menusub != i);
|
||||
static char name[128];
|
||||
|
||||
if (info)
|
||||
{
|
||||
menumask |= 1 << i;
|
||||
sprintf(name, " %s", strlen(info) ? info : "NO INFO");
|
||||
char *p = strchr(name, '\n');
|
||||
if (p) *p = 0;
|
||||
OsdWrite(m++, name, menusub == i);
|
||||
|
||||
if (menusub == i && p)
|
||||
{
|
||||
sprintf(name, " %s", strchr(info, '\n') + 1);
|
||||
OsdWrite(m++, name, 1, !(menumask & (1 << i)));
|
||||
}
|
||||
}
|
||||
|
||||
if (!i)
|
||||
{
|
||||
OsdWrite(m++, "", 0, 0);
|
||||
m = 4;
|
||||
OsdWrite(m++, " Other configs:");
|
||||
}
|
||||
}
|
||||
|
||||
while(m < OsdGetSize() - 1) OsdWrite(m++);
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 10, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_LOADCONFIG2;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_LOADCONFIG2:
|
||||
if (down)
|
||||
{
|
||||
if (menusub < 9) menusub++;
|
||||
menustate = MENU_MINIMIG_LOADCONFIG1;
|
||||
}
|
||||
else if (select)
|
||||
{
|
||||
if (menusub<10)
|
||||
{
|
||||
OsdDisable();
|
||||
minimig_cfg_load(menusub);
|
||||
menustate = MENU_NONE1;
|
||||
}
|
||||
else
|
||||
{
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
menusub = 11;
|
||||
}
|
||||
}
|
||||
if (menu || left) // exit menu
|
||||
{
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
menusub = 11;
|
||||
}
|
||||
break;
|
||||
|
||||
/******************************************************************/
|
||||
/* file selection menu */
|
||||
/******************************************************************/
|
||||
@@ -4981,6 +4707,276 @@ void HandleUI(void)
|
||||
}
|
||||
break;
|
||||
|
||||
/******************************************************************/
|
||||
/* minimig main menu */
|
||||
/******************************************************************/
|
||||
case MENU_MINIMIG_MAIN1:
|
||||
menumask = 0x3DF0; // b01110000 Floppy turbo, Harddisk options & Exit.
|
||||
OsdSetTitle("Minimig", OSD_ARROW_RIGHT | OSD_ARROW_LEFT);
|
||||
helptext_idx = HELPTEXT_MAIN;
|
||||
|
||||
// floppy drive info
|
||||
// We display a line for each drive that's active
|
||||
// in the config file, but grey out any that the FPGA doesn't think are active.
|
||||
// We also print a help text in place of the last drive if it's inactive.
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
if (i == minimig_config.floppy.drives + 1) OsdWrite(i, " KP +/- to add/remove drives", 0, 1);
|
||||
else
|
||||
{
|
||||
strcpy(s, " dfx: ");
|
||||
s[3] = i + '0';
|
||||
if (i <= drives)
|
||||
{
|
||||
menumask |= (1 << i); // Make enabled drives selectable
|
||||
|
||||
if (df[i].status & DSK_INSERTED) // floppy disk is inserted
|
||||
{
|
||||
char *p;
|
||||
if ((p = strrchr(df[i].name, '/')))
|
||||
{
|
||||
p++;
|
||||
}
|
||||
else
|
||||
{
|
||||
p = df[i].name;
|
||||
}
|
||||
|
||||
int len = strlen(p);
|
||||
if (len > 22) len = 21;
|
||||
strncpy(&s[6], p, len);
|
||||
s[6 + len] = ' ';
|
||||
s[6 + len + 1] = 0;
|
||||
s[6 + len + 2] = 0;
|
||||
if (!(df[i].status & DSK_WRITABLE)) s[6 + len + 1] = '\x17'; // padlock icon for write-protected disks
|
||||
}
|
||||
else // no floppy disk
|
||||
{
|
||||
strcat(s, "* no disk *");
|
||||
}
|
||||
}
|
||||
else if (i <= minimig_config.floppy.drives)
|
||||
{
|
||||
strcat(s, "* active after reset *");
|
||||
}
|
||||
else
|
||||
strcpy(s, "");
|
||||
OsdWrite(i, s, menusub == (uint32_t)i, (i > drives) || (i > minimig_config.floppy.drives));
|
||||
}
|
||||
}
|
||||
|
||||
m = 4;
|
||||
sprintf(s, " Floppy disk turbo : %s", minimig_config.floppy.speed ? "on" : "off");
|
||||
OsdWrite(m++, s, menusub == 4, 0);
|
||||
OsdWrite(m++);
|
||||
OsdWrite(m++, " Hard disks \x16", menusub == 5, 0);
|
||||
OsdWrite(m++, " CPU & Chipset \x16", menusub == 6, 0);
|
||||
OsdWrite(m++, " Memory \x16", menusub == 7, 0);
|
||||
OsdWrite(m++, " Audio & Video \x16", menusub == 8, 0);
|
||||
//if (spi_uio_cmd16(UIO_GET_OSDMASK, 0) & 1)
|
||||
{
|
||||
menumask |= 0x200;
|
||||
OsdWrite(m++, " MT32-pi \x16", menusub == 9);
|
||||
}
|
||||
|
||||
OsdWrite(m++);
|
||||
OsdWrite(m++, " Save configuration \x16", menusub == 10, 0);
|
||||
OsdWrite(m++, " Load configuration \x16", menusub == 11, 0);
|
||||
|
||||
while (m < 14) OsdWrite(m++);
|
||||
OsdWrite(m++, " Reset", menusub == 12, 0);
|
||||
OsdWrite(15, STD_EXIT, menusub == 13, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_MAIN2;
|
||||
parentstate = MENU_MINIMIG_MAIN1;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_MAIN2:
|
||||
if (menu) menustate = MENU_NONE1;
|
||||
else if (plus && (minimig_config.floppy.drives < 3) && menusub < 4)
|
||||
{
|
||||
minimig_config.floppy.drives++;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (minus && (minimig_config.floppy.drives > 0) && menusub < 4)
|
||||
{
|
||||
minimig_config.floppy.drives--;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (select || recent || minus || plus)
|
||||
{
|
||||
if (menusub < 4)
|
||||
{
|
||||
ioctl_index = 0;
|
||||
if (df[menusub].status & DSK_INSERTED) // eject selected floppy
|
||||
{
|
||||
df[menusub].status = 0;
|
||||
FileClose(&df[menusub].file);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else
|
||||
{
|
||||
df[menusub].status = 0;
|
||||
fs_Options = SCANO_DIR;
|
||||
fs_MenuSelect = MENU_MINIMIG_ADFFILE_SELECTED;
|
||||
fs_MenuCancel = MENU_MINIMIG_MAIN1;
|
||||
strcpy(fs_pFileExt, "ADF");
|
||||
if (select) SelectFile(Selected_F[menusub], "ADF", fs_Options, fs_MenuSelect, fs_MenuCancel);
|
||||
else if (recent_init(0)) menustate = MENU_RECENT1;
|
||||
}
|
||||
}
|
||||
else if (menusub == 4 && !recent) // Toggle floppy turbo
|
||||
{
|
||||
minimig_config.floppy.speed ^= 1;
|
||||
minimig_ConfigFloppy(minimig_config.floppy.drives, minimig_config.floppy.speed);
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (select)
|
||||
{
|
||||
if (menusub == 5) // Go to harddrives page.
|
||||
{
|
||||
menustate = MENU_MINIMIG_HARDFILE1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 6)
|
||||
{
|
||||
menustate = MENU_MINIMIG_CHIPSET1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 7)
|
||||
{
|
||||
menustate = MENU_MINIMIG_MEMORY1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 8)
|
||||
{
|
||||
menustate = MENU_MINIMIG_VIDEO1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (menusub == 9)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MT32PI_MAIN1;
|
||||
}
|
||||
else if (menusub == 10)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MINIMIG_SAVECONFIG1;
|
||||
}
|
||||
else if (menusub == 11)
|
||||
{
|
||||
menusub = 0;
|
||||
menustate = MENU_MINIMIG_LOADCONFIG1;
|
||||
}
|
||||
else if (menusub == 12)
|
||||
{
|
||||
menustate = MENU_NONE1;
|
||||
minimig_reset();
|
||||
}
|
||||
else if (menusub == 13)
|
||||
{
|
||||
menustate = MENU_NONE1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (c == KEY_BACKSPACE) // eject all floppies
|
||||
{
|
||||
for (int i = 0; i <= drives; i++) df[i].status = 0;
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
}
|
||||
else if (right)
|
||||
{
|
||||
menustate = MENU_COMMON1;
|
||||
menusub = 0;
|
||||
}
|
||||
else if (left)
|
||||
{
|
||||
menustate = MENU_MISC1;
|
||||
menusub = 3;
|
||||
}
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_ADFFILE_SELECTED:
|
||||
memcpy(Selected_F[menusub], selPath, sizeof(Selected_F[menusub]));
|
||||
recent_update(SelectedDir, selPath, SelectedLabel, 0);
|
||||
InsertFloppy(&df[menusub], selPath);
|
||||
if (menusub < drives) menusub++;
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_LOADCONFIG1:
|
||||
helptext_idx = 0;
|
||||
if (parentstate != menustate) menumask = 0x400;
|
||||
|
||||
parentstate = menustate;
|
||||
OsdSetTitle("Load config", 0);
|
||||
|
||||
m = 0;
|
||||
OsdWrite(m++, "", 0, 0);
|
||||
OsdWrite(m++, " Startup config:");
|
||||
for (uint i = 0; i < 10; i++)
|
||||
{
|
||||
const char *info = minimig_get_cfg_info(i, menusub != i);
|
||||
static char name[128];
|
||||
|
||||
if (info)
|
||||
{
|
||||
menumask |= 1 << i;
|
||||
sprintf(name, " %s", strlen(info) ? info : "NO INFO");
|
||||
char *p = strchr(name, '\n');
|
||||
if (p) *p = 0;
|
||||
OsdWrite(m++, name, menusub == i);
|
||||
|
||||
if (menusub == i && p)
|
||||
{
|
||||
sprintf(name, " %s", strchr(info, '\n') + 1);
|
||||
OsdWrite(m++, name, 1, !(menumask & (1 << i)));
|
||||
}
|
||||
}
|
||||
|
||||
if (!i)
|
||||
{
|
||||
OsdWrite(m++, "", 0, 0);
|
||||
m = 4;
|
||||
OsdWrite(m++, " Other configs:");
|
||||
}
|
||||
}
|
||||
|
||||
while (m < OsdGetSize() - 1) OsdWrite(m++);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 10, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_LOADCONFIG2;
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_LOADCONFIG2:
|
||||
if (down)
|
||||
{
|
||||
if (menusub < 9) menusub++;
|
||||
menustate = MENU_MINIMIG_LOADCONFIG1;
|
||||
}
|
||||
else if (select)
|
||||
{
|
||||
if (menusub < 10)
|
||||
{
|
||||
OsdDisable();
|
||||
minimig_cfg_load(menusub);
|
||||
menustate = MENU_NONE1;
|
||||
}
|
||||
else
|
||||
{
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
menusub = 11;
|
||||
}
|
||||
}
|
||||
if (menu || left) // exit menu
|
||||
{
|
||||
menustate = MENU_MINIMIG_MAIN1;
|
||||
menusub = 11;
|
||||
}
|
||||
break;
|
||||
|
||||
case MENU_MINIMIG_SAVECONFIG1:
|
||||
helptext_idx = 0;
|
||||
menumask = 0x7ff;
|
||||
@@ -5021,7 +5017,7 @@ void HandleUI(void)
|
||||
}
|
||||
|
||||
while (m < OsdGetSize() - 1) OsdWrite(m++);
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 10, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 10, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_SAVECONFIG2;
|
||||
break;
|
||||
@@ -5071,7 +5067,7 @@ void HandleUI(void)
|
||||
case MENU_MINIMIG_CHIPSET1:
|
||||
helptext_idx = HELPTEXT_CHIPSET;
|
||||
menumask = 0xf9;
|
||||
OsdSetTitle("Chipset", OSD_ARROW_LEFT | OSD_ARROW_RIGHT);
|
||||
OsdSetTitle("Chipset");
|
||||
parentstate = menustate;
|
||||
|
||||
m = 0;
|
||||
@@ -5100,7 +5096,7 @@ void HandleUI(void)
|
||||
strcat(s, (minimig_config.autofire & 0x8)? "ON" : "OFF");
|
||||
OsdWrite(m++, s, menusub == 6, 0);
|
||||
for (int i = m; i < OsdGetSize() - 1; i++) OsdWrite(i, "", 0, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 7, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 7, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_CHIPSET2;
|
||||
break;
|
||||
@@ -5214,7 +5210,7 @@ void HandleUI(void)
|
||||
menumask = 0x3f;
|
||||
parentstate = menustate;
|
||||
|
||||
OsdSetTitle("Memory", OSD_ARROW_LEFT | OSD_ARROW_RIGHT);
|
||||
OsdSetTitle("Memory");
|
||||
|
||||
OsdWrite(0, "", 0, 0);
|
||||
strcpy(s, " CHIP : ");
|
||||
@@ -5238,7 +5234,7 @@ void HandleUI(void)
|
||||
OsdWrite(6, s, menusub == 4, 0);
|
||||
|
||||
for (int i = 7; i < OsdGetSize() - 1; i++) OsdWrite(i, "", 0, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 5, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 5, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_MEMORY2;
|
||||
break;
|
||||
@@ -5319,7 +5315,7 @@ void HandleUI(void)
|
||||
// not on rejection.
|
||||
case MENU_MINIMIG_HARDFILE1:
|
||||
helptext_idx = HELPTEXT_HARDFILE;
|
||||
OsdSetTitle("Harddisks", OSD_ARROW_LEFT | OSD_ARROW_RIGHT);
|
||||
OsdSetTitle("Harddisks");
|
||||
|
||||
parentstate = menustate;
|
||||
menumask = 0x201; // b001000000001 - On/off & exit enabled by default...
|
||||
@@ -5355,7 +5351,7 @@ void HandleUI(void)
|
||||
}
|
||||
}
|
||||
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 9, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 9, 0);
|
||||
menustate = MENU_MINIMIG_HARDFILE2;
|
||||
break;
|
||||
|
||||
@@ -5491,7 +5487,7 @@ void HandleUI(void)
|
||||
helptext_idx = 0; // helptexts[HELPTEXT_VIDEO];
|
||||
|
||||
m = 0;
|
||||
OsdSetTitle("Audio & Video", OSD_ARROW_LEFT | OSD_ARROW_RIGHT);
|
||||
OsdSetTitle("Audio & Video");
|
||||
|
||||
strcpy(s, " TV Standard : ");
|
||||
strcat(s, minimig_config.chipset & CONFIG_NTSC ? "NTSC" : "PAL");
|
||||
@@ -5533,7 +5529,7 @@ void HandleUI(void)
|
||||
OsdWrite(m++);
|
||||
OsdWrite(m++, minimig_get_adjust() ? " Finish screen adjustment" : " Adjust screen position", menusub == 11, 0);
|
||||
for (; m < OsdGetSize() - 1; m++) OsdWrite(m);
|
||||
OsdWrite(OsdGetSize() - 1, STD_EXIT, menusub == 12, 0);
|
||||
OsdWrite(OsdGetSize() - 1, STD_BACK, menusub == 12, 0);
|
||||
|
||||
menustate = MENU_MINIMIG_VIDEO2;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user