toaruos/boot/options.h

46 lines
1.0 KiB
C

#pragma once
struct option {
int * value;
char * title;
char * description_1;
char * description_2;
};
extern struct option boot_options[20];
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++;
struct bootmode {
int index;
char * key;
char * title;
};
#define BASE_SEL ((sizeof(boot_mode_names)/sizeof(*boot_mode_names))-1)
extern int base_sel;
#define BOOT_SET() do { \
base_sel = BASE_SEL; \
_boot_offset = 0; \
memset(boot_options, 0, sizeof(boot_options)); \
} while (0)
extern char * VERSION_TEXT;
extern char * HELP_TEXT;
extern char * HELP_TEXT_OPT;
extern char * COPYRIGHT_TEXT;
extern char * LINK_TEXT;
extern char * kernel_path;
extern char * ramdisk_path;
extern char cmdline[1024];
extern struct bootmode boot_mode_names[];