Perfect Snes For Gp2x


Jarska333 posted on Oct 18 2005 at 04:50 PM said:
I seem to recall, that LJGP had some setting for double the number of sprites. Those kind of things are good additions.

After reading Epicenters page on overclocking MD, I'm wondering, if DrMD suffers from limitations of the original hardware, is it perfectly emulated, so to speak, or if Reesy has actually aimed for "perfect" emulation, as in, how the gamemakers wanted the game to run, without slowdowns and such.

Just a random thought.

i one emu that has this option, and that's neogenesis for xbox. you can choose to overclock the cpu core to get rid of slowdowns as seen in games like sonic(eg. slowdown when you lose all rings).
i'm not sure if the gp2x could handle this, but it would be nice :D


and new HD 2D games with high res sprites would be a blast!! i love games like guilty gear xx for their nice big detailed clean sprites, and i hope we get more of that in the future for 2d fighters.
shouldn't be that much harder to format and create for the popular 720p resolution. i'm definitely looking forward to the 2d games headed for the next systems..i hope they'll all be nice and sharp and in 720p :)
 
Last edited by a moderator:
Epicenter posted on Oct 18 2005 at 10:24 AM said:
What? No, you'e got it all wrong. First off, XScales are CPUs, not full system solutions. They do not combine a GPU into themselves, this is a feature that must be added by the PocketPC manufacturer.
What I meant is that the Zaurus has the Intel graphics chip with the XScale CPU, Intel makes a GPU for the XScale, and most handhelds use it, even if they put a ATI or nVidia chip in it.
Epicenter posted on Oct 18 2005 at 10:24 AM said:
The ONLY PocketPCs I am aware of, and I've done much research into this, are Dell's Axim x50v and Toshiba's e740/e750/e755. These each use their custom API which has no real common standard yet, and almost 0 software exists yet to take advantage of either.
Once again the Zaurus uses the XScale, at least the Cxxx series, and uses the GPU that Intel makes. The problem with Dell and Toshiba's pocketPCs is they don't use an open OS or SDK, I haven't looked into them, but I'm basically looking at the home-brew on the Zaurus, which runs Linux and is very open like the GP2X. Or do they run Linux, I need to check. As far as Linux handheld API, Linux-run handhelds use open API's like Opie and GPE. Is this what you're talking about?
Epicenter posted on Oct 18 2005 at 10:24 AM said:
At any rate, to accelerate SNES video operations, an emulator would need to translate instructions to the emulated VDP to instructions in the API of a 2D Accelerator whose very design is to operate in the narrow scope of the Windows Mobile operating system. The output of this chip would be instructions understood only by the OS, not by the 65c816 in the SNES-- the output would be worthless. In short, you could not easily accelerate an emulated SNES using a properitary 2D processor like that in very few PocketPCs.
I agree to a point. Intel's graphics chip that is usually bundeled with the XScale is very difficult to program for, at least for Linux, which might be due to a lack of support. The XScale GPU can get all the things needed for Snes9x to work, while the CPU in the Zaurus takes care of eveything else.
Epicenter posted on Oct 18 2005 at 10:24 AM said:
Bottom line-- No SNES emulator for PocketPC or ANY platform uses any sort of hardware acceleration for its VDP functionality because it is nearly impossible, and prohibitively difficult and laden with overhead that would negate the helpfulness of offloading work onto a GPU in the first place.
PocketPC, but it's not PocketPC, it's Linux I'm talking about. The newest Zaurus' run SNES at full speed with sound since someone started programming the XScale to take the burnt of the difficult stuff. I might be wrong, but this is what it sounds like on the Zaurus forums I've read, and it's a buzz right now because now you can emulate the SNES at full speed on a handheld.
Epicenter posted on Oct 18 2005 at 10:24 AM said:
Furthermore, the 2nd CPU in the system is intended primarily for video functionality. Not only was it selected specifically for use in video decompression, and scaling, but also for 2D graphics blitting for acceleration of graphics operations in games (e.g. via SDL's SMP blitting options for defined screens). It's not a special-purpose CPU but it is certainly being used as a "GPU" of sorts, or in a broader definition of the chip in the context of the GP2x's functionality, a specialized video helper chip.
I'm going to play the 'open' card here and say you can make the CPU's do whatever you want even if hardware doesn't permit it, to a point anyway. You're not going to be locked down by the manufacturer like you would on PocketPC's.
Epicenter posted on Oct 18 2005 at 10:24 AM said:
I suspect GPH didn't elect to include a GPU because:

- 1. The intended primary function of the system wasn't to provide high-end 3D visuals, because a homebrew development scene isn't going to produce eninges with incredible graphics quickly while getting the hang of a complex 3D API. SDL was clearly selected for its age, tried-and-true nature, simplicity, and enormous quantities of documentation.

- 2. Power use-- GPUs use gobs of power compared to the ridiculously power-efficient ARM9 architecture. This is why the machine can get over 8-14 hours of operation under heavy loads. If nVidia and ARM's cooperative efforts come to fruition we may someday soon see ARM11 based GPUs that can be used in portables with only a minor hit to battery life-- right now what will really hog power in the GP2x, as well as in the DS and other ARM9 based portables, is actually the display, as the CPU uses scarcely over 1 watt of power even at 200 MHz!

(More info on nVidia/ARM's collaboration here: http://www.physorg.com/news4323.html)

- 3. API -- it would be far more complex to push out the door, and to develop good documentation and a comprehensive SDK for, a complex API like that which a GPU utilizes, e.g. OpenGL-- modern graphics cards have big, fat complex drivers feeding instructions to a BIOS interpreting the API and calling the shots for the GPU. This is a LOT of overhead for a portable device, and we probably won't see a commonly accepted GPU for portable devices until a lightweight API that can operate in more tight coordination between the software and the GPU with less intermediaries is formed and standardized.
I agree with the reasons why they didn't include a GPU, they aren't there yet. I read a blog somewhere on the net from someone that works for some cell phone company. Basically nVidia sent them a dev kit just to play with their GPU, the GoForce. Anyway, he loved it, said it will make programing gui's and graphics much easier, but the price tag and power usage was too much for cell phones right now. ATI and nVidia are trying to get their GPU's into handhelds, look at the blogs of programmers for the Gizmondo, basically powerful GPU's for handhelds are getting there. I think the next handheld from GPH will have a dedicated GPU since they are so close.

But anyway, I agree, and I'm just repeating what I read on the Zaurus forms and other places, I may be completely wrong as I don't do this for work. But that's how I understand it. So don't come back and flame me.

So you do or don't think a SNES emu will run on the GP2X?

Thanx,
Stan
 
Last edited by a moderator:
second exodous posted on Oct 18 2005 at 10:51 PM said:
But anyway, I agree, and I'm just repeating what I read on the Zaurus forms and other places, I may be completely wrong as I don't do this for work. But that's how I understand it. So don't come back and flame me.

So you do or don't think a SNES emu will run on the GP2X?

Thanx,
Stan


Sure it will run. How well it will run is the real question and we won't have the answer for some time. I would say it will run better than the GP32 but not quite as well as it runs on the PSP because of the slower CPU. If alot of ASM is done then it could get to possibly PSP speeds.
 
Last edited by a moderator:
DaveC posted on Oct 18 2005 at 11:21 PM said:
Sure it will run. How well it will run is the real question and we won't have the answer for some time. I would say it will run better than the GP32 but not quite as well as it runs on the PSP because of the slower CPU. If alot of ASM is done then it could get to possibly PSP speeds.

Are you sure the PSP is a faster CPU. I'm sure if you looked you can find lots of comparisons of the two chips in say dmips.
 
Last edited by a moderator:
Alpha2 posted on Oct 18 2005 at 07:17 PM said:
I think Dave is working on the assumption that the second processor isnt being used. Thus 200 vs. 333mhz.

But they are not the same processor, correct? As you have said like a million times thats apples and oranges.

If we use the second core we can get a huge speed boost plus there is always OverClocking, so in the end we should be able to get perfect snes.
 
Last edited by a moderator:
you're forgetting your apples and oranges, alpha2 ;)
the arm9 is a supposedly faster architecture than what the psp uses.

beat me to it XD

and yes, there will be overclocking!! at least i hope there will be...nothing to say otherwise now..
 
reallynotnick posted on Oct 19 2005 at 01:26 AM said:
Alpha2 posted on Oct 18 2005 at 07:17 PM said:
I think Dave is working on the assumption that the second processor isnt being used. Thus 200 vs. 333mhz.

But they are not the same processor, correct? As you have said like a million times thats apples and oranges.

If we use the second core we can get a huge speed boost plus there is always OverClocking, so in the end we should be able to get perfect snes.

Thats assuming its not already possible with the new 2D chip + ram layout. and please the PSP is 222mhz its that for a reason.
 
Last edited by a moderator:
Keep in mind also they we will have an official SDK specifically for the GP2X, unlike the PSP. So even if the CPU is somewhat weaker we will be able to fully utilize it unlike PSP devvers which have to work with an unofficial SDK on a system that does not want homebrew run on it.

EDIT: @ Cyclops, the PSP can run at 200 (I think) and 333 mhz. Not a lot of stuff uses the 333 mhz (not even official games) because I hear it drains the battery like crazy.
 
I never said he was right! i just said that's probably what he's thinking. I'd have Said Apples and Oranges again but You guys already know the deal, that'd just make me a broken record.

Also, You can overclock the PSP SNES emu to 333 but I prefer not to because of the stated battery drain.
 
reallynotnick posted on Oct 19 2005 at 01:26 AM said:
Alpha2 posted on Oct 18 2005 at 07:17 PM said:
I think Dave is working on the assumption that the second processor isnt being used. Thus 200 vs. 333mhz.

But they are not the same processor, correct? As you have said like a million times thats apples and oranges.

If we use the second core we can get a huge speed boost plus there is always OverClocking, so in the end we should be able to get perfect snes.

Well according to programmers that have the GP2X boards the second core does not give that much of a boost. It is mainly used for outputting graphics and sound but NOT emulating graphics or sound chips. It takes longer to read and write from each other than to just emulate on one core. The result is only minimal speed increases.
 
Last edited by a moderator:
DaveC posted on Oct 19 2005 at 02:23 AM said:
Well according to programmers that have the GP2X boards the second core does not give that much of a boost. It is mainly used for outputting graphics and sound but NOT emulating graphics or sound chips. It takes longer to read and write from each other than to just emulate on one core. The result is only minimal speed increases.

Thats not true is it.
 
Last edited by a moderator:
Cyclops posted on Oct 19 2005 at 02:30 AM said:
DaveC posted on Oct 19 2005 at 02:23 AM said:
Well according to programmers that have the GP2X boards the second core does not give that much of a boost.  It is mainly used for outputting graphics and sound but NOT emulating graphics or sound chips.  It takes longer to read and write from each other than to just emulate on one core.  The result is only minimal speed increases.

Thats not true is it.

Re-read this thread where Squidge talks about it. Doesn't sound like the second CPu does too much for emulators.

http://www.gp32x.de/board/index.php?showtopic=20988&st=30
 
Last edited by a moderator:
Cyclops posted on Oct 18 2005 at 08:30 PM said:
DaveC posted on Oct 19 2005 at 02:23 AM said:
Well according to programmers that have the GP2X boards the second core does not give that much of a boost.  It is mainly used for outputting graphics and sound but NOT emulating graphics or sound chips.  It takes longer to read and write from each other than to just emulate on one core.  The result is only minimal speed increases.

Thats not true is it.

I thought I was the most pesimistic person in the world but every time Dave seems to be on a whole nother level. Really if there was no point in the second core wouldn't they have just use like a 250mhz or 300mhz single core processor?

What about the 2d accelerator? Won't that be of some help too?

Lastly there are always speed hacks that can be used (some might not call it 'perfect emulation' then), but we have a lot of ram to work with for those.
 
Last edited by a moderator:
reallynotnick posted on Oct 19 2005 at 02:43 AM said:
Cyclops posted on Oct 18 2005 at 08:30 PM said:
DaveC posted on Oct 19 2005 at 02:23 AM said:
Well according to programmers that have the GP2X boards the second core does not give that much of a boost.  It is mainly used for outputting graphics and sound but NOT emulating graphics or sound chips.  It takes longer to read and write from each other than to just emulate on one core.  The result is only minimal speed increases.

Thats not true is it.

I thought I was the most pesimistic person in the world but every time Dave seems to be on a whole nother level. Really if there was no point in the second core wouldn't they have just use like a 250mhz or 300mhz single core processor?

What about the 2d accelerator? Won't that be of some help too?

Lastly there are always speed hacks that can be used (some might not call it 'perfect emulation' then), but we have a lot of ram to work with for those.


Don't blame me I am just the messenger. Read that thread I am not the one that gives the bad news.

Why did they use what they did? Probably because it is cheap and power efficient and decodes video well. I dont think GPH is "up" on the emu scene, the thing they were after was mostly PMP (video, MP3) functions not emulation.

For emulation a single 400 MHz CPU would have been MUCH better.
 
Last edited by a moderator:
you misread what squidge said!
he's not sure about how to utilize the second core efficiently for that emulator, and says if he could throw the display updating to the 2nd core, but that would give a minimal speedup.
in any case, that comment was for that case, not in the case of writing an emulator from the ground up to use two cores. that's different than trying to port an emulator that's written to use one core to use two.
 
Wow, there is a lot of 'unknowns' and 'maybe', I think it's time to just wait. I don't think I'm going to do any more research until the GP2X comes out because there is nothing like it on the market right now. I don't think we'll know exactly what it's capable of until we get it, but I sincerely do hope that it surprises everyone.

Thanx,
Stan
 
second exodous posted on Oct 19 2005 at 05:53 AM said:
Wow, there is a lot of 'unknowns' and 'maybe', I think it's time to just wait. I don't think I'm going to do any more research until the GP2X comes out because there is nothing like it on the market right now. I don't think we'll know exactly what it's capable of until we get it, but I sincerely do hope that it surprises everyone.

The GP2x does have much more than two Arm9@200MHz cores under its hood. Read about its "heart" here:

http://www.mesdigital.com/english/Products/product_mmsp2.asp

and here you can read more condensed info:
http://www.mygp2x.com/

Though the chipset ("MagicEyes's MMSP2") what the GP2x uses is a rather generic part (not designed specificaly for a handheld console but also for other appliances such as digital cameras) it has some very interesting capabilities.

It yet to be seen to what extent GP2x's hardware coprocessors could be usefull for an emulation but certainly things might get interesting. The second cpu "controversy" is a valid one but it is not inherit flaw of GP2x. All multicpus systems have the same problems with efficient use of their cpu's.

So... given very short time the developers (and not many of them) have been experimenting
 
Last edited by a moderator:
second exodous posted on Oct 19 2005 at 05:53 AM said:
Wow, there is a lot of 'unknowns' and 'maybe', I think it's time to just wait. I don't think I'm going to do any more research until the GP2X comes out because there is nothing like it on the market right now. I don't think we'll know exactly what it's capable of until we get it, but I sincerely do hope that it surprises everyone.

The GP2x does have much more than two Arm9@200MHz cores under its hood. Read about its "heart" here:
http://www.mesdigital.com/english/Products/product_mmsp2.asp

and here you can read more condensed info:
http://www.mygp2x.com/

Though the chipset ("MagicEyes's MMSP2") what the GP2x uses is a rather generic part (not designed specificaly for a handheld console but also for other appliances such as digital cameras) it has some very interesting capabilities.

It yet to be seen to what extent GP2x's hardware coprocessors could be usefull for an emulation but certainly things might get interesting. The second cpu "controversy" is a valid one but it is not inherit flaw of GP2x. All multicpus systems have the same problems with efficient use of their cpu's.

So... given very short time the developers (and not many of them) have been experimenting with the GP2x I would cautiously say a future looks good. Perhaps not that bright we would wanted but not bad either. For me videoplayback capabilities, TV out, vastly superior storage options, Linux by default (and option to bypass a firmware if needed) sold the GP2x alone. :D

<_< *hit, I made semidoublepost mistakenly clicking on the "submit post" button and then rolling back page... I don't how delete this unneeded post. Sorry and the administrator please to delete it.
 
Last edited by a moderator:
Back
Top