Posted by ColinWright 5 days ago
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 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.
> 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.
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.
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.
even a "tiny, scrappy company" has massive manpower compared to 99.999% of open source projects
It's a shame that Basilisk - possibly owing to its inaccurate but killer features - is as janky as it is, because it's really remarkably pleasant to use when it works.
For earlier models, there are unused apertures in model memory maps that are at least 2KB large, but they do differ between models.
These seem to work:
https://archive.org/details/mac_rom_archive_-_as_of_8-19-201...
I try to run some of them, e.g. Macintosh Plus. It does accept the ROM, but it just shows a flashing floppy disk icon and doesn't do anything else. How could this be fixed?
Apps on Macintosh were supplied as disk images often compressed in hqx formats. You'll need PC Exchange and StuffIt Expander - think of those as equivalents of a file extension renaming tool, and 7-zip.
Installation of apps was often accomplished by dragging and dropping the application icon from installer image to Applications folder, although some did came with Windows-like installer apps.
Unmounting disks and installer images was done by moving disk icons to Trash(recycle bin). It's the most intuitive and straightforward feature of classic MacOS, followed by "Shut down" menu being under "Special".
https://www.gryphel.com/c/minivmac/start.html has some links.
My father used an external hard drive with his Mac Plus, back in the day.
It would probably be easier to crack the software!
[1]https://en.wikipedia.org/wiki/File:Apple_Keyboard_II.jpg
[2]https://www.cnet.com/tech/computing/hack-your-old-macs-adb-k...
https://github.com/gblargg/adb-usb
Unfortunately it's US-ANSI only so my pile of 4 french canadian AEK2s don't work very well with it.
It's one of the most convenient ways to get arbitrary-sized disk images both into emulators -- both Mac emulators and physical floppy emulators.
It's why the cursor stops moving sporadically when writing to a disk. The Mac has a 60 Hz interrupt timer that also tracks the cursor. It needs to be switched off when writing.
There's a story on Folklore.org by Andy Hertzfeld that mentions it in passing:
> Woz's disk technology required that the software feed it new data every 32 microseconds exactly. If we were even a single microsecond early or late, it would cause a glitch in the data and ruin it. In order to write the routines, I needed to know how fast the Macintosh executed each instruction. The manual gave the number of clocks for each instruction, but I wasn't sure how long it took to fetch from memory. So of course, I asked Burrell what the timings were, but I was surprised at his response.
> "I don't know. The Mac is synchronous, just like the Apple II, so each instruction has the same timing, every time you execute it, so you will be able to write disk routines that have exact timing. I don't know what it is, so we'll just measure it. Why don't you write your routine and we'll measure it with the logic analyzer."
-- https://www.folklore.org/Nybbles.html
This reminds me that all of the unusual Apple II disk stuff like spiral tracks and different-sized sectors and different nibbilization schemes were also, at least theoretically, possible on the Mac. I wonder if they were ever used for copy protection?
http://www.mac.linux-m68k.org/devel/plushw.php:
“The Macintosh disk interface uses a design similar to that used on the Apple II and Apple III computers, employing the Apple custom IWM chip. Another custom chip called the Analog Signal Generator (ASG) reads the disk speed buffer in RAM and generates voltages that control the disk speed. Together with the VIA, the IWM and the ASG generate all the signals necessary to read, write, format, and eject the 3 1/2-inch disks used by the Macintosh.”
Any chance this could be made to emulate an Atari ST?
And there's also Clock Signal (CLK) "A latency-hating emulator of: the Acorn Electron and Archimedes, Amstrad CPC, Apple II/II+/IIe and early Macintosh, Atari 2600 and ST, ColecoVision, Enterprise 64/128, Commodore Vic-20 and Amiga, MSX 1/2, Oric 1/Atmos, early PC compatibles, Sega Master System, Sinclair ZX80/81 and ZX Spectrum." https://github.com/TomHarte/CLK