Apple System 7… On Solaris?

While the Unix operating systems Solaris and HP-UX are still in active development, they’re not particularly popular anymore and are mostly relegated to some enterprise and data center environments They did enjoy a peak of popularity in the 90s during the “wild west” era of windowed operating systems, though. This was a time when there were more than two mass-market operating systems commercially available, with many companies fighting for market share. This led to a number of efforts to get software written for one operating system to run on others, whether that was simply porting software directly or using some compatibility layer. Surprisingly enough it was possible in this era to run an entire instance of Mac System 7 within either of these two Unix operating systems, and this was an officially supported piece of Apple software.

The software was called the Macintosh Application Environment (MAE), and was an effort by Apple to bring Macintosh System 7 applications to various Unix-based operating systems, including Solaris and HP-UX. This was a time before Apple’s OS was Unix-compliant, and MAE provided a compatibility layer that translated Macintosh system calls and application programming interfaces (APIs) into the equivalent Unix calls, allowing Mac software to function within the Unix environments. [Lunduke] outlines a lot of the features of this in his post, including some of the details the “scaffolding” allowing the 68k processor to be emulated efficiently on the hardware of the time, the contents of the user manual, and even the memory management and layout.

What’s really jarring to anyone only familiar with Apple’s modern “walled garden” approach is that this is an Apple-supported compatibility layer for another system. At the time, though, they weren’t the technology giant they are today and had to play by a different set of rules to stay viable. Quite the opposite, in fact: they almost went out of business in the mid-90s, so having their software run on as many machines as possible would have been a perk at the time. While this era did have major issues with cross-platform compatibility, there was some software that attempted to solve these problems that are still in active development today.

Thanks to [Stephen] for the tip!

17 thoughts on “Apple System 7… On Solaris?

    1. The SoftPC core also was used to power NTVDM on RISC versions of Windows NT (PPC, MIPS, Alpha etc). It initially started at 80286 level, too. On Windows NT 4 and up it got 80486 level compatibility, if memory serves.

      It may sound limited, but an 80286 instruction set was good enough for most DOS and Windows applications.
      On an 80286, Windows 3.x could run in Standard-Mode already, along with a functioning sound system, DDE, COM etc.

      SoftPC also spun off into SoftWindows, which was bundled with Windows 3.1 at first.
      The original release was available for M68k, too, if memory serves.

    2. I remember there also was ‘Wabi’, which ran the Windows 3.1x Enhanced Mode kernal on top of *nix.
      It was available with some versions of Solaris, too, I think.
      Not sure if it ever was bundled with a CPU emulation core, though.

          1. WABI trapped the windows 16 bit API calls and handled them via SPARC Solaris code that made Solaris system calls. I ran WABI on Solaris 2.5 and 2.5.1 for a couple of years. It was good enough to run Word and Excel.

            You could install WABI and run windows programs without ever sticking a windows installation disk in the machine. Sun provided a couple of SPARC Solaris applications that looked enough like Program Manager and File Manager to keep people happy. But the important part is that they trapped the calls and would run well-behaved applications in a 100% Microsoft-free manner. Important for Sun at the time, evidently. I heard stories about mailing them .doc files and having them ask if you could send .rtf or flat text instead. :-)

            Had Sun been able do that for Win32, they’d probably still be here today.

        1. “WABI was essentially a proprietary WINE and could run _some_ Win16 apps _without any Windows code_.”

          Maybe there’s a misunderstanding?

          Maybe there were two different versions.
          One which didn’t require Windows system files and one that did?

          An article/advertisement about “Wabi 1.1 for AIX” says:

          “Wabi 1.1 for AIX is a technology licensed by IBM from SunSelect. It allows users to run off-the-shelf Wabi-certified Microsoft Windows applications on AIX/6000-based workstations, usually without MS-DOS or Microsoft Windows.”

          Source: http://ps-2.kev009.com/rs6k-austin.ibm.com-1996/wwabissf.html

          That’s interesting, because Windows 3.1was available by IBM, too, because of a license agreement with Microsoft.

          Also, the screenshots show Program-Manager and the Windows Accessories.
          How can they be there, if nothing original was being used? 🤷‍♂️

          Then there’s also Caldera Wabi, for Linux..

          https://everythinglinux.org/wabi/wabi_content.html

          It seems to ask for Windows 3.1 files during installation.
          Anyway, maybe that’s a different version of Wabi technology, not sure. Maybe there are further versions, too. To be honest, I don’t know for sure. 🙁

          To be fair, documentation on the web could be better, also.
          But given that the product wasn’t very mainstream, it’s understandable that it’s in the state it is.

  1. I dream about shift mac os 7 to open source similar Blender Fundation. Whole system, compilers , design etc.
    This will be great run this system on microcontrolers like esp or teensy

  2. There are other ways to do this than SheepShaver, great as it is.

    Users of modern macOS can use UTM, which can run Classic MacOS on both x86-64 and Arm64 Macs. I wrote about it here:
    https://www.theregister.com/2023/09/29/utm_apple_hypervisor_foss_fest/

    Non-macOS users can run Classic under QEMU with a bit more work.
    https://wiki.qemu.org/Documentation/GuestOperatingSystems/MacOS9

    ARDI Executor is FOSS now:
    https://en.wikipedia.org/wiki/Executor_(software)

    And there’s the Advance Mac Substitute:
    https://www.v68k.org/advanced-mac-substitute/

    And of course there is the amazing Infinite Mac:
    https://infinitemac.org/

  3. I’d played with MAE under Solaris 7 under QEMU before, but back in March I got it up and running on a genuine HP Apollo 9000 735 PA-RISC Workstation running HP-UX 10.20 I had finished repairing shortly before.

    https://pappp.net/?p=59114

    There is a little bit of “license shenanigans” required to get MAE up and running these days, but copies of the software are pretty easy to find, and it just takes a little close reading to figure out some known-good keys.
    It’s also not terribly performant, even on a machine easily 4-5x as powerful as 68k hardware that could comfortably run System7. But it sure is neat. I have a general love for machines with bonus environments, so it makes a nice compliment to the PowerMac 6100/66 DOS (with a whole-ass 486 system on a nubus card) and Mac LC with a IIe PDS card that it usually shares a shelf with.

    1. What would be a neat trick is using a PCIe to PCI adapter to run one of the older OrangePC cards in a post-Intel Macintosh.

      The last models from OrangePC were mainly a CPU on a PCI card, with other functions of the PC emulated. Prior to that change, they were a complete PC on a card with its own RAM, sound, etc. IIRC OrangePC was making them back in the NuBus years.

      Of course Apple’s switch to Intel PCs soon led to the demise of OrangePC. They couldn’t stay in business with other PCI cards, peripherals, and accessories. They *could* have made some coin for a while if they’d made a USB 2.0 card with drivers for Mac OS 8.1 through 9.22 but like every other company making stuff for Mac at the time – flat out refused to do it.

      Why hasn’t someone looking for a retrocomputing project taken on USB 2.0 support for the Classic Mac OS? There was a guy who very likely could have done it, the author of USB Overdrive, but even he was completely uninterested. Everyone with an old PowerMac that can’t run OS X has been stuck with no faster than USB 1.1.

      What is with the apathy towards doing stuff Apple failed to provide? Apple says no and everyone says “Yes, master. We shall not.”?

  4. Sun co-founder John Gilmore told me at dinner on Central Avenue in Albuquerque that ~”You want the laziest software implementers for they will get the job done with the least amount of work.”

    That is why Forth used to boot Solaris?

    Apple Open System Boot Architecture still used?

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.