| Crates.io | pine-ipc |
| lib.rs | pine-ipc |
| version | 1.0.2 |
| created_at | 2025-05-21 23:39:56.030034+00 |
| updated_at | 2025-05-22 00:09:19.796795+00 |
| description | A PINE client implementation |
| homepage | https://github.com/entriphy/pine-ipc-rs |
| repository | https://github.com/entriphy/pine-ipc-rs |
| max_upload_size | |
| id | 1684552 |
| size | 18,062 |
Rust implementation of the PINE IPC protocol.
use pine_ipc::{PINEBatch, PINECommand, PINE};
fn main() {
// Connect to PINE using the default slot for PCSX2 (28011)
let mut pine = PINE::connect("pcsx2", 28011, true).expect("Failed to connect to PCSX2");
// Create batch command
let mut batch = PINEBatch::new();
batch.add(PINECommand::MsgTitle);
batch.add(PINECommand::MsgGameVersion);
batch.add(PINECommand::MsgRead32 { mem: 0x003667DC });
// Send batch
let res = pine.send(&mut batch).expect("Failed to send PINE batch");
println!("{res:?}");
// Example response:
// [
// ResTitle { title: "Klonoa 2 - Lunatea's Veil" },
// ResGameVersion { version: "1.00" },
// ResRead32 { val: 3566512 }
// ]
}