Thread Rating:
  • 2 Vote(s) - 2 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Port of PPSSPP to the OpenPandora
#16
Could also solve that by just #undef R0 at an appropriate place early in ArmEmitter.h.
Reply
#17
Ah sure, I'll try that. For now, I have problem with initializing EGL that didn't occured before Sad. I don't understand why I have this bad behavour. The call to eglInitialize fail with a BAD_ALLOC (0x3003). I try to put some extern "C" or changing the order of lib linked... But that's not it. I have to dig deeper.
Reply
#18
Look's like my eglInitialize problem has been solved by a reboot...
Reply
#19
Hi xsacha,

Here are the new diff.

I have to do some more modification to be abble to compile the Pandora version.

I had no luck with the #include <signal.h>
the R0 ambiguity is not between a #define, so #undef is powerless.

I added Joystick support for the Pandora.


Attached Files
.zip   pandora_diff_v2.zip (Size: 2.42 KB / Downloads: 879)
Reply
#20
Thank you xsacha. I've seen the changes in the repo... Will try a new build soon.
Reply
#21
Hi xsacha.

FIY, I successfully compiled current revision of PPSSPP on the Pandora.

A "[0]" on glConfig is missplaced, so I had first a compile error, then a Segfault at run. I'll send the diff later.

About the #include <signal.h> and #undef R0, with the new JIT, I had many new ambiguities, with almost all register from R0 to R11... I tried to #undef them but it didn't work, so I fall back (again, I know it's bad) to not include signal and declare kill.

About JIT (the version in the current git repo master branch), it compiled and run successfully on the Pandora. I activate it wth the GUI and try a couple of games. They works flawlessly but I did't found that the performance changed.
Do you know if there is some profiling tool inside PPSSPP that can be activated? I didn't found any but didn't look very much.
Reply
#22
(01-17-2013, 08:19 AM)ptitSeb Wrote: A "[0]" on glConfig is missplaced, so I had first a compile error, then a Segfault at run. I'll send the diff later.
Ok, thanks! By the way, are you sure it needs to be an array? [1]? The old version (without the array) is what is used on Blackberry. I can't imagine the EGL calls would differ between platforms.

Quote:About the #include <signal.h> and #undef R0, with the new JIT, I had many new ambiguities, with almost all register from R0 to R11... I tried to #undef them but it didn't work, so I fall back (again, I know it's bad) to not include signal and declare kill.
Sort of sucks but I guess we can use the kill define if it's needed, as a platform hack. Seems silly to rename all the R0 to R11's as that's a convenient name for registers.
Either that or we could explicitly use the namespaces.

Quote:About JIT (the version in the current git repo master branch), it compiled and run successfully on the Pandora. I activate it wth the GUI and try a couple of games. They works flawlessly but I did't found that the performance changed.
Do you know if there is some profiling tool inside PPSSPP that can be activated? I didn't found any but didn't look very much.
No profiling tool AFAIK. The bottleneck may be the GPU (as was the case with Nexus S).
Is it possible to check if the JIT is actually being enabled? Maybe it's failing and falling back or something?
Reply
#23
About the [0], yes, it need to be an Array. It doesn't work without (I tried). The fonction is supposed to return all Config availbable, but no mare then the max number passed in parameter. Even if we ask to return just 1 config (there just 2 available on the Pandora, 16bits and 32bits), the function fills an array.

ABout JIT, I'll do some experiment to be sure it's using JIT and not Interpreter. But the GPU on the Pandora is not a very powerfull one, so it may be a bottleneck. A profiling would have been handy...
Reply
#24
I confirm it's not the CPU that make the games slow. I tried with "Puzzle Bubble", a game with no 3D. It's a bit slow on the Pandora. A openned, while playing, a SSH Terminal and launch "top" to see CPU consuption. And it is between 42% to 45%. So CPU is now underused. Sound is ON, I used VBA and Buffer for rendenring, and Fastmem for JIT.
I'll do the same with JIT disabled and report here.
Reply
#25
JIT is definitly usefull. If I run the same game with JIT disabled, I have more to 90% CPU used by PPSSPPSDL, so JIT is good ! Unfortunatly, something else is now the bottleneck (and it's not sound, with or without sound makes almost no difference). I will have some guy with newer Pandora try the soft (newest with a GPU clocked 2* faster as mine).
Reply
#26
Hi,i tested this with the 1 GHZ Pandora overclocked to 1.2GHZ
Youtubevideos here
http://www.youtube.com/watch?feature=pla...ibWS8ez-5I
http://www.youtube.com/watch?feature=pla...JJ6KKe9Wr4
I can only say,WOOW good work. I was very happy to test these Games on the OpenPandora

I renembered on Pandora that someone sayed that the OpenGL ES1.1 Stuff
is faster than the OpenGL ES2 on Pandora Handheld.
Maybe can you try a Version who use OpenGL ES1.1?
That can be a Speedimprove too.

I understand not much from these Things,but i have often Ideas Smile
Maybe we can overclock the SGX 530 or the DM Grafical Processor too on Pandora.


Greetings to all from a new Forum User here Smile
And Greetings from Germany. Smile
Reply
#27
(01-19-2013, 07:20 PM)ingoreis Wrote: I renembered on Pandora that someone sayed that the OpenGL ES1.1 Stuff
is faster than the OpenGL ES2 on Pandora Handheld.
Maybe can you try a Version who use OpenGL ES1.1?
That can be a Speedimprove too.

We definitely need GL ES 2.0 here. We need to make use of features only available on 2.0.
Reply
#28
hi here a Video with PPSSPP 0.7 Running on the 1 GHZ Pandora overclocked to 1.2 GHZ
http://www.youtube.com/watch?v=TM5KonBNIQE

Enjoy Smile
Reply
#29
I added an option in menu to activate/deactivate the "Alpha Hack" mentionned in another thread. The OpenPandora use an SGX GPU, so this hack is makes some games run really faster.

Here is the diff.

Lumine & Tales of Eternia are running much faster with this activated. Tales of Eternia has some black artifact unfortunatly on figh sequence with this, but it's minor.

Also, on Pandora forum, there is a report from user "itami" that those games are runing well:

Airu de Puzzle
Densha De Go! Pocket - Chuuousen Hen
Lets Golf (no sound)
Pirates of the Caribbean: at world's end (about 50% speed)
Sid Meier's: Pirates (no sound)
Samurai Dou 2 Portable
Shichida Shiki Training Unou Tanren Portable
Zero Pilot - Daisanji Sekai Taisen


Attached Files
.zip   v0.7.0.11.zip (Size: 4.38 KB / Downloads: 786)
Reply
#30
Hi,

I have made a few more modif to the OpenPandora port, mainly around the new FrameSkipping code.

Here is the diff.

@xsacha: can you pull it to the official branch, all my modif should be garded between #ifdef PANDORA


Attached Files
.zip   v0.7.6.19.zip (Size: 5.61 KB / Downloads: 735)
Reply


Forum Jump: