
1991 Macintosh Quadra with Mac OS 8.1 as an Electron App - yboris
https://github.com/felixrieseberg/macintosh.js
======
felixrieseberg
Developer here! I'm so excited to see that people like this toy. I'm happy to
answer any questions, if you have any.

But first, some important credits: Emulator: Basilisk II, a 68k Macintosh
emulator, by Christian Bauer et al, modified and compiled with Emscripten by
James Friend. Installed software from vintage computing archives: WinWorldPC,
Macintosh Garden, and Macintosh Repository.

~~~
tikwidd
how easy is this to get running in an actual browser, rather than Electron*? I
want to host some Hypercard stacks (some of which need Quicktime support,
hence colour Mac emulation).

~~~
thomond
It appears to use this as the emulator: [https://jamesfriend.com.au/basilisk-
ii-classic-mac-emulator-...](https://jamesfriend.com.au/basilisk-ii-classic-
mac-emulator-in-the-browser) You can just directly use that instead.

------
Applejinx
I'd like to file a bug report: running Photoshop and using my wacom tablet,
the lines are somewhat twitchy. On the other hand, it's responsive as hell:
how nice to upgrade to a Quadra running inside Electron inside Mojave inside a
pretty gnarly iMac Pro :)

I wish my old Performa 575 booted that fast or ran Photoshop 3 that well. I am
old enough that I started with Photoshop 3 on such a machine, so this really
was a trip for me. How utterly cool.

Now if I could run Photoshop 3 natively on THIS box… hoo boy would that be
responsive.

~~~
cenal
I was a Macromedia fanboy. Photoshop is still a second class citizen in my
mind to Fireworks. Even though Adobe felt different and nuked their best
editor I still run it.

~~~
girvo
Amen! I ran my entire first business from Fireworks. Damn was it excellent. I
hated what Adobe did to Macromedia’s products after they bought them.

------
coldnose
Like that GAN that simulates Pac-Man, this is an exciting new level of
inefficiency I couldn't even conceive of a couple decades ago.

~~~
Twixes
We need to go deeper! Soon we'll have a machine learning algorithm conjure Mac
OS by calculating the next frame to display, taking into account user input,
based on watching thousands of hours of normal Mac OS usage

~~~
dunnevens
That's brilliant. Gave me the funny thought that GPT-3 could solve one problem
we used to argue about back in the day. What's the right order for loading
extensions? I don't remember the details, but I do remember my old office
would discuss it endlessly. The black magic and superstitions to keep the
system going as long as possible before the inevitable crash. Maybe, 25+ years
later, there could be a definitive answer.

~~~
staticautomatic
Surely there’s a statistical approach to answering that question, isn’t there?

~~~
krallja
I seem to remember a Cassidy & Greene program that would do all sorts of
statistics to your extensions. I mainly used it to do a binary search to
figure out which extension is causing the shareware app of the day to crash.

~~~
GeekyBear
They also had one of the best classic Mac arcade games of all time.

Crystal Quest and it's sequel, Crystal Crazy

[https://www.macintoshrepository.org/5955-crystal-
crazy](https://www.macintoshrepository.org/5955-crystal-crazy)

~~~
efreak
This was one of the only games I actually played in the Macs they had at
elementary school (we spent most of our recess time on Napster...playing 12
different songs simultaneously in the same room, and nobody cared). I spent so
long looking for this game, but I couldn't even figure it what to search for,
because I didn't remember the title.

------
dilap
Alas, it doesn't have Excel on it. I want to test my theory that Excel 5 in an
old mac emulator would be more snappy for basic input tasks than Excel 16
native on a MBP.

~~~
jonpurdy
As someone who regularly uses old Mac emulators on modern hardware, most
programs are hundreds of times faster (despite emulation overhead). As someone
who regularly uses an actual old PowerBook 2400 from 1997 for fun, I can say
that Photoshop 4 is by far snappier on that than the latest Photoshop CS on my
MacBook Pro...

~~~
IggleSniggle
This is depressing, but hardly surprising. The dedication to "just ship it"
has really built up. The market pressure to build efficient software
approaches zero.

All software will approach "human speed," whether it's adding two integers or
getting near instant predictions from a GAN. All available resources will be
used until it's "good enough. Just ship it," and efficiencies will multiple as
in any natural selection: defensive measures like "confusing code," and
"unrelated system fails when this one is changed" allowing mostly harmless
dumb code to survive and propagate.

Some intrepid learner comes to study the code one day. "Huh, I guess this is
how you're supposed to do it. Seems kinda weird but I'm sure it was written
this way for a reason. It's been like this for a decade!" And so they copy the
procedure into their greenfield project.

Efficient code will always be sacrificed to the god of "Just Ship It" as long
as the overall performance is "Good enough." And why not?

~~~
simias
>This is depressing

Only if you really have to use modern software (which, admittedly, we all have
to from time to time). Vim, my terminal, grep and GCC are faster than ever!

To really enjoy computers the trick is to run old software on modern hardware.

------
sabellito

      you'll find various games and demos preinstalled, thanks to an old MacWorld Demo CD from 1997. Namely, Oregon Trail, Duke Nukem 3D, Civilization II, Alley 19 Bowling, Damage Incorporated, and Dungeons & Dragons.
    

Oh this is not just looks, which would already be nice, but it actually runs
stuff.

~~~
setgree
Are all these games abandonware? Even if not, I can’t imagine anyone pursuing
a legal case, but it would be the kind of thing I worried about.

~~~
indrax
Demo CD's would often feature shareware versions of software.

------
perardi
Base hard disk size of a 1991 Quadra 700: _80 MB_

Size of this .app on my Mac: _866 MB_

Yes, I know, it’s silly to snark on Electron app sizes by this point. You want
to see some real bloat? Let’s compare the included Adobe Photoshop 3 and Adobe
Photoshop 2020:

Photoshop 3.0.5: _8.9 MB_

Photoshop 21.2.1: _2.76 GB_

Now _that_ is some bloat.

~~~
felixrieseberg
Hi, author here! This is silly, but I'm allocating the entire size of the
_virtual_ disk on your actual hard drive. There's probably a smarter way to do
this, but that's how it is right now. PRs would be lovely!

~~~
monadic2
Have you considered using qcow?

Sadly I’m not terribly knowledgable if this is easily implementable or not but
theoretically you don’t need to allocate all the disk space, just the parts
you’ve written to.

------
kanobo
Projects like these remind me that there are people in this world live in a
different intellectual plane than us. For them, time probably moves slowly and
the average person's intellect must surely amuse them. Because how is it
possible for this to be made by one human?

~~~
steviedotboston
This is really just a repackaging of work thats already been done. It uses the
BasiliskII emulator which was compiled to Javascript with Emscripten by
someone else a few years ago.

Still pretty cool but not some crazy technological feat.

~~~
kanobo
Oh, that would nice to include in the README - changes my entire perception of
this project. Thanks for the context!

~~~
boogies
If you squint you can see Basilisk II under “Credits” in the screenshot.

~~~
hoistbypetard
And if you look at `CREDITS.md` in the top level of the project source, you
can see that the author of this project considers that the "real work":

[https://github.com/felixrieseberg/macintosh.js/blob/master/C...](https://github.com/felixrieseberg/macintosh.js/blob/master/CREDITS.md)

------
mambodog
if electron is not to your taste, you can run the emulator in your browser
here:
[https://jamesfriend.com.au/projects/basiliskii/](https://jamesfriend.com.au/projects/basiliskii/)

coincidently today firefox 79 was released, which brings back support for
SharedArrayBuffer, which is a key part of the browser port of this emulator

~~~
IggleSniggle
Just feel like mentioning that the "old" version (without SharedArrayBuffer)
works just fine on my iPhone 7 Safari browser. What a time to be alive.

------
chrisco255
Oregon Trail should be mandatory curriculum for passing the 3rd grade. Kids
these days don't even know about dysentery.

~~~
the_af
Agreed. And if that's not enough, there's always the retro remake Organ Trail
-- as brutal as the original, but with zombies!

------
mnl
A few comments. This is a port of Basilisk II. If someone feels uncomfortable
using an Electron app, they can still install plain Basilisk, which works just
fine.

I don't know if you can distribute OS 8.1, but there certainly might be a
legal issue with the original ROMs. You're including one and the thing is
people used to look elsewhere for those. They're easy to find, and there are
tools to dump them if you happen to own such a Mac which would make this issue
disappear.

About some posts here. I've never had decent performance with Hypercard in
Basilisk II, on the other hand Mini vMac works great for that.

Lemmings run nicely in Executor, which happens to be a nowadays free
compatibility layer for 68K Mac software that doesn't need neither a dumped
ROM nor any copy of the Macintosh System Software.

------
jakearmitage
Sure, great.

Let's take a fully functional emulator that works well on mac OS
([https://www.emaculation.com/forum/viewtopic.php?f=6&t=7361](https://www.emaculation.com/forum/viewtopic.php?f=6&t=7361))
and all 3 major platforms
([https://www.emaculation.com/doku.php/basilisk_ii](https://www.emaculation.com/doku.php/basilisk_ii))
and port it to JS using Emscripten, and then wrap that into an Electron app,
and ship it again on mac OS.

Is this an exercise in how many layers of abstraction one can do things?

------
josh2600
This was the first graphical user interface I saw as a kid. Thank you for the
trip down memory lane.

~~~
aduitsis
The graphical user interface still looks gorgeous! And it brings me a slight
shudder that the look and feel might be more consistent that what we have
today, even on the Mac.

~~~
athenot
Right until you open the AppleCD Audio Player… Music apps _never_ followed the
UI guidelines. :(

~~~
perardi
AppleCD Audio Player is nothing…

[https://guidebookgallery.org/screenshots/macos80](https://guidebookgallery.org/screenshots/macos80)

…compared to the brushed metal and bizarre volume control in QuickTime in Mac
OS 9.

[https://guidebookgallery.org/screenshots/macos90](https://guidebookgallery.org/screenshots/macos90)

~~~
the_af
QuickTime looks felt bizarre even to us Windows users. Even though we had no
expectations of consistent or pretty UIs, every time I had to use QuickTime (a
typical use case: watching movie trailers) I marveled at the grotesque
bizarreness of its UI.

~~~
toast0
Modern windows has no expectations of consistency, but Windows in the 9x era
would have a pretty consistent feel. Sure, there were two file pickers, and
yes some people made their own, but other than media players and games meant
for full screen, almost everything used system widgets and kept system colors
etc.

~~~
the_af
You're right, I misspoke. I meant indeed that media players had quirky UIs in
general... I was thinking of WinAMP for example. But even then, QuickTime
looks felt both bizarre and unwieldy to me.

------
asveikau
Somehow I thought OS 8 was the first major release to be PowerPC only.
Wikipedia says they cut off 68K in 8.5 though.

~~~
virtue3
likewise, I had a powerPC running on 7.x and 8.x. ooof, takes me back.

~~~
asveikau
My friend had a power mac 6100 with system 7.1. It seemed pretty awesome at
the time.

------
tomduncalf
Ha, this is pretty cool. I remember the Macs of this era always seemed so
exotic to me as a young PC user. I had one friend whos family had a Quadra and
the OS seemed so cool and exciting and colourful the one time I used it. I
also clearly remember how the floppy drive ejected with a motor rather than
manually!

Even now, the OS seems really thoughtfully designed, you can clearly see the
lineage to MacOS of today.

Small bug report, my cursor seems to jump around a bit after I've been running
it for a few minutes!

~~~
theandrewbailey
The first time I encountered a Mac was in school. Because I had experienced
cassette players eating tapes (along with other forms of device failure), I
was never comfortable with any floppy drive without an eject button. Ditto for
those CD drives, too.

------
drrotmos
Finally! A way for a 68k Mac to use more than 1 GB of memory! Jokes aside,
this is a neat tech demo :)

------
fideloper
My father had a Quadra 610 that I used for hours when growing up. I have some
huge nostalgia for Hellcats Over the Pacific and A-10 Attack!

[https://en.wikipedia.org/wiki/Hellcats_over_the_Pacific](https://en.wikipedia.org/wiki/Hellcats_over_the_Pacific)
[https://en.wikipedia.org/wiki/A-10_Attack](https://en.wikipedia.org/wiki/A-10_Attack)!

Wonder if I can play these@

~~~
aeries
A-10 Attack! was a truly wonderful game- the flight model was so impressive.

------
caiobegotti
Downloading it right now! But...

> Can I connect to the Internet? No. For what it's worth, the web was quite
> different 30 years ago - and you wouldn't be able to open even Google.
> However, Internet Explorer and Netscape are installed [...]

If IE and Netscape are available I'd assume this would be alright, unless it's
some Electron thingy going on... how's that so?

~~~
sbierwagen
Certainly they can be installed on the VM, doesn't mean that the VM has
network drivers installed.

Separately, very old browsers only talk HTTP 1.0 (No Host: header support, so
they can't connect to non-dedicated servers) and no modern ciphersuites.
(Can't connect to HSTS servers that disallow insecure ciphers)

~~~
anthk
But they support Gopher. And Clazilla exists.

------
cdubzzz
It's crazy to me that somehow "Alley 19 Bowling" has been lingering around in
my brain for 20+ years. All of a sudden I feel like I played it yesterday.

------
projektfu
Q: Does it run my favorite game?

A: Even a Mac Plus runs Glider.

~~~
ErikAugust
Glider. And Shufflepuck for good measure.

~~~
codecamper
Shufflepuck!? Really?????

------
bwip
This is really nice. A little easier and more modern for someone just looking
to run retro games than minivmac or qemu.

If you're looking for games or other software for this check out the always
excellent Macintosh Garden.
[https://macintoshgarden.org/](https://macintoshgarden.org/)

------
balaksakrionon
My experience with the .deb version seems to be stuck during startup on
"Loading emulator dependencies"

~~~
Glyptodon
Same for me.

------
orionblastar
Any chance of emulating a PowerMac running MacOSX using PearPC or something
that emulates PowerPC? It is so old that Apple should not care about it
running in an emulator since they are moving from Intel to ARM.

~~~
anthk
Last Qemu suports PowerMacs. Check Emaculation.

~~~
orionblastar
Thanks

------
denki39
Amazing! Seeing the interface with an auto CRT filter within my eyes.

------
peterkelly
I miss the spatial Finder

------
plun9
I love playing with the MacinTalk (text-to-speech) voices. Be sure to enable
talking alerts in the Speech control panel.

------
EamonnMR
This is extremely cool. Would be interested to see OS9 too; the emulator
situation is kind of a hassle at the moment.

------
gcbw3
Where exactly is the disk image? can't find it on the repo (also, github
redesign removed file size?!?!)

------
Arathorn
It's got Photoshop 3 on it! And it's... faster than it was on my old Quadra?
This is awesome :D

------
cgufus
Does it theoretically also run A/UX ? I remember the Quadra machines were able
to do so...

~~~
trevorg16
Unlikely, since it's based on Basillisk II and so does not actually emulate
the MMU [1].

1:
[https://www.emaculation.com/forum/viewtopic.php?p=34664#3466...](https://www.emaculation.com/forum/viewtopic.php?p=34664#34664)

------
swiley
Holy cow. The online version is more responsive than most of the native apps
on my phone.

------
fmakunbound
Anyone recall why some applications on Mac OS have a stylized "f" suffix?

~~~
mietek
“RandomMacApp ƒ” stood for “RandomMacApp’s folder”.

------
0xDEEPFAC
Imagine the system requirements of this versus the original OS ; )

Cool toy though!

------
philliphaydon
I was convinced when I saw "Oregon Trail"

------
adamzegelin
Missing the best Mac classic game: Lemmings!

------
ngcc_hk
The thing is a developer software and go back to the future.

Pascal ...

------
archgoon
Title: Quadra, not Quandra.

~~~
dang
Fixed. Thanks!

------
funman7
Why the “I’m Sorry” ?

------
boogies
So basically [https://bellard.org/jslinux/](https://bellard.org/jslinux/) but
with a macOS iso and Electron packaging?

~~~
wmf
JSLinux doesn't emulate 68K, but something like that.

