Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate QEMU #72

Open
mihaip opened this issue Nov 24, 2022 · 22 comments
Open

Investigate QEMU #72

mihaip opened this issue Nov 24, 2022 · 22 comments
Labels
enhancement New feature or request Project Bigger projects

Comments

@mihaip
Copy link
Owner

mihaip commented Nov 24, 2022

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 mihaip added Fidelity Emulation fidelity (vs native builds and/or real hardware) enhancement New feature or request labels Dec 30, 2022
@nilobject
Copy link

qemu can run 9.2.2 as well, which some applications require

@that-ben
Copy link

that-ben commented Mar 11, 2023

(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.)

@onpaws
Copy link

onpaws commented Mar 14, 2023

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.

@that-ben
Copy link

that-ben commented Mar 14, 2023

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.

@upintheairsheep
Copy link

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

@that-ben
Copy link

that-ben commented Apr 12, 2023

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.

@upintheairsheep
Copy link

upintheairsheep commented Apr 13, 2023 via email

@that-ben
Copy link

that-ben commented Apr 13, 2023

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?

@mihaip mihaip mentioned this issue May 20, 2023
@upintheairsheep
Copy link

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.

@that-ben
Copy link

that-ben commented Jul 9, 2023

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!

@upintheairsheep
Copy link

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
Copy link

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

@that-ben
Copy link

that-ben commented Jul 9, 2023

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

@upintheairsheep
Copy link

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
Copy link

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

@mihaip mihaip added Project Bigger projects and removed Fidelity Emulation fidelity (vs native builds and/or real hardware) labels Aug 26, 2023
@mihaip mihaip mentioned this issue Sep 9, 2023
@upintheairsheep
Copy link

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.

@UrkiMimi
Copy link

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.

@that-ben
Copy link

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

@UrkiMimi
Copy link

UrkiMimi commented Oct 2, 2023

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

@upintheairsheep
Copy link

upintheairsheep commented Oct 9, 2023

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.

@that-ben
Copy link

that-ben commented Oct 9, 2023

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?

@mihaip
Copy link
Owner Author

mihaip commented Oct 9, 2023

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Project Bigger projects
Projects
None yet
Development

No branches or pull requests

6 participants