FTEQW
Documentation of the FTE engine source tree.
decomp.c File Reference

Functions

QCC_ddef_t * GetField (const char *name)
 
const char * GetString (dstring_t str)
 
const char * typetoname (QCC_type_t *type)
 
const char * temp_type (int temp, dstatement_t *start, dfunction_t *df)
 
pbool IsConstant (QCC_ddef_t *def)
 
char * type_name (QCC_ddef_t *def)
 
const char * PR_String (const char *string)
 
char * DecompileValueString (etype_t type, void *val)
 
QCC_ddef_t * DecompileGetParameter (gofs_t ofs)
 
QCC_ddef_t * DecompileFindGlobal (const char *name)
 
char * DecompilePrintParameter (QCC_ddef_t *def)
 
QCC_ddef_t * DecompileFunctionGlobal (int funcnum)
 
char * ReadProgsCopyright (char *buf, size_t bufsize)
 
int DecompileReadData (char *srcfilename, char *buf, size_t bufsize)
 
int DecompileGetFunctionIdxByName (const char *name)
 
const etype_t DecompileGetFieldTypeByDef (QCC_ddef_t *def)
 
const char * DecompileGetFieldNameIdxByFinalOffset (int ofs)
 
void DecompileGetFieldNameIdxByFinalOffset2 (char *out, size_t outsize, int ofs)
 
int DecompileAlreadySeen (char *fname, vfile_t **rfile)
 
char * DecompileReturnType (dfunction_t *df)
 
char * DecompileAgressiveType (dfunction_t *df, dstatement_t *last, gofs_t ofs)
 
void DecompileCalcProfiles (void)
 
QCC_ddef_t * GlobalAtOffset (dfunction_t *df, gofs_t ofs)
 
char * DecompileGlobal (dfunction_t *df, gofs_t ofs, QCC_type_t *req_t)
 
gofs_t DecompileScaleIndex (dfunction_t *df, gofs_t ofs)
 
void DecompileImmediate_Free (void)
 
void DecompileImmediate_Insert (dfunction_t *df, gofs_t ofs, char *knew, QCC_type_t *type)
 
void FloatToString (char *out, size_t outsize, float f)
 
char * DecompileImmediate_Get (dfunction_t *df, gofs_t ofs, QCC_type_t *req_t)
 
char * DecompileGet (dfunction_t *df, gofs_t ofs, QCC_type_t *req_t)
 
void DecompilePrintStatement (dstatement_t *s)
 
void DecompileIndent (int c)
 
void DecompileOpcode (dfunction_t *df, int a, int b, int c, char *opcode, QCC_type_t *typ1, QCC_type_t *typ2, QCC_type_t *typ3, int usebrackets, int *indent)
 
void DecompileDecompileStatement (dfunction_t *df, dstatement_t *s, int *indent)
 
pbool DecompileDecompileFunction (dfunction_t *df, dstatement_t *altdone)
 
char * DecompileString (int qcstring)
 
const char * GetMatchingField (QCC_ddef_t *field)
 
void DecompilePreceedingGlobals (int start, int end, const char *name)
 
void DecompileFunction (const char *name, int *lastglobal)
 
pbool TrySynthName (const char *first)
 
void DecompileDecompileFunctions (const char *origcopyright)
 
void DecompileProgsDat (char *name, void *buf, size_t bufsize)
 
char * DecompileGlobalStringNoContents (gofs_t ofs)
 
char * DecompileGlobalString (gofs_t ofs)
 
void DecompilePrintFunction (char *name)
 

Variables

QCC_opcode_t pr_opcodes []
 
int endofsystemfields
 
int debug_offs = 0
 
int assumeglobals = 0
 
int assumelocals = 0
 
vfile_tDecompileofile
 
vfile_tDecompileprogssrc
 
vfile_tDecompileprofile
 
char ** DecompileProfiles
 
int quakeforgeremap []
 
char * type_names []
 
int numstatements
 
int numfunctions
 
pbool safedecomp
 
int fake_name
 
char synth_name [1024]
 

Function Documentation

◆ DecompileAgressiveType()

char * DecompileAgressiveType ( dfunction_t df,
dstatement_t *  last,
gofs_t  ofs 
)

◆ DecompileAlreadySeen()

int DecompileAlreadySeen ( char *  fname,
vfile_t **  rfile 
)

◆ DecompileCalcProfiles()

void DecompileCalcProfiles ( void  )

◆ DecompileDecompileFunction()

pbool DecompileDecompileFunction ( dfunction_t df,
dstatement_t *  altdone 
)

◆ DecompileDecompileFunctions()

void DecompileDecompileFunctions ( const char *  origcopyright)

◆ DecompileDecompileStatement()

void DecompileDecompileStatement ( dfunction_t df,
dstatement_t *  s,
int indent 
)

◆ DecompileFindGlobal()

QCC_ddef_t * DecompileFindGlobal ( const char *  name)

◆ DecompileFunction()

void DecompileFunction ( const char *  name,
int lastglobal 
)

◆ DecompileFunctionGlobal()

QCC_ddef_t * DecompileFunctionGlobal ( int  funcnum)

◆ DecompileGet()

char * DecompileGet ( dfunction_t df,
gofs_t  ofs,
QCC_type_t req_t 
)

◆ DecompileGetFieldNameIdxByFinalOffset()

const char * DecompileGetFieldNameIdxByFinalOffset ( int  ofs)

◆ DecompileGetFieldNameIdxByFinalOffset2()

void DecompileGetFieldNameIdxByFinalOffset2 ( char *  out,
size_t  outsize,
int  ofs 
)

◆ DecompileGetFieldTypeByDef()

const etype_t DecompileGetFieldTypeByDef ( QCC_ddef_t *  def)

◆ DecompileGetFunctionIdxByName()

int DecompileGetFunctionIdxByName ( const char *  name)

◆ DecompileGetParameter()

QCC_ddef_t * DecompileGetParameter ( gofs_t  ofs)

◆ DecompileGlobal()

char * DecompileGlobal ( dfunction_t df,
gofs_t  ofs,
QCC_type_t req_t 
)

◆ DecompileGlobalString()

char * DecompileGlobalString ( gofs_t  ofs)

◆ DecompileGlobalStringNoContents()

char * DecompileGlobalStringNoContents ( gofs_t  ofs)

◆ DecompileImmediate_Free()

void DecompileImmediate_Free ( void  )

◆ DecompileImmediate_Get()

char * DecompileImmediate_Get ( dfunction_t df,
gofs_t  ofs,
QCC_type_t req_t 
)

◆ DecompileImmediate_Insert()

void DecompileImmediate_Insert ( dfunction_t df,
gofs_t  ofs,
char *  knew,
QCC_type_t type 
)

◆ DecompileIndent()

void DecompileIndent ( int  c)

◆ DecompileOpcode()

void DecompileOpcode ( dfunction_t df,
int  a,
int  b,
int  c,
char *  opcode,
QCC_type_t typ1,
QCC_type_t typ2,
QCC_type_t typ3,
int  usebrackets,
int indent 
)

◆ DecompilePreceedingGlobals()

void DecompilePreceedingGlobals ( int  start,
int  end,
const char *  name 
)

◆ DecompilePrintFunction()

void DecompilePrintFunction ( char *  name)

◆ DecompilePrintParameter()

char * DecompilePrintParameter ( QCC_ddef_t *  def)

◆ DecompilePrintStatement()

void DecompilePrintStatement ( dstatement_t *  s)

◆ DecompileProgsDat()

void DecompileProgsDat ( char *  name,
void buf,
size_t  bufsize 
)

◆ DecompileReadData()

int DecompileReadData ( char *  srcfilename,
char *  buf,
size_t  bufsize 
)

◆ DecompileReturnType()

char * DecompileReturnType ( dfunction_t df)

◆ DecompileScaleIndex()

gofs_t DecompileScaleIndex ( dfunction_t df,
gofs_t  ofs 
)

◆ DecompileString()

char * DecompileString ( int  qcstring)

◆ DecompileValueString()

char * DecompileValueString ( etype_t  type,
void val 
)

◆ FloatToString()

void FloatToString ( char *  out,
size_t  outsize,
float  f 
)

◆ GetField()

QCC_ddef_t * GetField ( const char *  name)

◆ GetMatchingField()

const char * GetMatchingField ( QCC_ddef_t *  field)

◆ GetString()

const char * GetString ( dstring_t  str)

◆ GlobalAtOffset()

QCC_ddef_t * GlobalAtOffset ( dfunction_t df,
gofs_t  ofs 
)

◆ IsConstant()

pbool IsConstant ( QCC_ddef_t *  def)

◆ PR_String()

const char * PR_String ( const char *  string)

◆ ReadProgsCopyright()

char * ReadProgsCopyright ( char *  buf,
size_t  bufsize 
)

◆ temp_type()

const char * temp_type ( int  temp,
dstatement_t *  start,
dfunction_t df 
)

◆ TrySynthName()

pbool TrySynthName ( const char *  first)

◆ type_name()

char * type_name ( QCC_ddef_t *  def)

◆ typetoname()

const char * typetoname ( QCC_type_t type)

Variable Documentation

◆ assumeglobals

int assumeglobals = 0

◆ assumelocals

int assumelocals = 0

◆ debug_offs

int debug_offs = 0

◆ Decompileofile

vfile_t* Decompileofile

◆ Decompileprofile

vfile_t* Decompileprofile

◆ DecompileProfiles

char** DecompileProfiles

◆ Decompileprogssrc

vfile_t* Decompileprogssrc

◆ endofsystemfields

int endofsystemfields

◆ fake_name

int fake_name

◆ name

char* name

◆ num

int num

◆ numfunctions

int numfunctions
extern

◆ numstatements

int numstatements
extern

◆ params

◆ pr_opcodes

QCC_opcode_t pr_opcodes[]
extern

◆ quakeforgeremap

int quakeforgeremap[]
extern

◆ returns

QCC_type_t** returns

◆ safedecomp

pbool safedecomp
extern

◆ synth_name

char synth_name[1024]

◆ text

char* text

◆ type

◆ type_names

char* type_names[]
Initial value:
=
{
"void",
"string",
"float",
"vector",
"entity",
"ev_field",
"void()",
"ev_pointer",
"int",
"__variant",
"ev_struct",
"ev_union",
"ev_accessor",
"ev_quat",
"ev_uinteger"
}