aboutsummaryrefslogtreecommitdiffstats
path: root/tools/firmware/rombios
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-10-30 13:27:07 +0000
committerKeir Fraser <keir.fraser@citrix.com>2008-10-30 13:27:07 +0000
commit8805df3883fdb682e1af358ca448caff10585f57 (patch)
treeceb390b691f9368ca3d756c02840c9475f61978a /tools/firmware/rombios
parent9c55c2edfddb850a4e938eb45b32729b8f1e8ce9 (diff)
downloadxen-8805df3883fdb682e1af358ca448caff10585f57.tar.gz
xen-8805df3883fdb682e1af358ca448caff10585f57.tar.bz2
xen-8805df3883fdb682e1af358ca448caff10585f57.zip
rombios: fix int13h for floppy disk
A floppy on HVM can't be read correctly. This fix is taken from upstream bochs-2.3.7. Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
Diffstat (limited to 'tools/firmware/rombios')
-rw-r--r--tools/firmware/rombios/rombios.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/firmware/rombios/rombios.c b/tools/firmware/rombios/rombios.c
index 547d5cff87..0edd371765 100644
--- a/tools/firmware/rombios/rombios.c
+++ b/tools/firmware/rombios/rombios.c
@@ -7216,7 +7216,7 @@ BX_INFO("floppy: drive>1 || head>1 ...\n");
outb(0x03f5, head);
outb(0x03f5, sector);
outb(0x03f5, 2); // 512 byte sector size
- outb(0x03f5, 0); // last sector number possible on track
+ outb(0x03f5, sector + num_sectors - 1); // last sector to read on track
outb(0x03f5, 0); // Gap length
outb(0x03f5, 0xff); // Gap length
@@ -7364,7 +7364,7 @@ BX_INFO("floppy: drive>1 || head>1 ...\n");
outb(0x03f5, head);
outb(0x03f5, sector);
outb(0x03f5, 2); // 512 byte sector size
- outb(0x03f5, 0); // last sector number possible on track
+ outb(0x03f5, sector + num_sectors - 1); // last sector to write on track
outb(0x03f5, 0); // Gap length
outb(0x03f5, 0xff); // Gap length