summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brown2007-08-23 21:50:58 +0200
committerMichael Brown2007-08-23 21:50:58 +0200
commitb62a9ee0f4b0412424d091ec457cac20786a5fad (patch)
tree844d2a5469b9e7732d7467ab00868a6ab7e90dfd /src
parentMerge branch 'master' into 3leaf (diff)
parentAuto-assign drive number only if set to 0xff; almost all applications (diff)
downloadipxe-b62a9ee0f4b0412424d091ec457cac20786a5fad.tar.gz
ipxe-b62a9ee0f4b0412424d091ec457cac20786a5fad.tar.xz
ipxe-b62a9ee0f4b0412424d091ec457cac20786a5fad.zip
Merge branch 'master' into 3leaf
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.housekeeping5
-rw-r--r--src/arch/i386/interface/pcbios/int13.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/Makefile.housekeeping b/src/Makefile.housekeeping
index ee652b0a5..6126247b8 100644
--- a/src/Makefile.housekeeping
+++ b/src/Makefile.housekeeping
@@ -403,6 +403,11 @@ include $(MEDIA_DEPS)
allroms allzroms : all%s : $(foreach ROM,$(ROMS),$(BIN)/$(ROM).%)
all%s : $(foreach DRIVER,$(DRIVERS),$(BIN)/$(DRIVER).%)
+# Alias for gpxe.%
+#
+$(BIN)/etherboot.% : $(BIN)/gpxe.%
+ ln -sf $(notdir $<) $@
+
# The compression utilities
#
$(NRV2B) : util/nrv2b.c $(MAKEDEPS)
diff --git a/src/arch/i386/interface/pcbios/int13.c b/src/arch/i386/interface/pcbios/int13.c
index 53817c7a8..a26dcff4a 100644
--- a/src/arch/i386/interface/pcbios/int13.c
+++ b/src/arch/i386/interface/pcbios/int13.c
@@ -543,8 +543,9 @@ void register_int13_drive ( struct int13_drive *drive ) {
/* Assign drive number if none specified, update BIOS drive count */
get_real ( num_drives, BDA_SEG, BDA_NUM_DRIVES );
- if ( ! drive->drive )
- drive->drive = ( num_drives | 0x80 );
+ if ( ( drive->drive & 0xff ) == 0xff )
+ drive->drive = num_drives;
+ drive->drive |= 0x80;
num_drives++;
if ( num_drives <= ( drive->drive & 0x7f ) )
num_drives = ( ( drive->drive & 0x7f ) + 1 );