PS3Sharp 1.1.2
dotnet add package PS3Sharp --version 1.1.2
NuGet\Install-Package PS3Sharp -Version 1.1.2
<PackageReference Include="PS3Sharp" Version="1.1.2" />
<PackageVersion Include="PS3Sharp" Version="1.1.2" />
<PackageReference Include="PS3Sharp" />
paket add PS3Sharp --version 1.1.2
#r "nuget: PS3Sharp, 1.1.2"
#:package PS3Sharp@1.1.2
#addin nuget:?package=PS3Sharp&version=1.1.2
#tool nuget:?package=PS3Sharp&version=1.1.2
PS3Sharp
PS3Sharp is a .NET library for reading and writing memory directly from PlayStation 3 (PS3) consoles and the RPCS3 emulator. It provides easy-to-use backends to interact with PS3 memory, making it ideal for tooling, debugging, or modding projects targeting PS3 and RPCS3.
The PS3 backend is built on top of PS3Lib, a popular library for PS3 communication.
Features
- Direct memory access for PS3 and RPCS3 processes
- Support for reading and writing multiple data types (ints, floats, bytes, etc.)
- Switchable backend between PS3 console (using PS3Lib) and RPCS3 emulator
- Simple API designed with extensibility in mind
- Unit tested for reliability
Installation
Currently, PS3Sharp is not published as a NuGet package. To use it, clone the repository and include the project in your solution.
Usage
RPCS3
using PS3Sharp;
var rpcs3 = new PS3Client("rpcs3"); // optional: pass custom window title
// connect to the backend
if (rpcs3.Connect())
{
Console.WriteLine($"Connected to: {rpcs3.ActiveBackendType}");
// read an integer from memory
uint address = 0xC0000000;
int value = rpcs3.ReadInt32(address);
Console.WriteLine($"Value at {address:X}: {value}");
// write an integer to memory
rpcs3.WriteInt32(address, 12345);
rpcs3.Disconnect();
}
else
Console.WriteLine("Failed to connect.");
PS3 (TMAPI / CCAPI)
using PS3Sharp;
using PS3Sharp.Types;
var ps3 = new PS3Client(PS3Type.TMAPI); // or PS3Type.CCAPI
// connect to the backend
if (ps3.Connect())
{
Console.WriteLine($"Connected to: {ps3.ActiveBackendType}");
// read an integer from memory
uint address = 0xC0000000;
int value = ps3.ReadInt32(address);
Console.WriteLine($"Value at {address:X}: {value}");
// write an integer to memory
ps3.WriteInt32(address, 12345);
ps3.Disconnect();
}
else
Console.WriteLine("Failed to connect.");
Backends
- PS3Backend - Connects to a physical PS3 console using PS3Lib.
- RPCS3Backend - Connects to the RPCS3 emulator process.
Testing
Unit tests are included for both backends to verify read/write functionality and connection management.
Contributing
Contributions are welcome!
License
Contact
Created and maintained by Mack Core.
Feel free to reach out via GitHub or open an issue.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.