diff --git a/rpcs3/Emu/ARMv7/ARMv7Decoder.cpp b/rpcs3/Emu/ARMv7/ARMv7Decoder.cpp index e5a7b4b87f..fac6873a33 100644 --- a/rpcs3/Emu/ARMv7/ARMv7Decoder.cpp +++ b/rpcs3/Emu/ARMv7/ARMv7Decoder.cpp @@ -29,8 +29,6 @@ struct ARMv7_opcode_t const ARMv7_opcode_t ARMv7_opcode_table[] = { - ARMv7_OP2(0xffff, 0x0000, T1, NULL_OP), // ??? - ARMv7_OP4(0xffff, 0x0000, 0xf870, 0x0000, T1, HACK), // "Undefined" Thumb opcode used ARMv7_OP4(0x0ff0, 0x00f0, 0x0070, 0x0090, A1, HACK), // "Undefined" ARM opcode used diff --git a/rpcs3/Emu/ARMv7/ARMv7Interpreter.cpp b/rpcs3/Emu/ARMv7/ARMv7Interpreter.cpp index 954e07dfcc..ea01bcecc9 100644 --- a/rpcs3/Emu/ARMv7/ARMv7Interpreter.cpp +++ b/rpcs3/Emu/ARMv7/ARMv7Interpreter.cpp @@ -283,11 +283,6 @@ void ARMv7_instrs::UNK(ARMv7Context& context, const ARMv7Code code) throw fmt::format("Unknown/illegal opcode: 0x%04x 0x%04x", code.code1, code.code0); } -void ARMv7_instrs::NULL_OP(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type) -{ - throw fmt::format("Null opcode found: 0x%04x 0x%04x", code.code1, code.code0); -} - void ARMv7_instrs::HACK(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type) { u32 cond, func; diff --git a/rpcs3/Emu/ARMv7/ARMv7Interpreter.h b/rpcs3/Emu/ARMv7/ARMv7Interpreter.h index 4e4b8b6dc1..2a18646d42 100644 --- a/rpcs3/Emu/ARMv7/ARMv7Interpreter.h +++ b/rpcs3/Emu/ARMv7/ARMv7Interpreter.h @@ -30,10 +30,7 @@ namespace ARMv7_instrs { void UNK(ARMv7Context& context, const ARMv7Code code); - void NULL_OP(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type); - void HACK(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type); - void MRC_(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type); void ADC_IMM(ARMv7Context& context, const ARMv7Code code, const ARMv7_encoding type); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAppMgr.cpp b/rpcs3/Emu/ARMv7/Modules/sceAppMgr.cpp new file mode 100644 index 0000000000..0d9aa8a072 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAppMgr.cpp @@ -0,0 +1,20 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAppMgr; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAppMgr, #name, name) + +psv_log_base sceAppMgr("SceAppMgr", []() +{ + sceAppMgr.on_load = nullptr; + sceAppMgr.on_unload = nullptr; + sceAppMgr.on_stop = nullptr; + + //REG_FUNC(0x47E5DD7D, sceAppMgrReceiveEventNum); + //REG_FUNC(0xCFAD5A3A, sceAppMgrReceiveEvent); + //REG_FUNC(0xF3D65520, sceAppMgrAcquireBgmPort); + //REG_FUNC(0x96CBE713, sceAppMgrReleaseBgmPort); + //REG_FUNC(0x49255C91, sceAppMgrGetRunStatus); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAppUtil.cpp b/rpcs3/Emu/ARMv7/Modules/sceAppUtil.cpp new file mode 100644 index 0000000000..567f6c4f3e --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAppUtil.cpp @@ -0,0 +1,28 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAppUtil; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAppUtil, #name, name) + +psv_log_base sceAppUtil("SceAppUtil", []() +{ + sceAppUtil.on_load = nullptr; + sceAppUtil.on_unload = nullptr; + sceAppUtil.on_stop = nullptr; + + //REG_FUNC(0xDAFFE671, sceAppUtilInit); + //REG_FUNC(0xB220B00B, sceAppUtilShutdown); + //REG_FUNC(0x7E8FE96A, sceAppUtilSaveDataSlotCreate); + //REG_FUNC(0x266A7646, sceAppUtilSaveDataSlotDelete); + //REG_FUNC(0x98630136, sceAppUtilSaveDataSlotSetParam); + //REG_FUNC(0x93F0D89F, sceAppUtilSaveDataSlotGetParam); + //REG_FUNC(0x1E2A6158, sceAppUtilSaveDataFileSave); + //REG_FUNC(0xEE85804D, sceAppUtilPhotoMount); + //REG_FUNC(0x9651B941, sceAppUtilPhotoUmount); + //REG_FUNC(0x5DFB9CA0, sceAppUtilSystemParamGetInt); + //REG_FUNC(0x6E6AA267, sceAppUtilSystemParamGetString); + //REG_FUNC(0x9D8AC677, sceAppUtilSaveSafeMemory); + //REG_FUNC(0x3424D772, sceAppUtilLoadSafeMemory); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAudio.cpp b/rpcs3/Emu/ARMv7/Modules/sceAudio.cpp new file mode 100644 index 0000000000..36920a8e59 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAudio.cpp @@ -0,0 +1,24 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAudio; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAudio, #name, name) + +psv_log_base sceAudio("SceAudio", []() +{ + sceAudio.on_load = nullptr; + sceAudio.on_unload = nullptr; + sceAudio.on_stop = nullptr; + + //REG_FUNC(0x5BC341E4, sceAudioOutOpenPort); + //REG_FUNC(0x69E2E6B5, sceAudioOutReleasePort); + //REG_FUNC(0x02DB3F5F, sceAudioOutOutput); + //REG_FUNC(0x64167F11, sceAudioOutSetVolume); + //REG_FUNC(0xB8BA0D07, sceAudioOutSetConfig); + //REG_FUNC(0x9C8EDAEA, sceAudioOutGetConfig); + //REG_FUNC(0x9A5370C4, sceAudioOutGetRestSample); + //REG_FUNC(0x12FB1767, sceAudioOutGetAdopt); + //REG_FUNC(0xC6D8D775, sceAudioInRaw); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAudioIn.cpp b/rpcs3/Emu/ARMv7/Modules/sceAudioIn.cpp new file mode 100644 index 0000000000..0ae64a168d --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAudioIn.cpp @@ -0,0 +1,19 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAudioIn; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAudioIn, #name, name) + +psv_log_base sceAudioIn("SceAudioIn", []() +{ + sceAudioIn.on_load = nullptr; + sceAudioIn.on_unload = nullptr; + sceAudioIn.on_stop = nullptr; + + //REG_FUNC(0x638ADD2D, sceAudioInInput); + //REG_FUNC(0x39B50DC1, sceAudioInOpenPort); + //REG_FUNC(0x3A61B8C4, sceAudioInReleasePort); + //REG_FUNC(0x566AC433, sceAudioInGetAdopt); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAudiodec.cpp b/rpcs3/Emu/ARMv7/Modules/sceAudiodec.cpp new file mode 100644 index 0000000000..f8e3952dec --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAudiodec.cpp @@ -0,0 +1,22 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAudiodec; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAudiodec, #name, name) + +psv_log_base sceAudiodec("SceAudiodec", []() +{ + sceAudiodec.on_load = nullptr; + sceAudiodec.on_unload = nullptr; + sceAudiodec.on_stop = nullptr; + + //REG_FUNC(0x445C2CEF, sceAudiodecInitLibrary); + //REG_FUNC(0x45719B9D, sceAudiodecTermLibrary); + //REG_FUNC(0x4DFD3AAA, sceAudiodecCreateDecoder); + //REG_FUNC(0xE7A24E16, sceAudiodecDeleteDecoder); + //REG_FUNC(0xCCDABA04, sceAudiodecDecode); + //REG_FUNC(0xF72F9B64, sceAudiodecClearContext); + //REG_FUNC(0x883B0CF5, sceAudiodecGetInternalError); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceAudioenc.cpp b/rpcs3/Emu/ARMv7/Modules/sceAudioenc.cpp new file mode 100644 index 0000000000..a3bf58617c --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceAudioenc.cpp @@ -0,0 +1,23 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceAudioenc; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceAudioenc, #name, name) + +psv_log_base sceAudioenc("SceAudioenc", []() +{ + sceAudioenc.on_load = nullptr; + sceAudioenc.on_unload = nullptr; + sceAudioenc.on_stop = nullptr; + + //REG_FUNC(0x76EE4DC6, sceAudioencInitLibrary); + //REG_FUNC(0xAB32D022, sceAudioencTermLibrary); + //REG_FUNC(0x64C04AE8, sceAudioencCreateEncoder); + //REG_FUNC(0xC6BA5EE6, sceAudioencDeleteEncoder); + //REG_FUNC(0xD85DB29C, sceAudioencEncode); + //REG_FUNC(0x9386F42D, sceAudioencClearContext); + //REG_FUNC(0xD01C63A3, sceAudioencGetOptInfo); + //REG_FUNC(0x452246D0, sceAudioencGetInternalError); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceCamera.cpp b/rpcs3/Emu/ARMv7/Modules/sceCamera.cpp new file mode 100644 index 0000000000..79c219443c --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceCamera.cpp @@ -0,0 +1,56 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceCamera; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceCamera, #name, name) + +psv_log_base sceCamera("SceCamera", []() +{ + sceCamera.on_load = nullptr; + sceCamera.on_unload = nullptr; + sceCamera.on_stop = nullptr; + + //REG_FUNC(0xA462F801, sceCameraOpen); + //REG_FUNC(0xCD6E1CFC, sceCameraClose); + //REG_FUNC(0xA8FEAE35, sceCameraStart); + //REG_FUNC(0x1DD9C9CE, sceCameraStop); + //REG_FUNC(0x79B5C2DE, sceCameraRead); + //REG_FUNC(0x103A75B8, sceCameraIsActive); + //REG_FUNC(0x624F7653, sceCameraGetSaturation); + //REG_FUNC(0xF9F7CA3D, sceCameraSetSaturation); + //REG_FUNC(0x85D5951D, sceCameraGetBrightness); + //REG_FUNC(0x98D71588, sceCameraSetBrightness); + //REG_FUNC(0x8FBE84BE, sceCameraGetContrast); + //REG_FUNC(0x06FB2900, sceCameraSetContrast); + //REG_FUNC(0xAA72C3DC, sceCameraGetSharpness); + //REG_FUNC(0xD1A5BB0B, sceCameraSetSharpness); + //REG_FUNC(0x44F6043F, sceCameraGetReverse); + //REG_FUNC(0x1175F477, sceCameraSetReverse); + //REG_FUNC(0x7E8EF3B2, sceCameraGetEffect); + //REG_FUNC(0xE9D2CFB1, sceCameraSetEffect); + //REG_FUNC(0x8B5E6147, sceCameraGetEV); + //REG_FUNC(0x62AFF0B8, sceCameraSetEV); + //REG_FUNC(0x06D3816C, sceCameraGetZoom); + //REG_FUNC(0xF7464216, sceCameraSetZoom); + //REG_FUNC(0x9FDACB99, sceCameraGetAntiFlicker); + //REG_FUNC(0xE312958A, sceCameraSetAntiFlicker); + //REG_FUNC(0x4EBD5C68, sceCameraGetISO); + //REG_FUNC(0x3CF630A1, sceCameraSetISO); + //REG_FUNC(0x2C36D6F3, sceCameraGetGain); + //REG_FUNC(0xE65CFE86, sceCameraSetGain); + //REG_FUNC(0xDBFFA1DA, sceCameraGetWhiteBalance); + //REG_FUNC(0x4D4514AC, sceCameraSetWhiteBalance); + //REG_FUNC(0x8DD1292B, sceCameraGetBacklight); + //REG_FUNC(0xAE071044, sceCameraSetBacklight); + //REG_FUNC(0x12B6FF26, sceCameraGetNightmode); + //REG_FUNC(0x3F26233E, sceCameraSetNightmode); + //REG_FUNC(0xD02CFA5C, sceCameraLedSwitch); + //REG_FUNC(0x89B16030, sceCameraLedBlink); + //REG_FUNC(0x7670474C, sceCameraUseCacheMemoryForTrial); + //REG_FUNC(0x27BB0528, sceCameraGetNoiseReductionForDebug); + //REG_FUNC(0x233C9E27, sceCameraSetNoiseReductionForDebug); + //REG_FUNC(0xC387F4DC, sceCameraGetSharpnessOffForDebug); + //REG_FUNC(0xE22C2375, sceCameraSetSharpnessOffForDebug); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceCodecEngine.cpp b/rpcs3/Emu/ARMv7/Modules/sceCodecEngine.cpp new file mode 100644 index 0000000000..013f4ff52b --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceCodecEngine.cpp @@ -0,0 +1,19 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceCodecEngine; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceCodecEngine, #name, name) + +psv_log_base sceCodecEngine("SceCodecEngine", []() +{ + sceCodecEngine.on_load = nullptr; + sceCodecEngine.on_unload = nullptr; + sceCodecEngine.on_stop = nullptr; + + //REG_FUNC(0x3E718890, sceCodecEnginePmonStart); + //REG_FUNC(0x268B1EF5, sceCodecEnginePmonStop); + //REG_FUNC(0x859E4A68, sceCodecEnginePmonGetProcessorLoad); + //REG_FUNC(0xA097E4C8, sceCodecEnginePmonReset); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceCommonDialog.cpp b/rpcs3/Emu/ARMv7/Modules/sceCommonDialog.cpp new file mode 100644 index 0000000000..1f5a4863a3 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceCommonDialog.cpp @@ -0,0 +1,55 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceCommonDialog; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceCommonDialog, #name, name) + +psv_log_base sceCommonDialog("SceCommonDialog", []() +{ + sceCommonDialog.on_load = nullptr; + sceCommonDialog.on_unload = nullptr; + sceCommonDialog.on_stop = nullptr; + + //REG_FUNC(0x90530F2F, sceCommonDialogUpdate); + //REG_FUNC(0x755FF270, sceMsgDialogInit); + //REG_FUNC(0x4107019E, sceMsgDialogGetStatus); + //REG_FUNC(0xC296D396, sceMsgDialogClose); + //REG_FUNC(0x0CC66115, sceMsgDialogAbort); + //REG_FUNC(0xBB3BFC89, sceMsgDialogGetResult); + //REG_FUNC(0x81ACF695, sceMsgDialogTerm); + //REG_FUNC(0x7BE0E08B, sceMsgDialogProgressBarInc); + //REG_FUNC(0x9CDA5E0D, sceMsgDialogProgressBarSetValue); + //REG_FUNC(0xA38A4A0D, sceNetCheckDialogInit); + //REG_FUNC(0x8027292A, sceNetCheckDialogGetStatus); + //REG_FUNC(0x2D8EDF09, sceNetCheckDialogAbort); + //REG_FUNC(0xB05FCE9E, sceNetCheckDialogGetResult); + //REG_FUNC(0x8BE51C15, sceNetCheckDialogTerm); + //REG_FUNC(0xBF5248FA, sceSaveDataDialogInit); + //REG_FUNC(0x6E258046, sceSaveDataDialogGetStatus); + //REG_FUNC(0x013E7F74, sceSaveDataDialogAbort); + //REG_FUNC(0xB2FF576E, sceSaveDataDialogGetResult); + //REG_FUNC(0x2192A10A, sceSaveDataDialogTerm); + //REG_FUNC(0x19192C8B, sceSaveDataDialogContinue); + //REG_FUNC(0xBA0542CA, sceSaveDataDialogGetSubStatus); + //REG_FUNC(0x415D6068, sceSaveDataDialogSubClose); + //REG_FUNC(0x6C49924B, sceSaveDataDialogFinish); + //REG_FUNC(0xBDE00A83, sceSaveDataDialogProgressBarInc); + //REG_FUNC(0x5C322D1E, sceSaveDataDialogProgressBarSetValue); + //REG_FUNC(0x1E7043BF, sceImeDialogInit); + //REG_FUNC(0xCF0431FD, sceImeDialogGetStatus); + //REG_FUNC(0x594A220E, sceImeDialogAbort); + //REG_FUNC(0x2EB3D046, sceImeDialogGetResult); + //REG_FUNC(0x838A3AF4, sceImeDialogTerm); + //REG_FUNC(0x73EE7C9C, scePhotoImportDialogInit); + //REG_FUNC(0x032206D8, scePhotoImportDialogGetStatus); + //REG_FUNC(0xD855414C, scePhotoImportDialogGetResult); + //REG_FUNC(0x7FE5BD77, scePhotoImportDialogTerm); + //REG_FUNC(0x4B125581, scePhotoImportDialogAbort); + //REG_FUNC(0xCD990375, scePhotoReviewDialogInit); + //REG_FUNC(0xF4F600CA, scePhotoReviewDialogGetStatus); + //REG_FUNC(0xFFA35858, scePhotoReviewDialogGetResult); + //REG_FUNC(0xC700B2DF, scePhotoReviewDialogTerm); + //REG_FUNC(0x74FF2A8B, scePhotoReviewDialogAbort); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceDbg.cpp b/rpcs3/Emu/ARMv7/Modules/sceDbg.cpp new file mode 100644 index 0000000000..6fe3856b9c --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceDbg.cpp @@ -0,0 +1,19 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceDbg; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceDbg, #name, name) + +psv_log_base sceDbg("SceDbg", []() +{ + sceDbg.on_load = nullptr; + sceDbg.on_unload = nullptr; + sceDbg.on_stop = nullptr; + + //REG_FUNC(0x941622FA, sceDbgSetMinimumLogLevel); + //REG_FUNC(0x1AF3678B, sceDbgAssertionHandler); + //REG_FUNC(0x6605AB19, sceDbgLoggingHandler); + //REG_FUNC(0xED4A00BA, sceDbgSetBreakOnErrorState); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceDeci4p.cpp b/rpcs3/Emu/ARMv7/Modules/sceDeci4p.cpp index bdd5e58e5d..d90fcca74f 100644 --- a/rpcs3/Emu/ARMv7/Modules/sceDeci4p.cpp +++ b/rpcs3/Emu/ARMv7/Modules/sceDeci4p.cpp @@ -45,4 +45,4 @@ psv_log_base sceDeci4p("SceDeci4pUserp", []() REG_FUNC(0x971E1C66, sceKernelDeci4pRead); REG_FUNC(0xCDA3AAAC, sceKernelDeci4pWrite); REG_FUNC(0x73371F35, sceKernelDeci4pRegisterCallback); -}); \ No newline at end of file +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceDeflt.cpp b/rpcs3/Emu/ARMv7/Modules/sceDeflt.cpp new file mode 100644 index 0000000000..6d7e440c2f --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceDeflt.cpp @@ -0,0 +1,27 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceDeflt; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceDeflt, #name, name) + +psv_log_base sceDeflt("SceDeflt", []() +{ + sceDeflt.on_load = nullptr; + sceDeflt.on_unload = nullptr; + sceDeflt.on_stop = nullptr; + + //REG_FUNC(0xCD83A464, sceZlibAdler32); + //REG_FUNC(0x110D5050, sceDeflateDecompress); + //REG_FUNC(0xE3CB51A3, sceGzipDecompress); + //REG_FUNC(0xBABCF5CF, sceGzipGetComment); + //REG_FUNC(0xE1844802, sceGzipGetCompressedData); + //REG_FUNC(0x1B8E5862, sceGzipGetInfo); + //REG_FUNC(0xAEBAABE6, sceGzipGetName); + //REG_FUNC(0xDEDADC31, sceGzipIsValid); + //REG_FUNC(0xE38F754D, sceZlibDecompress); + //REG_FUNC(0xE680A65A, sceZlibGetCompressedData); + //REG_FUNC(0x4C0A685D, sceZlibGetInfo); + //REG_FUNC(0x14A0698D, sceZlibIsValid); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceFiber.cpp b/rpcs3/Emu/ARMv7/Modules/sceFiber.cpp new file mode 100644 index 0000000000..73678a396c --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceFiber.cpp @@ -0,0 +1,26 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceFiber; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceFiber, #name, name) + +psv_log_base sceFiber("SceFiber", []() +{ + sceFiber.on_load = nullptr; + sceFiber.on_unload = nullptr; + sceFiber.on_stop = nullptr; + + //REG_FUNC(0xF24A298C, _sceFiberInitializeImpl); + //REG_FUNC(0xC6A3F9BB, _sceFiberInitializeWithInternalOptionImpl); + //REG_FUNC(0x7D0C7DDB, _sceFiberAttachContextAndRun); + //REG_FUNC(0xE00B9AFE, _sceFiberAttachContextAndSwitch); + //REG_FUNC(0x801AB334, sceFiberOptParamInitialize); + //REG_FUNC(0xE160F844, sceFiberFinalize); + //REG_FUNC(0x7DF23243, sceFiberRun); + //REG_FUNC(0xE4283144, sceFiberSwitch); + //REG_FUNC(0x414D8CA5, sceFiberGetSelf); + //REG_FUNC(0x3B42921F, sceFiberReturnToThread); + //REG_FUNC(0x189599B4, sceFiberGetInfo); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceFios.cpp b/rpcs3/Emu/ARMv7/Modules/sceFios.cpp new file mode 100644 index 0000000000..d04af5b3cd --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceFios.cpp @@ -0,0 +1,147 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceFios; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceFios, #name, name) + +psv_log_base sceFios("SceFios2", []() +{ + sceFios.on_load = nullptr; + sceFios.on_unload = nullptr; + sceFios.on_stop = nullptr; + + //REG_FUNC(0x15857180, sceFiosArchiveGetMountBufferSize); + //REG_FUNC(0xDF3352FC, sceFiosArchiveGetMountBufferSizeSync); + //REG_FUNC(0x92E76BBD, sceFiosArchiveMount); + //REG_FUNC(0xC4822276, sceFiosArchiveMountSync); + //REG_FUNC(0xFE1E1D28, sceFiosArchiveUnmount); + //REG_FUNC(0xB26DC24D, sceFiosArchiveUnmountSync); + //REG_FUNC(0x1E920B1D, sceFiosCancelAllOps); + //REG_FUNC(0xF85C208B, sceFiosCloseAllFiles); + //REG_FUNC(0xF6CACFC7, sceFiosDHClose); + //REG_FUNC(0x1F3CC428, sceFiosDHCloseSync); + //REG_FUNC(0x2B406DEB, sceFiosDHGetPath); + //REG_FUNC(0xEA9855BA, sceFiosDHOpen); + //REG_FUNC(0x34BC3713, sceFiosDHOpenSync); + //REG_FUNC(0x72A0A851, sceFiosDHRead); + //REG_FUNC(0xB7E79CAD, sceFiosDHReadSync); + //REG_FUNC(0x280D284A, sceFiosDateFromComponents); + //REG_FUNC(0x5C593C1E, sceFiosDateGetCurrent); + //REG_FUNC(0x5CFF6EA0, sceFiosDateToComponents); + //REG_FUNC(0x44B9F8EB, sceFiosDebugDumpDH); + //REG_FUNC(0x159B1FA8, sceFiosDebugDumpDate); + //REG_FUNC(0x51E677DF, sceFiosDebugDumpError); + //REG_FUNC(0x5506ACAB, sceFiosDebugDumpFH); + //REG_FUNC(0xE438D4F0, sceFiosDebugDumpOp); + //REG_FUNC(0x764DFA7A, sceFiosDelete); + //REG_FUNC(0xAAC54B44, sceFiosDeleteSync); + //REG_FUNC(0x9198ED8B, sceFiosDirectoryCreate); + //REG_FUNC(0xE037B076, sceFiosDirectoryCreateSync); + //REG_FUNC(0xDA93677C, sceFiosDirectoryDelete); + //REG_FUNC(0xB9573146, sceFiosDirectoryDeleteSync); + //REG_FUNC(0x48D50D97, sceFiosDirectoryExists); + //REG_FUNC(0x726E01BE, sceFiosDirectoryExistsSync); + //REG_FUNC(0x6F12D8A5, sceFiosExists); + //REG_FUNC(0x125EFD34, sceFiosExistsSync); + //REG_FUNC(0xA88EDCA8, sceFiosFHClose); + //REG_FUNC(0x45182328, sceFiosFHCloseSync); + //REG_FUNC(0xC55DB73B, sceFiosFHGetOpenParams); + //REG_FUNC(0x37143AE3, sceFiosFHGetPath); + //REG_FUNC(0xC5C26581, sceFiosFHGetSize); + //REG_FUNC(0xBF699BD4, sceFiosFHOpen); + //REG_FUNC(0xC3E7C3DB, sceFiosFHOpenSync); + //REG_FUNC(0x6A51E688, sceFiosFHPread); + //REG_FUNC(0xE2805059, sceFiosFHPreadSync); + //REG_FUNC(0x7C4E0C42, sceFiosFHPreadv); + //REG_FUNC(0x4D42F95C, sceFiosFHPreadvSync); + //REG_FUNC(0xCF1FAA6F, sceFiosFHPwrite); + //REG_FUNC(0x1E962F57, sceFiosFHPwriteSync); + //REG_FUNC(0xBBC9AFD5, sceFiosFHPwritev); + //REG_FUNC(0x742ADDC4, sceFiosFHPwritevSync); + //REG_FUNC(0xB09AFBDF, sceFiosFHRead); + //REG_FUNC(0x76945919, sceFiosFHReadSync); + //REG_FUNC(0x7DB0AFAF, sceFiosFHReadv); + //REG_FUNC(0x1BC977FA, sceFiosFHReadvSync); + //REG_FUNC(0xA75F3C4A, sceFiosFHSeek); + //REG_FUNC(0xD97C4DF7, sceFiosFHStat); + //REG_FUNC(0xF8BEAC88, sceFiosFHStatSync); + //REG_FUNC(0xE485F35E, sceFiosFHSync); + //REG_FUNC(0xA909CCE3, sceFiosFHSyncSync); + //REG_FUNC(0xD7F33130, sceFiosFHTell); + //REG_FUNC(0x2B39453B, sceFiosFHTruncate); + //REG_FUNC(0xFEF940B7, sceFiosFHTruncateSync); + //REG_FUNC(0xE663138E, sceFiosFHWrite); + //REG_FUNC(0x984024E5, sceFiosFHWriteSync); + //REG_FUNC(0x988DD7FF, sceFiosFHWritev); + //REG_FUNC(0x267E6CE3, sceFiosFHWritevSync); + //REG_FUNC(0xB647278B, sceFiosFileDelete); + //REG_FUNC(0xB5302E30, sceFiosFileDeleteSync); + //REG_FUNC(0x8758E62F, sceFiosFileExists); + //REG_FUNC(0x233B070C, sceFiosFileExistsSync); + //REG_FUNC(0x79D9BB50, sceFiosFileGetSize); + //REG_FUNC(0x789215C3, sceFiosFileGetSizeSync); + //REG_FUNC(0x84080161, sceFiosFileRead); + //REG_FUNC(0x1C488B32, sceFiosFileReadSync); + //REG_FUNC(0xC5513E13, sceFiosFileTruncate); + //REG_FUNC(0x6E1252B8, sceFiosFileTruncateSync); + //REG_FUNC(0x42C278E5, sceFiosFileWrite); + //REG_FUNC(0x132B6DE6, sceFiosFileWriteSync); + //REG_FUNC(0x681184A2, sceFiosGetAllDHs); + //REG_FUNC(0x90AB9195, sceFiosGetAllFHs); + //REG_FUNC(0x8F62832C, sceFiosGetAllOps); + //REG_FUNC(0xC897F6A7, sceFiosGetDefaultOpAttr); + //REG_FUNC(0x30583FCB, sceFiosGetGlobalDefaultOpAttr); + //REG_FUNC(0x156EAFDC, sceFiosGetSuspendCount); + //REG_FUNC(0xD55B8555, sceFiosIOFilterAdd); + //REG_FUNC(0x7C9B14EB, sceFiosIOFilterGetInfo); + //REG_FUNC(0x057252F2, sceFiosIOFilterPsarcDearchiver); + //REG_FUNC(0x22E35018, sceFiosIOFilterRemove); + //REG_FUNC(0x774C2C05, sceFiosInitialize); + //REG_FUNC(0x29104BF3, sceFiosIsIdle); + //REG_FUNC(0xF4F54E09, sceFiosIsInitialized); + //REG_FUNC(0xD2466EA5, sceFiosIsSuspended); + //REG_FUNC(0xB309E327, sceFiosIsValidHandle); + //REG_FUNC(0x3904F205, sceFiosOpCancel); + //REG_FUNC(0xE4EA92FA, sceFiosOpDelete); + //REG_FUNC(0x218A43EE, sceFiosOpGetActualCount); + //REG_FUNC(0xABFEE706, sceFiosOpGetAttr); + //REG_FUNC(0x68C436E4, sceFiosOpGetBuffer); + //REG_FUNC(0xBF099E16, sceFiosOpGetError); + //REG_FUNC(0xF21213B9, sceFiosOpGetOffset); + //REG_FUNC(0x157515CB, sceFiosOpGetPath); + //REG_FUNC(0x9C1084C5, sceFiosOpGetRequestCount); + //REG_FUNC(0x0C81D80E, sceFiosOpIsCancelled); + //REG_FUNC(0x1B9A575E, sceFiosOpIsDone); + //REG_FUNC(0x968CADBD, sceFiosOpReschedule); + //REG_FUNC(0xE6A66C70, sceFiosOpSyncWait); + //REG_FUNC(0x202079F9, sceFiosOpSyncWaitForIO); + //REG_FUNC(0x2AC79DFC, sceFiosOpWait); + //REG_FUNC(0xCC823B47, sceFiosOpWaitUntil); + //REG_FUNC(0x27AE468B, sceFiosOverlayAdd); + //REG_FUNC(0xF4C6B72A, sceFiosOverlayGetInfo); + //REG_FUNC(0x1C0BCAD5, sceFiosOverlayGetList); + //REG_FUNC(0x30F56704, sceFiosOverlayModify); + //REG_FUNC(0xF3C84D0F, sceFiosOverlayRemove); + //REG_FUNC(0x8A243E74, sceFiosOverlayResolveSync); + //REG_FUNC(0x5E75937A, sceFiosPathcmp); + //REG_FUNC(0xCC21C849, sceFiosPathncmp); + //REG_FUNC(0xAF7FAADF, sceFiosPrintf); + //REG_FUNC(0x25E399E5, sceFiosRename); + //REG_FUNC(0x030306F4, sceFiosRenameSync); + //REG_FUNC(0xD0B19C9F, sceFiosResolve); + //REG_FUNC(0x7FF33797, sceFiosResolveSync); + //REG_FUNC(0xBF2D3CC1, sceFiosResume); + //REG_FUNC(0x4E2FD311, sceFiosSetGlobalDefaultOpAttr); + //REG_FUNC(0x5B8D48C4, sceFiosShutdownAndCancelOps); + //REG_FUNC(0xFF04AF72, sceFiosStat); + //REG_FUNC(0xACBAF3E0, sceFiosStatSync); + //REG_FUNC(0x510953DC, sceFiosSuspend); + //REG_FUNC(0x2904B539, sceFiosTerminate); + //REG_FUNC(0xE76C8EC3, sceFiosTimeGetCurrent); + //REG_FUNC(0x35A82737, sceFiosTimeIntervalFromNanoseconds); + //REG_FUNC(0x397BF626, sceFiosTimeIntervalToNanoseconds); + //REG_FUNC(0x1915052A, sceFiosUpdateParameters); + //REG_FUNC(0x5BA4BD6D, sceFiosVprintf); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceFpu.cpp b/rpcs3/Emu/ARMv7/Modules/sceFpu.cpp new file mode 100644 index 0000000000..2992c6fc58 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceFpu.cpp @@ -0,0 +1,29 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceFpu; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceFpu, #name, name) + +psv_log_base sceFpu("SceFpu", []() +{ + sceFpu.on_load = nullptr; + sceFpu.on_unload = nullptr; + sceFpu.on_stop = nullptr; + + //REG_FUNC(0x33E1AC14, sceFpuSinf); + //REG_FUNC(0xDB66BA89, sceFpuCosf); + //REG_FUNC(0x6FBDA1C9, sceFpuTanf); + //REG_FUNC(0x53FF26AF, sceFpuAtanf); + //REG_FUNC(0xC8A4989B, sceFpuAtan2f); + //REG_FUNC(0x4D1AE0F1, sceFpuAsinf); + //REG_FUNC(0x64A8F9FE, sceFpuAcosf); + //REG_FUNC(0x936F0D27, sceFpuLogf); + //REG_FUNC(0x19881EC8, sceFpuLog2f); + //REG_FUNC(0xABBB6168, sceFpuLog10f); + //REG_FUNC(0xEFA16C6E, sceFpuExpf); + //REG_FUNC(0xA3A88AD0, sceFpuExp2f); + //REG_FUNC(0x35652326, sceFpuExp10f); + //REG_FUNC(0xDF622E56, sceFpuPowf); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceHttp.cpp b/rpcs3/Emu/ARMv7/Modules/sceHttp.cpp new file mode 100644 index 0000000000..4f23c935cd --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceHttp.cpp @@ -0,0 +1,82 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceHttp; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceHttp, #name, name) + +psv_log_base sceHttp("SceHttp", []() +{ + sceHttp.on_load = nullptr; + sceHttp.on_unload = nullptr; + sceHttp.on_stop = nullptr; + + //REG_FUNC(0x214926D9, sceHttpInit); + //REG_FUNC(0xC9076666, sceHttpTerm); + //REG_FUNC(0xF98CDFA9, sceHttpGetMemoryPoolStats); + //REG_FUNC(0x62241DAB, sceHttpCreateTemplate); + //REG_FUNC(0xEC85ECFB, sceHttpDeleteTemplate); + //REG_FUNC(0xC616C200, sceHttpCreateConnectionWithURL); + //REG_FUNC(0xAEB3307E, sceHttpCreateConnection); + //REG_FUNC(0xF0F65C15, sceHttpDeleteConnection); + //REG_FUNC(0xBD5DA1D0, sceHttpCreateRequestWithURL); + //REG_FUNC(0xB0284270, sceHttpCreateRequest); + //REG_FUNC(0x3D3D29AD, sceHttpDeleteRequest); + //REG_FUNC(0x9CA58B99, sceHttpSendRequest); + //REG_FUNC(0x7EDE3979, sceHttpReadData); + //REG_FUNC(0xF580D304, sceHttpGetResponseContentLength); + //REG_FUNC(0x27071691, sceHttpGetStatusCode); + //REG_FUNC(0xEA61662F, sceHttpAbortRequest); + //REG_FUNC(0x7B51B122, sceHttpAddRequestHeader); + //REG_FUNC(0x5EB5F548, sceHttpRemoveRequestHeader); + //REG_FUNC(0x11F6C27F, sceHttpGetAllResponseHeaders); + //REG_FUNC(0x03A6C89E, sceHttpParseResponseHeader); + //REG_FUNC(0x179C56DB, sceHttpParseStatusLine); + //REG_FUNC(0x1DA2A673, sceHttpUriEscape); + //REG_FUNC(0x1274D318, sceHttpUriUnescape); + //REG_FUNC(0x1D45F24E, sceHttpUriParse); + //REG_FUNC(0x47664424, sceHttpUriBuild); + //REG_FUNC(0x75027D1D, sceHttpUriMerge); + //REG_FUNC(0x50737A3F, sceHttpUriSweepPath); + //REG_FUNC(0x37C30C90, sceHttpSetRequestContentLength); + //REG_FUNC(0x11EC42D0, sceHttpSetAuthEnabled); + //REG_FUNC(0x6727874C, sceHttpGetAuthEnabled); + //REG_FUNC(0x34891C3F, sceHttpSetAutoRedirect); + //REG_FUNC(0x6EAD73EB, sceHttpGetAutoRedirect); + //REG_FUNC(0xE0A3A88D, sceHttpSetAuthInfoCallback); + //REG_FUNC(0x4E08167D, sceHttpSetRedirectCallback); + //REG_FUNC(0x8455B5B3, sceHttpSetResolveTimeOut); + //REG_FUNC(0x9AB56EA7, sceHttpSetResolveRetry); + //REG_FUNC(0x237CA86E, sceHttpSetConnectTimeOut); + //REG_FUNC(0x8AE3F008, sceHttpSetSendTimeOut); + //REG_FUNC(0x94BF196E, sceHttpSetRecvTimeOut); + //REG_FUNC(0x27A98BDA, sceHttpSetNonblock); + //REG_FUNC(0xD65746BC, sceHttpGetNonblock); + //REG_FUNC(0x5CEB6554, sceHttpSetEpollId); + //REG_FUNC(0x9E031D7C, sceHttpGetEpollId); + //REG_FUNC(0x94F7256A, sceHttpWaitRequest); + //REG_FUNC(0x7C99AF67, sceHttpCreateEpoll); + //REG_FUNC(0x0F1FD1B3, sceHttpSetEpoll); + //REG_FUNC(0xCFB1DA4B, sceHttpUnsetEpoll); + //REG_FUNC(0x65FE983F, sceHttpGetEpoll); + //REG_FUNC(0x07D9F8BB, sceHttpDestroyEpoll); + //REG_FUNC(0xAEE573A3, sceHttpSetCookieEnabled); + //REG_FUNC(0x1B6EF66E, sceHttpGetCookieEnabled); + //REG_FUNC(0x70220BFA, sceHttpGetCookie); + //REG_FUNC(0xBEDB988D, sceHttpAddCookie); + //REG_FUNC(0x4259FB9E, sceHttpCookieExport); + //REG_FUNC(0x9DF48282, sceHttpCookieImport); + //REG_FUNC(0xD4F32A23, sceHttpSetCookieRecvCallback); + //REG_FUNC(0x11C03867, sceHttpSetCookieSendCallback); + //REG_FUNC(0xAE8D7C33, sceHttpsLoadCert); + //REG_FUNC(0x8577833F, sceHttpsUnloadCert); + //REG_FUNC(0x9FBE2869, sceHttpsEnableOption); + //REG_FUNC(0xC6D60403, sceHttpsDisableOption); + //REG_FUNC(0x72CB0741, sceHttpsEnableOptionPrivate); + //REG_FUNC(0x00659635, sceHttpsDisableOptionPrivate); + //REG_FUNC(0x2B79BDE0, sceHttpsGetSslError); + //REG_FUNC(0xA0926037, sceHttpsSetSslCallback); + //REG_FUNC(0xF71AA58D, sceHttpsGetCaList); + //REG_FUNC(0x56C95D94, sceHttpsFreeCaList); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceIme.cpp b/rpcs3/Emu/ARMv7/Modules/sceIme.cpp new file mode 100644 index 0000000000..d0e90298d9 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceIme.cpp @@ -0,0 +1,20 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceIme; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceIme, #name, name) + +psv_log_base sceIme("SceIme", []() +{ + sceIme.on_load = nullptr; + sceIme.on_unload = nullptr; + sceIme.on_stop = nullptr; + + //REG_FUNC(0x0E050613, sceImeOpen); + //REG_FUNC(0x71D6898A, sceImeUpdate); + //REG_FUNC(0x889A8421, sceImeClose); + //REG_FUNC(0xD8342D2A, sceImeSetCaret); + //REG_FUNC(0x7B1EFAA5, sceImeSetPreeditGeometry); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceJpeg.cpp b/rpcs3/Emu/ARMv7/Modules/sceJpeg.cpp new file mode 100644 index 0000000000..5ec6f79614 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceJpeg.cpp @@ -0,0 +1,24 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceJpeg; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceJpeg, #name, name) + +psv_log_base sceJpeg("SceJpeg", []() +{ + sceJpeg.on_load = nullptr; + sceJpeg.on_unload = nullptr; + sceJpeg.on_stop = nullptr; + + //REG_FUNC(0xB030773B, sceJpegInitMJpeg); + //REG_FUNC(0x62842598, sceJpegFinishMJpeg); + //REG_FUNC(0x6215B095, sceJpegDecodeMJpeg); + //REG_FUNC(0x2A769BD8, sceJpegDecodeMJpegYCbCr); + //REG_FUNC(0xC2380E3A, sceJpegMJpegCsc); + //REG_FUNC(0x353BA9B0, sceJpegGetOutputInfo); + //REG_FUNC(0x123B4734, sceJpegCreateSplitDecoder); + //REG_FUNC(0xDE8D5FA1, sceJpegDeleteSplitDecoder); + //REG_FUNC(0x4598EC9C, sceJpegSplitDecodeMJpeg); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceJpegEnc.cpp b/rpcs3/Emu/ARMv7/Modules/sceJpegEnc.cpp new file mode 100644 index 0000000000..1567f5487d --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceJpegEnc.cpp @@ -0,0 +1,24 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceJpegEnc; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceJpegEnc, #name, name) + +psv_log_base sceJpegEnc("SceJpegEnc", []() +{ + sceJpegEnc.on_load = nullptr; + sceJpegEnc.on_unload = nullptr; + sceJpegEnc.on_stop = nullptr; + + //REG_FUNC(0x2B55844D, sceJpegEncoderGetContextSize); + //REG_FUNC(0x88DA92B4, sceJpegEncoderInit); + //REG_FUNC(0xC60DE94C, sceJpegEncoderEncode); + //REG_FUNC(0xC87AA849, sceJpegEncoderEnd); + //REG_FUNC(0x9511F3BC, sceJpegEncoderSetValidRegion); + //REG_FUNC(0xB2B828EC, sceJpegEncoderSetCompressionRatio); + //REG_FUNC(0x2F58B12C, sceJpegEncoderSetHeaderMode); + //REG_FUNC(0x25D52D97, sceJpegEncoderSetOutputAddr); + //REG_FUNC(0x824A7D4F, sceJpegEncoderCsc); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceLibc.cpp b/rpcs3/Emu/ARMv7/Modules/sceLibc.cpp index 611be74629..abb831ae32 100644 --- a/rpcs3/Emu/ARMv7/Modules/sceLibc.cpp +++ b/rpcs3/Emu/ARMv7/Modules/sceLibc.cpp @@ -156,7 +156,7 @@ namespace sce_libc_func { sceLibc.Error("_Assert(text=0x%x, func=0x%x)", text, func); - LOG_ERROR(TTY, "%s : %s", func.get_ptr(), text.get_ptr()); + LOG_ERROR(TTY, "%s : %s\n", func.get_ptr(), text.get_ptr()); Emu.Pause(); } } diff --git a/rpcs3/Emu/ARMv7/Modules/sceLiveArea.cpp b/rpcs3/Emu/ARMv7/Modules/sceLiveArea.cpp new file mode 100644 index 0000000000..4511ca2ae7 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceLiveArea.cpp @@ -0,0 +1,17 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceLiveArea; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceLiveArea, #name, name) + +psv_log_base sceLiveArea("SceLiveArea", []() +{ + sceLiveArea.on_load = nullptr; + sceLiveArea.on_unload = nullptr; + sceLiveArea.on_stop = nullptr; + + //REG_FUNC(0xA4B506F9, sceLiveAreaResourceReplaceAll); + //REG_FUNC(0x54A395FB, sceLiveAreaResourceGetStatus); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceLocation.cpp b/rpcs3/Emu/ARMv7/Modules/sceLocation.cpp new file mode 100644 index 0000000000..734f7f62e1 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceLocation.cpp @@ -0,0 +1,34 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceLocation; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceLocation, #name, name) + +psv_log_base sceLocation("SceLibLocation", []() +{ + sceLocation.on_load = nullptr; + sceLocation.on_unload = nullptr; + sceLocation.on_stop = nullptr; + + //REG_FUNC(0xDD271661, sceLocationOpen); + //REG_FUNC(0x14FE76E8, sceLocationClose); + //REG_FUNC(0xB1F55065, sceLocationReopen); + //REG_FUNC(0x188CE004, sceLocationGetMethod); + //REG_FUNC(0x15BC27C8, sceLocationGetLocation); + //REG_FUNC(0x71503251, sceLocationCancelGetLocation); + //REG_FUNC(0x12D1F0EA, sceLocationStartLocationCallback); + //REG_FUNC(0xED378700, sceLocationStopLocationCallback); + //REG_FUNC(0x4E9E5ED9, sceLocationGetHeading); + //REG_FUNC(0x07D4DFE0, sceLocationStartHeadingCallback); + //REG_FUNC(0x92E53F94, sceLocationStopHeadingCallback); + //REG_FUNC(0xE055BCF5, sceLocationSetHeapAllocator); + //REG_FUNC(0xC895E567, sceLocationConfirm); + //REG_FUNC(0x730FF842, sceLocationConfirmGetStatus); + //REG_FUNC(0xFF016C13, sceLocationConfirmGetResult); + //REG_FUNC(0xE3CBF875, sceLocationConfirmAbort); + //REG_FUNC(0x482622C6, sceLocationGetPermission); + //REG_FUNC(0xDE0A9EA4, sceLocationSetGpsEmulationFile); + //REG_FUNC(0x760D08FF, sceLocationConfirmSetMessage); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceMd5.cpp b/rpcs3/Emu/ARMv7/Modules/sceMd5.cpp new file mode 100644 index 0000000000..aed0422ed4 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceMd5.cpp @@ -0,0 +1,19 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceMd5; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceMd5, #name, name) + +psv_log_base sceMd5("SceMd5", []() +{ + sceMd5.on_load = nullptr; + sceMd5.on_unload = nullptr; + sceMd5.on_stop = nullptr; + + //REG_FUNC(0xB845BCCB, sceMd5Digest); + //REG_FUNC(0x4D6436F9, sceMd5BlockInit); + //REG_FUNC(0x094A4902, sceMd5BlockUpdate); + //REG_FUNC(0xB94ABF83, sceMd5BlockResult); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceMotion.cpp b/rpcs3/Emu/ARMv7/Modules/sceMotion.cpp new file mode 100644 index 0000000000..bc86726bb2 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceMotion.cpp @@ -0,0 +1,31 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceMotion; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceMotion, #name, name) + +psv_log_base sceMotion("SceMotion", []() +{ + sceMotion.on_load = nullptr; + sceMotion.on_unload = nullptr; + sceMotion.on_stop = nullptr; + + //REG_FUNC(0xBDB32767, sceMotionGetState); + //REG_FUNC(0x47D679EA, sceMotionGetSensorState); + //REG_FUNC(0xC1652201, sceMotionGetTiltCorrection); + //REG_FUNC(0xAF09FCDB, sceMotionSetTiltCorrection); + //REG_FUNC(0x112E0EAE, sceMotionGetDeadband); + //REG_FUNC(0x917EA390, sceMotionSetDeadband); + //REG_FUNC(0x20F00078, sceMotionRotateYaw); + //REG_FUNC(0x0FD2CDA2, sceMotionReset); + //REG_FUNC(0x28034AC9, sceMotionStartSampling); + //REG_FUNC(0xAF32CB1D, sceMotionStopSampling); + //REG_FUNC(0xDACB2A41, sceMotionSetAngleThreshold); + //REG_FUNC(0x499B6C87, sceMotionGetAngleThreshold); + //REG_FUNC(0x4F28BFE0, sceMotionGetBasicOrientation); + //REG_FUNC(0x122A79F8, sceMotionMagnetometerOn); + //REG_FUNC(0xC1A7395A, sceMotionMagnetometerOff); + //REG_FUNC(0x3D4813AE, sceMotionGetMagnetometerState); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceMt19937.cpp b/rpcs3/Emu/ARMv7/Modules/sceMt19937.cpp new file mode 100644 index 0000000000..3893d344bf --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceMt19937.cpp @@ -0,0 +1,17 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceMt19937; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceMt19937, #name, name) + +psv_log_base sceMt19937("SceMt19937", []() +{ + sceMt19937.on_load = nullptr; + sceMt19937.on_unload = nullptr; + sceMt19937.on_stop = nullptr; + + //REG_FUNC(0xEE5BA27C, sceMt19937Init); + //REG_FUNC(0x29E43BB5, sceMt19937UInt); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNet.cpp b/rpcs3/Emu/ARMv7/Modules/sceNet.cpp new file mode 100644 index 0000000000..f68a283618 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNet.cpp @@ -0,0 +1,73 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNet; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNet, #name, name) + +psv_log_base sceNet("SceNet", []() +{ + sceNet.on_load = nullptr; + sceNet.on_unload = nullptr; + sceNet.on_stop = nullptr; + + //REG_FUNC(0xD62EF218, sceNetSetDnsInfo); + //REG_FUNC(0xFEC1166D, sceNetClearDnsCache); + //REG_FUNC(0xAFF9FA4D, sceNetDumpCreate); + //REG_FUNC(0x04042925, sceNetDumpRead); + //REG_FUNC(0x82DDCF63, sceNetDumpDestroy); + //REG_FUNC(0x3B24E75F, sceNetDumpAbort); + //REG_FUNC(0xF9D102AE, sceNetEpollCreate); + //REG_FUNC(0x4C8764AC, sceNetEpollControl); + //REG_FUNC(0x45CE337D, sceNetEpollWait); + //REG_FUNC(0x92D3E767, sceNetEpollWaitCB); + //REG_FUNC(0x7915CAF3, sceNetEpollDestroy); + //REG_FUNC(0x93FCC4E8, sceNetEpollAbort); + //REG_FUNC(0xE37F34AA, sceNetErrnoLoc); + //REG_FUNC(0xEEC6D75F, sceNetEtherStrton); + //REG_FUNC(0x84334EB2, sceNetEtherNtostr); + //REG_FUNC(0x06C05518, sceNetGetMacAddress); + //REG_FUNC(0x98839B74, sceNetInetNtop); + //REG_FUNC(0xD5EEB048, sceNetInetPton); + //REG_FUNC(0x12C19209, sceNetHtonll); + //REG_FUNC(0x4C30B03C, sceNetHtonl); + //REG_FUNC(0x9FA3207B, sceNetHtons); + //REG_FUNC(0xFB3336A6, sceNetNtohll); + //REG_FUNC(0xD2EAA645, sceNetNtohl); + //REG_FUNC(0x07845128, sceNetNtohs); + //REG_FUNC(0xEB03E265, sceNetInit); + //REG_FUNC(0xEA3CC286, sceNetTerm); + //REG_FUNC(0x658B903B, sceNetShowIfconfig); + //REG_FUNC(0x6AB3B74B, sceNetShowRoute); + //REG_FUNC(0x338EDC2E, sceNetShowNetstat); + //REG_FUNC(0x561DFD03, sceNetEmulationSet); + //REG_FUNC(0xAE3F4AC6, sceNetEmulationGet); + //REG_FUNC(0x6DA29319, sceNetResolverCreate); + //REG_FUNC(0x1EB11857, sceNetResolverStartNtoa); + //REG_FUNC(0x0424AE26, sceNetResolverStartAton); + //REG_FUNC(0x874EF500, sceNetResolverGetError); + //REG_FUNC(0x3559F098, sceNetResolverDestroy); + //REG_FUNC(0x38EBBD57, sceNetResolverAbort); + //REG_FUNC(0xF084FCE3, sceNetSocket); + //REG_FUNC(0x1ADF9BB1, sceNetAccept); + //REG_FUNC(0x1296A94B, sceNetBind); + //REG_FUNC(0x11E5B6F6, sceNetConnect); + //REG_FUNC(0x2348D353, sceNetGetpeername); + //REG_FUNC(0x1C66A6DB, sceNetGetsockname); + //REG_FUNC(0xBA652062, sceNetGetsockopt); + //REG_FUNC(0x7A8DA094, sceNetListen); + //REG_FUNC(0x023643B7, sceNetRecv); + //REG_FUNC(0xB226138B, sceNetRecvfrom); + //REG_FUNC(0xDE94C6FE, sceNetRecvmsg); + //REG_FUNC(0xE3DD8CD9, sceNetSend); + //REG_FUNC(0x52DB31D5, sceNetSendto); + //REG_FUNC(0x99C579AE, sceNetSendmsg); + //REG_FUNC(0x065505CA, sceNetSetsockopt); + //REG_FUNC(0x69E50BB5, sceNetShutdown); + //REG_FUNC(0x29822B4D, sceNetSocketClose); + //REG_FUNC(0x891C1B9B, sceNetSocketAbort); + //REG_FUNC(0xB1AF6840, sceNetGetSockInfo); + //REG_FUNC(0x138CF1D6, sceNetGetSockIdInfo); + //REG_FUNC(0xA86F8FE5, sceNetGetStatisticsInfo); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNetCtl.cpp b/rpcs3/Emu/ARMv7/Modules/sceNetCtl.cpp new file mode 100644 index 0000000000..cde7d28916 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNetCtl.cpp @@ -0,0 +1,31 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNetCtl; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNetCtl, #name, name) + +psv_log_base sceNetCtl("SceNetCtl", []() +{ + sceNetCtl.on_load = nullptr; + sceNetCtl.on_unload = nullptr; + sceNetCtl.on_stop = nullptr; + + //REG_FUNC(0x495CA1DB, sceNetCtlInit); + //REG_FUNC(0xCD188648, sceNetCtlTerm); + //REG_FUNC(0xDFFC3ED4, sceNetCtlCheckCallback); + //REG_FUNC(0x6B20EC02, sceNetCtlInetGetResult); + //REG_FUNC(0x7AE0ED19, sceNetCtlAdhocGetResult); + //REG_FUNC(0xB26D07F3, sceNetCtlInetGetInfo); + //REG_FUNC(0x6D26AC68, sceNetCtlInetGetState); + //REG_FUNC(0xEAEE6185, sceNetCtlInetRegisterCallback); + //REG_FUNC(0xD0C3BF3F, sceNetCtlInetUnregisterCallback); + //REG_FUNC(0x4DDD6149, sceNetCtlGetNatInfo); + //REG_FUNC(0x0961A561, sceNetCtlAdhocGetState); + //REG_FUNC(0xFFA9D594, sceNetCtlAdhocRegisterCallback); + //REG_FUNC(0xA4471E10, sceNetCtlAdhocUnregisterCallback); + //REG_FUNC(0xED43B79A, sceNetCtlAdhocDisconnect); + //REG_FUNC(0x77586C59, sceNetCtlAdhocGetPeerList); + //REG_FUNC(0x7118C99D, sceNetCtlAdhocGetInAddr); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNgs.cpp b/rpcs3/Emu/ARMv7/Modules/sceNgs.cpp new file mode 100644 index 0000000000..5798792b12 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNgs.cpp @@ -0,0 +1,78 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNgs; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNgs, #name, name) + +psv_log_base sceNgs("SceNgs", []() +{ + sceNgs.on_load = nullptr; + sceNgs.on_unload = nullptr; + sceNgs.on_stop = nullptr; + + //REG_FUNC(0x6CE8B36F, sceNgsSystemGetRequiredMemorySize); + //REG_FUNC(0xED14CF4A, sceNgsSystemInit); + //REG_FUNC(0x684F080C, sceNgsSystemUpdate); + //REG_FUNC(0x4A25BEBC, sceNgsSystemRelease); + //REG_FUNC(0xB9D971F2, sceNgsSystemLock); + //REG_FUNC(0x0A93EA96, sceNgsSystemUnlock); + //REG_FUNC(0x5ADD22DC, sceNgsSystemSetParamErrorCallback); + //REG_FUNC(0x64D80013, sceNgsSystemSetFlags); + //REG_FUNC(0x477318C0, sceNgsRackGetRequiredMemorySize); + //REG_FUNC(0x0A92E4EC, sceNgsRackInit); + //REG_FUNC(0xFE1A98E9, sceNgsRackGetVoiceHandle); + //REG_FUNC(0xDD5CA10B, sceNgsRackRelease); + //REG_FUNC(0x534B6E3F, sceNgsRackSetParamErrorCallback); + //REG_FUNC(0x1DDBEBEB, sceNgsVoiceInit); + //REG_FUNC(0xFA0A0F34, sceNgsVoicePlay); + //REG_FUNC(0xBB13373D, sceNgsVoiceKeyOff); + //REG_FUNC(0x0E291AAD, sceNgsVoiceKill); + //REG_FUNC(0xD7786E99, sceNgsVoicePause); + //REG_FUNC(0x54CFB981, sceNgsVoiceResume); + //REG_FUNC(0x8A88E665, sceNgsVoiceSetPreset); + //REG_FUNC(0xAB6BEF8F, sceNgsVoiceLockParams); + //REG_FUNC(0x3D46D8A7, sceNgsVoiceUnlockParams); + //REG_FUNC(0xFB8174B1, sceNgsVoiceSetParamsBlock); + //REG_FUNC(0x9AB87E71, sceNgsVoiceBypassModule); + //REG_FUNC(0x24E909A8, sceNgsVoiceSetModuleCallback); + //REG_FUNC(0x17A6F564, sceNgsVoiceSetFinishedCallback); + //REG_FUNC(0xC9B8C0B4, sceNgsVoiceGetStateData); + //REG_FUNC(0x5551410D, sceNgsVoiceGetInfo); + //REG_FUNC(0xB307185E, sceNgsVoiceGetModuleType); + //REG_FUNC(0x431BF3AB, sceNgsVoiceGetModuleBypass); + //REG_FUNC(0xD668B49C, sceNgsPatchCreateRouting); + //REG_FUNC(0x98703DBC, sceNgsPatchGetInfo); + //REG_FUNC(0x01A52E3A, sceNgsVoiceGetOutputPatch); + //REG_FUNC(0xD0C9AE5A, sceNgsPatchRemoveRouting); + //REG_FUNC(0xA3C807BC, sceNgsVoicePatchSetVolume); + //REG_FUNC(0xBD6F57F0, sceNgsVoicePatchSetVolumes); + //REG_FUNC(0xA0F5402D, sceNgsVoicePatchSetVolumesMatrix); + //REG_FUNC(0xF6B68C31, sceNgsVoiceDefGetEnvelopeBuss); + //REG_FUNC(0x9DCF50F5, sceNgsVoiceDefGetReverbBuss); + //REG_FUNC(0x214485D6, sceNgsVoiceDefGetPauserBuss); + //REG_FUNC(0xE0AC8776, sceNgsVoiceDefGetMixerBuss); + //REG_FUNC(0x79A121D1, sceNgsVoiceDefGetMasterBuss); + //REG_FUNC(0x0E0ACB68, sceNgsVoiceDefGetCompressorBuss); + //REG_FUNC(0x1AF83512, sceNgsVoiceDefGetCompressorSideChainBuss); + //REG_FUNC(0xAAD90DEB, sceNgsVoiceDefGetDistortionBuss); + //REG_FUNC(0xF964120E, sceNgsVoiceDefGetEqBuss); + //REG_FUNC(0xE9B572B7, sceNgsVoiceDefGetTemplate1); + //REG_FUNC(0x0D5399CF, sceNgsVoiceDefGetSimpleVoice); + //REG_FUNC(0x1F51C2BA, sceNgsVoiceDefGetSasEmuVoice); + //REG_FUNC(0x4CBE08F3, sceNgsVoiceGetParamsOutOfRange); + //REG_FUNC(0x14EF65A0, sceNgsVoiceDefGetAtrac9Voice); + //REG_FUNC(0x4D705E3E, sceNgsVoiceDefGetDelayBuss); + //REG_FUNC(0x5FD8AEDB, sceSulphaNgsGetDefaultConfig); + //REG_FUNC(0x793E3E8C, sceSulphaNgsGetNeededMemory); + //REG_FUNC(0xAFCD824F, sceSulphaNgsInit); + //REG_FUNC(0xD124BFB1, sceSulphaNgsShutdown); + //REG_FUNC(0x2F3F7515, sceSulphaNgsSetSynthName); + //REG_FUNC(0x251AF6A9, sceSulphaNgsSetRackName); + //REG_FUNC(0x508975BD, sceSulphaNgsSetVoiceName); + //REG_FUNC(0x54EC5B8D, sceSulphaNgsSetSampleName); + //REG_FUNC(0xDC7C0F05, sceSulphaNgsTrace); + //REG_FUNC(0x5C71FE09, sceNgsModuleGetNumPresets); + //REG_FUNC(0xC58298A7, sceNgsModuleGetPreset); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpBasic.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpBasic.cpp new file mode 100644 index 0000000000..1afa85a9cc --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpBasic.cpp @@ -0,0 +1,33 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpBasic; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpBasic, #name, name) + +psv_log_base sceNpBasic("SceNpBasic", []() +{ + sceNpBasic.on_load = nullptr; + sceNpBasic.on_unload = nullptr; + sceNpBasic.on_stop = nullptr; + + //REG_FUNC(0xEFB91A99, sceNpBasicInit); + //REG_FUNC(0x389BCB3B, sceNpBasicTerm); + //REG_FUNC(0x26E6E048, sceNpBasicRegisterHandler); + //REG_FUNC(0x050AE072, sceNpBasicUnregisterHandler); + //REG_FUNC(0x20146AEC, sceNpBasicCheckCallback); + //REG_FUNC(0x5183A4B5, sceNpBasicGetFriendOnlineStatus); + //REG_FUNC(0xEF8A91BC, sceNpBasicGetGamePresenceOfFriend); + //REG_FUNC(0xDF41F308, sceNpBasicGetFriendListEntryCount); + //REG_FUNC(0xFF07E787, sceNpBasicGetFriendListEntries); + //REG_FUNC(0x407E1E6F, sceNpBasicGetBlockListEntryCount); + //REG_FUNC(0x1211AE8E, sceNpBasicGetBlockListEntries); + //REG_FUNC(0xF51545D8, sceNpBasicCheckIfPlayerIsBlocked); + //REG_FUNC(0x51D75562, sceNpBasicSetInGamePresence); + //REG_FUNC(0xD20C2370, sceNpBasicUnsetInGamePresence); + //REG_FUNC(0x7A5020A5, sceNpBasicSendInGameDataMessage); + //REG_FUNC(0x3B0A7F47, sceNpBasicRecordPlaySessionLog); + //REG_FUNC(0xFB0F7FDF, sceNpBasicGetPlaySessionLogSize); + //REG_FUNC(0x364531A8, sceNpBasicGetPlaySessionLog); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpCommon.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpCommon.cpp new file mode 100644 index 0000000000..4422bee950 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpCommon.cpp @@ -0,0 +1,26 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpCommon; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpCommon, #name, name) + +psv_log_base sceNpCommon("SceNpCommon", []() +{ + sceNpCommon.on_load = nullptr; + sceNpCommon.on_unload = nullptr; + sceNpCommon.on_stop = nullptr; + + //REG_FUNC(0x441D8B4E, sceNpAuthInit); + //REG_FUNC(0x6093B689, sceNpAuthTerm); + //REG_FUNC(0xED42079F, sceNpAuthCreateStartRequest); + //REG_FUNC(0x14FC18AF, sceNpAuthDestroyRequest); + //REG_FUNC(0xE2582575, sceNpAuthAbortRequest); + //REG_FUNC(0x59608D1C, sceNpAuthGetTicket); + //REG_FUNC(0xC1E23E01, sceNpAuthGetTicketParam); + //REG_FUNC(0x3377CD37, sceNpAuthGetEntitlementIdList); + //REG_FUNC(0xF93842F0, sceNpAuthGetEntitlementById); + //REG_FUNC(0xFB8D82E5, sceNpCmpNpId); + //REG_FUNC(0x6BC8150A, sceNpCmpNpIdInOrder); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpManager.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpManager.cpp new file mode 100644 index 0000000000..4771107b92 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpManager.cpp @@ -0,0 +1,25 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpManager; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpManager, #name, name) + +psv_log_base sceNpManager("SceNpManager", []() +{ + sceNpManager.on_load = nullptr; + sceNpManager.on_unload = nullptr; + sceNpManager.on_stop = nullptr; + + //REG_FUNC(0x04D9F484, sceNpInit); + //REG_FUNC(0x19E40AE1, sceNpTerm); + //REG_FUNC(0x3C94B4B4, sceNpManagerGetNpId); + //REG_FUNC(0x54060DF6, sceNpGetServiceState); + //REG_FUNC(0x44239C35, sceNpRegisterServiceStateCallback); + //REG_FUNC(0xD9E6E56C, sceNpUnregisterServiceStateCallback); + //REG_FUNC(0x3B0AE9A9, sceNpCheckCallback); + //REG_FUNC(0xFE835967, sceNpManagerGetAccountRegion); + //REG_FUNC(0xAF0073B2, sceNpManagerGetContentRatingFlag); + //REG_FUNC(0x60C575B1, sceNpManagerGetChatRestrictionFlag); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpMatching.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpMatching.cpp new file mode 100644 index 0000000000..ffc7d962a7 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpMatching.cpp @@ -0,0 +1,46 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpMatching; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpMatching, #name, name) + +psv_log_base sceNpMatching("SceNpMatching2", []() +{ + sceNpMatching.on_load = nullptr; + sceNpMatching.on_unload = nullptr; + sceNpMatching.on_stop = nullptr; + + //REG_FUNC(0xEBB1FE74, sceNpMatching2Init); + //REG_FUNC(0x0124641C, sceNpMatching2Term); + //REG_FUNC(0xADF578E1, sceNpMatching2CreateContext); + //REG_FUNC(0x368AA759, sceNpMatching2DestroyContext); + //REG_FUNC(0xBB2E7559, sceNpMatching2ContextStart); + //REG_FUNC(0xF2847E3B, sceNpMatching2AbortContextStart); + //REG_FUNC(0x506454DE, sceNpMatching2ContextStop); + //REG_FUNC(0xF3A43C50, sceNpMatching2SetDefaultRequestOptParam); + //REG_FUNC(0xF486991B, sceNpMatching2RegisterRoomEventCallback); + //REG_FUNC(0xFA51949B, sceNpMatching2RegisterRoomMessageCallback); + //REG_FUNC(0xF9E35566, sceNpMatching2RegisterContextCallback); + //REG_FUNC(0x74EB6CE9, sceNpMatching2AbortRequest); + //REG_FUNC(0x7BD39E50, sceNpMatching2GetMemoryInfo); + //REG_FUNC(0x65C0FEED, sceNpMatching2GetServerLocal); + //REG_FUNC(0xC086B560, sceNpMatching2GetWorldInfoList); + //REG_FUNC(0x818A9499, sceNpMatching2CreateJoinRoom); + //REG_FUNC(0xD48BAF13, sceNpMatching2SearchRoom); + //REG_FUNC(0x33F7D5AE, sceNpMatching2JoinRoom); + //REG_FUNC(0xC8B0C9EE, sceNpMatching2LeaveRoom); + //REG_FUNC(0x495D2B46, sceNpMatching2GetSignalingOptParamLocal); + //REG_FUNC(0xE0BE0510, sceNpMatching2SendRoomChatMessage); + //REG_FUNC(0x7B908D99, sceNpMatching2SendRoomMessage); + //REG_FUNC(0x4E4C55BD, sceNpMatching2SignalingGetConnectionStatus); + //REG_FUNC(0x20598618, sceNpMatching2SignalingGetConnectionInfo); + //REG_FUNC(0x79310806, sceNpMatching2SignalingGetLocalNetInfo); + //REG_FUNC(0xF0CB1DD3, sceNpMatching2SignalingGetPeerNetInfo); + //REG_FUNC(0xADCD102C, sceNpMatching2SignalingCancelPeerNetInfo); + //REG_FUNC(0xFDC7B2C9, sceNpMatching2SignalingGetPeerNetInfoResult); + //REG_FUNC(0x1C60BC5B, sceNpMatching2RegisterSignalingCallback); + //REG_FUNC(0x8F88AC7E, sceNpMatching2SetRoomDataExternal); + //REG_FUNC(0xA8021394, sceNpMatching2KickoutRoomMember); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpScore.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpScore.cpp new file mode 100644 index 0000000000..612114af70 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpScore.cpp @@ -0,0 +1,44 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpScore; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpScore, #name, name) + +psv_log_base sceNpScore("SceNpScore", []() +{ + sceNpScore.on_load = nullptr; + sceNpScore.on_unload = nullptr; + sceNpScore.on_stop = nullptr; + + //REG_FUNC(0x0433069F, sceNpScoreInit); + //REG_FUNC(0x2050F98F, sceNpScoreTerm); + //REG_FUNC(0x5685F225, sceNpScoreCreateTitleCtx); + //REG_FUNC(0xD30D1993, sceNpScoreCreateRequest); + //REG_FUNC(0xF52EA88A, sceNpScoreDeleteTitleCtx); + //REG_FUNC(0xFFF24BB1, sceNpScoreDeleteRequest); + //REG_FUNC(0x320C0277, sceNpScoreRecordScore); + //REG_FUNC(0x24B09634, sceNpScoreRecordScoreAsync); + //REG_FUNC(0xC2862B67, sceNpScoreRecordGameData); + //REG_FUNC(0x40573917, sceNpScoreRecordGameDataAsync); + //REG_FUNC(0xDFAD64D3, sceNpScoreGetGameData); + //REG_FUNC(0xCE416993, sceNpScoreGetGameDataAsync); + //REG_FUNC(0x427D3412, sceNpScoreGetRankingByRange); + //REG_FUNC(0xC45E3FCD, sceNpScoreGetRankingByRangeAsync); + //REG_FUNC(0xBAE55B34, sceNpScoreGetRankingByNpId); + //REG_FUNC(0x45CD1D00, sceNpScoreGetRankingByNpIdAsync); + //REG_FUNC(0x871F28AA, sceNpScoreGetRankingByNpIdPcId); + //REG_FUNC(0xCE3A9544, sceNpScoreGetRankingByNpIdPcIdAsync); + //REG_FUNC(0xA7E93CE1, sceNpScoreAbortRequest); + //REG_FUNC(0x31733BF3, sceNpScoreWaitAsync); + //REG_FUNC(0x9F2A7AC9, sceNpScorePollAsync); + //REG_FUNC(0x00F90E7B, sceNpScoreGetBoardInfo); + //REG_FUNC(0x3CD9974E, sceNpScoreGetBoardInfoAsync); + //REG_FUNC(0xA0C94D46, sceNpScoreCensorComment); + //REG_FUNC(0xAA0BBF8E, sceNpScoreCensorCommentAsync); + //REG_FUNC(0x6FD2041A, sceNpScoreSanitizeComment); + //REG_FUNC(0x15981858, sceNpScoreSanitizeCommentAsync); + //REG_FUNC(0x5EF44841, sceNpScoreSetTimeout); + //REG_FUNC(0x53D77883, sceNpScoreSetPlayerCharacterId); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceNpUtility.cpp b/rpcs3/Emu/ARMv7/Modules/sceNpUtility.cpp new file mode 100644 index 0000000000..5ce2ca80ad --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceNpUtility.cpp @@ -0,0 +1,35 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceNpUtility; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceNpUtility, #name, name) + +psv_log_base sceNpUtility("SceNpUtility", []() +{ + sceNpUtility.on_load = nullptr; + sceNpUtility.on_unload = nullptr; + sceNpUtility.on_stop = nullptr; + + //REG_FUNC(0x9246A673, sceNpLookupInit); + //REG_FUNC(0x0158B61B, sceNpLookupTerm); + //REG_FUNC(0x5110E17E, sceNpLookupCreateTitleCtx); + //REG_FUNC(0x33B64699, sceNpLookupDeleteTitleCtx); + //REG_FUNC(0x9E42E922, sceNpLookupCreateRequest); + //REG_FUNC(0x8B608BF6, sceNpLookupDeleteRequest); + //REG_FUNC(0x027587C4, sceNpLookupAbortRequest); + //REG_FUNC(0xB0C9DC45, sceNpLookupSetTimeout); + //REG_FUNC(0xCF956F23, sceNpLookupWaitAsync); + //REG_FUNC(0xFCDBA234, sceNpLookupPollAsync); + //REG_FUNC(0xB1A14879, sceNpLookupNpId); + //REG_FUNC(0x5387BABB, sceNpLookupNpIdAsync); + //REG_FUNC(0x6A1BF429, sceNpLookupUserProfile); + //REG_FUNC(0xE5285E0F, sceNpLookupUserProfileAsync); + //REG_FUNC(0xFDB0AE47, sceNpLookupAvatarImage); + //REG_FUNC(0x282BD43C, sceNpLookupAvatarImageAsync); + //REG_FUNC(0x081FA13C, sceNpBandwidthTestInitStart); + //REG_FUNC(0xE0EBFBF6, sceNpBandwidthTestGetStatus); + //REG_FUNC(0x58D92EFD, sceNpBandwidthTestShutdown); + //REG_FUNC(0x32B068C4, sceNpBandwidthTestAbort); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/scePgf.cpp b/rpcs3/Emu/ARMv7/Modules/scePgf.cpp new file mode 100644 index 0000000000..c4a1f21065 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/scePgf.cpp @@ -0,0 +1,38 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base scePgf; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &scePgf, #name, name) + +psv_log_base scePgf("ScePgf", []() +{ + scePgf.on_load = nullptr; + scePgf.on_unload = nullptr; + scePgf.on_stop = nullptr; + + //REG_FUNC(0x1055ABA3, sceFontNewLib); + //REG_FUNC(0x07EE1733, sceFontDoneLib); + //REG_FUNC(0xDE47674C, sceFontSetResolution); + //REG_FUNC(0x9F842307, sceFontGetNumFontList); + //REG_FUNC(0xD56DCCEA, sceFontGetFontList); + //REG_FUNC(0x8DFBAE1B, sceFontFindOptimumFont); + //REG_FUNC(0x51061D87, sceFontFindFont); + //REG_FUNC(0xAB034738, sceFontGetFontInfoByIndexNumber); + //REG_FUNC(0xBD2DFCFF, sceFontOpen); + //REG_FUNC(0xE260E740, sceFontOpenUserFile); + //REG_FUNC(0xB23ED47C, sceFontOpenUserMemory); + //REG_FUNC(0x4A7293E9, sceFontClose); + //REG_FUNC(0xF9414FA2, sceFontGetFontInfo); + //REG_FUNC(0x6FD1BA65, sceFontGetCharInfo); + //REG_FUNC(0x70C86B3E, sceFontGetCharImageRect); + //REG_FUNC(0xAB45AAD3, sceFontGetCharGlyphImage); + //REG_FUNC(0xEB589530, sceFontGetCharGlyphImage_Clip); + //REG_FUNC(0x9E38F4D6, sceFontPixelToPointH); + //REG_FUNC(0x7B45E2D1, sceFontPixelToPointV); + //REG_FUNC(0x39B9AEFF, sceFontPointToPixelH); + //REG_FUNC(0x03F10EC8, sceFontPointToPixelV); + //REG_FUNC(0x8D5B44DF, sceFontSetAltCharacterCode); + //REG_FUNC(0x7D8CB13B, sceFontFlush); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/scePhotoExport.cpp b/rpcs3/Emu/ARMv7/Modules/scePhotoExport.cpp new file mode 100644 index 0000000000..2fab7c29d4 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/scePhotoExport.cpp @@ -0,0 +1,17 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base scePhotoExport; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &scePhotoExport, #name, name) + +psv_log_base scePhotoExport("ScePhotoExport", []() +{ + scePhotoExport.on_load = nullptr; + scePhotoExport.on_unload = nullptr; + scePhotoExport.on_stop = nullptr; + + //REG_FUNC(0x70512321, scePhotoExportFromData); + //REG_FUNC(0x84FD9FC5, scePhotoExportFromFile); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceRazorCapture.cpp b/rpcs3/Emu/ARMv7/Modules/sceRazorCapture.cpp new file mode 100644 index 0000000000..4eaeb11070 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceRazorCapture.cpp @@ -0,0 +1,18 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceRazorCapture; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceRazorCapture, #name, name) + +psv_log_base sceRazorCapture("SceRazorCapture", []() +{ + sceRazorCapture.on_load = nullptr; + sceRazorCapture.on_unload = nullptr; + sceRazorCapture.on_stop = nullptr; + + //REG_FUNC(0x911E0AA0, sceRazorCaptureIsInProgress); + //REG_FUNC(0xE916B538, sceRazorCaptureSetTrigger); + //REG_FUNC(0x3D4B7E68, sceRazorCaptureSetTriggerNextFrame); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceRtc.cpp b/rpcs3/Emu/ARMv7/Modules/sceRtc.cpp new file mode 100644 index 0000000000..72d81d8e15 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceRtc.cpp @@ -0,0 +1,52 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceRtc; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceRtc, #name, name) + +psv_log_base sceRtc("SceRtc", []() +{ + sceRtc.on_load = nullptr; + sceRtc.on_unload = nullptr; + sceRtc.on_stop = nullptr; + + //REG_FUNC(0x23F79274, sceRtcGetCurrentTick); + //REG_FUNC(0xCDDD25FE, sceRtcGetCurrentNetworkTick); + //REG_FUNC(0x70FDE8F1, sceRtcGetCurrentClock); + //REG_FUNC(0x0572EDDC, sceRtcGetCurrentClockLocalTime); + //REG_FUNC(0x1282C436, sceRtcConvertUtcToLocalTime); + //REG_FUNC(0x0A05E201, sceRtcConvertLocalTimeToUtc); + //REG_FUNC(0x42CA8EB5, sceRtcFormatRFC2822LocalTime); + //REG_FUNC(0x147F2138, sceRtcFormatRFC2822); + //REG_FUNC(0x742250A9, sceRtcFormatRFC3339LocalTime); + //REG_FUNC(0xCCEA2B54, sceRtcFormatRFC3339); + //REG_FUNC(0xF17FD8B5, sceRtcIsLeapYear); + //REG_FUNC(0x49EB4556, sceRtcGetDaysInMonth); + //REG_FUNC(0x2F3531EB, sceRtcGetDayOfWeek); + //REG_FUNC(0xD7622935, sceRtcCheckValid); + //REG_FUNC(0x3A332F81, sceRtcSetTime_t); + //REG_FUNC(0xA6C36B6A, sceRtcSetTime64_t); + //REG_FUNC(0x8DE6FEB7, sceRtcGetTime_t); + //REG_FUNC(0xC995DE02, sceRtcGetTime64_t); + //REG_FUNC(0xF8B22B07, sceRtcSetDosTime); + //REG_FUNC(0x92ABEBAF, sceRtcGetDosTime); + //REG_FUNC(0xA79A8846, sceRtcSetWin32FileTime); + //REG_FUNC(0x8A95E119, sceRtcGetWin32FileTime); + //REG_FUNC(0x811313B3, sceRtcGetTickResolution); + //REG_FUNC(0xCD89F464, sceRtcSetTick); + //REG_FUNC(0xF2B238E2, sceRtcGetTick); + //REG_FUNC(0xC7385158, sceRtcCompareTick); + //REG_FUNC(0x4559E2DB, sceRtcTickAddTicks); + //REG_FUNC(0xAE26D920, sceRtcTickAddMicroseconds); + //REG_FUNC(0x979AFD79, sceRtcTickAddSeconds); + //REG_FUNC(0x4C358871, sceRtcTickAddMinutes); + //REG_FUNC(0x6F193F55, sceRtcTickAddHours); + //REG_FUNC(0x58DE3C70, sceRtcTickAddDays); + //REG_FUNC(0xE713C640, sceRtcTickAddWeeks); + //REG_FUNC(0x6321B4AA, sceRtcTickAddMonths); + //REG_FUNC(0xDF6C3E1B, sceRtcTickAddYears); + //REG_FUNC(0x2347CE12, sceRtcParseDateTime); + //REG_FUNC(0x2D18AEEC, sceRtcParseRFC3339); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSas.cpp b/rpcs3/Emu/ARMv7/Modules/sceSas.cpp new file mode 100644 index 0000000000..0db6b65e16 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSas.cpp @@ -0,0 +1,64 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSas; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSas, #name, name) + +psv_log_base sceSas("SceSas", []() +{ + sceSas.on_load = nullptr; + sceSas.on_unload = nullptr; + sceSas.on_stop = nullptr; + + //REG_FUNC(0xA2209C58, sceAsSetRegisterReportHandler); + //REG_FUNC(0xBB635544, sceAsSetUnregisterReportHandler); + //REG_FUNC(0xF578F0EF, sceAsGetSystemNeededMemory); + //REG_FUNC(0xAA8D4541, sceAsCreateSystem); + //REG_FUNC(0x139D29C0, sceAsDestroySystem); + //REG_FUNC(0xBE843EEC, sceAsLockParam); + //REG_FUNC(0xFF2380C4, sceAsUnlockParam); + //REG_FUNC(0x2549F436, sceAsSetEvent); + //REG_FUNC(0xDC26B9F2, sceAsGetState); + //REG_FUNC(0xB6220E73, sceAsSetBuss); + //REG_FUNC(0x1E608068, sceAsSetRacks); + //REG_FUNC(0x5835B473, sceAsSetGranularity); + //REG_FUNC(0xDFE6502F, sceAsGetGranularity); + //REG_FUNC(0xC72F1EEF, sceAsRender); + //REG_FUNC(0xCE23F057, sceAsLockUpdate); + //REG_FUNC(0x8BEF3C92, sceAsUnlockUpdate); + //REG_FUNC(0x180C6824, sceSasGetNeededMemorySize); + //REG_FUNC(0x449B5974, sceSasInit); + //REG_FUNC(0x820D5F82, sceSasInitWithGrain); + //REG_FUNC(0xBB7D6790, sceSasExit); + //REG_FUNC(0x2B4A207C, sceSasSetGrain); + //REG_FUNC(0x2BEA45BC, sceSasGetGrain); + //REG_FUNC(0x44DDB3C4, sceSasSetOutputmode); + //REG_FUNC(0x2C36E150, sceSasGetOutputmode); + //REG_FUNC(0x7A4672B2, sceSasCore); + //REG_FUNC(0xBD496983, sceSasCoreWithMix); + //REG_FUNC(0x2B75F9BC, sceSasSetVoice); + //REG_FUNC(0xB1756EFC, sceSasSetVoicePCM); + //REG_FUNC(0xF1C63CB9, sceSasSetNoise); + //REG_FUNC(0x0BE8204D, sceSasSetVolume); + //REG_FUNC(0x011788BE, sceSasSetDistortion); + //REG_FUNC(0x2C48A08C, sceSasSetPitch); + //REG_FUNC(0x18A5EFA2, sceSasSetADSR); + //REG_FUNC(0x5207F9D2, sceSasSetADSRmode); + //REG_FUNC(0xDE6227B8, sceSasSetSL); + //REG_FUNC(0xECCE0DB8, sceSasSetSimpleADSR); + //REG_FUNC(0xC838DB6F, sceSasSetKeyOn); + //REG_FUNC(0x5E42ADAB, sceSasSetKeyOff); + //REG_FUNC(0x59C7A9DF, sceSasSetPause); + //REG_FUNC(0x007E63E6, sceSasGetEndState); + //REG_FUNC(0xFD1A0CBF, sceSasGetPauseState); + //REG_FUNC(0x296A9910, sceSasGetEnvelope); + //REG_FUNC(0xB0444E69, sceSasSetEffect); + //REG_FUNC(0xCDF2DDD5, sceSasSetEffectType); + //REG_FUNC(0x55EDDBFA, sceSasSetEffectVolume); + //REG_FUNC(0xBAD546A0, sceSasSetEffectParam); + //REG_FUNC(0xB6642276, sceSasGetDryPeak); + //REG_FUNC(0x4314F0E9, sceSasGetWetPeak); + //REG_FUNC(0x1568017A, sceSasGetPreMasterPeak); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceScreenShot.cpp b/rpcs3/Emu/ARMv7/Modules/sceScreenShot.cpp new file mode 100644 index 0000000000..47ab0d614c --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceScreenShot.cpp @@ -0,0 +1,19 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceScreenShot; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceScreenShot, #name, name) + +psv_log_base sceScreenShot("SceScreenShot", []() +{ + sceScreenShot.on_load = nullptr; + sceScreenShot.on_unload = nullptr; + sceScreenShot.on_stop = nullptr; + + //REG_FUNC(0x05DB59C7, sceScreenShotSetParam); + //REG_FUNC(0x7061665B, sceScreenShotSetOverlayImage); + //REG_FUNC(0x50AE9FF9, sceScreenShotDisable); + //REG_FUNC(0x76E674D1, sceScreenShotEnable); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSfmt.cpp b/rpcs3/Emu/ARMv7/Modules/sceSfmt.cpp new file mode 100644 index 0000000000..e6d2f2a4be --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSfmt.cpp @@ -0,0 +1,84 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSfmt; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSfmt, #name, name) + +psv_log_base sceSfmt("SceSfmt", []() +{ + sceSfmt.on_load = nullptr; + sceSfmt.on_unload = nullptr; + sceSfmt.on_stop = nullptr; + + //REG_FUNC(0x8FF464C9, sceSfmt11213InitGenRand); + //REG_FUNC(0xBAF5F058, sceSfmt11213InitByArray); + //REG_FUNC(0xFB281CD7, sceSfmt11213GenRand32); + //REG_FUNC(0xAFEDD6E1, sceSfmt11213GenRand64); + //REG_FUNC(0xFD696585, sceSfmt11213FillArray32); + //REG_FUNC(0x7A412A29, sceSfmt11213FillArray64); + + //REG_FUNC(0x02E8D906, sceSfmt1279InitGenRand); + //REG_FUNC(0xC25D9ACE, sceSfmt1279InitByArray); + //REG_FUNC(0x9B4A48DF, sceSfmt1279GenRand32); + //REG_FUNC(0xA2C5EE14, sceSfmt1279GenRand64); + //REG_FUNC(0xE7F63838, sceSfmt1279FillArray32); + //REG_FUNC(0xDB3832EB, sceSfmt1279FillArray64); + + //REG_FUNC(0xDC6B23B0, sceSfmt132049InitGenRand); + //REG_FUNC(0xDC69294A, sceSfmt132049InitByArray); + //REG_FUNC(0x795F9644, sceSfmt132049GenRand32); + //REG_FUNC(0xBBD80AC4, sceSfmt132049GenRand64); + //REG_FUNC(0xD891A99F, sceSfmt132049FillArray32); + //REG_FUNC(0x68AD7866, sceSfmt132049FillArray64); + + //REG_FUNC(0x2AFACB0B, sceSfmt19937InitGenRand); + //REG_FUNC(0xAC496C8C, sceSfmt19937InitByArray); + //REG_FUNC(0xF0557157, sceSfmt19937GenRand32); + //REG_FUNC(0xE66F2502, sceSfmt19937GenRand64); + //REG_FUNC(0xA1C654D8, sceSfmt19937FillArray32); + //REG_FUNC(0xE74BA81C, sceSfmt19937FillArray64); + + //REG_FUNC(0x86DDE4A7, sceSfmt216091InitGenRand); + //REG_FUNC(0xA9CF6616, sceSfmt216091InitByArray); + //REG_FUNC(0x4A972DCD, sceSfmt216091GenRand32); + //REG_FUNC(0x23369ABF, sceSfmt216091GenRand64); + //REG_FUNC(0xDD4256F0, sceSfmt216091FillArray32); + //REG_FUNC(0xA1CE5628, sceSfmt216091FillArray64); + + //REG_FUNC(0xB8E5A0BB, sceSfmt2281InitGenRand); + //REG_FUNC(0xAB3AD459, sceSfmt2281InitByArray); + //REG_FUNC(0x84BB4ADB, sceSfmt2281GenRand32); + //REG_FUNC(0x3CC47146, sceSfmt2281GenRand64); + //REG_FUNC(0xBB89D8F0, sceSfmt2281FillArray32); + //REG_FUNC(0x17C10E2D, sceSfmt2281FillArray64); + + //REG_FUNC(0xE9F8CB9A, sceSfmt4253InitGenRand); + //REG_FUNC(0xC4D7AA2D, sceSfmt4253InitByArray); + //REG_FUNC(0x8791E2EF, sceSfmt4253GenRand32); + //REG_FUNC(0x6C0E5E3C, sceSfmt4253GenRand64); + //REG_FUNC(0x59A1B9FC, sceSfmt4253FillArray32); + //REG_FUNC(0x01683CDD, sceSfmt4253FillArray64); + + //REG_FUNC(0xCF1C8C38, sceSfmt44497InitGenRand); + //REG_FUNC(0x16D8AA5E, sceSfmt44497InitByArray); + //REG_FUNC(0xF869DFDC, sceSfmt44497GenRand32); + //REG_FUNC(0xD411A9A6, sceSfmt44497GenRand64); + //REG_FUNC(0x1C38322A, sceSfmt44497FillArray32); + //REG_FUNC(0x908F1122, sceSfmt44497FillArray64); + + //REG_FUNC(0x76A5D8CA, sceSfmt607InitGenRand); + //REG_FUNC(0xCC6DABA0, sceSfmt607InitByArray); + //REG_FUNC(0x8A0BF859, sceSfmt607GenRand32); + //REG_FUNC(0x5E880862, sceSfmt607GenRand64); + //REG_FUNC(0xA288ADB9, sceSfmt607FillArray32); + //REG_FUNC(0x1520D408, sceSfmt607FillArray64); + + //REG_FUNC(0x2FF42588, sceSfmt86243InitGenRand); + //REG_FUNC(0x81B67AB5, sceSfmt86243InitByArray); + //REG_FUNC(0x569BF903, sceSfmt86243GenRand32); + //REG_FUNC(0x8E25CBA8, sceSfmt86243GenRand64); + //REG_FUNC(0xC297E6B1, sceSfmt86243FillArray32); + //REG_FUNC(0xF7FFE87C, sceSfmt86243FillArray64); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSha.cpp b/rpcs3/Emu/ARMv7/Modules/sceSha.cpp new file mode 100644 index 0000000000..5ec792b06d --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSha.cpp @@ -0,0 +1,44 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSha; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSha, #name, name) + +psv_log_base sceSha("SceSha", []() +{ + sceSha.on_load = nullptr; + sceSha.on_unload = nullptr; + sceSha.on_stop = nullptr; + + //REG_FUNC(0xD19A9AA8, sceSha0Digest); + //REG_FUNC(0xBCF6DB3A, sceSha0BlockInit); + //REG_FUNC(0x37EF2AFC, sceSha0BlockUpdate); + //REG_FUNC(0xBF0158C4, sceSha0BlockResult); + + //REG_FUNC(0xE1215C9D, sceSha1Digest); + //REG_FUNC(0xB13D65AA, sceSha1BlockInit); + //REG_FUNC(0x9007205E, sceSha1BlockUpdate); + //REG_FUNC(0x0195DADF, sceSha1BlockResult); + + //REG_FUNC(0x1346D270, sceSha224Digest); + //REG_FUNC(0x538F04CE, sceSha224BlockInit); + //REG_FUNC(0xB5FD0160, sceSha224BlockUpdate); + //REG_FUNC(0xA36ECF65, sceSha224BlockResult); + + //REG_FUNC(0xA337079C, sceSha256Digest); + //REG_FUNC(0xE281374F, sceSha256BlockInit); + //REG_FUNC(0xDAECA1F8, sceSha256BlockUpdate); + //REG_FUNC(0x9B5BB4BA, sceSha256BlockResult); + + //REG_FUNC(0xA602C694, sceSha384Digest); + //REG_FUNC(0x037AABE7, sceSha384BlockInit); + //REG_FUNC(0x4B99DBB8, sceSha384BlockUpdate); + //REG_FUNC(0x30D5C919, sceSha384BlockResult); + + //REG_FUNC(0x5DC0B916, sceSha512Digest); + //REG_FUNC(0xE017A9CD, sceSha512BlockInit); + //REG_FUNC(0x669281E8, sceSha512BlockUpdate); + //REG_FUNC(0x26146A16, sceSha512BlockResult); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSqlite.cpp b/rpcs3/Emu/ARMv7/Modules/sceSqlite.cpp new file mode 100644 index 0000000000..19f560c963 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSqlite.cpp @@ -0,0 +1,187 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSqlite; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSqlite, #name, name) + +psv_log_base sceSqlite("SceSqlite", []() +{ + sceSqlite.on_load = nullptr; + sceSqlite.on_unload = nullptr; + sceSqlite.on_stop = nullptr; + + //REG_FUNC(0x26E46324, sqlite3_libversion); + //REG_FUNC(0x4CCB58A2, sqlite3_sourceid); + //REG_FUNC(0x5982F404, sqlite3_libversion_number); + //REG_FUNC(0xA3B818DA, sqlite3_threadsafe); + //REG_FUNC(0x7DF94B79, sqlite3_close); + //REG_FUNC(0x2371E86A, sqlite3_exec); + //REG_FUNC(0xC22AF627, sqlite3_initialize); + //REG_FUNC(0x99B5A4A3, sqlite3_shutdown); + //REG_FUNC(0xBD304836, sqlite3_os_init); + //REG_FUNC(0x9CE7C4C3, sqlite3_os_end); + //REG_FUNC(0x96C5D388, sqlite3_config); + //REG_FUNC(0xADFB25C0, sqlite3_db_config); + //REG_FUNC(0x3892C4B8, sqlite3_extended_result_codes); + //REG_FUNC(0x301851A1, sqlite3_last_insert_rowid); + //REG_FUNC(0xF206FBA1, sqlite3_changes); + //REG_FUNC(0x02ADA92D, sqlite3_total_changes); + //REG_FUNC(0x3CB771AC, sqlite3_interrupt); + //REG_FUNC(0x2E28B2A7, sqlite3_complete); + //REG_FUNC(0x4EAB317B, sqlite3_complete16); + //REG_FUNC(0xB5B5D287, sqlite3_busy_handler); + //REG_FUNC(0xAE8E3630, sqlite3_busy_timeout); + //REG_FUNC(0xF2AB9C89, sqlite3_get_table); + //REG_FUNC(0x1FEC6959, sqlite3_free_table); + //REG_FUNC(0xE630216C, sqlite3_mprintf); + //REG_FUNC(0xC6372184, sqlite3_vmprintf); + //REG_FUNC(0xCC189941, sqlite3_snprintf); + //REG_FUNC(0xF01DEB95, sqlite3_malloc); + //REG_FUNC(0xD1CF5631, sqlite3_realloc); + //REG_FUNC(0xCBF0CA8A, sqlite3_free); + //REG_FUNC(0x8E4F6ED5, sqlite3_memory_used); + //REG_FUNC(0x2F33DAD6, sqlite3_memory_highwater); + //REG_FUNC(0x5A2590BF, sqlite3_randomness); + //REG_FUNC(0x77FB3458, sqlite3_set_authorizer); + //REG_FUNC(0xFC127A83, sqlite3_trace); + //REG_FUNC(0x48B789A1, sqlite3_profile); + //REG_FUNC(0x19165D04, sqlite3_progress_handler); + //REG_FUNC(0x8E506859, sqlite3_open); + //REG_FUNC(0x881EEDD8, sqlite3_open16); + //REG_FUNC(0xA1E98A41, sqlite3_open_v2); + //REG_FUNC(0xA7AAE2E7, sqlite3_errcode); + //REG_FUNC(0x91187282, sqlite3_extended_errcode); + //REG_FUNC(0xABFB8B6E, sqlite3_errmsg); + //REG_FUNC(0xF0DE1A97, sqlite3_errmsg16); + //REG_FUNC(0xDED2D517, sqlite3_limit); + //REG_FUNC(0x0C1B5509, sqlite3_prepare); + //REG_FUNC(0xBC4BDCF4, sqlite3_prepare_v2); + //REG_FUNC(0xC657CFB8, sqlite3_prepare16); + //REG_FUNC(0x426D81D2, sqlite3_prepare16_v2); + //REG_FUNC(0x082C36D4, sqlite3_sql); + //REG_FUNC(0x3F225D62, sqlite3_bind_blob); + //REG_FUNC(0xDE007F1B, sqlite3_bind_double); + //REG_FUNC(0x14ABCBCC, sqlite3_bind_int); + //REG_FUNC(0x43D967EF, sqlite3_bind_int64); + //REG_FUNC(0xFF8A9974, sqlite3_bind_null); + //REG_FUNC(0x613AB709, sqlite3_bind_text); + //REG_FUNC(0x9D0FEAEF, sqlite3_bind_text16); + //REG_FUNC(0x8A667D2A, sqlite3_bind_value); + //REG_FUNC(0x78FBA2D0, sqlite3_bind_zeroblob); + //REG_FUNC(0x17D4F00B, sqlite3_bind_parameter_count); + //REG_FUNC(0x96D3B5F9, sqlite3_bind_parameter_name); + //REG_FUNC(0xD4D2A5D8, sqlite3_bind_parameter_index); + //REG_FUNC(0x690947E2, sqlite3_clear_bindings); + //REG_FUNC(0x8567A8DE, sqlite3_column_count); + //REG_FUNC(0xBC422DF6, sqlite3_column_name); + //REG_FUNC(0x6EF9A642, sqlite3_column_name16); + //REG_FUNC(0x5AE92D67, sqlite3_column_decltype); + //REG_FUNC(0xE058DE60, sqlite3_column_decltype16); + //REG_FUNC(0xCA8755B7, sqlite3_step); + //REG_FUNC(0x61911935, sqlite3_data_count); + //REG_FUNC(0xFE237ED7, sqlite3_column_blob); + //REG_FUNC(0x36013FE4, sqlite3_column_bytes); + //REG_FUNC(0x439F160B, sqlite3_column_bytes16); + //REG_FUNC(0xC4866097, sqlite3_column_double); + //REG_FUNC(0xE5B6BA01, sqlite3_column_int); + //REG_FUNC(0x90BA0B88, sqlite3_column_int64); + //REG_FUNC(0x8E68D270, sqlite3_column_text); + //REG_FUNC(0xD7BD6B76, sqlite3_column_text16); + //REG_FUNC(0xDBB25C43, sqlite3_column_type); + //REG_FUNC(0x2227F21D, sqlite3_column_value); + //REG_FUNC(0xB656B7E2, sqlite3_finalize); + //REG_FUNC(0xA6ECC214, sqlite3_reset); + //REG_FUNC(0xB0543897, sqlite3_create_function); + //REG_FUNC(0x7655FA45, sqlite3_create_function16); + //REG_FUNC(0x6AB02532, sqlite3_aggregate_count); + //REG_FUNC(0xF8AA518B, sqlite3_expired); + //REG_FUNC(0x6EC012E5, sqlite3_transfer_bindings); + //REG_FUNC(0xF48E021B, sqlite3_global_recover); + //REG_FUNC(0x173C9C0B, sqlite3_thread_cleanup); + //REG_FUNC(0x56EDF517, sqlite3_memory_alarm); + //REG_FUNC(0xC9962B31, sqlite3_value_blob); + //REG_FUNC(0x5368EF1F, sqlite3_value_bytes); + //REG_FUNC(0x4D10900D, sqlite3_value_bytes16); + //REG_FUNC(0xF1F2C9BE, sqlite3_value_double); + //REG_FUNC(0x4809A520, sqlite3_value_int); + //REG_FUNC(0xA6581C04, sqlite3_value_int64); + //REG_FUNC(0x7EB97356, sqlite3_value_text); + //REG_FUNC(0x5BBE38C2, sqlite3_value_text16); + //REG_FUNC(0x014863A6, sqlite3_value_text16le); + //REG_FUNC(0x3B89AA8D, sqlite3_value_text16be); + //REG_FUNC(0xC5EEBB5D, sqlite3_value_type); + //REG_FUNC(0x81B7D43D, sqlite3_value_numeric_type); + //REG_FUNC(0xAA8BE477, sqlite3_aggregate_context); + //REG_FUNC(0x78FF81FB, sqlite3_user_data); + //REG_FUNC(0x74259C09, sqlite3_context_db_handle); + //REG_FUNC(0x394FC1CB, sqlite3_get_auxdata); + //REG_FUNC(0x129E01C9, sqlite3_set_auxdata); + //REG_FUNC(0x90CDF8C1, sqlite3_result_blob); + //REG_FUNC(0xC2A5C2F8, sqlite3_result_double); + //REG_FUNC(0x063BFACA, sqlite3_result_error); + //REG_FUNC(0xAB2AEB4A, sqlite3_result_error16); + //REG_FUNC(0xAB9EFF96, sqlite3_result_error_toobig); + //REG_FUNC(0x944E747A, sqlite3_result_error_nomem); + //REG_FUNC(0x1165223C, sqlite3_result_error_code); + //REG_FUNC(0x5C9CD9D4, sqlite3_result_int); + //REG_FUNC(0x0EF1AA07, sqlite3_result_int64); + //REG_FUNC(0x6DE09482, sqlite3_result_null); + //REG_FUNC(0x696B5E6A, sqlite3_result_text); + //REG_FUNC(0x3AF5D206, sqlite3_result_text16); + //REG_FUNC(0x845B4FC2, sqlite3_result_text16le); + //REG_FUNC(0xEE3E906A, sqlite3_result_text16be); + //REG_FUNC(0x09664492, sqlite3_result_value); + //REG_FUNC(0x3D463CF7, sqlite3_result_zeroblob); + //REG_FUNC(0xC61B63FB, sqlite3_create_collation); + //REG_FUNC(0x4B110AF2, sqlite3_create_collation_v2); + //REG_FUNC(0xF7FE99C8, sqlite3_create_collation16); + //REG_FUNC(0x836C99A3, sqlite3_collation_needed); + //REG_FUNC(0x537066CE, sqlite3_collation_needed16); + //REG_FUNC(0x6B88D1D4, sqlite3_sleep); + //REG_FUNC(0x0910C3CB, sqlite3_get_autocommit); + //REG_FUNC(0x2C62429E, sqlite3_db_handle); + //REG_FUNC(0xD257592A, sqlite3_next_stmt); + //REG_FUNC(0x4BAE6E3B, sqlite3_commit_hook); + //REG_FUNC(0x67F53D6B, sqlite3_rollback_hook); + //REG_FUNC(0xEB05FE87, sqlite3_update_hook); + //REG_FUNC(0xF0094BED, sqlite3_enable_shared_cache); + //REG_FUNC(0x8F99FBE5, sqlite3_release_memory); + //REG_FUNC(0xD1458BA7, sqlite3_soft_heap_limit); + //REG_FUNC(0xC9EA8E1F, sqlite3_load_extension); + //REG_FUNC(0x9BFC6F07, sqlite3_enable_load_extension); + //REG_FUNC(0x24738263, sqlite3_auto_extension); + //REG_FUNC(0xC4296FFD, sqlite3_reset_auto_extension); + //REG_FUNC(0x8970C45F, sqlite3_create_module); + //REG_FUNC(0x1AA3BC1A, sqlite3_create_module_v2); + //REG_FUNC(0x7E2A5E8F, sqlite3_declare_vtab); + //REG_FUNC(0xAF680D40, sqlite3_overload_function); + //REG_FUNC(0xD35B3E55, sqlite3_blob_open); + //REG_FUNC(0xC085A15D, sqlite3_blob_close); + //REG_FUNC(0xA07AEEE3, sqlite3_blob_bytes); + //REG_FUNC(0x71393AA4, sqlite3_blob_read); + //REG_FUNC(0xBDB46BCF, sqlite3_blob_write); + //REG_FUNC(0x0C6DD8C3, sqlite3_vfs_find); + //REG_FUNC(0x65F53B9C, sqlite3_vfs_register); + //REG_FUNC(0x69CF4171, sqlite3_vfs_unregister); + //REG_FUNC(0xEEB7839F, sqlite3_mutex_alloc); + //REG_FUNC(0x38E933E2, sqlite3_mutex_free); + //REG_FUNC(0x60DB89C0, sqlite3_mutex_enter); + //REG_FUNC(0x218D700E, sqlite3_mutex_try); + //REG_FUNC(0x545ABDDB, sqlite3_mutex_leave); + //REG_FUNC(0xA8E53D26, sqlite3_db_mutex); + //REG_FUNC(0xBB096FBD, sqlite3_file_control); + //REG_FUNC(0x324D4EFD, sqlite3_test_control); + //REG_FUNC(0xD8C435AA, sqlite3_status); + //REG_FUNC(0xB5DFAF6A, sqlite3_db_status); + //REG_FUNC(0xF7ABF5FA, sqlite3_stmt_status); + //REG_FUNC(0x91DDB12A, sqlite3_backup_init); + //REG_FUNC(0x2A15E081, sqlite3_backup_step); + //REG_FUNC(0x93A6B7EF, sqlite3_backup_finish); + //REG_FUNC(0x9962540B, sqlite3_backup_remaining); + //REG_FUNC(0x20D054CF, sqlite3_backup_pagecount); + //REG_FUNC(0x12E2FC18, sqlite3_strnicmp); + //REG_FUNC(0xB80D43C7, sqlite3_version); + //REG_FUNC(0x1AEC1F74, sqlite3_temp_directory); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSsl.cpp b/rpcs3/Emu/ARMv7/Modules/sceSsl.cpp new file mode 100644 index 0000000000..51032ab5fd --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSsl.cpp @@ -0,0 +1,26 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSsl; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSsl, #name, name) + +psv_log_base sceSsl("SceSsl", []() +{ + sceSsl.on_load = nullptr; + sceSsl.on_unload = nullptr; + sceSsl.on_stop = nullptr; + + //REG_FUNC(0x3C733316, sceSslInit); + //REG_FUNC(0x03CE6E3A, sceSslTerm); + //REG_FUNC(0xBD203262, sceSslGetMemoryPoolStats); + //REG_FUNC(0x901C5C15, sceSslGetSerialNumber); + //REG_FUNC(0x9B2F1BC1, sceSslGetSubjectName); + //REG_FUNC(0x412711E5, sceSslGetIssuerName); + //REG_FUNC(0x70DEA174, sceSslGetNotBefore); + //REG_FUNC(0xF5ED7B68, sceSslGetNotAfter); + //REG_FUNC(0x95E14CA6, sceSslGetNameEntryCount); + //REG_FUNC(0x2A857867, sceSslGetNameEntryInfo); + //REG_FUNC(0xC73687E4, sceSslFreeSslCertName); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSulpha.cpp b/rpcs3/Emu/ARMv7/Modules/sceSulpha.cpp new file mode 100644 index 0000000000..09c50ce4e9 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSulpha.cpp @@ -0,0 +1,38 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSulpha; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSulpha, #name, name) + +psv_log_base sceSulpha("SceSulpha", []() +{ + sceSulpha.on_load = nullptr; + sceSulpha.on_unload = nullptr; + sceSulpha.on_stop = nullptr; + + //REG_FUNC(0xB4668AEA, sceSulphaNetworkInit); + //REG_FUNC(0x0FC71B72, sceSulphaNetworkShutdown); + //REG_FUNC(0xA6A05C50, sceSulphaGetDefaultConfig); + //REG_FUNC(0xD52E5A5A, sceSulphaGetNeededMemory); + //REG_FUNC(0x324F158F, sceSulphaInit); + //REG_FUNC(0x10770BA7, sceSulphaShutdown); + //REG_FUNC(0x920EC7BF, sceSulphaUpdate); + //REG_FUNC(0x7968A138, sceSulphaFileConnect); + //REG_FUNC(0xB16E7B88, sceSulphaFileDisconnect); + //REG_FUNC(0x5E15E164, sceSulphaSetBookmark); + //REG_FUNC(0xC5752B6B, sceSulphaAgentsGetNeededMemory); + //REG_FUNC(0x7ADB454D, sceSulphaAgentsRegister); + //REG_FUNC(0x2A8B74D7, sceSulphaAgentsUnregister); + //REG_FUNC(0xDE7E2911, sceSulphaGetAgent); + //REG_FUNC(0xA41B7402, sceSulphaNodeNew); + //REG_FUNC(0xD44C9F86, sceSulphaNodeDelete); + //REG_FUNC(0xBF61F3B8, sceSulphaEventNew); + //REG_FUNC(0xD5D995A9, sceSulphaEventDelete); + //REG_FUNC(0xB0C2B9CE, sceSulphaEventAdd); + //REG_FUNC(0xBC6A2833, sceSulphaEventReport); + //REG_FUNC(0x29F0DA12, sceSulphaGetTimestamp); + //REG_FUNC(0x951D159D, sceSulphaLogSetLevel); + //REG_FUNC(0x5C6815C6, sceSulphaLogHandler); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceSystemGesture.cpp b/rpcs3/Emu/ARMv7/Modules/sceSystemGesture.cpp new file mode 100644 index 0000000000..b70a5a27c4 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceSystemGesture.cpp @@ -0,0 +1,32 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceSystemGesture; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceSystemGesture, #name, name) + +psv_log_base sceSystemGesture("SceSystemGesture", []() +{ + sceSystemGesture.on_load = nullptr; + sceSystemGesture.on_unload = nullptr; + sceSystemGesture.on_stop = nullptr; + + //REG_FUNC(0x6078A08B, sceSystemGestureInitializePrimitiveTouchRecognizer); + //REG_FUNC(0xFD5A6504, sceSystemGestureResetPrimitiveTouchRecognizer); + //REG_FUNC(0xB3875104, sceSystemGestureFinalizePrimitiveTouchRecognizer); + //REG_FUNC(0xDF4C665A, sceSystemGestureUpdatePrimitiveTouchRecognizer); + //REG_FUNC(0xC750D3DA, sceSystemGestureGetPrimitiveTouchEvents); + //REG_FUNC(0xBAB8ECCB, sceSystemGestureGetPrimitiveTouchEventsCount); + //REG_FUNC(0xE0577765, sceSystemGestureGetPrimitiveTouchEventByIndex); + //REG_FUNC(0x480564C9, sceSystemGestureGetPrimitiveTouchEventByPrimitiveID); + //REG_FUNC(0xC3367370, sceSystemGestureCreateTouchRecognizer); + //REG_FUNC(0xF0DB1AE5, sceSystemGestureGetTouchRecognizerInformation); + //REG_FUNC(0x0D941B90, sceSystemGestureResetTouchRecognizer); + //REG_FUNC(0x851FB144, sceSystemGestureUpdateTouchRecognizer); + //REG_FUNC(0xA9DB29F6, sceSystemGestureUpdateTouchRecognizerRectangle); + //REG_FUNC(0x789D867C, sceSystemGestureGetTouchEvents); + //REG_FUNC(0x13AD2218, sceSystemGestureGetTouchEventsCount); + //REG_FUNC(0x74724147, sceSystemGestureGetTouchEventByIndex); + //REG_FUNC(0x5570B83E, sceSystemGestureGetTouchEventByEventID); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceTouch.cpp b/rpcs3/Emu/ARMv7/Modules/sceTouch.cpp new file mode 100644 index 0000000000..6636644e0d --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceTouch.cpp @@ -0,0 +1,20 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceTouch; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceTouch, #name, name) + +psv_log_base sceTouch("SceTouch", []() +{ + sceTouch.on_load = nullptr; + sceTouch.on_unload = nullptr; + sceTouch.on_stop = nullptr; + + //REG_FUNC(0x169A1D58, sceTouchRead); + //REG_FUNC(0xFF082DF0, sceTouchPeek); + //REG_FUNC(0x1B9C5D14, sceTouchSetSamplingState); + //REG_FUNC(0x26531526, sceTouchGetSamplingState); + //REG_FUNC(0x10A2CA25, sceTouchGetPanelInfo); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceUlt.cpp b/rpcs3/Emu/ARMv7/Modules/sceUlt.cpp new file mode 100644 index 0000000000..6fb390fbd8 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceUlt.cpp @@ -0,0 +1,68 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceUlt; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceUlt, #name, name) + +psv_log_base sceUlt("SceUlt", []() +{ + sceUlt.on_load = nullptr; + sceUlt.on_unload = nullptr; + sceUlt.on_stop = nullptr; + + //REG_FUNC(0xEF094E35, _sceUltWaitingQueueResourcePoolOptParamInitialize); + //REG_FUNC(0x644DA029, sceUltWaitingQueueResourcePoolGetWorkAreaSize); + //REG_FUNC(0x62F9493E, _sceUltWaitingQueueResourcePoolCreate); + //REG_FUNC(0xC9E96714, sceUltWaitingQueueResourcePoolDestroy); + //REG_FUNC(0x8A4F88A2, _sceUltQueueDataResourcePoolOptParamInitialize); + //REG_FUNC(0xECDA7FEE, sceUltQueueDataResourcePoolGetWorkAreaSize); + //REG_FUNC(0x40856827, _sceUltQueueDataResourcePoolCreate); + //REG_FUNC(0x2B8D33F1, sceUltQueueDataResourcePoolDestroy); + //REG_FUNC(0x24D87E05, _sceUltMutexOptParamInitialize); + //REG_FUNC(0x5AFEC7A1, _sceUltMutexCreate); + //REG_FUNC(0x001EAC8A, sceUltMutexLock); + //REG_FUNC(0xE5936A69, sceUltMutexTryLock); + //REG_FUNC(0x897C9097, sceUltMutexUnlock); + //REG_FUNC(0xEEBD9052, sceUltMutexDestroy); + //REG_FUNC(0x0603FCC1, _sceUltConditionVariableOptParamInitialize); + //REG_FUNC(0xD76A156C, _sceUltConditionVariableCreate); + //REG_FUNC(0x9FE7CB9F, sceUltConditionVariableSignal); + //REG_FUNC(0xEBB6FC1E, sceUltConditionVariableSignalAll); + //REG_FUNC(0x2CD0F57C, sceUltConditionVariableWait); + //REG_FUNC(0x53420ED2, sceUltConditionVariableDestroy); + //REG_FUNC(0xF7A83023, _sceUltQueueOptParamInitialize); + //REG_FUNC(0x14DA1BB4, _sceUltQueueCreate); + //REG_FUNC(0xA7E78FF9, sceUltQueuePush); + //REG_FUNC(0x6D356B29, sceUltQueueTryPush); + //REG_FUNC(0x1AD58A53, sceUltQueuePop); + //REG_FUNC(0x2A1A8EA6, sceUltQueueTryPop); + //REG_FUNC(0xF37862DE, sceUltQueueDestroy); + //REG_FUNC(0xD8334A1F, _sceUltReaderWriterLockOptParamInitialize); + //REG_FUNC(0x2FB0EB32, _sceUltReaderWriterLockCreate); + //REG_FUNC(0x9AD07630, sceUltReaderWriterLockLockRead); + //REG_FUNC(0x2629C055, sceUltReaderWriterLockTryLockRead); + //REG_FUNC(0x218D4743, sceUltReaderWriterLockUnlockRead); + //REG_FUNC(0xF5F63E2C, sceUltReaderWriterLockLockWrite); + //REG_FUNC(0x944FB222, sceUltReaderWriterLockTryLockWrite); + //REG_FUNC(0x2A5741F5, sceUltReaderWriterLockUnlockWrite); + //REG_FUNC(0xB1FEB79B, sceUltReaderWriterLockDestroy); + //REG_FUNC(0x8E31B9FE, _sceUltSemaphoreOptParamInitialize); + //REG_FUNC(0xDD59562C, _sceUltSemaphoreCreate); + //REG_FUNC(0xF220D3AE, sceUltSemaphoreAcquire); + //REG_FUNC(0xAF15606D, sceUltSemaphoreTryAcquire); + //REG_FUNC(0x65376E2D, sceUltSemaphoreRelease); + //REG_FUNC(0x8EC57420, sceUltSemaphoreDestroy); + //REG_FUNC(0x8486DDE6, _sceUltUlthreadRuntimeOptParamInitialize); + //REG_FUNC(0x5435C586, sceUltUlthreadRuntimeGetWorkAreaSize); + //REG_FUNC(0x86DDA3AE, _sceUltUlthreadRuntimeCreate); + //REG_FUNC(0x4E9A745C, sceUltUlthreadRuntimeDestroy); + //REG_FUNC(0x7F373376, _sceUltUlthreadOptParamInitialize); + //REG_FUNC(0xB1290375, _sceUltUlthreadCreate); + //REG_FUNC(0xCAD57BAD, sceUltUlthreadYield); + //REG_FUNC(0x1E401DF8, sceUltUlthreadExit); + //REG_FUNC(0x63483381, sceUltUlthreadJoin); + //REG_FUNC(0xB4CF88AC, sceUltUlthreadTryJoin); + //REG_FUNC(0xA798C5D7, sceUltUlthreadGetSelf); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceVideodec.cpp b/rpcs3/Emu/ARMv7/Modules/sceVideodec.cpp new file mode 100644 index 0000000000..472c7bbfb3 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceVideodec.cpp @@ -0,0 +1,34 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceVideodec; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceVideodec, #name, name) + +psv_log_base sceVideodec("SceVideodec", []() +{ + sceVideodec.on_load = nullptr; + sceVideodec.on_unload = nullptr; + sceVideodec.on_stop = nullptr; + + //REG_FUNC(0xF1AF65A3, sceVideodecInitLibrary); + //REG_FUNC(0x3A5F4924, sceVideodecTermLibrary); + //REG_FUNC(0x97E95EDB, sceAvcdecQueryDecoderMemSize); + //REG_FUNC(0xE82BB69B, sceAvcdecCreateDecoder); + //REG_FUNC(0x8A0E359E, sceAvcdecDeleteDecoder); + //REG_FUNC(0x441673E3, sceAvcdecDecodeAvailableSize); + //REG_FUNC(0xD6190A06, sceAvcdecDecode); + //REG_FUNC(0x9648D853, sceAvcdecDecodeStop); + //REG_FUNC(0x25F31020, sceAvcdecDecodeFlush); + //REG_FUNC(0xB2A428DB, sceAvcdecCsc); + //REG_FUNC(0x6C68A38F, sceAvcdecDecodeNalAu); + //REG_FUNC(0xC67C1A80, sceM4vdecQueryDecoderMemSize); + //REG_FUNC(0x17C6AC9E, sceM4vdecCreateDecoder); + //REG_FUNC(0x0EB2E4E7, sceM4vdecDeleteDecoder); + //REG_FUNC(0xA8CF1942, sceM4vdecDecodeAvailableSize); + //REG_FUNC(0x624664DB, sceM4vdecDecode); + //REG_FUNC(0x87CFD23B, sceM4vdecDecodeStop); + //REG_FUNC(0x7C460D75, sceM4vdecDecodeFlush); + //REG_FUNC(0xB4BC325B, sceM4vdecCsc); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceVoice.cpp b/rpcs3/Emu/ARMv7/Modules/sceVoice.cpp new file mode 100644 index 0000000000..072f3d3303 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceVoice.cpp @@ -0,0 +1,40 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceVoice; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceVoice, #name, name) + +psv_log_base sceVoice("SceVoice", []() +{ + sceVoice.on_load = nullptr; + sceVoice.on_unload = nullptr; + sceVoice.on_stop = nullptr; + + //REG_FUNC(0xD02C00B4, sceVoiceGetBitRate); + //REG_FUNC(0xC913F7E9, sceVoiceGetMuteFlag); + //REG_FUNC(0x875CC80D, sceVoiceGetVolume); + //REG_FUNC(0x02F58D6F, sceVoiceSetBitRate); + //REG_FUNC(0x0B9E4AE2, sceVoiceSetMuteFlag); + //REG_FUNC(0xDB90EAC4, sceVoiceSetMuteFlagAll); + //REG_FUNC(0xD93769E6, sceVoiceSetVolume); + //REG_FUNC(0x6E46950E, sceVoiceGetResourceInfo); + //REG_FUNC(0xAC98853E, sceVoiceEnd); + //REG_FUNC(0x805CC20F, sceVoiceInit); + //REG_FUNC(0xB2ED725B, sceVoiceStart); + //REG_FUNC(0xC3868DF6, sceVoiceStop); + //REG_FUNC(0x698BDAAE, sceVoiceConnectIPortToOPort); + //REG_FUNC(0xFA4E57B1, sceVoiceCreatePort); + //REG_FUNC(0xAE46564D, sceVoiceDeletePort); + //REG_FUNC(0x5F0260F4, sceVoiceDisconnectIPortFromOPort); + //REG_FUNC(0x5933CCFB, sceVoiceGetPortInfo); + //REG_FUNC(0x23C6B16B, sceVoicePausePort); + //REG_FUNC(0x39AA3884, sceVoicePausePortAll); + //REG_FUNC(0x09E4D18C, sceVoiceReadFromOPort); + //REG_FUNC(0x5E1CE910, sceVoiceResetPort); + //REG_FUNC(0x2DE35411, sceVoiceResumePort); + //REG_FUNC(0x1F93FC0C, sceVoiceResumePortAll); + //REG_FUNC(0xCE855C50, sceVoiceUpdatePort); + //REG_FUNC(0x0A22EC0E, sceVoiceWriteToIPort); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceVoiceQoS.cpp b/rpcs3/Emu/ARMv7/Modules/sceVoiceQoS.cpp new file mode 100644 index 0000000000..bc5fb062a3 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceVoiceQoS.cpp @@ -0,0 +1,32 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceVoiceQoS; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceVoiceQoS, #name, name) + +psv_log_base sceVoiceQoS("SceVoiceQos", []() +{ + sceVoiceQoS.on_load = nullptr; + sceVoiceQoS.on_unload = nullptr; + sceVoiceQoS.on_stop = nullptr; + + //REG_FUNC(0x4B5FFF1C, sceVoiceQoSInit); + //REG_FUNC(0xFB0B747B, sceVoiceQoSEnd); + //REG_FUNC(0xAAB54BE4, sceVoiceQoSCreateLocalEndpoint); + //REG_FUNC(0x68FABF6F, sceVoiceQoSDeleteLocalEndpoint); + //REG_FUNC(0xBAB98727, sceVoiceQoSCreateRemoteEndpoint); + //REG_FUNC(0xC2F2C771, sceVoiceQoSDeleteRemoteEndpoint); + //REG_FUNC(0xE0C5CEEE, sceVoiceQoSConnect); + //REG_FUNC(0x3C7A08B0, sceVoiceQoSDisconnect); + //REG_FUNC(0xE5B4527D, sceVoiceQoSGetLocalEndpoint); + //REG_FUNC(0x876A9B9C, sceVoiceQoSGetRemoteEndpoint); + //REG_FUNC(0x540CEBA5, sceVoiceQoSSetLocalEndpointAttribute); + //REG_FUNC(0xC981AB3B, sceVoiceQoSGetLocalEndpointAttribute); + //REG_FUNC(0xE757806F, sceVoiceQoSSetConnectionAttribute); + //REG_FUNC(0xE81B8D44, sceVoiceQoSGetConnectionAttribute); + //REG_FUNC(0xC9DC1425, sceVoiceQoSGetStatus); + //REG_FUNC(0x2FE1F28F, sceVoiceQoSWritePacket); + //REG_FUNC(0x2D613549, sceVoiceQoSReadPacket); +}); diff --git a/rpcs3/Emu/ARMv7/Modules/sceXml.cpp b/rpcs3/Emu/ARMv7/Modules/sceXml.cpp new file mode 100644 index 0000000000..525ce21565 --- /dev/null +++ b/rpcs3/Emu/ARMv7/Modules/sceXml.cpp @@ -0,0 +1,201 @@ +#include "stdafx.h" +#include "Emu/System.h" +#include "Emu/ARMv7/PSVFuncList.h" + +extern psv_log_base sceXml; + +#define REG_FUNC(nid, name) reg_psv_func(nid, &sceXml, #name, name) + +psv_log_base sceXml("SceXml", []() +{ + sceXml.on_load = nullptr; + sceXml.on_unload = nullptr; + sceXml.on_stop = nullptr; + + //REG_FUNC(0x57400A1A, _ZN3sce3Xml10SimpleDataC1EPKcj); + //REG_FUNC(0x7E582075, _ZN3sce3Xml10SimpleDataC1Ev); + //REG_FUNC(0x4CF0656B, _ZN3sce3Xml10SimpleDataC2EPKcj); + //REG_FUNC(0x95077028, _ZN3sce3Xml10SimpleDataC2Ev); + //REG_FUNC(0xECFA6A2A, _ZN3sce3Xml11Initializer10initializeEPKNS0_13InitParameterE); + //REG_FUNC(0x29824CD5, _ZN3sce3Xml11Initializer9terminateEv); + //REG_FUNC(0xBF13FDE6, _ZN3sce3Xml11InitializerC1Ev); + //REG_FUNC(0x94AAA71D, _ZN3sce3Xml11InitializerC2Ev); + //REG_FUNC(0xB4547C88, _ZN3sce3Xml11InitializerD1Ev); + //REG_FUNC(0xAAA08FA8, _ZN3sce3Xml11InitializerD2Ev); + //REG_FUNC(0x8D387E01, _ZN3sce3Xml12MemAllocatorC1Ev); + //REG_FUNC(0xE982E681, _ZN3sce3Xml12MemAllocatorC2Ev); + //REG_FUNC(0x90B82579, _ZN3sce3Xml12MemAllocatorD0Ev); + //REG_FUNC(0x56002B9D, _ZN3sce3Xml12MemAllocatorD1Ev); + //REG_FUNC(0x1BE022EA, _ZN3sce3Xml12MemAllocatorD2Ev); + //REG_FUNC(0x89AA847E, _ZN3sce3Xml13AttributeList10initializeEPKNS0_11InitializerE); + //REG_FUNC(0xD08EE434, _ZN3sce3Xml13AttributeList12addAttributeEPKNS0_6StringES4_); + //REG_FUNC(0xCCEE4E7C, _ZN3sce3Xml13AttributeList5clearEv); + //REG_FUNC(0x11FE5A65, _ZN3sce3Xml13AttributeList9terminateEv); + //REG_FUNC(0x9CBD82D4, _ZN3sce3Xml13AttributeListC1ERKS1_); + //REG_FUNC(0x542076D8, _ZN3sce3Xml13AttributeListC1Ev); + //REG_FUNC(0x87C89447, _ZN3sce3Xml13AttributeListC2ERKS1_); + //REG_FUNC(0x5D49542A, _ZN3sce3Xml13AttributeListC2Ev); + //REG_FUNC(0x38861841, _ZN3sce3Xml13AttributeListD1Ev); + //REG_FUNC(0x1B0B3976, _ZN3sce3Xml13AttributeListD2Ev); + //REG_FUNC(0x30520B78, _ZN3sce3Xml14VarAllocBuffer4copyEPKhjb); + //REG_FUNC(0x7D5A0041, _ZN3sce3Xml14VarAllocBuffer5clearEv); + //REG_FUNC(0xD95D3824, _ZN3sce3Xml14VarAllocBuffer7copyStrEPKcj); + //REG_FUNC(0xFE99676E, _ZN3sce3Xml14VarAllocBuffer7copyStrERKNS0_6StringE); + //REG_FUNC(0x82747F92, _ZN3sce3Xml14VarAllocBuffer7reserveEj); + //REG_FUNC(0xE93EACFC, _ZN3sce3Xml14VarAllocBuffer9terminateEv); + //REG_FUNC(0x8045D9C2, _ZN3sce3Xml14VarAllocBufferC1EPKNS0_11InitializerE); + //REG_FUNC(0xEF4FA027, _ZN3sce3Xml14VarAllocBufferC2EPKNS0_11InitializerE); + //REG_FUNC(0xD61CAAFC, _ZN3sce3Xml14VarAllocBufferD0Ev); + //REG_FUNC(0xD9217FC8, _ZN3sce3Xml14VarAllocBufferD1Ev); + //REG_FUNC(0x8A4B9379, _ZN3sce3Xml14VarAllocBufferD2Ev); + //REG_FUNC(0xB7770E5E, _ZN3sce3Xml18SerializeParameterC1Ev); + //REG_FUNC(0xF65270FC, _ZN3sce3Xml18SerializeParameterC2Ev); + //REG_FUNC(0x2CB61A7C, _ZN3sce3Xml20bXResultToResultTypeEi); + //REG_FUNC(0x59C5E9B2, _ZN3sce3Xml23getMemManagerDebugLevelEv); + //REG_FUNC(0xBA8B7374, _ZN3sce3Xml23setMemManagerDebugLevelEi); + //REG_FUNC(0xBBACFE87, _ZN3sce3Xml3Dom15DocumentBuilder10initializeEPKNS0_11InitializerE); + //REG_FUNC(0x1A29526B, _ZN3sce3Xml3Dom15DocumentBuilder11getDocumentEv); + //REG_FUNC(0xA2431C2B, _ZN3sce3Xml3Dom15DocumentBuilder16setResolveEntityEb); + //REG_FUNC(0xB8C4D13C, _ZN3sce3Xml3Dom15DocumentBuilder20setSkipIgnorableTextEb); + //REG_FUNC(0xF351D753, _ZN3sce3Xml3Dom15DocumentBuilder26setSkipIgnorableWhiteSpaceEb); + //REG_FUNC(0x7744DD14, _ZN3sce3Xml3Dom15DocumentBuilder5parseEPKNS0_6StringEb); + //REG_FUNC(0x42D59053, _ZN3sce3Xml3Dom15DocumentBuilder9terminateEv); + //REG_FUNC(0x702492EA, _ZN3sce3Xml3Dom15DocumentBuilderC1Ev); + //REG_FUNC(0x36F6BDF2, _ZN3sce3Xml3Dom15DocumentBuilderC2Ev); + //REG_FUNC(0x79C9322E, _ZN3sce3Xml3Dom15DocumentBuilderD0Ev); + //REG_FUNC(0x19D0E024, _ZN3sce3Xml3Dom15DocumentBuilderD1Ev); + //REG_FUNC(0x99C58389, _ZN3sce3Xml3Dom15DocumentBuilderD2Ev); + //REG_FUNC(0x3CA958D3, _ZN3sce3Xml3Dom4Node11removeChildEy); + //REG_FUNC(0x1B98BDBE, _ZN3sce3Xml3Dom4Node12insertBeforeEyy); + //REG_FUNC(0x26BA1E6E, _ZNK3sce3Xml3Dom4Node13hasAttributesEv); + //REG_FUNC(0xC6F4F6A8, _ZN3sce3Xml3Dom4Node13hasChildNodesEv); + //REG_FUNC(0x088C100E, _ZN3sce3Xml3Dom4NodeC1Ey); + //REG_FUNC(0x44CAF9E1, _ZN3sce3Xml3Dom4NodeC2Ey); + //REG_FUNC(0x8F2EB967, _ZN3sce3Xml3Dom4NodeD1Ev); + //REG_FUNC(0x241EFC0E, _ZN3sce3Xml3Dom4NodeD2Ev); + //REG_FUNC(0x6A16C2FF, _ZN3sce3Xml3Dom8Document10importNodeEyyPKS2_y); + //REG_FUNC(0xB4A33B78, _ZN3sce3Xml3Dom8Document10initializeEPKNS0_11InitializerE); + //REG_FUNC(0x18686B94, _ZN3sce3Xml3Dom8Document10insertNodeEyyy); + //REG_FUNC(0x49263CE5, _ZN3sce3Xml3Dom8Document11removeChildEyy); + //REG_FUNC(0xD945184A, _ZN3sce3Xml3Dom8Document11resetStatusEv); + //REG_FUNC(0x7B0A8F6C, _ZN3sce3Xml3Dom8Document11setWritableEv); + //REG_FUNC(0x0CBC1C3F, _ZN3sce3Xml3Dom8Document12importParentEPKS2_y); + //REG_FUNC(0x016A9ADB, _ZN3sce3Xml3Dom8Document12setAttrValueEyPKNS0_6StringES5_); + //REG_FUNC(0xEA19C7CF, _ZN3sce3Xml3Dom8Document12setAttributeEyPKNS0_6StringES5_); + //REG_FUNC(0x35C50B8B, _ZN3sce3Xml3Dom8Document13createElementEPKNS0_6StringEPKNS0_13AttributeListES5_); + //REG_FUNC(0xBCA5E62A, _ZN3sce3Xml3Dom8Document13recurseDeleteEy); + //REG_FUNC(0x8D19723F, _ZN3sce3Xml3Dom8Document14createTextNodeEPKNS0_6StringE); + //REG_FUNC(0x6220E98B, _ZN3sce3Xml3Dom8Document15addElementChildEyPKNS0_6StringEPKNS0_13AttributeListES5_); + //REG_FUNC(0xF1DB18B1, _ZN3sce3Xml3Dom8Document15removeAttributeEyPKNS0_6StringE); + //REG_FUNC(0x779036AB, _ZN3sce3Xml3Dom8Document16removeAttributesEy); + //REG_FUNC(0x0667B08D, _ZN3sce3Xml3Dom8Document16setAttributeListEyPKNS0_13AttributeListE); + //REG_FUNC(0xD2BFBC47, _ZNK3sce3Xml3Dom8Document20getElementsByTagNameEyPKNS0_6StringEPNS1_8NodeListE); + //REG_FUNC(0xDEFEAFD2, _ZN3sce3Xml3Dom8Document7setTextEyPKNS0_6StringE); + //REG_FUNC(0x87F8B4DA, _ZN3sce3Xml3Dom8Document9serializeEPKNS0_18SerializeParameterEPNS0_6StringE); + //REG_FUNC(0x4B7321FB, _ZN3sce3Xml3Dom8Document9terminateEv); + //REG_FUNC(0x1DD41C7A, _ZN3sce3Xml3Dom8DocumentC1ERKS2_); + //REG_FUNC(0x7B7107AD, _ZN3sce3Xml3Dom8DocumentC1Ev); + //REG_FUNC(0xF399F763, _ZN3sce3Xml3Dom8DocumentC2ERKS2_); + //REG_FUNC(0xE6BA9C73, _ZN3sce3Xml3Dom8DocumentC2Ev); + //REG_FUNC(0xFB207925, _ZN3sce3Xml3Dom8DocumentD1Ev); + //REG_FUNC(0x11A5F0A3, _ZN3sce3Xml3Dom8DocumentD2Ev); + //REG_FUNC(0xD622A7FE, _ZN3sce3Xml3Dom8DocumentaSERKS2_); + //REG_FUNC(0x860CC706, _ZN3sce3Xml3Dom8NodeList10initializeEPKNS0_11InitializerE); + //REG_FUNC(0x7A889374, _ZN3sce3Xml3Dom8NodeList10insertLastEy); + //REG_FUNC(0xE9995F58, _ZN3sce3Xml3Dom8NodeList10removeItemEy); + //REG_FUNC(0xFA921C6E, _ZN3sce3Xml3Dom8NodeList11insertFirstEy); + //REG_FUNC(0xCDD1D418, _ZNK3sce3Xml3Dom8NodeList4itemEj); + //REG_FUNC(0x508E9150, _ZN3sce3Xml3Dom8NodeList5clearEv); + //REG_FUNC(0xA41ED241, _ZNK3sce3Xml3Dom8NodeList8findItemEPKNS0_6StringE); + //REG_FUNC(0xE1AB441D, _ZNK3sce3Xml3Dom8NodeList8findItemEy); + //REG_FUNC(0xFB9EDBF9, _ZNK3sce3Xml3Dom8NodeList9getLengthEv); + //REG_FUNC(0x32B396AD, _ZN3sce3Xml3Dom8NodeList9terminateEv); + //REG_FUNC(0xB1CA0E34, _ZN3sce3Xml3Dom8NodeListC1ERKS2_); + //REG_FUNC(0x0580C02E, _ZN3sce3Xml3Dom8NodeListC1Ev); + //REG_FUNC(0xB97BF737, _ZN3sce3Xml3Dom8NodeListC2ERKS2_); + //REG_FUNC(0x684E57B9, _ZN3sce3Xml3Dom8NodeListC2Ev); + //REG_FUNC(0x92EBC9F8, _ZN3sce3Xml3Dom8NodeListD1Ev); + //REG_FUNC(0x2DF80037, _ZN3sce3Xml3Dom8NodeListD2Ev); + //REG_FUNC(0xBAD4AAFA, _ZNK3sce3Xml3Dom8NodeListixEj); + //REG_FUNC(0x874C8331, _ZN3sce3Xml3Sax6Parser10initializeEPKNS0_11InitializerE); + //REG_FUNC(0x4DB998E6, _ZN3sce3Xml3Sax6Parser11setUserDataEPv); + //REG_FUNC(0xB77BF8A0, _ZN3sce3Xml3Sax6Parser16setResolveEntityEb); + //REG_FUNC(0x1B2442A0, _ZN3sce3Xml3Sax6Parser18setDocumentHandlerEPNS1_15DocumentHandlerE); + //REG_FUNC(0xCE1DAE23, _ZN3sce3Xml3Sax6Parser26setSkipIgnorableWhiteSpaceEb); + //REG_FUNC(0x70D9FC8E, _ZN3sce3Xml3Sax6Parser5parseEPKNS0_6StringEb); + //REG_FUNC(0xA2B40FA7, _ZN3sce3Xml3Sax6Parser5resetEv); + //REG_FUNC(0xF2C8950D, _ZN3sce3Xml3Sax6Parser9terminateEv); + //REG_FUNC(0x60BF9988, _ZN3sce3Xml3Sax6ParserC1Ev); + //REG_FUNC(0x56390CA0, _ZN3sce3Xml3Sax6ParserC2Ev); + //REG_FUNC(0xA11C2AED, _ZN3sce3Xml3Sax6ParserD1Ev); + //REG_FUNC(0x02E8F7FA, _ZN3sce3Xml3Sax6ParserD2Ev); + //REG_FUNC(0xE5314387, _ZN3sce3Xml4Attr10initializeEPKNS0_11InitializerE); + //REG_FUNC(0x66D1B605, _ZN3sce3Xml4Attr7setNameEPKNS0_6StringE); + //REG_FUNC(0x7DD3059D, _ZN3sce3Xml4Attr8setValueEPKNS0_6StringE); + //REG_FUNC(0x67E0DF2B, _ZN3sce3Xml4Attr9terminateEv); + //REG_FUNC(0xC09ABF87, _ZN3sce3Xml4AttrC1ERKS1_); + //REG_FUNC(0xD016F1BC, _ZN3sce3Xml4AttrC1Ev); + //REG_FUNC(0xB4851BEC, _ZN3sce3Xml4AttrC2ERKS1_); + //REG_FUNC(0x0B3AE81B, _ZN3sce3Xml4AttrC2Ev); + //REG_FUNC(0x58E349A5, _ZN3sce3Xml4AttrD1Ev); + //REG_FUNC(0xB9E6F81A, _ZN3sce3Xml4AttrD2Ev); + //REG_FUNC(0xA5B902D4, _ZN3sce3Xml4AttraSERKS1_); + //REG_FUNC(0xA7E983E2, _ZN3sce3Xml4Util9strResultEi); + //REG_FUNC(0x035F013B, _ZN3sce3Xml6StringC1EPKc); + //REG_FUNC(0x0B5461E0, _ZN3sce3Xml6StringC1EPKcj); + //REG_FUNC(0x67191CC6, _ZN3sce3Xml6StringC1ERKS1_); + //REG_FUNC(0xA17502C1, _ZN3sce3Xml6StringC1Ev); + //REG_FUNC(0xECC1F1A4, _ZN3sce3Xml6StringC2EPKc); + //REG_FUNC(0x457CCE55, _ZN3sce3Xml6StringC2EPKcj); + //REG_FUNC(0xD785BA85, _ZN3sce3Xml6StringC2ERKS1_); + //REG_FUNC(0x8816F7EF, _ZN3sce3Xml6StringC2Ev); + //REG_FUNC(0x18758863, _ZN3sce3Xml6StringaSERKS1_); + //REG_FUNC(0x4F30F0CC, _ZNK3sce3Xml13AttributeList12getAttributeEPKNS0_6StringE); + //REG_FUNC(0x5ED0B2F9, _ZNK3sce3Xml13AttributeList12getAttributeEj); + //REG_FUNC(0x38AEB52E, _ZNK3sce3Xml13AttributeList9getLengthEv); + //REG_FUNC(0xEC96BFC6, _ZNK3sce3Xml3Dom13DocumentDebug13getStructSizeEv); + //REG_FUNC(0xE1100FC0, _ZNK3sce3Xml3Dom13DocumentDebug16getAttrTableSizeEv); + //REG_FUNC(0x6E1F1FFB, _ZNK3sce3Xml3Dom13DocumentDebug16getCharTableSizeEv); + //REG_FUNC(0x8F9CEE10, _ZNK3sce3Xml3Dom13DocumentDebug19getElementTableSizeEv); + //REG_FUNC(0xE1269956, _ZNK3sce3Xml3Dom4Node11getNodeNameEv); + //REG_FUNC(0xCED5E0FF, _ZNK3sce3Xml3Dom4Node11getNodeTypeEv); + //REG_FUNC(0x4F2D5541, _ZNK3sce3Xml3Dom4Node12getNodeValueEv); + //REG_FUNC(0xB405A149, _ZNK3sce3Xml3Dom4Node13getAttributesEv); + //REG_FUNC(0x117BEA8A, _ZNK3sce3Xml3Dom4Node13getChildNodesEv); + //REG_FUNC(0x639D219C, _ZNK3sce3Xml3Dom4Node13getFirstChildEv); + //REG_FUNC(0x3FD63FB8, _ZNK3sce3Xml3Dom4Node12getLastChildEv); + //REG_FUNC(0x1A46C0E1, _ZNK3sce3Xml3Dom4Node14getNextSiblingEv); + //REG_FUNC(0xD9757BC8, _ZNK3sce3Xml3Dom4Node14getParenetNodeEv); + //REG_FUNC(0x3E8122AB, _ZNK3sce3Xml3Dom4Node16getOwnerDocumentEv); + //REG_FUNC(0x22DBB221, _ZNK3sce3Xml3Dom8Document10getDocRootEv); + //REG_FUNC(0xE3D0A78A, _ZNK3sce3Xml3Dom8Document10getSiblingEy); + //REG_FUNC(0x2D370226, _ZNK3sce3Xml3Dom8Document10getXmlMetaEv); + //REG_FUNC(0xA4D99D40, _ZNK3sce3Xml3Dom8Document10isReadOnlyEv); + //REG_FUNC(0xCD65B91F, _ZNK3sce3Xml3Dom8Document11getAttrNameEy); + //REG_FUNC(0x883E1BFC, _ZNK3sce3Xml3Dom8Document11getNextAttrEy); + //REG_FUNC(0x471A22E8, _ZNK3sce3Xml3Dom8Document11getNodeNameEy); + //REG_FUNC(0x62D3CB44, _ZNK3sce3Xml3Dom8Document11getNodeTypeEy); + //REG_FUNC(0x28FD79E3, _ZNK3sce3Xml3Dom8Document11isAvailableEv); + //REG_FUNC(0x7C6A03FD, _ZNK3sce3Xml3Dom8Document12getAttrValueEy); + //REG_FUNC(0x9531C3CD, _ZNK3sce3Xml3Dom8Document12getAttributeEyPKNS0_6StringE); + //REG_FUNC(0xEC856072, _ZNK3sce3Xml3Dom8Document12getFirstAttrEy); + //REG_FUNC(0xFBCF0D3E, _ZNK3sce3Xml3Dom8Document12getLastChildEy); + //REG_FUNC(0xCDEC3F43, _ZNK3sce3Xml3Dom8Document13getAttributesEyPNS1_8NodeListE); + //REG_FUNC(0xFC61FDF1, _ZNK3sce3Xml3Dom8Document13getChildNodesEyPNS1_8NodeListE); + //REG_FUNC(0xDAC75E49, _ZNK3sce3Xml3Dom8Document13getEntityTypeEy); + //REG_FUNC(0xEA805296, _ZNK3sce3Xml3Dom8Document13hasAttributesEy); + //REG_FUNC(0xC5E7431A, _ZNK3sce3Xml3Dom8Document13hasChildNodesEy); + //REG_FUNC(0x0C1DDEC5, _ZNK3sce3Xml3Dom8Document14getSkippedTextEy); + //REG_FUNC(0xB34D9672, _ZNK3sce3Xml3Dom8Document7getRootEv); + //REG_FUNC(0x36ACFF5E, _ZNK3sce3Xml3Dom8Document7getTextEy); + //REG_FUNC(0x3028E05D, _ZNK3sce3Xml3Dom8Document13getFirstChildEy); + //REG_FUNC(0x161BA85E, _ZNK3sce3Xml3Dom8Document9getEntityEy); + //REG_FUNC(0xA98B5758, _ZNK3sce3Xml3Dom8Document9getParentEy); + //REG_FUNC(0xD428753A, _ZNK3sce3Xml3Dom8Document9getStatusEv); + //REG_FUNC(0x10530611, _ZNK3sce3Xml3Dom8NodeList11isAvailableEv); + //REG_FUNC(0x35134B85, _ZNK3sce3Xml4Attr7getNameEv); + //REG_FUNC(0x7834A2F7, _ZNK3sce3Xml4Attr8getValueEv); + //REG_FUNC(0x0D119AB3, _ZNK3sce3Xml3Dom4Node11isAvailableEv); + //REG_FUNC(0x1633846D, _ZNK3sce3Xml4Attr11isAvailableEv); + //REG_FUNC(0x58854322, _ZNK3sce3Xml13AttributeList11isAvailableEv); +}); diff --git a/rpcs3/Emu/ARMv7/PSVFuncList.cpp b/rpcs3/Emu/ARMv7/PSVFuncList.cpp index 4ca94b42a6..29990a3208 100644 --- a/rpcs3/Emu/ARMv7/PSVFuncList.cpp +++ b/rpcs3/Emu/ARMv7/PSVFuncList.cpp @@ -44,32 +44,132 @@ void execute_psv_func_by_index(ARMv7Context& context, u32 index) context.thread.m_last_syscall = old_last_syscall; } +extern psv_log_base sceAppMgr; +extern psv_log_base sceAppUtil; +extern psv_log_base sceAudio; +extern psv_log_base sceAudiodec; +extern psv_log_base sceAudioenc; +extern psv_log_base sceAudioIn; +extern psv_log_base sceCamera; +extern psv_log_base sceCodecEngine; +extern psv_log_base sceCommonDialog; +extern psv_log_base sceCtrl; +extern psv_log_base sceDbg; +extern psv_log_base sceDeci4p; +extern psv_log_base sceDeflt; +extern psv_log_base sceDisplay; +extern psv_log_base sceFiber; +extern psv_log_base sceFios; +extern psv_log_base sceFpu; +extern psv_log_base sceGxm; +extern psv_log_base sceHttp; +extern psv_log_base sceIme; +extern psv_log_base sceJpeg; +extern psv_log_base sceJpegEnc; extern psv_log_base sceLibc; +extern psv_log_base sceLibKernel; extern psv_log_base sceLibm; extern psv_log_base sceLibstdcxx; -extern psv_log_base sceLibKernel; -extern psv_log_base sceSysmodule; +extern psv_log_base sceLiveArea; +extern psv_log_base sceLocation; +extern psv_log_base sceMd5; +extern psv_log_base sceMotion; +extern psv_log_base sceMt19937; +extern psv_log_base sceNet; +extern psv_log_base sceNetCtl; +extern psv_log_base sceNgs; +extern psv_log_base sceNpBasic; +extern psv_log_base sceNpCommon; +extern psv_log_base sceNpManager; +extern psv_log_base sceNpMatching; +extern psv_log_base sceNpScore; +extern psv_log_base sceNpUtility; extern psv_log_base scePerf; -extern psv_log_base sceCtrl; -extern psv_log_base sceDeci4p; -extern psv_log_base sceDisplay; -extern psv_log_base sceGxm; +extern psv_log_base scePgf; +extern psv_log_base scePhotoExport; +extern psv_log_base sceRazorCapture; +extern psv_log_base sceRtc; +extern psv_log_base sceSas; +extern psv_log_base sceScreenShot; +extern psv_log_base sceSfmt; +extern psv_log_base sceSha; +extern psv_log_base sceSqlite; +extern psv_log_base sceSsl; +extern psv_log_base sceSulpha; +extern psv_log_base sceSysmodule; +extern psv_log_base sceSystemGesture; +extern psv_log_base sceTouch; +extern psv_log_base sceUlt; +extern psv_log_base sceVideodec; +extern psv_log_base sceVoice; +extern psv_log_base sceVoiceQoS; +extern psv_log_base sceXml; void initialize_psv_modules() { assert(!g_psv_func_list.size() && !g_psv_modules.size()); // fill module list + g_psv_modules.push_back(&sceAppMgr); + g_psv_modules.push_back(&sceAppUtil); + g_psv_modules.push_back(&sceAudio); + g_psv_modules.push_back(&sceAudiodec); + g_psv_modules.push_back(&sceAudioenc); + g_psv_modules.push_back(&sceAudioIn); + g_psv_modules.push_back(&sceCamera); + g_psv_modules.push_back(&sceCodecEngine); + g_psv_modules.push_back(&sceCommonDialog); + g_psv_modules.push_back(&sceCtrl); + g_psv_modules.push_back(&sceDbg); + g_psv_modules.push_back(&sceDeci4p); + g_psv_modules.push_back(&sceDeflt); + g_psv_modules.push_back(&sceDisplay); + g_psv_modules.push_back(&sceFiber); + g_psv_modules.push_back(&sceFios); + g_psv_modules.push_back(&sceFpu); + g_psv_modules.push_back(&sceGxm); + g_psv_modules.push_back(&sceHttp); + g_psv_modules.push_back(&sceIme); + g_psv_modules.push_back(&sceJpeg); + g_psv_modules.push_back(&sceJpegEnc); g_psv_modules.push_back(&sceLibc); + g_psv_modules.push_back(&sceLibKernel); g_psv_modules.push_back(&sceLibm); g_psv_modules.push_back(&sceLibstdcxx); - g_psv_modules.push_back(&sceLibKernel); - g_psv_modules.push_back(&sceSysmodule); + g_psv_modules.push_back(&sceLiveArea); + g_psv_modules.push_back(&sceLocation); + g_psv_modules.push_back(&sceMd5); + g_psv_modules.push_back(&sceMotion); + g_psv_modules.push_back(&sceMt19937); + g_psv_modules.push_back(&sceNet); + g_psv_modules.push_back(&sceNetCtl); + g_psv_modules.push_back(&sceNgs); + g_psv_modules.push_back(&sceNpBasic); + g_psv_modules.push_back(&sceNpCommon); + g_psv_modules.push_back(&sceNpManager); + g_psv_modules.push_back(&sceNpMatching); + g_psv_modules.push_back(&sceNpScore); + g_psv_modules.push_back(&sceNpUtility); g_psv_modules.push_back(&scePerf); - g_psv_modules.push_back(&sceCtrl); - g_psv_modules.push_back(&sceDeci4p); - g_psv_modules.push_back(&sceDisplay); - g_psv_modules.push_back(&sceGxm); + g_psv_modules.push_back(&scePgf); + g_psv_modules.push_back(&scePhotoExport); + g_psv_modules.push_back(&sceRazorCapture); + g_psv_modules.push_back(&sceRtc); + g_psv_modules.push_back(&sceSas); + g_psv_modules.push_back(&sceScreenShot); + g_psv_modules.push_back(&sceSfmt); + g_psv_modules.push_back(&sceSha); + g_psv_modules.push_back(&sceSqlite); + g_psv_modules.push_back(&sceSsl); + g_psv_modules.push_back(&sceSulpha); + g_psv_modules.push_back(&sceSysmodule); + g_psv_modules.push_back(&sceSystemGesture); + g_psv_modules.push_back(&sceTouch); + g_psv_modules.push_back(&sceUlt); + g_psv_modules.push_back(&sceVideodec); + g_psv_modules.push_back(&sceVoice); + g_psv_modules.push_back(&sceVoiceQoS); + g_psv_modules.push_back(&sceXml); // setup special functions (without NIDs) psv_func unimplemented; diff --git a/rpcs3/Emu/FS/vfsDirBase.h b/rpcs3/Emu/FS/vfsDirBase.h index c4d515899c..654cc72d01 100644 --- a/rpcs3/Emu/FS/vfsDirBase.h +++ b/rpcs3/Emu/FS/vfsDirBase.h @@ -67,8 +67,9 @@ public: { } - iterator(const DirEntryInfo* data) - : data(data) + iterator(vfsDirBase* parent, const DirEntryInfo* data) + : parent(parent) + , data(data) { } @@ -82,7 +83,7 @@ public: { const DirEntryInfo* olddata = data; data = parent->Read(); - return iterator(olddata); + return iterator(parent, olddata); } const DirEntryInfo* operator *() @@ -90,7 +91,7 @@ public: return data; } - bool operator!=(iterator other) const + bool operator !=(iterator other) const { return data != other.data; } @@ -103,6 +104,6 @@ public: iterator end() { - return iterator((const DirEntryInfo*)nullptr); + return iterator(this, nullptr); } }; diff --git a/rpcs3/Emu/Memory/Memory.cpp b/rpcs3/Emu/Memory/Memory.cpp index 6c5d405eab..84f75c6fff 100644 --- a/rpcs3/Emu/Memory/Memory.cpp +++ b/rpcs3/Emu/Memory/Memory.cpp @@ -17,11 +17,6 @@ MemoryBase Memory; -void MemoryBase::InvalidAddress(const char* func, const u64 addr) -{ - LOG_ERROR(MEMORY, "%s(): invalid address (0x%llx)", func, addr); -} - void MemoryBase::RegisterPages(u64 addr, u32 size) { LV2_LOCK(0); @@ -31,7 +26,7 @@ void MemoryBase::RegisterPages(u64 addr, u32 size) { if (i >= sizeof(m_pages) / sizeof(m_pages[0])) { - InvalidAddress(__FUNCTION__, i * 4096); + LOG_ERROR(MEMORY, "%s(): invalid address 0x%llx", __FUNCTION__, i * 4096); break; } if (m_pages[i]) @@ -52,7 +47,7 @@ void MemoryBase::UnregisterPages(u64 addr, u32 size) { if (i >= sizeof(m_pages) / sizeof(m_pages[0])) { - InvalidAddress(__FUNCTION__, i * 4096); + LOG_ERROR(MEMORY, "%s(): invalid address 0x%llx", __FUNCTION__, i * 4096); break; } if (!m_pages[i]) diff --git a/rpcs3/Emu/Memory/Memory.h b/rpcs3/Emu/Memory/Memory.h index 5ba0e1dd7b..3f9a981041 100644 --- a/rpcs3/Emu/Memory/Memory.h +++ b/rpcs3/Emu/Memory/Memory.h @@ -77,8 +77,6 @@ public: return vm::g_base_addr; } - __noinline void InvalidAddress(const char* func, const u64 addr); - void RegisterPages(u64 addr, u32 size); void UnregisterPages(u64 addr, u32 size); diff --git a/rpcs3/Emu/Memory/vm.cpp b/rpcs3/Emu/Memory/vm.cpp index 25a4d8c0e7..2c23ecdb66 100644 --- a/rpcs3/Emu/Memory/vm.cpp +++ b/rpcs3/Emu/Memory/vm.cpp @@ -66,6 +66,11 @@ namespace vm return 0; } + void error(const u64 addr, const char* func) + { + throw fmt::format("%s(): invalid address 0x%llx", func, addr); + } + namespace ps3 { u32 main_alloc(u32 size) diff --git a/rpcs3/Emu/Memory/vm.h b/rpcs3/Emu/Memory/vm.h index 38735da8ba..7cc958c3ba 100644 --- a/rpcs3/Emu/Memory/vm.h +++ b/rpcs3/Emu/Memory/vm.h @@ -42,6 +42,8 @@ namespace vm u32 get_addr(const void* real_pointer); + __noinline void error(const u64 addr, const char* func); + template struct cast_ptr { @@ -70,7 +72,7 @@ namespace vm const u32 res = static_cast(addr); if (res != addr) { - throw fmt::format("%s(): invalid address 0x%llx", func, addr); + vm::error(addr, func); } return res; diff --git a/rpcs3/Emu/SysCalls/Modules/cellSysutil.h b/rpcs3/Emu/SysCalls/Modules/cellSysutil.h index 7554b95bf1..1e919b12f9 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSysutil.h +++ b/rpcs3/Emu/SysCalls/Modules/cellSysutil.h @@ -251,8 +251,8 @@ typedef void(CellWebBrowserUsrdata)(vm::ptr usrdata); struct CellWebBrowserMimeSet { - vm::bptr const type; - vm::bptr const directory; + const vm::bptr type; + const vm::bptr directory; }; struct CellWebBrowserPos diff --git a/rpcs3/Loader/ELF32.cpp b/rpcs3/Loader/ELF32.cpp index 80cac220ad..6a4884798b 100644 --- a/rpcs3/Loader/ELF32.cpp +++ b/rpcs3/Loader/ELF32.cpp @@ -1,4 +1,5 @@ #include "stdafx.h" +#include "Ini.h" #include "Utilities/Log.h" #include "Utilities/rFile.h" #include "Emu/FS/vfsStream.h" @@ -102,6 +103,9 @@ namespace loader u32 code_start = 0; u32 code_end = 0; + u32 vnid_addr = 0; + std::unordered_map vnid_list; + for (auto& shdr : m_shdrs) { // get secton name @@ -165,15 +169,19 @@ namespace loader for (u32 j = 0; j < shdr.data_le.sh_size / 4; j++) { - u32 nid = fnid[j]; - u32 addr = fstub[j]; + const u32 nid = fnid[j]; + const u32 addr = fstub[j]; if (auto func = get_psv_func_by_nid(nid)) { if (func->module) + { func->module->Notice("Imported function %s (nid=0x%08x, addr=0x%x)", func->name, nid, addr); + } else + { LOG_NOTICE(LOADER, "Imported function %s (nid=0x%08x, addr=0x%x)", func->name, nid, addr); + } // writing Thumb code (temporarily, because it should be ARM) vm::psv::write16(addr + 0, 0xf870); // HACK instruction (Thumb) @@ -183,7 +191,7 @@ namespace loader } else { - LOG_ERROR(LOADER, "Unimplemented function 0x%08x (addr=0x%x)", nid, addr); + LOG_ERROR(LOADER, "Unknown function 0x%08x (addr=0x%x)", nid, addr); vm::psv::write16(addr + 0, 0xf870); // HACK instruction (Thumb) vm::psv::write16(addr + 2, 0); // index 0 (unimplemented stub) @@ -193,6 +201,44 @@ namespace loader code_end = std::min(addr, code_end); } } + else if (!strcmp(name.c_str(), ".sceVNID.rodata")) + { + LOG_NOTICE(LOADER, ".sceVNID.rodata analysis..."); + + vnid_addr = shdr.data_le.sh_addr; + } + else if (!strcmp(name.c_str(), ".sceVStub.rodata")) + { + LOG_NOTICE(LOADER, ".sceVStub.rodata analysis..."); + + if (!vnid_addr) + { + if (shdr.data_le.sh_size) + { + LOG_ERROR(LOADER, ".sceVNID.rodata address not found, unable to process imports"); + } + continue; + } + + auto vnid = vm::psv::ptr::make(vnid_addr); + auto vstub = vm::psv::ptr::make(shdr.data_le.sh_addr); + + for (u32 j = 0; j < shdr.data_le.sh_size / 4; j++) + { + const u32 nid = vnid[j]; + const u32 addr = vstub[j]; + + LOG_ERROR(LOADER, "Unknown object 0x%08x (ref_addr=0x%x)", nid, addr); + + // TODO: find imported object (vtable, typeinfo or something), assign it to vnid_list[addr] + } + } + else if (!strcmp(name.c_str(), ".tbss")) + { + LOG_NOTICE(LOADER, ".tbss analysis"); + + LOG_ERROR(LOADER, "TLS: size=0x%08x", shdr.data_le.sh_size); + } else if (!strcmp(name.c_str(), ".sceRefs.rodata")) { LOG_NOTICE(LOADER, ".sceRefs.rodata analysis..."); @@ -203,39 +249,71 @@ namespace loader { switch (*code) { - case 0x000000ff: + case 0x000000ff: // save address for future use { - // save address for future use data = *++code; break; } - case 0x0000002f: + case 0x0000002f: // movw r*,# instruction is replaced { - // movw r12,# instruction will be replaced const u32 addr = *++code; - vm::psv::write16(addr + 0, 0xf240 | (data & 0x800) >> 1 | (data & 0xf000) >> 12); // MOVW - vm::psv::write16(addr + 2, 0x0c00 | (data & 0x700) << 4 | (data & 0xff)); - //LOG_NOTICE(LOADER, "sceRefs: movw written at 0x%x (data=0x%x)", addr, data); + + if (!data) + { + auto found = vnid_list.find(code.addr()); + if (found != vnid_list.end()) + { + data = found->second; + } + } + + if (!data) + { + LOG_ERROR(LOADER, ".sceRefs: movw writing failed (code=0x%x, addr=0x%x)", code, addr); + break; + } + + vm::psv::write16(addr + 0, vm::psv::read16(addr + 0) | (data & 0x800) >> 1 | (data & 0xf000) >> 12); + vm::psv::write16(addr + 2, vm::psv::read16(addr + 2) | (data & 0x700) << 4 | (data & 0xff)); + + //if (Ini.HLELogging.GetValue()) + { + LOG_NOTICE(LOADER, ".sceRefs: movw written at 0x%x (data=0x%x)", addr, data); + } break; } - case 0x00000030: + case 0x00000030: // movt r*,# instruction is replaced { - // movt r12,# instruction will be replaced const u32 addr = *++code; - vm::psv::write16(addr + 0, 0xf2c0 | (data & 0x8000000) >> 17 | (data & 0xf0000000) >> 28); // MOVT - vm::psv::write16(addr + 2, 0x0c00 | (data & 0x7000000) >> 12 | (data & 0xff0000) >> 16); - //LOG_NOTICE(LOADER, "sceRefs: movt written at 0x%x (data=0x%x)", addr, data); + + if (!data) + { + LOG_ERROR(LOADER, ".sceRefs: movt writing failed (code=0x%x, addr=0x%x)", code, addr); + break; + } + + vm::psv::write16(addr + 0, vm::psv::read16(addr + 0) | (data & 0x8000000) >> 17 | (data & 0xf0000000) >> 28); + vm::psv::write16(addr + 2, vm::psv::read16(addr + 2) | (data & 0x7000000) >> 12 | (data & 0xff0000) >> 16); + + //if (Ini.HLELogging.GetValue()) + { + LOG_NOTICE(LOADER, ".sceRefs: movt written at 0x%x (data=0x%x)", addr, data); + } break; } case 0x00000000: { - // probably, no operation - //LOG_NOTICE(LOADER, "sceRefs: zero code"); + data = 0; + + if (Ini.HLELogging.GetValue()) + { + LOG_NOTICE(LOADER, ".sceRefs: zero code found"); + } break; } default: { - LOG_ERROR(LOADER, "sceRefs: unknown code found (0x%08x)", *code); + LOG_ERROR(LOADER, "Unknown code in .sceRefs section (0x%08x)", *code); } } } diff --git a/rpcs3/Loader/ELF64.cpp b/rpcs3/Loader/ELF64.cpp index b5d9850335..c71e8cb5f7 100644 --- a/rpcs3/Loader/ELF64.cpp +++ b/rpcs3/Loader/ELF64.cpp @@ -423,6 +423,7 @@ namespace loader case 0x00000007: //TLS Emu.SetTLSData(phdr.p_vaddr.addr(), phdr.p_filesz.value(), phdr.p_memsz.value()); + LOG_ERROR(LOADER, "TLS: addr=0x%x, filesz=0x%x, memsz=0x%x", Emu.GetTLSAddr(), Emu.GetTLSFilesz(), Emu.GetTLSMemsz()); break; case 0x60000001: //LOOS+1 diff --git a/rpcs3/emucore.vcxproj b/rpcs3/emucore.vcxproj index 9b3c761dde..ca94bcbcc5 100644 --- a/rpcs3/emucore.vcxproj +++ b/rpcs3/emucore.vcxproj @@ -58,16 +58,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/rpcs3/emucore.vcxproj.filters b/rpcs3/emucore.vcxproj.filters index 9b46ecec23..ba692d9a05 100644 --- a/rpcs3/emucore.vcxproj.filters +++ b/rpcs3/emucore.vcxproj.filters @@ -695,6 +695,156 @@ Emu\CPU\ARMv7\Modules + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules + + + Emu\CPU\ARMv7\Modules +