macemu icon indicating copy to clipboard operation
macemu copied to clipboard

BasiliskII and SheepShaver for macOS freeze during restart

Open RonaldPR opened this issue 2 years ago • 13 comments

I made and tried new builds from both BasiliskII and SheepShaver for the new feature where an available Startup.wav file would also play at restart of the emulated machine. When I try the new builds, the startup sound plays alright, but both BasiliskII and SheepShaver freeze during restart at the point where the Finder should appear.

I then tried my previous builds. Again, both BasiliskII (1 August 2021) and SheepShaver (24 January 2022) froze at the same point during restart.

I do not often restart the emulators, I usually shut down and launch the emulator again. But I cannot imagine how I could not have noticed this behaviour before with the previous builds.

Could this be related to changes in macOS Monterey updates? Now on version 12.4.

Edit: This behaviour is both with and without a Startup.wav file present.

RonaldPR avatar Jun 25 '22 15:06 RonaldPR

Not reproduced. macOS Monterey 12.4 SDL 2.0.22

kanjitalk755 avatar Jun 26 '22 01:06 kanjitalk755

Also macOS Monterey 12.4 and SDL 2.0.22 here.

I tried starting and restarting SheepShaver and BasiliskII numerous times, without a Startup.wav file available.

I tried with different settings in the prefs files. I tried after deleting the .basilisk_ii_xpram and .sheepshaver_nvram files. I tried after restarting my M1 iMac.

Nothing I tried made a difference.

Starting and then using the emulators works fine each time, but restarting does not. Both SheepShaver and BasiliskII behave inconsistent.

In SheepShaver (MacOS 9.0.4) restarting does work occasionally, but mostly the startup process stops when the Finder should load and a forced shutdown is the only way out. At one occasion the Finder loaded only partially, only some files and folders appeared.

In BasiliskII (System 7.5.5) I never could make a restart work. Sometimes BasiliskII froze at the point where the Finder should load, sometimes BasiliskII crashed at the point where the Finder should load, and sometimes a system error occurred at that very point in the startup process. See image.

Schermafbeelding 2022-06-26 om 09 53 13

RonaldPR avatar Jun 26 '22 15:06 RonaldPR

I do not know if this is of any help:

ID=08 Trace Mode Error A programmer can use a runtime debugger while in Trace mode. This allows tracing through a program one instruction at a time. You see this error if a debugger isn't installed and the 68000 is accidentally placed in Trace mode.

RonaldPR avatar Jun 26 '22 15:06 RonaldPR

What happens if you remove all HDDs and mount only MacOS installation ISO, and restart?

kanjitalk755 avatar Jun 27 '22 00:06 kanjitalk755

With only a MacOS installation CD image, restarting SheepShaver works fine. The same with BasiliskII when started from a DiskTools_macOS8 floppy image.

I have a whole collection of rarely used .sheepvm VMs with different installed System/MacOS versions. Restarting fails with all of those VMs.

RonaldPR avatar Jun 27 '22 10:06 RonaldPR

Did a clean MacOS 9 installation. Restarting fails.

RonaldPR avatar Jun 27 '22 11:06 RonaldPR

I also tried a clean install of MacOS 9.0.4, and was able to restart without any problems.

kanjitalk755 avatar Jun 27 '22 14:06 kanjitalk755

Some observations regarding a Windows build from the latest code: I can restart SheepShaver several times when booted from CD image (9.0.4) in combination with the old world rom. With the new world rom restart fails.

Restarting from the same CD image fails when a new hard disk with freshly installed Mac OS 9.0.4 from that CD image is present. Repeatedly booting and restarting from the HD image only (with old world rom) seems to work.

When booting and restarting directly after deleting the SheepShaver_nvram.dat the nvram file is not written. It is only written at shut down.

cat7 avatar Jun 28 '22 12:06 cat7

I spent all day trying.

I have dozens of installations, with different System/MacOS versions in both BasiliskII and SheepShaver, some used regularly some used rarely.

BasiliskII All my existing installations in BasiliskII will start up fine and can be used normally, but none can be restarted. However, a fresh 7.5.3 installation can so far be restarted again and again.

SheepShaver All my existing installations in SheepShaver will start up fine and can be used normally, but with all a restart only occasionally succeeds. A fresh 9.0.4 installation could be restarted the first time but after that a restart will work sometimes and sometimes not, just like with my existing installations.

All failing restarts in both BasiliskII and SheepShaver fail at the very moment the Finder should be loaded. The startup process stops and the emulator freezes, or the emulator crashes, or (in BasiliskII) a system error occurs, or (in SheepShaver) the Finder starts loading and crashes before all icons have appeared.

I considered location or content of the shared folder (extfs) as a possible cause, but I could not find any relation with different locations or content.

RonaldPR avatar Jun 28 '22 15:06 RonaldPR

In tried the old world rom, but it does not make any difference.

RonaldPR avatar Jun 28 '22 18:06 RonaldPR

Reproduced that it freezes when I restart using the New World ROM. This was also reproduced in SheepShaver_UB_20140201. We may need to patch the New World ROM for use with SheepShaver. I'm not familiar with the inside of Classic Mac OS, so it's hard to fix.

Do not restart the emulator, but quit and rerun it instead.

kanjitalk755 avatar Jun 29 '22 00:06 kanjitalk755

I will stop trying different configurations to find any consistent behaviour that could point to a possible cause.

  1. This issue is indeed not introduced recently. Older universal builds, both BasiliskII and SheepShaver, behave the same, at least on my M1 iMac with macOS 12.4 (Monterey).

  2. I rarely restart the emulated machines, I usually shut down and start again. Maybe I found the issue just now because I was trying the startup sound playing at a restart.

  3. With all my SheepShaver setups, old and recent, a restart sometimes fails and sometimes succeeds, with both new world and old world roms.

  4. With all my existing BasiliskII setups, a restart always fails.

  5. When a restart fails, it is at the point in the startup process where the Finder should start to load or sometimes halfway the Finder loading.

  6. When the restart fails, the emulator freezes, or the emulator crashes, or (in BasiliskII) a system error occurs.

  7. All my SheepShaver and BasiliskII setups start up fine and run without issues otherwise.

RonaldPR avatar Jun 29 '22 18:06 RonaldPR

Improved stability during reboot (except for SheepShaver and New World ROM combinations).

kanjitalk755 avatar Dec 17 '23 00:12 kanjitalk755