infinite-mac icon indicating copy to clipboard operation
infinite-mac copied to clipboard

Investigate QEMU

Open mihaip opened this issue 1 year ago • 24 comments

Would allow Mac OS X 10-10.5 to run (guide for native build). https://github.com/atrosinenko/qemujs is a port from a few years ago, https://github.com/garrysmith-forks/browservm.js claims to be another (it's a fork of https://github.com/elliott-wen/browservm.js, which disappeared at some point).

There is also https://github.com/AlexAltea/unicorn.js, which is a JS port of Unicorn (which is a CPU emulator framework based on QEMU's).

mihaip avatar Nov 24 '22 18:11 mihaip

qemu can run 9.2.2 as well, which some applications require

nilobject avatar Mar 11 '23 06:03 nilobject

(Note: Most applications that require a newer Mac OS than 9.0.4 actually require 9.1 or above. The reason why SheepShaver stopped at 9.0.4 is that the MMU in Mac OS become a requirement starting at 9.1 and SheepShaver cannot emulate that. Mac OS 9.2 did not bring any major change to the table. It's only speed improvements and bug fixes.)

that-ben avatar Mar 11 '23 14:03 that-ben

the MMU in Mac OS become a requirement starting at 9.1 and SheepShaver cannot emulate that.

TIL, thanks for sharing that tidbit. Do you know why SheepShaver cannot emulate MMUs? I have the impression MMUs have been emulated by other emulators out there, and a bit curious why this is true of SheepShaver.

onpaws avatar Mar 14 '23 04:03 onpaws

SheepShaver came out the same year that Mac OS 8.1 came out (1998) and no such thing as MMU nor Mac OS 9 existed yet. I suspect that Christian Bauer programmed SheepShaver in a way that is too hard to make it work with MMU, but I don't really know. All I can tell you is that more modern emulators (as of now only QEMU) can emulate Mac OS 9.1 and 9.2 though.

that-ben avatar Mar 14 '23 12:03 that-ben

Devos50 has a QEMU fork that can boot iOS 1 emulating the iPod Touch 2G: https://github.com/devos50/qemu

upintheairsheep avatar Apr 12 '23 01:04 upintheairsheep

Though, can really old iOS apps even be installed on such an emulator, offline? I mean except for using Cydia. If so, I wonder if there's an online archive of all iOS apps/games since those were signed by Apple (now expired) and were all taken out of the App Store since they're 32-bit.

that-ben avatar Apr 12 '23 11:04 that-ben

iOS 1 has no apps, other than system ones, but for apps go to the internet archive.

On Wednesday, April 12, 2023, Ben @.***> wrote:

Though, can really old iOS apps even be installed on such an emulator, offline? If so, I wonder if there's an online archive of all iOS apps/games since those were signed by Apple (now expired) and are all taken out of the App Store by now.

— Reply to this email directly, view it on GitHub https://github.com/mihaip/infinite-mac/issues/72#issuecomment-1505093624, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKNKRXG2GJYVXMZY26T2IBLXA2FGFANCNFSM6AAAAAASKUKXUA . You are receiving this because you commented.Message ID: @.***>

upintheairsheep avatar Apr 13 '23 01:04 upintheairsheep

Oh yeah, will you look at that: .ipa files huh? That's fascinating. Do you think a QEMU fork will soon be able to emulate those iOS 3, 4 or 5 apps?

that-ben avatar Apr 13 '23 12:04 that-ben

Oh yeah, will you look at that: .ipa files huh? That's fascinating. Do you think a QEMU fork will soon be able to emulate those iOS 3, 4 or 5 apps?

in the near future. iOS 1 is very interesting for some due to being the first ever version of iOS, however some guy on r/Apple_Internal/ has emulated an internal testing firmware for the same device, albeit with a few bugs.

upintheairsheep avatar Jul 09 '23 23:07 upintheairsheep

Even though I'm repeating myself, I find this truly fascinating. Thanks for this tidbit of information. Though, not sure I should thank you, because this feels to me like you've just opened Pandora's box!

that-ben avatar Jul 09 '23 23:07 that-ben

Yes, emulation wiki on gametech has lots of misc emulation from car head units to smart tvs to misc cellphones to iOS to iPods that do not run iOS.

upintheairsheep avatar Jul 09 '23 23:07 upintheairsheep

Would allow Mac OS X 10-10.5 to run (guide for native build). https://github.com/atrosinenko/qemujs is a port from a few years ago, https://github.com/garrysmith-forks/browservm.js claims to be another (it's a fork of https://github.com/elliott-wen/browservm.js, which disappeared at some point).

By 2035, we would probably be able to run macOS High Sierra or later on the browser

upintheairsheep avatar Jul 09 '23 23:07 upintheairsheep

Yes, I'm following this closely, but QEMU.js is extremely slow. I have yet to find Windows 7 emulated in a page. They achieved it a couple years ago with Windows XP, but it's an extremely stripped down, barely working (very slow) build and it takes ages to start up. https://lrusso.github.io/VirtualXP/VirtualXP.htm

that-ben avatar Jul 09 '23 23:07 that-ben

Though, can really old iOS apps even be installed on such an emulator, offline? I mean except for using Cydia. If so, I wonder if there's an online archive of all iOS apps/games since those were signed by Apple (now expired) and were all taken out of the App Store since they're 32-bit.

Do you mean Cycada?

upintheairsheep avatar Jul 30 '23 10:07 upintheairsheep

Another QEMU fork: https://github.com/lemonjesus/qemu-ipod-nano

upintheairsheep avatar Jul 30 '23 10:07 upintheairsheep

Devos50 has a QEMU fork that can boot iOS 1 emulating the iPod Touch 2G: https://github.com/devos50/qemu

iOS and iPod OS should be included due to being made by Apple and really easy to implement once you have the forks compiled.

upintheairsheep avatar Sep 16 '23 18:09 upintheairsheep

I wouldn't expect iOS emulation to be added in general on Infinite Mac since one iOS is completely different from Mac OS X even though they both share the Darwin kernel, two QEMU.js hasn't received an update in four years.

UrkiMimi avatar Sep 26 '23 13:09 UrkiMimi

QEMU.js is way too slow for current hardware. Perhaps in 10 years.

that-ben avatar Sep 26 '23 13:09 that-ben

True, it's just like running Mac OS X 10.7 on my iPad without JIT support

UrkiMimi avatar Oct 02 '23 05:10 UrkiMimi

QEMU.js is way too slow for current hardware. Perhaps in 10 years.

I guess we’ll have every version of macOS 10.0+ (via Internet Archive URLs) however put a giant warning that it does require an extremely powerful computer to work. If anyone has an M2 or M1 series they should test each version out for how fast they are, and hide any recent macOS versions via the “All” tab.

upintheairsheep avatar Oct 09 '23 00:10 upintheairsheep

I cannot wait for the M3 iMac to come out in a few weeks/months (??) and then, I'll gladly test it, but out of curiosity, do you have any instructions to follow to boot, say Mac OS X 10.2 on QEMU.js like how would one proceed to do that? Any site that hosts QEMU.js along with a compatible PPC ROM?

that-ben avatar Oct 09 '23 00:10 that-ben

GitHub issues are not discussion forums. @upintheairsheep please refrain from commenting unless you have specific technical things to say that would help advance the project.

mihaip avatar Oct 09 '23 03:10 mihaip

we dont need qemu to do this Dingus PC works

Pierrestro avatar May 22 '24 21:05 Pierrestro

QEMU is needed for x86 Mac OS X

On Wednesday, May 22, 2024, Pierrestro @.***> wrote:

we dont need qemu to do this Dingus PC works

— Reply to this email directly, view it on GitHub https://github.com/mihaip/infinite-mac/issues/72#issuecomment-2125830918, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKNKRXCQJBP6IQFJMXBJCHTZDUHN3AVCNFSM6AAAAAASKUKXUCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRVHAZTAOJRHA . You are receiving this because you were mentioned.Message ID: @.***>

upintheairsheep avatar May 22 '24 23:05 upintheairsheep