6 ms·
TouchHLE: An iOS 2.0 App Emulator
- HeckFeck 4y agoIf I remember correctly, the iOS binaries had DRM that linked them to your Apple ID. That was my biggest fear for future preservation of then-contemporary apps. Does this emulator work around the DRM?
- _qxjp 4y agoNot currently. The website has this snippet of information: Note that the app binary must be decrypted to be usable. Also note that you can’t directly use .ipa files right now, you’ll need to unzip it (this may be easier if you rename it to end in .zip first) and get the .app bundle out of it.
- TazeTSchnitzel 4y agoSadly I don't hold the magic keys to decrypt DRM'd apps, and therefore touchHLE doesn't either, but but there are known techniques for removing it (using a real device).
- dagmx 4y agoThe creators twitter post https://twitter.com/hikari_no_yume/status/1621271417923706880 https://twitter.com/hikari_no_yume/status/162127141792370688... The emulator is written in Rust and the site is created with DashCode ( https://en.wikipedia.org/wiki/Dashcode https://en.wikipedia.org/wiki/Dashcode )
- TazeTSchnitzel 4y agoI compiled the tweets into a blog post and made some corrections, so if anyone sees this in future, I recommend reading it this way: https://hikari.noyu.me/blog/2023-02-06-touchhle-anouncement-thread-tech-games-me-and-passion-projects.html https://hikari.noyu.me/blog/2023-02-06-touchhle-anouncement-...
- gbraad 4y agoThe site does not interact properly on the Vivaldi mobile browser.
- gbraad 4y agoWho downvoted? I wasnt able to provide more details at the moment (appointments), but as you can see, I wasn't the only one who says this. I know I ideally should have provided more details, though every reports counts and the author recognizes. Plus the fact I add a modern browser in the description he figured this might be the case. Thanks. Anywhere I can follow-up perhaps? Since the buttons don't work I can't actually interact. Will test tomorrow if the desktop browser of Vivaldi does the same.
- grishka 4y agoOh, I thought I was the only one
- TazeTSchnitzel 4y agoHi, author here: yeah, the site's a bit glitchy in almost any modern browser, given Dashcode is software from ~15 years ago and used a lot of WebKit-specific stuff, but it seemed like it was usable enough in Chrome, Firefox and Safari. Is Vivaldi worse somehow?
- PhilipTrauner 4y agoNow you got me curious: can you get Dashcode to run on modern macOS or does it only work on Snow Leopard? Never got to experience it back in the day and would love to try it out.
- favorited 4y agoThis "you got your Objective-C in my Rust!" syntax is just... :chef-kiss: https://github.com/hikari-no-yume/touchHLE/blob/trunk/src/frameworks/foundation/ns_bundle.rs https://github.com/hikari-no-yume/touchHLE/blob/trunk/src/fr...
- deleted 4y ago[deleted]
- tylerag 4y agoI had to look, I couldn't help myself. https://github.com/hikari-no-yume/touchHLE/blob/e516cd13f9bef4b3d7744230aaf94f92ad0b8394/src/objc/classes.rs#L174 https://github.com/hikari-no-yume/touchHLE/blob/e516cd13f9be... It's actually not terrible.
- favorited 4y agoI had seen macros to support a quasi-message-send signature from Rust (`let value = [[cls.into() numberWithUnsignedInt:42u32] stringValue];`), but never method implementations! https://belkadan.com/blog/2020/08/Objective-Rust/ https://belkadan.com/blog/2020/08/Objective-Rust/
- saagarjha 4y agoSomeone needs to combine these two…
- Tijdreiziger 4y agoWow, this ‘early iPhone’ web design framework really takes me back to when I was taking my first steps into programming by learning HTML. I’m pretty sure I used this exact framework to make a few websites back then.
- spongeb00b 4y agoThe footer credits "Dashcode", which I had completely forgotten about https://en.wikipedia.org/wiki/Dashcode https://en.wikipedia.org/wiki/Dashcode
- msephton 4y agoI know what you mean. That framework was "iUI" by Joe Hewitt of Firefox fame.
- TazeTSchnitzel 4y agoThere's more than one like that, a friend told me it reminded them of "iWebKit".
- terrycody 4y agoI don't know tech and emulation, but this seems very interesting. If that means an iphone emulator on PC is possible? If I am right, currently, there are no emulation products for iphone, while we got plenty of Android emulators like Bluestack.
- Operyl 4y agoWe do have https://www.corellium.com/ https://www.corellium.com/ but that's a hosted solution and not generally available to consumers.
- terrycody 4y agoI knew this, the company sued before by Apple, thus the service will not open to normal users, what a pity.
- TazeTSchnitzel 4y agoThere are also projects that have gotten versions of iOS running in QEMU: • https://news.ycombinator.com/item?id=34095830 https://news.ycombinator.com/item?id=34095830 • https://news.ycombinator.com/item?id=30545425 https://news.ycombinator.com/item?id=30545425 I don't know how usable they are for this kind of use-case though.
- saagarjha 4y agoThey're not quite at the level of being able to run arbitrary apps, but might get there soon?
- TazeTSchnitzel 4y agoYeah. I expect GPU emulation to be a significant hurdle, I'm not sure if Apple's fallback software rendering will work well enough or at all?
- saagarjha 4y ago
- grishka 4y agoA natural thought is that it would be cool to run this on Android
- deleted 4y ago[deleted]
- mappu 4y agoPaging u/TazeTSchnitzel - congratulations, what a phenomenal creation. Is this the same dynarmic from Citra/Yuzu?
- JonathonW 4y agoLooks like it is, yes.
- TazeTSchnitzel 4y agoThank you! Yes, it's the same dynarmic that Citra and Yuzu use.
- IncRnd 4y agohttps://github.com/hikari-no-yume/touchHLE https://github.com/hikari-no-yume/touchHLE
- 2Gkashmiri 4y agoi just remebered "monkey ball" . fun times.. tap tap revenge. there was this one game, super fun. it was some glider game where the hero was riding a glider and your job was to scale up and through areal targets using hot draft winds and score points. it is funny because there was no mechanism for "iAP" in-app payments so there was no monetization, no ads or anything. farmville anyone? our whole family was addicted to a point i had to manually pull the plug on the app for good. that was.... lets just say... complicated
- spamboy 4y agoYou mean Glyder, by Glu! My favorite game (well, it and its sequel, Glyder 2) on iOS by far.
- 2Gkashmiri 4y agooh shit.... yes yes yes
- msephton 4y agoWould love to play these again!
- smcl 4y agoThink the glider game may simply have been an iOS implementation of a classic Mac game “Glider”: https://en.m.wikipedia.org/wiki/Glider_(video_game) https://en.m.wikipedia.org/wiki/Glider_(video_game)
- chubs 4y agoI know this is a bit silly and circuitous, but it would be neat if this went full-circle and allowed you to play ios2 games on modern iphones: we could relive the golden era of mobile gaming, before in-app-purchases steered the game mechanics towards grinding.
- IncRnd 4y agoI have a small number of old apps that are self-contained on the device, yet they won't ever get built for recent versions of ios. I'll be happy if I am every able to see those apps run again.
- cuoco 4y agoWhich one are those?
- IncRnd 4y agoThey are three apps that present certain language translations and their associated pronunciations from specific texts.
- msephton 4y agoThe readme of this project says it's focused only on games. You can extract or download your old apps using iMazing and install on an old device. I've done this for a couple of games.
- ihatepython 4y agoI think it makes more sense to compile this emulator with Emscripten and run it in the browser.
- m463 4y agoI used to love popcap games, and thought PvsZ was one of the best mobile games... until EA took over popcap and monetized PvsZ to put literal prices in dollars on the plants. A jump the shark moment.