PSP-FPKG

PS4 PSP-FPKG v1.0.1 - Play PSP games with the PS-Plus Emulator v1.0.1

Hi @Jabu your apps are amazing!!!thank you so much.
the app crashes and stop working when i hit the creat fpkg process,any ideas guys am on old laptop win7.
Funny thing that the other app by darkprogramer also crashes the same way!!!
The ps2 version of those apps works fine.please someone help
 
Hi @Jabu your apps are amazing!!!thank you so much.
the app crashes and stop working when i hit the creat fpkg process,any ideas guys am on old laptop win7.
Funny thing that the other app by darkprogramer also crashes the same way!!!
The ps2 version of those apps works fine.please someone help

You probably have special characters in your Windows username.
 
For those asking for CSO, that would only be possible if the emulator itself had support for such.
CSO in the original PSP works as a "on-the-fly" decompression, used within the ISO driver selected.
For the emulator, there is also a ISO driver (most probably) and that driver would need to have CSO support added.
Of course: most probably, only the original devs of the emulator would be able to add that.
 
For those asking for CSO, that would only be possible if the emulator itself had support for such.
CSO in the original PSP works as a "on-the-fly" decompression, used within the ISO driver selected.
For the emulator, there is also a ISO driver (most probably) and that driver would need to have CSO support added.
Of course: most probably, only the original devs of the emulator would be able to add that.

why would that be necessary since you can compress the fpkg? I don't think the CSO will compress any further in the pkg...
 
hello jabu nice app but i still cant make it work i tried it on crisis core and patapon but when I hit create fPKG it show the message [error] format of the project file is not valid. <volume_ts> so what should I do?
 
I haven't seen this posted anywhere

Proper lua usage for new PSP emu

xxxxyyyyy_patches.lua (xxxxyyyyy is game ID) place in scripts folder

Code:
apiRequest(1.0)   -- request version 1.0 API. Calling apiRequest() is mandatory.

local emuObj   = getEmuObject() -- emulator
local axObj     = getAXObject() -- allegrex


local patcher = function()

--axObj.WriteMem32(0x

end

emuObj.AddVsyncHook(patcher)

Use as template. Still trying to figure out more
 
Last edited:
I haven't seen this posted anywhere

Proper lua usage for new PSP emu

xxxxyyyyy_patches.lua (xxxxyyyyy is game ID) place in scripts folder

Code:
apiRequest(1.0)   -- request version 1.0 API. Calling apiRequest() is mandatory.

local emuObj   = getEmuObject() -- emulator
local axObj     = getAXObject() -- allegrex

emuObj.VideoScale(0)
emuObj.SetFDExtraDelay(3)

local patcher = function()

--axObj.WriteMem32(0x

end

emuObj.AddVsyncHook(patcher)

Use as template. Still trying to figure out more
wow i thought the psp emu is lacking the lua thing.
Thanx
 
More info about the commands available in the new emu(pulled from Patapon 2 PSN)

Code:
--texreplace="host0:texreplace"
--replacementalpha=true

# This enables bilinear filtering on replaced textures. (uncomment to enable)
--replacementfilter=true

# Antialiasing mode. SSAA4x looks best, MSAA4x only smooths edges.
# Choices: off, SSAA4x, MSAA4x
#--antialias="SSAA4x"

# Enable switching between original and replacement textures at runtime using the L3 button on a DS4 or the 'T' key on Windows
#--texswitch=true

# Turns on the auto-resampler. Assumes textures in texreplace are at 8x resolution and resamples them at load
--autoresampler=true

# Turns on filtering of CLUT hashes to avoid repeat indexed textures
--texclutmode=filter

#Support for multiple savegames
--multisaves=true

# X/O button mode. "oenter" sets Circle as enter, "xenter" sets Cross as enter. If not present/enabled, it's selected by the system language (Asian
# languages default to oenter, everything else "xenter"). Notice this only works when the game queries the PSP OS for the button configuration.
--xobuttonmode="xenter"

# Adjust overall volume level (does not include pad speaker volume). Range from 0.0 (min) to 1.0 (max)
--volume="0.25"

# Enable encrypted savegames
--securesaves=true

# Cores to use loading textures (higher count = more memory)
#--texloadcores=2

# Display on draw to reduce latency (options: vblankstart, setframebuf, drawsync)
--present=drawsync

# Run the PSP GPU on a separate thread
--gputhread=true

# Optimize texture hashes
--texrecent=true
 

Attachments

hi guys
I just want to say thank you.
At least hundreds of thousands of gamers around the world are enjoying what sony denied them.@Stayhye you are a machine!
 
Last edited by a moderator:
thanks fugazi. using Emu used = LocoRoco Midnight Carnival

ID: CUSA32640 - EUR

More info about the commands available in the New emu - ( pulled from LocoRoco Midnight Carnival PSN )

Code:
; Windows configuration file for PSPHD

; Game Image
--image="data\USER_L0.IMG"

; Use this to run the automatic font dumper.
;--boot="host0:../tools/glyphdump.prx"

; Uncomment these to play around with font dumping.
;--fontsave="host0:fontdump"
;--fontreplace="host0:fontreplace"

; Scaling factor (Windows only - 1: 480x272, 2: 960x544, 3: 1440x816, 4: 1920x1088 ... 8: 3840x2176)
--scale=3

; Language selection (Windows only - the PS4 version auto-selects based on the PS4 language setting)
; Switch the PSP language to one of the following:
; "en": English (default)
; "jp": Japanese
; "fr": French
; "es": Spanish
; "de": German
; "it": Italian
; "nl": Dutch
; "pt": Portuguese
; "ru": Russian
; "ko": Korean
; "chs": Chinese Simplified
; "cht": Chinese Traditional
;--lang="en"

; Redirect host0: to a another directory (uncomment to enable).
; By default it's mapped to the working directory where the executable starts
;--host="D:\Sony\PSPHD"

; To dump the original video in PMF format, uncomment the --dumpvideos line
; For example, with the current setting, it will save them in a "D:\Sony\PSPHD\videos" directory (make sure the directory exists)
;--dumpvideos="host0:videos"

; To dump the original audio in Atrac3 format, uncomment the --dumpaudio line
; For example, with the current setting, it will save them in a "D:\Sony\PSPHD\audio" directory (make sure the directory exists)
;--dumpaudio="host0:audio"

; To save the in-game textures as the game runs, uncomment the --texsave line
; For example, with the current setting, it will save them in a "D:\Sony\PSPHD\texdump" directory (make sure the directory exists)
;--texsave="host0:texdump"
;--texmissingsave="host0:texdump"

; To replace specific textures as the game runs, uncomment the --texreplace line
; For example, with the current setting, it will load them from the "D:\Sony\PSPHD\texreplace" directory
; If the --scale setting is set to 4 or 8, the program will also look for replacement textures on '4x' or '8x' directories within this directory
;--texreplace="host0:texreplace"

; This forces alpha blending to on for replaced textures. (uncomment to enable)
; With this we can freely make use of a normal alpha channel on replacement textures
;--replacementalpha=true

; This enables bilinear filtering on replaced textures. (uncomment to enable)
;--replacementfilter=true

; Antialiasing mode. SSAA4x looks best, MSAA4x only smooths edges.
; Choices: off, SSAA4x, MSAA4x
--antialias=SSAA4x

; Allows to switch between replacement and original textures using L3 on the DS4 or the T key.
;--texswitch=true

; Turns on the auto-resampler. Assumes textures in texreplace are at 8x resolution and resamples them at load
;--autoresampler=true

; Turns on filtering of CLUT hashes to avoid repeat indexed textures
;--texclutmode=filter

; Enable Multiple Savegames
--multisaves=true

; Custom locoroco2 texture hasher
;--texcachemode="locoroco2"
 

Attachments

use the DLC files.

Screenshot_1.png


Package-ps4.conf
Code:
# CONFIG FOR PS4 PACKAGE ENVIRONMENT
# Contents of this file are added to every package.conf
# Sets running environment suitable for consumers
# Default rendering mode (high quality)
--antialias="MSAA4x"
--vms=/temp0/vms
 
Last edited:
Thank you for this fantastic tool, @Jabu!
I tried it with GTA Chinatown Wars and the game runs very well.

I was wondering if anybody here has some experience with texture replacement? I know this feature is supported by this emulator because some official games (like the Patapon Remaster) use it.
However, I cannot figure out how to dump textures. I tried enabling --texsave and setting --host to an existing directory on the PS4 (/data/gtactw). But nothing is dumped there after running the game.

Where are the dumped textures supposed to be? Is there maybe another way I could figure out the correct file names for the replacement textures?
 
use the DLC files.

View attachment 39007

Package-ps4.conf
Code:
# CONFIG FOR PS4 PACKAGE ENVIRONMENT
# Contents of this file are added to every package.conf
# Sets running environment suitable for consumers
# Default rendering mode (high quality)
--antialias="MSAA4x"
--vms=/temp0/vms

so there it is the VMS directory. meaning you can now fix save data problem. i think
vms/GAME/*GAMEDLC*
vms/SAVEDATA/

and maybe you can also use Dissidia 012 modded DLC.

Thank you for this fantastic tool, @Jabu!
I tried it with GTA Chinatown Wars and the game runs very well.

I was wondering if anybody here has some experience with texture replacement? I know this feature is supported by this emulator because some official games (like the Patapon Remaster) use it.
However, I cannot figure out how to dump textures. I tried enabling --texsave and setting --host to an existing directory on the PS4 (/data/gtactw). But nothing is dumped there after running the game.

Where are the dumped textures supposed to be? Is there maybe another way I could figure out the correct file names for the replacement textures?

i tested texture replacement so many times on different folder still no result. and also compared the ppsspp dump file of patapon and found out they have different file name.
 
i tested texture replacement so many times on different folder still no result. and also compared the ppsspp dump file of patapon and found out they have different file name.

Seems like we're in the same boat then. I've also tried various different folder configurations, such as different folders on the PS4 or a USB, or just omitting the host0: part and using an absolute path. No results from any of them.

As you said, PPSSPP seems to be using a different method of identifying textures as the dumped file names have no similarity. Even in rare projects such as this one, the mapping from PSPHD to PPSSPP was most likely done manually by comparing the textures visually.

I'm starting to think that texture dumping might be available only in the debug build of PSPHD and is disabled entirely in the release version (which is bundled with the official pkgs we have access to). Either that or the process requires some specific configuration or procedure which is not mentioned in the config file comments.
 
Seems like we're in the same boat then. I've also tried various different folder configurations, such as different folders on the PS4 or a USB, or just omitting the host0: part and using an absolute path. No results from any of them.

As you said, PPSSPP seems to be using a different method of identifying textures as the dumped file names have no similarity. Even in rare projects such as this one, the mapping from PSPHD to PPSSPP was most likely done manually by comparing the textures visually.

I'm starting to think that texture dumping might be available only in the debug build of PSPHD and is disabled entirely in the release version (which is bundled with the official pkgs we have access to). Either that or the process requires some specific configuration or procedure which is not mentioned in the config file comments.

i think its also available to use on retail. the only problem is how folder works, like what is the replacement on that host0: , is it usb0: ,usb1: ? like that.
 
I'm starting to think that texture dumping might be available only in the debug build of PSPHD and is disabled entirely in the release version (which is bundled with the official pkgs we have access to). Either that or the process requires some specific configuration or procedure which is not mentioned in the config file comments.

Okay, important update regarding texture dumping:
I have now had a look at the log generated when booting a PSPHD application. I didn't know this was possible, but alas, it was quite straight forward. Just check "Enable TTY Redirect" in the KLog Settings of GoldHEN 2.2.4+. Then you can listen to the log using telnet (telnet <PS4 IP> 3232).

Just for context, I used a fpkg of GTA: Chinatown Wars generated by PSP-FPKG v1.0.1 with both --texdump and --texsave set to /mnt/usb0/texdump.
Now, at the beginning of the application log you can see this line:

<118>(PSP) Package: disabling --texsave, --texmissingsave, --dumpvideos, --dumpaudio

So unfortunately my suspicion has kinda been confirmed. We are not using the feature incorrectly, all asset dumping features simply seem to be disabled in the shipped version of PSPHD...

I guess our best bet now is to check different PSPHD versions we have access to and hope that one may have asset dumping enabled.


Here is the relevant part of the log if anybody is interested:
Code:
<118>**** Base Mode ****
<118>PSPHD Emulator
<118>[skipped] '/app0/conf/package-ps4.conf': not present.
<118>[skipped] '/app0/conf/package-ps4.conf': not present.
<118>[loading] '/app0/revision.conf'
<118>(PSP)    --git-rev-gamedata=5fbb82a78533ba4a1d7efb59676f762b6862ca05
<118>
<118>====== PSPHD   ============================================================
<118>  Emulator Rev : 1711941cad (master)
<118>  Gamedata Rev : 5fbb82a785
<118>  Built on     : 2022-May-05 pkg-shell (20220505--1542)
<118>  Built by     : BP-TLINDQUI-07/tlindquist
<118>  Build with   : clang v13.0
<118>  Build opts   : Master LTO
<118>  Platform     : PS4
<118>===========================================================================
<118>
<118>[loading] '/app0/config-title.txt'
<118>(PSP)    --ps4-trophies=0
<118>(PSP)    --ps5-uds=0
<118>(PSP)    --trophies=0
<118>(PSP)    --image=data/USER_L0.IMG
<118>(PSP)    --antialias=SSAA4x
<118>(PSP)    --multisaves=true
<118>(PSP)    --notrophies=true
<118>(PSP)    --texdump=/mnt/usb0/texdump
<118>(PSP)    --texsave=/mnt/usb0/texdump
<118>[skipped] '/app0/config-region.txt': not present.
<118>[skipped] '/app0/.config-local.txt': not present.
<118>[skipped] '/app0/.config-local-PSPHD.txt': not present.
<118>[mbus] onNewClient. clientNum 10 over 8
<118>[libSceSaveData] api_id: init, titleId=ULUS10490, installDir=, compiledSdkVer=0x05050001
<118>[SceLncService] launchApp(NPXS22010)
<118>[SceLncService] category={gdg} VRMode={0,0}
<118>[SceLncService] hnm,psnf,pc,tk,ns={1,0,0,0,0} appBootMode={-1}
<118>[SceLncService] appType={SCE_LNC_APP_TYPE_CDLG} [] appVer={00.00}
<118>[SceLncService] Num. of logged-in users is 1
<118>[SceLncService] PrepareProcessLaunchDebuggerCheck()
<118>[SceLncService] PrepareProcessLaunchDebuggerCheck() returned
<118>[SceLncService] PrepareProcessLaunchDebugger()
<118>[SceLncService] PrepareProcessLaunchDebugger() returned
<118>(PSP)  Package: disabling --texsave, --texmissingsave, --dumpvideos, --dumpaudio
<118>(AppSetting) Config option --trophies has been renamed to --ps4-trophies. Please update your configs.
<118>(AppHost) Trophy support is forcibly disabled via config.
 
Back
Top