Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/xboxdev/nxdk-rdt

Remote Dev Tool is a tool to remote control an Xbox using memory access and RPC
https://github.com/xboxdev/nxdk-rdt

debugger hook inject interface memory remote rpc tcp xbox

Last synced: 3 months ago
JSON representation

Remote Dev Tool is a tool to remote control an Xbox using memory access and RPC

Awesome Lists containing this project

README

        

Xbox Remote Dev Tool
====================

This tool will allow you remote control of an Xbox from your development system
over the network. This tool is very early in development and will likely be
improved over the future.

Supported commands:
* `SYSINFO` - Get some system info
* `REBOOT` - Reboot the machine
* `MALLOC` - Allocate some memory
* `FREE` - Free allocated memory
* `MEM_READ` - Read memory
* `MEM_WRITE` - Write memory
* `DEBUG_PRINT` - Print a debug string to the screen
* `SHOW_DEBUG_SCREEN` - Show the debug screen
* `SHOW_FRONT_SCREEN` - Switch back to the front screen
* `CALL` - Call address with given state

To-do list:
* Code execution
* Code debugging
* Screenshots/Video
* Push Buffer
* File IO
* HAL access to SMBus, etc.
* MSR/IO Port

Check out dbg.py for the Python interface (to be run on your dev system). Check
out dbgd.c for the Xbox side of things.

Protocol
--------
Communication takes place using [protocol
buffers](https://developers.google.com/protocol-buffers/docs/overview) over a
TCP socket. The protocol is defined in **dbg.proto**.

You will need [protobuf-c](https://github.com/protobuf-c/protobuf-c) to rebuild
the protocol interface C file and regular protoc to build the Python interface.
Both are available via apt-get.

Test With XQEMU
---------------
Run with

```
-net nic,model=nvnet -nic user,hostfwd=tcp::9269-:9269
```

Then connect to 127.0.0.1:9269. The dbg.py script can do this using `./dbg.py 127.0.0.1` (port is implied for this tool).

Run on a real Xbox
------------------
Build, then copy the XBE over to your xbox.