Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

/home/groups/n/no/noxwizard/cvs/src/amx/amx_dbg.c File Reference

#include <assert.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <limits.h>
#include <stdio.h>
#include <stdarg.h>
#include "amx.h"
#include "console.h"

Compounds

struct  __symbol
struct  BREAKPOINT

Defines

#define MAXFILES   96
#define MAXBREAKS   48
#define MAXSTACKTRACE   1024
#define MAXLINELENGTH   512
#define NAMEMAX   64
#define MAX_DIMS   2
#define TABSIZE   8
#define SCREENCOLUMNS   80
#define MAXWATCHES   16
#define SCREENLINES   40
#define DEF_LIST   20
#define CMDWINDOW   (SCREENLINES - MAXWATCHES - DEF_LIST - 2)
#define dprintf   SDbgOut
#define dflush()   ;
#define dgetchar   getch
#define dgetstr(s, n)   SDbgIn(s,n)

Typedefs

typedef __symbol SYMBOL

Enumerations

enum  { BP_NONE, BP_CODE, BP_DATA, BP_TYPES }
enum  { TERM_NONE, TERM_ANSI, TERM_TYPES }
enum  {
  DISP_DEFAULT, DISP_STRING, DISP_BIN, DISP_HEX,
  DISP_FIXED, DISP_FLOAT, DISP_TYPES
}
enum  { GO, GO_RET, NEXT, STEP }

Functions

char * strpatch (char *s)
void term_clrscr (void)
void term_clreol (void)
void term_csrset (int x, int y)
void term_csrget (int *x, int *y)
void term_csrsave (void)
void term_csrrestore (void)
void term_open (void)
void term_close (void)
void term_restore (void)
void source_free (char **source)
char ** source_load (char *filename)
void source_list (int startline, int numlines)
int gettopline (int line, int topline)
char * skipwhitespace (char *str)
char * skipvalue (char *str)
char * skippath (char *str)
SYMBOLadd_symbol (SYMBOL *table, char *name, int type, ucell addr, int vclass, int level)
SYMBOLfind_symbol (SYMBOL *table, char *name, int level)
SYMBOLfind_symbol_addr (SYMBOL *table, ucell addr, int level)
void delete_symbol (SYMBOL *table, ucell addr, int level)
void delete_allsymbols (SYMBOL *table)
cell get_symbolvalue (AMX *amx, SYMBOL *sym, int index)
char * get_string (AMX *amx, SYMBOL *sym, int maxlength)
void watch_init (void)
void watch_list (AMX *amx, int calllevel)
int watch_set (int number, char *name)
int watch_clear (int number)
void break_init (void)
void break_clear (int index)
int break_set (AMX *amx, char *str, int calllevel)
void break_list (void)
int break_check (AMX *amx, int line, int file)
void listcommands (char *command)
int docommand (AMX *amx, int calllevel)
void breakOnFirstFuncz (void)
int amx_InternalDebugProc (AMX *amx)

Variables

char * filenames [96]
int curfileno = -1
char ** cursource
int curline
int stopline
int autolist = 1
BREAKPOINT breakpoints [48]
char watches [16][64]
SYMBOL functab
SYMBOL vartab
int curtopline
ucell callstack [1024]
int terminal = TERM_NONE
char dummy [30]
char dummy2 [30]
int tracelevel

Define Documentation

#define CMDWINDOW   (SCREENLINES - MAXWATCHES - DEF_LIST - 2)
 

#define DEF_LIST   20
 

 
#define dflush      ;
 

#define dgetchar   getch
 

#define dgetstr s,
     SDbgIn(s,n)
 

#define dprintf   SDbgOut
 

#define MAX_DIMS   2
 

#define MAXBREAKS   48
 

#define MAXFILES   96
 

#define MAXLINELENGTH   512
 

#define MAXSTACKTRACE   1024
 

#define MAXWATCHES   16
 

#define NAMEMAX   64
 

#define SCREENCOLUMNS   80
 

#define SCREENLINES   40
 

#define TABSIZE   8
 


Typedef Documentation

typedef struct __symbol SYMBOL
 


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
BP_NONE 
BP_CODE 
BP_DATA 
BP_TYPES 

anonymous enum
 

Enumeration values:
TERM_NONE 
TERM_ANSI 
TERM_TYPES 

anonymous enum
 

Enumeration values:
DISP_DEFAULT 
DISP_STRING 
DISP_BIN 
DISP_HEX 
DISP_FIXED 
DISP_FLOAT 
DISP_TYPES 

anonymous enum
 

Enumeration values:
GO 
GO_RET 
NEXT 
STEP 


Function Documentation

SYMBOL* add_symbol SYMBOL   table,
char *    name,
int    type,
ucell    addr,
int    vclass,
int    level
[static]
 

int amx_InternalDebugProc AMX   amx
 

int break_check AMX   amx,
int    line,
int    file
[static]
 

void break_clear int    index [static]
 

void break_init void    [static]
 

void break_list void    [static]
 

int break_set AMX   amx,
char *    str,
int    calllevel
[static]
 

void breakOnFirstFuncz void   
 

void delete_allsymbols SYMBOL   table [static]
 

void delete_symbol SYMBOL   table,
ucell    addr,
int    level
[static]
 

int docommand AMX   amx,
int    calllevel
[static]
 

SYMBOL* find_symbol SYMBOL   table,
char *    name,
int    level
[static]
 

SYMBOL* find_symbol_addr SYMBOL   table,
ucell    addr,
int    level
[static]
 

char* get_string AMX   amx,
SYMBOL   sym,
int    maxlength
[static]
 

cell get_symbolvalue AMX   amx,
SYMBOL   sym,
int    index
[static]
 

int gettopline int    line,
int    topline
[static]
 

void listcommands char *    command [static]
 

char* skippath char *    str [static]
 

char* skipvalue char *    str [static]
 

char* skipwhitespace char *    str [static]
 

void source_free char **    source [static]
 

void source_list int    startline,
int    numlines
[static]
 

char** source_load char *    filename [static]
 

char* strpatch char *    s
 

void term_close void    [static]
 

void term_clreol void    [static]
 

void term_clrscr void    [static]
 

void term_csrget int *    x,
int *    y
[static]
 

void term_csrrestore void    [static]
 

void term_csrsave void    [static]
 

void term_csrset int    x,
int    y
[static]
 

void term_open void    [static]
 

void term_restore void    [static]
 

int watch_clear int    number [static]
 

void watch_init void    [static]
 

void watch_list AMX   amx,
int    calllevel
[static]
 

int watch_set int    number,
char *    name
[static]
 


Variable Documentation

int autolist = 1 [static]
 

BREAKPOINT breakpoints[ 48 ] [static]
 

ucell callstack[ 1024 ] [static]
 

int curfileno = -1 [static]
 

int curline [static]
 

char** cursource [static]
 

int curtopline [static]
 

char dummy[30] [static]
 

char dummy2[30] [static]
 

char* filenames[ 96 ] [static]
 

SYMBOL functab [static]
 

int stopline [static]
 

int terminal = TERM_NONE [static]
 

int tracelevel [static]
 

SYMBOL vartab [static]
 

char watches[ 16 ][ 64 ] [static]
 

SourceForge.net Logo