Default back to text mode instead of VBE, add DEFAULT_ENTRY config option
This commit is contained in:
parent
562e3c7c88
commit
2f7d3c378d
|
@ -21,9 +21,10 @@ Some *local assignments* are shared between entries using any *protocol*, while
|
||||||
|
|
||||||
*Globally assignable* keys are:
|
*Globally assignable* keys are:
|
||||||
* `TIMEOUT` - Specifies the timeout in seconds before the first *entry* is automatically booted.
|
* `TIMEOUT` - Specifies the timeout in seconds before the first *entry* is automatically booted.
|
||||||
* `TEXTMODE` - If set to `on`, do not use graphical VESA framebuffer for the boot menu.
|
* `DEFAULT_ENTRY` - 0-based entry index of the entry which will be automatically selected at startup. If unspecified, it is `0`.
|
||||||
* `THEME_BLACK`, `THEME_RED`, `THEME_GREEN`, `THEME_BROWN`, `THEME_BLUE`, `THEME_MAGENTA`, `THEME_CYAN`, `THEME_GREY`, `THEME_WHITE` - Specifies the colors used by the terminal (RRGGBB).
|
* `GRAPHICS` - If set to `yes`, do use graphical VESA framebuffer for the boot menu.
|
||||||
* `THEME_MARGIN` - Set the amount of margin around the terminal.
|
* `THEME_BLACK`, `THEME_RED`, `THEME_GREEN`, `THEME_BROWN`, `THEME_BLUE`, `THEME_MAGENTA`, `THEME_CYAN`, `THEME_GREY`, `THEME_WHITE` - Specifies the colors used by the terminal (RRGGBB). Ignored if `GRAPHICS` is not `yes`.
|
||||||
|
* `THEME_MARGIN` - Set the amount of margin around the terminal. Ignored if `GRAPHICS` is not `yes`.
|
||||||
|
|
||||||
*Locally assignable (non protocol specific)* keys are:
|
*Locally assignable (non protocol specific)* keys are:
|
||||||
* `PROTOCOL` - The boot protocol that will be used to boot the kernel. Valid protocols are: `linux`, `stivale`, `stivale2`, `chainload`.
|
* `PROTOCOL` - The boot protocol that will be used to boot the kernel. Valid protocols are: `linux`, `stivale`, `stivale2`, `chainload`.
|
||||||
|
|
BIN
limine.bin
BIN
limine.bin
Binary file not shown.
|
@ -21,8 +21,21 @@ char *menu(int boot_drive) {
|
||||||
|
|
||||||
char buf[16];
|
char buf[16];
|
||||||
|
|
||||||
// If there is no TEXTMODE config key or the value is not "on", enable graphics
|
int selected_entry = 0;
|
||||||
if (config_get_value(buf, 0, 16, "TEXTMODE") == NULL || strcmp(buf, "on")) {
|
if (config_get_value(buf, 0, 16, "DEFAULT_ENTRY")) {
|
||||||
|
selected_entry = (int)strtoui(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
int timeout = 5;
|
||||||
|
if (config_get_value(buf, 0, 16, "TIMEOUT")) {
|
||||||
|
timeout = (int)strtoui(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!timeout)
|
||||||
|
goto autoboot;
|
||||||
|
|
||||||
|
// If there is GRAPHICS config key and the value is "yes", enable graphics
|
||||||
|
if (config_get_value(buf, 0, 16, "GRAPHICS") && !strcmp(buf, "yes")) {
|
||||||
// default scheme
|
// default scheme
|
||||||
int margin = 64;
|
int margin = 64;
|
||||||
uint32_t colourscheme[] = {
|
uint32_t colourscheme[] = {
|
||||||
|
@ -104,15 +117,7 @@ char *menu(int boot_drive) {
|
||||||
yesbg:;
|
yesbg:;
|
||||||
}
|
}
|
||||||
|
|
||||||
int timeout;
|
|
||||||
if (!config_get_value(buf, 0, 16, "TIMEOUT")) {
|
|
||||||
timeout = 5;
|
|
||||||
} else {
|
|
||||||
timeout = (int)strtoui(buf);
|
|
||||||
}
|
|
||||||
|
|
||||||
disable_cursor();
|
disable_cursor();
|
||||||
int selected_entry = 0;
|
|
||||||
bool skip_timeout = false;
|
bool skip_timeout = false;
|
||||||
|
|
||||||
refresh:
|
refresh:
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
|
DEFAULT_ENTRY=2
|
||||||
TIMEOUT=3
|
TIMEOUT=3
|
||||||
|
GRAPHICS=yes
|
||||||
|
|
||||||
THEME_BLACK=80000000
|
THEME_BLACK=80000000
|
||||||
THEME_RED=aa0000
|
THEME_RED=aa0000
|
||||||
|
@ -14,7 +16,7 @@ THEME_MARGIN=64
|
||||||
BACKGROUND_PARTITION=0
|
BACKGROUND_PARTITION=0
|
||||||
BACKGROUND_PATH=bg.bmp
|
BACKGROUND_PATH=bg.bmp
|
||||||
|
|
||||||
:MyOS
|
:MyOS 0
|
||||||
|
|
||||||
PROTOCOL=stivale2
|
PROTOCOL=stivale2
|
||||||
|
|
||||||
|
@ -29,3 +31,11 @@ PROTOCOL=stivale2
|
||||||
KERNEL_PARTITION=0
|
KERNEL_PARTITION=0
|
||||||
KERNEL_PATH=boot/test.elf
|
KERNEL_PATH=boot/test.elf
|
||||||
KERNEL_CMDLINE=something
|
KERNEL_CMDLINE=something
|
||||||
|
|
||||||
|
:MyOS 2
|
||||||
|
|
||||||
|
PROTOCOL=stivale2
|
||||||
|
|
||||||
|
KERNEL_PARTITION=0
|
||||||
|
KERNEL_PATH=boot/test.elf
|
||||||
|
KERNEL_CMDLINE=something
|
||||||
|
|
Loading…
Reference in New Issue