[Scummvm-cvs-logs] CVS: scummvm/scumm boxes.cpp,1.84,1.85 debugger.cpp,1.142,1.143 gfx.cpp,2.432,2.433 input.cpp,2.22,2.23 object.cpp,1.218,1.219 resource.cpp,1.303,1.304 resource_v3.cpp,1.35,1.36 resource_v4.cpp,1.16,1.17 saveload.cpp,1.202,1.203 script_v5.cpp,1.278,1.279 script_v6.cpp,1.429,1.430 script_v72he.cpp,2.235,2.236 scumm.cpp,1.403,1.404 scumm.h,1.564,1.565 sound.cpp,1.437,1.438 verbs.cpp,1.125,1.126 wiz_he.cpp,2.39,2.40

Max Horn fingolfin at users.sourceforge.net
Wed Apr 6 10:32:29 CEST 2005


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13595

Modified Files:
	boxes.cpp debugger.cpp gfx.cpp input.cpp object.cpp 
	resource.cpp resource_v3.cpp resource_v4.cpp saveload.cpp 
	script_v5.cpp script_v6.cpp script_v72he.cpp scumm.cpp scumm.h 
	sound.cpp verbs.cpp wiz_he.cpp 
Log Message:
Moved createResource, resourceStats, expireResources to ResourceManager

Index: boxes.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/boxes.cpp,v
retrieving revision 1.84
retrieving revision 1.85
diff -u -d -r1.84 -r1.85
--- boxes.cpp	11 Mar 2005 01:09:56 -0000	1.84
+++ boxes.cpp	6 Apr 2005 17:31:00 -0000	1.85
@@ -1000,7 +1000,7 @@
 	// the boxes 7,8,9,10,11 the shortest way is to go via box 15.
 	// See also getPathToDestBox.
 	
-	byte *matrixStart = createResource(rtMatrix, 1, BOX_MATRIX_SIZE);
+	byte *matrixStart = res.createResource(rtMatrix, 1, BOX_MATRIX_SIZE);
 	const byte *matrixEnd = matrixStart + BOX_MATRIX_SIZE;
 
 	#define addToMatrix(b)	do { *matrixStart++ = (b); assert(matrixStart < matrixEnd); } while (0)

Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.cpp,v
retrieving revision 1.142
retrieving revision 1.143
diff -u -d -r1.142 -r1.143
--- debugger.cpp	4 Apr 2005 00:16:57 -0000	1.142
+++ debugger.cpp	6 Apr 2005 17:31:01 -0000	1.143
@@ -324,7 +324,7 @@
 			file.seek(-8, SEEK_CUR);
 		}
 
-		file.read(_vm->createResource(rtScript, resnum, size), size);
+		file.read(_vm->res.createResource(rtScript, resnum, size), size);
 
 	} else
 		DebugPrintf("Unknown importres type '%s'\n", argv[1]);

Index: gfx.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/gfx.cpp,v
retrieving revision 2.432
retrieving revision 2.433
diff -u -d -r2.432 -r2.433
--- gfx.cpp	6 Apr 2005 15:09:51 -0000	2.432
+++ gfx.cpp	6 Apr 2005 17:31:01 -0000	2.433
@@ -331,12 +331,12 @@
 		}
 	}
 
-	createResource(rtBuffer, slot + 1, size);
+	res.createResource(rtBuffer, slot + 1, size);
 	vs->pixels = getResourceAddress(rtBuffer, slot + 1);
 	memset(vs->pixels, 0, size);	// reset background
 
 	if (twobufs) {
-		vs->backBuf = createResource(rtBuffer, slot + 5, size);
+		vs->backBuf = res.createResource(rtBuffer, slot + 5, size);
 	}
 
 	if (slot != 3) {
@@ -709,7 +709,7 @@
 
 
 	size = itemsize * gdi._numZBuffer;
-	memset(createResource(rtBuffer, 9, size), 0, size);
+	memset(res.createResource(rtBuffer, 9, size), 0, size);
 
 	for (i = 0; i < (int)ARRAYSIZE(gdi._imgBufOffs); i++) {
 		if (i < gdi._numZBuffer)

Index: input.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/input.cpp,v
retrieving revision 2.22
retrieving revision 2.23
diff -u -d -r2.22 -r2.23
--- input.cpp	22 Mar 2005 17:49:41 -0000	2.22
+++ input.cpp	6 Apr 2005 17:31:05 -0000	2.23
@@ -69,7 +69,7 @@
 				else if (event.kbd.keycode == 'd')
 					_debugger->attach();
 				else if (event.kbd.keycode == 's')
-					resourceStats();
+					res.resourceStats();
 				else
 					_keyPressed = event.kbd.ascii;	// Normal key press, pass on to the game.
 			} else if (event.kbd.flags & OSystem::KBD_ALT) {

Index: object.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/object.cpp,v
retrieving revision 1.218
retrieving revision 1.219
diff -u -d -r1.218 -r1.219
--- object.cpp	3 Apr 2005 22:09:51 -0000	1.218
+++ object.cpp	6 Apr 2005 17:31:06 -0000	1.219
@@ -1125,7 +1125,7 @@
 
 	slot = getInventorySlot();
 	_inventory[slot] = obj;
-	dst = createResource(rtInventory, slot, size);
+	dst = res.createResource(rtInventory, slot, size);
 	assert(dst);
 	memcpy(dst, ptr, size);
 
@@ -1661,7 +1661,7 @@
 
 	// Allocate slot & memory for floating object
 	slot = findFlObjectSlot();
-	flob = createResource(rtFlObject, slot, flob_size);
+	flob = res.createResource(rtFlObject, slot, flob_size);
 	assert(flob);
 
 	// Copy object code + object image to floating object

Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/resource.cpp,v
retrieving revision 1.303
retrieving revision 1.304
diff -u -d -r1.303 -r1.304
--- resource.cpp	4 Apr 2005 00:12:40 -0000	1.303
+++ resource.cpp	6 Apr 2005 17:31:07 -0000	1.304
@@ -648,7 +648,7 @@
 		size = _fileHandle->readUint32BE();
 		_fileHandle->seek(-8, SEEK_CUR);
 	}
-	_fileHandle->read(createResource(type, idx, size), size);
+	_fileHandle->read(res.createResource(type, idx, size), size);
 
 	// dump the resource if requested
 	if (_dumpScripts && type == rtScript) {
@@ -743,15 +743,15 @@
 /* 2 bytes safety area to make "precaching" of bytes in the gdi drawer easier */
 #define SAFETY_AREA 2
 
-byte *ScummEngine::createResource(int type, int idx, uint32 size) {
+byte *ResourceManager::createResource(int type, int idx, uint32 size) {
 	byte *ptr;
 
 	CHECK_HEAP
-	debugC(DEBUG_RESOURCE, "createResource(%s,%d,%d)", resTypeFromId(type), idx, size);
+	debugC(DEBUG_RESOURCE, "res.createResource(%s,%d,%d)", resTypeFromId(type), idx, size);
 
-	if (!res.validateResource("allocating", type, idx))
+	if (!validateResource("allocating", type, idx))
 		return NULL;
-	res.nukeResource(type, idx);
+	nukeResource(type, idx);
 
 	expireResources(size);
 
@@ -761,11 +761,11 @@
 		error("Out of memory while allocating %d", size);
 	}
 
-	res._allocatedSize += size;
+	_allocatedSize += size;
 
-	res.address[type][idx] = ptr;
+	address[type][idx] = ptr;
 	((MemBlkHeader *)ptr)->size = size;
-	res.setResourceCounter(type, idx, 1);
+	setResourceCounter(type, idx, 1);
 	return ptr + sizeof(MemBlkHeader);	/* skip header */
 }
 
@@ -857,32 +857,32 @@
 	}
 }
 
-void ScummEngine::expireResources(uint32 size) {
+void ResourceManager::expireResources(uint32 size) {
 	int i, j;
 	byte flag;
 	byte best_counter;
 	int best_type, best_res = 0;
 	uint32 oldAllocatedSize;
 
-	if (res._expireCounter != 0xFF) {
-		res._expireCounter = 0xFF;
-		res.increaseResourceCounter();
+	if (_expireCounter != 0xFF) {
+		_expireCounter = 0xFF;
+		increaseResourceCounter();
 	}
 
-	if (size + res._allocatedSize < res._maxHeapThreshold)
+	if (size + _allocatedSize < _maxHeapThreshold)
 		return;
 
-	oldAllocatedSize = res._allocatedSize;
+	oldAllocatedSize = _allocatedSize;
 
 	do {
 		best_type = 0;
 		best_counter = 2;
 
 		for (i = rtFirst; i <= rtLast; i++)
-			if (res.mode[i]) {
-				for (j = res.num[i]; --j >= 0;) {
-					flag = res.flags[i][j];
-					if (!(flag & RF_LOCK) && flag >= best_counter && res.address[i][j] && !isResourceInUse(i, j)) {
+			if (mode[i]) {
+				for (j = num[i]; --j >= 0;) {
+					flag = flags[i][j];
+					if (!(flag & RF_LOCK) && flag >= best_counter && address[i][j] && !_vm->isResourceInUse(i, j)) {
 						best_counter = flag;
 						best_type = i;
 						best_res = j;
@@ -892,12 +892,12 @@
 
 		if (!best_type)
 			break;
-		res.nukeResource(best_type, best_res);
-	} while (size + res._allocatedSize > res._minHeapThreshold);
+		nukeResource(best_type, best_res);
+	} while (size + _allocatedSize > _minHeapThreshold);
 
-	res.increaseResourceCounter();
+	increaseResourceCounter();
 
-	debugC(DEBUG_RESOURCE, "Expired resources, mem %d -> %d", oldAllocatedSize, res._allocatedSize);
+	debugC(DEBUG_RESOURCE, "Expired resources, mem %d -> %d", oldAllocatedSize, _allocatedSize);
 }
 
 void ResourceManager::freeResources() {
@@ -927,7 +927,7 @@
 	if (len <= 0)
 		return;
 
-	alloced = createResource(type, resindex, len);
+	alloced = res.createResource(type, resindex, len);
 
 	if (!source) {
 		alloced[0] = fetchScriptByte();
@@ -945,21 +945,21 @@
 	return address[type][idx] != NULL;
 }
 
-void ScummEngine::resourceStats() {
+void ResourceManager::resourceStats() {
 	int i, j;
 	uint32 lockedSize = 0, lockedNum = 0;
 	byte flag;
 
 	for (i = rtFirst; i <= rtLast; i++)
-		for (j = res.num[i]; --j >= 0;) {
-			flag = res.flags[i][j];
-			if (flag & RF_LOCK && res.address[i][j]) {
-				lockedSize += ((MemBlkHeader *)res.address[i][j])->size;
+		for (j = num[i]; --j >= 0;) {
+			flag = flags[i][j];
+			if (flag & RF_LOCK && address[i][j]) {
+				lockedSize += ((MemBlkHeader *)address[i][j])->size;
 				lockedNum++;
 			}
 		}
 
-	debug(1, "Total allocated size=%d, locked=%d(%d)", res._allocatedSize, lockedSize, lockedNum);
+	debug(1, "Total allocated size=%d, locked=%d(%d)", _allocatedSize, lockedSize, lockedNum);
 }
 
 void ScummEngine::readMAXS(int blockSize) {

Index: resource_v3.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/resource_v3.cpp,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- resource_v3.cpp	4 Apr 2005 00:12:41 -0000	1.35
+++ resource_v3.cpp	6 Apr 2005 17:31:08 -0000	1.36
@@ -118,7 +118,7 @@
 	}
 
 	size = file.readUint16LE();
-	file.read(createResource(rtCharset, no, size), size);
+	file.read(res.createResource(rtCharset, no, size), size);
 }
 
 } // End of namespace Scumm

Index: resource_v4.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/resource_v4.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- resource_v4.cpp	4 Apr 2005 07:25:21 -0000	1.16
+++ resource_v4.cpp	6 Apr 2005 17:31:08 -0000	1.17
@@ -141,7 +141,7 @@
 	}
 
 	size = file.readUint32LE() + 11;
-	file.read(createResource(rtCharset, no, size), size);
+	file.read(res.createResource(rtCharset, no, size), size);
 }
 
 void ScummEngine_v4::readMAXS(int blockSize) {

Index: saveload.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/saveload.cpp,v
retrieving revision 1.202
retrieving revision 1.203
diff -u -d -r1.202 -r1.203
--- saveload.cpp	5 Apr 2005 07:53:46 -0000	1.202
+++ saveload.cpp	6 Apr 2005 17:31:08 -0000	1.203
@@ -941,7 +941,7 @@
 		} else {
 			size = ser->loadUint32();
 			if (size) {
-				createResource(type, idx, size);
+				res.createResource(type, idx, size);
 				ser->loadBytes(getResourceAddress(type, idx), size);
 				if (type == rtInventory) {
 					_inventory[idx] = ser->loadUint16();
@@ -992,7 +992,7 @@
 	if (res.mode[type] == 0) {
 		uint32 size = ser->loadUint32();
 		assert(size);
-		createResource(type, idx, size);
+		res.createResource(type, idx, size);
 		ser->loadBytes(getResourceAddress(type, idx), size);
 
 		if (type == rtInventory) {

Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.278
retrieving revision 1.279
diff -u -d -r1.278 -r1.279
--- script_v5.cpp	6 Apr 2005 05:05:36 -0000	1.278
+++ script_v5.cpp	6 Apr 2005 17:31:09 -0000	1.279
@@ -2289,7 +2289,7 @@
 		b = getVarOrDirectByte(PARAM_2);
 		res.nukeResource(rtString, a);
 		if (b) {
-			ptr = createResource(rtString, a, b);
+			ptr = res.createResource(rtString, a, b);
 			if (ptr) {
 				for (i = 0; i < b; i++)
 					ptr[i] = 0;

Index: script_v6.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6.cpp,v
retrieving revision 1.429
retrieving revision 1.430
diff -u -d -r1.429 -r1.430
--- script_v6.cpp	6 Apr 2005 02:11:06 -0000	1.429
+++ script_v6.cpp	6 Apr 2005 17:31:11 -0000	1.430
@@ -451,7 +451,7 @@
 	size *= dim2 + 1;
 	size *= dim1 + 1;
 
-	ah = (ArrayHeader *)createResource(rtString, id, size + sizeof(ArrayHeader));
+	ah = (ArrayHeader *)res.createResource(rtString, id, size + sizeof(ArrayHeader));
 
 	ah->type = TO_LE_16(type);
 	ah->dim1 = TO_LE_16(dim1 + 1);
@@ -3095,7 +3095,7 @@
 		error("ScummEngine_v6::o6_setBoxSet: Can't find dboxes for set %d", arg);
 
 	dboxSize = READ_BE_UINT32(boxd + 4) - 8;
-	byte *matrix = createResource(rtMatrix, 2, dboxSize);
+	byte *matrix = res.createResource(rtMatrix, 2, dboxSize);
 
 	assert(matrix);
 	memcpy(matrix, boxd + 8, dboxSize);
@@ -3108,7 +3108,7 @@
 		error("ScummEngine_v6::o6_setBoxSet: Can't find mboxes for set %d", arg);
 
 	mboxSize = READ_BE_UINT32(boxm + 4) - 8;
-	matrix = createResource(rtMatrix, 1, mboxSize);
+	matrix = res.createResource(rtMatrix, 1, mboxSize);
 
 	assert(matrix);
 	memcpy(matrix, boxm + 8, mboxSize);

Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.235
retrieving revision 2.236
diff -u -d -r2.235 -r2.236
--- script_v72he.cpp	6 Apr 2005 17:24:18 -0000	2.235
+++ script_v72he.cpp	6 Apr 2005 17:31:11 -0000	2.236
@@ -20,7 +20,6 @@
  *
  */
 
-
 #include "stdafx.h"
 
 #include "common/config-manager.h"
@@ -411,7 +410,7 @@
 	size *= dim1end - dim1start + 1;
 	size >>= 3;
 
-	ah = (ArrayHeader *)createResource(rtString, id, size + sizeof(ArrayHeader));
+	ah = (ArrayHeader *)res.createResource(rtString, id, size + sizeof(ArrayHeader));
 
 	ah->type = TO_LE_32(type);
 	ah->dim1start = TO_LE_32(dim1start);

Index: scumm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.cpp,v
retrieving revision 1.403
retrieving revision 1.404
diff -u -d -r1.403 -r1.404
--- scumm.cpp	6 Apr 2005 05:04:39 -0000	1.403
+++ scumm.cpp	6 Apr 2005 17:31:11 -0000	1.404
@@ -2371,13 +2371,13 @@
 			else
 				size = numOfBoxes * SIZEOF_BOX + 1;
 
-			createResource(rtMatrix, 2, size);
+			res.createResource(rtMatrix, 2, size);
 			memcpy(getResourceAddress(rtMatrix, 2), ptr, size);
 			ptr += size;
 
 			size = getResourceDataSize(ptr - size - _resourceHeaderSize) - size;
 			if (size > 0) {					// do this :)
-				createResource(rtMatrix, 1, size);
+				res.createResource(rtMatrix, 1, size);
 				memcpy(getResourceAddress(rtMatrix, 1), ptr, size);
 			}
 
@@ -2386,7 +2386,7 @@
 		ptr = findResourceData(MKID('BOXD'), roomptr);
 		if (ptr) {
 			int size = getResourceDataSize(ptr);
-			createResource(rtMatrix, 2, size);
+			res.createResource(rtMatrix, 2, size);
 			roomptr = getResourceAddress(rtRoom, _roomResource);
 			ptr = findResourceData(MKID('BOXD'), roomptr);
 			memcpy(getResourceAddress(rtMatrix, 2), ptr, size);
@@ -2395,7 +2395,7 @@
 		ptr = findResourceData(MKID('BOXM'), roomptr);
 		if (ptr) {
 			int size = getResourceDataSize(ptr);
-			createResource(rtMatrix, 1, size);
+			res.createResource(rtMatrix, 1, size);
 			roomptr = getResourceAddress(rtRoom, _roomResource);
 			ptr = findResourceData(MKID('BOXM'), roomptr);
 			memcpy(getResourceAddress(rtMatrix, 1), ptr, size);
@@ -2709,7 +2709,7 @@
 		else
 			size = numOfBoxes * SIZEOF_BOX_V3 + 1;
 
-		createResource(rtMatrix, 2, size);
+		res.createResource(rtMatrix, 2, size);
 		memcpy(getResourceAddress(rtMatrix, 2), ptr, size);
 		ptr += size;
 		if (_version <= 2) {
@@ -2720,7 +2720,7 @@
 		}
 
 		if (size > 0) {					// do this :)
-			createResource(rtMatrix, 1, size);
+			res.createResource(rtMatrix, 1, size);
 			memcpy(getResourceAddress(rtMatrix, 1), ptr, size);
 		}
 

Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.564
retrieving revision 1.565
diff -u -d -r1.564 -r1.565
--- scumm.h	5 Apr 2005 11:06:03 -0000	1.564
+++ scumm.h	6 Apr 2005 17:31:13 -0000	1.565
@@ -344,6 +344,7 @@
 public:
 	ResourceManager(ScummEngine *vm);
 
+	byte *createResource(int type, int index, uint32 size);
 	void nukeResource(int type, int i);	
 
 	void freeResources();
@@ -356,6 +357,9 @@
 
 	void setResourceCounter(int type, int index, byte flag);
 	void increaseResourceCounter();
+
+	void resourceStats();
+	void expireResources(uint32 size);
 };
 
 class ScummEngine : public Engine {
@@ -363,6 +367,7 @@
 	friend class SmushPlayer;
 	friend class Insane;
 	friend class CharsetRenderer;
+	friend class ResourceManager;
 	
 	void errorString(const char *buf_input, char *buf_output);
 public:
@@ -699,7 +704,7 @@
 	void loadPtrToResource(int type, int i, const byte *ptr);
 	virtual void readResTypeList(int id, uint32 tag, const char *name);
 	void allocResTypeData(int id, uint32 tag, int num, const char *name, int mode);
-	byte *createResource(int type, int index, uint32 size);
+//	byte *createResource(int type, int index, uint32 size);
 	int loadResource(int type, int i);
 //	void nukeResource(int type, int i);	
 	int getResourceSize(int type, int idx);
@@ -736,10 +741,6 @@
 	int getResourceDataSize(const byte *ptr) const;
 	void dumpResource(const char *tag, int index, const byte *ptr, int length = -1);
 
-protected:
-	void resourceStats();
-	void expireResources(uint32 size);
-
 public:
 	/* Should be in Object class */
 	byte OF_OWNER_ROOM;

Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sound.cpp,v
retrieving revision 1.437
retrieving revision 1.438
diff -u -d -r1.437 -r1.438
--- sound.cpp	4 Apr 2005 17:42:49 -0000	1.437
+++ sound.cpp	6 Apr 2005 17:31:14 -0000	1.438
@@ -1265,7 +1265,7 @@
 	if (basetag == MKID('MIDI') || basetag == MKID('iMUS')) {
 		if (_midiDriver != MD_PCSPK && _midiDriver != MD_PCJR) {
 			_fileHandle->seek(-8, SEEK_CUR);
-			_fileHandle->read(createResource(type, idx, total_size + 8), total_size + 8);
+			_fileHandle->read(res.createResource(type, idx, total_size + 8), total_size + 8);
 			return 1;
 		}
 	} else if (basetag == MKID('SOU ')) {
@@ -1327,7 +1327,7 @@
 
 		if (best_pri != -1) {
 			_fileHandle->seek(best_offs - 8, SEEK_SET);
-			_fileHandle->read(createResource(type, idx, best_size), best_size);
+			_fileHandle->read(res.createResource(type, idx, best_size), best_size);
 			return 1;
 		}
 	} else if (basetag == MKID('Mac0')) {
@@ -1342,27 +1342,27 @@
 	} else if (basetag == MKID('Mac1')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (basetag == MKID('RIFF')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (basetag == MKID('HSHD')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (basetag == MKID('TALK')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (basetag == MKID('DIGI')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (basetag == MKID('FMUS')) {
 		// Used in 3DO version of puttputt joins the parade and probably others
@@ -1396,19 +1396,19 @@
 		total_size = dmuFile.readUint32BE();
 		debugC(DEBUG_SOUND, "dmu file size %d", total_size);
 		dmuFile.seek(-8, SEEK_CUR);
-		dmuFile.read(createResource(type, idx, total_size), total_size);
+		dmuFile.read(res.createResource(type, idx, total_size), total_size);
 		dmuFile.close();
 		return 1;
 	} else if (basetag == MKID('Crea')) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
-		_fileHandle->read(createResource(type, idx, total_size), total_size - 8);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size - 8);
 		return 1;
 	} else if (FROM_LE_32(basetag) == max_total_size) {
 		_fileHandle->seek(-12, SEEK_CUR);
 		total_size = _fileHandle->readUint32BE();
 		_fileHandle->seek(-8, SEEK_CUR);
-		_fileHandle->read(createResource(type, idx, total_size), total_size);
+		_fileHandle->read(res.createResource(type, idx, total_size), total_size);
 		return 1;
 	} else {
 		warning("Unrecognized base tag 0x%08x in sound %d", basetag, idx);
@@ -1645,7 +1645,7 @@
 	*/
 
 #if 0
-	byte *ptr = createResource(type, idx, size);
+	byte *ptr = res.createResource(type, idx, size);
 	memcpy(ptr, src_ptr, size);
 #else
 	const int ppqn = 480;
@@ -1687,7 +1687,7 @@
 	assert(*src_ptr == 0x09);
 	
 	// Create sound resource
-	start_ptr = createResource(type, idx, total_size);
+	start_ptr = res.createResource(type, idx, total_size);
 	
 	// Insert MIDI header
 	ptr = writeMIDIHeader(start_ptr, "GMD ", ppqn, total_size);
@@ -1794,7 +1794,7 @@
 	int total_size = kMIDIHeaderSize + 7 + 8 * sizeof(ADLIB_INSTR_MIDI_HACK) + size;
 	total_size += 24;	// Up to 24 additional bytes are needed for the jump sysex
 	
-	ptr = createResource(type, idx, total_size);
+	ptr = res.createResource(type, idx, total_size);
 
 	src_ptr += 2;
 	size -= 2;
@@ -2187,7 +2187,7 @@
 		_fileHandle->seek(ro_offs + 4, SEEK_SET);
 		_fileHandle->read(src_ptr, ro_size -4);
 
-		ptr = createResource(type, idx, ro_size + 2);
+		ptr = res.createResource(type, idx, ro_size + 2);
 		memcpy(ptr, "RO", 2); ptr += 2;
 		memcpy(ptr, src_ptr, ro_size - 4); ptr += ro_size - 4;
 		return 1;
@@ -2268,15 +2268,15 @@
 	} else if (((_midiDriver == MD_PCJR) || (_midiDriver == MD_PCSPK)) && wa_offs != 0) {
 		if (_features & GF_OLD_BUNDLE) {
 			_fileHandle->seek(wa_offs, SEEK_SET);
-			_fileHandle->read(createResource(type, idx, wa_size), wa_size);
+			_fileHandle->read(res.createResource(type, idx, wa_size), wa_size);
 		} else {
 			_fileHandle->seek(wa_offs - 6, SEEK_SET);
-			_fileHandle->read(createResource(type, idx, wa_size + 6), wa_size + 6);
+			_fileHandle->read(res.createResource(type, idx, wa_size + 6), wa_size + 6);
 		}
 		return 1;
 	} else if (ro_offs != 0) {
 		_fileHandle->seek(ro_offs - 2, SEEK_SET);
-		_fileHandle->read(createResource(type, idx, ro_size - 4), ro_size - 4);
+		_fileHandle->read(res.createResource(type, idx, ro_size - 4), ro_size - 4);
 		return 1;
 	}
 	res.roomoffs[type][idx] = 0xFFFFFFFF;

Index: verbs.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/verbs.cpp,v
retrieving revision 1.125
retrieving revision 1.126
diff -u -d -r1.125 -r1.126
--- verbs.cpp	1 Apr 2005 01:41:20 -0000	1.125
+++ verbs.cpp	6 Apr 2005 17:31:35 -0000	1.126
@@ -633,7 +633,7 @@
 			if (_objs[i].obj_nr == object) {
 				findObjectInRoom(&foir, foImageHeader, object, room);
 				size = READ_LE_UINT16(foir.obim);
-				byte *ptr = createResource(rtVerb, verb, size + 2);
+				byte *ptr = res.createResource(rtVerb, verb, size + 2);
 				obcdptr = getResourceAddress(rtRoom, room) + getOBCDOffs(object);
 				ptr[0] = *(obcdptr + 9);	// Width
 				ptr[1] = *(obcdptr + 15);	// Height
@@ -652,7 +652,7 @@
 				size = READ_LE_UINT32(foir.obim);
 				obcdptr = getResourceAddress(rtRoom, room) + getOBCDOffs(object);
 				size2 = READ_LE_UINT32(obcdptr);
-				createResource(rtVerb, verb, size + size2);
+				res.createResource(rtVerb, verb, size + size2);
 				obimptr = getResourceAddress(rtRoom, room) - foir.roomptr + foir.obim;
 				obcdptr = getResourceAddress(rtRoom, room) + getOBCDOffs(object);
 				memcpy(getResourceAddress(rtVerb, verb), obimptr, size);
@@ -663,7 +663,7 @@
 	} else {
 		findObjectInRoom(&foir, foImageHeader, object, room);
 		size = READ_BE_UINT32(foir.obim + 4);
-		createResource(rtVerb, verb, size);
+		res.createResource(rtVerb, verb, size);
 		obimptr = getResourceAddress(rtRoom, room) - foir.roomptr + foir.obim;
 		memcpy(getResourceAddress(rtVerb, verb), obimptr, size);
 	}

Index: wiz_he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/wiz_he.cpp,v
retrieving revision 2.39
retrieving revision 2.40
diff -u -d -r2.39 -r2.40
--- wiz_he.cpp	5 Apr 2005 15:21:18 -0000	2.39
+++ wiz_he.cpp	6 Apr 2005 17:31:35 -0000	2.40
@@ -810,7 +810,7 @@
 		dataSize = (dataSize + 1) & ~1;
 		int wizSize = headerSize + dataSize;
 		// write header
-		uint8 *wizImg = createResource(rtImage, resNum, dataSize + headerSize);
+		uint8 *wizImg = res.createResource(rtImage, resNum, dataSize + headerSize);
 		*(uint32 *)(wizImg + 0x00) = MKID('AWIZ');
 		*(uint32 *)(wizImg + 0x04) = TO_BE_32(wizSize);
 		*(uint32 *)(wizImg + 0x08) = MKID('WIZH');
@@ -1374,7 +1374,7 @@
 	}
 	res_size += 8 + img_w * img_h;
 	
-	uint8 *res_data = createResource(rtImage, params->img.resNum, res_size);
+	uint8 *res_data = res.createResource(rtImage, params->img.resNum, res_size);
 	if (!res_data) {
 		VAR(119) = -1;
 	} else {
@@ -1478,7 +1478,7 @@
 				} else {
 					uint32 size = f.readUint32BE();
 					f.seek(0, SEEK_SET);
-					byte *p = createResource(rtImage, params->img.resNum, size);
+					byte *p = res.createResource(rtImage, params->img.resNum, size);
 					if (f.read(p, size) != size) {
 						res.nukeResource(rtImage, params->img.resNum);
 						warning("i/o error when reading '%s'", params->filename);





More information about the Scummvm-git-logs mailing list