[Scummvm-cvs-logs] scummvm master -> 4c2d2684ea54d98828d44b18fb7b17ed84c7bf22

wjp wjp at usecode.org
Wed Dec 28 02:38:06 CET 2011


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
4c2d2684ea DREAMWEB: Mass-move variables out of data


Commit: 4c2d2684ea54d98828d44b18fb7b17ed84c7bf22
    https://github.com/scummvm/scummvm/commit/4c2d2684ea54d98828d44b18fb7b17ed84c7bf22
Author: Willem Jan Palenstijn (wjp at usecode.org)
Date: 2011-12-27T17:36:52-08:00

Commit Message:
DREAMWEB: Mass-move variables out of data

This has been done by an automated search/replace, culling unused
variables in the process. The remaining variables in data are all stored
in savegames.

Changed paths:
    devtools/tasmrecover/tasm-recover
    engines/dreamweb/backdrop.cpp
    engines/dreamweb/dreambase.h
    engines/dreamweb/dreamgen.cpp
    engines/dreamweb/dreamgen.h
    engines/dreamweb/dreamweb.cpp
    engines/dreamweb/keypad.cpp
    engines/dreamweb/monitor.cpp
    engines/dreamweb/newplace.cpp
    engines/dreamweb/object.cpp
    engines/dreamweb/pathfind.cpp
    engines/dreamweb/people.cpp
    engines/dreamweb/print.cpp
    engines/dreamweb/saveload.cpp
    engines/dreamweb/sprite.cpp
    engines/dreamweb/stubs.cpp
    engines/dreamweb/talk.cpp
    engines/dreamweb/titles.cpp
    engines/dreamweb/use.cpp
    engines/dreamweb/vgafades.cpp
    engines/dreamweb/vgagrafx.cpp



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 5fd53bb..ee74b90 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -278,6 +278,183 @@ p = parser(skip_binary_data = [
 	'reels',
 	'setdat',
 	'freedat',
+	'speechcount',
+	'charshift',
+	'kerning',
+	'brightness',
+	'roomloaded',
+	'didzoom',
+	'linespacing',
+	'textaddressx',
+	'textaddressy',
+	'textlen',
+	'lastxpos',
+	'icontop',
+	'iconleft',
+	'itemframe',
+	'roomad',
+	'withobject',
+	'withtype',
+	'lookcounter',
+	'command',
+	'commandtype',
+	'oldcommandtype',
+	'objecttype',
+	'getback',
+	'invopen',
+	'mainmode',
+	'pickup',
+	'lastinvpos',
+	'examagain',
+	'newtextline',
+	'openedob',
+	'openedtype',
+	'oldmapadx',
+	'oldmapady',
+	'mapadx',
+	'mapady',
+	'mapoffsetx',
+	'mapoffsety',
+	'mapxstart',
+	'mapystart',
+	'mapxsize',
+	'mapysize',
+	'havedoneobs',
+	'manisoffscreen',
+	'rainspace',
+	'facing',
+	'leavedirection',
+	'turntoface',
+	'turndirection',
+	'maintimer',
+	'introcount',
+	'arrowad',
+	'currentkey',
+	'oldkey',
+	'useddirection',
+	'timercount',
+	'oldtimercount',
+	'mapx',
+	'mapy',
+	'newscreen',
+	'ryanx',
+	'ryany',
+	'lastflag',
+	'offsetx',
+	'offsety',
+	'currentob',
+	'destpos',
+	'reallocation',
+	'roomnum',
+	'nowinnewroom',
+	'resetmanxy',
+	'newlocation',
+	'autolocation',
+	'doorcheck1',
+	'doorcheck2',
+	'doorcheck3',
+	'doorcheck4',
+	'mousex',
+	'mousey',
+	'mousebutton',
+	'mousebutton1',
+	'mousebutton2',
+	'mousebutton3',
+	'mousebutton4',
+	'oldbutton',
+	'oldx',
+	'oldy',
+	'lastbutton',
+	'oldpointerx',
+	'oldpointery',
+	'delherex',
+	'delherey',
+	'pointerxs',
+	'pointerys',
+	'delxs',
+	'delys',
+	'pointerframe',
+	'pointerpower',
+	'auxpointerframe',
+	'pointermode',
+	'pointerspeed',
+	'pointercount',
+	'inmaparea',
+	'talkmode',
+	'talkpos',
+	'character',
+	'watchdump',
+	'logonum',
+	'oldlogonum',
+	'pressed',
+	'presspointer',
+	'graphicpress',
+	'presscount',
+	'lightcount',
+	'folderpage',
+	'diarypage',
+	'menucount',
+	'symboltopx',
+	'symboltopnum',
+	'symboltopdir',
+	'symbolbotx',
+	'symbolbotnum',
+	'symbolbotdir',
+	'dumpx',
+	'dumpy',
+	'walkandexam',
+	'walkexamtype',
+	'walkexamnum',
+	'curslocx',
+	'curslocy',
+	'curpos',
+	'monadx',
+	'monady',
+	'numtodo',
+	'timecount',
+	'counttotimed',
+	'timedseg',
+	'timedoffset',
+	'timedy',
+	'timedx',
+	'needtodumptimed',
+	'loadingorsave',
+	'currentslot',
+	'cursorpos',
+	'colourpos',
+	'fadedirection',
+	'numtofade',
+	'fadecount',
+	'addtogreen',
+	'addtored',
+	'addtoblue',
+	'lastsoundreel',
+	'volume',
+	'volumeto',
+	'volumedirection',
+	'volumecount',
+	'lasthardkey',
+	'bufferin',
+	'bufferout',
+	'workspace',
+	'mainsprites',
+	'backdrop',
+	'recordspace',
+	'blinkframe',
+	'blinkcount',
+	'reasseschanges',
+	'pointerspath',
+	'manspath',
+	'pointerfirstpath',
+	'finaldest',
+	'destination',
+	'linestartx',
+	'linestarty',
+	'lineendx',
+	'lineendy',
+	'linepointer',
+	'linedirection',
+	'linelength',
 	# vars.asm - constants
 	'openinvlist',
 	'ryaninvlist',
diff --git a/engines/dreamweb/backdrop.cpp b/engines/dreamweb/backdrop.cpp
index 295be47..e5c2f30 100644
--- a/engines/dreamweb/backdrop.cpp
+++ b/engines/dreamweb/backdrop.cpp
@@ -25,8 +25,8 @@
 namespace DreamGen {
 
 void DreamBase::doBlocks() {
-	uint16 dstOffset = data.word(kMapady) * 320 + data.word(kMapadx);
-	uint16 mapOffset = kMap + data.byte(kMapy) * kMapwidth + data.byte(kMapx);
+	uint16 dstOffset = _mapAdY * 320 + _mapAdX;
+	uint16 mapOffset = kMap + _mapY * kMapwidth + _mapX;
 	const uint8 *mapData = _mapData + mapOffset;
 	uint8 *dstBuffer = workspace() + dstOffset;
 
@@ -67,9 +67,9 @@ uint8 DreamBase::getXAd(const uint8 *setData, uint8 *result) {
 	uint8 v2 = setData[2];
 	if (v0 != 0)
 		return 0;
-	if (v1 < data.byte(kMapx))
+	if (v1 < _mapX)
 		return 0;
-	v1 -= data.byte(kMapx);
+	v1 -= _mapX;
 	if (v1 >= 11)
 		return 0;
 	*result = (v1 << 4) | v2;
@@ -79,9 +79,9 @@ uint8 DreamBase::getXAd(const uint8 *setData, uint8 *result) {
 uint8 DreamBase::getYAd(const uint8 *setData, uint8 *result) {
 	uint8 v0 = setData[3];
 	uint8 v1 = setData[4];
-	if (v0 < data.byte(kMapy))
+	if (v0 < _mapY)
 		return 0;
-	v0 -= data.byte(kMapy);
+	v0 -= _mapY;
 	if (v0 >= 10)
 		return 0;
 	*result = (v0 << 4) | v1;
@@ -145,8 +145,8 @@ void DreamBase::showAllObs() {
 		calcFrFrame(frameBase._frames[currentFrame], &width, &height, x, y, &objPos);
 		setEntry->index = setEntry->frames[0];
 		if ((setEntry->type == 0) && (setEntry->priority != 5) && (setEntry->priority != 6)) {
-			x += data.word(kMapadx);
-			y += data.word(kMapady);
+			x += _mapAdX;
+			y += _mapAdY;
 			showFrame(frameBase, x, y, currentFrame, 0);
 		} else
 			makeBackOb(setEntry, x, y);
@@ -193,18 +193,18 @@ void DreamBase::getDimension(uint8 *mapXstart, uint8 *mapYstart, uint8 *mapXsize
 	*mapYstart = yStart;
 	*mapXsize = xEnd - xStart;
 	*mapYsize = yEnd - yStart;
-	data.word(kMapxstart) = xStart << 4;
-	data.word(kMapystart) = yStart << 4;
-	data.byte(kMapxsize) = *mapXsize << 4;
-	data.byte(kMapysize) = *mapYsize << 4;
+	_mapXStart = xStart << 4;
+	_mapYStart = yStart << 4;
+	_mapXSize = *mapXsize << 4;
+	_mapYSize = *mapYsize << 4;
 }
 
 void DreamBase::calcMapAd() {
 	uint8 mapXstart, mapYstart;
 	uint8 mapXsize, mapYsize;
 	getDimension(&mapXstart, &mapYstart, &mapXsize, &mapYsize);
-	data.word(kMapadx) = data.word(kMapoffsetx) - 8 * (mapXsize + 2 * mapXstart - 11);
-	data.word(kMapady) = data.word(kMapoffsety) - 8 * (mapYsize + 2 * mapYstart - 10);
+	_mapAdX = _mapOffsetX - 8 * (mapXsize + 2 * mapXstart - 11);
+	_mapAdY = _mapOffsetY - 8 * (mapYsize + 2 * mapYstart - 10);
 }
 
 void DreamBase::showAllFree() {
@@ -223,8 +223,8 @@ void DreamBase::showAllFree() {
 			uint16 currentFrame = 3 * i;
 			calcFrFrame(frameBase._frames[currentFrame], &width, &height, x, y, &objPos);
 			if ((width != 0) || (height != 0)) {
-				x += data.word(kMapadx);
-				y += data.word(kMapady);
+				x += _mapAdX;
+				y += _mapAdY;
 				assert(currentFrame < 256);
 				showFrame(frameBase, x, y, currentFrame, 0);
 				objPos.index = i;
@@ -236,7 +236,7 @@ void DreamBase::showAllFree() {
 
 void DreamBase::drawFlags() {
 	MapFlag *mapFlag = _mapFlags;
-	uint16 mapOffset = kMap + data.byte(kMapy) * kMapwidth + data.byte(kMapx);
+	uint16 mapOffset = kMap + _mapY * kMapwidth + _mapX;
 	const uint8 *mapData = _mapData + mapOffset;
 
 	for (size_t i = 0; i < 10; ++i) {
@@ -261,7 +261,7 @@ void DreamBase::showAllEx() {
 		DynObject *object = objects + i;
 		if (object->mapad[0] == 0xff)
 			continue;
-		if (object->currentLocation != data.byte(kReallocation))
+		if (object->currentLocation != _realLocation)
 			continue;
 		uint16 x, y;
 		if (getMapAd(object->mapad, &x, &y) == 0)
@@ -272,7 +272,7 @@ void DreamBase::showAllEx() {
 		calcFrFrame(frameBase._frames[currentFrame], &width, &height, x, y, &objPos);
 		if ((width != 0) || (height != 0)) {
 			assert(currentFrame < 256);
-			showFrame(frameBase, x + data.word(kMapadx), y + data.word(kMapady), currentFrame, 0);
+			showFrame(frameBase, x + _mapAdX, y + _mapAdY, currentFrame, 0);
 			objPos.index = i;
 			_exList.push_back(objPos);
 		}
diff --git a/engines/dreamweb/dreambase.h b/engines/dreamweb/dreambase.h
index 47f0cec..9d59c3f 100644
--- a/engines/dreamweb/dreambase.h
+++ b/engines/dreamweb/dreambase.h
@@ -188,6 +188,149 @@ public:
 
 	bool _speechLoaded;
 
+	// misc variables
+	uint8 _speechCount;
+	uint16 _charShift;
+	uint8 _kerning;
+	uint8 _brightness;
+	uint8 _roomLoaded;
+	uint8 _didZoom;
+	uint16 _lineSpacing;
+	uint16 _textAddressX;
+	uint16 _textAddressY;
+	uint8 _textLen;
+	uint16 _lastXPos;
+	uint8 _itemFrame;
+	uint8 _withObject;
+	uint8 _withType;
+	uint16 _lookCounter;
+	uint8 _command;
+	uint8 _commandType;
+	uint8 _objectType;
+	uint8 _getBack;
+	uint8 _invOpen;
+	uint8 _mainMode;
+	uint8 _pickUp;
+	uint8 _lastInvPos;
+	uint8 _examAgain;
+	uint8 _newTextLine;
+	uint8 _openedOb;
+	uint8 _openedType;
+	uint16 _mapAdX;
+	uint16 _mapAdY;
+	uint16 _mapOffsetX;
+	uint16 _mapOffsetY;
+	uint16 _mapXStart;
+	uint16 _mapYStart;
+	uint8 _mapXSize;
+	uint8 _mapYSize;
+	uint8 _haveDoneObs;
+	uint8 _manIsOffScreen;
+	uint8 _facing;
+	uint8 _leaveDirection;
+	uint8 _turnToFace;
+	uint8 _turnDirection;
+	uint16 _mainTimer;
+	uint8 _introCount;
+	uint8 _currentKey;
+	uint8 _timerCount;
+	uint8 _mapX;
+	uint8 _mapY;
+	uint8 _ryanX;
+	uint8 _ryanY;
+	uint8 _lastFlag;
+	uint8 _destPos;
+	uint8 _realLocation;
+	uint8 _roomNum;
+	uint8 _nowInNewRoom;
+	uint8 _resetManXY;
+	uint8 _newLocation;
+	uint8 _autoLocation;
+	uint16 _mouseX;
+	uint16 _mouseY;
+	uint16 _mouseButton;
+	uint16 _oldButton;
+	uint16 _oldX;
+	uint16 _oldY;
+	uint16 _oldPointerX;
+	uint16 _oldPointerY;
+	uint16 _delHereX;
+	uint16 _delHereY;
+	uint8 _pointerXS;
+	uint8 _pointerYS;
+	uint8 _delXS;
+	uint8 _delYS;
+	uint8 _pointerFrame;
+	uint8 _pointerPower;
+	uint8 _pointerMode;
+	uint8 _pointerSpeed;
+	uint8 _pointerCount;
+	uint8 _inMapArea;
+	uint8 _talkMode;
+	uint8 _talkPos;
+	uint8 _character;
+	uint8 _watchDump;
+	uint8 _logoNum;
+	uint8 _oldLogoNum;
+	uint8 _pressed;
+	uint16 _pressPointer;
+	uint8 _graphicPress;
+	uint8 _pressCount;
+	uint8 _lightCount;
+	uint8 _folderPage;
+	uint8 _diaryPage;
+	uint8 _menuCount;
+	uint8 _symbolTopX;
+	uint8 _symbolTopNum;
+	uint8 _symbolTopDir;
+	uint8 _symbolBotX;
+	uint8 _symbolBotNum;
+	uint8 _symbolBotDir;
+	uint16 _dumpX;
+	uint16 _dumpY;
+	uint8 _walkAndExam;
+	uint8 _walkExamType;
+	uint8 _walkExamNum;
+	uint16 _cursLocX;
+	uint16 _cursLocY;
+	uint16 _curPos;
+	uint16 _monAdX;
+	uint16 _monAdY;
+	uint16 _timeCount;
+	uint16 _countToTimed;
+	uint8 _timedY;
+	uint8 _timedX;
+	uint8 _needToDumpTimed;
+	uint8 _loadingOrSave;
+	uint8 _currentSlot;
+	uint8 _cursorPos;
+	uint8 _colourPos;
+	uint8 _fadeDirection;
+	uint8 _numToFade;
+	uint8 _fadeCount;
+	uint8 _addToGreen;
+	uint8 _addToRed;
+	uint8 _addToBlue;
+	uint16 _lastSoundReel;
+	uint8 _lastHardKey;
+	uint16 _bufferIn;
+	uint16 _bufferOut;
+	uint8 _blinkFrame;
+	uint8 _blinkCount;
+	uint8 _reAssesChanges;
+	uint8 _pointersPath;
+	uint8 _mansPath;
+	uint8 _pointerFirstPath;
+	uint8 _finalDest;
+	uint8 _destination;
+	uint16 _lineStartX;
+	uint16 _lineStartY;
+	uint16 _lineEndX;
+	uint16 _lineEndY;
+	uint8 _linePointer;
+	uint8 _lineDirection;
+	uint8 _lineLength;
+
 	// from backdrop.cpp
 	void doBlocks();
 	uint8 getXAd(const uint8 *setData, uint8 *result);
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 239725c..7f4c8e4 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -37,35 +37,7 @@ void DreamGenContext::__start() {
 		//0x0020: .... .... .... ....
 		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00, 0xff, 0x00, 
 		//0x0030: .... .... .... ....
-		0xff, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x0d, 0x00, 0xb6, 
-		//0x0040: ...0 .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0050: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0060: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0070: .... h.&. .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0080: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 
-		//0x0090: .... .... .... ....
-		0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00a0: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00b0: .... .... .... ....
-		0x00, 0x00, 0x00, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00c0: ...   ... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00d0: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00e0: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x00f0: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0100: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 
-		//0x0110: .... .... .... ....
-		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
+		0xff, 0x00, 0x00, 0x30, };
 	ds.assign(src, src + sizeof(src));
 	dreamweb(); 
 }
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index fa13b47..e47c44a 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -89,179 +89,6 @@ static const uint16 kLastweapon = 64;
 static const uint16 kDreamnumber = 65;
 static const uint16 kRoomafterdream = 66;
 static const uint16 kShakecounter = 67;
-static const uint16 kSpeechcount = 68;
-static const uint16 kCharshift = 69;
-static const uint16 kKerning = 71;
-static const uint16 kBrightness = 72;
-static const uint16 kRoomloaded = 73;
-static const uint16 kDidzoom = 74;
-static const uint16 kLinespacing = 75;
-static const uint16 kTextaddressx = 77;
-static const uint16 kTextaddressy = 79;
-static const uint16 kTextlen = 81;
-static const uint16 kLastxpos = 82;
-static const uint16 kIcontop = 84;
-static const uint16 kIconleft = 86;
-static const uint16 kItemframe = 88;
-static const uint16 kRoomad = 89;
-static const uint16 kWithobject = 91;
-static const uint16 kWithtype = 92;
-static const uint16 kLookcounter = 93;
-static const uint16 kCommand = 95;
-static const uint16 kCommandtype = 96;
-static const uint16 kOldcommandtype = 97;
-static const uint16 kObjecttype = 98;
-static const uint16 kGetback = 99;
-static const uint16 kInvopen = 100;
-static const uint16 kMainmode = 101;
-static const uint16 kPickup = 102;
-static const uint16 kLastinvpos = 103;
-static const uint16 kExamagain = 104;
-static const uint16 kNewtextline = 105;
-static const uint16 kOpenedob = 106;
-static const uint16 kOpenedtype = 107;
-static const uint16 kOldmapadx = 108;
-static const uint16 kOldmapady = 110;
-static const uint16 kMapadx = 112;
-static const uint16 kMapady = 114;
-static const uint16 kMapoffsetx = 116;
-static const uint16 kMapoffsety = 118;
-static const uint16 kMapxstart = 120;
-static const uint16 kMapystart = 122;
-static const uint16 kMapxsize = 124;
-static const uint16 kMapysize = 125;
-static const uint16 kHavedoneobs = 126;
-static const uint16 kManisoffscreen = 127;
-static const uint16 kRainspace = 128;
-static const uint16 kFacing = 129;
-static const uint16 kLeavedirection = 130;
-static const uint16 kTurntoface = 131;
-static const uint16 kTurndirection = 132;
-static const uint16 kMaintimer = 133;
-static const uint16 kIntrocount = 135;
-static const uint16 kArrowad = 136;
-static const uint16 kCurrentkey = 138;
-static const uint16 kOldkey = 139;
-static const uint16 kUseddirection = 140;
-static const uint16 kTimercount = 141;
-static const uint16 kOldtimercount = 142;
-static const uint16 kMapx = 143;
-static const uint16 kMapy = 144;
-static const uint16 kNewscreen = 145;
-static const uint16 kRyanx = 146;
-static const uint16 kRyany = 147;
-static const uint16 kLastflag = 148;
-static const uint16 kOffsetx = 149;
-static const uint16 kOffsety = 151;
-static const uint16 kCurrentob = 153;
-static const uint16 kDestpos = 154;
-static const uint16 kReallocation = 155;
-static const uint16 kRoomnum = 156;
-static const uint16 kNowinnewroom = 157;
-static const uint16 kResetmanxy = 158;
-static const uint16 kNewlocation = 159;
-static const uint16 kAutolocation = 160;
-static const uint16 kDoorcheck1 = 161;
-static const uint16 kDoorcheck2 = 162;
-static const uint16 kDoorcheck3 = 163;
-static const uint16 kDoorcheck4 = 164;
-static const uint16 kMousex = 165;
-static const uint16 kMousey = 167;
-static const uint16 kMousebutton = 169;
-static const uint16 kMousebutton1 = 171;
-static const uint16 kMousebutton2 = 173;
-static const uint16 kMousebutton3 = 175;
-static const uint16 kMousebutton4 = 177;
-static const uint16 kOldbutton = 179;
-static const uint16 kOldx = 181;
-static const uint16 kOldy = 183;
-static const uint16 kLastbutton = 185;
-static const uint16 kOldpointerx = 187;
-static const uint16 kOldpointery = 189;
-static const uint16 kDelherex = 191;
-static const uint16 kDelherey = 193;
-static const uint16 kPointerxs = 195;
-static const uint16 kPointerys = 196;
-static const uint16 kDelxs = 197;
-static const uint16 kDelys = 198;
-static const uint16 kPointerframe = 199;
-static const uint16 kPointerpower = 200;
-static const uint16 kAuxpointerframe = 201;
-static const uint16 kPointermode = 202;
-static const uint16 kPointerspeed = 203;
-static const uint16 kPointercount = 204;
-static const uint16 kInmaparea = 205;
-static const uint16 kTalkmode = 206;
-static const uint16 kTalkpos = 207;
-static const uint16 kCharacter = 208;
-static const uint16 kWatchdump = 209;
-static const uint16 kLogonum = 210;
-static const uint16 kOldlogonum = 211;
-static const uint16 kPressed = 212;
-static const uint16 kPresspointer = 213;
-static const uint16 kGraphicpress = 215;
-static const uint16 kPresscount = 216;
-static const uint16 kLightcount = 217;
-static const uint16 kFolderpage = 218;
-static const uint16 kDiarypage = 219;
-static const uint16 kMenucount = 220;
-static const uint16 kSymboltopx = 221;
-static const uint16 kSymboltopnum = 222;
-static const uint16 kSymboltopdir = 223;
-static const uint16 kSymbolbotx = 224;
-static const uint16 kSymbolbotnum = 225;
-static const uint16 kSymbolbotdir = 226;
-static const uint16 kDumpx = 227;
-static const uint16 kDumpy = 229;
-static const uint16 kWalkandexam = 231;
-static const uint16 kWalkexamtype = 232;
-static const uint16 kWalkexamnum = 233;
-static const uint16 kCurslocx = 234;
-static const uint16 kCurslocy = 236;
-static const uint16 kCurpos = 238;
-static const uint16 kMonadx = 240;
-static const uint16 kMonady = 242;
-static const uint16 kNumtodo = 244;
-static const uint16 kTimecount = 246;
-static const uint16 kCounttotimed = 248;
-static const uint16 kTimedseg = 250;
-static const uint16 kTimedoffset = 252;
-static const uint16 kTimedy = 254;
-static const uint16 kTimedx = 255;
-static const uint16 kNeedtodumptimed = 256;
-static const uint16 kLoadingorsave = 257;
-static const uint16 kCurrentslot = 258;
-static const uint16 kCursorpos = 259;
-static const uint16 kColourpos = 260;
-static const uint16 kFadedirection = 261;
-static const uint16 kNumtofade = 262;
-static const uint16 kFadecount = 263;
-static const uint16 kAddtogreen = 264;
-static const uint16 kAddtored = 265;
-static const uint16 kAddtoblue = 266;
-static const uint16 kLastsoundreel = 267;
-static const uint16 kLasthardkey = 269;
-static const uint16 kBufferin = 270;
-static const uint16 kBufferout = 272;
-static const uint16 kWorkspace = 274;
-static const uint16 kMainsprites = 276;
-static const uint16 kBackdrop = 278;
-static const uint16 kRecordspace = 280;
-static const uint16 kBlinkframe = 282;
-static const uint16 kBlinkcount = 283;
-static const uint16 kReasseschanges = 284;
-static const uint16 kPointerspath = 285;
-static const uint16 kManspath = 286;
-static const uint16 kPointerfirstpath = 287;
-static const uint16 kFinaldest = 288;
-static const uint16 kDestination = 289;
-static const uint16 kLinestartx = 290;
-static const uint16 kLinestarty = 292;
-static const uint16 kLineendx = 294;
-static const uint16 kLineendy = 296;
-static const uint16 kLinepointer = 298;
-static const uint16 kLinedirection = 299;
-static const uint16 kLinelength = 300;
 static const uint16 kBlocktextdat = (0);
 static const uint16 kPersonframes = (0);
 static const uint16 kDebuglevel1 = (0);
@@ -269,14 +96,14 @@ static const uint16 kDebuglevel2 = (0);
 static const uint16 kPlayback = (0);
 static const uint16 kMap = (0);
 static const uint16 kSettextdat = (0);
+static const uint16 kTextunder = (0);
 static const uint16 kSpanish = (0);
 static const uint16 kRecording = (0);
-static const uint16 kFlags = (0);
 static const uint16 kGerman = (0);
-static const uint16 kTextunder = (0);
 static const uint16 kPathdata = (0);
 static const uint16 kDemo = (0);
 static const uint16 kFramedata = (0);
+static const uint16 kFlags = (0);
 static const uint16 kExframedata = (0);
 static const uint16 kIntextdat = (0);
 static const uint16 kFreetextdat = (0);
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp
index de6a481..4e7257b 100644
--- a/engines/dreamweb/dreamweb.cpp
+++ b/engines/dreamweb/dreamweb.cpp
@@ -95,7 +95,7 @@ void DreamWebEngine::waitForVSync() {
 
 void DreamWebEngine::quit() {
 	_base._quitRequested = true;
-	_base.data.byte(DreamGen::kLasthardkey) = 1;
+	_base._lastHardKey = 1;
 }
 
 void DreamWebEngine::processEvents() {
@@ -130,8 +130,8 @@ void DreamWebEngine::processEvents() {
 					break;
 
 				case Common::KEYCODE_c: //skip statue puzzle
-					_base.data.byte(DreamGen::kSymbolbotnum) = 3;
-					_base.data.byte(DreamGen::kSymboltopnum) = 5;
+					_base._symbolBotNum = 3;
+					_base._symbolTopNum = 5;
 					break;
 
 				default:
@@ -161,7 +161,7 @@ void DreamWebEngine::processEvents() {
 				break;
 			}
 
-			_base.data.byte(DreamGen::kLasthardkey) = hardKey;
+			_base._lastHardKey = hardKey;
 
 			// The rest of the keys are converted to ASCII. This
 			// is fairly restrictive, and eventually we may want
@@ -267,13 +267,13 @@ Common::String DreamWebEngine::getSavegameFilename(int slot) const {
 
 void DreamWebEngine::keyPressed(uint16 ascii) {
 	debug(2, "key pressed = %04x", ascii);
-	uint16 in = (_base.data.word(DreamGen::kBufferin) + 1) & 0x0f;
-	uint16 out = _base.data.word(DreamGen::kBufferout);
+	uint16 in = (_base._bufferIn + 1) & 0x0f;
+	uint16 out = _base._bufferOut;
 	if (in == out) {
 		warning("keyboard buffer is full");
 		return;
 	}
-	_base.data.word(DreamGen::kBufferin) = in;
+	_base._bufferIn = in;
 	DreamGen::g_keyBuffer[in] = ascii;
 }
 
@@ -431,6 +431,149 @@ DreamBase::DreamBase(DreamWeb::DreamWebEngine *en) :
 
 	_oldSubject._type = 0;
 	_oldSubject._index = 0;
+
+	// misc variables
+	_speechCount = 0;
+	_charShift = 0;
+	_kerning = 0;
+	_brightness = 0;
+	_roomLoaded = 0;
+	_didZoom = 0;
+	_lineSpacing = 10;
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 0;
+	_lastXPos = 0;
+	_itemFrame = 0;
+	_withObject = 0;
+	_withType = 0;
+	_lookCounter = 0;
+	_command = 0;
+	_commandType = 0;
+	_objectType = 0;
+	_getBack = 0;
+	_invOpen = 0;
+	_mainMode = 0;
+	_pickUp = 0;
+	_lastInvPos = 0;
+	_examAgain = 0;
+	_newTextLine = 0;
+	_openedOb = 0;
+	_openedType = 0;
+	_mapAdX = 0;
+	_mapAdY = 0;
+	_mapOffsetX = 104;
+	_mapOffsetY = 38;
+	_mapXStart = 0;
+	_mapYStart = 0;
+	_mapXSize = 0;
+	_mapYSize = 0;
+	_haveDoneObs = 0;
+	_manIsOffScreen = 0;
+	_facing = 0;
+	_leaveDirection = 0;
+	_turnToFace = 0;
+	_turnDirection = 0;
+	_mainTimer = 0;
+	_introCount = 0;
+	_currentKey = 0;
+	_timerCount = 0;
+	_mapX = 0;
+	_mapY = 0;
+	_ryanX = 0;
+	_ryanY = 0;
+	_lastFlag = 0;
+	_destPos = 0;
+	_realLocation = 0;
+	_roomNum = 0;
+	_nowInNewRoom = 0;
+	_resetManXY = 0;
+	_newLocation = 0xFF;
+	_autoLocation = 0xFF;
+	_mouseX = 0;
+	_mouseY = 0;
+	_mouseButton = 0;
+	_oldButton = 0;
+	_oldX = 0;
+	_oldY = 0;
+	_oldPointerX = 0;
+	_oldPointerY = 0;
+	_delHereX = 0;
+	_delHereY = 0;
+	_pointerXS = 32;
+	_pointerYS = 32;
+	_delXS = 0;
+	_delYS = 0;
+	_pointerFrame = 0;
+	_pointerPower = 0;
+	_pointerMode = 0;
+	_pointerSpeed = 0;
+	_pointerCount = 0;
+	_inMapArea = 0;
+	_talkMode = 0;
+	_talkPos = 0;
+	_character = 0;
+	_watchDump = 0;
+	_logoNum = 0;
+	_oldLogoNum = 0;
+	_pressed = 0;
+	_pressPointer = 0;
+	_graphicPress = 0;
+	_pressCount = 0;
+	_lightCount = 0;
+	_folderPage = 0;
+	_diaryPage = 0;
+	_menuCount = 0;
+	_symbolTopX = 0;
+	_symbolTopNum = 0;
+	_symbolTopDir = 0;
+	_symbolBotX = 0;
+	_symbolBotNum = 0;
+	_symbolBotDir = 0;
+	_dumpX = 0;
+	_dumpY = 0;
+	_walkAndExam = 0;
+	_walkExamType = 0;
+	_walkExamNum = 0;
+	_cursLocX = 0;
+	_cursLocY = 0;
+	_curPos = 0;
+	_monAdX = 0;
+	_monAdY = 0;
+	_timeCount = 0;
+	_countToTimed = 0;
+	_timedY = 0;
+	_timedX = 0;
+	_needToDumpTimed = 0;
+	_loadingOrSave = 0;
+	_currentSlot = 0;
+	_cursorPos = 0;
+	_colourPos = 0;
+	_fadeDirection = 0;
+	_numToFade = 0;
+	_fadeCount = 0;
+	_addToGreen = 0;
+	_addToRed = 0;
+	_addToBlue = 0;
+	_lastSoundReel = 0;
+	_lastHardKey = 0;
+	_bufferIn = 0;
+	_bufferOut = 0;
+	_blinkFrame = 23;
+	_blinkCount = 0;
+	_reAssesChanges = 0;
+	_pointersPath = 0;
+	_mansPath = 0;
+	_pointerFirstPath = 0;
+	_finalDest = 0;
+	_destination = 0;
+	_lineStartX = 0;
+	_lineStartY = 0;
+	_lineEndX = 0;
+	_lineEndY = 0;
+	_linePointer = 0;
+	_lineDirection = 0;
+	_lineLength = 0;
 }
 
 } // End of namespace DreamGen
diff --git a/engines/dreamweb/keypad.cpp b/engines/dreamweb/keypad.cpp
index 5f83ddb..5ef6ba7 100644
--- a/engines/dreamweb/keypad.cpp
+++ b/engines/dreamweb/keypad.cpp
@@ -33,9 +33,9 @@ void DreamBase::putUnderMenu() {
 }
 
 void DreamBase::singleKey(uint8 key, uint16 x, uint16 y) {
-	if (key == data.byte(kGraphicpress)) {
+	if (key == _graphicPress) {
 		key += 11;
-		if (data.byte(kPresscount) < 8)
+		if (_pressCount < 8)
 			key -= 11;
 	}
 	key -= 20;
@@ -58,8 +58,8 @@ void DreamBase::showKeypad() {
 	singleKey(30, kKeypadx+53, kKeypady+41);
 	singleKey(31, kKeypadx+9,  kKeypady+59);
 	singleKey(32, kKeypadx+31, kKeypady+59);
-	if (data.byte(kLightcount)) {
-		--data.byte(kLightcount);
+	if (_lightCount) {
+		--_lightCount;
 		uint8 frameIndex;
 		uint16 y;
 		if (data.byte(kLockstatus)) {
@@ -69,7 +69,7 @@ void DreamBase::showKeypad() {
 			frameIndex = 41;
 			y = kKeypady+4+63;
 		}
-		if ((data.byte(kLightcount) >= 60) && (data.byte(kLightcount) < 100))
+		if ((_lightCount >= 60) && (_lightCount < 100))
 			--frameIndex;
 		showFrame(_tempGraphics, kKeypadx+60, y, frameIndex, 0);
 	}
@@ -82,14 +82,14 @@ bool DreamBase::isItRight(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3
 }
 
 void DreamBase::addToPressList() {
-	if (data.word(kPresspointer) == 5)
+	if (_pressPointer == 5)
 		return;
-	uint8 pressed = data.byte(kPressed);
+	uint8 pressed = _pressed;
 	if (pressed == 10)
 		pressed = 0;
 
-	_pressList[data.word(kPresspointer)] = pressed;
-	++data.word(kPresspointer);
+	_pressList[_pressPointer] = pressed;
+	++_pressPointer;
 }
 
 void DreamBase::enterCode(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3) {
@@ -120,44 +120,44 @@ void DreamBase::enterCode(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3
 	showPointer();
 	workToScreen();
 	delPointer();
-	data.word(kPresspointer) = 0;
-	data.byte(kGetback) = 0;
+	_pressPointer = 0;
+	_getBack = 0;
 	while (true) {
 		delPointer();
 		readMouse();
 		showKeypad();
 		showPointer();
 		vSync();
-		if (data.byte(kPresscount) == 0) {
-			data.byte(kPressed) = 255;
-			data.byte(kGraphicpress) = 255;
+		if (_pressCount == 0) {
+			_pressed = 255;
+			_graphicPress = 255;
 			vSync();
 		} else
-			--data.byte(kPresscount);
+			--_pressCount;
 
 		dumpPointer();
 		dumpKeypad();
 		dumpTextLine();
 		checkCoords(keypadList);
-		if (_quitRequested || (data.byte(kGetback) == 1))
+		if (_quitRequested || (_getBack == 1))
 			break;
-		if (data.byte(kLightcount) == 1) {
+		if (_lightCount == 1) {
 			if (data.byte(kLockstatus) == 0)
 				break;
 		} else {
-			if (data.byte(kPresscount) == 40) {
+			if (_pressCount == 40) {
 				addToPressList();
-				if (data.byte(kPressed) == 11) {
+				if (_pressed == 11) {
 					if (isItRight(digit0, digit1, digit2, digit3))
 						data.byte(kLockstatus) = 0;
 					playChannel1(11);
-					data.byte(kLightcount) = 120;
-					data.word(kPresspointer) = 0;
+					_lightCount = 120;
+					_pressPointer = 0;
 				}
 			}
 		}
 	}
-	data.byte(kManisoffscreen) = 0;
+	_manIsOffScreen = 0;
 	getRidOfTemp();
 	restoreReels();
 	redrawMainScrn();
@@ -210,14 +210,14 @@ void DreamBase::buttonEnter() {
 
 void DreamBase::buttonPress(uint8 buttonId) {
 	uint8 commandType = 100 + buttonId;
-	if (data.byte(kCommandtype) != commandType) {
-		data.byte(kCommandtype) = commandType;
+	if (_commandType != commandType) {
+		_commandType = commandType;
 		commandOnly(buttonId + 4);
 	}
-	if ((data.word(kMousebutton) & 1) && (data.word(kMousebutton) != data.word(kOldbutton))) {
-		data.byte(kPressed) = buttonId;
-		data.byte(kGraphicpress) = buttonId + 21;
-		data.byte(kPresscount) = 40;
+	if ((_mouseButton & 1) && (_mouseButton != _oldButton)) {
+		_pressed = buttonId;
+		_graphicPress = buttonId + 21;
+		_pressCount = 40;
 		if (buttonId != 11)
 			playChannel1(10);
 	}
@@ -233,35 +233,35 @@ void DreamBase::dumpKeypad() {
 }
 
 void DreamBase::dumpSymbol() {
-	data.byte(kNewtextline) = 0;
+	_newTextLine = 0;
 	multiDump(kSymbolx, kSymboly + 20, 104, 60);
 }
 
 void DreamBase::dumpSymBox() {
-	if (data.word(kDumpx) != 0xFFFF) {
-		multiDump(data.word(kDumpx), data.word(kDumpy), 30, 77);
-		data.word(kDumpx) = 0xFFFF;
+	if (_dumpX != 0xFFFF) {
+		multiDump(_dumpX, _dumpY, 30, 77);
+		_dumpX = 0xFFFF;
 	}
 }
 
 void DreamBase::quitSymbol() {
-	if (data.byte(kSymboltopx) != 24 || data.byte(kSymbolbotx) != 24) {
+	if (_symbolTopX != 24 || _symbolBotX != 24) {
 		blank();
 		return;
 	};
 
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(18);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;	// notqs
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 } // End of namespace DreamGen
diff --git a/engines/dreamweb/monitor.cpp b/engines/dreamweb/monitor.cpp
index 471d5ec..375ab9f 100644
--- a/engines/dreamweb/monitor.cpp
+++ b/engines/dreamweb/monitor.cpp
@@ -66,8 +66,8 @@ void DreamBase::useMon() {
 	turnOnPower();
 	fadeUpYellows();
 	fadeUpMonFirst();
-	data.word(kMonadx) = 76;
-	data.word(kMonady) = 141;
+	_monAdX = 76;
+	_monAdY = 141;
 	monMessage(1);
 	hangOnCurs(120);
 	monMessage(2);
@@ -76,15 +76,15 @@ void DreamBase::useMon() {
 	hangOnCurs(100);
 	printLogo();
 	scrollMonitor();
-	data.word(kBufferin) = 0;
-	data.word(kBufferout) = 0;
+	_bufferIn = 0;
+	_bufferOut = 0;
 	bool stop = false;
 	do {
-		uint16 oldMonadx = data.word(kMonadx);
-		uint16 oldMonady = data.word(kMonady);
+		uint16 oldMonadx = _monAdX;
+		uint16 oldMonady = _monAdY;
 		input();
-		data.word(kMonadx) = oldMonadx;
-		data.word(kMonady) = oldMonady;
+		_monAdX = oldMonadx;
+		_monAdY = oldMonady;
 		stop = execCommand();
 		if (_quitRequested) //TODO : Check why it crashes when put before the execcommand
 			break;
@@ -96,9 +96,9 @@ void DreamBase::useMon() {
 	_textFile2.clear();
 	_textFile3.clear();
 
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	playChannel1(26);
-	data.byte(kManisoffscreen) = 0;
+	_manIsOffScreen = 0;
 	restoreAll();
 	redrawMainScrn();
 	workToScreenM();
@@ -171,8 +171,8 @@ bool DreamBase::execCommand() {
 
 
 void DreamBase::monitorLogo() {
-	if (data.byte(kLogonum) != data.byte(kOldlogonum)) {
-		data.byte(kOldlogonum) = data.byte(kLogonum);
+	if (_logoNum != _oldLogoNum) {
+		_oldLogoNum = _logoNum;
 		//fadeDownMon(); // FIXME: Commented out in ASM
 		printLogo();
 		printUnderMon();
@@ -194,12 +194,12 @@ void DreamBase::printLogo() {
 
 void DreamBase::input() {
 	memset(_inputLine, 0, 64);
-	data.word(kCurpos) = 0;
-	printChar(_tempCharset, data.word(kMonadx), data.word(kMonady), '>', 0, NULL, NULL);
-	multiDump(data.word(kMonadx), data.word(kMonady), 6, 8);
-	data.word(kMonadx) += 6;
-	data.word(kCurslocx) = data.word(kMonadx);
-	data.word(kCurslocy) = data.word(kMonady);
+	_curPos = 0;
+	printChar(_tempCharset, _monAdX, _monAdY, '>', 0, NULL, NULL);
+	multiDump(_monAdX, _monAdY, 6, 8);
+	_monAdX += 6;
+	_cursLocX = _monAdX;
+	_cursLocY = _monAdY;
 	while (true) {
 		printCurs();
 		vSync();
@@ -207,31 +207,31 @@ void DreamBase::input() {
 		readKey();
 		if (_quitRequested)
 			return;
-		uint8 currentKey = data.byte(kCurrentkey);
+		uint8 currentKey = _currentKey;
 		if (currentKey == 0)
 			continue;
 		if (currentKey == 13)
 			return;
 		if (currentKey == 8) {
-			if (data.word(kCurpos) > 0)
+			if (_curPos > 0)
 				delChar();
 			continue;
 		}
-		if (data.word(kCurpos) == 28)
+		if (_curPos == 28)
 			continue;
-		if ((currentKey == 32) && (data.word(kCurpos) == 0))
+		if ((currentKey == 32) && (_curPos == 0))
 			continue;
 		currentKey = makeCaps(currentKey);
-		_inputLine[data.word(kCurpos) * 2 + 0] = currentKey;
+		_inputLine[_curPos * 2 + 0] = currentKey;
 		if (currentKey > 'Z')
 			continue;
-		multiGet(_mapStore + data.word(kCurpos) * 256, data.word(kMonadx), data.word(kMonady), 8, 8);
+		multiGet(_mapStore + _curPos * 256, _monAdX, _monAdY, 8, 8);
 		uint8 charWidth;
-		printChar(_tempCharset, data.word(kMonadx), data.word(kMonady), currentKey, 0, &charWidth, NULL);
-		_inputLine[data.word(kCurpos) * 2 + 1] = charWidth;
-		data.word(kMonadx) += charWidth;
-		++data.word(kCurpos);
-		data.word(kCurslocx) += charWidth;
+		printChar(_tempCharset, _monAdX, _monAdY, currentKey, 0, &charWidth, NULL);
+		_inputLine[_curPos * 2 + 1] = charWidth;
+		_monAdX += charWidth;
+		++_curPos;
+		_cursLocX += charWidth;
 	}
 }
 
@@ -243,20 +243,20 @@ byte DreamBase::makeCaps(byte c) {
 }
 
 void DreamBase::delChar() {
-	--data.word(kCurpos);
-	_inputLine[data.word(kCurpos) * 2] = 0;
-	uint8 width = _inputLine[data.word(kCurpos) * 2 + 1];
-	data.word(kMonadx) -= width;
-	data.word(kCurslocx) -= width;
-	uint16 offset = data.word(kCurpos);
+	--_curPos;
+	_inputLine[_curPos * 2] = 0;
+	uint8 width = _inputLine[_curPos * 2 + 1];
+	_monAdX -= width;
+	_cursLocX -= width;
+	uint16 offset = _curPos;
 	offset = ((offset & 0x00ff) << 8) | ((offset & 0xff00) >> 8);
-	multiPut(_mapStore + offset, data.word(kMonadx), data.word(kMonady), 8, 8);
-	multiDump(data.word(kMonadx), data.word(kMonady), 8, 8);
+	multiPut(_mapStore + offset, _monAdX, _monAdY, 8, 8);
+	multiDump(_monAdX, _monAdY, 8, 8);
 }
 
 void DreamBase::printCurs() {
-	uint16 x = data.word(kCurslocx);
-	uint16 y = data.word(kCurslocy);
+	uint16 x = _cursLocX;
+	uint16 y = _cursLocY;
 	uint16 height;
 	if (_foreignRelease) {
 		y -= 3;
@@ -264,15 +264,15 @@ void DreamBase::printCurs() {
 	} else
 		height = 8;
 	multiGet(_textUnder, x, y, 6, height);
-	++data.word(kMaintimer);
-	if ((data.word(kMaintimer) & 16) == 0)
+	++_mainTimer;
+	if ((_mainTimer & 16) == 0)
 		showFrame(_tempCharset, x, y, '/' - 32, 0);
 	multiDump(x - 6, y, 12, height);
 }
 
 void DreamBase::delCurs() {
-	uint16 x = data.word(kCurslocx);
-	uint16 y = data.word(kCurslocy);
+	uint16 x = _cursLocX;
+	uint16 y = _cursLocY;
 	uint16 width = 6;
 	uint16 height;
 	if (_foreignRelease) {
@@ -433,7 +433,7 @@ const char *DreamBase::getKeyAndLogo(const char *foundString) {
 
 	if (monitorKeyEntries[keyNum].keyAssigned == 1) {
 		// Key OK
-		data.byte(kLogonum) = newLogo;
+		_logoNum = newLogo;
 		return foundString + 4;
 	} else {
 		monMessage(12);	// "Access denied, key required -"
@@ -476,7 +476,7 @@ void DreamBase::dirCom() {
 		return;
 	}
 
-	data.byte(kLogonum) = 0;
+	_logoNum = 0;
 	memcpy(_currentFile+1, "ROOT        ", 12);
 	monitorLogo();
 	scrollMonitor();
@@ -564,7 +564,7 @@ void DreamBase::read() {
 	// "keyok1"
 	found = searchForString(name, found);
 	if (!found) {
-		data.byte(kLogonum) = data.byte(kOldlogonum);
+		_logoNum = _oldLogoNum;
 		monMessage(11);
 		return;
 	}
@@ -615,11 +615,11 @@ void DreamBase::signOn() {
 
 	monMessage(15);
 
-	uint16 prevX = data.word(kMonadx);
-	uint16 prevY = data.word(kMonady);
+	uint16 prevX = _monAdX;
+	uint16 prevY = _monAdY;
 	input();	// password input
-	data.word(kMonadx) = prevX;
-	data.word(kMonady) = prevY;
+	_monAdX = prevX;
+	_monAdY = prevY;
 
 	inputLine = (const char *)_inputLine;
 	inputLine.toUppercase();
diff --git a/engines/dreamweb/newplace.cpp b/engines/dreamweb/newplace.cpp
index 43b334c..3093968 100644
--- a/engines/dreamweb/newplace.cpp
+++ b/engines/dreamweb/newplace.cpp
@@ -28,17 +28,17 @@ void DreamBase::newPlace() {
 	if (data.byte(kNeedtotravel) == 1) {
 		data.byte(kNeedtotravel) = 0;
 		selectLocation();
-	} else if (data.byte(kAutolocation) != 0xFF) {
-		data.byte(kNewlocation) = data.byte(kAutolocation);
-		data.byte(kAutolocation) = 0xFF;
+	} else if (_autoLocation != 0xFF) {
+		_newLocation = _autoLocation;
+		_autoLocation = 0xFF;
 	}
 }
 
 void DreamBase::selectLocation() {
-	data.byte(kInmaparea) = 0;
+	_inMapArea = 0;
 	clearBeforeLoad();
-	data.byte(kGetback) = 0;
-	data.byte(kPointerframe) = 22;
+	_getBack = 0;
+	_pointerFrame = 22;
 	readCityPic();
 	showCity();
 	getRidOfTemp();
@@ -50,15 +50,15 @@ void DreamBase::selectLocation() {
 	showExit();
 	locationPic();
 	underTextLine();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	readMouse();
-	data.byte(kPointerframe) = 0;
+	_pointerFrame = 0;
 	showPointer();
 	workToScreen();
 	playChannel0(9, 255);
-	data.byte(kNewlocation) = 255;
+	_newLocation = 255;
 
-	while (data.byte(kNewlocation) == 255) {
+	while (_newLocation == 255) {
 		if (_quitRequested)
 			break;
 
@@ -69,7 +69,7 @@ void DreamBase::selectLocation() {
 		dumpPointer();
 		dumpTextLine();
 
-		if (data.byte(kGetback) == 1)
+		if (_getBack == 1)
 			break;
 
 		RectWithCallback<DreamBase> destList[] = {
@@ -84,9 +84,9 @@ void DreamBase::selectLocation() {
 		checkCoords(destList);
 	}
 
-	if (_quitRequested || data.byte(kGetback) == 1 || data.byte(kNewlocation) == data.byte(kLocation)) {
-		data.byte(kNewlocation) = data.byte(kReallocation);
-		data.byte(kGetback) = 0;
+	if (_quitRequested || _getBack == 1 || _newLocation == data.byte(kLocation)) {
+		_newLocation = _realLocation;
+		_getBack = 0;
 	}
 
 	getRidOfTemp();
@@ -103,14 +103,14 @@ void DreamBase::showCity() {
 }
 
 void DreamBase::lookAtPlace() {
-	if (data.byte(kCommandtype) != 224) {
-		data.byte(kCommandtype) = 224;
+	if (_commandType != 224) {
+		_commandType = 224;
 		commandOnly(27);
 	}
 
-	if (!(data.word(kMousebutton) & 1) ||
-		data.word(kMousebutton) == data.word(kOldbutton) ||
-		data.byte(kDestpos) >= 15)
+	if (!(_mouseButton & 1) ||
+		_mouseButton == _oldButton ||
+		_destPos >= 15)
 		return; // noinfo
 
 	delPointer();
@@ -121,14 +121,14 @@ void DreamBase::lookAtPlace() {
 	if (_foreignRelease)
 		showFrame(_tempGraphics3, 60, 72+55+21, 4, 0);
 
-	const uint8 *string = (const uint8 *)_travelText.getString(data.byte(kDestpos));
+	const uint8 *string = (const uint8 *)_travelText.getString(_destPos);
 	findNextColon(&string);
 	uint16 y = (_foreignRelease) ? 84 + 4 : 84;
 	printDirect(&string, 63, &y, 191, 191 & 1);
 	workToScreenM();
 	hangOnP(500);
-	data.byte(kPointermode) = 0;
-	data.byte(kPointerframe) = 0;
+	_pointerMode = 0;
+	_pointerFrame = 0;
 	putUnderCentre();
 	workToScreenM();
 }
@@ -143,17 +143,17 @@ void DreamBase::putUnderCentre() {
 
 void DreamBase::locationPic() {
 	const int roomPics[] = { 5, 0, 3, 2, 4, 1, 10, 9, 8, 6, 11, 4, 7, 7, 0 };
-	byte picture = roomPics[data.byte(kDestpos)];
+	byte picture = roomPics[_destPos];
 
 	if (picture >= 6)
 		showFrame(_tempGraphics2, 104, 138 + 14, picture - 6, 0);	// Second slot
 	else
 		showFrame(_tempGraphics,  104, 138 + 14, picture + 4, 0);
 
-	if (data.byte(kDestpos) == data.byte(kReallocation))
+	if (_destPos == _realLocation)
 		showFrame(_tempGraphics, 104, 140 + 14, 3, 0);	// Currently in this location
 
-	const uint8 *string = (const uint8 *)_travelText.getString(data.byte(kDestpos));
+	const uint8 *string = (const uint8 *)_travelText.getString(_destPos);
 	DreamBase::printDirect(string, 50, 20, 241, 241 & 1);
 }
 
@@ -164,21 +164,21 @@ void DreamBase::showArrows() {
 }
 
 void DreamBase::nextDest() {
-	if (data.byte(kCommandtype) != 218) {
-		data.byte(kCommandtype) = 218;
+	if (_commandType != 218) {
+		_commandType = 218;
 		commandOnly(28);
 	}
 
-	if (!(data.word(kMousebutton) & 1) || data.word(kOldbutton) == 1)
+	if (!(_mouseButton & 1) || _oldButton == 1)
 		return;	// nodu
 
 	do {
-		data.byte(kDestpos)++;
-		if (data.byte(kDestpos) == 15)
-			data.byte(kDestpos) = 0;	// last destination
-	} while (!getLocation(data.byte(kDestpos)));
+		_destPos++;
+		if (_destPos == 15)
+			_destPos = 0;	// last destination
+	} while (!getLocation(_destPos));
 
-	data.byte(kNewtextline) = 1;
+	_newTextLine = 1;
 	delTextLine();
 	delPointer();
 	showPanel();
@@ -193,21 +193,21 @@ void DreamBase::nextDest() {
 }
 
 void DreamBase::lastDest() {
-	if (data.byte(kCommandtype) != 219) {
-		data.byte(kCommandtype) = 219;
+	if (_commandType != 219) {
+		_commandType = 219;
 		commandOnly(29);
 	}
 
-	if (!(data.word(kMousebutton) & 1) || data.word(kOldbutton) == 1)
+	if (!(_mouseButton & 1) || _oldButton == 1)
 		return;	// nodd
 
 	do {
-		data.byte(kDestpos)--;
-		if (data.byte(kDestpos) == 0xFF)
-			data.byte(kDestpos) = 15;	// first destination
-	} while (!getLocation(data.byte(kDestpos)));
+		_destPos--;
+		if (_destPos == 0xFF)
+			_destPos = 15;	// first destination
+	} while (!getLocation(_destPos));
 
-	data.byte(kNewtextline) = 1;
+	_newTextLine = 1;
 	delTextLine();
 	delPointer();
 	showPanel();
@@ -222,15 +222,15 @@ void DreamBase::lastDest() {
 }
 
 void DreamBase::destSelect() {
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(30);
 	}
 
-	if (!(data.word(kMousebutton) & 1) || data.word(kOldbutton) == 1)
+	if (!(_mouseButton & 1) || _oldButton == 1)
 		return;	// notrav
 
-	data.byte(kNewlocation) = data.byte(kDestpos);
+	_newLocation = _destPos;
 }
 
 uint8 DreamBase::getLocation(uint8 index) {
diff --git a/engines/dreamweb/object.cpp b/engines/dreamweb/object.cpp
index 6e5ae8a..57e9c9c 100644
--- a/engines/dreamweb/object.cpp
+++ b/engines/dreamweb/object.cpp
@@ -61,7 +61,7 @@ bool DreamBase::isItWorn(const DynObject *object) {
 }
 
 void DreamBase::wornError() {
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	delPointer();
 	printMessage(76, 21, 57, 240, false);
 	workToScreenM();
@@ -69,7 +69,7 @@ void DreamBase::wornError() {
 	showPanel();
 	showMan();
 	examIcon();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	workToScreenM();
 }
 
@@ -95,10 +95,10 @@ void DreamBase::obToInv(uint8 index, uint8 flag, uint16 x, uint16 y) {
 }
 
 void DreamBase::obPicture() {
-	if (data.byte(kObjecttype) == kSetObjectType1)
+	if (_objectType == kSetObjectType1)
 		return;
-	uint8 frame = 3 * data.byte(kCommand) + 1;
-	if (data.byte(kObjecttype) == kExObjectType)
+	uint8 frame = 3 * _command + 1;
+	if (_objectType == kExObjectType)
 		showFrame(_exFrames, 160, 68, frame, 0x80);
 	else
 		showFrame(_freeFrames, 160, 68, frame, 0x80);
@@ -116,19 +116,19 @@ void DreamBase::obIcons() {
 }
 
 void DreamBase::examineOb(bool examineAgain) {
-	data.byte(kPointermode) = 0;
-	data.word(kTimecount) = 0;
+	_pointerMode = 0;
+	_timeCount = 0;
 
 	while (true) {
 		if (examineAgain) {
-			data.byte(kInmaparea) = 0;
-			data.byte(kExamagain) = 0;
-			data.byte(kOpenedob) = 255;
-			data.byte(kOpenedtype) = 255;
-			data.byte(kInvopen) = 0;
-			data.byte(kObjecttype) = data.byte(kCommandtype);
-			data.byte(kItemframe) = 0;
-			data.byte(kPointerframe) = 0;
+			_inMapArea = 0;
+			_examAgain = 0;
+			_openedOb = 255;
+			_openedType = 255;
+			_invOpen = 0;
+			_objectType = _commandType;
+			_itemFrame = 0;
+			_pointerFrame = 0;
 			createPanel();
 			showPanel();
 			showMan();
@@ -137,7 +137,7 @@ void DreamBase::examineOb(bool examineAgain) {
 			obPicture();
 			describeOb();
 			underTextLine();
-			data.byte(kCommandtype) = 255;
+			_commandType = 255;
 			readMouse();
 			showPointer();
 			workToScreen();
@@ -151,9 +151,9 @@ void DreamBase::examineOb(bool examineAgain) {
 		dumpPointer();
 		dumpTextLine();
 		delPointer();
-		data.byte(kGetback) = 0;
+		_getBack = 0;
 
-		switch (data.byte(kInvopen)) {
+		switch (_invOpen) {
 		case 0: {
 			RectWithCallback<DreamBase> examList[] = {
 				{ 273,320,157,198,&DreamBase::getBackFromOb },
@@ -196,20 +196,20 @@ void DreamBase::examineOb(bool examineAgain) {
 
 		if (_quitRequested)
 			break;
-		if (data.byte(kExamagain) != 0)
+		if (_examAgain != 0)
 			examineAgain = true;
-		else if (data.byte(kGetback) != 0)
+		else if (_getBack != 0)
 			break;
 	}
 
-	data.byte(kPickup) = 0;
-	if (data.word(kWatchingtime) != 0 || data.byte(kNewlocation) == 255) {
+	_pickUp = 0;
+	if (data.word(kWatchingtime) != 0 || _newLocation == 255) {
 		// isWatching
 		makeMainScreen();
 	}
 
-	data.byte(kInvopen) = 0;
-	data.byte(kOpenedob) = 255;
+	_invOpen = 0;
+	_openedOb = 255;
 }
 
 void DreamBase::inventory() {
@@ -218,20 +218,20 @@ void DreamBase::inventory() {
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 239) {
-		data.byte(kCommandtype) = 239;
+	if (_commandType != 239) {
+		_commandType = 239;
 		commandOnly(32);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;
-	if (!(data.word(kMousebutton) & 1)) // only on left mouse button
+	if (!(_mouseButton & 1)) // only on left mouse button
 		return;
 
 
-	data.word(kTimecount) = 0;
-	data.byte(kPointermode) = 0;
-	data.byte(kInmaparea) = 0;
+	_timeCount = 0;
+	_pointerMode = 0;
+	_inMapArea = 0;
 	animPointer();
 	createPanel();
 	showPanel();
@@ -239,14 +239,14 @@ void DreamBase::inventory() {
 	showMan();
 	showExit();
 	underTextLine();
-	data.byte(kPickup) = 0;
-	data.byte(kInvopen) = 2;
+	_pickUp = 0;
+	_invOpen = 2;
 	openInv();
 	readMouse();
 	showPointer();
 	workToScreen();
 	delPointer();
-	data.byte(kOpenedob) = 255;
+	_openedOb = 255;
 	examineOb(false);
 }
 
@@ -261,15 +261,15 @@ void DreamBase::transferText(uint8 from, uint8 to) {
 }
 
 void DreamBase::getBackFromOb() {
-	if (data.byte(kPickup) != 1)
+	if (_pickUp != 1)
 		getBack1();
 	else
 		blank();
 }
 
 byte DreamBase::getOpenedSlotCount() {
-	byte obj = data.byte(kOpenedob);
-	switch (data.byte(kOpenedtype)) {
+	byte obj = _openedOb;
+	switch (_openedType) {
 	case 4:
 		return getExAd(obj)->slotCount;
 	case 2:
@@ -280,8 +280,8 @@ byte DreamBase::getOpenedSlotCount() {
 }
 
 byte DreamBase::getOpenedSlotSize() {
-	byte obj = data.byte(kOpenedob);
-	switch (data.byte(kOpenedtype)) {
+	byte obj = _openedOb;
+	switch (_openedType) {
 	case 4:
 		return getExAd(obj)->slotSize;
 	case 2:
@@ -294,11 +294,11 @@ byte DreamBase::getOpenedSlotSize() {
 void DreamBase::openOb() {
 	uint8 commandLine[64] = "OBJECT NAME ONE                         ";
 
-	copyName(data.byte(kOpenedtype), data.byte(kOpenedob), commandLine);
+	copyName(_openedType, _openedOb, commandLine);
 
 	printMessage(kInventx, kInventy+86, 62, 240, false);
 
-	printDirect(commandLine, data.word(kLastxpos) + 5, kInventy+86, 220, false);
+	printDirect(commandLine, _lastXPos + 5, kInventy+86, 220, false);
 
 	fillOpen();
 	_openChangeSize = getOpenedSlotCount() * kItempicsize + kInventx;
@@ -310,8 +310,8 @@ void DreamBase::identifyOb() {
 		return;
 	}
 
-	uint16 initialX = data.word(kMousex) - data.word(kMapadx);
-	uint16 initialY = data.word(kMousey) - data.word(kMapady);
+	uint16 initialX = _mouseX - _mapAdX;
+	uint16 initialY = _mouseY - _mapAdY;
 
 	if (initialX >= 22 * 8 || initialY >= 20 * 8) {
 		blank();
@@ -321,16 +321,16 @@ void DreamBase::identifyOb() {
 	byte x = initialX & 0xFF;
 	byte y = initialY & 0xFF;
 
-	data.byte(kInmaparea) = 1;
-	data.byte(kPointerspath) = findPathOfPoint(x, y);
-	data.byte(kPointerfirstpath) = findFirstPath(x, y);
+	_inMapArea = 1;
+	_pointersPath = findPathOfPoint(x, y);
+	_pointerFirstPath = findFirstPath(x, y);
 
 	if (checkIfEx(x, y) || checkIfFree(x, y) ||
 		checkIfPerson(x, y) || checkIfSet(x, y))
 		return; // finishidentify
 
-	x = (data.word(kMousex) - data.word(kMapadx)) & 0xFF;
-	y = (data.word(kMousey) - data.word(kMapady)) & 0xFF;
+	x = (_mouseX - _mapAdX) & 0xFF;
+	y = (_mouseY - _mapAdY) & 0xFF;
 	byte flag, flagEx, type, flagX, flagY;
 
 	checkOne(x, y, &flag, &flagEx, &type, &flagX, &flagY);
@@ -342,11 +342,11 @@ void DreamBase::identifyOb() {
 }
 
 ObjectRef DreamBase::findInvPos() {
-	uint16 x = data.word(kMousex) - kInventx;
-	uint16 y = data.word(kMousey) - kInventy;
+	uint16 x = _mouseX - kInventx;
+	uint16 y = _mouseY - kInventy;
 	uint8 pos = (x / kItempicsize) + (y / kItempicsize) * 5;
 	uint8 invPos = data.byte(kRyanpage) * 10 + pos;
-	data.byte(kLastinvpos) = invPos;
+	_lastInvPos = invPos;
 	return _ryanInvList[invPos];
 }
 
@@ -357,26 +357,26 @@ void DreamBase::selectOb() {
 		return;
 	}
 
-	data.byte(kWithobject) = objectId._index;
-	data.byte(kWithtype)   = objectId._type;
+	_withObject = objectId._index;
+	_withType   = objectId._type;
 
-	if (objectId != _oldSubject || data.byte(kCommandtype) != 221) {
+	if (objectId != _oldSubject || _commandType != 221) {
 		if (objectId == _oldSubject)
-			data.byte(kCommandtype) = 221;
+			_commandType = 221;
 		_oldSubject = objectId;
 		commandWithOb(0, objectId._type, objectId._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	delPointer();
-	data.byte(kInvopen) = 0;
+	_invOpen = 0;
 	useRoutine();
 }
 
 void DreamBase::setPickup() {
-	if (data.byte(kObjecttype) != kSetObjectType1 && data.byte(kObjecttype) != kSetObjectType3) {
+	if (_objectType != kSetObjectType1 && _objectType != kSetObjectType3) {
 		// Object types 1 and 3 are excluded, so the resulting object is a DynObject
 		uint8 dummy;
 		DynObject *object = (DynObject *)getAnyAd(&dummy, &dummy);
@@ -389,12 +389,12 @@ void DreamBase::setPickup() {
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 209) {
-		data.byte(kCommandtype) = 209;
-		commandWithOb(33, data.byte(kObjecttype), data.byte(kCommand));
+	if (_commandType != 209) {
+		_commandType = 209;
+		commandWithOb(33, _objectType, _command);
 	}
 
-	if (data.word(kMousebutton) != 1 || data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton != 1 || _mouseButton == _oldButton)
 		return;
 
 	createPanel();
@@ -402,20 +402,20 @@ void DreamBase::setPickup() {
 	showMan();
 	showExit();
 	examIcon();
-	data.byte(kPickup) = 1;
-	data.byte(kInvopen) = 2;
-
-	if (data.byte(kObjecttype) != kExObjectType) {
-		assert(data.byte(kObjecttype) == kFreeObjectType);
-		data.byte(kOpenedob) = 255;
-		data.byte(kItemframe) = transferToEx(data.byte(kCommand));
-		data.byte(kObjecttype) = kExObjectType;
-		DynObject *object = getExAd(data.byte(kItemframe));
+	_pickUp = 1;
+	_invOpen = 2;
+
+	if (_objectType != kExObjectType) {
+		assert(_objectType == kFreeObjectType);
+		_openedOb = 255;
+		_itemFrame = transferToEx(_command);
+		_objectType = kExObjectType;
+		DynObject *object = getExAd(_itemFrame);
 		object->mapad[0] = 20;
 		object->mapad[1] = 255;
 	} else {
-		data.byte(kItemframe) = data.byte(kCommand);
-		data.byte(kOpenedob) = 255;
+		_itemFrame = _command;
+		_openedOb = 255;
 	}
 
 	openInv();
@@ -486,16 +486,16 @@ void DreamBase::deleteExObject(uint8 index) {
 }
 
 void DreamBase::removeObFromInv() {
-	if (data.byte(kCommand) == 100)
+	if (_command == 100)
 		return; // object doesn't exist
 
-	assert(data.byte(kObjecttype) == kExObjectType);
+	assert(_objectType == kExObjectType);
 
-	deleteExObject(data.byte(kCommand));
+	deleteExObject(_command);
 }
 
 void DreamBase::inToInv() {
-	if (!data.byte(kPickup)) {
+	if (!_pickUp) {
 		outOfInv();
 		return;
 	}
@@ -507,25 +507,25 @@ void DreamBase::inToInv() {
 		return;
 	}
 
-	subject._type = data.byte(kObjecttype);
-	subject._index = data.byte(kItemframe);
+	subject._type = _objectType;
+	subject._index = _itemFrame;
 
-	if (subject != _oldSubject || data.byte(kCommandtype) != 220) {
+	if (subject != _oldSubject || _commandType != 220) {
 		if (subject == _oldSubject)
-			data.byte(kCommandtype) = 220;
+			_commandType = 220;
 		_oldSubject = subject;
 		commandWithOb(35, subject._type, subject._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return; // notletgo2
 	
 	delPointer();
-	DynObject *object = getExAd(data.byte(kItemframe));
+	DynObject *object = getExAd(_itemFrame);
 	object->mapad[0] = 4;
 	object->mapad[1] = 255;
-	object->mapad[2] = data.byte(kLastinvpos);
-	data.byte(kPickup) = 0;
+	object->mapad[2] = _lastInvPos;
+	_pickUp = 0;
 	fillRyan();
 	readMouse();
 	showPointer();
@@ -542,26 +542,26 @@ void DreamBase::outOfInv() {
 		return;
 	}
 
-	if (data.word(kMousebutton) == 2) {
+	if (_mouseButton == 2) {
 		reExFromInv();
 		return;
 	}
 
-	if (subject != _oldSubject || data.byte(kCommandtype) != 221) {
+	if (subject != _oldSubject || _commandType != 221) {
 		if (subject == _oldSubject)
-			data.byte(kCommandtype) = 221;
+			_commandType = 221;
 		_oldSubject = subject;
 		commandWithOb(36, subject._type, subject._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	delPointer();
-	data.byte(kPickup) = 1;
+	_pickUp = 1;
 	subject = findInvPos();
-	data.byte(kObjecttype) = subject._type;
-	data.byte(kItemframe) = subject._index;
+	_objectType = subject._type;
+	_itemFrame = subject._index;
 	assert(subject._type == kExObjectType);
 	DynObject *object = getExAd(subject._index);
 	object->mapad[0] = 20;
@@ -588,21 +588,21 @@ const uint8 *DreamBase::getObTextStart() {
 	const uint8 *textBase;
 	const uint8 *text;
 	uint16 textOff;
-	if (data.byte(kObjecttype) == kFreeObjectType) {
+	if (_objectType == kFreeObjectType) {
 		textBase = (const uint8 *)_freeDesc._text;
 		textOff = kFreetext;
-		text = (const uint8 *)_freeDesc.getString(data.byte(kCommand));
-	} else if (data.byte(kObjecttype) == kSetObjectType1) {
+		text = (const uint8 *)_freeDesc.getString(_command);
+	} else if (_objectType == kSetObjectType1) {
 		textBase = (const uint8 *)_setDesc._text;
 		textOff = kSettext;
-		text = (const uint8 *)_setDesc.getString(data.byte(kCommand));
+		text = (const uint8 *)_setDesc.getString(_command);
 	} else {
 		textBase = (const uint8 *)_exText._text;
 		textOff = kExtext;
-		text = (const uint8 *)_exText.getString(data.byte(kCommand));
+		text = (const uint8 *)_exText.getString(_command);
 	}
 
-	if (data.byte(kObjecttype) != kSetObjectType1)
+	if (_objectType != kSetObjectType1)
 		return text;
 
 	const uint8 *obname = text;
@@ -631,7 +631,7 @@ const uint8 *DreamBase::getObTextStart() {
 				// arbitrary give-up counter
 				// FIXME: Make this more precise to avoid reading out of bounds
 				if (text - (textBase - textOff) >= 8000) {
-					warning("Object description for %d/%d not found", data.byte(kObjecttype), data.byte(kCommand));
+					warning("Object description for %d/%d not found", _objectType, _command);
 					return obname;
 				}
 			}
@@ -654,16 +654,16 @@ const uint8 *DreamBase::getObTextStart() {
 }
 
 void DreamBase::dropObject() {
-	if (data.byte(kCommandtype) != 223) {
-		data.byte(kCommandtype) = 223;
-		if (!data.byte(kPickup)) {
+	if (_commandType != 223) {
+		_commandType = 223;
+		if (!_pickUp) {
 			blank();
 			return;
 		}
-		commandWithOb(37, data.byte(kObjecttype), data.byte(kItemframe));
+		commandWithOb(37, _objectType, _itemFrame);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	if (isItWorn(getEitherAdCPP())) {
@@ -671,9 +671,9 @@ void DreamBase::dropObject() {
 		return;
 	}
 
-	if (data.byte(kReallocation) != 47) {
+	if (_realLocation != 47) {
 		byte flag, flagEx, type, flagX, flagY;
-		checkOne(data.byte(kRyanx) + 12, data.byte(kRyany) + 12, &flag, &flagEx, &type, &flagX, &flagY);
+		checkOne(_ryanX + 12, _ryanY + 12, &flag, &flagEx, &type, &flagX, &flagY);
 
 		if (flag >= 2) {
 			dropError();
@@ -684,26 +684,26 @@ void DreamBase::dropObject() {
 		return;
 	}
 
-	if (data.byte(kMapxsize) == 64 && data.byte(kMapysize) == 64) {
+	if (_mapXSize == 64 && _mapYSize == 64) {
 		// Inside lift
 		dropError();
 		return;
 	}
 
-	if (compare(data.byte(kItemframe), 4, "GUNA") || compare(data.byte(kItemframe), 4, "SHLD")) {
+	if (compare(_itemFrame, 4, "GUNA") || compare(_itemFrame, 4, "SHLD")) {
 		cantDrop();
 		return;
 	}
 
-	data.byte(kObjecttype) = 4;
-	DynObject *object = getExAd(data.byte(kItemframe));
+	_objectType = 4;
+	DynObject *object = getExAd(_itemFrame);
 	object->mapad[0] = 0;
-	object->mapad[1] = ((data.byte(kRyanx) + 4) >> 4) + data.byte(kMapx);
-	object->mapad[2] = (data.byte(kRyanx) + 4) & 0xF;
-	object->mapad[3] = ((data.byte(kRyany) + 8) >> 4) + data.byte(kMapy);
-	object->mapad[4] = (data.byte(kRyany) + 8) & 0xF;
-	data.byte(kPickup) = 0;
-	object->currentLocation = data.byte(kReallocation);
+	object->mapad[1] = ((_ryanX + 4) >> 4) + _mapX;
+	object->mapad[2] = (_ryanX + 4) & 0xF;
+	object->mapad[3] = ((_ryanY + 8) >> 4) + _mapY;
+	object->mapad[4] = (_ryanY + 8) & 0xF;
+	_pickUp = 0;
+	object->currentLocation = _realLocation;
 }
 
 bool DreamBase::checkObjectSize() {
@@ -744,16 +744,16 @@ void DreamBase::selectOpenOb() {
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 224) {
-		data.byte(kCommandtype) = 224;
-		commandWithOb(38, data.byte(kObjecttype), data.byte(kCommand));
+	if (_commandType != 224) {
+		_commandType = 224;
+		commandWithOb(38, _objectType, _command);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
-	data.byte(kOpenedob) = data.byte(kCommand);
-	data.byte(kOpenedtype) = data.byte(kObjecttype);
+	_openedOb = _command;
+	_openedType = _objectType;
 	createPanel();
 	showPanel();
 	showMan();
@@ -770,45 +770,45 @@ void DreamBase::selectOpenOb() {
 
 void DreamBase::reExFromInv() {
 	ObjectRef objectId = findInvPos();
-	data.byte(kCommandtype) = objectId._type;
-	data.byte(kCommand)     = objectId._index;
-	data.byte(kExamagain) = 1;
-	data.byte(kPointermode) = 0;
+	_commandType = objectId._type;
+	_command     = objectId._index;
+	_examAgain = 1;
+	_pointerMode = 0;
 }
 
 void DreamBase::swapWithInv() {
 	ObjectRef subject;
-	subject._type = data.byte(kObjecttype);
-	subject._index = data.byte(kItemframe);
-	if (subject != _oldSubject || data.byte(kCommandtype) != 243) {
+	subject._type = _objectType;
+	subject._index = _itemFrame;
+	if (subject != _oldSubject || _commandType != 243) {
 		if (subject == _oldSubject)
-			data.byte(kCommandtype) = 243;
+			_commandType = 243;
 		_oldSubject = subject;
 		commandWithOb(34, subject._type, subject._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
-	byte prevType = data.byte(kObjecttype);
-	byte prevFrame = data.byte(kItemframe);
+	byte prevType = _objectType;
+	byte prevFrame = _itemFrame;
 	ObjectRef objectId = findInvPos();
-	data.byte(kItemframe) = objectId._index;
-	data.byte(kObjecttype) = objectId._type;
+	_itemFrame = objectId._index;
+	_objectType = objectId._type;
 	DynObject *object = getEitherAdCPP();
 	object->mapad[0] = 20;
 	object->mapad[1] = 255;
-	byte prevType2 = data.byte(kObjecttype);
-	byte prevFrame2 = data.byte(kItemframe);
-	data.byte(kObjecttype) = prevType;
-	data.byte(kItemframe) = prevFrame;
+	byte prevType2 = _objectType;
+	byte prevFrame2 = _itemFrame;
+	_objectType = prevType;
+	_itemFrame = prevFrame;
 	delPointer();
 	object = getEitherAdCPP();
 	object->mapad[0] = 4;
 	object->mapad[1] = 255;
-	object->mapad[2] = data.byte(kLastinvpos);
-	data.byte(kObjecttype) = prevType2;
-	data.byte(kItemframe) = prevFrame2;
+	object->mapad[2] = _lastInvPos;
+	_objectType = prevType2;
+	_itemFrame = prevFrame2;
 	fillRyan();
 	readMouse();
 	showPointer();
@@ -817,10 +817,10 @@ void DreamBase::swapWithInv() {
 }
 
 void DreamBase::useOpened() {
-	if (data.byte(kOpenedob) == 255)
+	if (_openedOb == 255)
 		return;	// cannot use opened object
 
-	if (!data.byte(kPickup)) {
+	if (!_pickUp) {
 		outOfOpen();
 		return;
 	}
@@ -832,21 +832,21 @@ void DreamBase::useOpened() {
 		return;
 	}
 
-	if (data.byte(kPickup) != 1) {
+	if (_pickUp != 1) {
 		blank();
 		return;
 	}
 
-	objectId._type = data.byte(kObjecttype);
-	objectId._index = data.byte(kItemframe);
-	if (objectId != _oldSubject || data.byte(kCommandtype) != 227) {
+	objectId._type = _objectType;
+	objectId._index = _itemFrame;
+	if (objectId != _oldSubject || _commandType != 227) {
 		if (objectId == _oldSubject)
-			data.byte(kCommandtype) = 227;
+			_commandType = 227;
 		_oldSubject = objectId;
 		commandWithOb(35, objectId._type, objectId._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	if (isItWorn(getEitherAdCPP())) {
@@ -856,8 +856,8 @@ void DreamBase::useOpened() {
 
 	delPointer();
 
-	if (data.byte(kItemframe) == data.byte(kOpenedob) &&
-		data.byte(kObjecttype) == data.byte(kOpenedtype)) {
+	if (_itemFrame == _openedOb &&
+		_objectType == _openedType) {
 		errorMessage1();
 		return;
 	}
@@ -865,12 +865,12 @@ void DreamBase::useOpened() {
 	if (!checkObjectSize())
 		return;
 
-	data.byte(kPickup) = 0;
+	_pickUp = 0;
 	DynObject *object = getEitherAdCPP();
-	object->mapad[0] = data.byte(kOpenedtype);
-	object->mapad[1] = data.byte(kOpenedob);
-	object->mapad[2] = data.byte(kLastinvpos);
-	object->mapad[3] = data.byte(kReallocation);
+	object->mapad[0] = _openedType;
+	object->mapad[1] = _openedOb;
+	object->mapad[2] = _lastInvPos;
+	object->mapad[3] = _realLocation;
 	fillOpen();
 	underTextLine();
 	readMouse();
@@ -881,7 +881,7 @@ void DreamBase::useOpened() {
 }
 
 void DreamBase::outOfOpen() {
-	if (data.byte(kOpenedob) == 255)
+	if (_openedOb == 255)
 		return;	// cannot use opened object
 
 	ObjectRef objectId = findOpenPos();
@@ -891,32 +891,32 @@ void DreamBase::outOfOpen() {
 		return;
 	}
 
-	if (objectId != _oldSubject || data.byte(kCommandtype) != 228) {
+	if (objectId != _oldSubject || _commandType != 228) {
 		if (objectId == _oldSubject)
-			data.byte(kCommandtype) = 228;
+			_commandType = 228;
 		_oldSubject = objectId;
 		commandWithOb(36, objectId._type, objectId._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;	// notletgo4
 
-	if (data.word(kMousebutton) != 1) {
-		if (data.word(kMousebutton) == 2)
+	if (_mouseButton != 1) {
+		if (_mouseButton == 2)
 			reExFromOpen();
 		return;
 	}
 
 	delPointer();
-	data.byte(kPickup) = 1;
+	_pickUp = 1;
 	objectId = findOpenPos();
-	data.byte(kObjecttype) = objectId._type;
-	data.byte(kItemframe) = objectId._index;
+	_objectType = objectId._type;
+	_itemFrame = objectId._index;
 
-	if (data.byte(kObjecttype) != kExObjectType) {
+	if (_objectType != kExObjectType) {
 		assert(objectId._type == kFreeObjectType);
-		data.byte(kItemframe) = transferToEx(objectId._index);
-		data.byte(kObjecttype) = kExObjectType;
+		_itemFrame = transferToEx(objectId._index);
+		_objectType = kExObjectType;
 	}
 
 	DynObject *object = getEitherAdCPP();
@@ -934,16 +934,16 @@ void DreamBase::outOfOpen() {
 
 void DreamBase::swapWithOpen() {
 	ObjectRef subject;
-	subject._type = data.byte(kObjecttype);
-	subject._index = data.byte(kItemframe);
-	if (subject != _oldSubject || data.byte(kCommandtype) != 242) {
+	subject._type = _objectType;
+	subject._index = _itemFrame;
+	if (subject != _oldSubject || _commandType != 242) {
 		if (subject == _oldSubject)
-			data.byte(kCommandtype) = 242;
+			_commandType = 242;
 		_oldSubject = subject;
 		commandWithOb(34, subject._type, subject._index);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	if (isItWorn(getEitherAdCPP())) {
@@ -953,8 +953,8 @@ void DreamBase::swapWithOpen() {
 
 	delPointer();
 
-	if (data.byte(kItemframe) == data.byte(kOpenedob) &&
-		data.byte(kObjecttype) == data.byte(kOpenedtype)) {
+	if (_itemFrame == _openedOb &&
+		_objectType == _openedType) {
 		errorMessage1();
 		return;
 	}
@@ -962,33 +962,33 @@ void DreamBase::swapWithOpen() {
 	if (!checkObjectSize())
 		return;
 
-	byte prevType = data.byte(kObjecttype);
-	byte prevFrame = data.byte(kItemframe);
+	byte prevType = _objectType;
+	byte prevFrame = _itemFrame;
 	ObjectRef objectId = findOpenPos();
-	data.byte(kObjecttype) = objectId._type;
-	data.byte(kItemframe)  = objectId._index;
+	_objectType = objectId._type;
+	_itemFrame  = objectId._index;
 
-	if (data.byte(kObjecttype) != kExObjectType) {
+	if (_objectType != kExObjectType) {
 		assert(objectId._type == kFreeObjectType);
-		data.byte(kItemframe) = transferToEx(objectId._index);
-		data.byte(kObjecttype) = kExObjectType;
+		_itemFrame = transferToEx(objectId._index);
+		_objectType = kExObjectType;
 	}
 
 	DynObject *object = getEitherAdCPP();
 	object->mapad[0] = 20;
 	object->mapad[1] = 255;
 
-	byte prevType2 = data.byte(kObjecttype);
-	byte prevFrame2 = data.byte(kItemframe);
-	data.byte(kObjecttype) = prevType;
-	data.byte(kItemframe) = prevFrame;
+	byte prevType2 = _objectType;
+	byte prevFrame2 = _itemFrame;
+	_objectType = prevType;
+	_itemFrame = prevFrame;
 	object = getEitherAdCPP();
-	object->mapad[0] = data.byte(kOpenedtype);
-	object->mapad[1] = data.byte(kOpenedob);
-	object->mapad[2] = data.byte(kLastinvpos);
-	object->mapad[3] = data.byte(kReallocation);
-	data.byte(kObjecttype) = prevType2;
-	data.byte(kItemframe) = prevFrame2;
+	object->mapad[0] = _openedType;
+	object->mapad[1] = _openedOb;
+	object->mapad[2] = _lastInvPos;
+	object->mapad[3] = _realLocation;
+	_objectType = prevType2;
+	_itemFrame = prevFrame2;
 	fillOpen();
 	fillRyan();
 	underTextLine();
@@ -1000,8 +1000,8 @@ void DreamBase::swapWithOpen() {
 }
 
 ObjectRef DreamBase::findOpenPos() {
-	uint8 pos = (data.word(kMousex) - kInventx) / kItempicsize;
-	data.byte(kLastinvpos) = pos;
+	uint8 pos = (_mouseX - kInventx) / kItempicsize;
+	_lastInvPos = pos;
 
 	return _openInvList[pos];
 }
@@ -1016,12 +1016,12 @@ byte DreamBase::transferToEx(uint8 from) {
 
 	memcpy(exObject, freeObject, sizeof(DynObject));
 
-	exObject->currentLocation = data.byte(kReallocation);
-	exObject->initialLocation = data.byte(kReallocation);
+	exObject->currentLocation = _realLocation;
+	exObject->initialLocation = _realLocation;
 	exObject->index = from;
 	exObject->mapad[0] = 4;
 	exObject->mapad[1] = 255;
-	exObject->mapad[2] = data.byte(kLastinvpos);
+	exObject->mapad[2] = _lastInvPos;
 
 	transferFrame(from, pos, 0);
 	transferFrame(from, pos, 1);
@@ -1053,11 +1053,11 @@ void DreamBase::findAllOpen() {
 
 	for (uint8 i = 0; i < kNumexobjects; ++i) {
 		const DynObject *obj = getExAd(i);
-		if (obj->mapad[1] != data.byte(kOpenedob))
+		if (obj->mapad[1] != _openedOb)
 			continue;
-		if (obj->mapad[0] != data.byte(kOpenedtype))
+		if (obj->mapad[0] != _openedType)
 			continue;
-		if (data.byte(kOpenedtype) != kExObjectType && obj->mapad[3] != data.byte(kReallocation))
+		if (_openedType != kExObjectType && obj->mapad[3] != _realLocation)
 			continue;
 		uint8 slot = obj->mapad[2];
 		assert(slot < 16);
@@ -1067,9 +1067,9 @@ void DreamBase::findAllOpen() {
 
 	for (uint8 i = 0; i < 80; ++i) {
 		const DynObject *obj = getFreeAd(i);
-		if (obj->mapad[1] != data.byte(kOpenedob))
+		if (obj->mapad[1] != _openedOb)
 			continue;
-		if (obj->mapad[0] != data.byte(kOpenedtype))
+		if (obj->mapad[0] != _openedType)
 			continue;
 		uint8 slot = obj->mapad[2];
 		_openInvList[slot]._index = i;
@@ -1095,8 +1095,8 @@ void DreamBase::pickupConts(uint8 from, uint8 containerEx) {
 		DynObject *exObj = getExAd(pos);
 
 		memcpy(exObj, freeObj, sizeof(DynObject));
-		exObj->currentLocation = data.byte(kReallocation);
-		exObj->initialLocation = data.byte(kReallocation);
+		exObj->currentLocation = _realLocation;
+		exObj->initialLocation = _realLocation;
 		exObj->index = index;
 		exObj->mapad[0] = 4; // kExObjectType?
 		exObj->mapad[1] = containerEx;
diff --git a/engines/dreamweb/pathfind.cpp b/engines/dreamweb/pathfind.cpp
index 8a05961..6254fe7 100644
--- a/engines/dreamweb/pathfind.cpp
+++ b/engines/dreamweb/pathfind.cpp
@@ -25,7 +25,7 @@
 namespace DreamGen {
 
 void DreamBase::turnPathOn(uint8 param) {
-	findOrMake(param, 0xff, data.byte(kRoomnum) + 100);
+	findOrMake(param, 0xff, _roomNum + 100);
 	PathNode *roomsPaths = getRoomsPaths()->nodes;
 	if (param == 0xff)
 		return;
@@ -33,7 +33,7 @@ void DreamBase::turnPathOn(uint8 param) {
 }
 
 void DreamBase::turnPathOff(uint8 param) {
-	findOrMake(param, 0x00, data.byte(kRoomnum) + 100);
+	findOrMake(param, 0x00, _roomNum + 100);
 	PathNode *roomsPaths = getRoomsPaths()->nodes;
 	if (param == 0xff)
 		return;
@@ -51,84 +51,84 @@ void DreamBase::turnAnyPathOff(uint8 param, uint8 room) {
 }
 
 RoomPaths *DreamBase::getRoomsPaths() {
-	return &_pathData[data.byte(kRoomnum)];
+	return &_pathData[_roomNum];
 }
 
 void DreamBase::faceRightWay() {
 	PathNode *paths = getRoomsPaths()->nodes;
-	uint8 dir = paths[data.byte(kManspath)].dir;
-	data.byte(kTurntoface) = dir;
-	data.byte(kLeavedirection) = dir;
+	uint8 dir = paths[_mansPath].dir;
+	_turnToFace = dir;
+	_leaveDirection = dir;
 }
 
 void DreamBase::setWalk() {
-	if (data.byte(kLinepointer) != 254) {
+	if (_linePointer != 254) {
 		// Already walking
-		data.byte(kFinaldest) = data.byte(kPointerspath);
-	} else if (data.byte(kPointerspath) == data.byte(kManspath)) {
+		_finalDest = _pointersPath;
+	} else if (_pointersPath == _mansPath) {
 		// Can't walk
 		faceRightWay();
 	} else if (data.byte(kWatchmode) == 1) {
 		// Holding reel
-		data.byte(kDestafterhold) = data.byte(kPointerspath);
+		data.byte(kDestafterhold) = _pointersPath;
 		data.byte(kWatchmode) = 2;
 	} else if (data.byte(kWatchmode) == 2) {
 		// Can't walk
 	} else {
-		data.byte(kDestination) = data.byte(kPointerspath);
-		data.byte(kFinaldest) = data.byte(kPointerspath);
-		if (data.word(kMousebutton) != 2 || data.word(kCommandtype) == 3) {
+		_destination = _pointersPath;
+		_finalDest = _pointersPath;
+		if (_mouseButton != 2 || _commandType == 3) {
 			autoSetWalk();
 		} else {
-			data.byte(kWalkandexam) = 1;
-			data.byte(kWalkexamtype) = data.byte(kCommandtype);
-			data.byte(kWalkexamnum) = data.byte(kCommand);
+			_walkAndExam = 1;
+			_walkExamType = _commandType;
+			_walkExamNum = _command;
 			autoSetWalk();
 		}
 	}
 }
 
 void DreamBase::autoSetWalk() {
-	if (data.byte(kFinaldest) == data.byte(kManspath))
+	if (_finalDest == _mansPath)
 		return;
 	const RoomPaths *roomsPaths = getRoomsPaths();
 	checkDest(roomsPaths);
-	data.word(kLinestartx) = roomsPaths->nodes[data.byte(kManspath)].x - 12;
-	data.word(kLinestarty) = roomsPaths->nodes[data.byte(kManspath)].y - 12;
-	data.word(kLineendx) = roomsPaths->nodes[data.byte(kDestination)].x - 12;
-	data.word(kLineendy) = roomsPaths->nodes[data.byte(kDestination)].y - 12;
+	_lineStartX = roomsPaths->nodes[_mansPath].x - 12;
+	_lineStartY = roomsPaths->nodes[_mansPath].y - 12;
+	_lineEndX = roomsPaths->nodes[_destination].x - 12;
+	_lineEndY = roomsPaths->nodes[_destination].y - 12;
 	bresenhams();
-	if (data.byte(kLinedirection) != 0) {
-		data.byte(kLinepointer) = data.byte(kLinelength) - 1;
-		data.byte(kLinedirection) = 1;
+	if (_lineDirection != 0) {
+		_linePointer = _lineLength - 1;
+		_lineDirection = 1;
 		return;
 	}
-	data.byte(kLinepointer) = 0;
+	_linePointer = 0;
 }
 
 void DreamBase::checkDest(const RoomPaths *roomsPaths) {
 	const PathSegment *segments = roomsPaths->segments;
-	const uint8 tmp = data.byte(kManspath) << 4;
-	uint8 destination = data.byte(kDestination);
+	const uint8 tmp = _mansPath << 4;
+	uint8 destination = _destination;
 	for (size_t i = 0; i < 24; ++i) {
 		if ((segments[i].b0 & 0xf0) == tmp &&
-		    (segments[i].b0 & 0x0f) == data.byte(kDestination)) {
-			data.byte(kDestination) = segments[i].b1 & 0x0f;
+		    (segments[i].b0 & 0x0f) == _destination) {
+			_destination = segments[i].b1 & 0x0f;
 			return;
 		}
 
 		if (((segments[i].b0 & 0x0f) << 4) == tmp &&
-		    ((segments[i].b0 & 0xf0) >> 4) == data.byte(kDestination)) {
+		    ((segments[i].b0 & 0xf0) >> 4) == _destination) {
 			destination = segments[i].b1 & 0x0f;
 		}
 	}
-	data.byte(kDestination) = destination;
+	_destination = destination;
 }
 
 void DreamBase::findXYFromPath() {
 	const PathNode *roomsPaths = getRoomsPaths()->nodes;
-	data.byte(kRyanx) = roomsPaths[data.byte(kManspath)].x - 12;
-	data.byte(kRyany) = roomsPaths[data.byte(kManspath)].y - 12;
+	_ryanX = roomsPaths[_mansPath].x - 12;
+	_ryanY = roomsPaths[_mansPath].y - 12;
 }
 
 bool DreamBase::checkIfPathIsOn(uint8 index) {
@@ -140,10 +140,10 @@ bool DreamBase::checkIfPathIsOn(uint8 index) {
 void DreamBase::bresenhams() {
 	workoutFrames();
 	Common::Point *lineData = &_lineData[0];
-	int16 startX = (int16)data.word(kLinestartx);
-	int16 startY = (int16)data.word(kLinestarty);
-	int16 endX = (int16)data.word(kLineendx);
-	int16 endY = (int16)data.word(kLineendy);
+	int16 startX = (int16)_lineStartX;
+	int16 startY = (int16)_lineStartY;
+	int16 endX = (int16)_lineEndX;
+	int16 endY = (int16)_lineEndY;
 
 	if (endX == startX) {
 		uint16 deltaY;
@@ -151,15 +151,15 @@ void DreamBase::bresenhams() {
 		if (endY < startY) {
 			deltaY = startY - endY;
 			y = (int8)endY;
-			data.byte(kLinedirection) = 1;
+			_lineDirection = 1;
 		} else {
 			deltaY = endY - startY;
 			y = (int8)startY;
-			data.byte(kLinedirection) = 0;
+			_lineDirection = 0;
 		}
 		++deltaY;
 		int8 x = (int8)startX;
-		data.byte(kLinelength) = deltaY;
+		_lineLength = deltaY;
 		for (; deltaY; --deltaY) {
 			lineData->x = x;
 			lineData->y = y;
@@ -173,14 +173,14 @@ void DreamBase::bresenhams() {
 		deltaX = startX - endX;
 		SWAP(startX, endX);
 		SWAP(startY, endY);
-		data.word(kLinestartx) = (uint16)startX;
-		data.word(kLinestarty) = (uint16)startY;
-		data.word(kLineendx) = (uint16)endX;
-		data.word(kLineendy) = (uint16)endY;
-		data.byte(kLinedirection) = 1;
+		_lineStartX = (uint16)startX;
+		_lineStartY = (uint16)startY;
+		_lineEndX = (uint16)endX;
+		_lineEndY = (uint16)endY;
+		_lineDirection = 1;
 	} else {
 		deltaX = endX - startX;
-		data.byte(kLinedirection) = 0;
+		_lineDirection = 0;
 	}
 
 	int16 increment;
@@ -188,7 +188,7 @@ void DreamBase::bresenhams() {
 		int8 x = (int8)startX;
 		int8 y = (int8)startY;
 		++deltaX;
-		data.byte(kLinelength) = deltaX;
+		_lineLength = deltaX;
 		for (; deltaX; --deltaX) {
 			lineData->x = x;
 			lineData->y = y;
@@ -225,7 +225,7 @@ void DreamBase::bresenhams() {
 	++delta1;
 	int8 x = (int8)startX;
 	int8 y = (int8)startY;
-	data.byte(kLinelength) = delta1;
+	_lineLength = delta1;
 	if (lineRoutine != 1) {
 		for (; delta1; --delta1) {
 			lineData->x = x;
@@ -261,10 +261,10 @@ void DreamBase::workoutFrames() {
 
 	// We have to use signed arithmetic here because these values can
 	// be slightly negative when walking off-screen
-	int lineStartX = (int16)data.word(kLinestartx);
-	int lineStartY = (int16)data.word(kLinestarty);
-	int lineEndX = (int16)data.word(kLineendx);
-	int lineEndY = (int16)data.word(kLineendy);
+	int lineStartX = (int16)_lineStartX;
+	int lineStartY = (int16)_lineStartY;
+	int lineEndX = (int16)_lineEndX;
+	int lineEndY = (int16)_lineEndY;
 
 
 	diffx = ABS(lineStartX - lineEndX);
@@ -302,12 +302,12 @@ void DreamBase::workoutFrames() {
 		}
 	}
 
-	data.byte(kTurntoface) = tmp & 7;
-	data.byte(kTurndirection) = 0;
+	_turnToFace = tmp & 7;
+	_turnDirection = 0;
 }
 
 byte DreamBase::findFirstPath(byte x, byte y) {
-	PathNode *paths = _pathData[data.byte(kRoomnum)].nodes;
+	PathNode *paths = _pathData[_roomNum].nodes;
 
 	for (uint8 index = 0; index < 12; index++) {
 		if (paths[index].x1 == 0xff && paths[index].y1 == 0xff)
@@ -326,7 +326,7 @@ byte DreamBase::findFirstPath(byte x, byte y) {
 }
 
 byte DreamBase::findPathOfPoint(byte x, byte y) {
-	PathNode *paths = _pathData[data.byte(kRoomnum)].nodes;
+	PathNode *paths = _pathData[_roomNum].nodes;
 
 	for (uint8 index = 0; index < 12; index++) {
 		if (paths[index].on != 0xff)
diff --git a/engines/dreamweb/people.cpp b/engines/dreamweb/people.cpp
index 5b04e5b..0ab39ee 100644
--- a/engines/dreamweb/people.cpp
+++ b/engines/dreamweb/people.cpp
@@ -130,12 +130,12 @@ void DreamBase::setupInitialReelRoutines() {
 
 void DreamBase::updatePeople() {
 	_peopleList.clear();
-	++data.word(kMaintimer);
+	++_mainTimer;
 
 	for (int i = 0; _reelRoutines[i].reallocation != 255; ++i) {
-		if (_reelRoutines[i].reallocation == data.byte(kReallocation) &&
-		        _reelRoutines[i].mapX == data.byte(kMapx) &&
-		        _reelRoutines[i].mapY == data.byte(kMapy)) {
+		if (_reelRoutines[i].reallocation == _realLocation &&
+		        _reelRoutines[i].mapX == _mapX &&
+		        _reelRoutines[i].mapY == _mapY) {
 			assert(reelCallbacks[i]);
 			(this->*(reelCallbacks[i]))(_reelRoutines[i]);
 		}
@@ -146,12 +146,12 @@ void DreamBase::madmanText() {
 	byte origCount;
 
 	if (isCD()) {
-		if (data.byte(kSpeechcount) >= 63)
+		if (_speechCount >= 63)
 			return;
 		if (_channel1Playing != 255)
 			return;
-		origCount = data.byte(kSpeechcount);
-		++data.byte(kSpeechcount);
+		origCount = _speechCount;
+		++_speechCount;
 	} else {
 		if (data.byte(kCombatcount) >= 61)
 			return;
@@ -174,7 +174,7 @@ void DreamBase::madman(ReelRoutine &routine) {
 		if (newReelPointer == 10) {
 			loadTempText("DREAMWEB.T82");
 			data.byte(kCombatcount) = (uint8)-1;
-			data.byte(kSpeechcount) = 0;
+			_speechCount = 0;
 		}
 		++newReelPointer;
 		if (newReelPointer == 294) {
@@ -204,18 +204,18 @@ void DreamBase::madman(ReelRoutine &routine) {
 		routine.setReelPointer(newReelPointer);
 	}
 	showGameReel(&routine);
-	routine.mapX = data.byte(kMapx);
+	routine.mapX = _mapX;
 	madMode();
 }
 
 void DreamBase::madMode() {
 	data.word(kWatchingtime) = 2;
-	data.byte(kPointermode) = 0;
+	_pointerMode = 0;
 	if (data.byte(kCombatcount) < (isCD() ? 65 : 63))
 		return;
 	if (data.byte(kCombatcount) >= (isCD() ? 70 : 68))
 		return;
-	data.byte(kPointermode) = 2;
+	_pointerMode = 2;
 }
 
 void DreamBase::addToPeopleList(ReelRoutine *routine) {
@@ -291,7 +291,7 @@ void DreamBase::sparky(ReelRoutine &routine) {
 
 void DreamBase::rockstar(ReelRoutine &routine) {
 	if ((routine.reelPointer() == 303) || (routine.reelPointer() == 118)) {
-		data.byte(kNewlocation) = 45;
+		_newLocation = 45;
 		showGameReel(&routine);
 		return;
 	}
@@ -317,12 +317,12 @@ void DreamBase::rockstar(ReelRoutine &routine) {
 	showGameReel(&routine);
 	if (routine.reelPointer() == 78) {
 		addToPeopleList(&routine);
-		data.byte(kPointermode) = 2;
+		_pointerMode = 2;
 		data.word(kWatchingtime) = 0;
 	} else {
 		data.word(kWatchingtime) = 2;
-		data.byte(kPointermode) = 0;
-		routine.mapY = data.byte(kMapy);
+		_pointerMode = 0;
+		routine.mapY = _mapY;
 	}
 }
 
@@ -433,11 +433,11 @@ void DreamBase::introMagic1(ReelRoutine &routine) {
 			nextReelPointer = 121;
 		routine.setReelPointer(nextReelPointer);
 		if (nextReelPointer == 121) {
-			++data.byte(kIntrocount);
+			++_introCount;
 			intro1Text();
-			if (data.byte(kIntrocount) == 8) {
-				data.byte(kMapy) += 10;
-				data.byte(kNowinnewroom) = 1;
+			if (_introCount == 8) {
+				_mapY += 10;
+				_nowInNewRoom = 1;
 			}
 		}
 	}
@@ -458,11 +458,11 @@ void DreamBase::introMagic3(ReelRoutine &routine) {
 	if (checkSpeed(routine)) {
 		uint16 nextReelPointer = routine.reelPointer() + 1;
 		if (nextReelPointer == 218)
-			data.byte(kGetback) = 1;
+			_getBack = 1;
 		routine.setReelPointer(nextReelPointer);
 	}
 	showGameReel(&routine);
-	routine.mapX = data.byte(kMapx);
+	routine.mapX = _mapX;
 }
 
 void DreamBase::candles1(ReelRoutine &routine) {
@@ -516,7 +516,7 @@ void DreamBase::gates(ReelRoutine &routine) {
 		if (nextReelPointer >= 110)
 			routine.period = 2;
 		if (nextReelPointer == 120) {
-			data.byte(kGetback) = 1;
+			_getBack = 1;
 			nextReelPointer = 119;
 		}
 		routine.setReelPointer(nextReelPointer);
@@ -529,7 +529,7 @@ void DreamBase::security(ReelRoutine &routine) {
 	if (routine.reelPointer() == 32) {
 		if (data.byte(kLastweapon) == 1) {
 			data.word(kWatchingtime) = 10;
-			if ((data.byte(kManspath) == 9) && (data.byte(kFacing) == 0)) {
+			if ((_mansPath == 9) && (_facing == 0)) {
 				data.byte(kLastweapon) = (uint8)-1;
 				routine.incReelPointer();
 			}
@@ -632,7 +632,7 @@ void DreamBase::priest(ReelRoutine &routine) {
 	if (routine.reelPointer() == 8)
 		return; // priestspoken
 
-	data.byte(kPointermode) = 0;
+	_pointerMode = 0;
 	data.word(kWatchingtime) = 2;
 
 	if (checkSpeed(routine)) {
@@ -653,12 +653,12 @@ void DreamBase::monkAndRyan(ReelRoutine &routine) {
 	if (checkSpeed(routine)) {
 		uint16 nextReelPointer = routine.reelPointer() + 1;
 		if (nextReelPointer == 83) {
-			data.byte(kIntrocount)++;
+			_introCount++;
 			textForMonk();
 			nextReelPointer = 77;
 
-			if (data.byte(kIntrocount) == 57) {
-				data.byte(kGetback) = 1;
+			if (_introCount == 57) {
+				_getBack = 1;
 				return;
 			}
 		}
@@ -692,13 +692,13 @@ void DreamBase::introMonks1(ReelRoutine &routine) {
 		uint16 nextReelPointer = routine.reelPointer() + 1;
 
 		if (nextReelPointer == 80) {
-			data.byte(kMapy) += 10;
-			data.byte(kNowinnewroom) = 1;
+			_mapY += 10;
+			_nowInNewRoom = 1;
 			showGameReel(&routine);
 			return;
 		} else if (nextReelPointer == 30) {
-			data.byte(kMapy) -= 10;
-			data.byte(kNowinnewroom) = 1;
+			_mapY -= 10;
+			_nowInNewRoom = 1;
 			nextReelPointer = 51;
 		}
 
@@ -714,32 +714,32 @@ void DreamBase::introMonks1(ReelRoutine &routine) {
 	}
 
 	showGameReel(&routine);
-	routine.mapY = data.byte(kMapy);
+	routine.mapY = _mapY;
 }
 
 void DreamBase::introMonks2(ReelRoutine &routine) {
 	if (checkSpeed(routine)) {
 		uint16 nextReelPointer = routine.reelPointer() + 1;
 		if (nextReelPointer == 87) {
-			data.byte(kIntrocount)++;
+			_introCount++;
 			monks2text();
 
-			if (data.byte(kIntrocount), 19)
+			if (_introCount == 19)
 				nextReelPointer = 87;
 			else
 				nextReelPointer = 74;
 		}
 
 		if (nextReelPointer == 110) {
-			data.byte(kIntrocount)++;
+			_introCount++;
 			monks2text();
 		
-			if (data.byte(kIntrocount) == 35)
+			if (_introCount == 35)
 				nextReelPointer = 111;
 			else
 				nextReelPointer = 98;
 		} else if (nextReelPointer == 176) {
-			data.byte(kGetback) = 1;
+			_getBack = 1;
 		} else if (nextReelPointer == 125) {
 			nextReelPointer = 140;
 		}
@@ -763,7 +763,7 @@ void DreamBase::soldier1(ReelRoutine &routine) {
 		}
 	} else if (data.byte(kLastweapon) == 1) {
 		data.word(kWatchingtime) = 10;
-		if (data.byte(kManspath) == 2 && data.byte(kFacing) == 4)
+		if (_mansPath == 2 && _facing == 4)
 			routine.incReelPointer();
 		data.byte(kLastweapon) = 0xFF;
 		data.byte(kCombatcount) = 0;
@@ -844,7 +844,7 @@ void DreamBase::heavy(ReelRoutine &routine) {
 			if (checkSpeed(routine))
 				routine.incReelPointer();
 		}
-	} else if (data.byte(kLastweapon) == 1 && data.byte(kManspath) == 5 && data.byte(kFacing) == 4) {
+	} else if (data.byte(kLastweapon) == 1 && _mansPath == 5 && _facing == 4) {
 		// Heavy wait
 		data.byte(kLastweapon) = (byte)-1;
 		routine.incReelPointer();
@@ -858,7 +858,7 @@ void DreamBase::heavy(ReelRoutine &routine) {
 void DreamBase::helicopter(ReelRoutine &routine) {
 	if (routine.reelPointer() == 203) {
 		// Won helicopter
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		return;
 	}
 
@@ -889,13 +889,13 @@ void DreamBase::helicopter(ReelRoutine &routine) {
 	}
 
 	showGameReel(&routine);
-	routine.mapX = data.byte(kMapx);
+	routine.mapX = _mapX;
 	if (routine.reelPointer() < 9 && data.byte(kCombatcount) >= 7) {
-		data.byte(kPointermode) = 2;
+		_pointerMode = 2;
 		data.word(kWatchingtime) = 0;
 	} else {
 		// Not waiting helicopter
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		data.word(kWatchingtime) = 2;
 	}
 }
@@ -912,7 +912,7 @@ void DreamBase::mugger(ReelRoutine &routine) {
 			routine.incReelPointer();
 
 		showGameReel(&routine);
-		routine.mapX = data.byte(kMapx);
+		routine.mapX = _mapX;
 	} else {
 		createPanel2();
 		showIcon();
@@ -923,15 +923,15 @@ void DreamBase::mugger(ReelRoutine &routine) {
 		workToScreen();
 		hangOn(300);
 		routine.setReelPointer(140);
-		data.byte(kManspath) = 2;
-		data.byte(kFinaldest) = 2;
+		_mansPath = 2;
+		_finalDest = 2;
 		findXYFromPath();
-		data.byte(kResetmanxy) = 1;
-		data.byte(kCommand) = findExObject("WETA");
-		data.byte(kObjecttype) = kExObjectType;
+		_resetManXY = 1;
+		_command = findExObject("WETA");
+		_objectType = kExObjectType;
 		removeObFromInv();
-		data.byte(kCommand) = findExObject("WETB");
-		data.byte(kObjecttype) = kExObjectType;
+		_command = findExObject("WETB");
+		_objectType = kExObjectType;
 		removeObFromInv();
 		makeMainScreen();
 		DreamBase::setupTimedUse(48, 70, 10, 68 - 32, 54 + 64);
@@ -942,14 +942,14 @@ void DreamBase::mugger(ReelRoutine &routine) {
 // Exiting the elevator of Sartain's industries, Sartain (the businessman) and
 // two bodyguards are expecting Ryan.
 void DreamBase::businessMan(ReelRoutine &routine) {
-	data.byte(kPointermode) = 0;
+	_pointerMode = 0;
 	data.word(kWatchingtime) = 2;
 	if (routine.reelPointer() == 2)
 		DreamBase::setupTimedUse(49, 30, 1, 68, 174);	// First
 
 	if (routine.reelPointer() == 95) {
 		// Businessman combat won - end
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		data.word(kWatchingtime) = 0;
 		return;
 	}
@@ -983,10 +983,10 @@ void DreamBase::businessMan(ReelRoutine &routine) {
 				turnPathOn(1);
 				turnPathOn(2);
 				turnPathOff(3);
-				data.byte(kManspath) = 5;
-				data.byte(kFinaldest) = 5;
+				_mansPath = 5;
+				_finalDest = 5;
 				findXYFromPath();
-				data.byte(kResetmanxy) = 1;
+				_resetManXY = 1;
 				nextReelPointer = 92;
 			}
 		}
@@ -995,18 +995,18 @@ void DreamBase::businessMan(ReelRoutine &routine) {
 	}
 
 	showGameReel(&routine);
-	routine.mapY = data.byte(kMapy);
+	routine.mapY = _mapY;
 	if (routine.reelPointer() == 14) {
 		data.word(kWatchingtime) = 0;
-		data.byte(kPointermode) = 2;
+		_pointerMode = 2;
 	}
 }
 
 void DreamBase::endGameSeq(ReelRoutine &routine) {
 	if (checkSpeed(routine)) {
 		uint16 nextReelPointer = routine.reelPointer() + 1;
-		if (nextReelPointer == 51 && data.byte(kIntrocount) != 140) {
-			data.byte(kIntrocount)++;
+		if (nextReelPointer == 51 && _introCount != 140) {
+			_introCount++;
 			textForEnd();
 			nextReelPointer = 50;
 		}
@@ -1021,11 +1021,11 @@ void DreamBase::endGameSeq(ReelRoutine &routine) {
 		}
 
 		if (nextReelPointer == 340)
-			data.byte(kGetback) = 1;
+			_getBack = 1;
 	}
 
 	showGameReel(&routine);
-	routine.mapY = data.byte(kMapy);
+	routine.mapY = _mapY;
 	
 	if (routine.reelPointer() == 145) {
 		routine.setReelPointer(146);
@@ -1038,7 +1038,7 @@ void DreamBase::poolGuard(ReelRoutine &routine) {
 		// Combat over 2
 		showGameReel(&routine);
 		data.word(kWatchingtime) = 2;
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		data.byte(kCombatcount)++;
 		if (data.byte(kCombatcount) < 100)
 			return; // doneover2
@@ -1048,7 +1048,7 @@ void DreamBase::poolGuard(ReelRoutine &routine) {
 	} else if (routine.reelPointer() == 185) {
 		// Combat over 1
 		data.word(kWatchingtime) = 0;
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		turnPathOn(0);
 		turnPathOff(1);
 		return;
@@ -1099,10 +1099,10 @@ void DreamBase::poolGuard(ReelRoutine &routine) {
 	showGameReel(&routine);
 	
 	if (routine.reelPointer() != 121 && routine.reelPointer() != 146) {
-		data.byte(kPointermode) = 0;
+		_pointerMode = 0;
 		data.word(kWatchingtime) = 2;
 	} else {
-		data.byte(kPointermode) = 2;
+		_pointerMode = 2;
 		data.word(kWatchingtime) = 0;
 	}
 }
diff --git a/engines/dreamweb/print.cpp b/engines/dreamweb/print.cpp
index 9bdebc1..3a27b7e 100644
--- a/engines/dreamweb/print.cpp
+++ b/engines/dreamweb/print.cpp
@@ -50,7 +50,7 @@ uint8 DreamBase::getNextWord(const GraphicsFile &charSet, const uint8 *string, u
 		firstChar = engine->modifyChar(firstChar);
 		if (firstChar != 255) {
 			uint8 secondChar = *string;
-			uint8 width = charSet._frames[firstChar - 32 + data.word(kCharshift)].width;
+			uint8 width = charSet._frames[firstChar - 32 + _charShift].width;
 			width = kernChars(firstChar, secondChar, width);
 			*totalWidth += width;
 		}
@@ -68,9 +68,9 @@ void DreamBase::printChar(const GraphicsFile &charSet, uint16* x, uint16 y, uint
 		height = &dummyHeight;
 	if (_foreignRelease)
 		y -= 3;
-	uint16 tmp = c - 32 + data.word(kCharshift);
+	uint16 tmp = c - 32 + _charShift;
 	showFrame(charSet, *x, y, tmp & 0x1ff, (tmp >> 8) & 0xfe, width, height);
-	if (data.byte(kKerning), 0)
+	if (_kerning == 0)
 		*width = kernChars(c, nextChar, *width);
 	(*x) += *width;
 }
@@ -80,8 +80,8 @@ void DreamBase::printChar(const GraphicsFile &charSet, uint16 x, uint16 y, uint8
 }
 
 uint8 DreamBase::printSlow(const uint8 *string, uint16 x, uint16 y, uint8 maxWidth, bool centered) {
-	data.byte(kPointerframe) = 1;
-	data.byte(kPointermode) = 3;
+	_pointerFrame = 1;
+	_pointerMode = 3;
 	do {
 		uint16 offset = x;
 		uint16 charCount = getNumber(_charset1, string, maxWidth, centered, &offset);
@@ -96,17 +96,17 @@ uint8 DreamBase::printSlow(const uint8 *string, uint16 x, uint16 y, uint8 maxWid
 			}
 			if (charCount != 1) {
 				c1 = engine->modifyChar(c1);
-				data.word(kCharshift) = 91;
+				_charShift = 91;
 				uint16 offset2 = offset;
 				printBoth(_charset1, &offset2, y, c1, c2);
-				data.word(kCharshift) = 0;
+				_charShift = 0;
 				for (int i=0; i<2; ++i) {
 					uint16 mouseState = waitFrames();
 					if (_quitRequested)
 						return 0;
 					if (mouseState == 0)
 						continue;
-					if (mouseState != data.word(kOldbutton)) {
+					if (mouseState != _oldButton) {
 						return 1;
 					}
 				}
@@ -124,7 +124,7 @@ uint8 DreamBase::printDirect(const uint8* string, uint16 x, uint16 y, uint8 maxW
 }
 
 uint8 DreamBase::printDirect(const uint8** string, uint16 x, uint16 *y, uint8 maxWidth, bool centered) {
-	data.word(kLastxpos) = x;
+	_lastXPos = x;
 	const GraphicsFile &charSet = *_currentCharset;
 	while (true) {
 		uint16 offset = x;
@@ -140,10 +140,10 @@ uint8 DreamBase::printDirect(const uint8** string, uint16 x, uint16 *y, uint8 ma
 			c = engine->modifyChar(c);
 			uint8 width, height;
 			printChar(charSet, &i, *y, c, nextChar, &width, &height);
-			data.word(kLastxpos) = i;
+			_lastXPos = i;
 			--charCount;
 		} while (charCount);
-		*y += data.word(kLinespacing);
+		*y += _lineSpacing;
 	}
 }
 
@@ -200,12 +200,12 @@ uint16 DreamBase::waitFrames() {
 	vSync();
 	dumpPointer();
 	delPointer();
-	return data.word(kMousebutton);
+	return _mouseButton;
 }
 
 const char *DreamBase::monPrint(const char *string) {
-	data.byte(kKerning) = 1;
-	uint16 x = data.word(kMonadx);
+	_kerning = 1;
+	uint16 x = _monAdX;
 	const char *iterator = string;
 	bool done = false;
 	while (!done) {
@@ -226,22 +226,22 @@ const char *DreamBase::monPrint(const char *string) {
 				break;
 			}
 			c = engine->modifyChar(c);
-			printChar(_tempCharset, &x, data.word(kMonady), c, 0, NULL, NULL);
-			data.word(kCurslocx) = x;
-			data.word(kCurslocy) = data.word(kMonady);
-			data.word(kMaintimer) = 1;
+			printChar(_tempCharset, &x, _monAdY, c, 0, NULL, NULL);
+			_cursLocX = x;
+			_cursLocY = _monAdY;
+			_mainTimer = 1;
 			printCurs();
 			vSync();
 			lockMon();
 			delCurs();
 		} while (--count);
 
-		x = data.word(kMonadx);
+		x = _monAdX;
 		scrollMonitor();
-		data.word(kCurslocx) = data.word(kMonadx);
+		_cursLocX = _monAdX;
 	}
 
-	data.byte(kKerning) = 0;
+	_kerning = 0;
 	return iterator;
 }
 
@@ -254,7 +254,7 @@ void DreamBase::rollEndCreditsGameWon() {
 	multiGet(_mapStore, 75, 20, 160, 160);
 
 	const uint8 *string = getTextInFile1(3);
-	const int linespacing = data.word(kLinespacing);
+	const int linespacing = _lineSpacing;
 
 	for (int i = 0; i < 254; ++i) {
 		// Output the text, initially with an offset of 10 pixels,
@@ -293,7 +293,7 @@ void DreamBase::rollEndCreditsGameLost() {
 	multiGet(_mapStore, 25, 20, 160, 160);
 
 	const uint8 *string = getTextInFile1(49);
-	const int linespacing = data.word(kLinespacing);
+	const int linespacing = _lineSpacing;
 
 	for (int i = 0; i < 80; ++i) {
 		// Output the text, initially with an offset of 10 pixels,
@@ -315,7 +315,7 @@ void DreamBase::rollEndCreditsGameLost() {
 			vSync();
 			multiDump(25, 20, 160, 160);
 
-			if (data.byte(kLasthardkey) == 1)
+			if (_lastHardKey == 1)
 				return;
 		}
 
@@ -325,7 +325,7 @@ void DreamBase::rollEndCreditsGameLost() {
 			c = *string++;
 		} while (c != ':' && c != 0);
 
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			return;
 	}
 
diff --git a/engines/dreamweb/saveload.cpp b/engines/dreamweb/saveload.cpp
index e2af04d..9faf93a 100644
--- a/engines/dreamweb/saveload.cpp
+++ b/engines/dreamweb/saveload.cpp
@@ -45,33 +45,33 @@ void syncReelRoutine(Common::Serializer &s, ReelRoutine *reel) {
 }
 
 void DreamBase::loadGame() {
-	if (data.byte(kCommandtype) != 246) {
-		data.byte(kCommandtype) = 246;
+	if (_commandType != 246) {
+		_commandType = 246;
 		commandOnly(41);
 	}
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return; // "noload"
-	if (data.word(kMousebutton) == 1)
+	if (_mouseButton == 1)
 		doLoad(-1);
 }
 
 // if -1, open menu to ask for slot to load
 // if >= 0, directly load from that slot
 void DreamBase::doLoad(int savegameId) {
-	data.byte(kLoadingorsave) = 1;
+	_loadingOrSave = 1;
 
 	if (ConfMan.getBool("dreamweb_originalsaveload") && savegameId == -1) {
 		showOpBox();
 		showLoadOps();
-		data.byte(kCurrentslot) = 0;
+		_currentSlot = 0;
 		showSlots();
 		showNames();
-		data.byte(kPointerframe) = 0;
+		_pointerFrame = 0;
 		workToScreenM();
 		namesToOld();
-		data.byte(kGetback) = 0;
+		_getBack = 0;
 
-		while (data.byte(kGetback) == 0) {
+		while (_getBack == 0) {
 			if (_quitRequested)
 				return;
 			delPointer();
@@ -88,7 +88,7 @@ void DreamBase::doLoad(int savegameId) {
 				{ 0xFFFF,0,0,0,0 }
 			};
 			checkCoords(loadlist);
-			if (data.byte(kGetback) == 2)
+			if (_getBack == 2)
 				return; // "quitloaded"
 		}
 	} else {
@@ -106,13 +106,13 @@ void DreamBase::doLoad(int savegameId) {
 		}
 
 		if (savegameId < 0) {
-			data.byte(kGetback) = 0;
+			_getBack = 0;
 			return;
 		}
 
 		loadPosition(savegameId);
 
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 
 	// If we reach this point, loadPosition() has just been called.
@@ -122,17 +122,17 @@ void DreamBase::doLoad(int savegameId) {
 
 	startLoading(g_madeUpRoomDat);
 	loadRoomsSample();
-	data.byte(kRoomloaded) = 1;
-	data.byte(kNewlocation) = 255;
+	_roomLoaded = 1;
+	_newLocation = 255;
 	clearSprites();
 	initMan();
 	initRain();
-	data.word(kTextaddressx) = 13;
-	data.word(kTextaddressy) = 182;
-	data.byte(kTextlen) = 240;
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 240;
 	startup();
 	workToScreen();
-	data.byte(kGetback) = 4;
+	_getBack = 4;
 }
 
 
@@ -142,28 +142,28 @@ void DreamBase::saveGame() {
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 247) {
-		data.byte(kCommandtype) = 247;
+	if (_commandType != 247) {
+		_commandType = 247;
 		commandOnly(44);
 	}
-	if (data.word(kMousebutton) != 1)
+	if (_mouseButton != 1)
 		return;
 
-	data.byte(kLoadingorsave) = 2;
+	_loadingOrSave = 2;
 
 	if (ConfMan.getBool("dreamweb_originalsaveload")) {
 		showOpBox();
 		showSaveOps();
-		data.byte(kCurrentslot) = 0;
+		_currentSlot = 0;
 		showSlots();
 		showNames();
 		workToScreenM();
 		namesToOld();
-		data.word(kBufferin) = 0;
-		data.word(kBufferout) = 0;
-		data.byte(kGetback) = 0;
+		_bufferIn = 0;
+		_bufferOut = 0;
+		_getBack = 0;
 
-		while (data.byte(kGetback) == 0) {
+		while (_getBack == 0) {
 			if (_quitRequested)
 				return;
 			delPointer();
@@ -197,7 +197,7 @@ void DreamBase::saveGame() {
 		delete dialog;
 
 		if (savegameId < 0) {
-			data.byte(kGetback) = 0;
+			_getBack = 0;
 			return;
 		}
 
@@ -214,9 +214,9 @@ void DreamBase::saveGame() {
 		// TODO: The below is copied from actualsave
 		getRidOfTemp();
 		restoreAll(); // reels
-		data.word(kTextaddressx) = 13;
-		data.word(kTextaddressy) = 182;
-		data.byte(kTextlen) = 240;
+		_textAddressX = 13;
+		_textAddressY = 182;
+		_textLen = 240;
 		redrawMainScrn();
 		workToScreen();	// show the main screen without the mouse pointer
 
@@ -225,7 +225,7 @@ void DreamBase::saveGame() {
 		savePosition(savegameId, descbuf);
 
 		workToScreenM();
-		data.byte(kGetback) = 4;
+		_getBack = 4;
 	}
 }
 
@@ -238,24 +238,24 @@ void DreamBase::oldToNames() {
 }
 
 void DreamBase::saveLoad() {
-	if (data.word(kWatchingtime) || (data.byte(kPointermode) == 2)) {
+	if (data.word(kWatchingtime) || (_pointerMode == 2)) {
 		blank();
 		return;
 	}
-	if (data.byte(kCommandtype) != 253) {
-		data.byte(kCommandtype) = 253;
+	if (_commandType != 253) {
+		_commandType = 253;
 		commandOnly(43);
 	}
-	if ((data.word(kMousebutton) != data.word(kOldbutton)) && (data.word(kMousebutton) & 1))
+	if ((_mouseButton != _oldButton) && (_mouseButton & 1))
 		doSaveLoad();
 }
 
 void DreamBase::doSaveLoad() {
-	data.byte(kPointerframe) = 0;
-	data.word(kTextaddressx) = 70;
-	data.word(kTextaddressy) = 182-8;
-	data.byte(kTextlen) = 181;
-	data.byte(kManisoffscreen) = 1;
+	_pointerFrame = 0;
+	_textAddressX = 70;
+	_textAddressY = 182-8;
+	_textLen = 181;
+	_manIsOffScreen = 1;
 	clearWork();
 	createPanel2();
 	underTextLine();
@@ -283,11 +283,11 @@ void DreamBase::doSaveLoad() {
 			showMainOps();
 			workToScreenM();
 		}
-		data.byte(kGetback) = 0;
+		_getBack = 0;
 
 		do {	// wait ops
 			if (_quitRequested) {
-				data.byte(kManisoffscreen) = 0;
+				_manIsOffScreen = 0;
 				return;
 			}
 
@@ -298,20 +298,20 @@ void DreamBase::doSaveLoad() {
 			dumpTextLine();
 			delPointer();
 			checkCoords(opsList);
-		} while (!data.byte(kGetback));
-	} while (data.byte(kGetback) == 2);
+		} while (!_getBack);
+	} while (_getBack == 2);
 
-	data.word(kTextaddressx) = 13;
-	data.word(kTextaddressy) = 182;
-	data.byte(kTextlen) = 240;
-	if (data.byte(kGetback) != 4) {
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 240;
+	if (_getBack != 4) {
 		getRidOfTemp();
 		restoreAll();
 		redrawMainScrn();
 		workToScreenM();
-		data.byte(kCommandtype) = 200;
+		_commandType = 200;
 	}
-	data.byte(kManisoffscreen) = 0;
+	_manIsOffScreen = 0;
 }
 
 void DreamBase::getBackFromOps() {
@@ -322,15 +322,15 @@ void DreamBase::getBackFromOps() {
 }
 
 void DreamBase::getBackToOps() {
-	if (data.byte(kCommandtype) != 201) {
-		data.byte(kCommandtype) = 201;
+	if (_commandType != 201) {
+		_commandType = 201;
 		commandOnly(42);
 	}
 
-	if (data.word(kMousebutton) != data.word(kOldbutton)) {
-		if (data.word(kMousebutton) & 1) {
+	if (_mouseButton != _oldButton) {
+		if (_mouseButton & 1) {
 			oldToNames();
-			data.byte(kGetback) = 2;
+			_getBack = 2;
 		}
 	}
 }
@@ -349,21 +349,21 @@ void DreamBase::showDiscOps() {
 }
 
 void DreamBase::discOps() {
-	if (data.byte(kCommandtype) != 249) {
-		data.byte(kCommandtype) = 249;
+	if (_commandType != 249) {
+		_commandType = 249;
 		commandOnly(43);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
 	scanForNames();
-	data.byte(kLoadingorsave) = 2;
+	_loadingOrSave = 2;
 	showOpBox();
 	showDiscOps();
-	data.byte(kCurrentslot) = 0;
+	_currentSlot = 0;
 	workToScreenM();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	RectWithCallback<DreamBase> discOpsList[] = {
 		{ kOpsx+59,kOpsx+114,kOpsy+30,kOpsy+76,&DreamBase::loadGame },
@@ -384,19 +384,19 @@ void DreamBase::discOps() {
 		dumpPointer();
 		dumpTextLine();
 		checkCoords(discOpsList);
-	} while (!data.byte(kGetback));
+	} while (!_getBack);
 }
 
 void DreamBase::actualSave() {
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(44);
 	}
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
-	unsigned int slot = data.byte(kCurrentslot);
+	unsigned int slot = _currentSlot;
 
 	const char *desc = &_saveNames[17*slot];
 	if (desc[1] == 0) // The actual description string starts at desc[1]
@@ -406,31 +406,31 @@ void DreamBase::actualSave() {
 
 	getRidOfTemp();
 	restoreAll(); // reels
-	data.word(kTextaddressx) = 13;
-	data.word(kTextaddressy) = 182;
-	data.byte(kTextlen) = 240;
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 240;
 	redrawMainScrn();
 	workToScreenM();
-	data.byte(kGetback) = 4;
+	_getBack = 4;
 }
 
 void DreamBase::actualLoad() {
-	if (data.byte(kCommandtype) != 221) {
-		data.byte(kCommandtype) = 221;
+	if (_commandType != 221) {
+		_commandType = 221;
 		commandOnly(41);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || data.word(kMousebutton) != 1)
+	if (_mouseButton == _oldButton || _mouseButton != 1)
 		return;
 
-	unsigned int slot = data.byte(kCurrentslot);
+	unsigned int slot = _currentSlot;
 
 	const char *desc = &_saveNames[17*slot];
 	if (desc[1] == 0) // The actual description string starts at desc[1]
 		return;
 
-	loadPosition(data.byte(kCurrentslot));
-	data.byte(kGetback) = 1;
+	loadPosition(_currentSlot);
+	_getBack = 1;
 }
 
 void DreamBase::savePosition(unsigned int slot, const char *descbuf) {
@@ -439,11 +439,11 @@ void DreamBase::savePosition(unsigned int slot, const char *descbuf) {
 
 	Room madeUpRoom = currentRoom;
 	madeUpRoom.roomsSample = _roomsSample;
-	madeUpRoom.mapX = data.byte(kMapx);
-	madeUpRoom.mapY = data.byte(kMapy);
+	madeUpRoom.mapX = _mapX;
+	madeUpRoom.mapY = _mapY;
 	madeUpRoom.liftFlag = data.byte(kLiftflag);
-	madeUpRoom.b21 = data.byte(kManspath);
-	madeUpRoom.facing = data.byte(kFacing);
+	madeUpRoom.b21 = _mansPath;
+	madeUpRoom.facing = _facing;
 	madeUpRoom.b27 = 255;
 
 	Common::String filename = engine->getSavegameFilename(slot);
@@ -521,7 +521,7 @@ void DreamBase::savePosition(unsigned int slot, const char *descbuf) {
 }
 
 void DreamBase::loadPosition(unsigned int slot) {
-	data.word(kTimecount) = 0;
+	_timeCount = 0;
 	clearChanges();
 
 	Common::String filename = engine->getSavegameFilename(slot);
@@ -639,22 +639,22 @@ uint DreamBase::scanForNames() {
 }
 
 void DreamBase::loadOld() {
-	if (data.byte(kCommandtype) != 252) {
-		data.byte(kCommandtype) = 252;
+	if (_commandType != 252) {
+		_commandType = 252;
 		commandOnly(48);
 	}
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
 	doLoad(-1);
 
-	if (data.byte(kGetback) == 4 || _quitRequested)
+	if (_getBack == 4 || _quitRequested)
 		return;
 
 	showDecisions();
 	workToScreenM();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 }
 
 void DreamBase::showDecisions() {
@@ -674,52 +674,52 @@ void DreamBase::showNames() {
 		// The first character of the savegame name is unused
 		Common::String name(&_saveNames[17*slot + 1]);
 
-		if (slot != data.byte(kCurrentslot)) {
+		if (slot != _currentSlot) {
 			printDirect((const uint8 *)name.c_str(), kOpsx + 21, kOpsy + 10*slot + 10, 200, false);
 			continue;
 		}
-		if (data.byte(kLoadingorsave) != 2) {
-			data.word(kCharshift) = 91;
+		if (_loadingOrSave != 2) {
+			_charShift = 91;
 			printDirect((const uint8 *)name.c_str(), kOpsx + 21, kOpsy + 10*slot + 10, 200, false);
-			data.word(kCharshift) = 0;
+			_charShift = 0;
 			continue;
 		}
 
 		int pos = name.size();
-		data.byte(kCursorpos) = pos;
+		_cursorPos = pos;
 		name += '/'; // cursor character
 		printDirect((const uint8 *)name.c_str(), kOpsx + 21, kOpsy + 10*slot + 10, 200, false);
 	}
 }
 
 void DreamBase::checkInput() {
-	if (data.byte(kLoadingorsave) == 3)
+	if (_loadingOrSave == 3)
 		return;
 
 	readKey();
 
 	// The first character of the savegame name is unused
-	char *name = &_saveNames[17*data.byte(kCurrentslot) + 1];
+	char *name = &_saveNames[17*_currentSlot + 1];
 
-	if (data.byte(kCurrentkey) == 0) {
+	if (_currentKey == 0) {
 		return;
-	} else if (data.byte(kCurrentkey) == 13) {
-		data.byte(kLoadingorsave) = 3;
-	} else if (data.byte(kCurrentkey) == 8) {
-		if (data.byte(kCursorpos) == 0)
+	} else if (_currentKey == 13) {
+		_loadingOrSave = 3;
+	} else if (_currentKey == 8) {
+		if (_cursorPos == 0)
 			return;
 
-		--data.byte(kCursorpos);
-		name[data.byte(kCursorpos)] = 0;
-		name[data.byte(kCursorpos)+1] = 1;
+		--_cursorPos;
+		name[_cursorPos] = 0;
+		name[_cursorPos+1] = 1;
 	} else {
-		if (data.byte(kCursorpos) == 14)
+		if (_cursorPos == 14)
 			return;
 
-		name[data.byte(kCursorpos)] = data.byte(kCurrentkey);
-		name[data.byte(kCursorpos)+1] = 0;
-		name[data.byte(kCursorpos)+2] = 1;
-		++data.byte(kCursorpos);
+		name[_cursorPos] = _currentKey;
+		name[_cursorPos+1] = 0;
+		name[_cursorPos+2] = 1;
+		++_cursorPos;
 	}
 
 	showOpBox();
@@ -730,28 +730,28 @@ void DreamBase::checkInput() {
 }
 
 void DreamBase::selectSlot() {
-	if (data.byte(kCommandtype) != 244) {
-		data.byte(kCommandtype) = 244;
+	if (_commandType != 244) {
+		_commandType = 244;
 		commandOnly(45);
 	}
 
-	if (data.word(kMousebutton) != 1 || data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton != 1 || _mouseButton == _oldButton)
 		return; // noselslot
-	if (data.byte(kLoadingorsave) == 3)
-		data.byte(kLoadingorsave)--;
+	if (_loadingOrSave == 3)
+		_loadingOrSave--;
 
 	oldToNames();
-	int y = data.word(kMousey) - (kOpsy + 4);
+	int y = _mouseY - (kOpsy + 4);
 	if (y < 11)
-		data.byte(kCurrentslot) = 0;
+		_currentSlot = 0;
 	else
-		data.byte(kCurrentslot) = y / 11;
+		_currentSlot = y / 11;
 
 	delPointer();
 	showOpBox();
 	showSlots();
 	showNames();
-	if (data.byte(kLoadingorsave) == 1)
+	if (_loadingOrSave == 1)
 		showLoadOps();
 	else
 		showSaveOps();
@@ -767,7 +767,7 @@ void DreamBase::showSlots() {
 	uint16 y = kOpsy + 11;
 
 	for (int slot = 0; slot < 7; slot++) {
-		if (slot == data.byte(kCurrentslot))
+		if (slot == _currentSlot)
 			showFrame(_tempGraphics, kOpsx + 10, y, 3, 0);
 
 		y += 10;
diff --git a/engines/dreamweb/sprite.cpp b/engines/dreamweb/sprite.cpp
index 83a05b9..096333f 100644
--- a/engines/dreamweb/sprite.cpp
+++ b/engines/dreamweb/sprite.cpp
@@ -42,15 +42,15 @@ void DreamBase::printSprites() {
 void DreamBase::printASprite(const Sprite *sprite) {
 	uint16 x, y;
 	if (sprite->y >= 220) {
-		y = data.word(kMapady) - (256 - sprite->y);
+		y = _mapAdY - (256 - sprite->y);
 	} else {
-		y = sprite->y + data.word(kMapady);
+		y = sprite->y + _mapAdY;
 	}
 
 	if (sprite->x >= 220) {
-		x = data.word(kMapadx) - (256 - sprite->x);
+		x = _mapAdX - (256 - sprite->x);
 	} else {
-		x = sprite->x + data.word(kMapadx);
+		x = sprite->x + _mapAdX;
 	}
 	
 	uint8 c;
@@ -104,23 +104,23 @@ void DreamBase::spriteUpdate() {
 			backObject(&sprite);
 		}
 	
-		if (data.byte(kNowinnewroom) == 1)
+		if (_nowInNewRoom == 1)
 			break;
 	}
 }
 
 void DreamBase::initMan() {
-	Sprite *sprite = makeSprite(data.byte(kRyanx), data.byte(kRyany), addr_mainman, &_mainSprites, 0);
+	Sprite *sprite = makeSprite(_ryanX, _ryanY, addr_mainman, &_mainSprites, 0);
 	sprite->priority = 4;
 	sprite->speed = 0;
 	sprite->walkFrame = 0;
 }
 
 void DreamBase::mainMan(Sprite *sprite) {
-	if (data.byte(kResetmanxy) == 1) {
-		data.byte(kResetmanxy) = 0;
-		sprite->x = data.byte(kRyanx);
-		sprite->y = data.byte(kRyany);
+	if (_resetManXY == 1) {
+		_resetManXY = 0;
+		sprite->x = _ryanX;
+		sprite->y = _ryanY;
 		sprite->walkFrame = 0;
 	}
 
@@ -129,84 +129,84 @@ void DreamBase::mainMan(Sprite *sprite) {
 		return;
 	sprite->speed = 0;
 
-	if (data.byte(kTurntoface) != data.byte(kFacing)) {
+	if (_turnToFace != _facing) {
 		aboutTurn(sprite);
 	} else {
-		if ((data.byte(kTurndirection) != 0) && (data.byte(kLinepointer) == 254)) {
-			data.byte(kReasseschanges) = 1;
-			if (data.byte(kFacing) == data.byte(kLeavedirection))
+		if ((_turnDirection != 0) && (_linePointer == 254)) {
+			_reAssesChanges = 1;
+			if (_facing == _leaveDirection)
 				checkForExit(sprite);
 		}
-		data.byte(kTurndirection) = 0;
-		if (data.byte(kLinepointer) == 254) {
+		_turnDirection = 0;
+		if (_linePointer == 254) {
 			sprite->walkFrame = 0;
 		} else {
 			++sprite->walkFrame;
 			if (sprite->walkFrame == 11)
 				sprite->walkFrame = 1;
 			walking(sprite);
-			if (data.byte(kLinepointer) != 254) {
-				if ((data.byte(kFacing) & 1) == 0)
+			if (_linePointer != 254) {
+				if ((_facing & 1) == 0)
 					walking(sprite);
 				else if ((sprite->walkFrame != 2) && (sprite->walkFrame != 7))
 					walking(sprite);
 			}
-			if (data.byte(kLinepointer) == 254) {
-				if (data.byte(kTurntoface) == data.byte(kFacing)) {
-					data.byte(kReasseschanges) = 1;
-					if (data.byte(kFacing) == data.byte(kLeavedirection))
+			if (_linePointer == 254) {
+				if (_turnToFace == _facing) {
+					_reAssesChanges = 1;
+					if (_facing == _leaveDirection)
 						checkForExit(sprite);
 				}
 			}
 		}
 	}
 	static const uint8 facelist[] = { 0,60,33,71,11,82,22,93 };
-	sprite->frameNumber = sprite->walkFrame + facelist[data.byte(kFacing)];
-	data.byte(kRyanx) = sprite->x;
-	data.byte(kRyany) = sprite->y;
+	sprite->frameNumber = sprite->walkFrame + facelist[_facing];
+	_ryanX = sprite->x;
+	_ryanY = sprite->y;
 }
 
 void DreamBase::walking(Sprite *sprite) {
 	uint8 comp;
-	if (data.byte(kLinedirection) != 0) {
-		--data.byte(kLinepointer);
+	if (_lineDirection != 0) {
+		--_linePointer;
 		comp = 200;
 	} else {
-		++data.byte(kLinepointer);
-		comp = data.byte(kLinelength);
+		++_linePointer;
+		comp = _lineLength;
 	}
-	if (data.byte(kLinepointer) < comp) {
-		sprite->x = (uint8)_lineData[data.byte(kLinepointer)].x;
-		sprite->y = (uint8)_lineData[data.byte(kLinepointer)].y;
+	if (_linePointer < comp) {
+		sprite->x = (uint8)_lineData[_linePointer].x;
+		sprite->y = (uint8)_lineData[_linePointer].y;
 		return;
 	}
 
-	data.byte(kLinepointer) = 254;
-	data.byte(kManspath) = data.byte(kDestination);
-	if (data.byte(kDestination) == data.byte(kFinaldest)) {
+	_linePointer = 254;
+	_mansPath = _destination;
+	if (_destination == _finalDest) {
 		faceRightWay();
 		return;
 	}
-	data.byte(kDestination) = data.byte(kFinaldest);
+	_destination = _finalDest;
 	autoSetWalk();
 }
 
 void DreamBase::aboutTurn(Sprite *sprite) {
 	bool incdir = true;
 
-	if (data.byte(kTurndirection) == 1)
+	if (_turnDirection == 1)
 		incdir = true;
-	else if ((int8)data.byte(kTurndirection) == -1)
+	else if ((int8)_turnDirection == -1)
 		incdir = false;
 	else {
-		if (data.byte(kFacing) < data.byte(kTurntoface)) {
-			uint8 delta = data.byte(kTurntoface) - data.byte(kFacing);
+		if (_facing < _turnToFace) {
+			uint8 delta = _turnToFace - _facing;
 			if (delta >= 4)
 				incdir = false;
 			else
 				incdir = true;
 		} else {
-			uint8 delta = data.byte(kFacing) - data.byte(kTurntoface);
+			uint8 delta = _facing - _turnToFace;
 			if (delta >= 4)
 				incdir = true;
 			else
@@ -215,12 +215,12 @@ void DreamBase::aboutTurn(Sprite *sprite) {
 	}
 
 	if (incdir) {
-		data.byte(kTurndirection) = 1;
-		data.byte(kFacing) = (data.byte(kFacing) + 1) & 7;
+		_turnDirection = 1;
+		_facing = (_facing + 1) & 7;
 		sprite->walkFrame = 0;
 	} else {
-		data.byte(kTurndirection) = (uint8)-1;
-		data.byte(kFacing) = (data.byte(kFacing) - 1) & 7;
+		_turnDirection = (uint8)-1;
+		_facing = (_facing - 1) & 7;
 		sprite->walkFrame = 0;
 	}
 }
@@ -276,8 +276,8 @@ void DreamBase::wideDoor(Sprite *sprite, SetObject *objData) {
 }
 
 void DreamBase::doDoor(Sprite *sprite, SetObject *objData, Common::Rect check) {
-	int ryanx = data.byte(kRyanx);
-	int ryany = data.byte(kRyany);
+	int ryanx = _ryanX;
+	int ryany = _ryanY;
 
 	// Automatically opening doors: check if Ryan is in range
 
@@ -292,7 +292,7 @@ void DreamBase::doDoor(Sprite *sprite, SetObject *objData, Common::Rect check) {
 		++sprite->animFrame;
 		if (sprite->animFrame == 1) { // doorsound2
 			uint8 soundIndex;
-			if (data.byte(kReallocation) == 5) // hoteldoor2
+			if (_realLocation == 5) // hoteldoor2
 				soundIndex = 13;
 			else
 				soundIndex = 0;
@@ -309,7 +309,7 @@ void DreamBase::doDoor(Sprite *sprite, SetObject *objData, Common::Rect check) {
 
 		if (sprite->animFrame == 5) { // doorsound1;
 			uint8 soundIndex;
-			if (data.byte(kReallocation) == 5) // hoteldoor1
+			if (_realLocation == 5) // hoteldoor1
 				soundIndex = 13;
 			else
 				soundIndex = 1;
@@ -331,8 +331,8 @@ void DreamBase::steady(Sprite *sprite, SetObject *objData) {
 }
 
 void DreamBase::lockedDoorway(Sprite *sprite, SetObject *objData) {
-	int ryanx = data.byte(kRyanx);
-	int ryany = data.byte(kRyany);
+	int ryanx = _ryanX;
+	int ryany = _ryanY;
 
 	Common::Rect check(-24, -30, 10, 12);
 	check.translate(sprite->x, sprite->y);
@@ -449,8 +449,8 @@ const GraphicsFile *DreamBase::findSource(uint16 &frame) {
 }
 
 void DreamBase::showReelFrame(Reel *reel) {
-	uint16 x = reel->x + data.word(kMapadx);
-	uint16 y = reel->y + data.word(kMapady);
+	uint16 x = reel->x + _mapAdX;
+	uint16 y = reel->y + _mapAdY;
 	uint16 frame = reel->frame();
 	const GraphicsFile *base = findSource(frame);
 	showFrame(*base, x, y, frame, 8);
@@ -480,8 +480,8 @@ void DreamBase::showRain() {
 
 	for (i = _rainList.begin(); i != _rainList.end(); ++i) {
 		Rain &rain = *i;
-		uint16 y = rain.y + data.word(kMapady) + data.word(kMapystart);
-		uint16 x = rain.x + data.word(kMapadx) + data.word(kMapxstart);
+		uint16 y = rain.y + _mapAdY + _mapYStart;
+		uint16 x = rain.x + _mapAdX + _mapXStart;
 		uint16 size = rain.size;
 		uint16 offset = (rain.w3 - rain.b5) & 511;
 		rain.w3 = offset;
@@ -497,9 +497,9 @@ void DreamBase::showRain() {
 
 	if (_channel1Playing != 255)
 		return;
-	if (data.byte(kReallocation) == 2 && data.byte(kBeenmugged) != 1)
+	if (_realLocation == 2 && data.byte(kBeenmugged) != 1)
 		return;
-	if (data.byte(kReallocation) == 55)
+	if (_realLocation == 55)
 		return;
 
 	if (engine->randomNumber() >= 1) // play thunder with 1 in 256 chance
@@ -516,22 +516,22 @@ void DreamBase::showRain() {
 void DreamBase::moveMap(uint8 param) {
 	switch (param) {
 	case 32:
-		data.byte(kMapy) -= 20;
+		_mapY -= 20;
 		break;
 	case 16:
-		data.byte(kMapy) -= 10;
+		_mapY -= 10;
 		break;
 	case 8:
-		data.byte(kMapy) += 10;
+		_mapY += 10;
 		break;
 	case 2:
-		data.byte(kMapx) += 11;
+		_mapX += 11;
 		break;
 	default:
-		data.byte(kMapx) -= 11;
+		_mapX -= 11;
 		break;
 	}
-	data.byte(kNowinnewroom) = 1;
+	_nowInNewRoom = 1;
 }
 
 void DreamBase::checkOne(uint8 x, uint8 y, uint8 *flag, uint8 *flagEx, uint8 *type, uint8 *flagX, uint8 *flagY) {
@@ -545,7 +545,7 @@ void DreamBase::checkOne(uint8 x, uint8 y, uint8 *flag, uint8 *flagEx, uint8 *ty
 
 uint8 DreamBase::getBlockOfPixel(uint8 x, uint8 y) {
 	uint8 flag, flagEx, type, flagX, flagY;
-	checkOne(x + data.word(kMapxstart), y + data.word(kMapystart), &flag, &flagEx, &type, &flagX, &flagY);
+	checkOne(x + _mapXStart, y + _mapYStart, &flag, &flagEx, &type, &flagX, &flagY);
 	if (flag & 1)
 		return 0;
 	else
@@ -560,7 +560,7 @@ void DreamBase::splitIntoLines(uint8 x, uint8 y) {
 		while (!getBlockOfPixel(x, y)) {
 			--x;
 			++y;
-			if (x == 0 || y >= data.byte(kMapysize))
+			if (x == 0 || y >= _mapYSize)
 				return;
 		}
 
@@ -573,7 +573,7 @@ void DreamBase::splitIntoLines(uint8 x, uint8 y) {
 		while (getBlockOfPixel(x, y)) {
 			--x;
 			++y;
-			if (x == 0 || y >= data.byte(kMapysize))
+			if (x == 0 || y >= _mapYSize)
 				break;
 			++length;
 		}
@@ -582,7 +582,7 @@ void DreamBase::splitIntoLines(uint8 x, uint8 y) {
 		rain.w3 = (engine->randomNumber() << 8) | engine->randomNumber();
 		rain.b5 = (engine->randomNumber() & 3) + 4;
 		_rainList.push_back(rain);
-	} while (x > 0 && y < data.byte(kMapysize));
+	} while (x > 0 && y < _mapYSize);
 }
 
 struct RainLocation {
@@ -630,8 +630,8 @@ void DreamBase::initRain() {
 
 	// look up location in rainLocationList to determine rainSpacing
 	for (r = rainLocationList; r->location != 0xff; ++r) {
-		if (r->location == data.byte(kReallocation) &&
-		        r->x == data.byte(kMapx) && r->y == data.byte(kMapy)) {
+		if (r->location == _realLocation &&
+		        r->x == _mapX && r->y == _mapY) {
 			rainSpacing = r->rainSpacing;
 			break;
 		}
@@ -651,7 +651,7 @@ void DreamBase::initRain() {
 		} while (delta >= rainSpacing);
 
 		x += delta;
-		if (x >= data.byte(kMapxsize))
+		if (x >= _mapXSize)
 			break;
 
 		splitIntoLines(x, 0);
@@ -666,25 +666,25 @@ void DreamBase::initRain() {
 		} while (delta >= rainSpacing);
 
 		y += delta;
-		if (y >= data.byte(kMapysize))
+		if (y >= _mapYSize)
 			break;
 
-		splitIntoLines(data.byte(kMapxsize) - 1, y);
+		splitIntoLines(_mapXSize - 1, y);
 	} while (true);
 }
 
 void DreamBase::intro1Text() {
-	if (data.byte(kIntrocount) != 2 && data.byte(kIntrocount) != 4 && data.byte(kIntrocount) != 6)
+	if (_introCount != 2 && _introCount != 4 && _introCount != 6)
 		return;
 
 	if (isCD() && _channel1Playing != 255) {
-		data.byte(kIntrocount)--;
+		_introCount--;
 	} else {
-		if (data.byte(kIntrocount) == 2)
+		if (_introCount == 2)
 			setupTimedTemp(40, 82, 34, 130, 90, 1);
-		else if (data.byte(kIntrocount) == 4)
+		else if (_introCount == 4)
 			setupTimedTemp(41, 82, 34, 130, 90, 1);
-		else if (data.byte(kIntrocount) == 6)
+		else if (_introCount == 6)
 			setupTimedTemp(42, 82, 34, 130, 90, 1);
 	}
 }
@@ -706,84 +706,84 @@ void DreamBase::intro3Text(uint16 nextReelPointer) {
 void DreamBase::monks2text() {
 	bool isGermanCD = isCD() && engine->getLanguage() == Common::DE_DEU;
 
-	if (data.byte(kIntrocount) == 1)
+	if (_introCount == 1)
 		setupTimedTemp(8, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == (isGermanCD ? 5 : 4))
+	else if (_introCount == (isGermanCD ? 5 : 4))
 		setupTimedTemp(9, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == (isGermanCD ? 9 : 7))
+	else if (_introCount == (isGermanCD ? 9 : 7))
 		setupTimedTemp(10, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == 10 && !isGermanCD) {
+	else if (_introCount == 10 && !isGermanCD) {
 		if (isCD())
-			data.byte(kIntrocount) = 12;
+			_introCount = 12;
 		setupTimedTemp(11, 82, 0, 105, 120, 1);
-	} else if (data.byte(kIntrocount) == 13 && isGermanCD) {
-		data.byte(kIntrocount) = 14;
+	} else if (_introCount == 13 && isGermanCD) {
+		_introCount = 14;
 		setupTimedTemp(11, 82, 0, 105, 120, 1);
-	} else if (data.byte(kIntrocount) == 13 && !isGermanCD) {
+	} else if (_introCount == 13 && !isGermanCD) {
 		if (isCD())
-			data.byte(kIntrocount) = 17;
+			_introCount = 17;
 		else
 			setupTimedTemp(12, 82, 0, 120, 120, 1);
-	} else if (data.byte(kIntrocount) == 16 && !isGermanCD)
+	} else if (_introCount == 16 && !isGermanCD)
 		setupTimedTemp(13, 82, 0, 135, 120, 1);
-	else if (data.byte(kIntrocount) == 19)
+	else if (_introCount == 19)
 		setupTimedTemp(14, 82, 36, 160, 100, 1);
-	else if (data.byte(kIntrocount) == (isGermanCD ? 23 : 22))
+	else if (_introCount == (isGermanCD ? 23 : 22))
 		setupTimedTemp(15, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == (isGermanCD ? 27 : 25))
+	else if (_introCount == (isGermanCD ? 27 : 25))
 		setupTimedTemp(16, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == (isCD() ? 27 : 28) && !isGermanCD)
+	else if (_introCount == (isCD() ? 27 : 28) && !isGermanCD)
 		setupTimedTemp(17, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == 30 && isGermanCD)
+	else if (_introCount == 30 && isGermanCD)
 		setupTimedTemp(17, 82, 36, 160, 120, 1);
-	else if (data.byte(kIntrocount) == (isGermanCD ? 35 : 31))
+	else if (_introCount == (isGermanCD ? 35 : 31))
 		setupTimedTemp(18, 82, 36, 160, 120, 1);
 }
 
 void DreamBase::textForEnd() {
-	if (data.byte(kIntrocount) == 20)
+	if (_introCount == 20)
 		setupTimedTemp(0, 83, 34, 20, 60, 1);
-	else if (data.byte(kIntrocount) == (isCD() ? 50 : 65))
+	else if (_introCount == (isCD() ? 50 : 65))
 		setupTimedTemp(1, 83, 34, 20, 60, 1);
-	else if (data.byte(kIntrocount) == (isCD() ? 85 : 110))
+	else if (_introCount == (isCD() ? 85 : 110))
 		setupTimedTemp(2, 83, 34, 20, 60, 1);
 }
 
 void DreamBase::textForMonkHelper(uint8 textIndex, uint8 voiceIndex, uint8 x, uint8 y, uint16 countToTimed, uint16 timeCount) {
 	if (isCD() && _channel1Playing != 255)
-		data.byte(kIntrocount)--;
+		_introCount--;
 	else
 		setupTimedTemp(textIndex, voiceIndex, x, y, countToTimed, timeCount);
 }
 
 void DreamBase::textForMonk() {
-	if (data.byte(kIntrocount) == 1)
+	if (_introCount == 1)
 		textForMonkHelper(19, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 5)
+	else if (_introCount == 5)
 		textForMonkHelper(20, 82, 68, 38, 120, 1);
-	else if (data.byte(kIntrocount) == 9)
+	else if (_introCount == 9)
 		textForMonkHelper(21, 82, 48, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 13)
+	else if (_introCount == 13)
 		textForMonkHelper(22, 82, 68, 38, 120, 1);
-	else if (data.byte(kIntrocount) == (isCD() ? 15 : 17))
+	else if (_introCount == (isCD() ? 15 : 17))
 		textForMonkHelper(23, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 21)
+	else if (_introCount == 21)
 		textForMonkHelper(24, 82, 68, 38, 120, 1);
-	else if (data.byte(kIntrocount) == 25)
+	else if (_introCount == 25)
 		textForMonkHelper(25, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 29)
+	else if (_introCount == 29)
 		textForMonkHelper(26, 82, 68, 38, 120, 1);
-	else if (data.byte(kIntrocount) == 33)
+	else if (_introCount == 33)
 		textForMonkHelper(27, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 37)
+	else if (_introCount == 37)
 		textForMonkHelper(28, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == 41)
+	else if (_introCount == 41)
 		textForMonkHelper(29, 82, 68, 38, 120, 1);
-	else if (data.byte(kIntrocount) == 45)
+	else if (_introCount == 45)
 		textForMonkHelper(30, 82, 68, 154, 120, 1);
-	else if (data.byte(kIntrocount) == (isCD() ? 52 : 49))
+	else if (_introCount == (isCD() ? 52 : 49))
 		textForMonkHelper(31, 82, 68, 154, 220, 1);
-	else if (data.byte(kIntrocount) == 53) {
+	else if (_introCount == 53) {
 		fadeScreenDowns();
 		if (isCD()) {
 			_volumeTo = 7;
@@ -801,15 +801,15 @@ void DreamBase::reelsOnScreen() {
 }
 
 void DreamBase::reconstruct() {
-	if (data.byte(kHavedoneobs) == 0)
+	if (_haveDoneObs == 0)
 		return;
 	data.byte(kNewobs) = 1;
 	drawFloor();
 	spriteUpdate();
 	printSprites();
-	if (_foreignRelease && (data.byte(kReallocation) == 20))
+	if (_foreignRelease && (_realLocation == 20))
 		underTextLine();
-	data.byte(kHavedoneobs) = 0;
+	_haveDoneObs = 0;
 }
 
 
@@ -1065,7 +1065,7 @@ static const ReelSound *g_roomByRoom[] = {
 
 
 void DreamBase::soundOnReels(uint16 reelPointer) {
-	const ReelSound *r = g_roomByRoom[data.byte(kReallocation)];
+	const ReelSound *r = g_roomByRoom[_realLocation];
 
 	if (engine->getLanguage() == Common::DE_DEU && r == g_roomSound29)
 		r = g_roomSound29_German;
@@ -1073,9 +1073,9 @@ void DreamBase::soundOnReels(uint16 reelPointer) {
 	for (; r->_sample != 255; ++r) {
 		if (r->_reelPointer != reelPointer)
 			continue;
-		if (r->_reelPointer == data.word(kLastsoundreel))
+		if (r->_reelPointer == _lastSoundReel)
 			continue;
-		data.word(kLastsoundreel) = r->_reelPointer;
+		_lastSoundReel = r->_reelPointer;
 		if (r->_sample < 64) {
 			playChannel1(r->_sample);
 			return;
@@ -1087,12 +1087,12 @@ void DreamBase::soundOnReels(uint16 reelPointer) {
 		playChannel0(r->_sample & 63, 255);
 	}
 
-	if (data.word(kLastsoundreel) != reelPointer)
-		data.word(kLastsoundreel) = (uint16)-1;
+	if (_lastSoundReel != reelPointer)
+		_lastSoundReel = (uint16)-1;
 }
 
 void DreamBase::clearBeforeLoad() {
-	if (data.byte(kRoomloaded) != 1)
+	if (_roomLoaded != 1)
 		return /* (noclear) */;
 
 	clearReels();
@@ -1111,7 +1111,7 @@ void DreamBase::clearBeforeLoad() {
 	_freeFrames.clear();
 	_freeDesc.clear();
 
-	data.byte(kRoomloaded) = 0;
+	_roomLoaded = 0;
 }
 
 void DreamBase::clearReels() {
@@ -1121,12 +1121,12 @@ void DreamBase::clearReels() {
 }
 
 void DreamBase::getRidOfReels() {
-	if (data.byte(kRoomloaded))
+	if (_roomLoaded)
 		clearReels();
 }
 
 void DreamBase::liftNoise(uint8 index) {
-	if (data.byte(kReallocation) == 5 || data.byte(kReallocation) == 21)
+	if (_realLocation == 5 || _realLocation == 21)
 		playChannel1(13);	// hiss noise
 	else
 		playChannel1(index);
@@ -1134,42 +1134,42 @@ void DreamBase::liftNoise(uint8 index) {
 
 void DreamBase::checkForExit(Sprite *sprite) {
 	uint8 flag, flagEx, type, flagX, flagY;
-	checkOne(data.byte(kRyanx) + 12, data.byte(kRyany) + 12, &flag, &flagEx, &type, &flagX, &flagY);
-	data.byte(kLastflag) = flag;
+	checkOne(_ryanX + 12, _ryanY + 12, &flag, &flagEx, &type, &flagX, &flagY);
+	_lastFlag = flag;
 
 	if (flag & 64) {
-		data.byte(kAutolocation) = flagEx;
+		_autoLocation = flagEx;
 		return;
 	}
 
 	if (!(flag & 32)) {
 		if (flag & 4) {
 			// adjust left
-			data.byte(kLastflag) = 0;
-			data.byte(kMapx) -= 11;
+			_lastFlag = 0;
+			_mapX -= 11;
 			sprite->x = 16 * flagEx;
-			data.byte(kNowinnewroom) = 1;
+			_nowInNewRoom = 1;
 		} else if (flag & 2) {
 			// adjust right
-			data.byte(kMapx) += 11;
+			_mapX += 11;
 			sprite->x = 16 * flagEx - 2;
-			data.byte(kNowinnewroom) = 1;
+			_nowInNewRoom = 1;
 		} else if (flag & 8) {
 			// adjust down
-			data.byte(kMapy) += 10;
+			_mapY += 10;
 			sprite->y = 16 * flagEx;
-			data.byte(kNowinnewroom) = 1;
+			_nowInNewRoom = 1;
 		} else if (flag & 16) {
 			// adjust up
-			data.byte(kMapy) -= 10;
+			_mapY -= 10;
 			sprite->y = 16 * flagEx;
-			data.byte(kNowinnewroom) = 1;
+			_nowInNewRoom = 1;
 		}
 
 		return;
 	}
 
-	if (data.byte(kReallocation) == 2) {
+	if (_realLocation == 2) {
 		// Can't leave Louis' until you found shoes
 
 		int shoeCount = 0;
@@ -1180,7 +1180,7 @@ void DreamBase::checkForExit(Sprite *sprite) {
 			uint8 text = shoeCount ? 43 : 42;
 			setupTimedUse(text, 80, 10, 68, 64);
 
-			data.byte(kTurntoface) = (data.byte(kFacing) + 4) & 7;
+			_turnToFace = (_facing + 4) & 7;
 			return;
 		}
 
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index 0c7877f..10f8ea1 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -25,7 +25,7 @@
 
 namespace DreamGen {
 
-// Keyboard buffer. data.word(kBufferin) and data.word(kBufferout) are indexes
+// Keyboard buffer. _bufferIn and _bufferOut are indexes
 // into this, making it a ring buffer
 uint8 g_keyBuffer[16];
 
@@ -474,7 +474,7 @@ void DreamBase::dreamweb() {
 	allocateBuffers();
 
 	// setMouse
-	data.word(kOldpointerx) = 0xffff;
+	_oldPointerX = 0xffff;
 
 	fadeDOS();
 	getTime();
@@ -530,7 +530,7 @@ void DreamBase::dreamweb() {
 			if (_quitRequested)
 				goto done;
 
-			if (data.byte(kGetback) == 4)
+			if (_getBack == 4)
 				startNewGame = false; // savegame has been loaded
 
 		}
@@ -562,20 +562,20 @@ void DreamBase::dreamweb() {
 			loadPalFromIFF();
 			data.byte(kLocation) = 255;
 			data.byte(kRoomafterdream) = 1;
-			data.byte(kNewlocation) = 35;
+			_newLocation = 35;
 			_volume = 7;
 			loadRoom();
 			clearSprites();
 			initMan();
 			entryTexts();
 			entryAnims();
-			data.byte(kDestpos) = 3;
+			_destPos = 3;
 			initialInv();
-			data.byte(kLastflag) = 32;
+			_lastFlag = 32;
 			startup1();
 			_volumeTo = 0;
 			_volumeDirection = -1;
-			data.byte(kCommandtype) = 255;
+			_commandType = 255;
 
 		}
 
@@ -603,7 +603,7 @@ void DreamBase::dreamweb() {
 				break;
 
 			if (data.word(kWatchingtime) > 0) {
-				if (data.byte(kFinaldest) == data.byte(kManspath))
+				if (_finalDest == _mansPath)
 					data.word(kWatchingtime)--;
 			}
 
@@ -613,7 +613,7 @@ void DreamBase::dreamweb() {
 				if (data.byte(kMandead) == 4)
 					break;
 
-				if (data.byte(kNewlocation) != 255) {
+				if (_newLocation != 255) {
 					// "loadNew"
 					clearBeforeLoad();
 					loadRoom();
@@ -621,9 +621,9 @@ void DreamBase::dreamweb() {
 					initMan();
 					entryTexts();
 					entryAnims();
-					data.byte(kNewlocation) = 255;
+					_newLocation = 255;
 					startup();
-					data.byte(kCommandtype) = 255;
+					_commandType = 255;
 					workToScreenM();
 				}
 			}
@@ -697,7 +697,7 @@ void DreamBase::screenUpdate() {
 	animPointer();
 
 	showPointer();
-	if ((data.word(kWatchingtime) == 0) && (data.byte(kNewlocation) != 0xff))
+	if ((data.word(kWatchingtime) == 0) && (_newLocation != 0xff))
 		return;
 	vSync();
 	uint16 mouseState = 0;
@@ -736,9 +736,9 @@ void DreamBase::screenUpdate() {
 
 	showPointer();
 	vSync();
-	data.word(kOldbutton) = data.word(kMousebutton);
+	_oldButton = _mouseButton;
 	mouseState |= readMouseState();
-	data.word(kMousebutton) = mouseState;
+	_mouseButton = mouseState;
 	dumpPointer();
 
 	dumpWatch();
@@ -746,8 +746,8 @@ void DreamBase::screenUpdate() {
 }
 
 void DreamBase::startup() {
-	data.byte(kCurrentkey) = 0;
-	data.byte(kMainmode) = 0;
+	_currentKey = 0;
+	_mainMode = 0;
 	createPanel();
 	data.byte(kNewobs) = 1;
 	drawFloor();
@@ -836,7 +836,7 @@ void DreamBase::hangOnCurs(uint16 frameCount) {
 }
 
 void DreamBase::seeCommandTail() {
-	data.byte(kBrightness) = 1;
+	_brightness = 1;
 }
 
 void DreamBase::quickQuit() {
@@ -848,27 +848,27 @@ void DreamBase::quickQuit2() {
 }
 
 void DreamBase::readMouse() {
-	data.word(kOldbutton) = data.word(kMousebutton);
+	_oldButton = _mouseButton;
 	uint16 state = readMouseState();
-	data.word(kMousebutton) = state;
+	_mouseButton = state;
 }
 
 uint16 DreamBase::readMouseState() {
-	data.word(kOldx) = data.word(kMousex);
-	data.word(kOldy) = data.word(kMousey);
+	_oldX = _mouseX;
+	_oldY = _mouseY;
 	uint16 x, y, state;
 	engine->mouseCall(&x, &y, &state);
-	data.word(kMousex) = x;
-	data.word(kMousey) = y;
+	_mouseX = x;
+	_mouseY = y;
 	return state;
 }
 
 void DreamBase::dumpTextLine() {
-	if (data.byte(kNewtextline) != 1)
+	if (_newTextLine != 1)
 		return;
-	data.byte(kNewtextline) = 0;
-	uint16 x = data.word(kTextaddressx);
-	uint16 y = data.word(kTextaddressy);
+	_newTextLine = 0;
+	uint16 x = _textAddressX;
+	uint16 y = _textAddressY;
 	if (_foreignRelease)
 		y -= 3;
 	multiDump(x, y, 228, 13);
@@ -876,16 +876,16 @@ void DreamBase::dumpTextLine() {
 
 void DreamBase::getUnderTimed() {
 	if (_foreignRelease)
-		multiGet(_underTimedText, data.byte(kTimedx), data.byte(kTimedy) - 3, 240, kUnderTimedTextSizeY_f);
+		multiGet(_underTimedText, _timedX, _timedY - 3, 240, kUnderTimedTextSizeY_f);
 	else
-		multiGet(_underTimedText, data.byte(kTimedx), data.byte(kTimedy), 240, kUnderTimedTextSizeY);
+		multiGet(_underTimedText, _timedX, _timedY, 240, kUnderTimedTextSizeY);
 }
 
 void DreamBase::putUnderTimed() {
 	if (_foreignRelease)
-		multiPut(_underTimedText, data.byte(kTimedx), data.byte(kTimedy) - 3, 240, kUnderTimedTextSizeY_f);
+		multiPut(_underTimedText, _timedX, _timedY - 3, 240, kUnderTimedTextSizeY_f);
 	else
-		multiPut(_underTimedText, data.byte(kTimedx), data.byte(kTimedy), 240, kUnderTimedTextSizeY);
+		multiPut(_underTimedText, _timedX, _timedY, 240, kUnderTimedTextSizeY);
 }
 
 void DreamBase::triggerMessage(uint16 index) {
@@ -915,23 +915,23 @@ void DreamBase::processTrigger() {
 }
 
 void DreamBase::useTimedText() {
-	if (data.word(kTimecount) == 0)
+	if (_timeCount == 0)
 		return;
-	--data.word(kTimecount);
-	if (data.word(kTimecount) == 0) {
+	--_timeCount;
+	if (_timeCount == 0) {
 		putUnderTimed();
-		data.byte(kNeedtodumptimed) = 1;
+		_needToDumpTimed = 1;
 		return;
 	}
 
-	if (data.word(kTimecount) == data.word(kCounttotimed))
+	if (_timeCount == _countToTimed)
 		getUnderTimed();
-	else if (data.word(kTimecount) > data.word(kCounttotimed))
+	else if (_timeCount > _countToTimed)
 		return;
 
 	const uint8 *string = (const uint8 *)_timedString;
-	printDirect(string, data.byte(kTimedx), data.byte(kTimedy), 237, true);
-	data.byte(kNeedtodumptimed) = 1;
+	printDirect(string, _timedX, _timedY, 237, true);
+	_needToDumpTimed = 1;
 }
 
 void DreamBase::setupTimedTemp(uint8 textIndex, uint8 voiceIndex, uint8 x, uint8 y, uint16 countToTimed, uint16 timeCount) {
@@ -949,25 +949,25 @@ void DreamBase::setupTimedTemp(uint8 textIndex, uint8 voiceIndex, uint8 x, uint8
 	}
 #endif
 
-	if (data.word(kTimecount) != 0)
+	if (_timeCount != 0)
 		return;
-	data.byte(kTimedy) = y;
-	data.byte(kTimedx) = x;
-	data.word(kCounttotimed) = countToTimed;
-	data.word(kTimecount) = timeCount + countToTimed;
+	_timedY = y;
+	_timedX = x;
+	_countToTimed = countToTimed;
+	_timeCount = timeCount + countToTimed;
 	_timedString = _textFile1.getString(textIndex);
 	debug(1, "setupTimedTemp: (%d, %d) => '%s'", textIndex, voiceIndex, _timedString);
 }
 
 void DreamBase::dumpTimedText() {
-	if (data.byte(kNeedtodumptimed) != 1)
+	if (_needToDumpTimed != 1)
 		return;
-	uint8 y = data.byte(kTimedy);
+	uint8 y = _timedY;
 	if (_foreignRelease)
 		y -= 3;
 
-	multiDump(data.byte(kTimedx), y, 240, kUndertimedysize);
-	data.byte(kNeedtodumptimed) = 0;
+	multiDump(_timedX, y, 240, kUndertimedysize);
+	_needToDumpTimed = 0;
 }
 
 void DreamBase::getTime() {
@@ -994,13 +994,13 @@ void DreamBase::deallocateMem(uint16 segment) {
 }
 
 void DreamBase::DOSReturn() {
-	if (data.byte(kCommandtype) != 250) {
-		data.byte(kCommandtype) = 250;
+	if (_commandType != 250) {
+		_commandType = 250;
 		commandOnly(46);
 	}
 
-	if (data.word(kMousebutton) & 1) {
-		data.word(kMousebutton) = 0;
+	if (_mouseButton & 1) {
+		_mouseButton = 0;
 		engine->quit();
 	}
 }
@@ -1028,23 +1028,23 @@ void DreamBase::lockMon() {
 	// key because calling readkey() drains characters from the input
 	// buffer, we we want the user to be able to type ahead while the text
 	// is being printed.
-	if (data.byte(kLasthardkey) == 57) {
+	if (_lastHardKey == 57) {
 		// Clear the keyboard buffer. Otherwise the space that caused
 		// the pause will be read immediately unpause the game.
 		do {
 			readKey();
-		} while (data.byte(kCurrentkey) != 0);
+		} while (_currentKey != 0);
 
 		lockLightOn();
 		while (!engine->shouldQuit()) {
 			engine->waitForVSync();
 			readKey();
-			if (data.byte(kCurrentkey) == ' ')
+			if (_currentKey == ' ')
 				break;
 		}
 		// Forget the last "hard" key, otherwise the space that caused
 		// the unpausing will immediately re-pause the game.
-		data.byte(kLasthardkey) = 0;
+		_lastHardKey = 0;
 		lockLightOff();
 	}
 }
@@ -1059,19 +1059,19 @@ void DreamBase::clearAndLoad(uint8 *buf, uint8 c,
 void DreamBase::startLoading(const Room &room) {
 	data.byte(kCombatcount) = 0;
 	_roomsSample = room.roomsSample;
-	data.byte(kMapx) = room.mapX;
-	data.byte(kMapy) = room.mapY;
+	_mapX = room.mapX;
+	_mapY = room.mapY;
 	data.byte(kLiftflag) = room.liftFlag;
-	data.byte(kManspath) = room.b21;
-	data.byte(kDestination) = room.b21;
-	data.byte(kFinaldest) = room.b21;
-	data.byte(kFacing) = room.facing;
-	data.byte(kTurntoface) = room.facing;
+	_mansPath = room.b21;
+	_destination = room.b21;
+	_finalDest = room.b21;
+	_facing = room.facing;
+	_turnToFace = room.facing;
 	data.byte(kCounttoopen) = room.countToOpen;
 	data.byte(kLiftpath) = room.liftPath;
 	data.byte(kDoorpath) = room.doorPath;
 	data.byte(kLastweapon) = (uint8)-1;
-	data.byte(kReallocation) = room.realLocation;
+	_realLocation = room.realLocation;
 
 	loadRoomData(room, false);
 
@@ -1079,14 +1079,14 @@ void DreamBase::startLoading(const Room &room) {
 	deleteTaken();
 	setAllChanges();
 	autoAppear();
-//	const Room &newRoom = g_roomData[data.byte(kNewlocation)];
+//	const Room &newRoom = g_roomData[_newLocation];
 	data.byte(kLastweapon) = (uint8)-1;
 	data.byte(kMandead) = 0;
-	data.word(kLookcounter) = 160;
-	data.byte(kNewlocation) = 255;
-	data.byte(kLinepointer) = 254;
+	_lookCounter = 160;
+	_newLocation = 255;
+	_linePointer = 254;
 	if (room.b27 != 255) {
-		data.byte(kManspath) = room.b27;
+		_mansPath = room.b27;
 		autoSetWalk();
 	}
 	findXYFromPath();
@@ -1096,24 +1096,24 @@ void DreamBase::dealWithSpecial(uint8 firstParam, uint8 secondParam) {
 	uint8 type = firstParam - 220;
 	if (type == 0) {
 		placeSetObject(secondParam);
-		data.byte(kHavedoneobs) = 1;
+		_haveDoneObs = 1;
 	} else if (type == 1) {
 		removeSetObject(secondParam);
-		data.byte(kHavedoneobs) = 1;
+		_haveDoneObs = 1;
 	} else if (type == 2) {
 		placeFreeObject(secondParam);
-		data.byte(kHavedoneobs) = 1;
+		_haveDoneObs = 1;
 	} else if (type == 3) {
 		removeFreeObject(secondParam);
-		data.byte(kHavedoneobs) = 1;
+		_haveDoneObs = 1;
 	} else if (type == 4) {
 		switchRyanOff();
 	} else if (type == 5) {
-		data.byte(kTurntoface) = secondParam;
-		data.byte(kFacing) = secondParam;
+		_turnToFace = secondParam;
+		_facing = secondParam;
 		switchRyanOn();
 	} else if (type == 6) {
-		data.byte(kNewlocation) = secondParam;
+		_newLocation = secondParam;
 	} else {
 		moveMap(secondParam);
 	}
@@ -1137,7 +1137,7 @@ void DreamBase::plotReel(uint16 &reelPointer) {
 
 void DreamBase::crosshair() {
 	uint8 frame;
-	if ((data.byte(kCommandtype) != 3) && (data.byte(kCommandtype) < 10)) {
+	if ((_commandType != 3) && (_commandType < 10)) {
 		frame = 9;
 	} else {
 		frame = 29;
@@ -1147,16 +1147,16 @@ void DreamBase::crosshair() {
 
 void DreamBase::delTextLine() {
 	if (_foreignRelease)
-		multiPut(_textUnder, data.byte(kTextaddressx), data.word(kTextaddressy) - 3, kUnderTextSizeX_f, kUnderTextSizeY_f);
+		multiPut(_textUnder, _textAddressX, _textAddressY - 3, kUnderTextSizeX_f, kUnderTextSizeY_f);
 	else
-		multiPut(_textUnder, data.byte(kTextaddressx), data.word(kTextaddressy), kUnderTextSizeX, kUnderTextSizeY);
+		multiPut(_textUnder, _textAddressX, _textAddressY, kUnderTextSizeX, kUnderTextSizeY);
 }
 
 void DreamBase::commandOnly(uint8 command) {
 	delTextLine();
 	const uint8 *string = (const uint8 *)_commandText.getString(command);
-	printDirect(string, data.word(kTextaddressx), data.word(kTextaddressy), data.byte(kTextlen), (bool)(data.byte(kTextlen) & 1));
-	data.byte(kNewtextline) = 1;
+	printDirect(string, _textAddressX, _textAddressY, _textLen, (bool)(_textLen & 1));
+	_newTextLine = 1;
 }
 
 bool DreamBase::checkIfPerson(uint8 x, uint8 y) {
@@ -1244,46 +1244,46 @@ void DreamBase::copyName(uint8 type, uint8 index, uint8 *dst) {
 void DreamBase::commandWithOb(uint8 command, uint8 type, uint8 index) {
 	uint8 commandLine[64] = "OBJECT NAME ONE                         ";
 	delTextLine();
-	uint8 textLen = data.byte(kTextlen);
+	uint8 textLen = _textLen;
 
 	const uint8 *string = (const uint8 *)_commandText.getString(command);
-	printDirect(string, data.word(kTextaddressx), data.word(kTextaddressy), textLen, (bool)(textLen & 1));
+	printDirect(string, _textAddressX, _textAddressY, textLen, (bool)(textLen & 1));
 
 	copyName(type, index, commandLine);
-	uint16 x = data.word(kLastxpos);
+	uint16 x = _lastXPos;
 	if (command != 0)
 		x += 5;
-	printDirect(commandLine, x, data.word(kTextaddressy), textLen, (bool)(textLen & 1));
-	data.byte(kNewtextline) = 1;
+	printDirect(commandLine, x, _textAddressY, textLen, (bool)(textLen & 1));
+	_newTextLine = 1;
 }
 
 void DreamBase::examineObText() {
-	commandWithOb(1, data.byte(kCommandtype), data.byte(kCommand));
+	commandWithOb(1, _commandType, _command);
 }
 
 void DreamBase::blockNameText() {
-	commandWithOb(0, data.byte(kCommandtype), data.byte(kCommand));
+	commandWithOb(0, _commandType, _command);
 }
 
 void DreamBase::personNameText() {
-	commandWithOb(2, data.byte(kCommandtype), data.byte(kCommand) & 127);
+	commandWithOb(2, _commandType, _command & 127);
 }
 
 void DreamBase::walkToText() {
-	commandWithOb(3, data.byte(kCommandtype), data.byte(kCommand));
+	commandWithOb(3, _commandType, _command);
 }
 
 void DreamBase::findOrMake(uint8 index, uint8 value, uint8 type) {
 	Change *change = _listOfChanges;
 	for (; change->index != 0xff; ++change) {
-		if (index == change->index && data.byte(kReallocation) == change->location && type == change->type) {
+		if (index == change->index && _realLocation == change->location && type == change->type) {
 			change->value = value;
 			return;
 		}
 	}
 
 	change->index = index;
-	change->location = data.byte(kReallocation);
+	change->location = _realLocation;
 	change->value = value;
 	change->type = type;
 }
@@ -1291,7 +1291,7 @@ void DreamBase::findOrMake(uint8 index, uint8 value, uint8 type) {
 void DreamBase::setAllChanges() {
 	Change *change = _listOfChanges;
 	for (; change->index != 0xff; ++change)
-		if (change->location == data.byte(kReallocation))
+		if (change->location == _realLocation)
 			doChange(change->index, change->value, change->type);
 }
 
@@ -1304,25 +1304,25 @@ DynObject *DreamBase::getExAd(uint8 index) {
 }
 
 DynObject *DreamBase::getEitherAdCPP() {
-	if (data.byte(kObjecttype) == kExObjectType)
-		return getExAd(data.byte(kItemframe));
+	if (_objectType == kExObjectType)
+		return getExAd(_itemFrame);
 	else
-		return getFreeAd(data.byte(kItemframe));
+		return getFreeAd(_itemFrame);
 }
 
 void *DreamBase::getAnyAd(uint8 *slotSize, uint8 *slotCount) {
-	if (data.byte(kObjecttype) == kExObjectType) {
-		DynObject *exObject = getExAd(data.byte(kCommand));
+	if (_objectType == kExObjectType) {
+		DynObject *exObject = getExAd(_command);
 		*slotSize = exObject->slotSize;
 		*slotCount = exObject->slotCount;
 		return exObject;
-	} else if (data.byte(kObjecttype) == kFreeObjectType) {
-		DynObject *freeObject = getFreeAd(data.byte(kCommand));
+	} else if (_objectType == kFreeObjectType) {
+		DynObject *freeObject = getFreeAd(_command);
 		*slotSize = freeObject->slotSize;
 		*slotCount = freeObject->slotCount;
 		return freeObject;
 	} else {	// 1 or 3. 0 should never happen
-		SetObject *setObject = getSetAd(data.byte(kCommand));
+		SetObject *setObject = getSetAd(_command);
 		// Note: the original returned slotCount/priority (bytes 4 and 5)
 		// instead of slotSize/slotCount (bytes 3 and 4).
 		// Changed this for consistency with the Ex/Free cases, and also
@@ -1361,7 +1361,7 @@ void DreamBase::doChange(uint8 index, uint8 value, uint8 type) {
 void DreamBase::deleteTaken() {
 	for (size_t i = 0; i < kNumexobjects; ++i) {
 		uint8 location = _exData[i].initialLocation;
-		if (location == data.byte(kReallocation)) {
+		if (location == _realLocation) {
 			uint8 index = _exData[i].index;
 			_freeDat[index].mapad[0] = 0xfe;
 		}
@@ -1388,42 +1388,42 @@ void DreamBase::removeSetObject(uint8 index) {
 }
 
 bool DreamBase::finishedWalking() {
-	return (data.byte(kLinepointer) == 254) && (data.byte(kFacing) == data.byte(kTurntoface));
+	return (_linePointer == 254) && (_facing == _turnToFace);
 }
 
 void DreamBase::getFlagUnderP(uint8 *flag, uint8 *flagEx) {
 	uint8 type, flagX, flagY;
-	checkOne(data.word(kMousex) - data.word(kMapadx), data.word(kMousey) - data.word(kMapady), flag, flagEx, &type, &flagX, &flagY);
-	data.byte(kLastflag) = *flag;
+	checkOne(_mouseX - _mapAdX, _mouseY - _mapAdY, flag, flagEx, &type, &flagX, &flagY);
+	_lastFlag = *flag;
 }
 
 void DreamBase::walkAndExamine() {
 	if (!finishedWalking())
 		return;
-	data.byte(kCommandtype) = data.byte(kWalkexamtype);
-	data.byte(kCommand) = data.byte(kWalkexamnum);
-	data.byte(kWalkandexam) = 0;
-	if (data.byte(kCommandtype) != 5)
+	_commandType = _walkExamType;
+	_command = _walkExamNum;
+	_walkAndExam = 0;
+	if (_commandType != 5)
 		examineOb();
 }
 
 void DreamBase::obName(uint8 command, uint8 commandType) {
-	if (data.byte(kReasseschanges) == 0) {
-		if ((commandType == data.byte(kCommandtype)) && (command == data.byte(kCommand))) {
-			if (data.byte(kWalkandexam) == 1) {
+	if (_reAssesChanges == 0) {
+		if ((commandType == _commandType) && (command == _command)) {
+			if (_walkAndExam == 1) {
 				walkAndExamine();
 				return;
-			} else if (data.word(kMousebutton) == 0)
+			} else if (_mouseButton == 0)
 				return;
-			else if ((data.byte(kCommandtype) == 3) && (data.byte(kLastflag) < 2))
+			else if ((_commandType == 3) && (_lastFlag < 2))
 				return;
-			else if ((data.byte(kManspath) != data.byte(kPointerspath)) || (data.byte(kCommandtype) == 3)) {
+			else if ((_mansPath != _pointersPath) || (_commandType == 3)) {
 				setWalk();
-				data.byte(kReasseschanges) = 1;
+				_reAssesChanges = 1;
 				return;
 			} else if (!finishedWalking())
 				return;
-			else if (data.byte(kCommandtype) == 5) {
+			else if (_commandType == 5) {
 				if (data.word(kWatchingtime) == 0)
 					talk();
 				return;
@@ -1434,21 +1434,21 @@ void DreamBase::obName(uint8 command, uint8 commandType) {
 			}
 		}
 	} else
-		data.byte(kReasseschanges) = 0;
+		_reAssesChanges = 0;
 
-	data.byte(kCommand) = command;
-	data.byte(kCommandtype) = commandType;
-	if ((data.byte(kLinepointer) != 254) || (data.word(kWatchingtime) != 0) || (data.byte(kFacing) != data.byte(kTurntoface))) {
+	_command = command;
+	_commandType = commandType;
+	if ((_linePointer != 254) || (data.word(kWatchingtime) != 0) || (_facing != _turnToFace)) {
 		blockNameText();
 		return;
-	} else if (data.byte(kCommandtype) != 3) {
-		if (data.byte(kManspath) != data.byte(kPointerspath)) {
+	} else if (_commandType != 3) {
+		if (_mansPath != _pointersPath) {
 			walkToText();
 			return;
-		} else if (data.byte(kCommandtype) == 3) {
+		} else if (_commandType == 3) {
 			blockNameText();
 			return;
-		} else if (data.byte(kCommandtype) == 5) {
+		} else if (_commandType == 5) {
 			personNameText();
 			return;
 		} else {
@@ -1456,9 +1456,9 @@ void DreamBase::obName(uint8 command, uint8 commandType) {
 			return;
 		}
 	}
-	if (data.byte(kManspath) == data.byte(kPointerspath)) {
+	if (_mansPath == _pointersPath) {
 		uint8 flag, flagEx, type, flagX, flagY;
-		checkOne(data.byte(kRyanx) + 12, data.byte(kRyany) + 12, &flag, &flagEx, &type, &flagX, &flagY);
+		checkOne(_ryanX + 12, _ryanY + 12, &flag, &flagEx, &type, &flagX, &flagY);
 		if (flag < 2) {
 			blockNameText();
 			return;
@@ -1467,10 +1467,10 @@ void DreamBase::obName(uint8 command, uint8 commandType) {
 
 	uint8 flag, flagEx;
 	getFlagUnderP(&flag, &flagEx);
-	if (data.byte(kLastflag) < 2) {
+	if (_lastFlag < 2) {
 		blockNameText();
 		return;
-	} else if (data.byte(kLastflag) >= 128) {
+	} else if (_lastFlag >= 128) {
 		blockNameText();
 		return;
 	} else {
@@ -1480,29 +1480,29 @@ void DreamBase::obName(uint8 command, uint8 commandType) {
 }
 
 void DreamBase::delPointer() {
-	if (data.word(kOldpointerx) == 0xffff)
+	if (_oldPointerX == 0xffff)
 		return;
-	data.word(kDelherex) = data.word(kOldpointerx);
-	data.word(kDelherey) = data.word(kOldpointery);
-	data.byte(kDelxs) = data.byte(kPointerxs);
-	data.byte(kDelys) = data.byte(kPointerys);
-	multiPut(_pointerBack, data.word(kDelherex), data.word(kDelherey), data.byte(kPointerxs), data.byte(kPointerys));
+	_delHereX = _oldPointerX;
+	_delHereY = _oldPointerY;
+	_delXS = _pointerXS;
+	_delYS = _pointerYS;
+	multiPut(_pointerBack, _delHereX, _delHereY, _pointerXS, _pointerYS);
 }
 
 void DreamBase::showBlink() {
-	if (data.byte(kManisoffscreen) == 1)
+	if (_manIsOffScreen == 1)
 		return;
-	++data.byte(kBlinkcount);
+	++_blinkCount;
 	if (data.byte(kShadeson) != 0)
 		return;
-	if (data.byte(kReallocation) >= 50) // eyesshut
+	if (_realLocation >= 50) // eyesshut
 		return;
-	if (data.byte(kBlinkcount) != 3)
+	if (_blinkCount != 3)
 		return;
-	data.byte(kBlinkcount) = 0;
-	uint8 blinkFrame = data.byte(kBlinkframe);
+	_blinkCount = 0;
+	uint8 blinkFrame = _blinkFrame;
 	++blinkFrame; // Implicit %256
-	data.byte(kBlinkframe) = blinkFrame;
+	_blinkFrame = blinkFrame;
 	if (blinkFrame > 6)
 		blinkFrame = 6;
 	static const uint8 blinkTab[] = { 16,18,18,17,16,16,16 };
@@ -1513,28 +1513,28 @@ void DreamBase::showBlink() {
 void DreamBase::dumpBlink() {
 	if (data.byte(kShadeson) != 0)
 		return;
-	if (data.byte(kBlinkcount) != 0)
+	if (_blinkCount != 0)
 		return;
-	if (data.byte(kBlinkframe) >= 6)
+	if (_blinkFrame >= 6)
 		return;
 	multiDump(44, 32, 16, 12);
 }
 
 void DreamBase::dumpPointer() {
 	dumpBlink();
-	multiDump(data.word(kDelherex), data.word(kDelherey), data.byte(kDelxs), data.byte(kDelys));
-	if ((data.word(kOldpointerx) != data.word(kDelherex)) || (data.word(kOldpointery) != data.word(kDelherey)))
-		multiDump(data.word(kOldpointerx), data.word(kOldpointery), data.byte(kPointerxs), data.byte(kPointerys));
+	multiDump(_delHereX, _delHereY, _delXS, _delYS);
+	if ((_oldPointerX != _delHereX) || (_oldPointerY != _delHereY))
+		multiDump(_oldPointerX, _oldPointerY, _pointerXS, _pointerYS);
 }
 
 template <class T>
 void DreamBase::checkCoords(const RectWithCallback<T> *rectWithCallbacks) {
-	if (data.byte(kNewlocation) != 0xff)
+	if (_newLocation != 0xff)
 		return;
 
 	const RectWithCallback<T> *r;
 	for (r = rectWithCallbacks; r->_xMin != 0xffff; ++r) {
-		if (r->contains(data.word(kMousex), data.word(kMousey))) {
+		if (r->contains(_mouseX, _mouseY)) {
 			(((T *)this)->*(r->_callback))();
 			return;
 		}
@@ -1543,17 +1543,17 @@ void DreamBase::checkCoords(const RectWithCallback<T> *rectWithCallbacks) {
 
 void DreamBase::showPointer() {
 	showBlink();
-	uint16 x = data.word(kMousex);
-	data.word(kOldpointerx) = data.word(kMousex);
-	uint16 y = data.word(kMousey);
-	data.word(kOldpointery) = data.word(kMousey);
-	if (data.byte(kPickup) == 1) {
+	uint16 x = _mouseX;
+	_oldPointerX = _mouseX;
+	uint16 y = _mouseY;
+	_oldPointerY = _mouseY;
+	if (_pickUp == 1) {
 		const GraphicsFile *frames;
-		if (data.byte(kObjecttype) != kExObjectType)
+		if (_objectType != kExObjectType)
 			frames = &_freeFrames;
 		else
 			frames = &_exFrames;
-		const Frame *frame = &frames->_frames[(3 * data.byte(kItemframe) + 1)];
+		const Frame *frame = &frames->_frames[(3 * _itemFrame + 1)];
 
 		uint8 width = frame->width;
 		uint8 height = frame->height;
@@ -1561,58 +1561,58 @@ void DreamBase::showPointer() {
 			width = 12;
 		if (height < 12)
 			height = 12;
-		data.byte(kPointerxs) = width;
-		data.byte(kPointerys) = height;
+		_pointerXS = width;
+		_pointerYS = height;
 		uint16 xMin = (x >= width / 2) ? x - width / 2 : 0;
 		uint16 yMin = (y >= height / 2) ? y - height / 2 : 0;
-		data.word(kOldpointerx) = xMin;
-		data.word(kOldpointery) = yMin;
+		_oldPointerX = xMin;
+		_oldPointerY = yMin;
 		multiGet(_pointerBack, xMin, yMin, width, height);
-		showFrame(*frames, x, y, 3 * data.byte(kItemframe) + 1, 128);
+		showFrame(*frames, x, y, 3 * _itemFrame + 1, 128);
 		showFrame(_icons1, x, y, 3, 128);
 	} else {
-		const Frame *frame = &_icons1._frames[data.byte(kPointerframe) + 20];
+		const Frame *frame = &_icons1._frames[_pointerFrame + 20];
 		uint8 width = frame->width;
 		uint8 height = frame->height;
 		if (width < 12)
 			width = 12;
 		if (height < 12)
 			height = 12;
-		data.byte(kPointerxs) = width;
-		data.byte(kPointerys) = height;
+		_pointerXS = width;
+		_pointerYS = height;
 		multiGet(_pointerBack, x, y, width, height);
-		showFrame(_icons1, x, y, data.byte(kPointerframe) + 20, 0);
+		showFrame(_icons1, x, y, _pointerFrame + 20, 0);
 	}
 }
 
 void DreamBase::animPointer() {
 
-	if (data.byte(kPointermode) == 2) {
-		data.byte(kPointerframe) = 0;
-		if ((data.byte(kReallocation) == 14) && (data.byte(kCommandtype) == 211))
-			data.byte(kPointerframe) = 5;
+	if (_pointerMode == 2) {
+		_pointerFrame = 0;
+		if ((_realLocation == 14) && (_commandType == 211))
+			_pointerFrame = 5;
 		return;
-	} else if (data.byte(kPointermode) == 3) {
-		if (data.byte(kPointerspeed) != 0) {
-			--data.byte(kPointerspeed);
+	} else if (_pointerMode == 3) {
+		if (_pointerSpeed != 0) {
+			--_pointerSpeed;
 		} else {
-			data.byte(kPointerspeed) = 5;
-			++data.byte(kPointercount);
-			if (data.byte(kPointercount) == 16)
-				data.byte(kPointercount) = 0;
+			_pointerSpeed = 5;
+			++_pointerCount;
+			if (_pointerCount == 16)
+				_pointerCount = 0;
 		}
 		static const uint8 flashMouseTab[] = { 1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2 };
-		data.byte(kPointerframe) = flashMouseTab[data.byte(kPointercount)];
+		_pointerFrame = flashMouseTab[_pointerCount];
 		return;
 	}
 	if (data.word(kWatchingtime) != 0) {
-		data.byte(kPointerframe) = 11;
+		_pointerFrame = 11;
 		return;
 	}
-	data.byte(kPointerframe) = 0;
-	if (data.byte(kInmaparea) == 0)
+	_pointerFrame = 0;
+	if (_inMapArea == 0)
 		return;
-	if (data.byte(kPointerfirstpath) == 0)
+	if (_pointerFirstPath == 0)
 		return;
 	uint8 flag, flagEx;
 	getFlagUnderP(&flag, &flagEx);
@@ -1621,22 +1621,22 @@ void DreamBase::animPointer() {
 	if (flag >= 128)
 		return;
 	if (flag & 4) {
-		data.byte(kPointerframe) = 3;
+		_pointerFrame = 3;
 		return;
 	}
 	if (flag & 16) {
-		data.byte(kPointerframe) = 4;
+		_pointerFrame = 4;
 		return;
 	}
 	if (flag & 2) {
-		data.byte(kPointerframe) = 5;
+		_pointerFrame = 5;
 		return;
 	}
 	if (flag & 8) {
-		data.byte(kPointerframe) = 6;
+		_pointerFrame = 6;
 		return;
 	}
-	data.byte(kPointerframe) = 8;
+	_pointerFrame = 8;
 }
 
 void DreamBase::printMessage(uint16 x, uint16 y, uint8 index, uint8 maxWidth, bool centered) {
@@ -1707,7 +1707,7 @@ bool DreamBase::isCD() {
 }
 
 void DreamBase::showIcon() {
-	if (data.byte(kReallocation) < 50) {
+	if (_realLocation < 50) {
 		showPanel();
 		showMan();
 		roomName();
@@ -1775,12 +1775,12 @@ void DreamBase::hangOnW(uint16 frameCount) {
 }
 
 void DreamBase::hangOnP(uint16 count) {
-	data.word(kMaintimer) = 0;
-	uint8 pointerFrame = data.byte(kPointerframe);
-	uint8 pickup = data.byte(kPickup);
-	data.byte(kPointermode) = 3;
-	data.byte(kPickup) = 0;
-	data.byte(kCommandtype) = 255;
+	_mainTimer = 0;
+	uint8 pointerFrame = _pointerFrame;
+	uint8 pickup = _pickUp;
+	_pointerMode = 3;
+	_pickUp = 0;
+	_commandType = 255;
 	readMouse();
 	animPointer();
 	showPointer();
@@ -1797,14 +1797,14 @@ void DreamBase::hangOnP(uint16 count) {
 		dumpPointer();
 		if (_quitRequested)
 			break;
-		if (data.word(kMousebutton) != 0 && data.word(kMousebutton) != data.word(kOldbutton))
+		if (_mouseButton != 0 && _mouseButton != _oldButton)
 			break;
 	}
 
 	delPointer();
-	data.byte(kPointerframe) = pointerFrame;
-	data.byte(kPickup) = pickup;
-	data.byte(kPointermode) = 0;
+	_pointerFrame = pointerFrame;
+	_pickUp = pickup;
+	_pointerMode = 0;
 }
 
 uint8 DreamBase::findNextColon(const uint8 **string) {
@@ -1817,18 +1817,18 @@ uint8 DreamBase::findNextColon(const uint8 **string) {
 }
 
 void DreamBase::enterSymbol() {
-	data.byte(kManisoffscreen) = 1;
+	_manIsOffScreen = 1;
 	getRidOfReels();
 	loadIntoTemp("DREAMWEB.G12"); // symbol graphics
-	data.byte(kSymboltopx) = 24;
-	data.byte(kSymboltopdir) = 0;
-	data.byte(kSymbolbotx) = 24;
-	data.byte(kSymbolbotdir) = 0;
+	_symbolTopX = 24;
+	_symbolTopDir = 0;
+	_symbolBotX = 24;
+	_symbolBotDir = 0;
 	redrawMainScrn();
 	showSymbol();
 	underTextLine();
 	workToScreenM();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 	do {
 		delPointer();
 		updateSymbolTop();
@@ -1850,12 +1850,12 @@ void DreamBase::enterSymbol() {
 			{ 0xFFFF,0,0,0,0 }
 		};
 		checkCoords(symbolList);
-	} while ((data.byte(kGetback) == 0) && !_quitRequested);
-	if ((data.byte(kSymbolbotnum) == 3) && (data.byte(kSymboltopnum) == 5)) {
+	} while ((_getBack == 0) && !_quitRequested);
+	if ((_symbolBotNum == 3) && (_symbolTopNum == 5)) {
 		removeSetObject(43);
 		placeSetObject(46);
-		turnAnyPathOn(0, data.byte(kRoomnum) + 12);
-		data.byte(kManisoffscreen) = 0;
+		turnAnyPathOn(0, _roomNum + 12);
+		_manIsOffScreen = 0;
 		redrawMainScrn();
 		getRidOfTemp();
 		restoreReels();
@@ -1864,8 +1864,8 @@ void DreamBase::enterSymbol() {
 	} else {
 		removeSetObject(46);
 		placeSetObject(43);
-		turnAnyPathOff(0, data.byte(kRoomnum) + 12);
-		data.byte(kManisoffscreen) = 0;
+		turnAnyPathOff(0, _roomNum + 12);
+		_manIsOffScreen = 0;
 		redrawMainScrn();
 		getRidOfTemp();
 		restoreReels();
@@ -1874,17 +1874,17 @@ void DreamBase::enterSymbol() {
 }
 
 void DreamBase::zoomOnOff() {
-	if (data.word(kWatchingtime) != 0 || data.byte(kPointermode) == 2) {
+	if (data.word(kWatchingtime) != 0 || _pointerMode == 2) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(39);
 	}
 
-	if (!(data.word(kMousebutton) & 1) || (data.word(kMousebutton) == data.word(kOldbutton)))
+	if (!(_mouseButton & 1) || (_mouseButton == _oldButton))
 		return;
 
 	data.byte(kZoomon) ^= 1;
@@ -1912,7 +1912,7 @@ void DreamBase::sortOutMap() {
 }
 
 void DreamBase::mainScreen() {
-	data.byte(kInmaparea) = 0;
+	_inMapArea = 0;
 	if (data.byte(kWatchon) == 1) {
 		RectWithCallback<DreamBase> mainList[] = {
 			{ 44,70,32,46,&DreamBase::look },
@@ -1937,7 +1937,7 @@ void DreamBase::mainScreen() {
 		checkCoords(mainList2);
 	}
 
-	if (data.byte(kWalkandexam) != 0)
+	if (_walkAndExam != 0)
 		walkAndExamine();
 }
 
@@ -1949,10 +1949,10 @@ void DreamBase::showWatch() {
 }
 
 void DreamBase::dumpWatch() {
-	if (data.byte(kWatchdump) != 1)
+	if (_watchDump != 1)
 		return;
 	multiDump(256, 21, 40, 12);
-	data.byte(kWatchdump) = 0;
+	_watchDump = 0;
 }
 
 void DreamBase::showTime() {
@@ -1978,12 +1978,12 @@ void DreamBase::showTime() {
 void DreamBase::watchCount() {
 	if (data.byte(kWatchon) == 0)
 		return;
-	++data.byte(kTimercount);
-	if (data.byte(kTimercount) == 9) {
+	++_timerCount;
+	if (_timerCount == 9) {
 		showFrame(_charset1, 268+4, 21, 91*3+21, 0);
-		data.byte(kWatchdump) = 1;
-	} else if (data.byte(kTimercount) == 18) {
-		data.byte(kTimercount) = 0;
+		_watchDump = 1;
+	} else if (_timerCount == 18) {
+		_timerCount = 0;
 		++data.byte(kSecondcount);
 		if (data.byte(kSecondcount) == 60) {
 			data.byte(kSecondcount) = 0;
@@ -1996,20 +1996,20 @@ void DreamBase::watchCount() {
 			}
 		}
 		showTime();
-		data.byte(kWatchdump) = 1;
+		_watchDump = 1;
 	}
 }
 
 void DreamBase::roomName() {
 	printMessage(88, 18, 53, 240, false);
-	uint16 textIndex = data.byte(kRoomnum);
+	uint16 textIndex = _roomNum;
 	if (textIndex >= 32)
 		textIndex -= 32;
-	data.word(kLinespacing) = 7;
+	_lineSpacing = 7;
 	uint8 maxWidth = (data.byte(kWatchon) == 1) ? 120 : 160;
 	const uint8 *string = (const uint8 *)_roomDesc.getString(textIndex);
 	printDirect(string, 88, 25, maxWidth, false);
-	data.word(kLinespacing) = 10;
+	_lineSpacing = 10;
 	useCharset1();
 }
 
@@ -2020,16 +2020,16 @@ void DreamBase::zoomIcon() {
 }
 
 void DreamBase::loadRoom() {
-	data.byte(kRoomloaded) = 1;
-	data.word(kTimecount) = 0;
-	data.word(kMaintimer) = 0;
-	data.word(kMapoffsetx) = 104;
-	data.word(kMapoffsety) = 38;
-	data.word(kTextaddressx) = 13;
-	data.word(kTextaddressy) = 182;
-	data.byte(kTextlen) = 240;
-	data.byte(kLocation) = data.byte(kNewlocation);
-	const Room &room = g_roomData[data.byte(kNewlocation)];
+	_roomLoaded = 1;
+	_timeCount = 0;
+	_mainTimer = 0;
+	_mapOffsetX = 104;
+	_mapOffsetY = 38;
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 240;
+	data.byte(kLocation) = _newLocation;
+	const Room &room = g_roomData[_newLocation];
 	startLoading(room);
 	loadRoomsSample();
 	switchRyanOn();
@@ -2057,20 +2057,20 @@ void DreamBase::readSetData() {
 }
 
 void DreamBase::findRoomInLoc() {
-	uint8 x = data.byte(kMapx) / 11;
-	uint8 y = data.byte(kMapy) / 10;
+	uint8 x = _mapX / 11;
+	uint8 y = _mapY / 10;
 	uint8 roomNum = y * 6 + x;
-	data.byte(kRoomnum) = roomNum;
+	_roomNum = roomNum;
 }
 
 void DreamBase::autoLook() {
-	if ((data.word(kMousex) != data.word(kOldx)) || (data.word(kMousey) != data.word(kOldy))) {
-		data.word(kLookcounter) = 1000;
+	if ((_mouseX != _oldX) || (_mouseY != _oldY)) {
+		_lookCounter = 1000;
 		return;
 	}
 
-	--data.word(kLookcounter);
-	if (data.word(kLookcounter))
+	--_lookCounter;
+	if (_lookCounter)
 		return;
 	if (data.word(kWatchingtime))
 		return;
@@ -2078,15 +2078,15 @@ void DreamBase::autoLook() {
 }
 
 void DreamBase::look() {
-	if (data.word(kWatchingtime) || (data.byte(kPointermode) == 2)) {
+	if (data.word(kWatchingtime) || (_pointerMode == 2)) {
 		blank();
 		return;
 	}
-	if (data.byte(kCommandtype) != 241) {
-		data.byte(kCommandtype) = 241;
+	if (_commandType != 241) {
+		_commandType = 241;
 		commandOnly(25);
 	}
-	if ((data.word(kMousebutton) == 1) && (data.word(kMousebutton) != data.word(kOldbutton)))
+	if ((_mouseButton == 1) && (_mouseButton != _oldButton))
 		doLook();
 }
 
@@ -2095,21 +2095,21 @@ void DreamBase::doLook() {
 	showIcon();
 	underTextLine();
 	workToScreenM();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	dumpTextLine();
-	uint8 index = data.byte(kRoomnum) & 31;
+	uint8 index = _roomNum & 31;
 	const uint8 *string = (const uint8 *)_roomDesc.getString(index);
 	findNextColon(&string);
 	uint16 x;
-	if (data.byte(kReallocation) < 50)
+	if (_realLocation < 50)
 		x = 66;
 	else
 		x = 40;
 	if (printSlow(string, x, 80, 241, true) != 1)
 		hangOnP(400);
 
-	data.byte(kPointermode) = 0;
-	data.byte(kCommandtype) = 0;
+	_pointerMode = 0;
+	_commandType = 0;
 	redrawMainScrn();
 	workToScreenM();
 }
@@ -2224,10 +2224,10 @@ void DreamBase::restoreAll() {
 }
 
 void DreamBase::restoreReels() {
-	if (data.byte(kRoomloaded) == 0)
+	if (_roomLoaded == 0)
 		return;
 
-	const Room &room = g_roomData[data.byte(kReallocation)];
+	const Room &room = g_roomData[_realLocation];
 
 	engine->openFile(room.name);
 
@@ -2259,8 +2259,8 @@ void DreamBase::loadFolder() {
 }
 
 void DreamBase::showFolder() {
-	data.byte(kCommandtype) = 255;
-	if (data.byte(kFolderpage)) {
+	_commandType = 255;
+	if (_folderPage) {
 		useTempCharset();
 		createPanel2();
 		showFrame(_tempGraphics, 0, 0, 0, 0);
@@ -2268,9 +2268,9 @@ void DreamBase::showFolder() {
 		showFrame(_tempGraphics, 0, 92, 2, 0);
 		showFrame(_tempGraphics, 143, 92, 3, 0);
 		folderExit();
-		if (data.byte(kFolderpage) != 1)
+		if (_folderPage != 1)
 			showLeftPage();
-		if (data.byte(kFolderpage) != 12)
+		if (_folderPage != 12)
 			showRightPage();
 		useCharset1();
 		underTextLine();
@@ -2291,22 +2291,22 @@ void DreamBase::showLeftPage() {
 		y += 16;
 	}
 	showFrame(_tempGraphics2, 0, y, 5, 0);
-	data.word(kLinespacing) = 8;
-	data.word(kCharshift) = 91;
-	data.byte(kKerning) = 1;
-	uint8 pageIndex = data.byte(kFolderpage) - 2;
+	_lineSpacing = 8;
+	_charShift = 91;
+	_kerning = 1;
+	uint8 pageIndex = _folderPage - 2;
 	const uint8 *string = getTextInFile1(pageIndex * 2);
 	y = 48;
 	for (size_t i = 0; i < 2; ++i) {
 		uint8 lastChar;
 		do {
 			lastChar = printDirect(&string, 2, &y, 140, false);
-			y += data.word(kLinespacing);
+			y += _lineSpacing;
 		} while (lastChar != '\0');
 	}
-	data.byte(kKerning) = 0;
-	data.word(kCharshift) = 0;
-	data.word(kLinespacing) = 10;
+	_kerning = 0;
+	_charShift = 0;
+	_lineSpacing = 10;
 	uint8 *bufferToSwap = workspace() + (48*320)+2;
 	for (size_t i = 0; i < 120; ++i) {
 		for (size_t j = 0; j < 65; ++j) {
@@ -2325,20 +2325,20 @@ void DreamBase::showRightPage() {
 	}
 
 	showFrame(_tempGraphics2, 143, y, 2, 0);
-	data.word(kLinespacing) = 8;
-	data.byte(kKerning) = 1;
-	uint8 pageIndex = data.byte(kFolderpage) - 1;
+	_lineSpacing = 8;
+	_kerning = 1;
+	uint8 pageIndex = _folderPage - 1;
 	const uint8 *string = getTextInFile1(pageIndex * 2);
 	y = 48;
 	for (size_t i = 0; i < 2; ++i) {
 		uint8 lastChar;
 		do {
 			lastChar = printDirect(&string, 152, &y, 140, false);
-			y += data.word(kLinespacing);
+			y += _lineSpacing;
 		} while (lastChar != '\0');
 	}
-	data.byte(kKerning) = 0;
-	data.word(kLinespacing) = 10;
+	_kerning = 0;
+	_lineSpacing = 10;
 }
 
 void DreamBase::showExit() {
@@ -2384,47 +2384,47 @@ void DreamBase::checkFolderCoords() {
 }
 
 void DreamBase::nextFolder() {
-	if (data.byte(kFolderpage) == 12) {
+	if (_folderPage == 12) {
 		blank();
 		return;
 	}
-	if (data.byte(kCommandtype) != 201) {
-		data.byte(kCommandtype) = 201;
+	if (_commandType != 201) {
+		_commandType = 201;
 		commandOnly(16);
 	}
-	if ((data.word(kMousebutton) == 1) && (data.word(kMousebutton) != data.word(kOldbutton))) {
-		++data.byte(kFolderpage);
+	if ((_mouseButton == 1) && (_mouseButton != _oldButton)) {
+		++_folderPage;
 		folderHints();
 		delPointer();
 		showFolder();
-		data.word(kMousebutton) = 0;
+		_mouseButton = 0;
 		checkFolderCoords();
 		workToScreenM();
 	}
 }
 
 void DreamBase::lastFolder() {
-	if (data.byte(kFolderpage) == 0) {
+	if (_folderPage == 0) {
 		blank();
 		return;
 	}
-	if (data.byte(kCommandtype) != 202) {
-		data.byte(kCommandtype) = 202;
+	if (_commandType != 202) {
+		_commandType = 202;
 		commandOnly(17);
 	}
 
-	if ((data.word(kMousebutton) == 1) && (data.word(kMousebutton) != data.word(kOldbutton))) {
-		--data.byte(kFolderpage);
+	if ((_mouseButton == 1) && (_mouseButton != _oldButton)) {
+		--_folderPage;
 		delPointer();
 		showFolder();
-		data.word(kMousebutton) = 0;
+		_mouseButton = 0;
 		checkFolderCoords();
 		workToScreenM();
 	}
 }
 
 void DreamBase::folderHints() {
-	if (data.byte(kFolderpage) == 5) {
+	if (_folderPage == 5) {
 		if ((data.byte(kAidedead) != 1) && (getLocation(13) != 1)) {
 			setLocation(13);
 			showFolder();
@@ -2433,7 +2433,7 @@ void DreamBase::folderHints() {
 			workToScreenM();
 			hangOnP(200);
 		}
-	} else if (data.byte(kFolderpage) == 9) {
+	} else if (_folderPage == 9) {
 		if (getLocation(7) != 1) {
 			setLocation(7);
 			showFolder();
@@ -2492,10 +2492,10 @@ void DreamBase::loadMenu() {
 }
 
 void DreamBase::showMenu() {
-	++data.byte(kMenucount);
-	if (data.byte(kMenucount) == 37*2)
-		data.byte(kMenucount) = 0;
-	showFrame(_tempGraphics, kMenux, kMenuy, data.byte(kMenucount) / 2, 0);
+	++_menuCount;
+	if (_menuCount == 37*2)
+		_menuCount = 0;
+	showFrame(_tempGraphics, kMenux, kMenuy, _menuCount / 2, 0);
 }
 
 void DreamBase::dumpMenu() {
@@ -2515,7 +2515,7 @@ void DreamBase::useMenu() {
 	getUnderMenu();
 	showFrame(_tempGraphics2, kMenux+54, kMenuy+72, 5, 0);
 	workToScreenM();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 	do {
 		delPointer();
 		putUnderMenu();
@@ -2532,8 +2532,8 @@ void DreamBase::useMenu() {
 			{ 0xFFFF,0,0,0,0 }
 		};
 		checkCoords(menuList);
-	} while ((data.byte(kGetback) != 1) && !_quitRequested);
-	data.byte(kManisoffscreen) = 0;
+	} while ((_getBack != 1) && !_quitRequested);
+	_manIsOffScreen = 0;
 	redrawMainScrn();
 	getRidOfTemp();
 	getRidOfTemp2();
@@ -2546,9 +2546,9 @@ void DreamBase::atmospheres() {
 	const Atmosphere *a = &g_atmosphereList[0];
 
 	for (; a->_location != 255; ++a) {
-		if (a->_location != data.byte(kReallocation))
+		if (a->_location != _realLocation)
 			continue;
-		if (a->_mapX != data.byte(kMapx) || a->_mapY != data.byte(kMapy))
+		if (a->_mapX != _mapX || a->_mapY != _mapY)
 			continue;
 		if (a->_sound != _channel0Playing) {
 
@@ -2564,21 +2564,21 @@ void DreamBase::atmospheres() {
 			//  jnz notlouisvol
 			//  I'm interpreting this as if the cmp reallocation is below the jz
 
-			if (data.byte(kMapy) == 0) {
+			if (_mapY == 0) {
 				_volume = 0; // "fullvol"
 				return;
 			}
 
-			if (data.byte(kReallocation) == 2 && data.byte(kMapx) == 22 && data.byte(kMapy) == 10)
+			if (_realLocation == 2 && _mapX == 22 && _mapY == 10)
 				_volume = 5; // "louisvol"
 
-			if (isCD() && data.byte(kReallocation) == 14) {
-				if (data.byte(kMapx) == 33) {
+			if (isCD() && _realLocation == 14) {
+				if (_mapX == 33) {
 					_volume = 0; // "ismad2"
 					return;
 				}
 
-				if (data.byte(kMapx) == 22) {
+				if (_mapX == 22) {
 					_volume = 5;
 					return;
 				}
@@ -2586,13 +2586,13 @@ void DreamBase::atmospheres() {
 			}
 		}
 
-		if (data.byte(kReallocation) == 2) {
-			if (data.byte(kMapx) == 22) {
+		if (_realLocation == 2) {
+			if (_mapX == 22) {
 				_volume = 5; // "louisvol"
 				return;
 			}
 
-			if (data.byte(kMapx) == 11) {
+			if (_mapX == 11) {
 				_volume = 0; // "fullvol"
 				return;
 			}
@@ -2615,115 +2615,115 @@ uint8 DreamBase::nextSymbol(uint8 symbol) {
 void DreamBase::showSymbol() {
 	showFrame(_tempGraphics, kSymbolx, kSymboly, 12, 0);
 
-	showFrame(_tempGraphics, data.byte(kSymboltopx) + kSymbolx-44, kSymboly+20, data.byte(kSymboltopnum), 32);
-	uint8 nextTopSymbol = nextSymbol(data.byte(kSymboltopnum));
-	showFrame(_tempGraphics, data.byte(kSymboltopx) + kSymbolx+5, kSymboly+20, nextTopSymbol, 32);
+	showFrame(_tempGraphics, _symbolTopX + kSymbolx-44, kSymboly+20, _symbolTopNum, 32);
+	uint8 nextTopSymbol = nextSymbol(_symbolTopNum);
+	showFrame(_tempGraphics, _symbolTopX + kSymbolx+5, kSymboly+20, nextTopSymbol, 32);
 	uint8 nextNextTopSymbol = nextSymbol(nextTopSymbol);
-	showFrame(_tempGraphics, data.byte(kSymboltopx) + kSymbolx+54, kSymboly+20, nextNextTopSymbol, 32);
+	showFrame(_tempGraphics, _symbolTopX + kSymbolx+54, kSymboly+20, nextNextTopSymbol, 32);
 
-	showFrame(_tempGraphics, data.byte(kSymbolbotx) + kSymbolx-44, kSymboly+49, 6 + data.byte(kSymbolbotnum), 32);
-	uint8 nextBotSymbol = nextSymbol(data.byte(kSymbolbotnum));
-	showFrame(_tempGraphics, data.byte(kSymbolbotx) + kSymbolx+5, kSymboly+49, 6 + nextBotSymbol, 32);
+	showFrame(_tempGraphics, _symbolBotX + kSymbolx-44, kSymboly+49, 6 + _symbolBotNum, 32);
+	uint8 nextBotSymbol = nextSymbol(_symbolBotNum);
+	showFrame(_tempGraphics, _symbolBotX + kSymbolx+5, kSymboly+49, 6 + nextBotSymbol, 32);
 	uint8 nextNextBotSymbol = nextSymbol(nextBotSymbol);
-	showFrame(_tempGraphics, data.byte(kSymbolbotx) + kSymbolx+54, kSymboly+49, 6 + nextNextBotSymbol, 32);
+	showFrame(_tempGraphics, _symbolBotX + kSymbolx+54, kSymboly+49, 6 + nextNextBotSymbol, 32);
 }
 
 void DreamBase::readKey() {
-	uint16 bufOut = data.word(kBufferout);
+	uint16 bufOut = _bufferOut;
 
-	if (bufOut == data.word(kBufferin)) {
+	if (bufOut == _bufferIn) {
 		// empty buffer
-		data.byte(kCurrentkey) = 0;
+		_currentKey = 0;
 		return;
 	}
 
 	bufOut = (bufOut + 1) & 15; // The buffer has size 16
-	data.byte(kCurrentkey) = g_keyBuffer[bufOut];
-	data.word(kBufferout) = bufOut;
+	_currentKey = g_keyBuffer[bufOut];
+	_bufferOut = bufOut;
 }
 
 void DreamBase::setTopLeft() {
-	if (data.byte(kSymboltopdir) != 0) {
+	if (_symbolTopDir != 0) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 210) {
-		data.byte(kCommandtype) = 210;
+	if (_commandType != 210) {
+		_commandType = 210;
 		commandOnly(19);
 	}
 
-	if (data.word(kMousebutton) != 0)
-		data.byte(kSymboltopdir) = 0xFF;
+	if (_mouseButton != 0)
+		_symbolTopDir = 0xFF;
 }
 
 void DreamBase::setTopRight() {
-	if (data.byte(kSymboltopdir) != 0) {
+	if (_symbolTopDir != 0) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 211) {
-		data.byte(kCommandtype) = 211;
+	if (_commandType != 211) {
+		_commandType = 211;
 		commandOnly(20);
 	}
 
-	if (data.word(kMousebutton) != 0)
-		data.byte(kSymboltopdir) = 1;
+	if (_mouseButton != 0)
+		_symbolTopDir = 1;
 }
 
 void DreamBase::setBotLeft() {
-	if (data.byte(kSymbolbotdir) != 0) {
+	if (_symbolBotDir != 0) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 212) {
-		data.byte(kCommandtype) = 212;
+	if (_commandType != 212) {
+		_commandType = 212;
 		commandOnly(21);
 	}
 
-	if (data.word(kMousebutton) != 0)
-		data.byte(kSymbolbotdir) = 0xFF;
+	if (_mouseButton != 0)
+		_symbolBotDir = 0xFF;
 }
 
 void DreamBase::setBotRight() {
-	if (data.byte(kSymbolbotdir) != 0) {
+	if (_symbolBotDir != 0) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 213) {
-		data.byte(kCommandtype) = 213;
+	if (_commandType != 213) {
+		_commandType = 213;
 		commandOnly(22);
 	}
 
-	if (data.word(kMousebutton) != 0)
-		data.byte(kSymbolbotdir) = 1;
+	if (_mouseButton != 0)
+		_symbolBotDir = 1;
 }
 
 void DreamBase::newGame() {
-	if (data.byte(kCommandtype) != 251) {
-		data.byte(kCommandtype) = 251;
+	if (_commandType != 251) {
+		_commandType = 251;
 		commandOnly(47);
 	}
 
-	if (data.word(kMousebutton) == 1)
-		data.byte(kGetback) = 3;
+	if (_mouseButton == 1)
+		_getBack = 3;
 }
 
 void DreamBase::pickupOb(uint8 command, uint8 pos) {
-	data.byte(kLastinvpos) = pos;
-	data.byte(kObjecttype) = kFreeObjectType;
-	data.byte(kItemframe) = command;
-	data.byte(kCommand) = command;
+	_lastInvPos = pos;
+	_objectType = kFreeObjectType;
+	_itemFrame = command;
+	_command = command;
 	//uint8 dummy;
 	//getAnyAd(&dummy, &dummy);	// was in the original source, seems useless here
 	transferToEx(command);
 }
 
 void DreamBase::initialInv() {
-	if (data.byte(kReallocation) != 24)
+	if (_realLocation != 24)
 		return;
 
 	pickupOb(11, 5);
@@ -2743,15 +2743,15 @@ void DreamBase::initialInv() {
 }
 
 void DreamBase::walkIntoRoom() {
-	if (data.byte(kLocation) == 14 && data.byte(kMapx) == 22) {
-		data.byte(kDestination) = 1;
-		data.byte(kFinaldest) = 1;
+	if (data.byte(kLocation) == 14 && _mapX == 22) {
+		_destination = 1;
+		_finalDest = 1;
 		autoSetWalk();
 	}
 }
 
 void DreamBase::afterIntroRoom() {
-	if (data.byte(kNowinnewroom) == 0)
+	if (_nowInNewRoom == 0)
 		return; // notnewintro
 
 	clearWork();
@@ -2762,11 +2762,11 @@ void DreamBase::afterIntroRoom() {
 	spriteUpdate();
 	printSprites();
 	workToScreen();
-	data.byte(kNowinnewroom) = 0;
+	_nowInNewRoom = 0;
 }
 
 void DreamBase::redrawMainScrn() {
-	data.word(kTimecount) = 0;
+	_timeCount = 0;
 	createPanel();
 	data.byte(kNewobs) = 0;
 	drawFloor();
@@ -2776,12 +2776,12 @@ void DreamBase::redrawMainScrn() {
 	getUnderZoom();
 	underTextLine();
 	readMouse();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 }
 
 void DreamBase::blank() {
-	if (data.byte(kCommandtype) != 199) {
-		data.byte(kCommandtype) = 199;
+	if (_commandType != 199) {
+		_commandType = 199;
 		commandOnly(0);
 	}
 }
@@ -2802,22 +2802,22 @@ void DreamBase::makeMainScreen() {
 	showIcon();
 	getUnderZoom();
 	underTextLine();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	animPointer();
 	workToScreenM();
-	data.byte(kCommandtype) = 200;
-	data.byte(kManisoffscreen) = 0;
+	_commandType = 200;
+	_manIsOffScreen = 0;
 }
 
 void DreamBase::openInv() {
-	data.byte(kInvopen) = 1;
+	_invOpen = 1;
 	printMessage(80, 58 - 10, 61, 240, (240 & 1));
 	fillRyan();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 }
 
 void DreamBase::obsThatDoThings() {
-	if (!compare(data.byte(kCommand), data.byte(kObjecttype), "MEMB"))
+	if (!compare(_command, _objectType, "MEMB"))
 		return; // notlouiscard
 
 	if (getLocation(4) != 1) {
@@ -2829,23 +2829,23 @@ void DreamBase::obsThatDoThings() {
 void DreamBase::describeOb() {
 	const uint8 *obText = getObTextStart();
 	uint16 y = 92;
-	if (_foreignRelease && data.byte(kObjecttype) == kSetObjectType1)
+	if (_foreignRelease && _objectType == kSetObjectType1)
 		y = 82;
-	data.word(kCharshift) = 91 + 91;
+	_charShift = 91 + 91;
 	printDirect(&obText, 33, &y, 241, 241 & 1);
-	data.word(kCharshift) = 0;
+	_charShift = 0;
 	y = 104;
-	if (_foreignRelease && data.byte(kObjecttype) == kSetObjectType1)
+	if (_foreignRelease && _objectType == kSetObjectType1)
 		y = 94;
 	printDirect(&obText, 36, &y, 241, 241 & 1);
 	obsThatDoThings();
 
 	// Additional text
-	if (compare(data.byte(kCommand), data.byte(kObjecttype), "CUPE")) {
+	if (compare(_command, _objectType, "CUPE")) {
 		// Empty cup
 		const uint8 *string = (const uint8 *)_puzzleText.getString(40);
 		printDirect(string, 36, y + 10, 241, 241 & 1);
-	} else if (compare(data.byte(kCommand), data.byte(kObjecttype), "CUPF")) {
+	} else if (compare(_command, _objectType, "CUPF")) {
 		// Full cup
 		const uint8 *string = (const uint8 *)_puzzleText.getString(39);
 		printDirect(string, 36, y + 10, 241, 241 & 1);
@@ -2853,13 +2853,13 @@ void DreamBase::describeOb() {
 }
 
 void DreamBase::delEverything() {
-	if (data.byte(kMapysize) + data.word(kMapoffsety) < 182) {
+	if (_mapYSize + _mapOffsetY < 182) {
 		mapToPanel();
 	} else {
 		// Big room
-		data.byte(kMapysize) -= 8;
+		_mapYSize -= 8;
 		mapToPanel();
-		data.byte(kMapysize) += 8;
+		_mapYSize += 8;
 	}
 }
 
@@ -2882,7 +2882,7 @@ void DreamBase::errorMessage1() {
 }
 
 void DreamBase::errorMessage2() {
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	delPointer();
 	printMessage(76, 21, 59, 240, (240 & 1));
 	readMouse();
@@ -2928,7 +2928,7 @@ void DreamBase::putBackObStuff() {
 	obPicture();
 	describeOb();
 	underTextLine();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	readMouse();
 	showPointer();
 	workToScreen();
@@ -2945,12 +2945,12 @@ void DreamBase::dumpZoom() {
 }
 
 void DreamBase::examineInventory() {
-	if (data.byte(kCommandtype) != 249) {
-		data.byte(kCommandtype) = 249;
+	if (_commandType != 249) {
+		_commandType = 249;
 		commandOnly(32);
 	}
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
 	createPanel();
@@ -2958,8 +2958,8 @@ void DreamBase::examineInventory() {
 	showMan();
 	showExit();
 	examIcon();
-	data.byte(kPickup) = 0;
-	data.byte(kInvopen) = 2;
+	_pickUp = 0;
+	_invOpen = 2;
 	openInv();
 	workToScreenM();
 }
@@ -2974,9 +2974,9 @@ void DreamBase::showDiary() {
 
 void DreamBase::underTextLine() {
 	if (_foreignRelease)
-		multiGet(_textUnder, data.byte(kTextaddressx), data.word(kTextaddressy) - 3, kUnderTextSizeX_f, kUnderTextSizeY_f);
+		multiGet(_textUnder, _textAddressX, _textAddressY - 3, kUnderTextSizeX_f, kUnderTextSizeY_f);
 	else
-		multiGet(_textUnder, data.byte(kTextaddressx), data.word(kTextaddressy), kUnderTextSizeX, kUnderTextSizeY);
+		multiGet(_textUnder, _textAddressX, _textAddressY, kUnderTextSizeX, kUnderTextSizeY);
 }
 
 void DreamBase::getUnderZoom() {
@@ -2993,15 +2993,15 @@ void DreamBase::showWatchReel() {
 	data.word(kReeltowatch) = reelPointer;
 
 	// check for shake
-	if (data.byte(kReallocation) == 26 && reelPointer == 104)
+	if (_realLocation == 26 && reelPointer == 104)
 		data.byte(kShakecounter) = 0xFF;
 }
 
 void DreamBase::watchReel() {
 	if (data.word(kReeltowatch) != 0xFFFF) {
-		if (data.byte(kManspath) != data.byte(kFinaldest))
+		if (_mansPath != _finalDest)
 			return; // Wait until stopped walking
-		if (data.byte(kTurntoface) != data.byte(kFacing))
+		if (_turnToFace != _facing)
 			return;
 
 		if (--data.byte(kSpeedcount) != 0xFF) {
@@ -3033,8 +3033,8 @@ void DreamBase::watchReel() {
 		if (data.word(kReeltohold) == data.word(kEndofholdreel)) {
 			data.word(kReeltohold) = 0xFFFF;
 			data.byte(kWatchmode) = 0xFF;
-			data.byte(kDestination) = data.byte(kDestafterhold);
-			data.byte(kFinaldest) = data.byte(kDestafterhold);
+			_destination = data.byte(kDestafterhold);
+			_finalDest = data.byte(kDestafterhold);
 			autoSetWalk();
 			return;
 		}
@@ -3045,22 +3045,22 @@ void DreamBase::watchReel() {
 }
 
 void DreamBase::afterNewRoom() {
-	if (data.byte(kNowinnewroom) == 0)
+	if (_nowInNewRoom == 0)
 		return; // notnew
 
-	data.word(kTimecount) = 0;
+	_timeCount = 0;
 	createPanel();
-	data.byte(kCommandtype) = 0;
+	_commandType = 0;
 	findRoomInLoc();
 	if (data.byte(kRyanon) != 1) {
-		data.byte(kManspath) = findPathOfPoint(data.byte(kRyanx) + 12, data.byte(kRyany) + 12);
+		_mansPath = findPathOfPoint(_ryanX + 12, _ryanY + 12);
 		findXYFromPath();
-		data.byte(kResetmanxy) = 1;
+		_resetManXY = 1;
 	}
 	data.byte(kNewobs) = 1;
 	drawFloor();
-	data.word(kLookcounter) = 160;
-	data.byte(kNowinnewroom) = 0;
+	_lookCounter = 160;
+	_nowInNewRoom = 0;
 	showIcon();
 	spriteUpdate();
 	printSprites();
@@ -3077,20 +3077,20 @@ void DreamBase::afterNewRoom() {
 
 void DreamBase::madmanRun() {
 	if (data.byte(kLocation)    != 14 ||
-		data.byte(kMapx)        != 22 ||
-		data.byte(kPointermode) !=  2 ||
+		_mapX        != 22 ||
+		_pointerMode !=  2 ||
 		data.byte(kMadmanflag)  !=  0) {
 		identifyOb();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 211) {
-		data.byte(kCommandtype) = 211;
+	if (_commandType != 211) {
+		_commandType = 211;
 		commandOnly(52);
 	}
 
-	if (data.word(kMousebutton) == 1 &&
-		data.word(kMousebutton) != data.word(kOldbutton))
+	if (_mouseButton == 1 &&
+		_mouseButton != _oldButton)
 		data.byte(kLastweapon) = 8;
 }
 
@@ -3099,18 +3099,18 @@ void DreamBase::decide() {
 	setMode();
 	loadPalFromIFF();
 	clearPalette();
-	data.byte(kPointermode) = 0;
+	_pointerMode = 0;
 	data.word(kWatchingtime) = 0;
-	data.byte(kPointerframe) = 0;
-	data.word(kTextaddressx) = 70;
-	data.word(kTextaddressy) = 182 - 8;
-	data.byte(kTextlen) = 181;
-	data.byte(kManisoffscreen) = 1;
+	_pointerFrame = 0;
+	_textAddressX = 70;
+	_textAddressY = 182 - 8;
+	_textLen = 181;
+	_manIsOffScreen = 1;
 	loadSaveBox();
 	showDecisions();
 	workToScreen();
 	fadeScreenUp();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	RectWithCallback<DreamBase> decideList[] = {
 		{ kOpsx+69,kOpsx+124,kOpsy+30,kOpsy+76,&DreamBase::newGame },
@@ -3131,34 +3131,34 @@ void DreamBase::decide() {
 		dumpTextLine();
 		delPointer();
 		checkCoords(decideList);
-	} while (!data.byte(kGetback));
+	} while (!_getBack);
 
-	if (data.byte(kGetback) != 4)
+	if (_getBack != 4)
 		getRidOfTemp();	// room not loaded
 
-	data.word(kTextaddressx) = 13;
-	data.word(kTextaddressy) = 182;
-	data.byte(kTextlen) = 240;
+	_textAddressX = 13;
+	_textAddressY = 182;
+	_textLen = 240;
 }
 
 void DreamBase::showGun() {
-	data.byte(kAddtored) = 0;
-	data.byte(kAddtogreen) = 0;
-	data.byte(kAddtoblue) = 0;
+	_addToRed = 0;
+	_addToGreen = 0;
+	_addToBlue = 0;
 	palToStartPal();
 	palToEndPal();
 	greyscaleSum();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(130);
 	endPalToStart();
 	clearEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(200);
 	_roomsSample = 34;
 	loadRoomsSample();
@@ -3178,47 +3178,47 @@ void DreamBase::showGun() {
 }
 
 void DreamBase::diaryKeyP() {
-	if (data.byte(kCommandtype) != 214) {
-		data.byte(kCommandtype) = 214;
+	if (_commandType != 214) {
+		_commandType = 214;
 		commandOnly(23);
 	}
 
-	if (!data.word(kMousebutton) ||
-		data.word(kOldbutton) == data.word(kMousebutton) ||
-		data.byte(kPresscount))
+	if (!_mouseButton ||
+		_oldButton == _mouseButton ||
+		_pressCount)
 		return; // notkeyp
 
 	playChannel1(16);
-	data.byte(kPresscount) = 12;
-	data.byte(kPressed) = 'P';
-	data.byte(kDiarypage)--;
+	_pressCount = 12;
+	_pressed = 'P';
+	_diaryPage--;
 
-	if (data.byte(kDiarypage) == 0xFF)
-		data.byte(kDiarypage) = 11;
+	if (_diaryPage == 0xFF)
+		_diaryPage = 11;
 }
 
 void DreamBase::diaryKeyN() {
-	if (data.byte(kCommandtype) != 213) {
-		data.byte(kCommandtype) = 213;
+	if (_commandType != 213) {
+		_commandType = 213;
 		commandOnly(23);
 	}
 
-	if (!data.word(kMousebutton) ||
-		data.word(kOldbutton) == data.word(kMousebutton) ||
-		data.byte(kPresscount))
+	if (!_mouseButton ||
+		_oldButton == _mouseButton ||
+		_pressCount)
 		return; // notkeyn
 
 	playChannel1(16);
-	data.byte(kPresscount) = 12;
-	data.byte(kPressed) = 'N';
-	data.byte(kDiarypage)++;
+	_pressCount = 12;
+	_pressed = 'N';
+	_diaryPage++;
 
-	if (data.byte(kDiarypage) == 12)
-		data.byte(kDiarypage) = 0;
+	if (_diaryPage == 12)
+		_diaryPage = 0;
 }
 
 void DreamBase::dropError() {
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	delPointer();
 	printMessage(76, 21, 56, 240, 240 & 1);
 	workToScreenM();
@@ -3226,12 +3226,12 @@ void DreamBase::dropError() {
 	showPanel();
 	showMan();
 	examIcon();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	workToScreenM();
 }
 
 void DreamBase::cantDrop() {
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	delPointer();
 	printMessage(76, 21, 24, 240, 240 & 1);
 	workToScreenM();
@@ -3239,29 +3239,29 @@ void DreamBase::cantDrop() {
 	showPanel();
 	showMan();
 	examIcon();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	workToScreenM();
 }
 
 void DreamBase::getBack1() {
-	if (data.byte(kPickup) != 0) {
+	if (_pickUp != 0) {
 		blank();
 		return;
 	}
 
 
-	if (data.byte(kCommandtype) != 202) {
-		data.byte(kCommandtype) = 202;
+	if (_commandType != 202) {
+		_commandType = 202;
 		commandOnly(26);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;
 
-	if (data.word(kMousebutton) & 1) {
+	if (_mouseButton & 1) {
 		// Get back
-		data.byte(kGetback) = 1;
-		data.byte(kPickup) = 0;
+		_getBack = 1;
+		_pickUp = 0;
 	}
 }
 
@@ -3270,11 +3270,11 @@ void DreamBase::autoAppear() {
 		// In alley
 		resetLocation(5);
 		setLocation(10);
-		data.byte(kDestpos) = 10;
+		_destPos = 10;
 		return;
 	}
 
-	if (data.byte(kReallocation) == 24) {
+	if (_realLocation == 24) {
 		// In Eden's apartment
 		if (data.byte(kGeneraldead) == 1) {
 			data.byte(kGeneraldead)++;
@@ -3295,37 +3295,37 @@ void DreamBase::autoAppear() {
 		}
 	} else {
 		// Not in Eden's
-		if (data.byte(kReallocation) == 25) {
+		if (_realLocation == 25) {
 			// Sart roof
 			data.byte(kNewsitem) = 3;
 			resetLocation(6);
 			setLocation(11);
-			data.byte(kDestpos) = 11;
+			_destPos = 11;
 		} else {
-			if (data.byte(kReallocation) == 2 && data.byte(kRockstardead) != 0)
+			if (_realLocation == 2 && data.byte(kRockstardead) != 0)
 				placeSetObject(23);
 		}
 	}
 }
 
 void DreamBase::quitKey() {
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(4);
 	}
 
-	if (data.word(kMousebutton) != data.word(kOldbutton) && (data.word(kMousebutton) & 1))
-		data.byte(kGetback) = 1;
+	if (_mouseButton != _oldButton && (_mouseButton & 1))
+		_getBack = 1;
 }
 
 void DreamBase::setupTimedUse(uint16 textIndex, uint16 countToTimed, uint16 timeCount, byte x, byte y) {
-	if (data.word(kTimecount) != 0)
+	if (_timeCount != 0)
 		return; // can't setup
 
-	data.byte(kTimedy) = y;
-	data.byte(kTimedx) = x;
-	data.word(kCounttotimed) = countToTimed;
-	data.word(kTimecount) = timeCount + countToTimed;
+	_timedY = y;
+	_timedX = x;
+	_countToTimed = countToTimed;
+	_timeCount = timeCount + countToTimed;
 	_timedString = _puzzleText.getString(textIndex);
 	debug(1, "setupTimedUse: %d => '%s'", textIndex, _timedString);
 }
@@ -3389,8 +3389,8 @@ void DreamBase::entryAnims() {
 		switchRyanOff();
 		break;
 	case 26:	// under church
-		data.byte(kSymboltopnum) = 2;
-		data.byte(kSymbolbotnum) = 1;
+		_symbolTopNum = 2;
+		_symbolBotNum = 1;
 		break;
 	case 45:	// entered Dreamweb
 		data.byte(kKeeperflag) = 0;
@@ -3402,7 +3402,7 @@ void DreamBase::entryAnims() {
 		switchRyanOff();
 		break;
 	default:
-		if (data.byte(kReallocation) == 46 && data.byte(kSartaindead) == 1) {	// Crystal
+		if (_realLocation == 46 && data.byte(kSartaindead) == 1) {	// Crystal
 			removeFreeObject(0);
 		} else if (data.byte(kLocation) == 9 && !checkIfPathIsOn(2) && data.byte(kAidedead) != 0) {
 			// Top of church
@@ -3430,105 +3430,105 @@ void DreamBase::entryAnims() {
 			data.byte(kSpeedcount) = 1;
 			switchRyanOff();
 		} else if (data.byte(kLocation) == 24) {	// Eden's again
-			turnAnyPathOn(2, data.byte(kRoomnum) - 1);
+			turnAnyPathOn(2, _roomNum - 1);
 		}
 	}
 }
 
 void DreamBase::updateSymbolTop() {
-	if (!data.byte(kSymboltopdir))
+	if (!_symbolTopDir)
 		return; // topfinished
 
-	if (data.byte(kSymboltopdir) == (byte)-1) {
+	if (_symbolTopDir == (byte)-1) {
 		// Backward
-		data.byte(kSymboltopx)--;
-		if (data.byte(kSymboltopx) != (byte)-1) {
+		_symbolTopX--;
+		if (_symbolTopX != (byte)-1) {
 			// Not wrapping
-			if (data.byte(kSymboltopx) != 24)
+			if (_symbolTopX != 24)
 				return; // topfinished
-			data.byte(kSymboltopdir) = 0;
+			_symbolTopDir = 0;
 		} else {
-			data.byte(kSymboltopx) = 48;
-			data.byte(kSymboltopnum)++;
-			if (data.byte(kSymboltopnum) != 6)
+			_symbolTopX = 48;
+			_symbolTopNum++;
+			if (_symbolTopNum != 6)
 				return; // topfinished
-			data.byte(kSymboltopnum) = 0;
+			_symbolTopNum = 0;
 		}
 	} else {
 		// Forward
-		data.byte(kSymboltopx)++;
-		if (data.byte(kSymboltopx) != 49) {
+		_symbolTopX++;
+		if (_symbolTopX != 49) {
 			// Not wrapping
-			if (data.byte(kSymboltopx) != 24)
+			if (_symbolTopX != 24)
 				return; // topfinished
-			data.byte(kSymboltopdir) = 0;
+			_symbolTopDir = 0;
 		} else {
-			data.byte(kSymboltopx) = 0;
-			data.byte(kSymboltopnum)--;
-			if (data.byte(kSymboltopnum) != (byte)-1)
+			_symbolTopX = 0;
+			_symbolTopNum--;
+			if (_symbolTopNum != (byte)-1)
 				return; // topfinished
-			data.byte(kSymboltopnum) = 5;
+			_symbolTopNum = 5;
 		}
 	}
 }
 
 void DreamBase::updateSymbolBot() {
-	if (!data.byte(kSymbolbotdir))
+	if (!_symbolBotDir)
 		return; // botfinished
 
-	if (data.byte(kSymbolbotdir) == (byte)-1) {
+	if (_symbolBotDir == (byte)-1) {
 		// Backward
-		data.byte(kSymbolbotx)--;
-		if (data.byte(kSymbolbotx) != (byte)-1) {
+		_symbolBotX--;
+		if (_symbolBotX != (byte)-1) {
 			// Not wrapping
-			if (data.byte(kSymbolbotx) != 24)
+			if (_symbolBotX != 24)
 				return; // botfinished
-			data.byte(kSymbolbotdir) = 0;
+			_symbolBotDir = 0;
 		} else {
-			data.byte(kSymbolbotx) = 48;
-			data.byte(kSymbolbotnum)++;
-			if (data.byte(kSymbolbotnum) != 6)
+			_symbolBotX = 48;
+			_symbolBotNum++;
+			if (_symbolBotNum != 6)
 				return; // botfinished
-			data.byte(kSymbolbotnum) = 0;
+			_symbolBotNum = 0;
 		}
 	} else {
 		// Forward
-		data.byte(kSymbolbotx)++;
-		if (data.byte(kSymbolbotx) != 49) {
+		_symbolBotX++;
+		if (_symbolBotX != 49) {
 			// Not wrapping
-			if (data.byte(kSymbolbotx) != 24)
+			if (_symbolBotX != 24)
 				return; // botfinished
-			data.byte(kSymbolbotdir) = 0;
+			_symbolBotDir = 0;
 		} else {
-			data.byte(kSymbolbotx) = 0;
-			data.byte(kSymbolbotnum)--;
-			if (data.byte(kSymbolbotnum) != (byte)-1)
+			_symbolBotX = 0;
+			_symbolBotNum--;
+			if (_symbolBotNum != (byte)-1)
 				return; // botfinished
-			data.byte(kSymbolbotnum) = 5;
+			_symbolBotNum = 5;
 		}
 	}
 }
 
 void DreamBase::showDiaryPage() {
 	showFrame(_tempGraphics, kDiaryx, kDiaryy, 0, 0);
-	data.byte(kKerning) = 1;
+	_kerning = 1;
 	useTempCharset();
-	data.word(kCharshift) = 91+91;
-	const uint8 *string = getTextInFile1(data.byte(kDiarypage));
+	_charShift = 91+91;
+	const uint8 *string = getTextInFile1(_diaryPage);
 	uint16 y = kDiaryy + 16;
 	printDirect(&string, kDiaryx + 48, &y, 240, 240 & 1);
 	y = kDiaryy + 16;
 	printDirect(&string, kDiaryx + 129, &y, 240, 240 & 1);
 	y = kDiaryy + 23;
 	printDirect(&string, kDiaryx + 48, &y, 240, 240 & 1);
-	data.byte(kKerning) = 0;
-	data.word(kCharshift) = 0;
+	_kerning = 0;
+	_charShift = 0;
 	useCharset1();
 }
 
 void DreamBase::dumpDiaryKeys() {
-	if (data.byte(kPresscount) == 1) {
-		if (data.byte(kSartaindead) != 1 && data.byte(kDiarypage) == 5 && getLocation(6) != 1) {
+	if (_pressCount == 1) {
+		if (data.byte(kSartaindead) != 1 && _diaryPage == 5 && getLocation(6) != 1) {
 			// Add Sartain Industries note
 			setLocation(6);
 			delPointer();
@@ -3553,7 +3553,7 @@ void DreamBase::dumpDiaryKeys() {
 }
 
 void DreamBase::lookAtCard() {
-	data.byte(kManisoffscreen) = 1;
+	_manIsOffScreen = 1;
 	getRidOfReels();
 	loadKeypad();
 	createPanel2();
@@ -3571,7 +3571,7 @@ void DreamBase::lookAtCard() {
 	printDirect(obText, 36, 130, 241, 241 & 1);
 	workToScreenM();
 	hangOnW(200);
-	data.byte(kManisoffscreen) = 0;
+	_manIsOffScreen = 0;
 	getRidOfTemp();
 	restoreReels();
 	putBackObStuff();
@@ -3605,28 +3605,28 @@ void DreamBase::clearChanges() {
 }
 
 void DreamBase::showDiaryKeys() {
-	if (!data.byte(kPresscount))
+	if (!_pressCount)
 		return; // nokeyatall
 
-	data.byte(kPresscount)--;
+	_pressCount--;
 
-	if (!data.byte(kPresscount))
+	if (!_pressCount)
 		return; // nokeyatall
 
-	if (data.byte(kPressed) == 'N') {
-		byte frame = (data.byte(kPresscount) == 1) ? 3 : 4;
+	if (_pressed == 'N') {
+		byte frame = (_pressCount == 1) ? 3 : 4;
 		showFrame(_tempGraphics, kDiaryx + 94, kDiaryy + 97, frame, 0);
 	} else {
-		byte frame = (data.byte(kPresscount) == 1) ? 5 : 6;
+		byte frame = (_pressCount == 1) ? 5 : 6;
 		showFrame(_tempGraphics, kDiaryx + 151, kDiaryy + 71, frame, 0);
 	}
 
-	if (data.byte(kPresscount) == 1)
+	if (_pressCount == 1)
 		showDiaryPage();
 }
 
 void DreamBase::edensFlatReminders() {
-	if (data.byte(kReallocation) != 24 || data.byte(kMapx) != 44)
+	if (_realLocation != 24 || _mapX != 44)
 		return; // not in Eden's lift
 
 	if (data.byte(kProgresspoints))
@@ -3654,15 +3654,15 @@ void DreamBase::edensFlatReminders() {
 }
 
 void DreamBase::incRyanPage() {
-	if (data.byte(kCommandtype) != 222) {
-		data.byte(kCommandtype) = 222;
+	if (_commandType != 222) {
+		_commandType = 222;
 		commandOnly(31);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton) || !(data.word(kMousebutton) & 1))
+	if (_mouseButton == _oldButton || !(_mouseButton & 1))
 		return;
 
-	data.byte(kRyanpage) = (data.word(kMousex) - (kInventx + 167)) / 18;
+	data.byte(kRyanpage) = (_mouseX - (kInventx + 167)) / 18;
 
 	delPointer();
 	fillRyan();
@@ -3690,7 +3690,7 @@ void DreamBase::purgeAnItem() {
 
 	for (size_t i = 0; i < kNumexobjects; ++i) {
 		if (extraObjects[i].mapad[0] && extraObjects[i].id[0] == 255 &&
-			extraObjects[i].initialLocation != data.byte(kReallocation)) {
+			extraObjects[i].initialLocation != _realLocation) {
 			deleteExObject(i);
 			return;
 		}
diff --git a/engines/dreamweb/talk.cpp b/engines/dreamweb/talk.cpp
index 5478a0f..a1bbbe5 100644
--- a/engines/dreamweb/talk.cpp
+++ b/engines/dreamweb/talk.cpp
@@ -25,9 +25,9 @@
 namespace DreamGen {
 
 void DreamBase::talk() {
-	data.byte(kTalkpos) = 0;
-	data.byte(kInmaparea) = 0;
-	data.byte(kCharacter) = data.byte(kCommand);
+	_talkPos = 0;
+	_inMapArea = 0;
+	_character = _command;
 	createPanel();
 	showPanel();
 	showMan();
@@ -35,7 +35,7 @@ void DreamBase::talk() {
 	underTextLine();
 	convIcons();
 	startTalk();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	readMouse();
 	showPointer();
 	workToScreen();
@@ -55,13 +55,13 @@ void DreamBase::talk() {
 		vSync();
 		dumpPointer();
 		dumpTextLine();
-		data.byte(kGetback) = 0;
+		_getBack = 0;
 		checkCoords(talkList);
 		if (_quitRequested)
 			break;
-	} while (!data.byte(kGetback));
+	} while (!_getBack);
 
-	if (data.byte(kTalkpos) >= 4)
+	if (_talkPos >= 4)
 		_personData->b7 |= 128;
 
 	redrawMainScrn();
@@ -74,7 +74,7 @@ void DreamBase::talk() {
 }
 
 void DreamBase::convIcons() {
-	uint8 index = data.byte(kCharacter) & 127;
+	uint8 index = _character & 127;
 	uint16 frame = getPersFrame(index);
 	const GraphicsFile *base = findSource(frame);
 	showFrame(*base, 234, 2, frame, 0);
@@ -85,21 +85,21 @@ uint16 DreamBase::getPersFrame(uint8 index) {
 }
 
 void DreamBase::startTalk() {
-	data.byte(kTalkmode) = 0;
+	_talkMode = 0;
 
-	const uint8 *str = getPersonText(data.byte(kCharacter) & 0x7F, 0);
+	const uint8 *str = getPersonText(_character & 0x7F, 0);
 	uint16 y;
 
-	data.word(kCharshift) = 91+91;
+	_charShift = 91+91;
 	y = 64;
 	printDirect(&str, 66, &y, 241, true);
 
-	data.word(kCharshift) = 0;
+	_charShift = 0;
 	y = 80;
 	printDirect(&str, 66, &y, 241, true);
 
 	_speechLoaded = false;
-	loadSpeech('R', data.byte(kReallocation), 'C', 64*(data.byte(kCharacter) & 0x7F));
+	loadSpeech('R', _realLocation, 'C', 64*(_character & 0x7F));
 	if (_speechLoaded) {
 		_volumeDirection = 1;
 		_volumeTo = 6;
@@ -112,37 +112,37 @@ const uint8 *DreamBase::getPersonText(uint8 index, uint8 talkPos) {
 }
 
 void DreamBase::moreTalk() {
-	if (data.byte(kTalkmode) != 0) {
+	if (_talkMode != 0) {
 		redes();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 215) {
-		data.byte(kCommandtype) = 215;
+	if (_commandType != 215) {
+		_commandType = 215;
 		commandOnly(49);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;	// nomore
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
-	data.byte(kTalkmode) = 2;
-	data.byte(kTalkpos) = 4;
+	_talkMode = 2;
+	_talkPos = 4;
 
-	if (data.byte(kCharacter) >= 100)
-		data.byte(kTalkpos) = 48; // second part
+	if (_character >= 100)
+		_talkPos = 48; // second part
 	doSomeTalk();
 }
 
 void DreamBase::doSomeTalk() {
 	while (true) {
-		const uint8 *str = getPersonText(data.byte(kCharacter) & 0x7F, data.byte(kTalkpos));
+		const uint8 *str = getPersonText(_character & 0x7F, _talkPos);
 
 		if (*str == 0) {
 			// endheartalk
-			data.byte(kPointermode) = 0;
+			_pointerMode = 0;
 			return;
 		}
 
@@ -154,21 +154,21 @@ void DreamBase::doSomeTalk() {
 
 		printDirect(str, 164, 64, 144, false);
 
-		loadSpeech('R', data.byte(kReallocation), 'C', (64 * (data.byte(kCharacter) & 0x7F)) + data.byte(kTalkpos));
+		loadSpeech('R', _realLocation, 'C', (64 * (_character & 0x7F)) + _talkPos);
 		if (_speechLoaded)
 			playChannel1(62);
 
-		data.byte(kPointermode) = 3;
+		_pointerMode = 3;
 		workToScreenM();
 		if (hangOnPQ())
 			return;
 
-		data.byte(kTalkpos)++;
+		_talkPos++;
 
-		str = getPersonText(data.byte(kCharacter) & 0x7F, data.byte(kTalkpos));
+		str = getPersonText(_character & 0x7F, _talkPos);
 		if (*str == 0) {
 			// endheartalk
-			data.byte(kPointermode) = 0;
+			_pointerMode = 0;
 			return;
 		}
 
@@ -180,22 +180,22 @@ void DreamBase::doSomeTalk() {
 			convIcons();
 			printDirect(str, 48, 128, 144, false);
 
-			loadSpeech('R', data.byte(kReallocation), 'C', (64 * (data.byte(kCharacter) & 0x7F)) + data.byte(kTalkpos));
+			loadSpeech('R', _realLocation, 'C', (64 * (_character & 0x7F)) + _talkPos);
 			if (_speechLoaded)
 				playChannel1(62);
 
-			data.byte(kPointermode) = 3;
+			_pointerMode = 3;
 			workToScreenM();
 			if (hangOnPQ())
 				return;
 		}
 
-		data.byte(kTalkpos)++;
+		_talkPos++;
 	}
 }
 
 bool DreamBase::hangOnPQ() {
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	RectWithCallback<DreamBase> quitList[] = {
 		{ 273,320,157,198,&DreamBase::getBack1 },
@@ -215,10 +215,10 @@ bool DreamBase::hangOnPQ() {
 		dumpTextLine();
 		checkCoords(quitList);
 
-		if (data.byte(kGetback) == 1 || _quitRequested) {
+		if (_getBack == 1 || _quitRequested) {
 			// Quit conversation
 			delPointer();
-			data.byte(kPointermode) = 0;
+			_pointerMode = 0;
 			cancelCh1();
 			return true;
 		}
@@ -228,25 +228,25 @@ bool DreamBase::hangOnPQ() {
 			if (speechFlag == 40)
 				break;
 		}
-	} while (!data.word(kMousebutton) || data.word(kOldbutton));
+	} while (!_mouseButton || _oldButton);
 
 	delPointer();
-	data.byte(kPointermode) = 0;
+	_pointerMode = 0;
 	return false;
 }
 
 void DreamBase::redes() {
-	if (_channel1Playing != 255 || data.byte(kTalkmode) != 2) {
+	if (_channel1Playing != 255 || _talkMode != 2) {
 		blank();
 		return;
 	}
 
-	if (data.byte(kCommandtype) != 217) {
-		data.byte(kCommandtype) = 217;
+	if (_commandType != 217) {
+		_commandType = 217;
 		commandOnly(50);
 	}
 
-	if (!(data.word(kMousebutton) & 1))
+	if (!(_mouseButton & 1))
 		return;
 
 	delPointer();
diff --git a/engines/dreamweb/titles.cpp b/engines/dreamweb/titles.cpp
index 529f400..ff3566f 100644
--- a/engines/dreamweb/titles.cpp
+++ b/engines/dreamweb/titles.cpp
@@ -69,7 +69,7 @@ void DreamBase::monkSpeaking() {
 }
 
 void DreamBase::gettingShot() {
-	data.byte(kNewlocation) = 55;
+	_newLocation = 55;
 	clearPalette();
 	loadIntroRoom();
 	fadeScreenUps();
@@ -86,34 +86,34 @@ void DreamBase::bibleQuote() {
 	fadeScreenUps();
 
 	hangOne(80);
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) = 0;
+	if (_lastHardKey == 1) {
+		_lastHardKey = 0;
 		return; // "biblequotearly"
 	}
 
 	hangOne(560);
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) = 0;
+	if (_lastHardKey == 1) {
+		_lastHardKey = 0;
 		return; // "biblequotearly"
 	}
 
 	fadeScreenDowns();
 
 	hangOne(200);
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) = 0;
+	if (_lastHardKey == 1) {
+		_lastHardKey = 0;
 		return; // "biblequotearly"
 	}
 
 	cancelCh0();
 
-	data.byte(kLasthardkey) = 0;
+	_lastHardKey = 0;
 }
 
 void DreamBase::hangOne(uint16 delay) {
 	do {
 		vSync();
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			return; // "hangonearly"
 	} while	(--delay);
 }
@@ -122,7 +122,7 @@ void DreamBase::intro() {
 	loadTempText("DREAMWEB.T82");
 	loadPalFromIFF();
 	setMode();
-	data.byte(kNewlocation) = 50;
+	_newLocation = 50;
 	clearPalette();
 	loadIntroRoom();
 	_volume = 7;
@@ -132,61 +132,61 @@ void DreamBase::intro() {
 	fadeScreenUps();
 	runIntroSeq();
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "introearly"
 	}
 
 	clearBeforeLoad();
-	data.byte(kNewlocation) = 52;
+	_newLocation = 52;
 	loadIntroRoom();
 	runIntroSeq();
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "introearly"
 	}
 
 	clearBeforeLoad();
-	data.byte(kNewlocation) = 53;
+	_newLocation = 53;
 	loadIntroRoom();
 	runIntroSeq();
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "introearly"
 	}
 
 	clearBeforeLoad();
 	allPalette();
-	data.byte(kNewlocation) = 54;
+	_newLocation = 54;
 	loadIntroRoom();
 	runIntroSeq();
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "introearly"
 	}
 
 	getRidOfTempText();
 	clearBeforeLoad();
 
-	data.byte(kLasthardkey) =  0;
+	_lastHardKey =  0;
 }
 
 void DreamBase::runIntroSeq() {
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	do {
 		vSync();
 
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			break;
 
 		spriteUpdate();
 		vSync();
 
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			break;
 
 		delEverything();
@@ -196,20 +196,20 @@ void DreamBase::runIntroSeq() {
 		useTimedText();
 		vSync();
 
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			break;
 
 		dumpMap();
 		dumpTimedText();
 		vSync();
 
-		if (data.byte(kLasthardkey) == 1)
+		if (_lastHardKey == 1)
 			break;
 
-	} while (data.byte(kGetback) != 1);
+	} while (_getBack != 1);
 
 
-	if (data.byte(kLasthardkey) == 1) {
+	if (_lastHardKey == 1) {
 		getRidOfTempText();
 		clearBeforeLoad();
 	}
@@ -222,7 +222,7 @@ void DreamBase::runIntroSeq() {
 
 void DreamBase::runEndSeq() {
 	atmospheres();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	do {
 		vSync();
@@ -237,19 +237,19 @@ void DreamBase::runEndSeq() {
 		dumpMap();
 		dumpTimedText();
 		vSync();
-	} while (data.byte(kGetback) != 1);
+	} while (_getBack != 1);
 }
 
 void DreamBase::loadIntroRoom() {
-	data.byte(kIntrocount) = 0;
+	_introCount = 0;
 	data.byte(kLocation) = 255;
 	loadRoom();
-	data.word(kMapoffsetx) = 72;
-	data.word(kMapoffsety) = 16;
+	_mapOffsetX = 72;
+	_mapOffsetY = 16;
 	clearSprites();
 	data.byte(kThroughdoor) = 0;
-	data.byte(kCurrentkey) = '0';
-	data.byte(kMainmode) = 0;
+	_currentKey = '0';
+	_mainMode = 0;
 	clearWork();
 	data.byte(kNewobs) = 1;
 	drawFloor();
@@ -275,24 +275,24 @@ void DreamBase::realCredits() {
 
 	hangOne(2);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	allPalette();
 	hangOne(80);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
@@ -300,24 +300,24 @@ void DreamBase::realCredits() {
 	playChannel0(12, 0);
 	hangOne(2);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	allPalette();
 	hangOne(80);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
@@ -325,24 +325,24 @@ void DreamBase::realCredits() {
 	playChannel0(12, 0);
 	hangOne(2);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	allPalette();
 	hangOne(80);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
@@ -350,24 +350,24 @@ void DreamBase::realCredits() {
 	playChannel0(12, 0);
 	hangOne(2);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	allPalette();
 	hangOne(80);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
@@ -375,24 +375,24 @@ void DreamBase::realCredits() {
 	playChannel0(12, 0);
 	hangOne(2);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	allPalette();
 	hangOne(80);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
@@ -400,23 +400,23 @@ void DreamBase::realCredits() {
 	fadeScreenUps();
 	hangOne(60);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	playChannel0(13, 0);
 	hangOne(350);
 
-	if (data.byte(kLasthardkey) == 1) {
-		data.byte(kLasthardkey) =  0;
+	if (_lastHardKey == 1) {
+		_lastHardKey =  0;
 		return; // "realcreditsearly"
 	}
 
 	fadeScreenDowns();
 	hangOne(256);
 
-	data.byte(kLasthardkey) =  0;
+	_lastHardKey =  0;
 }
 
 } // End of namespace DreamGen
diff --git a/engines/dreamweb/use.cpp b/engines/dreamweb/use.cpp
index f2dce4d..94c9d20 100644
--- a/engines/dreamweb/use.cpp
+++ b/engines/dreamweb/use.cpp
@@ -121,10 +121,10 @@ void DreamBase::useRoutine() {
 		{ &DreamBase::hotelBell,               "BELL" },
 	};
 
-	if (data.byte(kReallocation) >= 50) {
-		if (data.byte(kPointerpower) == 0)
+	if (_realLocation >= 50) {
+		if (_pointerPower == 0)
 			return;
-		data.byte(kPointerpower) = 0;
+		_pointerPower = 0;
 	}
 
 	uint8 dummy;
@@ -160,7 +160,7 @@ void DreamBase::useRoutine() {
 	workToScreenM();
 	hangOnP(50);
 	putBackObStuff();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 }
 
 void DreamBase::useText(const uint8 *string) {
@@ -191,13 +191,13 @@ void DreamBase::showSecondUse() {
 }
 
 void DreamBase::viewFolder() {
-	data.byte(kManisoffscreen) = 1;
+	_manIsOffScreen = 1;
 	getRidOfAll();
 	loadFolder();
-	data.byte(kFolderpage) = 0;
+	_folderPage = 0;
 	showFolder();
 	workToScreenM();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 	do {
 		if (_quitRequested)
 			break;
@@ -208,8 +208,8 @@ void DreamBase::viewFolder() {
 		dumpPointer();
 		dumpTextLine();
 		checkFolderCoords();
-	} while (data.byte(kGetback) == 0);
-	data.byte(kManisoffscreen) = 0;
+	} while (_getBack == 0);
+	_manIsOffScreen = 0;
 	getRidOfTemp();
 	getRidOfTemp2();
 	getRidOfTemp3();
@@ -226,7 +226,7 @@ void DreamBase::edensCDPlayer() {
 	data.word(kEndwatchreel) = 42;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::hotelBell() {
@@ -244,33 +244,33 @@ void DreamBase::playGuitar() {
 void DreamBase::useElevator1() {
 	showFirstUse();
 	selectLocation();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useElevator2() {
 	showFirstUse();
 
 	if (data.byte(kLocation) == 23)	// In pool hall
-		data.byte(kNewlocation) = 31;
+		_newLocation = 31;
 	else
-		data.byte(kNewlocation) = 23;
+		_newLocation = 23;
 
 	data.byte(kCounttoclose) = 20;
 	data.byte(kCounttoopen) = 0;
 	data.word(kWatchingtime) = 80;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useElevator3() {
 	showFirstUse();
 	data.byte(kCounttoclose) = 20;
-	data.byte(kNewlocation) = 34;
+	_newLocation = 34;
 	data.word(kReeltowatch) = 46;
 	data.word(kEndwatchreel) = 63;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kWatchingtime) = 80;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useElevator4() {
@@ -281,24 +281,24 @@ void DreamBase::useElevator4() {
 	data.byte(kSpeedcount) = 1;
 	data.byte(kCounttoclose) = 20;
 	data.word(kWatchingtime) = 80;
-	data.byte(kGetback) = 1;
-	data.byte(kNewlocation) = 24;
+	_getBack = 1;
+	_newLocation = 24;
 }
 
 void DreamBase::useElevator5() {
 	placeSetObject(4);
 	removeSetObject(0);
-	data.byte(kNewlocation) = 20;
+	_newLocation = 20;
 	data.word(kWatchingtime) = 80;
 	data.byte(kLiftflag) = 1;
 	data.byte(kCounttoclose) = 8;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useHatch() {
 	showFirstUse();
-	data.byte(kNewlocation) = 40;
-	data.byte(kGetback) = 1;
+	_newLocation = 40;
+	_getBack = 1;
 }
 
 void DreamBase::wheelSound() {
@@ -311,22 +311,22 @@ void DreamBase::callHotelLift() {
 	playChannel1(12);
 	showFirstUse();
 	data.byte(kCounttoopen) = 8;
-	data.byte(kGetback) = 1;
-	data.byte(kDestination) = 5;
-	data.byte(kFinaldest) = 5;
+	_getBack = 1;
+	_destination = 5;
+	_finalDest = 5;
 	autoSetWalk();
 	turnPathOn(4);
 }
 
 void DreamBase::useShield() {
-	if (data.byte(kReallocation) != 20 || data.byte(kCombatcount) == 0) {
+	if (_realLocation != 20 || data.byte(kCombatcount) == 0) {
 		// Not in Sart room
 		showFirstUse();
 		putBackObStuff();
 	} else {
 		data.byte(kLastweapon) = 3;
 		showSecondUse();
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kProgresspoints)++;
 		removeObFromInv();
 	}
@@ -340,7 +340,7 @@ void DreamBase::useCoveredBox() {
 	data.word(kEndwatchreel) = 66;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useRailing() {
@@ -350,7 +350,7 @@ void DreamBase::useRailing() {
 	data.word(kEndwatchreel) = 30;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kMandead) = 4;
 }
 
@@ -362,7 +362,7 @@ void DreamBase::wearWatch() {
 	} else {
 		showFirstUse();
 		data.byte(kWatchon) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		uint8 dummy;
 		makeWorn((DynObject *)getAnyAd(&dummy, &dummy));
 	}
@@ -376,7 +376,7 @@ void DreamBase::wearShades() {
 	} else {
 		data.byte(kShadeson) = 1;
 		showFirstUse();
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		uint8 dummy;
 		makeWorn((DynObject *)getAnyAd(&dummy, &dummy));
 	}
@@ -384,7 +384,7 @@ void DreamBase::wearShades() {
 
 void DreamBase::useChurchHole() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.word(kWatchingtime) = 28;
 	data.word(kReeltowatch) = 13;
 	data.word(kEndwatchreel) = 26;
@@ -406,14 +406,14 @@ void DreamBase::sitDownInBar() {
 		data.word(kEndofholdreel) = 83;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
 void DreamBase::useDryer() {
 	playChannel1(12);
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useBalcony() {
@@ -426,30 +426,30 @@ void DreamBase::useBalcony() {
 	turnPathOff(4);
 	turnPathOff(5);
 	data.byte(kProgresspoints)++;
-	data.byte(kManspath) = 6;
-	data.byte(kDestination) = 6;
-	data.byte(kFinaldest) = 6;
+	_mansPath = 6;
+	_destination = 6;
+	_finalDest = 6;
 	findXYFromPath();
 	switchRyanOff();
-	data.byte(kResetmanxy) = 1;
+	_resetManXY = 1;
 	data.word(kWatchingtime) = 30 * 2;
 	data.word(kReeltowatch) = 183;
 	data.word(kEndwatchreel) = 212;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useWindow() {
-	if (data.byte(kManspath) != 6) {
+	if (_mansPath != 6) {
 		// Not on balcony
 		showSecondUse();
 		putBackObStuff();
 	} else {
 		data.byte(kProgresspoints)++;
 		showFirstUse();
-		data.byte(kNewlocation) = 29;
-		data.byte(kGetback) = 1;
+		_newLocation = 29;
+		_getBack = 1;
 	}
 }
 
@@ -460,16 +460,16 @@ void DreamBase::trapDoor() {
 	data.word(kWatchingtime) = 20 * 2;
 	data.word(kReeltowatch) = 181;
 	data.word(kEndwatchreel) = 197;
-	data.byte(kNewlocation) = 26;
+	_newLocation = 26;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::callEdensLift() {
 	showFirstUse();
 	data.byte(kCounttoopen) = 8;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	turnPathOn(2);
 }
 
@@ -481,62 +481,62 @@ void DreamBase::callEdensDLift() {
 	} else {
 		showFirstUse();
 		data.byte(kCounttoopen) = 8;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		turnPathOn(2);
 	}
 }
 
 void DreamBase::openYourNeighbour() {
 	enterCode(255, 255, 255, 255);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openRyan() {
 	enterCode(5, 1, 0, 6);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openPoolBoss() {
 	enterCode(5, 2, 2, 2);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openEden() {
 	enterCode(2, 8, 6, 5);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openSarters() {
 	enterCode(7, 8, 3, 3);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openLouis() {
 	enterCode(5, 2, 3, 8);
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 
 void DreamBase::useWall() {
 	showFirstUse();
 
-	if (data.byte(kManspath) != 3) {
+	if (_mansPath != 3) {
 		data.word(kWatchingtime) = 30*2;
 		data.word(kReeltowatch) = 2;
 		data.word(kEndwatchreel) = 31;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		turnPathOn(3);
 		turnPathOn(4);
 		turnPathOff(0);
 		turnPathOff(1);
 		turnPathOff(2);
 		turnPathOff(5);
-		data.byte(kManspath) = 3;
-		data.byte(kFinaldest) = 3;
+		_mansPath = 3;
+		_finalDest = 3;
 		findXYFromPath();
-		data.byte(kResetmanxy) = 1;
+		_resetManXY = 1;
 		switchRyanOff();
 	} else {
 		// Go back over
@@ -545,52 +545,52 @@ void DreamBase::useWall() {
 		data.word(kEndwatchreel) = 60;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		turnPathOff(3);
 		turnPathOff(4);
 		turnPathOn(0);
 		turnPathOn(1);
 		turnPathOn(2);
 		turnPathOn(5);
-		data.byte(kManspath) = 5;
-		data.byte(kFinaldest) = 5;
+		_mansPath = 5;
+		_finalDest = 5;
 		findXYFromPath();
-		data.byte(kResetmanxy) = 1;
+		_resetManXY = 1;
 		switchRyanOff();
 	}
 }
 
 void DreamBase::useLadder() {
 	showFirstUse();
-	data.byte(kMapx) = data.byte(kMapx) - 11;
+	_mapX = _mapX - 11;
 	findRoomInLoc();
-	data.byte(kFacing) = 6;
-	data.byte(kTurntoface) = 6;
-	data.byte(kManspath) = 0;
-	data.byte(kDestination) = 0;
-	data.byte(kFinaldest) = 0;
+	_facing = 6;
+	_turnToFace = 6;
+	_mansPath = 0;
+	_destination = 0;
+	_finalDest = 0;
 	findXYFromPath();
-	data.byte(kResetmanxy) = 1;
-	data.byte(kGetback) = 1;
+	_resetManXY = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useLadderB() {
 	showFirstUse();
-	data.byte(kMapx) = data.byte(kMapx) + 11;
+	_mapX = _mapX + 11;
 	findRoomInLoc();
-	data.byte(kFacing) = 2;
-	data.byte(kTurntoface) = 2;
-	data.byte(kManspath) = 1;
-	data.byte(kDestination) = 1;
-	data.byte(kFinaldest) = 1;
+	_facing = 2;
+	_turnToFace = 2;
+	_mansPath = 1;
+	_destination = 1;
+	_finalDest = 1;
 	findXYFromPath();
-	data.byte(kResetmanxy) = 1;
-	data.byte(kGetback) = 1;
+	_resetManXY = 1;
+	_getBack = 1;
 }
 
 void DreamBase::slabDoorA() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kReeltowatch) = 13;
@@ -604,7 +604,7 @@ void DreamBase::slabDoorA() {
 		data.byte(kProgresspoints)++;
 		data.word(kWatchingtime) = 60;
 		data.word(kEndwatchreel) = 42;
-		data.byte(kNewlocation) = 47;
+		_newLocation = 47;
 	}
 }
 
@@ -612,7 +612,7 @@ void DreamBase::slabDoorB() {
 	if (data.byte(kDreamnumber) != 1) {
 		// Wrong
 		showFirstUse();
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
 		data.word(kReeltowatch) = 44;
@@ -629,20 +629,20 @@ void DreamBase::slabDoorB() {
 			// Got crystal
 			showFirstUse();
 			data.byte(kProgresspoints)++;
-			data.byte(kGetback) = 1;
+			_getBack = 1;
 			data.byte(kWatchspeed) = 1;
 			data.byte(kSpeedcount) = 1;
 			data.word(kReeltowatch) = 44;
 			data.word(kWatchingtime) = 60;
 			data.word(kEndwatchreel) = 71;
-			data.byte(kNewlocation) = 47;
+			_newLocation = 47;
 		}
 	}
 }
 
 void DreamBase::slabDoorC() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kReeltowatch) = 108;
@@ -656,13 +656,13 @@ void DreamBase::slabDoorC() {
 		data.byte(kProgresspoints)++;
 		data.word(kWatchingtime) = 60;
 		data.word(kEndwatchreel) = 135;
-		data.byte(kNewlocation) = 47;
+		_newLocation = 47;
 	}
 }
 
 void DreamBase::slabDoorD() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kReeltowatch) = 75;
@@ -676,13 +676,13 @@ void DreamBase::slabDoorD() {
 		data.byte(kProgresspoints)++;
 		data.word(kWatchingtime) = 60;
 		data.word(kEndwatchreel) = 102;
-		data.byte(kNewlocation) = 47;
+		_newLocation = 47;
 	}
 }
 
 void DreamBase::slabDoorE() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kReeltowatch) = 141;
@@ -696,13 +696,13 @@ void DreamBase::slabDoorE() {
 		data.byte(kProgresspoints)++;
 		data.word(kWatchingtime) = 60;
 		data.word(kEndwatchreel) = 168;
-		data.byte(kNewlocation) = 47;
+		_newLocation = 47;
 	}
 }
 
 void DreamBase::slabDoorF() {
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
 	data.word(kReeltowatch) = 171;
@@ -716,17 +716,17 @@ void DreamBase::slabDoorF() {
 		data.byte(kProgresspoints)++;
 		data.word(kWatchingtime) = 60;
 		data.word(kEndwatchreel) = 197;
-		data.byte(kNewlocation) = 47;
+		_newLocation = 47;
 	}
 }
 
 bool DreamBase::defaultUseHandler(const char *id) {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return true;	// event handled
 	}
 
-	if (!compare(data.byte(kWithobject), data.byte(kWithtype), id)) {
+	if (!compare(_withObject, _withType, id)) {
 		// Wrong item
 		showPuzText(14, 300);
 		putBackObStuff();
@@ -747,7 +747,7 @@ void DreamBase::useChurchGate() {
 	data.word(kEndwatchreel) = 70;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kProgresspoints)++;
 	turnPathOn(3);
 	if (data.byte(kAidedead) != 0)
@@ -756,78 +756,78 @@ void DreamBase::useChurchGate() {
 
 void DreamBase::useGun() {
 
-	if (data.byte(kObjecttype) != kExObjectType) {
+	if (_objectType != kExObjectType) {
 		// gun is not taken
 		showSecondUse();
 		putBackObStuff();
 
-	} else if (data.byte(kReallocation) == 22) {
+	} else if (_realLocation == 22) {
 		// in pool room
 		showPuzText(34, 300);
 		data.byte(kLastweapon) = 1;
 		data.byte(kCombatcount) = 39;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 25) {
+	} else if (_realLocation == 25) {
 		// helicopter
 		showPuzText(34, 300);
 		data.byte(kLastweapon) = 1;
 		data.byte(kCombatcount) = 19;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kDreamnumber) = 2;
 		data.byte(kRoomafterdream) = 38;
 		data.byte(kSartaindead) = 1;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 27) {
+	} else if (_realLocation == 27) {
 		// in rock room
 		showPuzText(46, 300);
-		data.byte(kPointermode) = 2;
+		_pointerMode = 2;
 		data.byte(kRockstardead) = 1;
 		data.byte(kLastweapon) = 1;
 		data.byte(kNewsitem) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kRoomafterdream) = 32;
 		data.byte(kDreamnumber) = 0;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 8 && data.byte(kMapx) == 22 && data.byte(kMapy) == 40
-	    && !isSetObOnMap(92) && data.byte(kManspath) != 9) {
+	} else if (_realLocation == 8 && _mapX == 22 && _mapY == 40
+	    && !isSetObOnMap(92) && _mansPath != 9) {
 		// by studio
-		data.byte(kDestination) = 9;
-		data.byte(kFinaldest) = 9;
+		_destination = 9;
+		_finalDest = 9;
 		autoSetWalk();
 		data.byte(kLastweapon) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 6 && data.byte(kMapx) == 11 && data.byte(kMapy) == 20
+	} else if (_realLocation == 6 && _mapX == 11 && _mapY == 20
 	    && isSetObOnMap(5)) {
 		// sarters
-		data.byte(kDestination) = 1;
-		data.byte(kFinaldest) = 1;
+		_destination = 1;
+		_finalDest = 1;
 		autoSetWalk();
 		removeSetObject(5);
 		placeSetObject(6);
-		turnAnyPathOn(1, data.byte(kRoomnum) - 1);
+		turnAnyPathOn(1, _roomNum - 1);
 		data.byte(kLiftflag) = 1;
 		data.word(kWatchingtime) = 40*2;
 		data.word(kReeltowatch) = 4;
 		data.word(kEndwatchreel) = 43;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 29) {
+	} else if (_realLocation == 29) {
 		// aide
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		resetLocation(13);
 		setLocation(12);
-		data.byte(kDestpos) = 12;
-		data.byte(kDestination) = 2;
-		data.byte(kFinaldest) = 2;
+		_destPos = 12;
+		_destination = 2;
+		_finalDest = 2;
 		autoSetWalk();
 		data.word(kWatchingtime) = 164*2;
 		data.word(kReeltowatch) = 3;
@@ -839,25 +839,25 @@ void DreamBase::useGun() {
 		data.byte(kRoomafterdream) = 33;
 		data.byte(kProgresspoints)++;
 
-	} else if (data.byte(kReallocation) == 23 && data.byte(kMapx) == 0 && data.byte(kMapy) == 50) {
+	} else if (_realLocation == 23 && _mapX == 0 && _mapY == 50) {
 		// with boss
-		if (data.byte(kManspath) != 5) {
-			data.byte(kDestination) = 5;
-			data.byte(kFinaldest) = 5;
+		if (_mansPath != 5) {
+			_destination = 5;
+			_finalDest = 5;
 			autoSetWalk();
 		}
 		data.byte(kLastweapon) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 
-	} else if (data.byte(kReallocation) == 8 && data.byte(kMapx) == 11 && data.byte(kMapy) == 10) {
+	} else if (_realLocation == 8 && _mapX == 11 && _mapY == 10) {
 		// tv soldier
-		if (data.byte(kManspath) != 2) {
-			data.byte(kDestination) = 2;
-			data.byte(kFinaldest) = 2;
+		if (_mansPath != 2) {
+			_destination = 2;
+			_finalDest = 2;
 			autoSetWalk();
 		}
 		data.byte(kLastweapon) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 
 	} else {
 		showFirstUse();
@@ -867,20 +867,20 @@ void DreamBase::useGun() {
 
 void DreamBase::useFullCart() {
 	data.byte(kProgresspoints)++;
-	turnAnyPathOn(2, data.byte(kRoomnum) + 6);
-	data.byte(kManspath) = 4;
-	data.byte(kFacing) = 4;
-	data.byte(kTurntoface) = 4;
-	data.byte(kFinaldest) = 4;
+	turnAnyPathOn(2, _roomNum + 6);
+	_mansPath = 4;
+	_facing = 4;
+	_turnToFace = 4;
+	_finalDest = 4;
 	findXYFromPath();
-	data.byte(kResetmanxy) = 1;
+	_resetManXY = 1;
 	showFirstUse();
 	data.word(kWatchingtime) = 72 * 2;
 	data.word(kReeltowatch) = 58;
 	data.word(kEndwatchreel) = 142;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useClearBox() {
@@ -895,7 +895,7 @@ void DreamBase::useClearBox() {
 	data.word(kEndwatchreel) = 105;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openTVDoor() {
@@ -905,16 +905,16 @@ void DreamBase::openTVDoor() {
 	// Key on TV
 	showFirstUse();
 	data.byte(kLockstatus) = 0;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::usePlate() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "SCRW")) {
+	if (compare(_withObject, _withType, "SCRW")) {
 		// Unscrew plate
 		playChannel1(20);
 		showFirstUse();
@@ -923,8 +923,8 @@ void DreamBase::usePlate() {
 		removeSetObject(25);
 		placeFreeObject(0);
 		data.byte(kProgresspoints)++;
-		data.byte(kGetback) = 1;
-	} else if (compare(data.byte(kWithobject), data.byte(kWithtype), "KNFE")) {
+		_getBack = 1;
+	} else if (compare(_withObject, _withType, "KNFE")) {
 		// Tried knife
 		showPuzText(54, 300);
 		putBackObStuff();
@@ -936,12 +936,12 @@ void DreamBase::usePlate() {
 }
 
 void DreamBase::usePlinth() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (!compare(data.byte(kWithobject), data.byte(kWithtype), "DKEY")) {
+	if (!compare(_withObject, _withType, "DKEY")) {
 		// Wrong key
 		showFirstUse();
 		putBackObStuff();
@@ -953,8 +953,8 @@ void DreamBase::usePlinth() {
 		data.word(kEndwatchreel) = 104;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
-		data.byte(kNewlocation) = data.byte(kRoomafterdream);
+		_getBack = 1;
+		_newLocation = data.byte(kRoomafterdream);
 	}
 }
 
@@ -970,21 +970,21 @@ void DreamBase::useElvDoor() {
 	data.word(kEndwatchreel) = 77;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useObject() {
-	data.byte(kWithobject) = 255;
+	_withObject = 255;
 
-	if (data.byte(kCommandtype) != 229) {
-		data.byte(kCommandtype) = 229;
-		commandWithOb(51, data.byte(kObjecttype), data.byte(kCommand));
+	if (_commandType != 229) {
+		_commandType = 229;
+		commandWithOb(51, _objectType, _command);
 	}
 
-	if (data.word(kMousebutton) == data.word(kOldbutton))
+	if (_mouseButton == _oldButton)
 		return;	// nouse
 
-	if (data.word(kMousebutton) & 1)
+	if (_mouseButton & 1)
 		useRoutine();
 }
 
@@ -1002,13 +1002,13 @@ void DreamBase::useWinch() {
 	data.word(kEndwatchreel) = 217;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kDestpos) = 1;
-	data.byte(kNewlocation) = 45;
+	_destPos = 1;
+	_newLocation = 45;
 	data.byte(kDreamnumber) = 1;
 	data.byte(kRoomafterdream) = 44;
 	data.byte(kGeneraldead) = 1;
 	data.byte(kNewsitem) = 2;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	data.byte(kProgresspoints)++;
 }
 
@@ -1016,14 +1016,14 @@ void DreamBase::useCart() {
 	if (defaultUseHandler("ROCK"))
 		return;
 
-	DynObject *exObject = getExAd(data.byte(kWithobject));
+	DynObject *exObject = getExAd(_withObject);
 	exObject->mapad[0] = 0;
-	removeSetObject(data.byte(kCommand));
-	placeSetObject(data.byte(kCommand) + 1);
+	removeSetObject(_command);
+	placeSetObject(_command + 1);
 	data.byte(kProgresspoints)++;
 	playChannel1(17);
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useTrainer() {
@@ -1045,7 +1045,7 @@ void DreamBase::chewy() {
 	uint8 dummy;
 	DynObject *object = (DynObject *)getAnyAd(&dummy, &dummy);
 	object->mapad[0] = 255;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useHole() {
@@ -1054,10 +1054,10 @@ void DreamBase::useHole() {
 
 	showFirstUse();
 	removeSetObject(86);
-	DynObject *exObject = getExAd(data.byte(kWithobject));
+	DynObject *exObject = getExAd(_withObject);
 	exObject->mapad[0] = 255;
 	data.byte(kCanmovealtar) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openHotelDoor() {
@@ -1067,7 +1067,7 @@ void DreamBase::openHotelDoor() {
 	playChannel1(16);
 	showFirstUse();
 	data.byte(kLockstatus) = 0;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::openHotelDoor2() {
@@ -1099,7 +1099,7 @@ void DreamBase::usePoolReader() {
 		playChannel1(17);
 		showFirstUse();
 		data.byte(kCounttoopen) = 6;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
@@ -1121,7 +1121,7 @@ void DreamBase::useCardReader1() {
 		showPuzText(18, 300);
 		data.byte(kProgresspoints)++;
 		data.word(kCard1money) = 12432;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
@@ -1148,7 +1148,7 @@ void DreamBase::useCardReader2() {
 		data.byte(kGunpassflag) = 1;
 		data.word(kCard1money) -= 2000;
 		data.byte(kProgresspoints)++;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
@@ -1170,43 +1170,43 @@ void DreamBase::useCardReader3() {
 		data.byte(kProgresspoints)++;
 		data.word(kCard1money) -= 8300;
 		data.byte(kCardpassflag) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
 void DreamBase::useLighter() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (!compare(data.byte(kWithobject), data.byte(kWithtype), "SMKE")) {
+	if (!compare(_withObject, _withType, "SMKE")) {
 		showFirstUse();
 		putBackObStuff();
 	} else {
 		showPuzText(9, 300);
-		DynObject *withObj = getExAd(data.byte(kWithobject));
+		DynObject *withObj = getExAd(_withObject);
 		withObj->mapad[0] = 255;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
 void DreamBase::useWire() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "KNFE")) {
+	if (compare(_withObject, _withType, "KNFE")) {
 		removeSetObject(51);
 		placeSetObject(52);
 		showPuzText(11, 300);
 		data.byte(kProgresspoints)++;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "AXED")) {
+	if (compare(_withObject, _withType, "AXED")) {
 		showPuzText(16, 300);
 		putBackObStuff();
 		return;
@@ -1224,11 +1224,11 @@ void DreamBase::openTomb() {
 	data.word(kEndwatchreel) = 33;
 	data.byte(kWatchspeed) = 1;
 	data.byte(kSpeedcount) = 1;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::hotelControl() {
-	if (data.byte(kReallocation) != 21 || data.byte(kMapx) != 33)
+	if (_realLocation != 21 || _mapX != 33)
 		showSecondUse();	// Not right control
 	else
 		showFirstUse();
@@ -1237,7 +1237,7 @@ void DreamBase::hotelControl() {
 }
 
 void DreamBase::useCooker() {
-	if (checkInside(data.byte(kCommand), data.byte(kObjecttype)) == kNumexobjects)
+	if (checkInside(_command, _objectType) == kNumexobjects)
 		showFirstUse();
 	else
 		showSecondUse();	// Food inside
@@ -1268,7 +1268,7 @@ void DreamBase::useDiary() {
 	showPointer();
 	workToScreen();
 	delPointer();
-	data.byte(kGetback) = 0;
+	_getBack = 0;
 
 	RectWithCallback<DreamBase> diaryList[] = {
 		{ kDiaryx+94,kDiaryx+110,kDiaryy+97,kDiaryy+113,&DreamBase::diaryKeyN },
@@ -1288,43 +1288,43 @@ void DreamBase::useDiary() {
 		dumpDiaryKeys();
 		dumpTextLine();
 		checkCoords(diaryList);
-	} while (!data.byte(kGetback) && !_quitRequested);
+	} while (!_getBack && !_quitRequested);
 
 
 	getRidOfTemp();
 	getRidOfTempText();
 	getRidOfTempCharset();
 	restoreReels();
-	data.byte(kManisoffscreen) = 0;
+	_manIsOffScreen = 0;
 	redrawMainScrn();
 	workToScreenM();
 }
 
 void DreamBase::useControl() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "KEYA")) {	// Right key
+	if (compare(_withObject, _withType, "KEYA")) {	// Right key
 		playChannel1(16);
 		if (data.byte(kLocation) == 21) {	// Going down
 			showPuzText(3, 300);
-			data.byte(kNewlocation) = 30;
+			_newLocation = 30;
 		} else {
 			showPuzText(0, 300);
-			data.byte(kNewlocation) = 21;
+			_newLocation = 21;
 		}
 
 		data.byte(kCounttoclose) = 8;
 		data.byte(kCounttoopen) = 0;
 		data.word(kWatchingtime) = 80;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		return;
 	}
 
-	if (data.byte(kReallocation) == 21) {
-		if (compare(data.byte(kWithobject), data.byte(kWithtype), "KNFE")) {
+	if (_realLocation == 21) {
+		if (compare(_withObject, _withType, "KNFE")) {
 			// Jimmy controls
 			placeSetObject(50);
 			placeSetObject(51);
@@ -1335,8 +1335,8 @@ void DreamBase::useControl() {
 			playChannel1(14);
 			showPuzText(10, 300);
 			data.byte(kProgresspoints)++;
-			data.byte(kGetback) = 1;
-		} else if (compare(data.byte(kWithobject), data.byte(kWithtype), "AXED")) {
+			_getBack = 1;
+		} else if (compare(_withObject, _withType, "AXED")) {
 			// Axe on controls
 			showPuzText(16, 300);
 			data.byte(kProgresspoints)++;
@@ -1354,23 +1354,23 @@ void DreamBase::useControl() {
 }
 
 void DreamBase::useSlab() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (!compare(data.byte(kWithobject), data.byte(kWithtype), "JEWL")) {
+	if (!compare(_withObject, _withType, "JEWL")) {
 		showPuzText(14, 300);
 		putBackObStuff();
 		return;
 	}
 
-	DynObject *exObject = getExAd(data.byte(kWithobject));
+	DynObject *exObject = getExAd(_withObject);
 	exObject->mapad[0] = 0;
 
-	removeSetObject(data.byte(kCommand));
-	placeSetObject(data.byte(kCommand) + 1);
-	if (data.byte(kCommand) + 1 == 54) {
+	removeSetObject(_command);
+	placeSetObject(_command + 1);
+	if (_command + 1 == 54) {
 		// Last slab
 		turnPathOn(0);
 		data.word(kWatchingtime) = 22;
@@ -1382,23 +1382,23 @@ void DreamBase::useSlab() {
 
 	data.byte(kProgresspoints)++;
 	showFirstUse();
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::usePipe() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPE")) {
+	if (compare(_withObject, _withType, "CUPE")) {
 		// Fill cup
 		showPuzText(36, 300);
 		putBackObStuff();
-		DynObject *exObject = getExAd(data.byte(kWithobject));
+		DynObject *exObject = getExAd(_withObject);
 		exObject->id[3] = 'F'-'A';	// CUPE (empty cup) -> CUPF (full cup)
 		return;
-	} else if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPF")) {
+	} else if (compare(_withObject, _withType, "CUPF")) {
 		// Already full
 		showPuzText(35, 300);
 		putBackObStuff();
@@ -1409,16 +1409,16 @@ void DreamBase::usePipe() {
 }
 
 void DreamBase::useOpenBox() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPF")) {
+	if (compare(_withObject, _withType, "CUPF")) {
 		// Destroy open box
 		data.byte(kProgresspoints)++;
 		showPuzText(37, 300);
-		DynObject *exObject = getExAd(data.byte(kWithobject));
+		DynObject *exObject = getExAd(_withObject);
 		exObject->id[3] = 'E'-'A';	// CUPF (full cup) -> CUPE (empty cup)
 		data.word(kWatchingtime) = 140;
 		data.word(kReeltowatch) = 105;
@@ -1426,11 +1426,11 @@ void DreamBase::useOpenBox() {
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
 		turnPathOn(4);
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPE")) {
+	if (compare(_withObject, _withType, "CUPE")) {
 		// Open box wrong
 		showPuzText(38, 300);
 		putBackObStuff();
@@ -1441,14 +1441,14 @@ void DreamBase::useOpenBox() {
 }
 
 void DreamBase::runTap() {
-	if (data.byte(kWithobject) == 255) {
+	if (_withObject == 255) {
 		withWhat();
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPE")) {
+	if (compare(_withObject, _withType, "CUPE")) {
 		// Fill cup from tap
-		DynObject *exObject = getExAd(data.byte(kWithobject));
+		DynObject *exObject = getExAd(_withObject);
 		exObject->id[3] = 'F'-'A';	// CUPE (empty cup) -> CUPF (full cup)
 		playChannel1(8);
 		showPuzText(57, 300);
@@ -1456,7 +1456,7 @@ void DreamBase::runTap() {
 		return;
 	}
 
-	if (compare(data.byte(kWithobject), data.byte(kWithtype), "CUPF")) {
+	if (compare(_withObject, _withType, "CUPF")) {
 		// Cup from tap full
 		showPuzText(58, 300);
 		putBackObStuff();
@@ -1468,13 +1468,13 @@ void DreamBase::runTap() {
 }
 
 void DreamBase::useAxe() {
-	if (data.byte(kReallocation) != 22) {
+	if (_realLocation != 22) {
 		// Not in pool
 		showFirstUse();
 		return;
 	}
 
-	if (data.byte(kMapy) == 10) {
+	if (_mapY == 10) {
 		// Axe on door
 		showPuzText(15, 300);
 		data.byte(kProgresspoints)++;
@@ -1483,14 +1483,14 @@ void DreamBase::useAxe() {
 		data.word(kEndwatchreel) = 77;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		return;
 	}
 
 	showSecondUse();
 	data.byte(kProgresspoints)++;
 	data.byte(kLastweapon) = 2;
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 	removeObFromInv();
 }
 
@@ -1502,17 +1502,17 @@ void DreamBase::useHandle() {
 	} else {
 		// Wire has been cut
 		showPuzText(13, 300);
-		data.byte(kNewlocation) = 22;
+		_newLocation = 22;
 	}
 
-	data.byte(kGetback) = 1;
+	_getBack = 1;
 }
 
 void DreamBase::useAltar() {
 	if (findExObject("CNDA") == 114 || findExObject("CNDB") == 114) {
 		// Things on altar
 		showFirstUse();
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		return;
 	}
 
@@ -1526,10 +1526,10 @@ void DreamBase::useAltar() {
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
 		DreamBase::setupTimedUse(47, 32, 98, 52, 76);
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	} else {
 		showPuzText(23, 300);
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 	}
 }
 
@@ -1541,19 +1541,19 @@ void DreamBase::withWhat() {
 	showMan();
 	showExit();
 
-	copyName(data.byte(kObjecttype), data.byte(kCommand), commandLine);
+	copyName(_objectType, _command, commandLine);
 	printMessage2(100, 21, 63, 200, false, 2);
-	uint16 x = data.word(kLastxpos) + 5;
+	uint16 x = _lastXPos + 5;
 	printDirect(commandLine, x, 21, 220, false);
-	printMessage2(data.word(kLastxpos) + 5, 21, 63, 200, false, 3);
+	printMessage2(_lastXPos + 5, 21, 63, 200, false, 3);
 
 	fillRyan();
-	data.byte(kCommandtype) = 255;
+	_commandType = 255;
 	readMouse();
 	showPointer();
 	workToScreen();
 	delPointer();
-	data.byte(kInvopen) = 2;
+	_invOpen = 2;
 }
 
 void DreamBase::notHeldError() {
@@ -1584,12 +1584,12 @@ void DreamBase::useCashCard() {
 	printDirect(&obText, 36, &y, 36, 36 & 1);
 	char amountStr[10];
 	sprintf(amountStr, "%04d", data.word(kCard1money) / 10);
-	data.word(kCharshift) = 91 * 2 + 75;
+	_charShift = 91 * 2 + 75;
 	printDirect((const uint8 *)amountStr, 160, 155, 240, 240 & 1);
 	sprintf(amountStr, "%02d", (data.word(kCard1money) % 10) * 10);
-	data.word(kCharshift) = 91 * 2 + 85;
+	_charShift = 91 * 2 + 85;
 	printDirect((const uint8 *)amountStr, 187, 155, 240, 240 & 1);
-	data.word(kCharshift) = 0;
+	_charShift = 0;
 	workToScreenM();
 	hangOnP(400);
 	getRidOfTemp();
@@ -1604,7 +1604,7 @@ void DreamBase::useStereo() {
 	if (data.byte(kLocation) != 0) {
 		showPuzText(4, 400);
 		putBackObStuff();
-	} else if (data.byte(kMapx) != 11) {
+	} else if (_mapX != 11) {
 		showPuzText(5, 400);
 		putBackObStuff();
 	} else if (checkInside(findSetObject("CDPL"), 1) == kNumexobjects) {
@@ -1653,7 +1653,7 @@ void DreamBase::showPuzText(uint16 command, uint16 count) {
 void DreamBase::useButtonA() {
 	if (!isSetObOnMap(95)) {
 		showFirstUse();
-		turnAnyPathOn(0, data.byte(kRoomnum) - 1);
+		turnAnyPathOn(0, _roomNum - 1);
 		removeSetObject(9);
 		placeSetObject(95);
 		data.word(kWatchingtime) = 15 * 2;
@@ -1661,7 +1661,7 @@ void DreamBase::useButtonA() {
 		data.word(kEndwatchreel) = 85;
 		data.byte(kWatchspeed) = 1;
 		data.byte(kSpeedcount) = 1;
-		data.byte(kGetback) = 1;
+		_getBack = 1;
 		data.byte(kProgresspoints)++;
 	} else {
 		// Done this bit
diff --git a/engines/dreamweb/vgafades.cpp b/engines/dreamweb/vgafades.cpp
index 3833050..8359518 100644
--- a/engines/dreamweb/vgafades.cpp
+++ b/engines/dreamweb/vgafades.cpp
@@ -67,21 +67,21 @@ void DreamBase::fadeDOS() {
 }
 
 void DreamBase::doFade() {
-	if (data.byte(kFadedirection) == 0)
+	if (_fadeDirection == 0)
 		return;
 
 	engine->processEvents();
-	uint8 *src = _startPal + 3 * data.byte(kColourpos);
-	engine->setPalette(src, data.byte(kColourpos), data.byte(kNumtofade));
+	uint8 *src = _startPal + 3 * _colourPos;
+	engine->setPalette(src, _colourPos, _numToFade);
 
-	data.byte(kColourpos) += data.byte(kNumtofade);
-	if (data.byte(kColourpos) == 0)
+	_colourPos += _numToFade;
+	if (_colourPos == 0)
 		fadeCalculation();
 }
 
 void DreamBase::fadeCalculation() {
-	if (data.byte(kFadecount) == 0) {
-		data.byte(kFadedirection) = 0;
+	if (_fadeCount == 0) {
+		_fadeDirection = 0;
 		return;
 	}
 
@@ -95,21 +95,21 @@ void DreamBase::fadeCalculation() {
 		else if (s > e)
 			--startPal[i];
 		else {
-			if (data.byte(kFadecount) <= e)
+			if (_fadeCount <= e)
 				++startPal[i];
 		}
 	}
-	--data.byte(kFadecount);
+	--_fadeCount;
 }
 
 void DreamBase::fadeUpYellows() {
 	palToEndPal();
 	memset(_endPal + 231 * 3, 0, 8 * 3);
 	memset(_endPal + 246 * 3, 0, 1 * 3);
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(128);
 }
 
@@ -118,10 +118,10 @@ void DreamBase::fadeUpMonFirst() {
 	palToEndPal();
 	memset(_startPal + 231 * 3, 0, 8 * 3);
 	memset(_startPal + 246 * 3, 0, 1 * 3);
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(64);
 	playChannel1(26);
 	hangOn(64);
@@ -133,10 +133,10 @@ void DreamBase::fadeDownMon() {
 	palToEndPal();
 	memset(_endPal + 231 * 3, 0, 8 * 3);
 	memset(_endPal + 246 * 3, 0, 1 * 3);
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(64);
 }
 
@@ -145,10 +145,10 @@ void DreamBase::fadeUpMon() {
 	palToEndPal();
 	memset(_startPal + 231 * 3, 0, 8 * 3);
 	memset(_startPal + 246 * 3, 0, 1 * 3);
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 	hangOn(128);
 }
 
@@ -163,46 +163,46 @@ void DreamBase::initialMonCols() {
 void DreamBase::fadeScreenUp() {
 	clearStartPal();
 	palToEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 }
 
 void DreamBase::fadeScreenUps() {
 	clearStartPal();
 	palToEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 64;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 64;
 }
 
 void DreamBase::fadeScreenUpHalf() {
 	endPalToStart();
 	palToEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 31;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 32;
+	_fadeDirection = 1;
+	_fadeCount = 31;
+	_colourPos = 0;
+	_numToFade = 32;
 }
 
 void DreamBase::fadeScreenDown() {
 	palToStartPal();
 	clearEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 128;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 128;
 }
 
 void DreamBase::fadeScreenDowns() {
 	palToStartPal();
 	clearEndPal();
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 63;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 64;
+	_fadeDirection = 1;
+	_fadeCount = 63;
+	_colourPos = 0;
+	_numToFade = 64;
 }
 
 void DreamBase::fadeScreenDownHalf() {
@@ -219,15 +219,15 @@ void DreamBase::fadeScreenDownHalf() {
 	memcpy(endPal + (56*3), startPal + (56*3), 3*5);
 	memcpy(endPal + (77*3), startPal + (77*3), 3*2);
 
-	data.byte(kFadedirection) = 1;
-	data.byte(kFadecount) = 31;
-	data.byte(kColourpos) = 0;
-	data.byte(kNumtofade) = 32;
+	_fadeDirection = 1;
+	_fadeCount = 31;
+	_colourPos = 0;
+	_numToFade = 32;
 }
 
 
 void DreamBase::clearPalette() {
-	data.byte(kFadedirection) = 0;
+	_fadeDirection = 0;
 	clearStartPal();
 	dumpCurrent();
 }
@@ -247,17 +247,17 @@ void DreamBase::greyscaleSum() {
 
 		tmp = grey;
 		//if (tmp != 0)	// FIXME: The assembler code has this check commented out. Bug or feature?
-			tmp += data.byte(kAddtored);
+			tmp += _addToRed;
 		*dst++ = tmp;
 
 		tmp = grey;
 		if (tmp != 0)
-			tmp += data.byte(kAddtogreen);
+			tmp += _addToGreen;
 		*dst++ = tmp;
 
 		tmp = grey;
 		if (tmp != 0)
-			tmp += data.byte(kAddtoblue);
+			tmp += _addToBlue;
 		*dst++ = tmp;
 	}
 }
diff --git a/engines/dreamweb/vgagrafx.cpp b/engines/dreamweb/vgagrafx.cpp
index 5096db8..ad5fd34 100644
--- a/engines/dreamweb/vgagrafx.cpp
+++ b/engines/dreamweb/vgagrafx.cpp
@@ -287,7 +287,7 @@ void DreamBase::showFrameInternal(const uint8 *pSrc, uint16 x, uint16 y, uint8 e
 			*/
 		}
 		if (effectsFlag & 8) { // printList
-			//addToPrintList(x - data.word(kMapadx), y - data.word(kMapady)); // NB: Commented in the original asm
+			//addToPrintList(x - _mapAdX, y - _mapAdY); // NB: Commented in the original asm
 		}
 		if (effectsFlag & 4) { // flippedX
 			frameOutFx(workspace(), pSrc, 320, width, height, x, y);
@@ -337,11 +337,11 @@ void DreamBase::zoom() {
 		return;
 	if (data.byte(kZoomon) != 1)
 		return;
-	if (data.byte(kCommandtype) >= 199) {
+	if (_commandType >= 199) {
 		putUnderZoom();
 		return;
 	}
-	uint16 srcOffset = (data.word(kOldpointery) - 9) * 320 + (data.word(kOldpointerx) - 11);
+	uint16 srcOffset = (_oldPointerY - 9) * 320 + (_oldPointerX - 11);
 	uint16 dstOffset = (kZoomy + 4) * 320 + (kZoomx + 5);
 	const uint8 *src = workspace() + srcOffset;
 	uint8 *dst = workspace() + dstOffset;
@@ -357,19 +357,19 @@ void DreamBase::zoom() {
 		dst += 320*2;
 	}
 	crosshair();
-	data.byte(kDidzoom) = 1;
+	_didZoom = 1;
 }
 
 void DreamBase::panelToMap() {
-	multiGet(_mapStore, data.word(kMapxstart) + data.word(kMapadx), data.word(kMapystart) + data.word(kMapady), data.byte(kMapxsize), data.byte(kMapysize));
+	multiGet(_mapStore, _mapXStart + _mapAdX, _mapYStart + _mapAdY, _mapXSize, _mapYSize);
 }
 
 void DreamBase::mapToPanel() {
-	multiPut(_mapStore, data.word(kMapxstart) + data.word(kMapadx), data.word(kMapystart) + data.word(kMapady), data.byte(kMapxsize), data.byte(kMapysize));
+	multiPut(_mapStore, _mapXStart + _mapAdX, _mapYStart + _mapAdY, _mapXSize, _mapYSize);
 }
 
 void DreamBase::dumpMap() {
-	multiDump(data.word(kMapxstart) + data.word(kMapadx), data.word(kMapystart) + data.word(kMapady), data.byte(kMapxsize), data.byte(kMapysize));
+	multiDump(_mapXStart + _mapAdX, _mapYStart + _mapAdY, _mapXSize, _mapYSize);
 }
 
 bool DreamBase::pixelCheckSet(const ObjPos *pos, uint8 x, uint8 y) {
@@ -392,7 +392,7 @@ void DreamBase::loadPalFromIFF() {
 	uint8 *dst = _mainPal;
 	for (size_t i = 0; i < 256*3; ++i) {
 		uint8 c = src[i] / 4;
-		if (data.byte(kBrightness) == 1) {
+		if (_brightness == 1) {
 			if (c) {
 				c = c + c / 2 + c / 4;
 				if (c > 63)






More information about the Scummvm-git-logs mailing list