LEORemoteDebugger

Includes:

Introduction

These are hooks and utility functions for communicating with the ForgeDebugger application that can be used to analyze your bytecode while it is running using a GUI.



Functions

LEOInitRemoteDebugger
LEORemoteDebuggerAddBreakpoint
LEORemoteDebuggerAddFile
LEORemoteDebuggerPreInstructionProc
LEORemoteDebuggerPrompt
LEORemoteDebuggerRemoveBreakpoint

LEOInitRemoteDebugger


bool LEOInitRemoteDebugger(
    const char *inHostName );  
Discussion

Initialize the debugger and establish a connection to the debugger process. To reconnect after a failed connection, pass NULL as the inHostName (it'll use the host name from the previous attempt).


LEORemoteDebuggerAddBreakpoint


void LEORemoteDebuggerAddBreakpoint(
    LEOInstruction *targetInstruction );  
Discussion

Set a breakpoint on the given instruction. This will cause execution to be interrupted and a debugger console to be shown that allows examining the current stack.

See Also


LEORemoteDebuggerAddFile


void LEORemoteDebuggerAddFile(
    const char *filecontents,
    uint16_t inFileID,
    struct LEOScript *inScript );  
Discussion

Register a file name and its contents with the debugger, so it can display its contents and highlight the current line.


LEORemoteDebuggerPreInstructionProc


void LEORemoteDebuggerPreInstructionProc(
    struct LEOContext *inContext );  
Discussion

Use this function as the preInstructionProc of your LEOContext to activate the debugger.


LEORemoteDebuggerPrompt


void LEORemoteDebuggerPrompt(
    struct LEOContext *inContext );  
Discussion

Use this function as the promptProc of your LEOContext to activate the debugger.


LEORemoteDebuggerRemoveBreakpoint


Discussion

Remove a breakpoint set using LEODebuggerAddBreakpoint().

See Also