crystalct / RetroArch_PSX_CE

50 stars 7 forks source link

Where to find CELL_SDK to build retroarch CE? #8

Open ZhiWei-Jiang opened 1 year ago

ZhiWei-Jiang commented 1 year ago

i want to build 1.14 latest retroarch with CE patch ,but i cant found suitable env. who can help me?

crystalct commented 1 year ago

https://www.psdevwiki.com/ps3/SCEI_PS3_SDK Latest public leaked is SDK 475.001

archive.org is a good starting point......

ZhiWei-Jiang commented 1 year ago

/drives/e/PS3_SDK/host-win32/sn/bin/ps3ppuld.exe -oformat=elf objs/snc/griffin/griffin.ppu.o -L/drives/e/PS3_SDK/target/ppu/lib/PSGL/RSX/opt -lPSGL -lPSGLcgc -lretro_ps3 -lcgc -lgcm_cmdasm -lgcm_sys_stub -lresc_stub -lm -lio_stub -lfs_stub -lsysutil_stub -lsysutil_game_stub -lsysutil_screenshot_stub -lsysutil_np_stub -lpngdec_stub -lsysmodule_stub -laudio_stub -lnet_stub -lnetctl_stub -lpthread -o retroarch_ps3.elf ps3ppuld 430.1.5139.0 (rel,ps3,430.1,common,src @160906 x64) E:\PS3_SDK\host-win32\sn\bin\ps3ppuld64.exe Command line : error: L0032: could not open file "libretro_ps3.a" Command line : error: L0064: Linking aborted

libretro_ps3.a this file is needed,looks like Makefile.ps3.salamander needs to be compiled,but i cant handle this...

ZhiWei-Jiang commented 1 year ago

bro, I've watched every video and comics of Saint Seiya,I prefer LC. Maybe you can make a build tutorial ..

danboid commented 2 months ago

@crystalct so we can only build RetroArch for the PS3 used the official Sony PS3 SDK right?

I see that the ps3toolchain repo has a port of SDL. What is preventing RetroArch from being built using the PSL1GHT SDK or another open SDK? I'd presume RA doesn't need 3D hardware acceleration for most of its cores so the lack of that shouldn't be a big issue as I expect that will be absent in the open source SDKs due to missing GPU driver support.

I see that the official Sony PS3 SDK only supports ancient versions of Linux and Windows XP. Does it still work under modern versions of Windows or Linux or do you use this SDK with XP in a VM to do PS3 dev?

crystalct commented 2 months ago

No, you can also compile using ps1light, but the graphics driver, RSX, is not complete. The entire shader management part is missing, for example.

danboid commented 2 months ago

There seems to be at least three PS3 Makefiles and they appear to be Windows specific too?

Which one of the Makefiles should I use to build this using the ps3toolchain repo and psl1ght, under Linux?

If the Makefile doesn't also create a PS3 .pkg package, could you also explain how to build that too with the same open source SDK.

Please add a some build instructions to the README. If you can tell me how to do it then I'll submit a PR to document it for you.

Thanks

crystalct commented 2 months ago

https://github.com/ps3dev/ps3toolchain has good instructions for compiling, as well as https://github.com/ps3dev/PSL1GHT

danboid commented 2 months ago

I have already successfully built ps3toolchain which includes PSL1GHT. I'm asking you how to build RetroArch for the PS3 after already having built the the ps3toolchain repo and exported its EVs.

Which one of the 4 Makefiles in this repo is the most likely to work with PSL1GHT?

Have you ever built RetroArch using PSL1GHT or are you assuming it will work?

Thanks for your help!

crystalct commented 2 months ago

Makefile.psl1ght.salamander => To create the main structure Makefile.psl1ght => to create each individual core (putting the right compiled core, renamed to libretro_psl1ght.a, inside retroarch folder). A good start to test everything is to compile the library for the 2048 core ( make -f Makefile.libretro platform=psl1ght ), put it in the retroarch folder, rename it libretro_psl1ght.a and create the 2048 core using Makefile.psl1ght

danboid commented 2 months ago

Thanks.

The actual RA source isn't part of this repo so which version(s) of RA are these patches known to work with?

I think there must be at least two steps before I run any Makefiles:

Then it will be a case of rewriting/updating the makefiles for use with PSL1GHT as it seems they are written for the Windows version of the PS3 SDK, I'm not overly confident about that step, I must admit.

crystalct commented 2 months ago

Retroarch PSX CE editiron was made to make compilation work with the old Sony SDK. Currently with the current version of Retroarch, it no longer works. Compilation with PSL1GHT must be done directly with the Retroarch sources and that's it.

danboid commented 2 months ago

@crystalct you're right - RA and libretro have Makefiles for PSL1GHT but there is no PS3/PSL1GHT specific build docs that I've been able to find.

I have been successful in getting RA to build for the PS3 using PSL1GHT by copying one or more cores into the retroarch dir and either renaming one of them to libretro_psl1ght.a or editing the makefile to link to whatever the core libs are called. Doing that gets RA to build but when I run it RA says "No cores available" so this doesn't seem to be the legit way to build cores for the PS3 version.

It seems cores are handled slightly differently on the PS3 than under RA for Linux. Under Linux RA, you just need to copy the .so files for each core into the libretro dir ( /usr/lib/x86_64-linux-gnu/libretro under Ubuntu) but it seems the PS3 version wants .SELF files, looking at other RA packages for the PS3. After building the cores, I end up with .a libraries in libretro-super/dist/psl1ght, not .self files.