syslinux/syslinux-3.86-compat.diff

58 lines
1.3 KiB
Diff

diff --git a/core/keywords b/core/keywords
index c289ae2..b7d4c4b 100644
--- a/core/keywords
+++ b/core/keywords
@@ -6,6 +6,7 @@ initrd
config
default
ui
+gfxboot
display
font
implicit
diff --git a/core/keywords.inc b/core/keywords.inc
index d0f7db3..fc00ad7 100644
--- a/core/keywords.inc
+++ b/core/keywords.inc
@@ -91,6 +91,7 @@ keywd_table:
keyword f0, pc_filename, FKeyN(10)
keyword f11, pc_filename, FKeyN(11)
keyword f12, pc_filename, FKeyN(12)
+ keyword gfxboot, pc_gfxboot
%if IS_PXELINUX
keyword ipappend, pc_ipappend
%endif
diff --git a/core/parseconfig.inc b/core/parseconfig.inc
index 65d71c9..2302536 100644
--- a/core/parseconfig.inc
+++ b/core/parseconfig.inc
@@ -30,6 +30,20 @@ pc_default: cmp ax,[DefaultLevel]
ret
;
+; "gfxboot" command; Shorthand for "ui gfxboot.com"
+;
+pc_gfxboot:
+ mov ax,2
+ mov [DefaultLevel],ax ; Setup UI mode
+ mov si,gfxboot_cmd
+ mov di,default_cmd
+ call strcpy
+ dec di
+ call getline
+ mov byte [di-1],0 ; null-terminate
+ ret
+
+;
; "ontimeout" command
;
pc_ontimeout: mov di,Ontimeout
@@ -439,6 +453,7 @@ commit_vk:
section .data
vk_overflow_msg db 'Out of memory parsing config file', CR, LF, 0
SerialNotice db 1 ; Only print this once
+gfxboot_cmd db 'gfxboot.com ', 0
section .bss
alignb 4