This commit is contained in:
Pavel 2024-11-08 21:15:04 +03:00
parent a49d7d8e0b
commit ec161c8205
3 changed files with 33 additions and 18 deletions

View File

@ -1548,6 +1548,16 @@
<Filename Value="src\playgo\playgo_chunk_ipc.pas"/> <Filename Value="src\playgo\playgo_chunk_ipc.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
</Unit> </Unit>
<Unit>
<Filename Value="src\param_sfo\ps4_libsceplaygo.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="ps4_libScePlayGo"/>
</Unit>
<Unit>
<Filename Value="src\np\ps4_libscenpgameintent.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="ps4_libSceNpGameIntent"/>
</Unit>
</Units> </Units>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>

View File

@ -80,6 +80,9 @@ uses
ps4_libSceNpScoreRanking, ps4_libSceNpScoreRanking,
ps4_libSceNpUtility, ps4_libSceNpUtility,
ps4_libSceNpTus, ps4_libSceNpTus,
ps4_libSceNpGameIntent,
ps4_libSceNpWebApi,
ps4_libSceNpWebApi2,
ps4_libSceScreenShot, ps4_libSceScreenShot,
ps4_libSceSaveData, ps4_libSceSaveData,
ps4_libSceAudioOut, ps4_libSceAudioOut,
@ -88,8 +91,6 @@ uses
ps4_libSceGameLiveStreaming, ps4_libSceGameLiveStreaming,
ps4_libSceVideoRecording, ps4_libSceVideoRecording,
ps4_libSceIme, ps4_libSceIme,
ps4_libSceNpWebApi,
ps4_libSceNpWebApi2,
ps4_libSceMove, ps4_libSceMove,
ps4_libSceSharePlay, ps4_libSceSharePlay,
ps4_libScePlayGo, ps4_libScePlayGo,

View File

@ -1,11 +1,12 @@
unit ps4_libSceNpGameIntent; unit ps4_libSceNpGameIntent;
{$mode objfpc}{$H+} {$mode objfpc}{$H+}
{$CALLING SysV_ABI_CDecl}
interface interface
uses uses
ps4_program; subr_dynlib;
implementation implementation
@ -16,23 +17,23 @@ const
type type
pSceNpGameIntentInitParam=^SceNpGameIntentInitParam; pSceNpGameIntentInitParam=^SceNpGameIntentInitParam;
SceNpGameIntentInitParam=packed record SceNpGameIntentInitParam=packed record
size:QWORD; size :QWORD;
reserved:array[0..31] of Byte; reserved:array[0..31] of Byte;
end; end;
pSceNpGameIntentData=^SceNpGameIntentData; pSceNpGameIntentData=^SceNpGameIntentData;
SceNpGameIntentData=packed record SceNpGameIntentData=packed record
data:array[0..SCE_NP_GAME_INTENT_DATA_MAX_SIZE-1] of Byte; data :array[0..SCE_NP_GAME_INTENT_DATA_MAX_SIZE-1] of Byte;
padding:array[0..6] of Byte; padding:array[0..6] of Byte;
end; end;
pSceNpGameIntentInfo=^SceNpGameIntentInfo; pSceNpGameIntentInfo=^SceNpGameIntentInfo;
SceNpGameIntentInfo=packed record SceNpGameIntentInfo=packed record
size:QWORD; size :QWORD;
userId:Integer; userId :Integer;
intentType:array[0..SCE_NP_GAME_INTENT_TYPE_MAX_SIZE-1] of AnsiChar; intentType:array[0..SCE_NP_GAME_INTENT_TYPE_MAX_SIZE-1] of AnsiChar;
padding:array[0..6] of Byte; padding :array[0..6] of Byte;
reserved:array[0..255] of Byte; reserved :array[0..255] of Byte;
intentData:SceNpGameIntentData; intentData:SceNpGameIntentData;
end; end;
@ -59,20 +60,23 @@ begin
end; end;
function Load_libSceNpGameIntent(Const name:RawByteString):TElf_node; function Load_libSceNpGameIntent(name:pchar):p_lib_info;
var var
lib:PLIBRARY; lib:TLIBRARY;
begin begin
Result:=TElf_node.Create; Result:=obj_new_int('libSceNpGameIntent');
Result.pFileName:=name;
lib:=Result._add_lib('libSceNpGameIntent'); lib:=Result^.add_lib('libSceNpGameIntent');
lib^.set_proc($9BCEC11F1B7F1FAD,@ps4_sceNpGameIntentInitialize); lib.set_proc($9BCEC11F1B7F1FAD,@ps4_sceNpGameIntentInitialize);
lib^.set_proc($8C4217500AFD5C4F,@ps4_sceNpGameIntentReceiveIntent); lib.set_proc($8C4217500AFD5C4F,@ps4_sceNpGameIntentReceiveIntent);
lib^.set_proc($ACF97420D35CFCCF,@ps4_sceNpGameIntentGetPropertyValueString); lib.set_proc($ACF97420D35CFCCF,@ps4_sceNpGameIntentGetPropertyValueString);
end; end;
var
stub:t_int_file;
initialization initialization
ps4_app.RegistredPreLoad('libSceNpGameIntent.prx',@Load_libSceNpGameIntent); RegisteredInternalFile(stub,'libSceNpGameIntent.prx',@Load_libSceNpGameIntent);
end. end.