Commit Graph
32 Commits
Author SHA1 Message Date
tylerbibandZadeis a57c0cbfe0 Psp go internal storage fix (#19100)
* fix(psp): derive user data path from launch device vice hardcoded ms0:

- Extract the storage prefix (ms0:/ or ef0:/) from the executable's path
  so user data lives on the same device RetroArch was launched from in
  order to fix PSP Go EF0 storage compatibility
- Fall back to ms0:/ when the path doesn't contain a recognizable device
  prefix

* fix(bootstrap): use sceKernelLoadExecVSHEf2 for ef0: paths on PSP Go

On PSP Go installs to internal flash RetroArch relaunches cores through
sceKernelLoadExecVSHMs2, the Memory Stick loader, which fails when
handed an ef0: path. Route ef0: targets through the internal flash
loader instead so core loads and relaunches work from internal storage.

- Add LoadExecEf.S importing sceKernelLoadExecVSHEf2 (NID 0x032A7938)
  from the LoadExecForKernel PRX, ms0: and all other paths keep using
  sceKernelLoadExecVSHMs2
- Branch on the ef0: prefix in exitspawn_kernel (main.c)
- Add LoadExecEf.o to the PRX Makefile OBJS

NID 0x032A7938 is documented in uOFW (src/kd/loadexec) and PSPLibDoc
(PSPGoLibDoc/6.61), the sceKernelLoadExecVSHEf2 name is just an alias
for the otherwise unnamed export. Tested on PSP Go (6.61 CFW). Core swap
loads from ef0: with config persisting, ms0: path is unchanged so no
regression.

* fix(bootstrap): add LoadExecEf.o to PRX OBJS so the EF2 import links

The previous commit added LoadExecEf.S with the sceKernelLoadExecVSHEf2
import stub but forgot to wire it into the PRX build, so the object
never got compiled in and the link failed with an undefined reference
and the PSP CI caught it. Adding LoadExecEf.o to OBJS fixes it so the
stub assembles and the EF2 loader resolves at link time.

---------

Co-authored-by: Zadeis <[email protected]>
2026-06-12 04:14:07 +02:00
Viačasłaŭ 3019b926c2 Fix typos (#17068) 2024-10-01 17:36:33 -07:00
notaz 5f2ed6c85a VITA: don't fail if vm_memblock can't be allocated (#13545)
Failing here is catastrophic because we get no heap, the whole thing
just crashes and leaves nothing in the logs. vm_memblock is not even
used by RetroArch, it's just used by cores with dynarecs, so let the
cores themselves deal with problems if they arise.
2022-01-25 04:19:00 +01:00
Francisco Javier Trujillo Mata 86b47b4859 [PSP] Update Retroarch to latest PSPDev status (#13544)
* Added newlib changes

* Add action to launch PPSSPP simulator

* Remove legacy config for the stack and heap

* Add pthread

* Simplify kernel_functions and improve references to HAVE_KERNEL_PRX

* Add some flags

* Improve audio init/deinit

* Improve exit by clicking home

* Add CI for PSP1

* Update PSP.yml
2022-01-25 03:50:18 +01:00
twinaphex 35543ecd91 Move defines files over to libretro-common 2021-05-18 22:15:04 +02:00
Francisco José García García 9f90833d2b [VITA] Align VM block size to 1MB 2021-04-02 19:50:09 +02:00
Francisco José García García e943ac262f [VITA] Remove old threading workaround 2020-11-15 09:41:37 +01:00
Francisco José García García 085e592761 [VITA] Workaround: Increase memory threshold 2020-10-12 19:24:49 +02:00
twinaphex 98516280ad (s16_to_float) Silence aggressive-loop-optimization undefined
behavior because of potential signed integer overflow
2020-07-23 06:35:30 +02:00
Rinnegatamante 6b7673f806 [VITA] Fixing gl1 video driver crashes. 2019-11-12 15:37:37 +01:00
Rinnegatamante 6394342b9c [VITA] Add gl1 video driver support through vitaGL. 2019-11-12 11:54:00 +01:00
Rinnegatamante b3316fea35 [VITA] Make newlib heap allocation dynamic. 2019-10-04 12:11:52 +02:00
Francisco José García García a529b7b487 [VITA] Add 64Mb of memory 2019-10-03 14:33:33 +02:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
orbea bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
Twinaphex 0e3c067a53 Merge pull request #5941 from frangarcj/vita-adrenaline
(PSP) Fix for VITA's Adrenaline
2017-12-21 01:05:28 +01:00
Francisco José García García ab31e05f65 (PSP) Fix for VITA's Adrenaline 2017-12-21 00:09:38 +01:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
ggf906 940f0c6b0b (PSP) Strip and user 64MB where available 2017-12-12 00:04:35 +01:00
Francisco José García García 8983af2016 Small fix 2017-04-06 11:47:19 +02:00
twinaphex 295cae5a7b Take this out 2017-04-05 20:56:03 +02:00
Francisco José García García 5940d227bb Fix slow io 2017-04-05 19:32:07 +02:00
twinaphex 7931436f5b Apply xerpi diff 2017-01-17 18:12:23 +01:00
Francisco José García García adfbd233ee (VITA) Allow cores to define heap size 2016-10-11 09:40:55 +02:00
Francisco José García García 1a967c42d7 (VITA) Remove warnings 2016-10-02 14:03:15 +02:00
Francisco José García García 55c8fc6a6e (VITA) Changes for dynarec vm support (uggly hack) 2016-09-26 01:06:44 +02:00
aliaspider 89724c541d (psp1) move kernel_functions.prx to the root folder after build 2015-09-23 23:08:01 +01:00
twinaphex 365f501b2a (wii buildfix) Have to move app_booter files back 2015-09-20 19:14:13 +02:00
twinaphex f2701089e6 (bootstrap/gx/wii/app_booter) Buildfix 2015-09-20 15:57:07 +02:00
twinaphex 919220751c (PSP) Move files around 2015-09-20 15:33:54 +02:00
twinaphex aed6780d7a Move some files around 2015-09-20 15:21:55 +02:00
twinaphex 024a6776de Move wii/app_booter to boostrap/wii 2015-09-20 15:19:16 +02:00