diff --git a/fpPS4.lpi b/fpPS4.lpi index b2cb8c8d..dc5f1657 100644 --- a/fpPS4.lpi +++ b/fpPS4.lpi @@ -1548,6 +1548,16 @@ + + + + + + + + + + diff --git a/gui/game_run.pas b/gui/game_run.pas index 22b6cbd8..8fec0ace 100644 --- a/gui/game_run.pas +++ b/gui/game_run.pas @@ -80,6 +80,9 @@ uses ps4_libSceNpScoreRanking, ps4_libSceNpUtility, ps4_libSceNpTus, + ps4_libSceNpGameIntent, + ps4_libSceNpWebApi, + ps4_libSceNpWebApi2, ps4_libSceScreenShot, ps4_libSceSaveData, ps4_libSceAudioOut, @@ -88,8 +91,6 @@ uses ps4_libSceGameLiveStreaming, ps4_libSceVideoRecording, ps4_libSceIme, - ps4_libSceNpWebApi, - ps4_libSceNpWebApi2, ps4_libSceMove, ps4_libSceSharePlay, ps4_libScePlayGo, diff --git a/src/old/np/ps4_libscenpgameintent.pas b/src/np/ps4_libscenpgameintent.pas similarity index 64% rename from src/old/np/ps4_libscenpgameintent.pas rename to src/np/ps4_libscenpgameintent.pas index 2b27c05d..6d1a2114 100644 --- a/src/old/np/ps4_libscenpgameintent.pas +++ b/src/np/ps4_libscenpgameintent.pas @@ -1,11 +1,12 @@ unit ps4_libSceNpGameIntent; {$mode objfpc}{$H+} +{$CALLING SysV_ABI_CDecl} interface uses - ps4_program; + subr_dynlib; implementation @@ -16,23 +17,23 @@ const type pSceNpGameIntentInitParam=^SceNpGameIntentInitParam; SceNpGameIntentInitParam=packed record - size:QWORD; + size :QWORD; reserved:array[0..31] of Byte; end; pSceNpGameIntentData=^SceNpGameIntentData; 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; end; pSceNpGameIntentInfo=^SceNpGameIntentInfo; SceNpGameIntentInfo=packed record - size:QWORD; - userId:Integer; + size :QWORD; + userId :Integer; intentType:array[0..SCE_NP_GAME_INTENT_TYPE_MAX_SIZE-1] of AnsiChar; - padding:array[0..6] of Byte; - reserved:array[0..255] of Byte; + padding :array[0..6] of Byte; + reserved :array[0..255] of Byte; intentData:SceNpGameIntentData; end; @@ -59,20 +60,23 @@ begin end; -function Load_libSceNpGameIntent(Const name:RawByteString):TElf_node; +function Load_libSceNpGameIntent(name:pchar):p_lib_info; var - lib:PLIBRARY; + lib:TLIBRARY; begin - Result:=TElf_node.Create; - Result.pFileName:=name; - lib:=Result._add_lib('libSceNpGameIntent'); - lib^.set_proc($9BCEC11F1B7F1FAD,@ps4_sceNpGameIntentInitialize); - lib^.set_proc($8C4217500AFD5C4F,@ps4_sceNpGameIntentReceiveIntent); - lib^.set_proc($ACF97420D35CFCCF,@ps4_sceNpGameIntentGetPropertyValueString); + Result:=obj_new_int('libSceNpGameIntent'); + + lib:=Result^.add_lib('libSceNpGameIntent'); + lib.set_proc($9BCEC11F1B7F1FAD,@ps4_sceNpGameIntentInitialize); + lib.set_proc($8C4217500AFD5C4F,@ps4_sceNpGameIntentReceiveIntent); + lib.set_proc($ACF97420D35CFCCF,@ps4_sceNpGameIntentGetPropertyValueString); end; +var + stub:t_int_file; + initialization - ps4_app.RegistredPreLoad('libSceNpGameIntent.prx',@Load_libSceNpGameIntent); + RegisteredInternalFile(stub,'libSceNpGameIntent.prx',@Load_libSceNpGameIntent); end.