* more reliable check signature
diff --git a/bootstub.c b/bootstub.c
index cfbce7b..79a3a2b 100644
--- a/bootstub.c
+++ b/bootstub.c
@@ -68,7 +68,7 @@
static int get_32bit_entry(unsigned char *ptr)
{
while (1){
- if (*(u32 *)ptr == SETUP_SIGNATURE && *(u8*)(ptr+4) == 0)
+ if (*(u32 *)ptr == SETUP_SIGNATURE && *(u32 *)(ptr+4) == 0)
break;
ptr++;
}
@@ -78,14 +78,10 @@
int main(void)
{
- *(char*)0xb8000='A';
setup_idt();
- *(char*)0xb8000='B';
setup_gdt();
- *(char*)0xb8000='C';
setup_boot_params((struct boot_params *)BOOT_PARAMS_OFFSET,
(struct setup_header*)SETUP_HEADER_OFFSET);
- *(char*)0xb8000='D';
return get_32bit_entry((unsigned char *)BZIMAGE_OFFSET);
}