MCPcopy Create free account
hub / github.com/clienthax/Ps3GhidraScripts / Ps3DataStructureTypes

Class Ps3DataStructureTypes

ghidra_scripts/Ps3DataStructureTypes.java:3–175  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1import ghidra.program.model.data.*;
2
3class Ps3DataStructureTypes {
4
5 public static void createStructureTypes() {
6 //Module info
7 createSceModuleInfoCommonDataStruc();
8 createSceModuleInfoPpu32Struc();
9 createSceModuleInfoPpu64Struc();
10
11 //Imports
12 createSceLibStubCommonStruc();
13 createSceLibStubPpu32Struc();
14 createSceLibStubPpu64Struc();
15
16 //Exports
17 createSceLibEntCommonStruc();
18 createSceLibEntPpu32Struc();
19 createSceLibEntPpu64Struc();
20
21 //Process param
22 createSysProcessParamTDataStruc();
23
24 //Process Prx
25 createSysProcessPrxInfoTDataStruc();
26
27 }
28
29 /* Process PRX */
30
31 static StructureDataType sysProcessPrxInfoTDataType;
32 private static void createSysProcessPrxInfoTDataStruc() {
33 sysProcessPrxInfoTDataType = new StructureDataType(new CategoryPath("/PS3"), "sys_process_prx_info_t", 0);
34 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "size", "");
35 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "magic", "");
36 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "version", "");
37 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "sdk_version", "");
38 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "libent_start", "");
39 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "libent_end", "");
40 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "libstub_start", "");
41 sysProcessPrxInfoTDataType.add(UnsignedIntegerDataType.dataType, "libstub_end", "");
42 sysProcessPrxInfoTDataType.add(UnsignedCharDataType.dataType, "major_version", "");
43 sysProcessPrxInfoTDataType.add(UnsignedCharDataType.dataType, "minor_version", "");
44 sysProcessPrxInfoTDataType.add(new ArrayDataType(UnsignedCharDataType.dataType, 6, 1), "reserved", "");
45 }
46
47 /* Process Param */
48
49 static StructureDataType sysProcessParamTDataType;
50 private static void createSysProcessParamTDataStruc() {
51 sysProcessParamTDataType = new StructureDataType(new CategoryPath("/PS3"), "sys_process_param_t", 0);
52 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "size", "");
53 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "magic", "");
54 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "version", "");
55 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "sdk_version", "");
56 sysProcessParamTDataType.add(IntegerDataType.dataType, "primary_prio", "");
57 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "primary_stacksize", "");
58 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "malloc_pagesize", "");
59 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "ppc_seg", "");
60 sysProcessParamTDataType.add(UnsignedIntegerDataType.dataType, "crash_dump_param_addr", "");//TODO hmmmm

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected