qemu-devel
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]