summaryrefslogtreecommitdiff
path: root/com32/lib/syslinux/memmap.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@linux.intel.com>2009-03-31 16:31:18 -0700
committerH. Peter Anvin <hpa@linux.intel.com>2009-03-31 16:31:18 -0700
commit0d8c3d040d9f733f95384f2d5e46609f73bd9c78 (patch)
tree9341a6bcfc7da3abf15ea514ad44f6d3c3233f19 /com32/lib/syslinux/memmap.c
parent1656aefeb6b7195db38d25065137c4f37655f33a (diff)
downloadsyslinux-0d8c3d040d9f733f95384f2d5e46609f73bd9c78.tar.gz
shuffler: make the new shuffler actually work
Make the new shuffler actually work. This includes changing rllpack.inc to run in 32-bit mode (since simple_pm_call now switches to 32-bit mode) and changing the new shuffler interface to move the shuffle list before actually doing any work. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'com32/lib/syslinux/memmap.c')
-rw-r--r--com32/lib/syslinux/memmap.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/com32/lib/syslinux/memmap.c b/com32/lib/syslinux/memmap.c
index 105c9473..4c5738f8 100644
--- a/com32/lib/syslinux/memmap.c
+++ b/com32/lib/syslinux/memmap.c
@@ -1,6 +1,6 @@
/* ----------------------------------------------------------------------- *
*
- * Copyright 2007-2008 H. Peter Anvin - All Rights Reserved
+ * Copyright 2007-2009 H. Peter Anvin - All Rights Reserved
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
@@ -63,11 +63,11 @@ struct syslinux_memmap *syslinux_memory_map(void)
if (!mmap)
goto bail;
- /* Use INT 12h to get DOS memory above 0x7c00 */
+ /* Use INT 12h to get DOS memory 0x600 */
__intcall(0x12, &zireg, &oreg);
if (oreg.eax.w[0] > 31 && oreg.eax.w[0] <= 640) {
- addr_t dosmem = (oreg.eax.w[0] << 10) - 0x7c00;
- if (syslinux_add_memmap(&mmap, 0x7c00, dosmem, SMT_FREE))
+ addr_t dosmem = (oreg.eax.w[0] << 10) - 0x600;
+ if (syslinux_add_memmap(&mmap, 0x600, dosmem, SMT_FREE))
goto bail;
}