Windows for Workgroups 3.11 fails to start with AMD PCNET device in qemu > 7.1.0 on Apple M1 hosts
Host environment
- Operating system: macOS Sequoia 15.5 (24F74)
- OS/kernel version: Darwin proton.ldx.ca 24.5.0 Darwin Kernel Version 24.5.0: Tue Apr 22 19:54:49 PDT 2025; root:xnu-11417.121.6~2/RELEASE_ARM64_T6000 arm64
- Architecture: arm64
- QEMU flavor: qemu-system-i386
- QEMU version: 7.2.0 through qemu.git master
- QEMU command line:
qemu-system-i386 -cpu 486 -m 16m \ -rtc base=localtime \ -hda wfw311-pcnet.qcow2 \ -netdev user,id=n0 \ -device pcnet,romfile=,netdev=n0,mac=52:54:00:61:6d:64 \ -device vmware-svga
Emulated/Virtualized environment
- Operating system: Windows for Workgroups 3.11
- OS/kernel version: 3.11
- Architecture: i386 (
-cpu 486
)
Description of problem
I have two host systems: (1) an Apple M1 Pro (2021), and (2) an Apple MacBook Pro (Retina, Late 2013). I am using the same qemu command and disk image on both systems. I am using TCG on both systems.
On the M1 Pro (arm64) host, with an AMD PCNET device configured and its driver installed, when I launch win.com
, the Windows 3.11 splash screen appears briefly, but then switches to the text mode console with a blinking cursor and nothing else happens. The system appears unresponsive (Ctrl-Alt-Del doesn’t work).
But the same qemu command on my MacBook Pro (x86_64) host works as expected: Windows launches, I can ping things, etc.
Steps to reproduce
- On an Apple M1 system, launch qemu > 7.1.0 with a
-device pcnet
attached. - Install Windows for Workgroups 3.11, and install the AMD PCNET driver.
- Reboot.
- Launch
win.com
and notice that it hangs after the splash screen.
Additional information
I mention AMD PCNET, but it seems that any NIC I tried is affected. So far I tried ne2k_isa
, ne2k_pci
, rtl8139
, pcnet
.
On my M1 Pro, I compiled every minor qemu version from 6.2.0 to 10.0.2, plus the qemu.git master from today (9 June 2025), and tested.
- Working versions: 6.2.0, 7.0.0, 7.1.0
- Non-working versions: 7.2.0, 8.0.0, 8.1.0, 8.2.0, 9.0.0, 9.1.0, 9.2.0, 10.0.0, 10.0.2, qemu.git master
I didn’t test as extensively on my (working) MacBook Pro, but I can confirm that at least 9.2.0 works.
The changelog for 7.2.0 suggests some TCG changes were made which could be implicated, but I don’t know enough to understand whether it’s really the cause.
A working example from 7.1.0 (ignore the SVGA artifacting, I think it’s already fixed in some later release):
I’m happy to do any other testing/diagnostics as required. And I can provide the qcow2 image if that would cut down on testing time.
(And yes, while this is a bit “niche”, affecting an ancient version of Windows, I figured it was still worth reporting in case it impacted anything else negatively, especially as it’s easy to reproduce.)