From: Shao Miller Date: Sat, 1 Aug 2009 06:06:08 +0000 (-0400) Subject: [memdisk] Add installable INT 13h hooks for ISO-booting scenarios X-Git-Tag: syslinux-3.84-pre3~1^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1275c1535315174f355b4bf74e69e572d8b38fc6;p=profile%2Fivi%2Fsyslinux.git [memdisk] Add installable INT 13h hooks for ISO-booting scenarios As of this commit, these hooks do nothing special and are unused. They are intended to support the El Torito "No Emulation" (2048-byte sector size) and "Floppy Emulation"/"HDD Emulation" (512-byte sector size) modes for bootable optical disc drive media (CD/DVD). --- diff --git a/memdisk/Makefile b/memdisk/Makefile index 35d7bef..8e76f3d 100644 --- a/memdisk/Makefile +++ b/memdisk/Makefile @@ -38,11 +38,15 @@ endif # Important: init.o16 must be first!! OBJS16 = init.o16 init32.o OBJS32 = start32.o setup.o msetup.o e820func.o conio.o memcpy.o memset.o \ - memmove.o unzip.o memdisk_chs_512.o memdisk_edd_512.o dskprobe.o + memmove.o unzip.o dskprobe.o \ + memdisk_chs_512.o memdisk_edd_512.o \ + memdisk_iso_512.o memdisk_iso_2048.o CSRC = setup.c msetup.c e820func.c conio.c unzip.c dskprobe.c SSRC = start32.S memcpy.S memset.S memmove.S -NASMSRC = memdisk_chs_512.asm memdisk_edd_512.asm memdisk16.asm +NASMSRC = memdisk_chs_512.asm memdisk_edd_512.asm \ + memdisk_iso_512.asm memdisk_iso_2048.asm \ + memdisk16.asm all: memdisk # e820test diff --git a/memdisk/memdisk_iso_2048.asm b/memdisk/memdisk_iso_2048.asm new file mode 100644 index 0000000..84a0554 --- /dev/null +++ b/memdisk/memdisk_iso_2048.asm @@ -0,0 +1,3 @@ +%define EDD 1 +%define SECTORSIZE_LG2 11 ; log2(sector size) +%include "memdisk.inc" diff --git a/memdisk/memdisk_iso_512.asm b/memdisk/memdisk_iso_512.asm new file mode 100644 index 0000000..fbd90c1 --- /dev/null +++ b/memdisk/memdisk_iso_512.asm @@ -0,0 +1,3 @@ +%define EDD 1 +%define SECTORSIZE_LG2 9 ; log2(sector size) +%include "memdisk.inc" diff --git a/memdisk/setup.c b/memdisk/setup.c index 158a065..9fd5c9e 100644 --- a/memdisk/setup.c +++ b/memdisk/setup.c @@ -30,6 +30,12 @@ extern const char _binary_memdisk_chs_512_bin_size[]; extern const char _binary_memdisk_edd_512_bin_start[]; extern const char _binary_memdisk_edd_512_bin_end[]; extern const char _binary_memdisk_edd_512_bin_size[]; +extern const char _binary_memdisk_iso_512_bin_start[]; +extern const char _binary_memdisk_iso_512_bin_end[]; +extern const char _binary_memdisk_iso_512_bin_size[]; +extern const char _binary_memdisk_iso_2048_bin_start[]; +extern const char _binary_memdisk_iso_2048_bin_end[]; +extern const char _binary_memdisk_iso_2048_bin_size[]; struct memdisk_header { uint16_t int13_offs;