Slashdot Mirror


Emulator Project Aims To Resurrect Classic Mac Apps, Games Without the OS (arstechnica.com)

An anonymous reader quotes a report from Ars Technica, written by Sean Gallagher: Want to be able to run classic Mac OS applications compiled for the Motorola 68000 series of processors on your ever-so-modern Mac OS X machine? Or maybe you'd rather run them on a Raspberry Pi, or an Android device for that matter? There's an emulation project that's trying to achieve just that: Advanced Mac Substitute (AMS). Advanced Mac Substitute is an effort by long-time Mac hacker Josh Juran to make it possible to run old Mac OS software (up to Mac OS 6) without a need for an Apple ROM or system software. Other emulators out there for 64000 Mac applications such as Basilisk II require a copy of MacOS installation media -- such as install CDs from Mac OS 7.5 or Mac OS 8. But AMS uses a set of software libraries that allow old Mac applications to launch right within the operating environment of the host device, without needing to have a full virtual hardware and operating system instance behind them. And it's all open source.

I got a demo of AMS from Juran at Shmoocon in Washington, DC, this past weekend. He showed me an early attempt at getting the game LoadRunner to work with the emulator -- it's not yet interactive. A version of the project, downloadable from Github, includes a "Welcome" screen application (a sort of Mac OS "hello world"), Mac Tic-Tac-Toe, and an animation of NyanCat. Applications are launched from the command line for now and are executed by the emulation software, which interprets the system and firmware calls. Unfortunately, there's still a lot of work to be done. While AMS works on Mac OS X up to version 10.12 -- both on Intel and PowerPC versions of the operating system -- the code currently won't compile on MacOS Mojave. And the Linux implementation of AMS does not yet support keyboard input. I was unable to get the front end to execute at all on Debian 9 on Intel.

74 comments

  1. Re: Sounds gay by Anonymous Coward · · Score: 0

    All I know is we said hello world

  2. so in essence... by newsdee · · Score: 3

    this is Wine for classic Macs?

    1. Re:so in essence... by jfdavis668 · · Score: 1

      Mine?

    2. Re:so in essence... by Alwin+Henseler · · Score: 2

      No, more like Cider.

    3. Re:so in essence... by Anonymous Coward · · Score: 2, Informative

      Sort of... Well, DOSBOX really.

      Except that MacOS is a GUI OS and hence a lot more effort than DOSBOX.

      (DOSBOX is a combination 32 bit x86 processor, MS-DOS and BIOS emulation all combined. Wine doesn't actually include a CPU emulator.) This does, to allow M68k code to run on other chips.

    4. Re:so in essence... by fuzzyfuzzyfungus · · Score: 4, Informative

      Given how much of old-world mac Toolbox behavior was in ROM; and how this project's plan to not require ROM dumps to run(as the current classic macOS options do); it sounds a bit more DOSbox than Wine.

      The project does have to include WINE-style implementations of OS behavior; but much more like DOSbox the relative lack of clean abstraction between the OS and and the lower level platform bits means a need to emulate that aspect as well. There may be bits of WINE that have to lie about a BIOS(I suspect some win32 software freaks out if WMI inquiries related to win32_computersystembios and friends don't produce coherent answers); but the OS and the platform details were much less entangled at that point.

    5. Re:so in essence... by JBMcB · · Score: 1

      Given how much of old-world mac Toolbox behavior was in ROM; and how this project's plan to not require ROM dumps to run(as the current classic macOS options do); it sounds a bit more DOSbox than Wine.

      IIRC The older MacOSes didn't do a whole lot as far as APIs went. There were some menu management routines, printer drivers, networking and some hooks for desktop accessories, but most of the heavy lifting was done by the toolbox. This left more memory for applications and bitmaps, as the old macs were pretty RAM constrained.

      Once the Mac Plus came out and you could have 4MB of RAM, you saw the MultiFinder introduced, and some rudimentary APIs showing up as well.

      --
      My Other Computer Is A Data General Nova III.
    6. Re:so in essence... by Anonymous Coward · · Score: 0

      Vinegar!

    7. Re:so in essence... by Anonymous Coward · · Score: 0

      MultiFinder was a memory hungry CPU hog and wasn't practical to run on floppy-based Macs like the Plus. You really needed an SE or better to make it usable.

      Also, up until System 9, operating system APIs were all implemented as Toolbox functions.

    8. Re:so in essence... by _merlin · · Score: 1

      System 7.1 booted off a SCSI Zip drive is fine on a 2.5MB Mac Plus. A SCSI hard disk is fine, too. It's not like everyone just used the built-in drive.

    9. Re:so in essence... by Mike+Frett · · Score: 1

      Mini VMac already does this, and very well.

    10. Re:so in essence... by ctilsie242 · · Score: 1

      System 6 and earlier did a few tricks to help with memory. Until the Mac //x, they didn't have a PMMU, so normal VM paging didn't work (the Mac // got an upgrade for it eventually.) Pages of the application's code was stored in segments, and each segment was loaded and unloaded, similar to .OVL files in MS-DOS. The QuickDraw routines and the Toolbox did pretty much everything

      Of course, with System 6 came INITs and control panel devices, the closest equivalent these days would be .kext files or Linux kernel modules that would only be loadable during startup. Those provided additional functionality, and some were architecturally ahead of their time.

      I am glad someone is able to emulate QuickDraw and the ToolBox, especially the Desk Accessory functionality. This definitely is a start for a platform that is definitely hard to emulate.

    11. Re:so in essence... by Anonymous Coward · · Score: 0

      > Mini VMac already does this, and very well.

      Mini VMac is an emulator that allows you to run Apple system software, it isn't a replacement for that software.

    12. Re:so in essence... by Anonymous Coward · · Score: 0

      > Also, up until System 9, operating system APIs were all implemented as Toolbox functions.

      Sort of. Strictly speaking, the Toolbox routines were not part of the OS.

      Better to say OS and Toolbox APIs were implemented as A-line traps. $A000-$A7FF for the OS, $A800-$AFFF for Toolbox.

    13. Re:so in essence... by tempmpi · · Score: 1

      Not really. This is just emulating the processor and supporting MacOS system calls but does not emulate any of the Mac hardware other than the processor. This works because MacOS applications do not access the hardware directly but instead use system calls and let the operating system make the changes to hardware registers. DOS Applications on the other hand usually use System calls mainly for disk access but will mostly directly manipulate the video and sound card hardware and also often do things like reading keystrokes directly from the keyboard controller, changing the timer frequency and installing their own interrupt handlers etc. For this reason DOSBox emulates quite a lot of PC hardware beside the CPU.

      --
      Jan
    14. Re:so in essence... by Anonymous Coward · · Score: 0

      This works because MacOS applications do not access the hardware directly but instead use system calls and let the operating system make the changes to hardware registers

      They weren't supposed to, but a lot of them did. What would be ideal is an emulator like Basilisk II with the AMS/Executor calls substituting for a Mac ROM. That way it could be a freely distributable turnkey emulation.

      A lot of people fault the Mac for not having memory protection but IMHO their big mistake was letting user programs run in supervisor mode. They did it because they expected it to always be a single-user, single-tasking system, but all it did was make it crash-prone AF.

  3. Somebody already resurrected the only worthy game by Brett+Buck · · Score: 1

    The Fringe:
    http://www.sealiesoftware.com/...

    I got bored at level 348 with 30+ extra guys left

  4. It's Lode Runner by SlaveToTheGrind · · Score: 1

    And Sean Gallagher was right in the middle of that era, so he can't even play the clueless Millennial card....

    1. Re:It's Lode Runner by cerberusss · · Score: 1

      Indeed, the game is about digging and finding lodes (veins of ore). Though I have to admit, I can't remember it having a real relation to the game itself.

      You'd make your character dig holes in front of him, so as to either thwart the bad guys, or to jump in the hole and escape them. But to my knowledge, you wouldn't collect any ore.

      --
      8 of 13 people found this answer helpful. Did you?
    2. Re:It's Lode Runner by _merlin · · Score: 1

      It might be an unlicensed clone. I remember a widespread LodeRunner clone for classic Macs called "LodeRummer". I wouldn't be surprised if there's one called "LoadRunner" as well.

    3. Re:It's Lode Runner by SlaveToTheGrind · · Score: 1

      Collecting gold was the primary objective of the game (you then had to navigate to the top of the screen after collecting it all). There's a fairly playable emulation of the original Apple ][ version here. One of the best action/puzzle games of its time in my view.

  5. So, kinda like Executor? by Anonymous Coward · · Score: 4, Informative

    Sounds a lot like the old (original?) mac emulator called Executor I used to run some System 6 applications on PC's in the early 90's.

    https://en.wikipedia.org/wiki/Executor_(software)

    1. Re:So, kinda like Executor? by wierd_w · · Score: 3, Informative

      This is exactly what I was thinking. ARDI Executor. I would bet that a good deal of the code could be made use of.

    2. Re:So, kinda like Executor? by Anonymous Coward · · Score: 0

      I got some version of this with a magazine back when I was maybe 13 or 14 years old and managed to play Lemmings. THANKS A LOT for bringing these memories back! :-) I had forgotten what software was that.

      As a sidenote, best Mac 68000 emulation EVER is on the Amiga series of computers. At some point the Amiga was faster running Mac software than real Macs! It looks like now in 2019 there will be a new release of that software optimized for new modern Amiga accelerator cards.

      Computers can be amazing when not used for spying on people or serving ads :-(

    3. Re:So, kinda like Executor? by itomato · · Score: 1
    4. Re:So, kinda like Executor? by Stonent1 · · Score: 1

      It ran extremely well too. I remember playing Star Wars: Rebel Assault in the 1990s on it, I think on a 486 and it had full screen video that didn't play noticeably worse than the 486 version.

  6. There is 20 year old software that does this by Anonymous Coward · · Score: 5, Informative

    A nearly 20 year old piece of software did this. It was called Executor and is now open source in its older iterations.

    https://en.wikipedia.org/wiki/Executor_(software)
    https://github.com/ctm/executor

    1. Re:There is 20 year old software that does this by Anonymous Coward · · Score: 2, Funny

      but they are doing this with the current apple philosophy....

      copy what someone else has done, and make it out like your doing something new

      Full Apple Emulation achieved, then.

    2. Re:There is 20 year old software that does this by OrangeTide · · Score: 3, Informative

      I still use it (on Linux). It works fine. Executor is nice because there is no gray area ROMs to deal with like some of the other emulators. Is it bug-for-bug compatible with particular Apple hardware? No. Does it run most old Mac apps? yes.

      The architecture of their 68K processor emulation is a pretty interesting read, in that it can both interpret instructions or be compiled to do a sort of virtualization by catching instructions natively (like if you want to run Mac on another 68K like an Amiga)
       

      --
      “Common sense is not so common.” — Voltaire
    3. Re:There is 20 year old software that does this by drinkypoo · · Score: 1

      I destroyed a Mac IIci so I don't consider myself to have a ROM problem. And you can download the classic MacOS directly from Apple, so I don't have an OS problem either. So what's the problem?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    4. Re:There is 20 year old software that does this by _merlin · · Score: 1

      Mac system software is only licensed for use with Apple hardware, so even if you're allowed to download it you're still infringing the license if you use it in a different way.

    5. Re:There is 20 year old software that does this by Anonymous Coward · · Score: 0

      Mac system software is only licensed for use with Apple hardware, so even if you're allowed to download it you're still infringing the license if you use it in a different way.

      I plan on running the emulator on my Mac, on my 64000. So NP...

    6. Re:There is 20 year old software that does this by OrangeTide · · Score: 1

      Luckily a license agreement isn't part of the terms of sale, at least in the 1980's and under universal commercial code. The main limitation is in his rights to copy, so he can't duplicate it except for personal use. The ROMs are probably not transferrable to another party once they are outside of the original hardware, but it's hard to say for certain without knowing the case law. (so .. gray area)

      --
      “Common sense is not so common.” — Voltaire
  7. creimer's phat booty makes you go HNNNNNNG! by Anonymous Coward · · Score: 0

    I peed in my own butt. I peed in my own butt! I PEED IN MY OWN BUTT! IN. MY. OWN. BUTT!!!

    - creimer

  8. Long live the classic Mac by human_err · · Score: 2

    I'm really happy to see that the vintage Mac community is alive and active as these machines still have so much creative potential. I restored my Mac SE/30 just in time for the 30th anniversary of its release and have been using it to make pixel art with MacPaint and 8 voice music with Super Studio Session.

    I once had it on the Internet with an Ethernet card on the PDS slot, but ever since the hard drive died, I haven't bothered setting up the Internet connection again because I've discovered that the functional constraints of the system actually encourage me into a focused "flow" experience.

    I hope this new platform eventually supports HyperCard stacks. There's been a nice resurgence thanks for the Internet Archive https://archive.org/details/hy..., and I'd love to distribute some adventure games without using a Javascript virtual machine.

  9. Sean Gallagher is a bad author. by Anonymous Coward · · Score: 0

    Inappropriate use of "ever-so-modern", overuse of "such as", can't spell "Lode Runner". Stop trying to write, Sean. You're not good at it.

  10. Cue Apple cease and desist in 3...2... by elrous0 · · Score: 1

    Because Apple is well-known for being lenient when it comes to their IP.

    --
    SJW: Someone who has run out of real oppression, and has to fake it.
    1. Re:Cue Apple cease and desist in 3...2... by tlhIngan · · Score: 2

      Because Apple is well-known for being lenient when it comes to their IP.

      History doesn't seem to bear that out - ARDI Executor has been around for years SheepShaver and Basilisk II have been left alone for just as long (and they require ROM images).

      Heck, System 7.5 disk images have been freely available off Apple's web site for ages now too.

      The only time Apple's really sued for something like this was when that company was making clones using Hackintoshes. And even then the Hackintosh community was cheering Apple on (turns out they were violating the license of the hackintosh software as well).

      And yeah, Apple's left the Hackintosh community surprisingly alone as well.

  11. SheepShaver by sit1963nz · · Score: 3, Informative

    If you can find some ROM images, sheep shaver works well.

  12. Realmz by 0100010001010011 · · Score: 1

    First Shareware game I ever bought.

  13. Want to be able to run classic MacOS applications? by Anonymous Coward · · Score: 0

    No.

  14. Re:Somebody already resurrected the only worthy ga by bhcompy · · Score: 1

    There are other worthy games, like Escape Velocity.

  15. Hey BeauHD! Please read! by Astroglide++Addict · · Score: 0

    What is your favorite lube when you take it up the bum from your domestic partner down there in Beaverton? Yeah, I saw you two in public. PLEASE say Astroglide gel. Please.

  16. Why re-invent the wheel? by Guspaz · · Score: 3, Informative

    ARDI Executor did this decades ago, building an emulator with a clean-room reverse engineered Mac OS 7 compatibility layer. Nobody has touched it in many years, but after it died off the author released it under the MIT license.

    Wouldn't it make more sense to have modernized and improve Executor rather than starting from scratch?

    1. Re:Why re-invent the wheel? by Anonymous Coward · · Score: 0

      Because that's what the author likes to do. It is probably a hobby project, reading 20+ years old code takes the fun away.

    2. Re:Why re-invent the wheel? by Anonymous Coward · · Score: 0

      Plus 20+ old code might have needed either a large rewrite or an emulator to run anyway.

    3. Re:Why re-invent the wheel? by Anonymous Coward · · Score: 0

      Because of how Executor was written (optimized for speed rather than portability and code quality) modernizing it would involve pretty much a full rewrite, especially the syn68k CPU emulator which can't even be compiled with a recent version of gcc.

  17. Ob by Hognoxious · · Score: 1, Troll

    I was unable to get the front end to execute at all on Debian 9 on Intel.

    A service probably failed to start. Look in the logs fopr something like ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½AÐï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½ï½Iï½ï½Aï½Dï½Eï½Aï½KÐï½6ï½{ï½ï½ï½ï½Nï½ï½ï½fDAï½Iï½ï½Iï½ï½ï½_ï½ï½ï½ï½Hï½\$ï½Hï½l$ï½Hï½ï½Lï½d$ï½Lï½l$ï½Hï½ï½Hï½ï½(ï½ Aï½ï½ï½ï½ï½Iï½ï½1ï½Hï½ï½Hï½ï½ï½ï½ï½Iï½D1ï½Hï½ï½Hï½ï½ï½ï½ï½Iï½$Hï½\m!Eï½l$Lï½%Pm!Hï½\Hï½l$Iï½D$Lï½l$ Lï½d$Hï½ï½(ï½f.ï½SHï½ï½Hï½?ï½ï½ï½ï½ï½Hï½ï½ï½ï½ï½ï½Hï½ï½ï½Hï½!H9ï½[ï½ï½ï½ï½ï½fï½[ï½fffff.ï½USHï½Hï½=ï½l!t31ï½fDHï½ï½l!Hï½,ï½Hï½ï½Hï½ï½ï½ï½ï½ï½ï½HÇ...ï½H9ï½l!wï½Hï½zl!ï½ï½l!ï½ï½l!ï½ï½l!ï½ï½l!ï½ï½l!ï½ï½l!ï½ï½l!ï½ul!ï½{l!ï½ul!ï½ol!Hï½[]ï½Hï½\$ï½Hï½l$ï½ï½ï½Lï½d$ï½Hï½ï½Hï½ï½Hï½ï½ï½ï½ï½Iï½ï½ï½ï½ï½ï½ï½ï½01ï½1ï½Lï½ï½Hï½ï½ï½Gï½ï½ï½ï½ï½u+ï½Em!ï½ï½u

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  18. web banner by graphicaid123 · · Score: 1

    This is really good deal of the code be made use of.

  19. No. by Anonymous Coward · · Score: 0

    From TFA: "Want to be able to run classic Mac OS applications compiled for the Motorola 68000 series of processors on your ever-so-modern Mac OS X machine?"

    No. Because I don't have an "ever-so-modern Mac OS X machine". And I'm glad to not have it.

  20. Not interested by Anonymous Coward · · Score: 0

    ... until it runs Mac Playmate.

  21. Hmmmm by stealth_finger · · Score: 1

    Classic...mac...games? Oh right tic tac toe, solitaire, missile command? Classic. If you wanna play lode runner and don't have one of the many platforms its on, here you go. http://loderunnerwebgame.com/g...

    --
    Wanna buy a shirt?
    https://www.redbubble.com/people/stealthfinger/shop?asc=u
    1. Re:Hmmmm by Anonymous Coward · · Score: 0

      Dark Castle
      Crystal Quest
      Bolo
      Strategic Command
      Cap'n Magneto
      Feathers & Space
      Hacker II
      Duck Hunt
      1,000,000,000,000 Games made with World Builder (and the Two Good Games made with it)
      Vampire Castle
      Mac Landing
      Maze Wars+
      Microsoft Flight Simulator (and the system crashes, feature, not a bug)
      Mac Golf
      MacMan
      Social Climber
      HardBall
      Skyfox
      StuntCopter
      C-in-C (since you can't actually GET Command and Conquer, F-you mr programmer dude, the new iteration sux)
      Race Car Simulator
      Mac The Rapper - What is Love (it's as fun as a game)
      Red Stars, White Nights
      Breach
      Quarterstaff
      Harrier Strike Mission II
      Shadowgate
      Deja Vu
      Apache Strike (seriously awesome game here)
      Continuum (another hidden gem)
      Jinxter
      Scarab of Ra
      The ancient art of war

      I'm missing some games (obvious ones I'm sure), but one of the reasons I left max for PC was because I grew up with a mac, and every single time I went to the store, they had the sad little shelf of games for the Macintosh, and the huge game library for the PC. BBSes had tons of games for the PC to download, and one or two for the Mac. It wasn't until Blizzard that companies really started to come close to catering to the Apples. So I left the fruit for the cold, hard PC life. I haven't been back to the happy fruit land since.

    2. Re:Hmmmm by painandgreed · · Score: 1

      My favorite is Lunar Rescue. I still have an old Mac Plus I pull out and play it on once every five years. While I'm at it, I usually play the first real time strategy game, The Ancient Art of War a time or two.

    3. Re:Hmmmm by Anonymous Coward · · Score: 0

      But you need an Amiga or Amiga Emulator to run the greatest game ever: Smurf Hunt.

  22. Why was this posted? by Anonymous Coward · · Score: 0

    I can't think of any way of using this news to abuse women and minorities. What was the point of posting it here?

  23. "Classic Mac Games"? by recrudescence · · Score: 1

    So ... Photoshop?

  24. for 64000 Mac applications by Anonymous Coward · · Score: 0

    Is this why MacOS emulation is so shit these days? Try emulating 68k instead.

  25. Let's do it for OS/2 !!! by martiniturbide · · Score: 1

    I want something similar for OS/2. Like 2ine, but it requires more work and help: https://virtuallyfun.com/wordp...

  26. Net Trek by Anonymous Coward · · Score: 0

    (drool)

    Net Trek

    (/drool)

  27. Will it run in... by Anonymous Coward · · Score: 0

    ...a Web browser?

  28. Spaceship Warlock by ScooterComputer · · Score: 1

    I just want to play Spaceship Warlock, with sound. That is all.

    --
    Scott
    "Hokey religions and ancient weapons are no match for a good blaster at your side, kid."
  29. Re:Somebody already resurrected the only worthy ga by pjt33 · · Score: 1

    I remember an old Mac game (although I'm not sure whether it was on OS 6, 7, or 8) where you controlled a line which rotated around points on a grid. The controls allowed you to change the direction of rotation and grab onto the point that your free end was about to swing past. If anyone else remembers it and can tell me what it was called, I would be grateful.

  30. What's a 64000 Mac? by kenh · · Score: 1

    I've never heard of that CPU...

    --
    Ken
    1. Re:What's a 64000 Mac? by Anonymous Coward · · Score: 0

      "For 64000 Mac applications."

      64,000. No more; no less.

  31. MacPlayMate resurrected! by Ol+Olsoc · · Score: 1

    Oh boy is that going to trigger some folks.

    --
    The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
  32. Re:Somebody already resurrected the only worthy ga by Anonymous Coward · · Score: 0

    I have that game! Loved it too. IIRC, the different points could affect the way your line moves around too - auto attach, bounceback, etc.

    I'm off to my software collection in the basement - BRB . . .

  33. Re:Somebody already resurrected the only worthy ga by Anonymous Coward · · Score: 0

    Spin Doctor. Performa-era Macs came with a demo ('Challenger') version, so sometimes you'll see it called 'Spin Doctor Challenger'.

  34. Executor redux by Anonymous Coward · · Score: 0

    Looks like they are resurecting Executor, which had versions for Linux, Windows and even MS-DOS. I had mosty system 6/7 compatability but when it was a commercial product, the lowest price was $99 and couldn't run everything. It wasn't much of a success which is a shame, because they really put a lot of work in reverse engineering the Macintosh system.

    I hope this project will be more successful than ARDI was

    1. Re: Executor redux by Anonymous Coward · · Score: 0

      Executor is on github now, went open a few years back. I hope this product is reusing parts of it, it could play EV!

  35. Re:Somebody already resurrected the only worthy ga by Anonymous Coward · · Score: 0

    beat me to it. I still have it on my Powerbook 5300.
    Makes me want to go fire it up.

  36. Executor by Anonymous Coward · · Score: 0

    Hasn't most of this been done in Executor?