What's new

Tools [NET Release] PhantomRTM 1.8.1 - Fastest Xbox 360 Memory Editing Library

  • Thread starter XeClutch
  • Start date
  • Views 4,607
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
PhantomRTM NET Release
I built PhantomRTM because my computer (for whatever reason) decided to no longer allow the Xbox 360 SDK to be on my computer so I could no longer use XDevkit (XRPC and JRPC run off of XDevkit (for the most part)).

Why should I start using PhantomRTM?
If you are not going to be performing calls then this is the best you got right now. This is the fastest memory editing lib for Xbox 360 around right now.

How would I implement this into my RTE?
Simple, I will show you.
C#:
// After downloading the .dll and adding it as a reference then add this to the top of your code...
using XeClutch;

// Add this to wherever you are storing you variables...
PhantomRTM Jtag = new PhantomRTM();

// Establishing a connection to the console...
Jtag.Connect(textBox1.Text); // Replace "textBox1.Text" with the IP Address of the console you are connecting to

// Establishing a connection to the console and checking if the connection was a success...
MessageBox.Show((Jtag.Connect(textBox1.Text) ? "Successfully connected to: " : "Unable to connect to: ") + textBox1.Text); // Replace "textBox1.Text" with the IP Address of the console you are connecting to

Is this open source?
Yep. If you want to contribute anything then just post your code below :tongue:

Download: [Click here to view this link]
Virus Scan: https://www.virustotal.com/en/file/...341cc5b47c0462cfefdea9b4/analysis/1454698140/

Official Changelog:
Code:
Release Build February 5, 2016
- Redid Read_Byte (+1 overload)
- Redid StringToByteArray

Release Build February 4, 2016
- Added Search_Bool
- Added Search_Byte (+1 overload)
- Added Search_Char
- Added Search_Double
- Added Search_Float
- Added Search_Int16
- Added Search_Int32
- Added Search_Int64
- Added Search_String
- Added Search_SByte
- Added Search_UInt16
- Added Search_UInt32
- Added Search_UInt64
- Added Search_Vector2
- Added Search_Vector3

Release Build March 4, 2015
- Added Command_Reboot
- Fixed Connected
- Redid Command_Shutdown
- Redid Connect
- Redid Disconnect

Release Build March 4, 2015
- Added Connected
- Added Disconnect
- Added File_Delete
- Added Get_DebugName
- Added Get_ExecutionState
- Added Get_HardwareInfo
- Added Get_TitleAddress
- Added Set_ConsoleColor
- Added Set_DebugName
- Redid Connect
- Redid Get_ProcessID
- Redid Read_Byte (+1 overload)
- Redid Write_Byte (+1 overload)
- Renamed Command_Launch to File_Launch
- Renamed Command_Hook to Write_Hook
- Renamed Command_OpenDVDDrive to Command_Eject
- Renamed File_DumpMemory to Read_File
- Renamed File_SaveMemory to Write_File
- The handler now leaves the connection open so that you don't need to reconnect everytime you want to send a command, remember to disconnect at some point.

Release Build December 16, 2014
- Added Read_Char
- Added Read_Double
- Added Read_Vector2
- Added Write_Char
- Added Write_Double
- Added Write_Vector2
- Fixed Command_Launch

Release Build December 4, 2014
- Added Command_Hook

Release Build October 29, 2014
- Added Command_Launch
- Added File_SaveMemory
- Added Read_Vector3
- Added Write_Vector3
- Optimized tons of code

Release Build June 3, 2014
- Added Command_OpenDVDDrive
- Added Command_SendText
- Added Command_Shutdown
- Added Debug_Freeze
- Added Debug_UnFreeze
- Added File_DumpMemory
- Added Get_ConsoleID
- Added Get_CPUKey
- Added Get_ProcessID
- Fixed all bugs

Beta Build #3 April 6, 2014
- Added Read_Bool
- Added Read_Byte (+1 overload)
- Added Read_Float
- Added Read_Int16
- Added Read_Int32
- Added Read_Int64
- Added Read_SByte
- Added Read_String
- Added Read_UInt16
- Added Read_UInt32
- Added Read_UInt64
- Added Write_Bool
- Added Write_Float
- Added Write_Int16
- Added Write_Int32
- Added Write_Int64
- Added Write_SByte
- Added Write_UInt16
- Added Write_UInt32
- Added Write_UInt64
- Optimized Code
- Redid Write_Byte (+1 overload)
- Redid Write_NOP
- Redid Write_String

Beta Build #2 April 4, 2014
- Added Write_Byte (+1 overload)
- Added Write_NOP
- Changed name to PhantomRTM
- Fixed Write_String

Beta Build #1 April 3, 2014
- Initial Beta Release

Credits & Shoutouts:
X XeClutch - PhantomRTM
Xx jAmes t xX - Helping out (JRPC)
S S7 Pro - Helping out (XRPC)
nateleroux - XBDM for Retail (without XBDM, this wouldn't be possible)
 
Last edited:
S

S7 Pro

Seasoned Member
Messages
2,511
Reaction score
1,604
The XBDM released for JTAGs was written by nateleroux, and he did not implement a method to perform RPC calls. You will never get this working unfortunately.
 
I

IdZ

Enthusiast
Messages
66
Reaction score
26
So what is this currently supporting? You didnt really list anything about it except small tutorial for using it.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
The XBDM released for JTAGs was written by nateleroux, and he did not implement a method to perform RPC calls. You will never get this working unfortunately.
So I have been told xD
So what is this currently supporting? You didnt really list anything about it except small tutorial for using it.
At the moment all you can do is write strings.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
beta should atleast have setting normal memory and getting memory lolz
Like I said, there are still things that need to be done and I am in the process of testing Write_Bytes. If that works then I can get everything else I need to work aswell.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
Updated to Beta Build #2
 
H

Hacksorce

Enthusiast
Messages
585
Reaction score
401
Pretty sure this does the same thing as xdevkit is doing.
2f966c3ba4da2e47acdd9650652ed047.png
 
S

S7 Pro

Seasoned Member
Messages
2,511
Reaction score
1,604
One thing I'd like to note is you shouldn't continually establish a new connection with each function. It's unnecessary and slows down it quite a bit. Have a global TCPClient variable, as well as a downstream/upstream variables and you can wade through those to do what you need to do.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
One thing I'd like to note is you shouldn't continually establish a new connection with each function. It's unnecessary and slows down it quite a bit. Have a global TCPClient variable, as well as a downstream/upstream variables and you can wade through those to do what you need to do.
Thanks for the feedback but tt won't slow anything down because at the end of each method the connection is closed. I get what your saying and I will probably fix it but for now I am too lazy as it is somewhat unnecessary.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
PhantomRTM is no longer in Beta :smile:
Just updated the thread with new information!
 
C

coder

dat crazy duck
Messages
2,894
Reaction score
2,077
Has lots of useful options :smile: good job
 
T

The Sheeni Nazi

Enthusiast
Messages
47
Reaction score
22
Just so you know, magic boot will not work properly if the path contains a space. Enclose the directory & title portions with quotations to fix that. Example: "MagicBoot Title=\"Hdd:\\default.xex\" Directory=\"Hdd:\\\"";
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
I updated PhantomRTM to version 1.3 while I was banned. I have added Command_Hook in so now you can hook one point of memory to another.
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
Updated to 1.4, check changelog in the OP.

Hanukkah Sameach everyone!
 
X

XeClutch

Contingency Dev
Messages
3,687
Reaction score
2,452
Updated to 1.5, check changelog in the OP (massive changes).
 
Top Bottom