24

I'm currently using the absolutely ancient "Fusion" emulator to emulate a 68k Macintosh (specifically, a Quadra 700), but it only runs under MS-DOS, so I'm using a VirtualBox VM to emulate that. I'd like to eliminate one layer of emulation.

Features that I'm looking for:

  • Emulate a 68040-series Mac
  • Runs under Linux
  • Some way to transfer files to/from the host OS (shared folders, emulated network drive, FUSE filesystem module, whatever)

Nice to have:

  • Support for Fusion hard-drive images
  • Virtual CD-ROM drive supporting ISO images
  • CD-ROM passthrough to access an actual CD-ROM drive
  • Support for Ethernet networking

It doesn't matter if it requires a ROM image or has a re-written ROM: I've got dumps from the aforementioned Quadra and a Performa 630 that I can use if needed.

  • 2
    One of the reasons for asking this question is to see what sort of software recommendation questions are on-topic here, so if you vote to close, please leave a comment here or on this meta thread. – Mark Apr 22 '16 at 4:38
  • 2
    I continue to be disappointed by the generally poor quality of Mac emulators. Most only emulate extremely early Macs, with the exception of Basilisk, which I've had enough problems with not to trust it. SheepShaver was amazing on BeOS but it's incredibly unstable on Mac OS X and has not been progressing very quickly. – Eric Shepherd Apr 26 '16 at 1:51
  • Actually I find it quite impressive that a 68k Mac-emulator even exists, and consider myself lucky to have found a combination that works well. Also running MS-DOS on a modern PC is more a matter of providing an environment while the code runs natively, than emulating everything. – Thorbjørn Ravn Andersen Feb 12 '17 at 17:17
  • 1
    In your emulated Quadra, you should emulate an Amiga that then emulates a C64. – cbmeeks Jul 20 '17 at 18:33
21

Preface

As Stephen rightly points out in his comment, SheepShaver only emulates PowerPC, and so it is not a valid suggestion for your 68K-based question. From SheepShaver's home page

However, you still need a copy of MacOS and a PowerMac ROM image to use SheepShaver.

If you attempt to use a 68K based ROM, with SheepShaver, then you should get the error:

Invalid ROM file size. SheepShaver requires a 4MB PCI PowerMac ROM.

as shown in one of the dialogs in the screenshots below.


Answer

SheepShaver and BasiliskII both work on Linux and should support your requirements.

To quote the specifications of each emulator respectively:

Some of SheepShaver's features

  • Runs MacOS 7.5.2 thru 9.0.4. MacOS X as a guest is not supported.
  • Color video display
  • CD quality sound output
  • Access to floppy disks, CD-ROMs and HFS(+) partitions on hard disks
  • Easy file exchange with the host OS via a "Host Directory Tree" icon on the Mac desktop
  • Internet and LAN networking via Ethernet
  • Serial drivers
  • SCSI Manager (old-style) emulation

and

Some features of Basilisk II

  • Emulates either a Mac Classic (which runs MacOS 0.x thru 7.5) or a Mac II series machine (which runs MacOS 7.x, 8.0 and 8.1), depending on the ROM being used
  • Color video display
  • CD quality sound output
  • Floppy disk driver (only 1.44MB disks supported)
  • Driver for HFS partitions and hardfiles
  • CD-ROM driver with basic audio functions
  • Easy file exchange with the host OS via a "Host Directory Tree" icon on the Mac desktop
  • Ethernet driver
  • Serial drivers
  • SCSI Manager (old-style) emulation
  • Emulates extended ADB keyboard and 3-button mouse
  • Uses UAE 68k emulation or (under AmigaOS and NetBSD/m68k) real 68k processor

As an aside

I actually answered a Quadra 650 emulation related question, a while back, although it was for Windows, on SuperUser. I have just spent the last hour trying to find/recover it, after the OP, who asked the question, has subsequently deleted the question. I have reproduced the question and answer below - hopefully it could be useful, in case any stumbling blocks are encountered.

Original Question

BasiliskII and SheepShaver can't open quadra650.rom

I was thinking I could run Mac OS 7.5.5 on vMac with color but no it won't work with color only OS can run. I thought it would work if I use BasiliskII but when I assemble the ROM, SDL.dll and the other stuff, I got an error about the ROM: "Cannot open ROM file." The same thing happened with SheepShaver.

This is very huge problem and I don't know how I can fix it. On forums it said quadra650.rom will work but I tried and nothing special, I got the same error. I opened both BasiliskII and SheepShaver and I took a screenshot for you guys to know tell me what's going on?

enter image description here

I got the disk image from youtube - Tour of Mac OS 7.5.5 with color + games (with download links). Read the description for .dsk file.

My Answer

Tackling Basilisk II and SheepShaver in turn...

Basilisk II

I've managed to reproduce your error, using a Quadra 650 ROM file from a tutorial on RedundantRobot.

The issue is that you need to specify to the emulator where the ROM file is located. Just dropping it in the same directory is not sufficient.

From the BASILISK II readme, the rom preference is defined below:

rom

This item specifies the file name of the Mac ROM file to be used by Basilisk II. If no "rom" line is given, the ROM file has to be named "ROM" and put in the same directory as the Basilisk II executable.

So the easiest option, without requiring you to modify the preferences file, in the Basilisk II directory, rename the ROM file, from quadra650.rom to just ROM.

Rename file to ROM

Or, you could edit the preferences file, by opening the file, BasiliskII_prefs, in notepad (as here is no GUI preferences dialogue) and add

rom C:\<your path>\quadra650.ROM

for example,

rom C:\Users\davinci\Basilisk\BasiliskII_20-02-2015\quadra650.ROM

If your disk is specified corectly then the virtual mac should now boot.

Booted MacOS

Otherwise, you would end up with this (and you may need to use Task Manager to end the Basilisk II process as the window may refuse to close and kill the application):

No disk defined

This is because the same path issue occurs with the disk image, and you may need to specify the path to the disk image in the preferences file. Again from the BASILISK II readme, the disk preference is defined:

disk

This item describes one MacOS volume to be mounted by Basilisk II.
There can be multiple "disk" lines in the preferences file. Basilisk II can handle hardfiles (byte-per-byte images of HFS volumes in a file on the host system), HFS partitions on hard disks etc., and MacOS-partitioned disks (it can only access the first partition, though). The "volume description" is either the pathname of a hardfile or a platform-dependant description of an HFS partition or drive. If the volume description is prefixed by an asterisk ("*"), the volume is write protected for MacOS.

Basilisk II can also handle some types of Mac "disk image" files directly, as long as they are uncompressed and unencoded.

BeOS: To specify an HFS partition, simply specify its path (e.g. "/dev/disk/scsi/0/1/0/0_3"). If you don't specify any volumes, Basilisk II will search for and use all available HFS partitions.

Unix: To specify an HFS partition, simply specify its path (e.g. "/dev/sda5"). If you want to access a MacOS-partitioned hard disk or removable volume (Jaz, Zip etc.) and your operating system doesn't understand MacOS partition tables, you can specify the block device name (e.g. "/dev/sda") to access the first HFS partition on the device. Under Linux, if you don't specify any volumes, Basilisk II will search /etc/fstab for unmounted HFS partitions and use these.

AmigaOS: Partitions/drives are specified in the following format: /dev/<device name>/<unit>/<open flags>/<start block>/<size>/<block size> "start block" and "size" are given in blocks, "block size" is given in bytes.

Windows: To define a logical volume (Windows NT only), specify its path (e.g. "c:\"). To define a physical volume (NT and 9x), additionally give the "physical" keyword (E.g. "physical c:\"). For safety reasons, volumes are mounted as read-only. This is due to the bugs in PC Exchange. If you don't specify any volume, the files *.hfv and *.dsk are searched from the current directory. Note that in this case, Basilisk II tries to boot from the first volume file found, which is random and may not be what you want.

So add the line

disk C:\<path>\boot.dsk

for example,

disk C:\Users\davinci\Basilisk\BasiliskII_20-02-2015\boot.dsk

to the preferences file, where path is your path to the Basilisk directory, and rename the System 7.5.5 Boot.dsk file to just boot.dsk

Rename disk image file

The renaming of the file to something simpler is not be strictly necessary but removing the spaces reduces the chance of the file not being recognised or found. The following line does work though, as Basilisk II handles the spaces in filenames without an issue:

disk C:\Users\davinci\Basilisk\BasiliskII_20-02-2015\System 7.5.5 Boot.dsk 

SheepShaver

I've managed to reproduce your error, using a New World PPC ROM file from a tutorial on RedundantRobot. [Edit: This is because SheepShaver does not support 68K Mac emulation]. If you attempt to use the Quadra 650 ROM file, that you used for Basilisk II, then you will get the following error:

Wrong ROM file - Quadra 650 ROM is incompatible

Copying in the correct New World PPC ROM file is not sufficient, as you will get the following error:

newworld86.rom file needs to be renamed to ROM

If you rename the file to just ROM, again without any file extension, then SheepShaver will run, as desired.

  • 1
    You might want to mention that SheepShaver emulates PowerMacs, not 68k Macs. – Stephen Kitt Apr 22 '16 at 10:58
  • @StephenKitt - Whoops! Err... yes, you are obviously correct, and that would explain a number of issues I've been experiencing over the past year and that I never quite resolved. That's for pointing that out (and clarifying it)... – Greenonline Apr 22 '16 at 12:26
  • 2
    SheepShaver also runs on MacOS X, where it is very useful on Intel Macs which can't run Classic. – Michael Shopsin Apr 22 '16 at 16:08
  • 1
    This is a rather Windows-centric answer for a Linux-centric question. – Tim Locke Jun 24 '16 at 21:50
  • 1
    90% of this post is completely unrelated troubleshooting (and all of this is covered in the documentation). – Rico Pajarola Dec 22 '16 at 11:42
18

Basilisk II works well on Linux (it's even packaged for Debian) and provides most of the features you're looking for. I know I've used the following:

  • 68040 emulation;
  • host filesystem access inside the emulator;
  • pass-through networking.

I believe it also supports pass-through CD-ROM access, and possibly ISO-image-based CD-ROM emulation.

5

There are some other emulators that might work better than Basilisk II depending on what exactly you need.

Cockatrice is a fork of Basilisk II. It has better networking, sound, and support for SCSI disks, but is missing some other features (don't know which ones) because it's based on an old version of Basilisk II. Like Basilisk II it does not emulate most of the hardware, but relies on ROM patches.

PCE can emulate a Mac 128K/512K/Plus/SE or Mac Classic, but not a Quadra.

MESS can also emulate a various models (including Mac IIci and LCIII) but again not the Quadra.

Mini vMac emulates a Mac Plus and Mac II. It emulates all hardware except for the floppy drive.

Shoebill emulates enough of a Mac II to run A/UX (it does not run Mac OS).

PCE, MESS, and Mini vMac have more faithful emulation than Basilisk or Cockatrice, but they don't emulate later models. Shoebill was specifically made to run A/UX and doesn't run anything else.

  • [url=gryphel.com/c/minivmac/]Mini vMac[/url] can emulate most of a IIx, but its networking isn't there – scruss Dec 21 '16 at 3:29
  • Yeah, forgot about that one. Btw it doesn't emulate a Mac IIx, only a Mac Plus. I'll add it to the answer. – Rico Pajarola Dec 22 '16 at 11:26
  • correction: it seems there is some preliminary support for the Mac II, and there is a lot of active development going on, but they didn't update the documentation ;) – Rico Pajarola Dec 22 '16 at 11:35
  • the Mac II support is more than preliminary, and works rather well, within limits (no MMU, 68020 instructions but 68000-ish timings). Only supports 8 MB of emulated RAM, though. SuperDrive floppies also work on Linux, but only raw images via the hardware device, so it's hardly convenient or fun – scruss Dec 22 '16 at 15:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.