SS-5 emulation doesn't work with Sun boot ROM

Bug #1260555 reported by Peter Bartoli
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

The 32-bit SPARC emulator's TCX emulation seems to work with OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa. Screenshot attached. Using version 1.7.0 on Mac OS X 10.9 via MacPorts and compiled directly from source, though this problem has carried over from Mac OS X 10.8 and many earlier versions of Qemu.

The following is my Qemu command:

sudo qemu-system-sparc -m 256 -M SS-5 -bios /home/img/ROMs/sun/ss5-170.bin \
  -g 1024x768x24 \
  -drive file=/home/doc/VMs/slagheap/sd0.raw,if=scsi,bus=0,unit=3 \
  -drive file=/home/doc/VMs/slagheap/sd1.raw,if=scsi,bus=0,unit=1 \
  -drive file=/home/doc/VMs/slagheap/sd2.raw,if=scsi,bus=0,unit=2 \
  -net nic,macaddr=DE:EE:DD:FF:EE:DD,model=lance \
  -net tap,ifname=tap0,script=/home/doc/VMs/slagheap/ifup,downscript=/home/doc/VMs/slagheap/ifdown

Note: also can't compile Qemu w/ SDL support from MacPorts on Mac OS X, and config.log is not helpful to figure out why, but this is another issue.

Revision history for this message
Peter Bartoli (peterbartoli) wrote :
Revision history for this message
Peter Maydell (pmaydell) wrote : Re: [Qemu-devel] [Bug 1260555] [NEW] qemu-system-sparc UI doesn't work with Cocoa and Sun ROM

On 13 December 2013 01:04, Peter Bartoli <email address hidden> wrote:
> Public bug reported:
>
>
> The 32-bit SPARC emulator's TCX emulation seems to work with
> OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa

This is actually two separate issues.

(1) This SS-5 ROM doesn't boot on QEMU. You can see this if
you try it on a Linux host : the display stays black.

(2) The Cocoa UI frontend doesn't black the screen on startup
(or on resize) the way the SDL frontend does, so if the guest
hasn't tried to display anything to the screen post-resize you
get the old garbage of the window decoration displayed.

We should probably fix (2), though it's only a cosmetic issue
and you won't even see it if you have a functioning guest.
I expect you care more about (1) and you'll do better with a
bug report that's clear that it's a generic SPARC guest issue.

thanks
-- PMM

summary: - qemu-system-sparc UI doesn't work with Cocoa and Sun ROM
+ SS-5 emulation doesn't work with Sun boot ROM
Revision history for this message
Peter Bartoli (peterbartoli) wrote :

On Dec 23, 2013, at 3:50 PM, Peter Maydell <email address hidden> wrote:
> On 13 December 2013 01:04, Peter Bartoli <email address hidden> wrote:
>> Public bug reported:
>>
>>
>> The 32-bit SPARC emulator's TCX emulation seems to work with
>> OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa
>
> This is actually two separate issues.
>
> (1) This SS-5 ROM doesn't boot on QEMU. You can see this if
> you try it on a Linux host : the display stays black.
>
> (2) The Cocoa UI frontend doesn't black the screen on startup
> (or on resize) the way the SDL frontend does, so if the guest
> hasn't tried to display anything to the screen post-resize you
> get the old garbage of the window decoration displayed.
>
> We should probably fix (2), though it's only a cosmetic issue
> and you won't even see it if you have a functioning guest.
> I expect you care more about (1) and you'll do better with a
> bug report that's clear that it's a generic SPARC guest issue.
>
> thanks
> -- PMM
>
>
> ** Summary changed:
>
> - qemu-system-sparc UI doesn't work with Cocoa and Sun ROM
> + SS-5 emulation doesn't work with Sun boot ROM
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1260555
>
> Title:
> SS-5 emulation doesn't work with Sun boot ROM
>
> Status in QEMU:
> New
>
> Bug description:
>
> The 32-bit SPARC emulator's TCX emulation seems to work with OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa. Screenshot attached. Using version 1.7.0 on Mac OS X 10.9 via MacPorts and compiled directly from source, though this problem has carried over from Mac OS X 10.8 and many earlier versions of Qemu.
>
> The following is my Qemu command:
>
> sudo qemu-system-sparc -m 256 -M SS-5 -bios /home/img/ROMs/sun/ss5-170.bin \
> -g 1024x768x24 \
> -drive file=/home/doc/VMs/slagheap/sd0.raw,if=scsi,bus=0,unit=3 \
> -drive file=/home/doc/VMs/slagheap/sd1.raw,if=scsi,bus=0,unit=1 \
> -drive file=/home/doc/VMs/slagheap/sd2.raw,if=scsi,bus=0,unit=2 \
> -net nic,macaddr=DE:EE:DD:FF:EE:DD,model=lance \
> -net tap,ifname=tap0,script=/home/doc/VMs/slagheap/ifup,downscript=/home/doc/VMs/slagheap/ifdown
>
> Note: also can't compile Qemu w/ SDL support from MacPorts on Mac OS
> X, and config.log is not helpful to figure out why, but this is
> another issue.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1260555/+subscriptions

Please accept my apology if I'm missing something, but I don't understand what you mean by #1; this ROM actually *does* boot on QEMU. Just not without the "-nographic" option.

-peter

Revision history for this message
Peter Maydell (pmaydell) wrote :

Ah, I hadn't tried -nographic. However, my general point still stands: whether you run this on MacOS or Linux, you get the same behaviour.

Experimenting I see that all that's happening here is that '-nographic' gives you a serial console, which the ROM outputs to. You can also specify that with '-serial stdio' instead, in which case you get ROM output to the terminal and a blank display. So the two parts of this bug are:

(1) no graphics output with this ROM
(2) cocoa UI doesn't properly show a black window if there is no graphics output from the guest

I have some patches which fix (2).

(If you have a bug which is a general QEMU emulation bug, it's a really bad idea to describe it using phrases like"on Cocoa" or "on MacOS" which suggest that it's a MacOS host specific bug, because this will mean that it will get ignored by almost all the developers, most of whom use Linux. If you have access to a suitable machine it's definitely helpful to try reproducing on a Linux box before reporting a bug. If you've only been able to test on Mac you should say so somewhere in the bug report, though.)

Revision history for this message
Peter Maydell (pmaydell) wrote :

These two patches for the Cocoa UI:
  http://patchwork.ozlabs.org/patch/304879/
  http://patchwork.ozlabs.org/patch/304878/

fix issue (2) so Cocoa now also displays a plain black window for this guest, like the SDL frontend does on Linux.

Revision history for this message
Mark Cave-Ayland (mark-cave-ayland) wrote :

On 23/12/13 23:50, Peter Maydell wrote:

>> The 32-bit SPARC emulator's TCX emulation seems to work with
>> OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa
>
> This is actually two separate issues.
>
> (1) This SS-5 ROM doesn't boot on QEMU. You can see this if
> you try it on a Linux host : the display stays black.

FWIW this should now work if you replace the QEMU,tcx.bin file from QEMU
1.7/master with the one uploaded to this bug:
https://bugs.launchpad.net/qemu/+bug/1262081.

As OpenBIOS doesn't have its own git infrastructure, I need to get the
git.qemu.org git-svn mirror updated by Anthony in order to send a pull
request with updated binaries (Blue Swirl set up OpenBIOS to build as a
git submodule from the git.qemu.org mirror). I'll try and get them
updated as soon as I can.

ATB,

Mark.

Revision history for this message
Peter Bartoli (peterbartoli) wrote : Re: [Bug 1260555] SS-5 emulation doesn't work with Sun boot ROM

Thanks, Peter ... will do, definitely have Linux and can use it to test in the future before reporting other bugs. That said, I think you can close this one.

-peter

On Dec 23, 2013, at 6:43 PM, Peter Maydell <email address hidden> wrote:
> Ah, I hadn't tried -nographic. However, my general point still stands:
> whether you run this on MacOS or Linux, you get the same behaviour.
>
> Experimenting I see that all that's happening here is that '-nographic'
> gives you a serial console, which the ROM outputs to. You can also
> specify that with '-serial stdio' instead, in which case you get ROM
> output to the terminal and a blank display. So the two parts of this bug
> are:
>
> (1) no graphics output with this ROM
> (2) cocoa UI doesn't properly show a black window if there is no graphics output from the guest
>
> I have some patches which fix (2).
>
> (If you have a bug which is a general QEMU emulation bug, it's a really
> bad idea to describe it using phrases like"on Cocoa" or "on MacOS" which
> suggest that it's a MacOS host specific bug, because this will mean that
> it will get ignored by almost all the developers, most of whom use
> Linux. If you have access to a suitable machine it's definitely helpful
> to try reproducing on a Linux box before reporting a bug. If you've only
> been able to test on Mac you should say so somewhere in the bug report,
> though.)
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1260555
>
> Title:
> SS-5 emulation doesn't work with Sun boot ROM
>
> Status in QEMU:
> New
>
> Bug description:
>
> The 32-bit SPARC emulator's TCX emulation seems to work with OpenBIOS, but doesn't work with a SparcStation ROM on Cocoa. Screenshot attached. Using version 1.7.0 on Mac OS X 10.9 via MacPorts and compiled directly from source, though this problem has carried over from Mac OS X 10.8 and many earlier versions of Qemu.
>
> The following is my Qemu command:
>
> sudo qemu-system-sparc -m 256 -M SS-5 -bios /home/img/ROMs/sun/ss5-170.bin \
> -g 1024x768x24 \
> -drive file=/home/doc/VMs/slagheap/sd0.raw,if=scsi,bus=0,unit=3 \
> -drive file=/home/doc/VMs/slagheap/sd1.raw,if=scsi,bus=0,unit=1 \
> -drive file=/home/doc/VMs/slagheap/sd2.raw,if=scsi,bus=0,unit=2 \
> -net nic,macaddr=DE:EE:DD:FF:EE:DD,model=lance \
> -net tap,ifname=tap0,script=/home/doc/VMs/slagheap/ifup,downscript=/home/doc/VMs/slagheap/ifdown
>
> Note: also can't compile Qemu w/ SDL support from MacPorts on Mac OS
> X, and config.log is not helpful to figure out why, but this is
> another issue.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1260555/+subscriptions

Thomas Huth (th-huth)
Changed in qemu:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.