Thread Closed 
 
Thread Rating:
  • 14 Votes - 4.07 Average
  • 1
  • 2
  • 3
  • 4
  • 5
PPSSPP iOS Port
12-06-2012, 02:41 PM (This post was last modified: 12-06-2012 02:43 PM by rock88.)
Post: #16
RE: PPSSPP IOS Port
xsacha,
Thank you for your changes, it is now much easier to make a build for IOS, by flags ARM and USING_GLES2. Now do not need to edit a lot of files.

But still had a few files to a little change -

Code:
sceKernelMbx.cpp -
std::vector<std::pair<SceUID, u32>>
>> defined as right shift, i put a space between them

Code:
LogManager.cpp -
remove logging, just replace
#ifndef ANDROID
on a
#if !defined(ANDROID) && !defined(IOS)
maybe replace it on a #ifndef ARM ?

Code:
MemArena.cpp -
remove static declaration on a
static std::string ram_temp_file;
needed for set ram_temp_file in another source file.

Still required one change to the project "native", I did not touch the project entirely, and simply copied file zip_read.cpp to the directory ios.
Somehow, method VFSReadFile does not correctly work...

Later I'll try to do a generation of Xcode project via cmake.

Henrik,
Depends does speed of emulation from screen refresh rate? In the port is standard - 30 FPS. And for some reason not work a Buffered Rendering. As well to display the on-screen buttons necessary to clean fbo_unbind () from EmuScreen.cpp.



The port is located at the same address - http://github.com/rock88/ppsspp
To compile more not needed the project "native", adapted for ios, and therefore i removed it.
Visit this user's website Find all posts by this user
12-06-2012, 04:58 PM
Post: #17
RE: PPSSPP IOS Port
The first issue might be fixed if you can set your compiler to enable C++11 mode. Here is some info: http://stackoverflow.com/questions/45742...with-xcode

The LogManager and MemArena things need to be fixed yes, I'll do that.

I've heard that there are some differences in how you deal with FBO on iOS, probably some adjustments need to be made.

The emulation does lock to the refresh rate but should be able to reach 60fps easily if you run simple things like the cube.
Find all posts by this user
12-07-2012, 07:21 AM (This post was last modified: 12-07-2012 07:39 AM by xsacha.)
Post: #18
RE: PPSSPP IOS Port
NativeApp, EmuScreen and zip_read are duplicates. You can use the existing files.
I know it's weird that those UI files are under the 'android' subfolder but every platform is using them.

Also, I thought iOS uses 114x114 icons? Blackberry and iOS should be able to use the same one for that. Otherwise maybe the Android icons. We can stick these in a common place if they are all being shared around.

You probably want a single main file (ViewController.mm?) that hooks in to everything (the Objective-C one). This should go in the native submodule.
Then all the other files are just xcode project files I guess. They can be generated by cmake (and then you'll have all the stuff like c++11 auto set which should solve the remaining errors?).

iOS FBO is same as Blackberry one so that codepath should technically work. Will need to debug that if it's still having issues.
Find all posts by this user
01-06-2013, 04:32 AM
Post: #19
RE: PPSSPP IOS Port
IOS long time not updated

请大家遵守论坛制度,谢谢
Find all posts by this user
01-09-2013, 03:10 PM
Post: #20
RE: PPSSPP IOS Port
Sorry guys, long time since I not appeared here...

Today I updated ios port, but there were some bugs -
Ridge Race 2 Demo in the format EBOOT crash;
Code:
* thread #1: tid = 0x2403, 0x0006f932 PPSSPP`ElfReader::LoadInto(unsigned int) + 322 at ElfReader.cpp:249, stop reason = EXC_BAD_ACCESS (code=EXC_ARM_DA_ALIGN, address=0xb2d9a89)
    frame #0: 0x0006f932 PPSSPP`ElfReader::LoadInto(unsigned int) + 322 at ElfReader.cpp:249
    frame #1: 0x0008c61e PPSSPP`__KernelLoadELFFromPtr(unsigned char const*, unsigned int, std::string*) + 534 at sceKernelModule.cpp:299
    frame #2: 0x0008cd1a PPSSPP`__KernelLoadExec(char const*, SceKernelLoadExecParam*, std::string*) [inlined] __KernelLoadModule(unsigned char*, SceKernelLMOption*, std::string*) + 80 at sceKernelModule.cpp:630
    frame #3: 0x0008ccca PPSSPP`__KernelLoadExec(char const*, SceKernelLoadExecParam*, std::string*) + 394 at sceKernelModule.cpp:685
    frame #4: 0x000ae4f2 PPSSPP`Load_PSP_ELF_PBP(char const*, std::string*) + 1086 at PSPLoaders.cpp:135
    frame #5: 0x000a282e PPSSPP`LoadFile(char const*, std::string*) + 514 at Loaders.cpp:96
    frame #6: 0x000aebc4 PPSSPP`PSP_Init(CoreParameter const&, std::string*) + 252 at System.cpp:65
Other games work in the small screen, see screenshot.
   
I think that might be a mistake somewhere screen coordinates, that's what is used -
Code:
g_dpi = 300
g_dpi_scale = 0.800000
pixel_xres = 960
pixel_yres = 640
pixel_in_dps = 1.250000
dp_xres = 768
dp_yres = 512
dp_xscale = 0.800000
dp_yscale = 0.800000

I still can not learn to work with Github (updating, merging from original repositories), so I deleted the old fork and created the new Blush
Visit this user's website Find all posts by this user
01-09-2013, 03:36 PM
Post: #21
RE: PPSSPP IOS Port
What is the reason for the duplicate zip_read.cpp and NativeApp.mm? If you use the NativeApp.cpp the screen will render fine (not small) because scaling is fine there.

Also, is it possible to use the existing icons in assets/ ? Should use 114x114, same as the existing Blackberry one.
Find all posts by this user
01-10-2013, 03:33 AM
Post: #22
RE: PPSSPP IOS Port
(01-09-2013 03:10 PM)rock88 Wrote:  Sorry guys, long time since I not appeared here...

Today I updated ios port, but there were some bugs -
Ridge Race 2 Demo in the format EBOOT crash;
Code:
* thread #1: tid = 0x2403, 0x0006f932 PPSSPP`ElfReader::LoadInto(unsigned int) + 322 at ElfReader.cpp:249, stop reason = EXC_BAD_ACCESS (code=EXC_ARM_DA_ALIGN, address=0xb2d9a89)
    frame #0: 0x0006f932 PPSSPP`ElfReader::LoadInto(unsigned int) + 322 at ElfReader.cpp:249
    frame #1: 0x0008c61e PPSSPP`__KernelLoadELFFromPtr(unsigned char const*, unsigned int, std::string*) + 534 at sceKernelModule.cpp:299
    frame #2: 0x0008cd1a PPSSPP`__KernelLoadExec(char const*, SceKernelLoadExecParam*, std::string*) [inlined] __KernelLoadModule(unsigned char*, SceKernelLMOption*, std::string*) + 80 at sceKernelModule.cpp:630
    frame #3: 0x0008ccca PPSSPP`__KernelLoadExec(char const*, SceKernelLoadExecParam*, std::string*) + 394 at sceKernelModule.cpp:685
    frame #4: 0x000ae4f2 PPSSPP`Load_PSP_ELF_PBP(char const*, std::string*) + 1086 at PSPLoaders.cpp:135
    frame #5: 0x000a282e PPSSPP`LoadFile(char const*, std::string*) + 514 at Loaders.cpp:96
    frame #6: 0x000aebc4 PPSSPP`PSP_Init(CoreParameter const&, std::string*) + 252 at System.cpp:65
Other games work in the small screen, see screenshot.

I think that might be a mistake somewhere screen coordinates, that's what is used -
Code:
g_dpi = 300
g_dpi_scale = 0.800000
pixel_xres = 960
pixel_yres = 640
pixel_in_dps = 1.250000
dp_xres = 768
dp_yres = 512
dp_xscale = 0.800000
dp_yscale = 0.800000

I still can not learn to work with Github (updating, merging from original repositories), so I deleted the old fork and created the new Blush
What time can release ipa? Thank You sir

请大家遵守论坛制度,谢谢
Find all posts by this user
01-10-2013, 01:21 PM
Post: #23
RE: PPSSPP IOS Port
xsacha,
I removed zip_read.cpp and NativeApp.mm. (function VFSReadFile() not work correctly because i set wrong path, i just put "/" in end of path and it work!).
Same using NativeApp.cpp, but screen rendering are still in small rect.
I noticed that the initialize variables are not in the order, now I've done both in the app-android.cpp, first init variable from NativeApp_init function, next from NativeRenderer_displayInit. But it did not help.

For ios icons must named that -
icon.png - iPhone non Retina (57 × 57)
[email protected] - iPhone with Retina (114 × 114)
icon-72.png - iPad non Retina (72 × 72)
[email protected] - iPad with Retina (144 × 144)

And other icon with other name and resolution not suitable.

(01-10-2013 03:33 AM)zzq920817 Wrote:  What time can release ipa? Thank You sir
Now, there are some problems with the display screen, we must first fix it. And anyone can make build from sources.
Visit this user's website Find all posts by this user
01-11-2013, 01:06 AM (This post was last modified: 01-11-2013 01:10 AM by rock88.)
Post: #24
RE: PPSSPP IOS Port
(01-11-2013 12:22 AM)openglhk Wrote:  missing prefix.pch?
For some reason not added the PPSSPP-Prefix.pch. I now added it.

Previous post disappeared somewhere... Huh
Visit this user's website Find all posts by this user
01-11-2013, 03:39 AM
Post: #25
RE: PPSSPP IOS Port
(01-10-2013 01:21 PM)rock88 Wrote:  xsacha,
I removed zip_read.cpp and NativeApp.mm. (function VFSReadFile() not work correctly because i set wrong path, i just put "/" in end of path and it work!).
Same using NativeApp.cpp, but screen rendering are still in small rect.
I noticed that the initialize variables are not in the order, now I've done both in the app-android.cpp, first init variable from NativeApp_init function, next from NativeRenderer_displayInit. But it did not help.

For ios icons must named that -
icon.png - iPhone non Retina (57 × 57)
[email protected] - iPhone with Retina (114 × 114)
icon-72.png - iPad non Retina (72 × 72)
[email protected] - iPad with Retina (144 × 144)

And other icon with other name and resolution not suitable.

(01-10-2013 03:33 AM)zzq920817 Wrote:  What time can release ipa? Thank You sir
Now, there are some problems with the display screen, we must first fix it. And anyone can make build from sources.
Why do I compile out ipa file to friends installation, he run ISO image files program will collapse, and I won't like this, how to solve

请大家遵守论坛制度,谢谢
Find all posts by this user
01-11-2013, 11:59 AM
Post: #26
RE: PPSSPP IOS Port
zzq920817,
Some games may crash the emulator, such as Ridge Racer 2 Demo craching on 0.5, but working on 0.4.
Visit this user's website Find all posts by this user
01-12-2013, 11:35 PM
Post: #27
RE: PPSSPP IOS Port
Look at line 163 of NativeApp.cpp. You need to do an #ifdef for platforms that pack assets inside the installable. That way you can leave external_directory.
Find all posts by this user
01-13-2013, 02:36 AM
Post: #28
RE: PPSSPP IOS Port
(01-12-2013 11:35 PM)xsacha Wrote:  Look at line 163 of NativeApp.cpp. You need to do an #ifdef for platforms that pack assets inside the installable. That way you can leave external_directory.

Operation to ISO file program collapse can solve?

请大家遵守论坛制度,谢谢
Find all posts by this user
02-08-2013, 10:04 PM
Post: #29
RE: PPSSPP IOS Port
Any updates on this? Huh
Find all posts by this user
02-08-2013, 11:22 PM
Post: #30
RE: PPSSPP IOS Port
Haha no love for ios
Find all posts by this user
Thread Closed 


Forum Jump: