diff options
Diffstat (limited to 'engines/gob/gob.h')
-rw-r--r-- | engines/gob/gob.h | 49 |
1 files changed, 26 insertions, 23 deletions
diff --git a/engines/gob/gob.h b/engines/gob/gob.h index efc9718098..ae2b53bc31 100644 --- a/engines/gob/gob.h +++ b/engines/gob/gob.h @@ -52,29 +52,32 @@ class Scenery; class Util; class SaveLoad; -#define VARP(offs) (_vm->_global->_inter_variables + (offs)) -#define WRITE_VARO_UINT32(offs, val) _vm->_global->writeVar(offs, (uint32) (val)) -#define WRITE_VARO_UINT16(offs, val) _vm->_global->writeVar(offs, (uint16) (val)) -#define WRITE_VARO_UINT8(offs, val) _vm->_global->writeVar(offs, (uint8) (val)) -#define WRITE_VARO_STR(offs, str) _vm->_global->writeVar(offs, (const char *) (str)) -#define WRITE_VAR_UINT32(var, val) WRITE_VARO_UINT32((var) << 2, (val)) -#define WRITE_VAR_UINT16(var, val) WRITE_VARO_UINT16((var) << 2, (val)) -#define WRITE_VAR_UINT8(var, val) WRITE_VARO_UINT8((var) << 2, (val)) -#define WRITE_VAR_STR(var, str) WRITE_VARO_STR((var) << 2, (str)) -#define READ_VARO_UINT32(offs) READ_UINT32(VARP(offs)) -#define READ_VARO_UINT16(offs) READ_UINT16(VARP(offs)) -#define READ_VARO_UINT8(offs) (*((uint8 *) VARP(offs))) -#define READ_VAR_UINT32(var) READ_VARO_UINT32((var) << 2) -#define READ_VAR_UINT16(var) READ_VARO_UINT16((var) << 2) -#define READ_VAR_UINT8(var) READ_VARO_UINT8((var) << 2) -#define GET_VARO_STR(offs) ((char *) VARP(offs)) -#define GET_VAR_STR(var) GET_VARO_STR((var) << 2) - -#define WRITE_VAR_OFFSET(offs, val) WRITE_VARO_UINT32((offs), (val)) -#define WRITE_VAR(var, val) WRITE_VAR_UINT32((var), (val)) -#define VAR_OFFSET(offs) READ_VARO_UINT32(offs) -#define VAR(var) READ_VAR_UINT32(var) -#define VAR_ADDRESS(var) ((uint32 *) VARP((var) << 2)) +#define WRITE_VAR_UINT32(var, val) _vm->_inter->_variables->writeVar32(var, val) +#define WRITE_VAR_UINT16(var, val) _vm->_inter->_variables->writeVar16(var, val) +#define WRITE_VAR_UINT8(var, val) _vm->_inter->_variables->writeVar8(var, val) +#define WRITE_VAR_STR(var, str) _vm->_inter->_variables->writeVarString(var, str) +#define WRITE_VARO_UINT32(off, val) _vm->_inter->_variables->writeOff32(off, val) +#define WRITE_VARO_UINT16(off, val) _vm->_inter->_variables->writeOff16(off, val) +#define WRITE_VARO_UINT8(off, val) _vm->_inter->_variables->writeOff8(off, val) +#define WRITE_VARO_STR(off, str) _vm->_inter->_variables->writeOffString(off, str) +#define READ_VAR_UINT32(var) _vm->_inter->_variables->readVar32(var) +#define READ_VAR_UINT16(var) _vm->_inter->_variables->readVar16(var) +#define READ_VAR_UINT8(var) _vm->_inter->_variables->readVar8(var) +#define READ_VARO_UINT32(off) _vm->_inter->_variables->readOff32(off) +#define READ_VARO_UINT16(off) _vm->_inter->_variables->readOff16(off) +#define READ_VARO_UINT8(off) _vm->_inter->_variables->readOff8(off) +#define GET_VAR_STR(var) _vm->_inter->_variables->getAddressVarString(var, 0) +#define GET_VARO_STR(off) _vm->_inter->_variables->getAddressOffString(off, 0) +#define GET_VAR_FSTR(var) _vm->_inter->_variables->getAddressVarString(var) +#define GET_VARO_FSTR(off) _vm->_inter->_variables->getAddressOffString(off) + +#define VAR_ADDRESS(var) _vm->_inter->_variables->getAddressVar32(var) + +#define WRITE_VAR_OFFSET(off, val) WRITE_VARO_UINT32((off), (val)) +#define WRITE_VAR(var, val) WRITE_VAR_UINT32((var), (val)) +#define VAR_OFFSET(off) READ_VARO_UINT32(off) +#define VAR(var) READ_VAR_UINT32(var) + enum GameType { kGameTypeNone = 0, |