mali
-
I suggest you click on advanced search, fill "Exophase" in the author field and your emulation target of choice in the search field. All of this has been discussed multiple times and the answers are out there
Seriously Mike said:First: I didn't expect Pandora to be able to emulate Gamecube after some research and I even stated that before. GC's main processor is very fast, nearly as fast as Pandora, and if you add other bits and bobs that make GC run, it'll most probably overwhelm our little black box. But, emulating Dreamcast is possible - and going from that point, I was curious if emulating marginally faster PS2 and PSP was possible too. The answer "It's possible, but hard to do properly" was enough - as opposed to four "BAWWWW UNPOSSIBLE!" answers before it. Same goes for the explanations about RISC processors - some folks (Moxie and WizardStan) at least had enough patience to point me in the right direction.
And then, in a bit of trolling, I dropped a question about emulating the woefully underpowered Nintendo DS. I expected all sorts of explanations and excuses regarding the dual screen/touch screen feature, but when I read "meeeeh, pandora too slow, unpossible to do dat", I blew a fuse.
Also, for those who couldn't bother to read two previous pages:
Me: "Okay, maybe GC emulation would be a wee bit problematic, considering the lovely "CPU: The fastest you can find." remark in the list of requirements for Dolphin."
Me: "if we lug the functions of all that WTF hardware onto main processor, emulating the Gamecube may end up using all the Pandora's power if not needing more than it can provide."
And here's where I understood that GC is too much for Pandora.
Me: "I'm guessing that emulating PS2 would be very hard if not impossible due to EE being a 64-bit processor (you can't squeeze a 64-bit instruction through a 32-bit processor like ARM... I think)"
Hedwards: "You can do it, just not without a huge amount of horse power. Horsepower which the Pandora lacks."
Me: "As for the required horsepower, I'm suspecting that with the current capabilities, Pandora would be able to emulate the functions of EE, but as WizardStan said, there's still the rest of the stuff to be emulated which might overpower our little black box."
Here I started doubting in the emulation of PS2. After sleeping with the problem and concluding that translating 64-bit PS2 instructions to a 32-bit Pandora processor would eat up a lot of resources (and that's only the main processor!), I kinda gave up on this one completely - too bad, it's a popular platform.
BUT:
WizardStan: "Despite what others have said, PSP is looking like it could be very viable in the distant future. I seem to recall JayFoxRox posting some very promising results with his (very very alpha) emulator."
That one gave me some hope - at least PSP would be possible to emulate (32-bit architecture, half as powerful, probably enough overhead to make it run smoothly with proper optimization).
Good! That's an answer! As for "what emulation is", logic suggests that it all boils down to translating the data written for a different system in a way that Pandora can properly respond to it. Simple? Well, as far as I don't know jack about it, not at all. As someone (WizardStan or Moxie) said, RISC processors don't have one standardized set of instructions, which means that "translating" data 1 to 1 may be sometimes impossible, which means you'd have to replace one instruction not supported by ARM with two or more that would have to be processed twice (or more) as fast as the one instruction on the original machine. Then, we have all the additional bits and bobs like video and sound chips, and whatever else - those would have to be translated twice: first at the main processor to be handled by the proper chip, and second to make the output look as originally planned (and that can be programmed in a couple of different ways, as I noticed with different renderers for the PC version of ePSXe).fearofshorts said:Emulation is a massively complicated thing. Insanely complicated, in fact. I don't fully understand most of what is going on with emulation. If there were a larger and more viable paying market for it, emulator developers would be amongst the richest and most in-demand people on Earth. But there isn't.
The point is that you will simply have to deal with "yes/no" answers. You can't argue that the Pandora is "powerful" enough or that the PSP's "32-bit architecture" makes it easier to emulate, because you are not an expert. And believe me, most of the "yes/no" answers that have been given in this thread are accurate according to the real developers.
So, here's a list detailing the likelihood of particular systems ever being usably emulate-able (all collected from various experts):
Anything easier to emulate than the N64 (most consoles older than it): Nearly guaranteed.
N64: Almost guaranteed!
DreamCast: Very, Very Likely!
DS: Possible- this one's a bit of a "we have no idea" thing. It could be playable. Don't expect it anytime soon, in any case.
PSP: Possible- but more difficult than the DS seeing as it's still early days for PSP emulation on any system. Don't expect to be able to play any commercial games, just homebrew.
Windows 95 Games: Possible- This may be difficult, but it seems quite likely that less demanding games may one day be playable.
GameCube: Impossible.
PS2: Impossible.
Anything newer or harder to emulate: Impossible.
That's also debatable and it depends. There is a DOSBox thread somewhere with real life experience. You should read that.Seriously Mike said:As for PC games, what are the rough maximum specs you can expect from DosBox? Some say it's comparable to a 386, others - 486DX2/66, yet others say it's as high as P200.
Seriously Mike said:Good! That's an answer! As for "what emulation is", logic suggests that it all boils down to translating the data written for a different system in a way that Pandora can properly respond to it. Simple? Well, as far as I don't know jack about it, not at all. As someone (WizardStan or Moxie) said, RISC processors don't have one standardized set of instructions, which means that "translating" data 1 to 1 may be sometimes impossible, which means you'd have to replace one instruction not supported by ARM with two or more that would have to be processed twice (or more) as fast as the one instruction on the original machine. Then, we have all the additional bits and bobs like video and sound chips, and whatever else - those would have to be translated twice: first at the main processor to be handled by the proper chip, and second to make the output look as originally planned (and that can be programmed in a couple of different ways, as I noticed with different renderers for the PC version of ePSXe).
As for PC games, what are the rough maximum specs you can expect from DosBox? Some say it's comparable to a 386, others - 486DX2/66, yet others say it's as high as P200.
Seriously Mike said:And then, in a bit of trolling, I dropped a question about emulating the woefully underpowered Nintendo DS. I expected all sorts of explanations and excuses regarding the dual screen/touch screen feature, but when I read "meeeeh, pandora too slow, unpossible to do dat", I blew a fuse.
SomeGuy99 said:Mofokubik said:Seriously Mike said:I wonder how would NDS emulator work.
From what I remember, someone has already tried porting a DS emulator to similar hardware. It runs too slow for most games to be playable, and that's without 3d. I'm not saying that it couldn't run close to full speed, but it'll never run full speed period.
ATM- there is no DS emulator currently being worked on for the pandora.
It's possible a developer might start work on one, maybe not now but at some point in the Pandora's lifetime. DS emulation is kind of the 'Holy Grail'.
Moxie said:Lets make an analogy to different languages - Translating swedish to english, for instance. When I was a kid, I had an idea that one could translate between the languages by finding the right alphabet. Since the english word "and" is the same as the swedish word "och", then obviously we can go from swedish to english by by swapping every 'o' for an 'a', every 'c' for an 'n', and every 'h' for a 'd'. That theory didn't hold very long, I'm afraid
WizardStan said:A cheap and dirty recompile of an x86 emulator runs really slow, and it would take someone with skill to get it up to speed. No one (who actually knows what they're talking about) has ever said the DS is impossible, least of all in this thread. It's very possible. It's just that it's complex enough of a problem that no one has gotten around to doing it.
Well, you did a good job trying to understand what I had in mind, but I have a habit of thinking sideways sometimes and thinking faster than I talk even more often. "It's more complicated than it looks" - it looks simplistic (I'm not that good with English, really!), I get the basics of the problem, but all I had to do with programming were a couple of guys working with AJAX and GWT sitting in the same room, so, well, you know.Moxie said:Thinking of emulation as translating one instruction to another instruction is like my sons attempts at overputting. It will lead you right at times, but the reasoning will hinder you more than help you in the end. Do read a lot of Exophase posts, they are the path to wisdom and until then, the mantra is "It is a lot more complicated than it looks".
Seriously Mike said:PSP: barely possible (but if it ever works, don't expect running God of War[sup]*[/sup] on it. Lumines and Loco Roco maybe, but not God of War).
JayFoxRox said:Patapon is also very unlikely in the near future:
- High firmware version required iIrc
- Probably uses bezier curves to draw most things, just like Loco-Roco
- Depends on working audio (if the important sound effects are AT3Plus you are out of luck, AT3 does partly work and Wave is just out of sync [and currently disabled])
- I don't own it, nor do I really like it (can borrow it from a friend anytime soon)
//Edit: And these are just the reasons why I won't work on it in the near future. Once work starts on it, other things could (and most likely will) become problems.
Right now I focus on games I like and those which either still have debug symbols OR those which are using low firmware versions (/ depend on old libraries and use fewer system calls).
JayFoxRox said:linuxftw said:Quit lying the Psp has many awesome games (in my opinion) I like Final Fantasy Dissdidia, Daxter, Sonic Rivals, Ratchet and Clank Size Matters, Tekken Dark Resurrection, and God of War Chains of Olympus.KodeIn said:Not really a boost, since most of PSP games are not that good or are remakes of PS1 games.
When Pandora will get native 3D games that are better than PSP ones, then that will be a real boost to the Pandora!
I can't see any game of this list happening for quite some time because the only one I'm interested in myself is Tekken (and it's the only game I own from this list [though I could get the jump'n'runs from a friend]).
However, I have no idea how complex tekken is, how much you could abstract it etc. But iirc it has FMVs which would be missing and it was fairly advanced graphics wise (it used some neat tricks, coding-wise) - so I'd assume that the devs tried to optimize whereever possible and this might mean a lot of VFPU work (which is one of the slowest parts in the emulator - and almost non-existant so far).
The emulator won't be out for some time, but I will probably release snapshots once my pandora arrives. I did lots of work when I got my Pandora emulator working and dropped the interpreter, but the OS / Firmware HLE broke with the continous changes in the pandora kernel interface and changes in my own libraries - and rewriting the input system numerous times was really annoying and I wasn't motivated enough to rewrite using SDL yet (because I hate SDL - but that's another topic..), rewriting for my new libraries is / was also a lot of work.
I agree with KodeIn btw. It's far more important that good Pandora games are created and this is why I will work on the things I have ported or written month ago which broke now (mainly Guitars On Fire & SDK Samples and a few SDK Tools).
The PSP Emulator is more of a proof of concept so far. While some applications run as good as on a real PSP, it's probably too slow or unstable for most (all?) commercial games. However, the things running are probably not what you want to use.
[Note: I'm not saying that the stuff you ask for will never work, but it probably needs lots of optimisations (probably case-specific) and hence lots of time and work]
Hmm, I think I said that emulation is also heavily based on juggling all those calls to different chips the console makers put in there, and it wasn't me, then it probably was Moxie with that puzzle box analogy. And PS1 isn't more powerful than DS .Na-Noo said:I think sometimes people gets hung up on processor speeds, or even the power of the console.
Thinking it equates to what can or can't be done.
Something like the Saturn which is an older console, less powerful, but the architecture is what makes it so hard to emulate.
Architecture being what chips it uses and how they all work together.
Another example is the DS. People assume it's the 2 screens that are the biggest problem to crack, when in fact it's actually the architecture that is the problem.
I can see why people assume it's the screens, so I'm not having a dig.
I think it can be infuriating to people sometimes, when they hear oh ps1 yep full speed no problem, DS ohhhh well that's a different matter. They think huh why? ps1, n64 are more powerfull! :lol: