iPhone Simulator from 2.2.1 SDK on PowerPC

Amethyst1

macrumors 68000
Original poster
Oct 28, 2015
1,563
1,972
The iPhone Simulator that comes with the iPhone OS 2.2.1 SDK is the last version to secretly have shipped as a Universal Binary; so that it works on PPC machines running Leopard.

This is how to get it to run:

1. Find the SDK. The name of the disk image released by Apple is iphone_sdk_for_iphone_os_2.2.1_9m2621a_final.dmg.

2. Mount the image and open the Packages folder.

3. Open iPhoneSimulatorPlatform.pkg using Pacifist and tell it to "install" the package.

4. In Finder, go to /Platforms/iPhoneSimulator.platform/Developer/Applications and finally launch iPhone Simulator.

iphonesimppc.png


5. Have fun surfing with Mobile Safari or whatever :)

edit: Removed link. Better be safe than sorry.
 
Last edited:

KawaiiAurora

macrumors 6502
Dec 16, 2016
307
189
Europa
It must be noted that the simulator can't run ARM code so sadly, you can't grab ancient IPA files off the internet and play your favourite old mobile games through this.

That being said, I think that some very old open-source projects could be compiled via XCode and run in the simulator.
 

Amethyst1

macrumors 68000
Original poster
Oct 28, 2015
1,563
1,972
Nice! Does it run earlier iOS versions, such as 1.0? I've always wanted to try 1.0 but my 2G only goes down to 1.1.1.
It doesn't. Strictly speaking it doesn't run iOS at all since it can't run ARM binaries as @KawaiiAurora said; the applications it ships with are compiled for x86.
[doublepost=1537031180][/doublepost]
@Amethyst1 Better hold onto that disk image - it is difficult to find on the net.
I have acquired Erik's habit of never discarding anything I download. :)
 
  • Like
Reactions: z970mp

tdbmoss

macrumors 6502
Dec 4, 2011
277
357
Ah the iPhone Simulator, I took this screenshot a few years ago showing all 4 of the processor architectures that Apple has used over the years simultaneously on a G5 :) (yes yes I know the iPhone Simulator doesn't actually emulate ARM but instead runs natively-compiled code, but you know what I mean...)

Architectures.png


I think the SDK that included the Simulator used to be downloadable from the Apple Developer site but probably isn't there any more, I can't remember if it was free like Xcode or if you had to be a paid developer to access it - I don't have the whole SDK, just a ~150 MB zip containing enough to run the Simulator (might be necessary to install Xcode first).
 

nglevin

macrumors member
Jul 8, 2018
67
29
I wonder if you could take Landon Fuller's old SimLauncher project for launching iOS Simulator apps as Mac OS X binaries and turn it into a Leopard sort-of-like-Marzipan layer, with this really old iPhone OS 2.x SDK for PowerPC.

https://github.com/landonf/simlaunch

You'd still need source code for the apps you want to run, so, not an emulation solution by any means, as many have said above. But, could be fun for a few (very slow) laughs if you have some iOS source code lying around.
 

AphoticD

macrumors 68000
Feb 17, 2017
1,961
2,584
Australia
I just installed the 2.2.1 iPhone simulator on my G5 to test a responsive CSS layout I'm working on... and well, the results weren't great... This old version of mobile Safari can't see my custom fonts and the "background-size: contain" property doesn't seem to work. I'll need to render some <320px wide assets just to see the layout running on the old iPhone OS.

Safari 4.1.3 on Tiger on the other hand has actually performed in 9 out of 10 aspects of my layout.. Almost everything I'm trying to achieve is working on the old cat.

My goal (as many of you may have come to expect [from me]) is to get things to render (in at least an acceptable manner) and perform well on all Mac hardware capable of running at least Tiger all the way through to High Sierra (with Retina assets), while maintaining the same code-base and stylesheets.

I have leveraged jquery animations and fades and everything runs well on the G5 and performs acceptably on the G4s.. It's not impossible to create modern websites and front-end designs that can perform well on a PowerPC. :cool:

I would love to see modern web designers doing what they can to get their sites working well on older hardware. Even if it means dropping a few bells and whistles. The results can still look great and the end users will appreciate the optimizations even when using modern hardware.

It's pretty obvious when you have 70+ tabs open and a particular bloated site brings your browser to a crawl hey @LightBulbFun :)


Picture 1.png


:apple: :apple: :apple:
 

LightBulbFun

macrumors 68020
Nov 17, 2013
2,269
2,160
London UK
thats why to handle this lot

upload_2018-9-17_13-35-5.png


I have this beast

upload_2018-9-17_13-32-58.png


:D


on a more related note in one of my many posts here I have a picture of my Pismo G4 running Leopard 10.5.8 with the iOS 2.2.1 Simulator running :)

IIRC @tdbmoss has done something similar on his G3 beige which i found pretty cool :)
 
  • Like
Reactions: Traace and AphoticD

AphoticD

macrumors 68000
Feb 17, 2017
1,961
2,584
Australia
on a more related note in one of my many posts here I have a picture of my Pismo G4 running Leopard 10.5.8 with the iOS 2.2.1 Simulator running
I remember you doing this, but did you post it? Pics or it never happened....

IIRC @tdbmoss has done something similar on his G3 beige which i found pretty cool :)
That must be a G4 upgraded beige? No G3 support by the looks of it;

Code:
$ file /Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app/Contents/MacOS/iPhone\ Simulator
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator: Mach-O universal binary with 2 architectures
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator (for architecture ppc7400):   Mach-O executable ppc
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator (for architecture i386):   Mach-O executable i386
 

LightBulbFun

macrumors 68020
Nov 17, 2013
2,269
2,160
London UK
I remember you doing this, but did you post it? Pics or it never happened....



That must be a G4 upgraded beige? No G3 support by the looks of it;

Code:
$ file /Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app/Contents/MacOS/iPhone\ Simulator
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator: Mach-O universal binary with 2 architectures
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator (for architecture ppc7400):   Mach-O executable ppc
/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator (for architecture i386):   Mach-O executable i386
heres the picture (I cant find the original post where I first posted this picture for the first time) (the Max CPU load ya see is from an istatmenu bug not from the iOS simulator FYI)




as for the G3 beige indeed his was G4 upgraded and running leopard :)
 
  • Like
Reactions: AphoticD

weckart

macrumors 603
Nov 7, 2004
5,008
2,265
heres the picture (I cant find the original post where I first posted this picture for the first time) (the Max CPU load ya see is from an istatmenu bug not from the iOS simulator FYI)

as for the G3 beige indeed his was G4 upgraded and running leopard :)
Very impressed with the iPhone Simulator. It appears to be simulating the capacity of the largest iPhone XS Max.
 

AphoticD

macrumors 68000
Feb 17, 2017
1,961
2,584
Australia
Out of curiosity, I dusted off my iPhone 3G running the final OS it could handle (4.2.1 iirc) and to my surprise it still performs really well. I was even able to bring up street view in the default maps app, which is something the current iOS can’t do. The css layout I mentioned earlier loaded quickly and rendered near perfectly in Safari. I had a few quick games of N.O.V.A, Flight Control and Driver and then switched it off.

Not bad for 412MHz, single core, 32-bit smartphone with only 128MB of RAM.

From what I recall, it did nearly everything my iPhone 6 can do, except the camera was rubbish.

Remind me again Apple, why I need to buy the new XS and more importantly, why all new app submissions must be built with XS Max support on an Xcode 10 capable Mac with an iOS 12 SDK base??

It seems the 3rd party developers are forced to be the first in line to “cough up” in order to stay relevant. It feels like a well planned trap, really.
 
  • Like
Reactions: z970mp

weckart

macrumors 603
Nov 7, 2004
5,008
2,265
Remind me again Apple, why I need to buy the new XS and more importantly, why all new app submissions must be built with XS Max support on an Xcode 10 capable Mac with an iOS 12 SDK base??

It seems the 3rd party developers are forced to be the first in line to “cough up” in order to stay relevant. It feels like a well planned trap, really.
Can you imagine forking out £1500 for a phone only to find you can't run the latest software or even some apps at all because the developers didn't have to consider your hardware? Apple would be never hear the end of it. Your job as a developer is to encourage people to buy new phones to make Apple money. And to pay Apple 30% of your proceeds for the privilege. Know your place.
 

AphoticD

macrumors 68000
Feb 17, 2017
1,961
2,584
Australia
On an earlier thread, I stumbled across an install script which provides the PowerPC Leopard / Xcode 3.1.4 host with the appropriate links, etc to enable iPhone xcode projects to be compiled on ppc and tested in the simulator.

https://web.archive.org/web/20150909125054/http://www.bandlem.com/iPhonePPCEnabler.dmg

By default, only the Intel installation of the SDK allowed the iPhone project options and build targets. I've tested the "iPhonePPCEnabler" and it works perfectly fine.

IOS SDK On PowerPC.jpg



This might be a bit of fun for someone wanting to build older opensource iPhone projects to run in the simulator natively on the ppc architecture... Are there any doorways of software possibilities here?

NOTE: distcc compiling fails with the iPhone simulator target, so I disabled it via Xcode prefs. Falling back on the default GCC compiler works fine. I haven’t tested LLVM.
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.