[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1806114] Re: Reading sectors from floppy with BIOS INT
From: |
John Snow |
Subject: |
[Qemu-devel] [Bug 1806114] Re: Reading sectors from floppy with BIOS INT 13h is broken |
Date: |
Mon, 03 Dec 2018 19:32:41 -0000 |
Hello! Thank you for your kindly and detailed report.
Since this is via the INT 13h mechanism, the problem is likely in
SeaBIOS.
If I'm reading the version strings right, it looks like QEMU 2.0.0 QEMU
1.1.2 appear to be working correctly for you, but do you know what
versions of the SeaBIOS firmware they're running with?
It might be interesting to see if, on QEMU 2.0.0 but a modern version of
SeaBIOS, that it still breaks the same way -- that way we can tell for
sure if it's a QEMU regression or a SeaBIOS one.
Thank you,
--js
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1806114
Title:
Reading sectors from floppy with BIOS INT 13h is broken
Status in QEMU:
New
Bug description:
I'm developing a game bootable from a floppy disk, written in i386
assembly. I found out it doesn't work on newer QEMU versions. I
managed to isolate the issue and it seems that there's a problem with
handling of BIOS interrupt 13h when it comes to reading disk sectors
(AH=02).
I've written a simple test in assembly. It simply accesses four
different floppy disk sectors and prints out the strings they contain.
The problem is, the two latter strings don't show up at all nor the
BIOS interrupt returns an error (CF set). I've attached the code to
this bug report. I use following commands to compile it and run:
$ nasm disk-test.asm -o disk-test.bin
$ qemu-system-i386 -boot a -fda disk-test.bin
After running, the expected output is:
I am a test string from boot sector
C:H:S 0:0:2 - Hello
C:H:S 0:0:3 - there!
C:H:S 0:1:4 - In QEMU you can't
C:H:S 1:0:5 - see these two lines! :(
while the actual output is:
I am a test string from boot sector
C:H:S 0:0:2 - Hello
C:H:S 0:0:3 - there!
So far, I found this problem in the current QEMU version for Ubuntu 18.04
(Debian 1:2.11+dfsg-1ubuntu7.8), as well as in the 3.1.0-rc3 and 2.12.1
versions, available on the www.qemu.org website. Thus, the issue doesn't seem
to be very recent.
To be sure, I ran the program on my other machine with older QEMU
version (Debian 2.0.0+dfsg-2ubuntu1.43) and on my RaspberryPi 2
(Debian 1.1.2+dfsg-6+deb7u25) and everything works as expected there.
It also works well in VirtualBox.
I hope these information are useful to you, however, I feel like this
bug may be more related to Seabios. If so, please let me know and I
will report it somewhere else.
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1806114/+subscriptions
- [Qemu-devel] [Bug 1806114] Re: Reading sectors from floppy with BIOS INT 13h is broken,
John Snow <=