diff --git a/.gitmodules b/.gitmodules
index e9dae76..9ebc035 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -12,3 +12,6 @@
[submodule "External/LibSQLite-ps4"]
path = External/LibSQLite-ps4
url = https://github.com/bucanero/libSQLite-ps4
+[submodule "External/HexView"]
+ path = External/HexView
+ url = https://github.com/OSM-Made/HexView.Wpf
diff --git a/External/HexView b/External/HexView
new file mode 160000
index 0000000..e7a373f
--- /dev/null
+++ b/External/HexView
@@ -0,0 +1 @@
+Subproject commit e7a373f06cf61548bf843bcbd20fa27b9a97b2d9
diff --git a/Orbis Suite 3.0.sln b/Orbis Suite 3.0.sln
index 8ee958c..95811b2 100644
--- a/Orbis Suite 3.0.sln
+++ b/Orbis Suite 3.0.sln
@@ -47,7 +47,9 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OrbisLibAPI", "Playstation\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OrbisLibGeneralHelper", "Playstation\OrbisLibGeneralHelper\OrbisLibGeneralHelper.vcxproj", "{F0E3446E-D9D7-4F44-AC98-797C5124BE91}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OrbisLib2", "Windows\Libraries\OrbisLib2\OrbisLib2.csproj", "{75BA171D-708A-40AA-A27D-57150E5DFB7B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "OrbisLib2", "Windows\Libraries\OrbisLib2\OrbisLib2.csproj", "{75BA171D-708A-40AA-A27D-57150E5DFB7B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OrbisPeeknPoke", "Windows\OrbisPeeknPoke\OrbisPeeknPoke.csproj", "{90180080-9585-499C-99A8-6F4D1725CAF4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -237,6 +239,22 @@ Global
{75BA171D-708A-40AA-A27D-57150E5DFB7B}.Release|x64.Build.0 = Release|Any CPU
{75BA171D-708A-40AA-A27D-57150E5DFB7B}.Release|x86.ActiveCfg = Release|Any CPU
{75BA171D-708A-40AA-A27D-57150E5DFB7B}.Release|x86.Build.0 = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|Win32.ActiveCfg = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|Win32.Build.0 = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|x64.Build.0 = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Debug|x86.Build.0 = Debug|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|Win32.ActiveCfg = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|Win32.Build.0 = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|x64.ActiveCfg = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|x64.Build.0 = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|x86.ActiveCfg = Release|Any CPU
+ {90180080-9585-499C-99A8-6F4D1725CAF4}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -255,6 +273,7 @@ Global
{22E600CA-B7A4-4FA1-A1DB-6BA4736E6121} = {8E8E4C8D-E3E1-4CB9-BD78-7ADAB2F2CF45}
{F0E3446E-D9D7-4F44-AC98-797C5124BE91} = {8E8E4C8D-E3E1-4CB9-BD78-7ADAB2F2CF45}
{75BA171D-708A-40AA-A27D-57150E5DFB7B} = {72E29C1E-8723-4885-A5ED-BD3A929D81B6}
+ {90180080-9585-499C-99A8-6F4D1725CAF4} = {8F0E1457-FB1E-47A4-9DA8-74A6B757CAA4}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4B6EE1D0-5ADF-44A2-B6EE-E5C8E110EE47}
diff --git a/Playstation/OrbisLibAPI/GeneralIPC.cpp b/Playstation/OrbisLibAPI/GeneralIPC.cpp
index 881113f..de96d66 100644
--- a/Playstation/OrbisLibAPI/GeneralIPC.cpp
+++ b/Playstation/OrbisLibAPI/GeneralIPC.cpp
@@ -166,9 +166,15 @@ bool GeneralIPC::LoadLibrary(int pid, const char* Path, int* HandleOut)
// Restore the jail.
Jail(pid);
+ // Cleanup
+ free(Packet);
+
return false;
}
+ // Cleanup
+ free(Packet);
+
// Recieve the result.
if (!Sockets::RecvInt(sock, HandleOut))
{
@@ -226,6 +232,27 @@ bool GeneralIPC::UnLoadLibrary(int pid, int Handle)
return false;
}
+ // Create next packet.
+ auto Packet = (LibPacket*)malloc(sizeof(LibPacket));
+ Packet->Handle = Handle;
+
+ // Send the packet.
+ if (sceNetSend(sock, Packet, sizeof(LibPacket), 0) < 0)
+ {
+ // Close the socket.
+ sceNetSocketClose(sock);
+
+ // Cleanup
+ free(Packet);
+
+ klog("[GeneralIPC] Failed to send LibPacket.\n");
+
+ return false;
+ }
+
+ // Cleanup
+ free(Packet);
+
// Recieve the result.
int result = 0;
if (!Sockets::RecvInt(sock, &result))
diff --git a/Playstation/OrbisLibAPI/Version.h b/Playstation/OrbisLibAPI/Version.h
index 302f62f..dbbfea1 100644
--- a/Playstation/OrbisLibAPI/Version.h
+++ b/Playstation/OrbisLibAPI/Version.h
@@ -1,11 +1,11 @@
-#pragma once
-#define ORBISLIB_MAJOR 3
-#define ORBISLIB_MINOR 0
-#define ORBISLIB_BUILDVERSION 984
-#define stringify(a) stringify_(a)
-#define stringify_(a) #a
-#if defined(_DEBUG)
-#define ORBISLIB_BUILDSTRING ("[OrbisLib Daemon " stringify(ORBISLIB_MAJOR) "." stringify(ORBISLIB_MINOR) "] Dev Build " stringify(ORBISLIB_BUILDVERSION) " " __DATE__ " " __TIME__)
-#else
-#define ORBISLIB_BUILDSTRING ("[OrbisLib Daemon " stringify(ORBISLIB_MAJOR) "." stringify(ORBISLIB_MINOR) "] Build " stringify(ORBISLIB_BUILDVERSION) " " __DATE__ " " __TIME__)
-#endif
+#pragma once
+#define ORBISLIB_MAJOR 3
+#define ORBISLIB_MINOR 0
+#define ORBISLIB_BUILDVERSION 995
+#define stringify(a) stringify_(a)
+#define stringify_(a) #a
+#if defined(_DEBUG)
+#define ORBISLIB_BUILDSTRING ("[OrbisLib Daemon " stringify(ORBISLIB_MAJOR) "." stringify(ORBISLIB_MINOR) "] Dev Build " stringify(ORBISLIB_BUILDVERSION) " " __DATE__ " " __TIME__)
+#else
+#define ORBISLIB_BUILDSTRING ("[OrbisLib Daemon " stringify(ORBISLIB_MAJOR) "." stringify(ORBISLIB_MINOR) "] Build " stringify(ORBISLIB_BUILDVERSION) " " __DATE__ " " __TIME__)
+#endif
diff --git a/Playstation/OrbisLibAPI/main.cpp b/Playstation/OrbisLibAPI/main.cpp
index a053fe5..7c3341b 100644
--- a/Playstation/OrbisLibAPI/main.cpp
+++ b/Playstation/OrbisLibAPI/main.cpp
@@ -82,7 +82,7 @@ int main()
}
#endif
-// #define KILLSHELLUI
+ //#define KILLSHELLUI
#ifdef KILLSHELLUI
sceSystemServiceKillApp(sceLncUtilGetAppId("NPXS20001"), -1, 0, 0);
#endif
diff --git a/Windows/Installer/BootstrapperSetup/Version.wxi b/Windows/Installer/BootstrapperSetup/Version.wxi
index ef60836..af84147 100644
--- a/Windows/Installer/BootstrapperSetup/Version.wxi
+++ b/Windows/Installer/BootstrapperSetup/Version.wxi
@@ -2,5 +2,5 @@
-
+
diff --git a/Windows/Installer/DummyInstaller/Generated/OrbisNeighborhood.wxs b/Windows/Installer/DummyInstaller/Generated/OrbisNeighborhood.wxs
index e2849a9..19e3338 100644
--- a/Windows/Installer/DummyInstaller/Generated/OrbisNeighborhood.wxs
+++ b/Windows/Installer/DummyInstaller/Generated/OrbisNeighborhood.wxs
@@ -7,175 +7,175 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -202,169 +202,169 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -519,136 +519,136 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -1739,1412 +1739,1421 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+