aboutsummaryrefslogtreecommitdiff
path: root/engines/simon/res.cpp
diff options
context:
space:
mode:
authorTravis Howell2006-03-22 06:21:17 +0000
committerTravis Howell2006-03-22 06:21:17 +0000
commit5a8a32e350763639d9256b8d90bc4facc3ea72be (patch)
treeb9f6cd23d66433d462ab68f73befd3f21474dec1 /engines/simon/res.cpp
parente0cf2743c9b211142cee27fc58459f18985db514 (diff)
downloadscummvm-rg350-5a8a32e350763639d9256b8d90bc4facc3ea72be.tar.gz
scummvm-rg350-5a8a32e350763639d9256b8d90bc4facc3ea72be.tar.bz2
scummvm-rg350-5a8a32e350763639d9256b8d90bc4facc3ea72be.zip
Add initial support for Amiga and Macintosh versions of The Feeble Files
svn-id: r21399
Diffstat (limited to 'engines/simon/res.cpp')
-rw-r--r--engines/simon/res.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/engines/simon/res.cpp b/engines/simon/res.cpp
index 0be063c065..e19a510138 100644
--- a/engines/simon/res.cpp
+++ b/engines/simon/res.cpp
@@ -128,6 +128,25 @@ uint16 SimonEngine::readUint16Wrapper(const void *src) {
return READ_BE_UINT16(src);
}
+void SimonEngine::loadOffsets(const char *filename, int number, uint32 &file, uint32 &offset, uint32 &srcSize, uint32 &dstSize) {
+ Common::File in;
+
+ int offsSize = (getPlatform() == Common::kPlatformAmiga) ? 16 : 12;
+
+ /* read offsets from index */
+ in.open(filename);
+ if (in.isOpen() == false) {
+ error("Can't open index file '%s'", filename);
+ }
+
+ in.seek(number * offsSize, SEEK_SET);
+ offset = in.readUint32LE();
+ dstSize = in.readUint32LE();
+ srcSize = in.readUint32LE();
+ file = in.readUint32LE();
+ in.close();
+}
+
void SimonEngine::loadGamePcFile(const char *filename) {
Common::File in;
int num_inited_objects;