From c21292c2ed81359ec3ad336e34eca51261011921 Mon Sep 17 00:00:00 2001 From: Paulo Alcantara Date: Wed, 11 Apr 2012 00:52:50 -0300 Subject: [PATCH] PXELINUX: get rid of core/ui.inc file core/ui.inc is no longer used. As it used to contain the boot prompt code, there is replacement of it, the enter_cmdline() function (com32/elflink/ldlinux/ldlinux.c). There were some variables declared in core/ui.inc that are used by core/pxelinux.asm, so those were all moved out to core/pxelinux.asm as well. Signed-off-by: Paulo Alcantara --- core/pxelinux.asm | 55 +++++++++++++++++++++++++++++++++++++++++++++++++------ core/ui.inc | 1 - 2 files changed, 49 insertions(+), 7 deletions(-) diff --git a/core/pxelinux.asm b/core/pxelinux.asm index 31224fd..0a62bd7 100644 --- a/core/pxelinux.asm +++ b/core/pxelinux.asm @@ -269,11 +269,55 @@ ROOT_FS_OPS: pm_call load_env32 jmp kaboom ; load_env32() shouldn't return. If it does, then kaboom! -; -; Now we have the config file open. Parse the config file and -; run the user interface. -; -%include "ui.inc" +print_hello: +enter_command: +auto_boot: + pm_call hello + +; As core/ui.inc used to be included here in core/pxelinux.asm, and it's no +; longer used, its global variables that were previously used by +; core/pxelinux.asm are now declared here. + section .bss16 + alignb 4 +Kernel_EAX resd 1 +Kernel_SI resw 1 + + section .bss16 + global CmdOptPtr, KbdMap + alignb 4 +ThisKbdTo resd 1 ; Temporary holder for KbdTimeout +ThisTotalTo resd 1 ; Temporary holder for TotalTimeout +KernelExtPtr resw 1 ; During search, final null pointer +CmdOptPtrj resw 1 ; Pointer to first option on cmd line +KbdFlags resb 1 ; Check for keyboard escapes +FuncFlag resb 1 ; Escape sequences received from keyboard +KernelType resb 1 ; Kernel type, from vkernel, if known +KbdMap resb 256 ; Keyboard map + global KernelName +KernelName resb FILENAME_MAX ; Mangled name for kernel + section .config + global PXERetry +PXERetry dw 0 ; Extra PXE retries + section .data16 + global SerialNotice +SerialNotice db 1 ; Only print this once + extern IPOption + global IPAppends, numIPAppends + alignz 2 +IPAppends dw IPOption +numIPAppends equ ($-IPAppends)/2 + + section .text16 + +; COMBOOT-loading code +%include "comboot.inc" +%include "com32.inc" + +; Hardware cleanup common code +%include "localboot.inc" + + section .text16 + align 4 ; ; kaboom: write a message and bail out. Wait for quite a while, @@ -317,7 +361,6 @@ kaboom: mov word [BIOS_magic],0 ; Cold reboot jmp 0F000h:0FFF0h ; Reset vector address - ; ; pxenv ; diff --git a/core/ui.inc b/core/ui.inc index e50c7f5..e7d090a 100644 --- a/core/ui.inc +++ b/core/ui.inc @@ -23,7 +23,6 @@ load_kernel: kernel_good_saved: kernel_corrupt: pm_call hello - %else ; comment off the original ui.inc load_config_file: call parse_config ; Parse configuration file -- 2.7.4