:: commit cdfc454ae29cadb373684ea47a2c441855a66cf8

mintsuki <mintsuki@protonmail.com> — 2020-12-10 06:32

parents: 0a8eae7bbe

menu: Support changing branding title screen

diff --git a/limine-pxe.bin b/limine-pxe.bin
index 2ef6eae7..20c6fdc9 100644
Binary files a/limine-pxe.bin and b/limine-pxe.bin differ
diff --git a/limine.bin b/limine.bin
index 7c9073af..877400f0 100644
Binary files a/limine.bin and b/limine.bin differ
diff --git a/stage2.map b/stage2.map
index 6ddc926b..e0cd4e56 100644
Binary files a/stage2.map and b/stage2.map differ
diff --git a/stage2/menu.c b/stage2/menu.c
index 584cc108..cb1b22cd 100644
--- a/stage2/menu.c
+++ b/stage2/menu.c
@@ -13,6 +13,8 @@
 #include <mm/pmm.h>
 #include <drivers/vbe.h>
 
+static char *menu_branding = NULL;
+
 static void cursor_back(void) {
     int x, y;
     get_cursor_pos(&x, &y);
@@ -104,7 +106,7 @@ static char *config_entry_editor(bool *ret, const char *orig_entry) {
 refresh:
     clear(true);
     disable_cursor();
-    print("\n\n  \e[36m Limine " LIMINE_VERSION " \e[37m\n\n\n");
+    print("\n\n  \e[36m %s \e[37m\n\n\n", menu_branding);
 
     print("Editing entry.\n");
     print("Press esc to return to main menu and discard changes, press F10 to boot.\n");
@@ -240,6 +242,10 @@ static int print_tree(int level, int base_index, int selected_entry,
 }
 
 char *menu(char **cmdline) {
+    menu_branding = config_get_value(NULL, 0, "MENU_BRANDING");
+    if (menu_branding == NULL)
+        menu_branding = "Limine " LIMINE_VERSION;
+
     if (menu_tree == NULL)
         panic("Config contains no valid entries.");
 
@@ -343,7 +349,7 @@ char *menu(char **cmdline) {
 
 refresh:
     clear(true);
-    print("\n\n  \e[36m Limine " LIMINE_VERSION " \e[37m\n\n\n");
+    print("\n\n  \e[36m %s \e[37m\n\n\n", menu_branding);
 
     print("Select an entry:\n\n");
 
diff --git a/test/limine.cfg b/test/limine.cfg
index e7ac14f7..5b974048 100644
--- a/test/limine.cfg
+++ b/test/limine.cfg
@@ -1,3 +1,4 @@
+MENU_BRANDING=Limine's test image
 DEFAULT_ENTRY=2
 TIMEOUT=3
 GRAPHICS=yes
tab: 248 wrap: offon