Comment by thristian
1 day ago
For some context about why a portable, user-friendly, hardware-level emulator for classic Mac systems is such a big deal, see this blog post from 2020: https://invisibleup.com/articles/30/
For game consoles, we've had emulators like Nestopia and bsnes and Dolphin and Duckstation for years.
For PCs, virtualisation systems like VMWare and VirtualBox have covered most people's needs, and recently there's been high-fidelity emulators like 86Box and MartyPC.
The C64 has VICE, the Amiga has WinUAE, even the Apple II has had high-quality emulators like KEGS and AppleWin, but the Mac has mostly been limited to high-level and approximate emulators like Basilisk II.
In compatibility, it's MUCH worse than all the others, but there's also Executor: https://en.wikipedia.org/wiki/Executor_(software) which you can use to run a Macintosh version of solitaire in your browser by having the browser emulate MS-DOS which then runs Executor/DOS: https://archive.org/details/executor
In addition to Executor/DOS, a non-released version ran on the Sun 3 workstations (they too had 680x0 processors) and Executor/NEXTSTEP ran on NeXT machines, both the 680x0 based ones and the x86 powered PCs that could run NEXTSTEP.
Executor was the least compatible because it used no intellectual property from Apple. The ROMs and system software substitutes were all written in a clean room--no disassembly of the Apple ROMs or System file.
Although Executor ostensibly has a Linux port, it's probably hard to build (I haven't tried in a couple decades) in part because to squeeze the maximum performance out of a 80386 processor, the synthetic CPU relied on gcc-specific extensions.
I know a fair amount about Executor, because I wrote the initial version of it, although all the super impressive parts (e.g., the synthetic 68k emulator and the color subsystem) were written by better programmers than I am.
Thank you so much for Executor. I used to run it on my 486 Linux box, over an X11 SSH tunnel to the Sun workstation I used in the computer labs for work on campus. I balanced my checkbook and wrote essays in emulated Excel and Word (with rough compatibility with the Windows versions). It was so cool to be able to mix and match systems that way.
I had a licensed copy of Executor back in the mid-90s. It was the coolest thing ever. Thanks for being one of my inspirations to go into software development.
https://github.com/autc04/executor is a more recent fork of executor (but based on the issues, it does build on recent OS)
typo: does NOT build on recent OS
When I was starting out in the 90s, Executor was one of those very cool pieces of software I would love to play around with.
That article is objectively true but .. I've never seen such a grotesque dismissal of the hard work people have done for free.
I feel like that’s a bit harsh, but I’ll admit that it is needlessly inflammatory. I wasn’t in the best state mentally when I wrote that. (I do sometimes worry that I’m responsible for the disappearance of Paul C. Pratt…) At some point I need to either rewrite it to be less hostile or just yank it entirely.
Update: Now that I'm off work, I’ve removed the big rant about mini vMac’s code and sanded off the snark from the rest. I should have done this years ago, and I never should have added that in the first place.
I stopped reading when we got to sarcastic hate-compiling. That whole part could be a thoughtful and compassionate discussion of the state of Mac emulators, and would be much more persuasive if it were, and instead it reads like a blog-length dunk tweet.
> I feel like that’s a bit harsh, but I’ll admit that it is needlessly inflammatory.
You're asking for a courtesy here that you failed to extend to others.
When you write a hit piece on someone's hobby volunteer code, and then you get called out for being unduly mean, I don't think you get to complain people are being harsh to you. You chose to devote hours of your time to dismantling something someone put years of effort in, entirely as a fun hobby. (Antique Mac emulation is certainly not the highway to riches.) You say 'inflammatory', like the issue here is that you're slightly heated and passionate. No, the issue here is that the piece boils down to bullying other people because their fun hobby projects don't meet your esoteric standards ('no Github releases!').
> I wasn’t in the best state mentally when I wrote that. (I do sometimes worry that I’m responsible for the disappearance of Paul C. Pratt…)
Nothing about your mental state gives you licence to bully others. Their emotional states are no less important than yours.
1 reply →
For the amount of time and effort that went into that article, the author could surely have fixed at least one of the things they complain about! And they don't seem to understand the C #include mechanism at all, so should we even pay attention to their technical criticisms in the first place?!
I don't know if you read the whole article. The author did make a Mini vMac fork to clean up the build system and code, she linked it at the end. https://github.com/InvisibleUp/uvmac .
4 replies →
I managed to get the Macintosh II FDHD emulator to boot, but the emulator menu only invites me to load 400K/800K floppies despite the Snow manual claiming that the Mac II FDHD emulator provides two SuperDrives https://docs.snowemu.com/manual/media/floppies . Maybe that has something to do with why the system has immediately ejected every floppy image I've given it so far, including 800K System 7.1.1 disks which are supposedly Mac II compatible. I'm sure that Snow has a great deal of promise and I salute the hard work, but to be honest, so far the overall landscape of Mac emulation seems much the same as before, with n emulators offering a jagged product matrix of emulated hardware and supported features; lots of hoop-jumping and necessary, assumed prior knowledge of old Mac plumbing; and promises for the future.
It might not count as "user-friendly" but MAME does hardware-level emulation of the Macintosh and Apple II (more accurate and more peripherals but less user friendly than KEGS and AppleWin).
Not to be forgotten: MAME supports the 68k macintoshes to some extent
https://wiki.mamedev.org/index.php/Driver:Mac_68K
Note that while this was true about software, there is also hardware (FPGA HDL), such as the MacPlus-miSTer core[0].
0. https://github.com/MiSTer-devel/MacPlus_MiSTer
there's definitely room to improve user friendliness of mac emulation (minivmac's compile time config is so infuriating), but I think it's a bit unfair to compare to most of those emulators
vmware and virtualbox were backed by billion dollar corps
the 16 bit machines are much simpler than macs
game consoles had highly homogenous well documented hardware, and sold in much greater numbers (snes alone sold more than all macs from 1987 to 1995) so there's a larger community to draw devs and users from. writing a nes emulator is almost a weekend project now, it's so documented.
It should be pointed out that VMware started as a tiny, scrappy company mostly focused on selling workstation seats for you to run Windows on your Linux computer (which I did back circa 1999, so I could use Linux on my desktop), and VirtualBox started out from InnoTek, a tiny company which was essentially making software to emulate Windows on OS/2, and then later did a contract with Connectix to run OS/2 on Windows (or other hosts) using Virtual PC.
Connectix got bought by Windows, and InnoTek got bought by Sun, which is now Oracle. Connectix themselves started as a scrappy outfit making it possible to run DOS/Win95 on a Mac.
The core emulation was pretty much done and stable and optimised before the billion-dollar corps bought them out.
vmware apparently had 20 employees in year one, I don't think a single person has ever worked full time on a mac emulator (other than Apple's internal ones, of course)
even a "tiny, scrappy company" has massive manpower compared to 99.999% of open source projects
You forgot miniVMAC, 68k. Qemu does MacPPC fine.