[syslinux:elflink] elflink: We can see menu.c32 working!

syslinux-bot for Feng Tang feng.tang at intel.com
Thu Aug 12 21:03:18 PDT 2010


Commit-ID:  873e2887a7febc3e5b96375aae35549d7aad5149
Gitweb:     http://syslinux.zytor.com/commit/873e2887a7febc3e5b96375aae35549d7aad5149
Author:     Feng Tang <feng.tang at intel.com>
AuthorDate: Fri, 18 Jun 2010 16:17:35 +0800
Committer:  Feng Tang <feng.tang at intel.com>
CommitDate: Tue, 20 Jul 2010 11:10:04 +0800

elflink: We can see menu.c32 working!



---
 com32/lib/malloc.c                |    2 +-
 com32/lib/sys/module/elf_module.c |    2 ++
 com32/lib/sys/module/exec.c       |    3 ++-
 core/diskstart.inc                |    6 +++++-
 core/elflink/load_env32.c         |    2 +-
 5 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/com32/lib/malloc.c b/com32/lib/malloc.c
index 6cc9681..c78d210 100644
--- a/com32/lib/malloc.c
+++ b/com32/lib/malloc.c
@@ -80,7 +80,7 @@ static void __constructor init_memory_arena(void)
 
     //mp("enter");
 
-	mp("skip this init as core has a mem_init");
+//	mp("skip this init as core has a mem_init");
     return;
 
     start = (size_t) ARENA_ALIGN_UP(__mem_end);
diff --git a/com32/lib/sys/module/elf_module.c b/com32/lib/sys/module/elf_module.c
index 26705df..d04230e 100755
--- a/com32/lib/sys/module/elf_module.c
+++ b/com32/lib/sys/module/elf_module.c
@@ -151,10 +151,12 @@ static int load_segments(struct elf_module *module, Elf32_Ehdr *elf_hdr) {
 				}
 			}
 
+			/*
 			DBG_PRINT("Loadable segment of size 0x%08x copied from vaddr 0x%08x at 0x%08x\n",
 					cr_pht->p_filesz,
 					cr_pht->p_vaddr,
 					(Elf32_Addr)module_get_absolute(cr_pht->p_vaddr, module));
+			*/
 		}
 	}
 
diff --git a/com32/lib/sys/module/exec.c b/com32/lib/sys/module/exec.c
index 8204ee4..30a61c0 100644
--- a/com32/lib/sys/module/exec.c
+++ b/com32/lib/sys/module/exec.c
@@ -72,7 +72,8 @@ int load_library(const char *name)
 
 	if (module->init_func != NULL) {
 		res = (*(module->init_func))();
-		DBG_PRINT("Initialization function returned: %d\n", res);
+		if (res)
+			DBG_PRINT("Initialization error! function returned: %d\n", res);
 	} else {
 		DBG_PRINT("No initialization function present.\n");
 	}
diff --git a/core/diskstart.inc b/core/diskstart.inc
index 34ac20c..3ffae85 100644
--- a/core/diskstart.inc
+++ b/core/diskstart.inc
@@ -616,8 +616,10 @@ verify_checksum:
 		jnz .checksum
 		pop ds
 
+		push eax
 		mov si,cbios_name
 		call writestr_early
+		pop eax
 		and eax,eax			; Should be zero
 		jz all_read			; We're cool, go for it!
 
@@ -706,6 +708,8 @@ SectorPtrsEnd	equ $
 ; ----------------------------------------------------------------------------
 
 		section .text16
+test_string	db 'test', 0			; temp add by feng 
+
 all_read:
 ;
 ; Let the user (and programmer!) know we got this far.  This used to be
@@ -714,7 +718,7 @@ all_read:
 		;mov si,copyright_str
 		;call writestr_early
 
-		mov si,ebios_name
+		mov si,test_string
 		call writestr_early
 ;
 ; Insane hack to expand the DOS superblock to dwords
diff --git a/core/elflink/load_env32.c b/core/elflink/load_env32.c
index da7c604..663c82e 100644
--- a/core/elflink/load_env32.c
+++ b/core/elflink/load_env32.c
@@ -94,7 +94,7 @@ void start_ui(char *config_file)
 
 	mp("enter, config file = %s", config_file);
 
-	//parse_configs(argv);
+	parse_configs(argv);
 	/* run the default menu if found */
 	/*
 	if (default_menu) {



More information about the Syslinux-commits mailing list