I done the jailbreak with evasi0n’s software when it first came out
RetroArch works perfectly for me on the iPad 4. I have played a tonne of FF7 and Crash Bandicoot already.
My two suggestions would be to able to navigate the UI with a gamepad (look at the Snes9x EX emulator on cydia) and also be able to browse the entire iOS filesystem, not just the documents directory. Many emulators look for roms in the var/mobile/media/roms directory and its a pain to keep roms in two separate directories. It would also be good if RetroArch could remember the last directory you were using to save having to navigate to it every time.
If anything specific needs testing I would be glad to help. I have a bunch of iOS devices I can test this on.
Being able to navigate the UI with a gamepad is not possible - and the ‘SNES9x Ex’ fork people think is so great (but I sure don’t) does not use native Cocoa but some homemade widget stuff which we are not going to adopt anytime soon.
One way I think we can sidestep all these issues would be to just have an option to ‘boot straight’ into RGUI mode instead of going though the Cocoa interface first - that could be a ‘toggleable’ option somewhere in Settings. This is how the Blackberry Playbook port works - it boots straight into RGUI with a controller overlay because Playbook lacked any kind of widget/GUI system. Some similar option could be provided for iOS - and RGUI being fully gamepad-driven, this would fulfill our needs while we can still retain non-jailbreak compatibility.
Keeping the app both consistent across jailbreak and non-jailbreak is important to us - hence the insistence on the Documents folder.
There is a ‘work-around’ for this if you may but it would involve manually loading ROMs/ISO images from RGUI instead -which is perfectly possible to do and you could browse the entire filesystem from there. We are just not going to expose it through the Cocoa interface since that would break compatibility with non-jailbreak.
Those are some very good reasons. Now the use of the documents folder and limited file navigation makes a lot of sense.
Im pretty new to RetroArch but is there any way to enable frame skipping in any of the emulators? The DS core seems to run a tad below full speed with most games. I saw some posts elsewhere saying its unfinished so im guessing JIT is not implemented yet.
I would like to thank everybody who contributed to the iOS port of RetroArch, its performing extremely well with what I have tested so far.
The DS core is actually using a JIT core (ARM-to-ARM JIT) - but still - the GPU part will need heavy optimizing (Meancoot is working on that in a branch) and really it will be a tall order for DS emulation to run at fullspeed on ARM devices period - it takes at least a Core i5/laptop desktop PC to run most games at fullspeed with the Desmume x86 JIT - so an iPad 4 might simply not be enough right now and we need to wait for more powerful hardware to come out (and to be jailbreakable of course since the only way to get halfway decent performance is through a dynarec/JIT).
Anyway, the Desmume core should be regarded as ‘WIP’ - it being bundled with RetroArch iOS is simply a big beta test - idea being that you report back as many problems as possible.
Regarding frameskipping - we have long imposed a strict ‘no frameskipping’ dogma in RetroArch - that served us well up until the time that we had to do an Android port. Android being unable to really deliver on tight audio/video syncing at frameskip 0 is forcing our hand and as a ‘beta test’ I have added frameskipping to the PCSX ReARMed core as a ‘core option’. You can expect me to implement frameskipping in a similar manner for the other cores later on. I view this as being a necessary evil really for the platforms where we cannot rely on audio/video sync always working more or less tolerably - Android is definitely such a platform.
Do note though that on iOS you should definitely not use anything other than Frameskip 0 except for - say - that DS emu (when I get around to adding frameskipping for that) because - unlike Android - iOS has no issues at all with maintaining good audio/video sync and therefore can run flawlessly at frameskip 0. It’s the only way to play these games in my book - frameskipping is simply too much of a step back and it kills my enjoyment of the game.
Therefore, you should consider yourself lucky that you don’t have to worry about this issue much at all on iOS except for Desmume (NDS) I guess - iOS is the right mobile OS for RetroArch. Sadly, on cheap commodity ARM hardware, we only have Android (which sucks) and a dozen other would-be ‘competitors’ (Sailfish/Ubuntu One/Taizen/Firefox OS) which don’t really give us any great ability to write native apps, are too heavily sandboxed or will simply not get any massmarket traction. It’s a barren landscape out there.
BTW - can you verify what meancoot was saying about VBA Next running all games at fullspeed on an iPad 4? Would be nice to get a confirmation on that. I’m still impressed that the A6 is already a significant leap over the PS3 CPU in that respect (not that it takes much though since the Cell/Xenon CPU sucked for single threading even back in 2005).
Im surprised the DS emulation requires so much power. I can emulate every PSP game I have tested full speed using the PPSSPP emulator. But I know there is a lot more to emulation than just the originals consoles specs.
I also kind of agree with you on frame skipping. But setting it to a low value like 1 or 2 is usually worth the performance gain and doesn’t have too much of an impact on the enjoyment.
Also I can confirm that VBA Next is running GBA games at full speed. I tested pokemon emerald and megaman batte network. Fast forward works too but it doesn’t speed up the games by very much. If I had to guess I would say the games speed up by about 15-20%
In emulation it’s not about the speed of the CPU or the system so much but rather the amount of syncing required. This is why cycle-accurate SNES emulation has such high system requirements for one (along with… errr - I’ll shut up :P).
DS having two CPUs and two screens to cope with plus touchscreen already makes for a more complex use case to emulate than - say - a more bog-standard design involving a 333MHz (max) MIPS CPU and a fixed-function GPU. Plus PPSSPP uses a HLE GPU plugin for rendering while in Desmume we use software rendering for video.
Fast forwarding only speeding up by about 15-20% sounds about right for VBA Next on an iPad 4 (remember it uses a CPU interpreter - far more CPU-intensive than a dynarec although having the advantage that it will also be playable on a non-jailbroken iOS device). To be honest you should consider yourself lucky it runs games like FF6 or FF5 fullspeed at all on an iPad 4 - the PS3 and 360 can’t manage that and hover around the 50-55fps mark.
Its crazy to think that something as small as an iPad has more CPU power than a PS3. But it has been a looong time since the current gen consoles were released.
Also just remembered a tiny bug with RetroArch on iOS. The screen does not stay awake while playing games.
In terms of CPU power, something like an Apple A6X clearly smokes it (not hard since Cell/Xenon were big pieces of crap - moreso than the Wii CPU in fact - a dirty industry secret that even Anandtech back in 2005 was privvy to).
In terms of GPU power though - there is still a generational gap or two between the latest iPads and the PS3/360.
Also just remembered a tiny bug with RetroArch on iOS. The screen does not stay awake while playing games.
I am not sure how you would be able to enforce that programmatically. For now, it will do just changing the option that controls screen dimming after a finite amount of time in Settings (iOS Springboard).
[quote=“Squarepusher”]
Fast forwarding only speeding up by about 15-20% sounds about right for VBA Next on an iPad 4 (remember it uses a CPU interpreter - far more CPU-intensive than a dynarec although having the advantage that it will also be playable on a non-jailbroken iOS device). To be honest you should consider yourself lucky it runs games like FF6 or FF5 fullspeed at all on an iPad 4 - the PS3 and 360 can’t manage that and hover around the 50-55fps mark.[/quote] FF 5 seems to run fairly well on my s3, haven’t seen a single bit of slowdown anywhere (unless its dropping to some unnoticeable number like 55fps), or is this because I’m running a patched rom that fixes the BGM (I remember reading about the patch fixing some slowdown and stuff on the actual game)?.
@georaldc
in-game slowdown will be different from RetroArch slowdown, which is notably characterized by audio pops/crackles. That’s good to know that it’s running so well
I use a SBSettings “AutoLock SBSettings” toggle to fix that. So when I’m playing with my PS3 Controller i disable the autolock.
So, I found a crash log in my Library/Logs/crashreporter folder that was generated after RetroArch crashed on the ReARMed core.
Again, I’m on iOS 5 on an iPhone 4S. I’m using an .iso image of FF8 disc 1 that works in psx4all. It crashes on both of the psx cores. Tomorrow I’m going to spend some time figuring out what jailbreaking method I used to see if there were any updates I could use that may be the problem.
The crash log can be found in this pastebin here.
you have the same issue as dankorab. you probably used a early version absinthe to jailbreak (the one before they fixed the emulator issue) all you have to do is run the new tool to fix it.
The new release fixes backgrounding on iPhone 5, I’ll check on iPad 4 soon too.
Also, I can confirm that VBANext also runs at full speed on iPhone 5
Edit: Is there anyway to get Retroarch to remember what disc you were on? I keep forgetting to change my disc in RGUI, causing me to crash shortly after loading my state. But it’s nothing too serious
Can anybody help me? I want to play with my PS3 Controller. I have change the mac adress with the six tool but it dosn’t connect. The wiimote works perfect but only without the classic controller. What can i do?
Sorry for my english i am german.
Thanks
RetroArch is on version 0.9.9.1 on Cydia. Didn’t expect a update so soon :D.
I have the same issue : I can’t sync a PS3 controller, though BTStack is activated and it works perfectly with SNES9X EX+ from Robert Broglia.
And I don’t know where to put my saves (not saved states, real saves), because they are in the same folder as the ROMs and they’re not seen by RetroArch cores.
EDIT - Nevermind the PS3 controller, it’s working now… I don’t know why.
Still don’t know why the saves are not read.
And it would be nice to have a BTStack turnon/turnoff when launching and quitting RetroArch
It is also now on the ZodTTD & MacCiti repo - which should be a default Cydia repo.
You’ll remember this repo because a few days ago a disgusting ripoff of RetroArch appeared on there with ads (not just banner ads but ‘video ads’ as well - everytime you loaded a ROM). So the official version being on there should create no incentive anymore for anybody to use that piece of crap.