C# Class YeloDebug.Xbox

Xbox debug connection.
Inheritance: IDisposable
显示文件 Open project: troymac1ure/Entity Class Usage Examples

Public Methods

Method Description
AllocateDebugMemory ( uint size ) : uint

Allocates debug memory on the xbox. Address space of 0xB0000000 to 0xC0000000.

AllocateMemory ( AllocationType type, uint size ) : uint

Allocates memory of specified type on the xbox.

AllocateMemory ( uint size ) : uint

Allocates memory on the xbox.

AllocatePhysicalMemory ( uint size ) : uint

Allocates physical memory on the xbox. Address space of 0x80000000 to 0x84000000. Extends to 0x88000000 on a developer kit.

AllocatePhysicalMemoryEx ( uint size, AddressRange range ) : uint

Allocates physical memory on the xbox. Input range of 0x0 - 0x4000000. Xbox address space of 0x80000000 to 0x84000000. Extends to 0x88000000 on a developer kit.

AllocateSystemMemory ( uint size ) : uint

Allocates system memory on the xbox. Address space of 0xD0000000 to 0xFFFFFFFC.

AllocateVirtualMemory ( uint size ) : uint

Allocates virtual memory on the xbox. Address space of 0x00000000 to 0x80000000.

AllocateVirtualMemoryEx ( uint size, uint address ) : uint

Allocates virtual memory on the xbox. Address space of 0x00000000 to 0x80000000.

CallAddress ( uint address, bool returnValue ) : uint

Simple function call with optional return value. Average execution time of 1.3 ms without return or 1.75ms with return.

0x10000 is reserved for function use.

CallAddressEx ( uint address, CPUContext context, bool returnValue ) : uint

Extended function call with optional context, arguments, and return value. Average execution time of 1.3ms without return or 1.75ms with return.

ChangeScriptBufferSize ( uint size ) : void

Changes the script buffer size.

ClearAllBreakpoints ( ) : void

Removes all breakpoints in an xbox title.

Connect ( ) : void

Connects to an xbox on the network. If multiple consoles are detected this method will attempt to connect to the last connection used. If that connection or information is unavailable this method will fail.

Connect ( string xbox ) : void

Connects to a specified xbox using the box name.

ConnectToIP ( string ip ) : void

Connects to an xbox using the IP address

ConnectionCheck ( ) : void

Checks the connection status between xbox and pc. This function only checks what YeloDebug believes to be the current connection status. For a true status check you will need to ping the xbox regularly.

Continue ( ) : void

Resumes all xbox title threads.

ContinueAllThreads ( ) : void

Resumes the execution of all xbox threads that have been stopped.

ContinueThread ( uint thread ) : void

Resumes the execution of an xbox thread that has been stopped.

CreateDirectory ( string name ) : void

Creates a directory on the xbox.

CreateFile ( string fileName, FileMode createDisposition ) : void

Creates a file on the xbox.

CyclePower ( ) : void

Shuts down the xbox console and then turns it on again.

DeleteDirectory ( string name ) : void

Deletes a directory on the xbox.

DeleteFile ( string fileName ) : void

Deletes a file on the xbox.

DisableDVDEjectReset ( ) : void

Disables reset on DVD tray eject.

Disconnect ( ) : void

Disconnects from the xbox.

DumpMemory ( ) : byte[]

A complete dump of xbox memory.

EjectTray ( ) : void

Ejects xbox tray.

EnableDVDEjectReset ( ) : void

Enables reset on DVD tray eject.

FileExists ( string fileName ) : bool

Determines if the given file exists.

FlushSocketBuffer ( ) : void

Clear everything from the receive buffer. Call this before you send anything to the xbox to help keep the channel in sync.

FlushSocketBuffer ( int size ) : void

Clear a specified amount from the receive buffer. If amount in buffer is less than requested size, everything will be cleared.

FreeAllMemory ( ) : uint

Frees all memory associated with the current allocation table.

FreeDebugMemory ( uint address ) : uint

Frees debug memory on the xbox.

FreeMemory ( uint address ) : uint

Frees xbox memory.

FreePhysicalMemory ( uint address ) : uint

Frees physical memory on the xbox.

FreeSystemMemory ( uint address ) : uint

Frees system memory on the xbox.

FreeVirtualMemory ( uint address ) : uint

Frees virtual memory on the xbox.

GetASCIIString ( uint address ) : string

Retrieves a null-terminated ascii string from xbox memory. Maximum length of 512 characters.

GetByte ( uint address ) : byte

Retrieves byte from xbox memory.

GetDirectoryList ( string name ) : List

Retrieves files that belong to a given directory.

GetDouble ( uint address ) : Double

Retrieves Double from xbox memory.

GetDriveFreeSpace ( Drive drive ) : ulong

Retrieves xbox drive freespace.

GetDriveSize ( Drive drive ) : ulong

Retrieves xbox drive size.

GetFileAccessCount ( ) : int

Gets the current file access count.

GetFileAttributes ( string fileName ) : FileAttributes

Retrieves file attributes.

GetFileCacheSize ( ) : uint

Retrieves the file cache size associated with the current title.

GetFileInformation ( string fileName ) : FileInformation

Retrieves file information.

GetFileSize ( string fileName ) : uint

Retrieves file size.

GetInt16 ( uint address ) : Int16

Retrieves Int16 from xbox memory.

GetInt32 ( uint address ) : Int32

Retrieves Int32 from xbox memory.

GetInt64 ( uint address ) : System.Int64

Retrieves Int64 from xbox memory.

GetMemory ( uint address, uint length ) : byte[]

Retrieves data from xbox memory.

GetMemory ( uint address, TypeCode dataType ) : object

Retrieves an object from xbox memory.

GetMemoryChecksum ( int address, int length ) : uint

Calculates the checksum of a block of memory on the xbox.

GetPartitions ( ) : List

Gets a list of partitions on the xbox hard drive.

GetSingle ( uint address ) : System.Single

Retrieves Single from xbox memory.

GetString ( uint address ) : string

Retrieves a string from xbox memory. Will automatically detect ascii or unicode strings of size greater than 1 char and retrieve as ascii. Maximum string size of 512 characters.

GetString ( uint address, uint length ) : string

Retrieves a string of specified length from xbox memory.

GetThreadStopInfo ( uint thread ) : string

If the specified thread is stopped this will return information about the circumstances that forced the thread to stop.

GetTrayState ( ) : TrayState
GetUInt16 ( uint address ) : UInt16

Retrieves UInt16 from xbox memory.

GetUInt32 ( uint address ) : UInt32

Retrieves UInt32 from xbox memory.

GetUInt64 ( uint address ) : System.UInt64

Retrieves UInt64 from xbox memory.

GetUnicodeString ( uint address ) : string

Retrieves a null-terminated unicode string from xbox memory. Maximum length of 512 characters.

GetVideoFlags ( ) : VideoFlags

Gets the xbox video flags.

GetVideoStandard ( ) : VideoStandard

Gets the xbox video standard.

HaltThread ( uint thread ) : void

Sends a request to the xbox that the specified thread break as soon as possible.

InitializeControllerHook ( ) : void

Hooks into the XInputGetState procedure on your xbox, and hijacks controller input.

IsGamepadHooked ( ) : bool

Detects whether or not we have already hooked into XInputGetState().

IsThreadStopped ( uint thread ) : bool

Determines whether the specified thread is stopped.

IsValidAddress ( uint address ) : bool

Determines whether or not the specified address exists in xbox memory.

IsValidAddressRange ( uint address, int size ) : bool

Checks for a valid address range.

LaunchTitle ( string path ) : void

Launches the specified xbox title and attempts to establish a new connection with that title.

LoadTray ( ) : void

Loads xbox tray.

ManuallyInitializeControllerHook ( uint xinputAddress ) : void

This is to be used if YeloDebug cannot automatically detect the XInputGetState function address. Then you will need to specify your own if you wish to hook into the controllers. This function has not been tested since I have not found a game which doesn't use the standard XInputGetState function.

MountDevice ( Device device, Drive drive ) : void

Mounts the specified device to the specified drive letter.

OverrideControllers ( bool enabled ) : void

Specifies if the xbox should override controller input and start listening for pc input.

Pause ( ) : void

Suspends all xbox title threads.

Ping ( ) : bool

Retrieves xbox connection status. Average execution time of 2200 executions per second, or one every half millisecond.

Ping ( int waitTime ) : bool

Retrieves xbox connection status. Average execution time of 2200 executions per second, or one every half millisecond.

QueryXboxConnections ( ) : List

Returns a list containing all consoles detected on the network.

RawFramebufferDump ( int width, int height, int pixelSizeInBytes ) : byte[]

Use this if the Screenshot function doesnt dump properly and you wish to add a new format. Framebuffer will be in a swizzled format.

ReadEEPROM ( ) : byte[]

Reads the xbox EEPROM.

Reboot ( ) : void

Performs a warm reboot on the xbox.

Reboot ( BootFlag flag ) : void

Reboots the xbox with the specified BootFlag.

ReceiveBinaryData ( ) : byte[]

Receives all available binary data sent from the xbox.

ReceiveBinaryData ( int size ) : byte[]

Receives binary data of specified size sent from the xbox.

ReceiveBinaryData ( byte &data ) : void

Receives binary data of specified size sent from the xbox.

ReceiveFile ( string localName, string remoteName ) : void

Receives a file from the xbox.

ReceiveMultilineResponse ( ) : string

Receives multiple lines of text from the xbox.

ReceiveNotification ( ) : bool

Receives a notification if one is present.

ReceiveNotifications ( ) : void

Receives any notifications that may be present.

ReceiveSocketLine ( ) : string

Receives a line of text from the xbox.

ReceiveStatusResponse ( ) : StatusResponse

Waits for a status response to be received from the xbox.

Reconnect ( ) : void

Re-establishes a connection with the currently selected xbox console.

Reconnect ( int timeout ) : void

Attempts to re-establish a connection with the currently selected xbox console.

RegisterNotificationSession ( int port ) : void

Registers a notification session on the specified port.

RemoveBreakPoint ( uint address ) : void

Removes a breakpoint in an xbox title.

RenameFile ( string oldFileName, string newFileName ) : void

Renames or moves a file on the xbox.

Reset ( ) : void

Resets the xbox console.

RestoreDefaultLEDState ( ) : void

Restores the xbox LED to its default state.

ResumeThread ( uint thread ) : void

Resumes a given xbox thread.

Screenshot ( ) : System.Image

Takes a screenshot of the xbox display.

SendBinaryData ( byte data ) : void

Sends binary data to the xbox.

SendBinaryData ( byte data, int length ) : void

Sends binary data of specified length to the xbox.

SendCommand ( string command ) : StatusResponse

Sends a command to the xbox.

SendFile ( string localName, string remoteName ) : void

Sends a file to the xbox.

SetBreakPoint ( uint address ) : void

Sets a breakpoint in an xbox title.

SetBreakPoint ( uint address, uint size, BreakpointType type ) : void

Sets a hardware breakpoint that suspends title execution when a particular section of memory is referenced.

SetFileAttributes ( string fileName, FileAttributes attributes ) : void

Sets file attributes.

SetFileCacheSize ( uint size ) : bool

Allows us to borrow extra memory from the file cache :)

SetFileInformation ( string fileName, FileInformation info ) : void

Modifies file creation information. If you wish to specify a new file size, use SetFileSize instead.

SetFileSize ( string fileName, int size ) : void

Sets the size of a specified file on the xbox. This method will not zero out any extra bytes that may have been created.

SetGamepadState ( uint port, InputState input ) : void

Sends gamepad input to a specified controller port. A controller must be plugged into the port for this to work. You are also responsible for the polling frequency.

SetLEDState ( LEDState state1, LEDState state2, LEDState state3, LEDState state4 ) : void

Sets the xbox LED state.

SetMemory ( uint address ) : void

Writes object(s) to a specified xbox memory location.

Shutdown ( ) : void

Shuts down the xbox console.

StopOn ( StopOnFlags flags ) : void

Some debugging events require title execution to be suspended. But there are some debugging events where thread suspension is an option. For these events, you can elect to have the debugging subsystem suspend title execution by calling this function.

StreamTest ( ) : string

Benchmark utility function best when ran with xdk dash. Lower memory situations will yeild lower speeds.

SuspendThread ( uint thread ) : void

Suspends a given xbox thread.

SynchronizeTime ( ) : void

Synchronizes the xbox system time with the computer's current time.

UnMountDevice ( Drive drive ) : void

Unmounts the specified drive.

Wait ( WaitType type ) : void

Waits for data to be received. During execution this method will enter a spin-wait loop and appear to use 100% cpu when in fact it is just a suspended thread. This is much more efficient than waiting a millisecond since most commands take fractions of a millisecond. It will either resume after the condition is met or throw a timeout exception.

Wait ( int targetLength ) : void

Waits for a specified amount of data to be received. Use with file IO.

Xbox ( ) : System

Xbox connection.

getTitleInformation ( ) : void

Private Methods

Method Description
AlignmentCheck ( uint size ) : uint

Makes sure size is aligned to specs. Unaligned sizes will be rounded up to the next 4kb page boundary.

AllocateHistoryPages ( uint size ) : uint

Use in beginning when setting up our history page, since calladdressex will depend on that memory

AssertAllocationExists ( uint address ) : int

Makes sure the given allocation exists.

AssertAllocationNonexistant ( uint address ) : void

Makes sure the given allocation does not exist.

Deswizzle ( Byte swizzled ) : Byte[]
GetAllocationType ( uint address ) : AllocationType

Determines a given allocations type.

GetDriveInformation ( Drive drive, ulong &freeBytes, ulong &driveSize, ulong &totalFreeBytes ) : void

Dont use this, higher-level methods are available. Use GetDriveFreeSpace or GetDriveSize instead.

GetXboxInformation ( ) : void

Reads all static xbox information that will remain constant throughout a session.

Getmem ( uint address, int length, byte &buffer, int offset, int &read ) : void

Dont use this, higher-level methods are available. Use MemoryReader instead.

InitializeHistory ( ) : void

Initializes the history page.

IsEnoughMemory ( uint requestedSize ) : bool

Determines if the requested size of memory can be allocated. This function will also borrow from the file cache to meet the requested size if needed.

IsHistoryPresent ( ) : bool
LoadAllocationTable ( ) : List

Reads the allocation table from the xbox.

QueryVirtualMemory ( uint ptr ) : MEMORY_BASIC_INFORMATION
RawToBMP ( Byte raw ) : MemoryStream
ReadFilePartial ( string name, int offset, byte &buffer, int length, int &read ) : void

Dont use this, higher-level methods are available. Use FileStream instead.

RemoveAllocationEntry ( uint address ) : uint

Removes an entry from the allocation table.

SendATACommand ( ) : void
Setmem ( int address, int length, byte &buffer, int offset ) : void

Dont use this, higher-level methods are available. Use MemoryWriter instead. Writes to xbox memory. Performance of ~10MB/s due to a simple xbdm.dll modification.

StateChanged ( InputState oldState, InputState newState ) : bool

Compares the differences between two states and determines if they have changed.

SyncAllocationTable ( ) : void

Syncs the allocation table with the xbox.

VirtualProtect ( uint address, uint size, uint newProtect, uint &oldProtect ) : void
WriteFilePartial ( string name, int offset, byte &buffer, int length ) : void

Dont use this, higher-level methods are available. Use FileStream instead.

XInputGetStateAddress ( ) : uint

Searches xbox memory for XInputGetState(). Average execution time of 15ms.

_connect ( ) : void

Shared connection function

Method Details

AllocateDebugMemory() public method

Allocates debug memory on the xbox. Address space of 0xB0000000 to 0xC0000000.
public AllocateDebugMemory ( uint size ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
return uint

AllocateMemory() public method

Allocates memory of specified type on the xbox.
public AllocateMemory ( AllocationType type, uint size ) : uint
type AllocationType
size uint
return uint

AllocateMemory() public method

Allocates memory on the xbox.
public AllocateMemory ( uint size ) : uint
size uint
return uint

AllocatePhysicalMemory() public method

Allocates physical memory on the xbox. Address space of 0x80000000 to 0x84000000. Extends to 0x88000000 on a developer kit.
public AllocatePhysicalMemory ( uint size ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
return uint

AllocatePhysicalMemoryEx() public method

Allocates physical memory on the xbox. Input range of 0x0 - 0x4000000. Xbox address space of 0x80000000 to 0x84000000. Extends to 0x88000000 on a developer kit.
public AllocatePhysicalMemoryEx ( uint size, AddressRange range ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
range AddressRange Range of memory to place allocation.
return uint

AllocateSystemMemory() public method

Allocates system memory on the xbox. Address space of 0xD0000000 to 0xFFFFFFFC.
public AllocateSystemMemory ( uint size ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
return uint

AllocateVirtualMemory() public method

Allocates virtual memory on the xbox. Address space of 0x00000000 to 0x80000000.
public AllocateVirtualMemory ( uint size ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
return uint

AllocateVirtualMemoryEx() public method

Allocates virtual memory on the xbox. Address space of 0x00000000 to 0x80000000.
public AllocateVirtualMemoryEx ( uint size, uint address ) : uint
size uint Size of memory to be allocated. Note that an unaligned size will be rounded up to the next 4kb page boundary.
address uint Preferred address.
return uint

CallAddress() public method

Simple function call with optional return value. Average execution time of 1.3 ms without return or 1.75ms with return.
0x10000 is reserved for function use.
public CallAddress ( uint address, bool returnValue ) : uint
address uint Xbox procedure address.
returnValue bool
return uint

CallAddressEx() public method

Extended function call with optional context, arguments, and return value. Average execution time of 1.3ms without return or 1.75ms with return.
public CallAddressEx ( uint address, CPUContext context, bool returnValue ) : uint
address uint Xbox procedure address.
context CPUContext Cpu context. This parameter may be null.
returnValue bool
return uint

ChangeScriptBufferSize() public method

Changes the script buffer size.
public ChangeScriptBufferSize ( uint size ) : void
size uint
return void

ClearAllBreakpoints() public method

Removes all breakpoints in an xbox title.
public ClearAllBreakpoints ( ) : void
return void

Connect() public method

Connects to an xbox on the network. If multiple consoles are detected this method will attempt to connect to the last connection used. If that connection or information is unavailable this method will fail.
public Connect ( ) : void
return void

Connect() public method

Connects to a specified xbox using the box name.
public Connect ( string xbox ) : void
xbox string
return void

ConnectToIP() public method

Connects to an xbox using the IP address
public ConnectToIP ( string ip ) : void
ip string
return void

ConnectionCheck() public method

Checks the connection status between xbox and pc. This function only checks what YeloDebug believes to be the current connection status. For a true status check you will need to ping the xbox regularly.
public ConnectionCheck ( ) : void
return void

Continue() public method

Resumes all xbox title threads.
public Continue ( ) : void
return void

ContinueAllThreads() public method

Resumes the execution of all xbox threads that have been stopped.
public ContinueAllThreads ( ) : void
return void

ContinueThread() public method

Resumes the execution of an xbox thread that has been stopped.
public ContinueThread ( uint thread ) : void
thread uint Thread ID.
return void

CreateDirectory() public method

Creates a directory on the xbox.
public CreateDirectory ( string name ) : void
name string Directory name.
return void

CreateFile() public method

Creates a file on the xbox.
public CreateFile ( string fileName, FileMode createDisposition ) : void
fileName string File to create.
createDisposition FileMode Creation options.
return void

CyclePower() public method

Shuts down the xbox console and then turns it on again.
public CyclePower ( ) : void
return void

DeleteDirectory() public method

Deletes a directory on the xbox.
public DeleteDirectory ( string name ) : void
name string Directory name.
return void

DeleteFile() public method

Deletes a file on the xbox.
public DeleteFile ( string fileName ) : void
fileName string File to delete.
return void

DisableDVDEjectReset() public method

Disables reset on DVD tray eject.
public DisableDVDEjectReset ( ) : void
return void

Disconnect() public method

Disconnects from the xbox.
public Disconnect ( ) : void
return void

DumpMemory() public method

A complete dump of xbox memory.
public DumpMemory ( ) : byte[]
return byte[]

EjectTray() public method

Ejects xbox tray.
public EjectTray ( ) : void
return void

EnableDVDEjectReset() public method

Enables reset on DVD tray eject.
public EnableDVDEjectReset ( ) : void
return void

FileExists() public method

Determines if the given file exists.
public FileExists ( string fileName ) : bool
fileName string
return bool

FlushSocketBuffer() public method

Clear everything from the receive buffer. Call this before you send anything to the xbox to help keep the channel in sync.
public FlushSocketBuffer ( ) : void
return void

FlushSocketBuffer() public method

Clear a specified amount from the receive buffer. If amount in buffer is less than requested size, everything will be cleared.
public FlushSocketBuffer ( int size ) : void
size int Size to flush
return void

FreeAllMemory() public method

Frees all memory associated with the current allocation table.
public FreeAllMemory ( ) : uint
return uint

FreeDebugMemory() public method

Frees debug memory on the xbox.
public FreeDebugMemory ( uint address ) : uint
address uint Memory address.
return uint

FreeMemory() public method

Frees xbox memory.
public FreeMemory ( uint address ) : uint
address uint
return uint

FreePhysicalMemory() public method

Frees physical memory on the xbox.
public FreePhysicalMemory ( uint address ) : uint
address uint Memory address.
return uint

FreeSystemMemory() public method

Frees system memory on the xbox.
public FreeSystemMemory ( uint address ) : uint
address uint Memory address.
return uint

FreeVirtualMemory() public method

Frees virtual memory on the xbox.
public FreeVirtualMemory ( uint address ) : uint
address uint Memory address.
return uint

GetASCIIString() public method

Retrieves a null-terminated ascii string from xbox memory. Maximum length of 512 characters.
public GetASCIIString ( uint address ) : string
address uint Memory location.
return string

GetByte() public method

Retrieves byte from xbox memory.
public GetByte ( uint address ) : byte
address uint Memory location.
return byte

GetDirectoryList() public method

Retrieves files that belong to a given directory.
public GetDirectoryList ( string name ) : List
name string Directory name.
return List

GetDouble() public method

Retrieves Double from xbox memory.
public GetDouble ( uint address ) : Double
address uint Memory location.
return Double

GetDriveFreeSpace() public method

Retrieves xbox drive freespace.
public GetDriveFreeSpace ( Drive drive ) : ulong
drive Drive Drive name.
return ulong

GetDriveSize() public method

Retrieves xbox drive size.
public GetDriveSize ( Drive drive ) : ulong
drive Drive Drive name.
return ulong

GetFileAccessCount() public method

Gets the current file access count.
public GetFileAccessCount ( ) : int
return int

GetFileAttributes() public method

Retrieves file attributes.
public GetFileAttributes ( string fileName ) : FileAttributes
fileName string File name.
return FileAttributes

GetFileCacheSize() public method

Retrieves the file cache size associated with the current title.
public GetFileCacheSize ( ) : uint
return uint

GetFileInformation() public method

Retrieves file information.
public GetFileInformation ( string fileName ) : FileInformation
fileName string File name.
return FileInformation

GetFileSize() public method

Retrieves file size.
public GetFileSize ( string fileName ) : uint
fileName string File name.
return uint

GetInt16() public method

Retrieves Int16 from xbox memory.
public GetInt16 ( uint address ) : Int16
address uint Memory location.
return System.Int16

GetInt32() public method

Retrieves Int32 from xbox memory.
public GetInt32 ( uint address ) : Int32
address uint Memory location.
return System.Int32

GetInt64() public method

Retrieves Int64 from xbox memory.
public GetInt64 ( uint address ) : System.Int64
address uint Memory location.
return System.Int64

GetMemory() public method

Retrieves data from xbox memory.
public GetMemory ( uint address, uint length ) : byte[]
address uint Memory location.
length uint Length of data to receive.
return byte[]

GetMemory() public method

Retrieves an object from xbox memory.
public GetMemory ( uint address, TypeCode dataType ) : object
address uint Memory location.
dataType TypeCode Object type.
return object

GetMemoryChecksum() public method

Calculates the checksum of a block of memory on the xbox.
public GetMemoryChecksum ( int address, int length ) : uint
address int Memory address on the Xbox console of the first byte of memory in the block. This address must be aligned on an 8-byte boundary, and it cannot point to code.
length int Number of bytes on which to perform the checksum. This value must be a multiple of 8.
return uint

GetPartitions() public method

Gets a list of partitions on the xbox hard drive.
public GetPartitions ( ) : List
return List

GetSingle() public method

Retrieves Single from xbox memory.
public GetSingle ( uint address ) : System.Single
address uint Memory location.
return System.Single

GetString() public method

Retrieves a string from xbox memory. Will automatically detect ascii or unicode strings of size greater than 1 char and retrieve as ascii. Maximum string size of 512 characters.
public GetString ( uint address ) : string
address uint
return string

GetString() public method

Retrieves a string of specified length from xbox memory.
public GetString ( uint address, uint length ) : string
address uint
length uint
return string

GetThreadStopInfo() public method

If the specified thread is stopped this will return information about the circumstances that forced the thread to stop.
public GetThreadStopInfo ( uint thread ) : string
thread uint
return string

GetTrayState() public method

public GetTrayState ( ) : TrayState
return TrayState

GetUInt16() public method

Retrieves UInt16 from xbox memory.
public GetUInt16 ( uint address ) : UInt16
address uint Memory location.
return System.UInt16

GetUInt32() public method

Retrieves UInt32 from xbox memory.
public GetUInt32 ( uint address ) : UInt32
address uint Memory location.
return System.UInt32

GetUInt64() public method

Retrieves UInt64 from xbox memory.
public GetUInt64 ( uint address ) : System.UInt64
address uint Memory location.
return System.UInt64

GetUnicodeString() public method

Retrieves a null-terminated unicode string from xbox memory. Maximum length of 512 characters.
public GetUnicodeString ( uint address ) : string
address uint Memory location.
return string

GetVideoFlags() public method

Gets the xbox video flags.
public GetVideoFlags ( ) : VideoFlags
return VideoFlags

GetVideoStandard() public method

Gets the xbox video standard.
public GetVideoStandard ( ) : VideoStandard
return VideoStandard

HaltThread() public method

Sends a request to the xbox that the specified thread break as soon as possible.
public HaltThread ( uint thread ) : void
thread uint ID of the thread to be halted. Send 0 as the thread ID to have the debugging subsystem select a thread to break into.
return void

InitializeControllerHook() public method

Hooks into the XInputGetState procedure on your xbox, and hijacks controller input.
public InitializeControllerHook ( ) : void
return void

IsGamepadHooked() public method

Detects whether or not we have already hooked into XInputGetState().
public IsGamepadHooked ( ) : bool
return bool

IsThreadStopped() public method

Determines whether the specified thread is stopped.
public IsThreadStopped ( uint thread ) : bool
thread uint
return bool

IsValidAddress() public method

Determines whether or not the specified address exists in xbox memory.
public IsValidAddress ( uint address ) : bool
address uint
return bool

IsValidAddressRange() public method

Checks for a valid address range.
public IsValidAddressRange ( uint address, int size ) : bool
address uint
size int
return bool

LaunchTitle() public method

Launches the specified xbox title and attempts to establish a new connection with that title.
public LaunchTitle ( string path ) : void
path string
return void

LoadTray() public method

Loads xbox tray.
public LoadTray ( ) : void
return void

ManuallyInitializeControllerHook() public method

This is to be used if YeloDebug cannot automatically detect the XInputGetState function address. Then you will need to specify your own if you wish to hook into the controllers. This function has not been tested since I have not found a game which doesn't use the standard XInputGetState function.
public ManuallyInitializeControllerHook ( uint xinputAddress ) : void
xinputAddress uint
return void

MountDevice() public method

Mounts the specified device to the specified drive letter.
public MountDevice ( Device device, Drive drive ) : void
device Device Device name
drive Drive Drive letter
return void

OverrideControllers() public method

Specifies if the xbox should override controller input and start listening for pc input.
public OverrideControllers ( bool enabled ) : void
enabled bool
return void

Pause() public method

Suspends all xbox title threads.
public Pause ( ) : void
return void

Ping() public method

Retrieves xbox connection status. Average execution time of 2200 executions per second, or one every half millisecond.
public Ping ( ) : bool
return bool

Ping() public method

Retrieves xbox connection status. Average execution time of 2200 executions per second, or one every half millisecond.
public Ping ( int waitTime ) : bool
waitTime int Time to wait for a response
return bool

QueryXboxConnections() public method

Returns a list containing all consoles detected on the network.
public QueryXboxConnections ( ) : List
return List

RawFramebufferDump() public method

Use this if the Screenshot function doesnt dump properly and you wish to add a new format. Framebuffer will be in a swizzled format.
public RawFramebufferDump ( int width, int height, int pixelSizeInBytes ) : byte[]
width int
height int
pixelSizeInBytes int
return byte[]

ReadEEPROM() public method

Reads the xbox EEPROM.
public ReadEEPROM ( ) : byte[]
return byte[]

Reboot() public method

Performs a warm reboot on the xbox.
public Reboot ( ) : void
return void

Reboot() public method

Reboots the xbox with the specified BootFlag.
public Reboot ( BootFlag flag ) : void
flag BootFlag
return void

ReceiveBinaryData() public method

Receives all available binary data sent from the xbox.
public ReceiveBinaryData ( ) : byte[]
return byte[]

ReceiveBinaryData() public method

Receives binary data of specified size sent from the xbox.
public ReceiveBinaryData ( int size ) : byte[]
size int
return byte[]

ReceiveBinaryData() public method

Receives binary data of specified size sent from the xbox.
public ReceiveBinaryData ( byte &data ) : void
data byte
return void

ReceiveFile() public method

Receives a file from the xbox.
public ReceiveFile ( string localName, string remoteName ) : void
localName string PC file name.
remoteName string Xbox file name.
return void

ReceiveMultilineResponse() public method

Receives multiple lines of text from the xbox.
public ReceiveMultilineResponse ( ) : string
return string

ReceiveNotification() public method

Receives a notification if one is present.
public ReceiveNotification ( ) : bool
return bool

ReceiveNotifications() public method

Receives any notifications that may be present.
public ReceiveNotifications ( ) : void
return void

ReceiveSocketLine() public method

Receives a line of text from the xbox.
public ReceiveSocketLine ( ) : string
return string

ReceiveStatusResponse() public method

Waits for a status response to be received from the xbox.
public ReceiveStatusResponse ( ) : StatusResponse
return StatusResponse

Reconnect() public method

Re-establishes a connection with the currently selected xbox console.
public Reconnect ( ) : void
return void

Reconnect() public method

Attempts to re-establish a connection with the currently selected xbox console.
public Reconnect ( int timeout ) : void
timeout int
return void

RegisterNotificationSession() public method

Registers a notification session on the specified port.
public RegisterNotificationSession ( int port ) : void
port int
return void

RemoveBreakPoint() public method

Removes a breakpoint in an xbox title.
public RemoveBreakPoint ( uint address ) : void
address uint Address where you would like to remove a breakpoint.
return void

RenameFile() public method

Renames or moves a file on the xbox.
public RenameFile ( string oldFileName, string newFileName ) : void
oldFileName string Old file name.
newFileName string New file name.
return void

Reset() public method

Resets the xbox console.
public Reset ( ) : void
return void

RestoreDefaultLEDState() public method

Restores the xbox LED to its default state.
public RestoreDefaultLEDState ( ) : void
return void

ResumeThread() public method

Resumes a given xbox thread.
public ResumeThread ( uint thread ) : void
thread uint ID of the thread to resume.
return void

Screenshot() public method

Takes a screenshot of the xbox display.
public Screenshot ( ) : System.Image
return System.Image

SendBinaryData() public method

Sends binary data to the xbox.
public SendBinaryData ( byte data ) : void
data byte
return void

SendBinaryData() public method

Sends binary data of specified length to the xbox.
public SendBinaryData ( byte data, int length ) : void
data byte
length int
return void

SendCommand() public method

Sends a command to the xbox.
public SendCommand ( string command ) : StatusResponse
command string Command to be sent
return StatusResponse

SendFile() public method

Sends a file to the xbox.
public SendFile ( string localName, string remoteName ) : void
localName string PC file name.
remoteName string Xbox file name.
return void

SetBreakPoint() public method

Sets a breakpoint in an xbox title.
public SetBreakPoint ( uint address ) : void
address uint Address where you would like to set a breakpoint.
return void

SetBreakPoint() public method

Sets a hardware breakpoint that suspends title execution when a particular section of memory is referenced.
public SetBreakPoint ( uint address, uint size, BreakpointType type ) : void
address uint Address of the memory to watch.
size uint The size, in bytes, of the memory to be watched. /// The only allowable values for this parameter are 1, 2, and 4.
type BreakpointType Type of access to watch for.
return void

SetFileAttributes() public method

Sets file attributes.
public SetFileAttributes ( string fileName, FileAttributes attributes ) : void
fileName string File name.
attributes FileAttributes
return void

SetFileCacheSize() public method

Allows us to borrow extra memory from the file cache :)
public SetFileCacheSize ( uint size ) : bool
size uint Page count.
return bool

SetFileInformation() public method

Modifies file creation information. If you wish to specify a new file size, use SetFileSize instead.
public SetFileInformation ( string fileName, FileInformation info ) : void
fileName string File name.
info FileInformation File information.
return void

SetFileSize() public method

Sets the size of a specified file on the xbox. This method will not zero out any extra bytes that may have been created.
public SetFileSize ( string fileName, int size ) : void
fileName string
size int
return void

SetGamepadState() public method

Sends gamepad input to a specified controller port. A controller must be plugged into the port for this to work. You are also responsible for the polling frequency.
public SetGamepadState ( uint port, InputState input ) : void
port uint Controller port. [0-3]
input InputState Gamepad input.
return void

SetLEDState() public method

Sets the xbox LED state.
public SetLEDState ( LEDState state1, LEDState state2, LEDState state3, LEDState state4 ) : void
state1 LEDState First LED state.
state2 LEDState Second LED state.
state3 LEDState Third LED state.
state4 LEDState Fourth LED state.
return void

SetMemory() public method

Writes object(s) to a specified xbox memory location.
public SetMemory ( uint address ) : void
address uint Xbox memory location.
return void

Shutdown() public method

Shuts down the xbox console.
public Shutdown ( ) : void
return void

StopOn() public method

Some debugging events require title execution to be suspended. But there are some debugging events where thread suspension is an option. For these events, you can elect to have the debugging subsystem suspend title execution by calling this function.
public StopOn ( StopOnFlags flags ) : void
flags StopOnFlags
return void

StreamTest() public method

Benchmark utility function best when ran with xdk dash. Lower memory situations will yeild lower speeds.
public StreamTest ( ) : string
return string

SuspendThread() public method

Suspends a given xbox thread.
public SuspendThread ( uint thread ) : void
thread uint ID of the thread to suspend.
return void

SynchronizeTime() public method

Synchronizes the xbox system time with the computer's current time.
public SynchronizeTime ( ) : void
return void

UnMountDevice() public method

Unmounts the specified drive.
public UnMountDevice ( Drive drive ) : void
drive Drive Drive letter.
return void

Wait() public method

Waits for data to be received. During execution this method will enter a spin-wait loop and appear to use 100% cpu when in fact it is just a suspended thread. This is much more efficient than waiting a millisecond since most commands take fractions of a millisecond. It will either resume after the condition is met or throw a timeout exception.
public Wait ( WaitType type ) : void
type WaitType Wait type
return void

Wait() public method

Waits for a specified amount of data to be received. Use with file IO.
public Wait ( int targetLength ) : void
targetLength int Amount of data to wait for
return void

Xbox() public method

Xbox connection.
public Xbox ( ) : System
return System

getTitleInformation() public method

public getTitleInformation ( ) : void
return void