|
|
1.1 ! root 1: /* ! 2: Hatari - vars.h ! 3: ! 4: This file is distributed under the GNU General Public License, version 2 ! 5: or at your option any later version. Read the file gpl.txt for details. ! 6: */ ! 7: ! 8: #ifndef HATARI_VARS_H ! 9: #define HATARI_VARS_H ! 10: ! 11: typedef enum { ! 12: /* plain number */ ! 13: VALUE_TYPE_NUMBER = 0, ! 14: ! 15: /* functions to call to get value */ ! 16: VALUE_TYPE_FUNCTION32 = 2, ! 17: ! 18: /* internal Hatari value variables */ ! 19: VALUE_TYPE_VAR32 = 4, ! 20: ! 21: /* size must match register size used in BreakCond_ParseRegister() */ ! 22: VALUE_TYPE_REG16 = 16, ! 23: VALUE_TYPE_REG32 = 32 ! 24: } value_t; ! 25: ! 26: ! 27: /* Hatari variable name & address array items */ ! 28: typedef struct { ! 29: const char *name; ! 30: Uint32 *addr; ! 31: value_t vtype; ! 32: size_t bits; ! 33: const char *info; ! 34: } var_addr_t; ! 35: ! 36: ! 37: /* variables + CPU symbols readline callback for breakpoints & evaluate */ ! 38: extern char *Vars_MatchCpuVariable(const char *text, int state); ! 39: ! 40: /* pointer to variable struct with given variable name */ ! 41: extern const var_addr_t *Vars_ParseVariable(const char *name); ! 42: ! 43: /* get variable value for given variable name */ ! 44: bool Vars_GetVariableValue(const char *name, Uint32 *value); ! 45: ! 46: /* get variable value for given variable struct */ ! 47: extern Uint32 Vars_GetValue(const var_addr_t *hvar); ! 48: ! 49: /* list variables & their names */ ! 50: extern int Vars_List(int nArgc, char *psArgv[]); ! 51: ! 52: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.