Dolphin, the GameCube and Wii emulator - Forums

Full Version: Dolphin on iOS
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Sorry, it appears nothing has changed in the memory system from iOS 8 to iOS 9. My tester still fails when trying to map the second memory view.

If you're interested, here's the log and the corresponding code. (Note that I'm apparently missing the view for &m_pRAM, but it shouldn't matter as that is guaranteed to map successfully anyways)

tech4tall

Quote:I'm not really thinking about how file loading will work right now since it doesn't even run at the moment. I'll keep that link for the future though. (I'm also in the process of upgrading my iOS device to 8.4 and being busy with other irl things, so I'm not really working on Dolphin at this time.)

Just a quick PSA: Note that ONLY the following devices will support Dolphin: iPad Air, iPad Air 2, iPad Mini 2, , iPad Mini 3, iPhone 6s (Plus), iphone 6 , iPod Touch (6th generation), and any iOS device that has been announced since this post (excluding any new Apple TVs, since nobody really knows what the hardware for that thing will be at this point in time). This is because the armv7 (32-bit) JIT was recently dropped from Dolphin for various reasons, so none of the 32-bit iOS devices will run Dolphin.

will pay $20 in cydia for an ps2 or dolphin emu, because it serves as motivation and not a waste of time for the developer. so we all win. I'm sure many people would do the same thing. pay for Emulator.
The amount of money that someone makes from application purchases (Especially ones in Cydia) aren't really enough to motivate developers(Especially ones that already have jobs) in to working on it.
It needs someone that cares enough to work on it to bring Dolphin to a new platform and sadly the number of people that care about Dolphin on ARM devices can be counted on a single hand.
And the fact that iOS is a closed OS, so you have to jailbreak it, doesn't help.

This being said, I would be exited that someone cares enough to do an iOS port. Apple ARM CPUs are powerfull.
The need for a jailbreak has nothing to do with iOS being a "closed OS" (I'm not sure what that means...) and everything to do with its security policies; the kernel doesn't allow ordinary applications to allocate executable memory because it's considered too unsafe.

You can run whatever you want on iOS without a jailbreak (either by sideloading, or with external certificates like the Build Store uses), but in this case freedom to install arbitrary code isn't the problem, it's the need to disable kernel security policies.
I assume that he/she was referring to the sandbox/the "walled garden" components of iOS when talking about it being a "closed OS".

EDIT: I was reading some things on /r/jailbreak earlier, and I read this post which is pretty unrelated to anything I want to do, but there is this one part that took me by surprise:

Quote:Now with Pangu’s iOS 9 jailbreak and Apple’s Kernel Patch Protection, it looks like we’ll have to live without some of the kernel adjustments that were common in earlier jailbreaks. Among them was the patch lifting Apple’s ban on RWX (Read-Write-Execute) memory pages, and this happens to be an important feature that the V8 engine was designed to take advantage of.

Pangu9 is apparently not applying the RWX patch??
"Kernel patch protection" is a security feature that stops the kernel from being modified (see https://en.wikipedia.org/wiki/Kernel_Patch_Protection; it's not a thing unique to iOS, even Windows XP had a form of it), so their jailbreak works by hacking the kernel, quickly modifying userspace to grant more permissions than there were before, then putting the kernel back to normal before KPP notices. My guess would be that the RWX patch was a kernel modification, and since the jailbreak can't persist a modified kernel, it can't apply any permanent kernel patches.

This doesn't mean you can't execute code in jailbroken iOS anymore; the solution would likely be to give an app the same permissions as Safari so that it can allocate RWX memory on startup, and design the emulator to use that API (however it works).
(11-17-2015, 09:54 AM)OatmealDome Wrote: [ -> ]I assume that he/she was referring to the sandbox/the "walled garden" components of iOS when talking about it being a "closed OS".

EDIT: I was reading some things on /r/jailbreak earlier, and I read this post which is pretty unrelated to anything I want to do, but there is this  one part that took me by surprise:



Quote:Now with Pangu’s iOS 9 jailbreak and Apple’s Kernel Patch Protection, it looks like we’ll have to live without some of the kernel adjustments that were common in earlier jailbreaks. Among them was the patch lifting Apple’s ban on RWX (Read-Write-Execute) memory pages, and this happens to be an important feature that the V8 engine was designed to take advantage of.

Pangu9 is apparently not applying the RWX patch??

I've read this in a lot of forums but I was able to memprotect with executable privileges on iOS 9.0.2 on an iPhone 6s while working on a nintendo ds emulator. It was only 1MB of memory but still executed add and subtract instructions with no errors.
Odd.
Still no where near the 64MB+ executable memory space we need.
pangu can not remove security for memprotect in 64 bit devices for that razon JIT crash.

32 bits devices are not affected but they did not have enough power to run dolphin emulator.

perhaps taig team (the upcoming jalibreak for ios 9.2 make us the miracle)
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14