XRPC Coding!!!
XRPC Stands for Xbox Remote Procedure Call.
You can do RTE or Real Time Editing with it and XBDM
You will need xbdm.xex, xrpc.xex, xrpc.dll!
You can get all three here Download
Now You will need to have xbdm.xex and xrpc.xex on your jtag root set as a dashlaunch plugin!!
In Visual Studios make a new C# Application and add xrpc.dll as a reference!!!
Then You can import XDevkit and XRPCLib
Here are the imports you should have if you are following this tutorial
How to make/setup a XRPC
XRPC Golden = new XRPC();
That will make a new XRPC to call on called Golden
You can name it what ever you want though
How to connect Computer to Jtag using XRPC
Golden.Connect();
Usually you would have a button for this but im just showing how to do it
Check if Jtag is Connected or Vice Versa
if(Golden.activeConnection)
{
//Do Your Code here
}
Or if you want to check if its not connected
if(!Golden.activeConnection)
{
//Do Code Here
}
How to Set Memory and Call on Offsets
Golden.SetMemory(offset, parameters);
Golden.Call(offset, parameters);
XNotify in XRPC
Golden.Notify(XRPC.XNotiyLogo.FLASHING_XBOX_CONSOLE, TEXT FOR NOTIFY THINGY);
//XRPC.XNotiyLogo.FLASHING_XBOX_CONSOLE is just the logo example you can use others found in the xrpc dll
Debugging and normal XBDM Stuff
Golden.xbCon.//Stuff for normal devkit functions
How to handle exceptions or error messages
try
{
//Code like Jtag.Connect() or other things
Golden.Connect();
}
catch(Exception exception)
{
//Do something with the Exception string or gulp the exception
}
How to make new threads to handle things like hud elements that take longer time to spawn and freeze the main ui or main thread
//This is an example from my app
private void enableNews_Click(object sender, EventArgs e)
{
Thread newsBarThread = new Thread(newsBar);
//Funciton or method here to use in thread
newsBarThread.IsBackground = true;
//Sets thread so it plays in background to main thread
newsBarThread.Start();
//Starts thread for newsBar
//You can also add THREADNAME.Abort(); but thats choppy
}
Hope this was Helpful here is a example of putting some of it together
I know this isn't proper SYNTAX but deal with it 😉
XRPC Jtag = new XRPC();
Jtag.Connect();
Jtag.SetMemory(laseroffsets, new byte[] { 01 });
Jtag.Call(mw2sv, "c "***** it WORKS"");
if(Jtag.activeConnection)
{
while(true)
{
Jtag.Notify(XRPC.XNotiyLogo.FLASHING_XBOX_CONSOLE, "xDopeMods <3");
}
}
Hope you guys enjoyed this tutorial! 🙂
NOTE: My homie created this tut, He allowed me to post it.