citronalco / OPL-Daily-Builds

OPL "Daily" Builds (Releases)
http://www.ps2-home.com/forum/viewtopic.php?f=13&t=3
Academic Free License v3.0
4 stars 1 forks source link

Notes #3

Open citronalco opened 9 months ago

citronalco commented 9 months ago

Compiles with gkbmdz/ps2dev:latest, which is ps2sdk from 2021-10-16 (ps2sdk:v1.3.0 is from 2021-06-18), until including:

commit 26be1af9657d691a0dcbbbf4ba285eb231a53c76
Author: Maximus32 <rgaiser@gmail.com>
Date:   Mon Jun 6 21:49:01 2022 +0200

    Dynamically check fakemodule list, fixes PADEMU on SMB/HDD with some games

Jay-Jay's last commit is aa531a858c583104bfd577c4715339c8ce68d534

TODO: Test ELM. If it works: Switch to a slightly newer ps2sdk, try again, if it still works: Move forward! DONE! Result: Yes, works, including ELM/popstarter. In PCSX2 and on real hardware. Branch: "smaller-steps", Commit cf7215de60088b59c0b68a700eb02edfc4233d75

Next commit would be 49e383cd5145cdbd52e5d6ced7956fb8f95de389 ("Fix: rename NRExit to __NR_KExit"), which works around a syscall renaming in ps2sdk in 2022/05/31 (https://github.com/ps2dev/ps2sdk/commit/00a4a9ab5e61037f24ac76e24a7d0e68012ec6fe) - means I have to either skip that patch, or move to a newer toolchain.

When skipping this patch and (reverting this commit) and merging all commits until end of 2022 (see branch smaller-steps-2), building fails with make[1]: Entering directory '/project'

In file included from src/supportbase.c:8:
./modules/iopcore/common/cdvd_config.h:82:5: error: unknown type name ‘bd_fragment_t’
   82 |     bd_fragment_t frags[BDM_MAX_FRAGS];
      |     ^~~~~~~~~~~~~
make[1]: *** [Makefile:744: obj/supportbase.o] Error 1
make[1]: Leaving directory '/project'
make: *** [Makefile:218: all] Error 2

This was introduced in 8f04d009100eca007a980ec4ea66104e698385d4 at 2022-06-15.

TODO: Try building with a newer ps2sdk and try again DONE!:

TODO: Apply more commits and try again DONE!:

TODO: Apply more commits and try again DONE!:

TODO: Ignore last failure, but apply more commits and try again DONE!:

TODO: ps2homebrew switched from ps2dev/ps2dev:latest to ghcr.io/ps2homebrew/ps2homebrew:main (c276b438361418c722e0d04fa1345ce766640228). Try with that! DONE!: Works, including ELM/popstarter! (Branch: 2023-08-19)

TODO:

TODO: ??? Clueless... ????

citronalco commented 8 months ago

ps2sdk docker images:

Last three build current master of my opl-db, but none works on ps2 hardware. Neither with -G0 not with -G8129

10522 commented 7 months ago

@citronalco, i found that @Jay-Jay-OPL wrote about OPL DB 2202:

these OPL versions were compiled via GIT's Workflow feature with the changes made to PS2SDK DEV Development up to date: 2021-11-14.

Also maybe these forks (1, 2, 3) will help you. And also check the SDK folder in PS2 AIO Project, you can find a lot of useful stuff there.

citronalco commented 7 months ago

With "smaller-steps" branch (includes commits until 2022-06-06), POPS gets started on a real PS2 when compiled with:

Quickly scrolling through ps2sdk's commits between 2021-10-16 and 2022-06-06, there's no commit that obviously could do any harm here.

10522 commented 5 months ago

@citronalco, here (elfldr.zip) and here there is information about how POPS was added to PS2NETBOX (a fork of OPL with closed source code). Also in POPSLoader there is code for launching VCD files using a single POPSTARTER.ELF file. You can also contact crt0, who merged OPL with neutrino. Maybe he can help you or for example he can add POPS to OPLNEUTRINO. Also I found that @Jay-Jay-OPL wrote about OPL DB 2158:

this OPL version was compiled with the changes made to: gsKit a44b884 newlib 415fdd4 ps2-packer 02c99f3 ps2client 211df54 ps2dev 08eb341 ps2eth 791126f ps2link 86e1d8c PS2SDK e4f6dfb ps2sdk-ports 9565ff9 ps2toolchain 69c557e ps2toolchain-dvp 1b0054c ps2toolchain-ee a1d264b ps2toolchain-iop d82437e

citronalco commented 5 months ago

@10522 Thanks a lot, that could be helpful indeed! I'm going to look into those projects.

10522 commented 3 months ago

@citronalco, in this OPL fork an additional BDM page has been added, you might find this useful. Also take a look at this OPL fork and check this and this information. By the way, here someone is trying to merge the official OPL with the OPL DB.

10522 commented 3 weeks ago

@citronalco, maybe this, this or this information may be useful to you.

citronalco commented 3 weeks ago

Compilation is no problem: It builds without issues, even on current ps2sdk (though I haven't tried for a while). The problem is: The resulting binary only works in PCSX2, but not on my PS2 slim.