32 lines
778 B
C
32 lines
778 B
C
|
static int sel_max = 0;
|
||
|
static int sel = 0;
|
||
|
|
||
|
void toggle(int ndx, int value, char *str) {
|
||
|
attr = sel == ndx ? 0x70 : 0x07;
|
||
|
if (value) {
|
||
|
print_(" [X] ");
|
||
|
} else {
|
||
|
print_(" [ ] ");
|
||
|
}
|
||
|
print_(str);
|
||
|
print_("\n");
|
||
|
}
|
||
|
|
||
|
struct option {
|
||
|
int * value;
|
||
|
char * title;
|
||
|
char * description_1;
|
||
|
char * description_2;
|
||
|
} boot_options[20] = {{0}}; /* can't really hold more than that */
|
||
|
|
||
|
static int _boot_offset = 0;
|
||
|
#define BOOT_OPTION(_value, default_val, option, d1, d2) \
|
||
|
int _value = default_val;\
|
||
|
boot_options[_boot_offset].value = &_value; \
|
||
|
boot_options[_boot_offset].title = option; \
|
||
|
boot_options[_boot_offset].description_1 = d1; \
|
||
|
boot_options[_boot_offset].description_2 = d2; \
|
||
|
_boot_offset++
|
||
|
|
||
|
#define BASE_SEL ((sizeof(boot_mode_names)/sizeof(*boot_mode_names))-1)
|