Closed inactive123 closed 6 years ago
Looks to be that we lose the APP_HOME vfs when the respawn is called or something
On further checks, it looks like we need to traverse up the directory tree to find the .sfo file, instead of assuming we are one level down from it.
Yeah that makes sense, since our SELF files are located in the directory 'cores' and the EBOOT.BIN is just a small exitspawn program that just 'spawns' any of those 'core' SELF files. So I guess it isn't laid out like normal PS3 games would.
Ah, looks like the textures are working. I don't know if that stable had wrong PNG images for those icons. Try to see if it happens with this file instead -
https://buildbot.libretro.com/nightly/playstation/ps3/RetroArch.PS3.CEX.PS3.pkg
These are the latest nightlies and should have the latest icon sets.
Seems like when this issue is resolved, the only issue remaining then is figuring out why the font renderer looks all messed up.
@twinaphex Are you on discord btw, i see you are not on the irc i used to chat with you on, there also seems to be an issue with the autoupdater via rpcs3 that id like to chat about :)
Hi there, I am on #retroarch and #libretro on Freenode. I am also on the RetroArch discord but I use an IRC-to-Discord bridge there in order to talk.
My nick is DanteAli on there BTW.
Since it seems there are some issues with the texture formats, here are the PSGL texture formats that are being used -
https://github.com/libretro/RetroArch/blob/master/gfx/common/gl_common.h#L98
You would have to see what they correspond to on the libGCM side, since PSGL is just a GL-to-libgcm wrapper anyways.
Texture channel problems are fixed by this commit https://github.com/kd-11/rpcs3/commit/94f1f4662b35484a33d151b752d1cdec242a9d9d but the traversal bug keeps the icons from loading in
Will test out on my build soon :)
Hmm @kd-11 I seem to have a non transparent background here (very slightly)
Yeah that non transparent background still seems wrong on the glyphs.
Fixed in new commits on my fork
This has been fixed by #3914 #3931 and #3984
Closing as solved
Hi there,
it seems that RPCS3 seems to have a lot of problems with file paths when I try to use RetroArch PS3 on the emulator. RetroArch PS3 was made with the real PS3 SDK instead of PSL1GHT.
Version of RPCS3 used: v0.0.4-6209-d8ae94df Alpha
Further information provided - I use PSGL for graphics, I use stb_font for rendering the font glyphs, and I am using the runtime Cg compiler to load shaders on the fly from source.
Here is a log file -
https://hastebin.com/bosotizeca.js
Graphics problems:
This is what it looks like right now -
This is how it should look like instead (screenshot taken on PC with Cg shader backend) -
How to test this
Download the latest version of RetroArch for PS3 here -
https://buildbot.libretro.com/stable/1.6.9/playstation/ps3/
https://buildbot.libretro.com/stable/1.6.9/playstation/ps3/RetroArch.PS3.CEX.PS3.pkg
NOTE - It seems RPCS3 isn't yet capable of dealing with DEX debug SELFs. Tried using it but I couldn't get it to boot up so I had to resort to the CEX build instead.
Install the pkg in RPCS3. Start it up. It should auto default to one core out of the package.
Source
All of our source code for the PS3 port is publicly available on our repository -
https://github.com/libretro/RetroArch
Let me help you further along and point you to some of the PS3-specific code (beyond these files, all the normal codepaths that would normally get used on PC are used too here) -
File I/O code specific to PS3
https://github.com/libretro/RetroArch/blob/master/frontend/drivers/platform_ps3.c
This file sets up all the filesystem paths - say, where to get the assets directory from, where to get the cores from, etc.
https://github.com/libretro/RetroArch/blob/master/libretro-common/file/retro_dirent.c
This file has some PS3-specific code for iterating over files.
Graphics code specific to PS3
https://github.com/libretro/RetroArch/blob/master/gfx/drivers/gl.c
Basically the PS3 reuses the same GL driver as on PC. The only differences is that HAVE_PSGL, HAVE_OPENGLES are defined, so it employs some of the PSGL-optimized codepaths. For instance, it uses texture references which is some special construct available only in PSGL.
More PS3-specific code can be found in the renderchain file here -
https://github.com/libretro/RetroArch/blob/master/gfx/drivers_renderchain/gl2_renderchain.c
Hopefully this information was helpful, and hopefully it will help make RPCS3 an even better PS3 emulator! I'd be very glad if we could start using RPCS3 as a debugger for our PS3 port personally.