[Scummvm-cvs-logs] SF.net SVN: scummvm: [27749] tools/trunk
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Thu Jun 28 05:07:41 CEST 2007
Revision: 27749
http://scummvm.svn.sourceforge.net/scummvm/?rev=27749&view=rev
Author: thebluegr
Date: 2007-06-27 20:07:41 -0700 (Wed, 27 Jun 2007)
Log Message:
-----------
Rewrote compress_saga. Now, it is self-contained like the other compression tools, and it no longer needs sagagame.cpp, sagagame.h or sagaresnames.h. The list of known files that can be compressed is included in compress_saga.cpp, as it should be, with a much simpler and easier to understand format, so it's now possible to sync the compression tool with the file detector in the SAGA engine much more efficiently
Modified Paths:
--------------
tools/trunk/compress_saga.cpp
Removed Paths:
-------------
tools/trunk/sagagame.cpp
tools/trunk/sagagame.h
tools/trunk/sagaresnames.h
Modified: tools/trunk/compress_saga.cpp
===================================================================
--- tools/trunk/compress_saga.cpp 2007-06-27 16:38:05 UTC (rev 27748)
+++ tools/trunk/compress_saga.cpp 2007-06-28 03:07:41 UTC (rev 27749)
@@ -22,7 +22,6 @@
*
*/
-#include <stdio.h>
#include "compress.h"
#include "utils/md5.h"
#include "utils/util.h"
@@ -30,13 +29,115 @@
#include "utils/file.h"
#include "utils/voc.h"
#include "utils/wave.h"
-#include "utils/adpcm.h"
+#define FILE_MD5_BYTES 5000
+#define RSC_TABLEINFO_SIZE 8
+#define RSC_TABLEENTRY_SIZE 8
+#define HEADER_SIZE 9
-#include "sagagame.h"
-#include "sagaresnames.h"
-#include "sagagame.cpp"
+enum GameSoundTypes {
+ kSoundPCM = 0,
+ kSoundVOC = 1,
+ kSoundWAV = 2
+};
+struct GameFileDescription {
+ const char *fileName;
+ bool swapEndian;
+ const char *md5;
+ GameSoundTypes resourceType;
+ long frequency;
+ bool stereo;
+};
+
+// Known ITE files
+static GameFileDescription ITE_GameFiles[] = {
+ // Filename swapEndian md5 resourceType frequency stereo
+ {"sounds.rsc", false, "e2ccb61c325d6d1ead3be0e731fe29fe", kSoundPCM, 22050, false},
+ {"sounds.rsc", true, "95863b89a0916941f6c5e1789843ba14", kSoundPCM, 22050, false}, // Mac
+ {"music.rsc", false, "d6454756517f042f01210458abe8edd4", kSoundPCM, 11025, true},
+ {"music.rsc", true, "1a91cd60169f367ecb6c6e058d899b2f", kSoundPCM, 11025, true}, // Mac
+ {"inherit the earth voices", true, "c14c4c995e7a0d3828e3812a494301b7", kSoundPCM, 22050, false}, // Mac
+ {"voices.rsc", false, "41bb6b95d792dde5196bdb78740895a6", kSoundPCM, 22050, false}, // CD
+ {"voices.rsc", false, "2fbad5d10b9b60a3415dc4aebbb11718", kSoundPCM, 22050, false}, // German CD
+ {"voices.rsc", false, "c46e4392fcd2e89bc91e5567db33b62d", kSoundVOC, -1, false}, // Disk
+ {"voices.rsc", false, "0c9113e630f97ef0996b8c3114badb08", kSoundVOC, -1, false} // German disk
+};
+
+// Known IHNM files
+static GameFileDescription IHNM_GameFiles[] = {
+ // Filename swapEndian md5 resourceType frequency stereo
+ // Common
+ {"sfx.res", false, "1c610d543f32ec8b525e3f652536f269", kSoundWAV, -1, false},
+ // English
+ {"voicess.res", false, "54b1f2013a075338ceb0e258d97808bd", kSoundWAV, -1, false},
+ {"voices1.res", false, "fc6440b38025f4b2cc3ff55c3da5c3eb", kSoundWAV, -1, false},
+ {"voices2.res", false, "b37f10fd1696ade7d58704ccaaebceeb", kSoundWAV, -1, false},
+ {"voices3.res", false, "3bbc16a8f741dbb511da506c660a0b54", kSoundWAV, -1, false},
+ {"voices4.res", false, "ebfa160122d2247a676ca39920e5d481", kSoundWAV, -1, false},
+ {"voices5.res", false, "1f501ce4b72392bdd1d9ec38f6eec6da", kSoundWAV, -1, false},
+ {"voices6.res", false, "f580ed7568c7d6ef34e934ba20adf834", kSoundWAV, -1, false},
+ // Spanish
+ {"voicess.res", false, "d869de9883c8faea7f687217a9ec7057", kSoundWAV, -1, false},
+ {"voices1.res", false, "dc6a34e3d1668730ea46815a92c7847f", kSoundWAV, -1, false},
+ {"voices2.res", false, "dc6a5fa7a4cdc2ca5a6fd924e969986c", kSoundWAV, -1, false},
+ {"voices3.res", false, "dc6a5fa7a4cdc2ca5a6fd924e969986c", kSoundWAV, -1, false},
+ {"voices4.res", false, "0f87400b804232a58dd22e404420cc45", kSoundWAV, -1, false},
+ {"voices5.res", false, "172668cfc5d8c305cb5b1a9b4d995fc0", kSoundWAV, -1, false},
+ {"voices6.res", false, "96c9bda9a5f41d6bc232ed7bf6d371d9", kSoundWAV, -1, false},
+ // Russian
+ {"voicess.res", false, "9df7cd3b18ddaa16b5291b3432567036", kSoundWAV, -1, false},
+ {"voices1.res", false, "d6100d2dc3b2b9f2e1ad247f613dce9b", kSoundWAV, -1, false},
+ {"voices2.res", false, "84f6f48ecc2832841ea6417a9a379430", kSoundWAV, -1, false},
+ {"voices3.res", false, "ebb9501283047f27a0f54e27b3c8ba1e", kSoundWAV, -1, false},
+ {"voices4.res", false, "4c145da5fa6d1306162a7ca8ce5a4f2e", kSoundWAV, -1, false},
+ {"voices5.res", false, "871a559644281917677eca4af1b05620", kSoundWAV, -1, false},
+ {"voices6.res", false, "211be5c24f066d69a2f6cfa953acfba6", kSoundWAV, -1, false},
+ // German
+ {"voicess.res", false, "8b09a196a52627cacb4eab13bfe0b2c3", kSoundWAV, -1, false},
+ {"voices1.res", false, "424971e1e2373187c3f5734fe36071a2", kSoundWAV, -1, false},
+ {"voices2.res", false, "c270e0980782af43641a86e4a14e2a32", kSoundWAV, -1, false},
+ {"voices3.res", false, "49e42befea883fd101ec3d0f5d0647b9", kSoundWAV, -1, false},
+ {"voices5.res", false, "c477443c52a0aa56e686ebd8d051e4ab", kSoundWAV, -1, false},
+ {"voices6.res", false, "2b9aea838f74b4eecfb29a8f205a2bd4", kSoundWAV, -1, false},
+ // French
+ {"voicess.res", false, "b8642e943bbebf89cef2f48b31cb4305", kSoundWAV, -1, false},
+ {"voices1.res", false, "424971e1e2373187c3f5734fe36071a2", kSoundWAV, -1, false},
+ {"voices2.res", false, "c2d93a35d2c2def9c3d6d242576c794b", kSoundWAV, -1, false},
+ {"voices3.res", false, "49e42befea883fd101ec3d0f5d0647b9", kSoundWAV, -1, false},
+ {"voices5.res", false, "f4c415de7c03de86b73f9a12b8bd632f", kSoundWAV, -1, false},
+ {"voices6.res", false, "3fc5358a5d8eee43bdfab2740276572e", kSoundWAV, -1, false}
+};
+
+// --------------------------------------------------------------------------------
+
+enum SAGAGameType {
+ GType_ITE = 0,
+ GType_IHNM = 1
+};
+
+struct GameDescription {
+ SAGAGameType gameType;
+ int filesCount;
+ GameFileDescription *filesDescriptions;
+};
+
+static GameDescription gameDescriptions[] = {
+ // Inherit the earth
+ {
+ GType_ITE,
+ ARRAYSIZE(ITE_GameFiles),
+ ITE_GameFiles,
+ },
+
+ // I Have No Mouth And I Must Scream
+ {
+ GType_IHNM,
+ ARRAYSIZE(IHNM_GameFiles),
+ IHNM_GameFiles,
+ },
+};
+
typedef struct {
uint32 offset;
uint32 size;
@@ -45,9 +146,15 @@
static CompressMode gCompMode = kMP3Mode;
GameDescription *currentGameDescription = NULL;
-int currentFileIndex = -1;
-bool isBigEndian = false;
+GameFileDescription *currentFileDescription = NULL;
+uint16 sampleRate;
+uint32 sampleSize;
+uint8 sampleBits;
+uint8 sampleStereo;
+
+// --------------------------------------------------------------------------------
+
bool detectFile(const char *inFileName) {
int gamesCount = ARRAYSIZE(gameDescriptions);
int j,i;
@@ -64,13 +171,14 @@
for (i = 0; i < gamesCount; i++) {
for (j = 0; j < gameDescriptions[i].filesCount; j++) {
if (strcmp(gameDescriptions[i].filesDescriptions[j].md5, md5str) == 0) {
- if ((gameDescriptions[i].filesDescriptions[j].fileType & (GAME_VOICEFILE | GAME_SOUNDFILE | GAME_MUSICFILE)) != 0)
- {
- currentGameDescription = &gameDescriptions[i];
- currentFileIndex = j;
- printf("Matched game: %s %s\n", currentGameDescription->name, currentGameDescription->extra);
- return true;
- }
+ currentGameDescription = &gameDescriptions[i];
+ currentFileDescription = ¤tGameDescription->filesDescriptions[j];
+
+ if (currentGameDescription->gameType == GType_ITE)
+ printf("Matched game: Inherit the Earth: Quest for the Orb\n");
+ else
+ printf("Matched game: I have no mouth, and I must scream\n");
+ return true;
}
}
}
@@ -124,13 +232,6 @@
fclose(tempf);
}
-#define HEADER_SIZE 9
-
-uint16 sampleRate;
-uint32 sampleSize;
-uint8 sampleBits;
-uint8 sampleStereo;
-
void writeHeader(FILE* outputFile) {
writeByte(outputFile, gCompMode);
writeUint16LE(outputFile, sampleRate);
@@ -138,54 +239,13 @@
writeByte(outputFile, sampleBits);
writeByte(outputFile, sampleStereo);
}
-/*
-case kSoundVOX:
- buffer.frequency = soundInfo->frequency;
- buffer.isSigned = soundInfo->isSigned;
- buffer.sampleBits = soundInfo->sampleBits;
- buffer.stereo = soundInfo->stereo;
- buffer.size = soundResourceLength * 4;
- if (onlyHeader) {
- buffer.buffer = NULL;
- free(soundResource);
- } else {
- voxStream = Audio::makeADPCMStream(&readS, soundResourceLength, Audio::kADPCMOki);
- buffer.buffer = (byte *)malloc(buffer.size);
- voxSize = voxStream->readBuffer((int16*)buffer.buffer, soundResourceLength * 2);
- if (voxSize != soundResourceLength * 2) {
- error("SndRes::load() wrong VOX output size");
- }
- delete voxStream;
- }
- result = true;
- break;
-*/
-uint32 encodeEntry(GameSoundInfo *soundInfo, FILE* inputFile, uint32 inputSize, FILE* outputFile) {
- Audio::AudioStream *inStream;
+uint32 encodeEntry(FILE* inputFile, uint32 inputSize, FILE* outputFile) {
uint8 *inputData;
Common::File inputFileStream(inputFile);
int rate, size;
byte flags;
- if (soundInfo->resourceType == kSoundVOX) {
- sampleSize = inputSize * 4;
- sampleRate = (uint16)soundInfo->frequency;
- sampleBits = soundInfo->sampleBits;
- sampleStereo = soundInfo->stereo;
- writeHeader(outputFile);
-
- inStream = Audio::makeADPCMStream(&inputFileStream, inputSize, Audio::kADPCMOki);
- inputData = (byte *)malloc(sampleSize);
- inStream->readBuffer((int16*)inputData, inputSize * 2);
- delete inStream;
- writeBufferToFile(inputData, sampleSize, TEMP_RAW);
- free(inputData);
-
- setRawAudioType( true, sampleStereo != 0, !soundInfo->isSigned, sampleBits);
- encodeAudio(TEMP_RAW, true, sampleRate, tempEncoded, gCompMode);
- return copyFile(tempEncoded, outputFile) + HEADER_SIZE;
- }
- if (soundInfo->resourceType == kSoundVOC) {
+ if (currentFileDescription->resourceType == kSoundVOC) {
inputData = Audio::loadVOCFromStream(inputFileStream, size, rate);
sampleSize = size;
sampleRate = rate;
@@ -195,23 +255,23 @@
free(inputData);
writeHeader(outputFile);
- setRawAudioType( true, false, !soundInfo->isSigned, 8);
+ setRawAudioType( true, false, false, 8);
encodeAudio(TEMP_RAW, true, sampleRate, tempEncoded, gCompMode);
return copyFile(tempEncoded, outputFile) + HEADER_SIZE;
}
- if (soundInfo->resourceType == kSoundPCM) {
+ if (currentFileDescription->resourceType == kSoundPCM) {
copyFile(inputFile, inputSize, TEMP_RAW);
sampleSize = inputSize;
- sampleRate = (uint16)soundInfo->frequency;
- sampleBits = soundInfo->sampleBits;
- sampleStereo = soundInfo->stereo;
+ sampleRate = (uint16)currentFileDescription->frequency;
+ sampleBits = 16;
+ sampleStereo = currentFileDescription->stereo;
writeHeader(outputFile);
- setRawAudioType( !soundInfo->isBigEndian, soundInfo->stereo, !soundInfo->isSigned, soundInfo->sampleBits);
- encodeAudio(TEMP_RAW, true, soundInfo->frequency, tempEncoded, gCompMode);
+ setRawAudioType( !currentFileDescription->swapEndian, currentFileDescription->stereo, false, sampleBits);
+ encodeAudio(TEMP_RAW, true, currentFileDescription->frequency, tempEncoded, gCompMode);
return copyFile(tempEncoded, outputFile) + HEADER_SIZE;
}
- if (soundInfo->resourceType == kSoundWAV) {
+ if (currentFileDescription->resourceType == kSoundWAV) {
if (!Audio::loadWAVFromStream(inputFileStream, size, rate, flags))
error("Unable to read WAV");
@@ -223,17 +283,14 @@
copyFile(inputFile, size, TEMP_RAW);
- setRawAudioType( true, sampleStereo != 0, !soundInfo->isSigned, sampleBits);
+ setRawAudioType( true, sampleStereo != 0, false, sampleBits);
encodeAudio(TEMP_RAW, true, sampleRate, tempEncoded, gCompMode);
return copyFile(tempEncoded, outputFile) + HEADER_SIZE;
}
- error("sorry - unsupported resourceType %ul\n", soundInfo->resourceType);
+ error("sorry - unsupported resourceType %ul\n", currentFileDescription->resourceType);
}
-#define RSC_TABLEINFO_SIZE 8
-#define RSC_TABLEENTRY_SIZE 8
-
void sagaEncode(const char *inputFileName) {
char inputFileNameWithExt[256];
char outputFileNameWithExt[256];
@@ -246,17 +303,7 @@
Record *inputTable;
Record *outputTable;
- GameFileDescription *currentFileDescription;
- GameSoundInfo *soundInfo = NULL;
- currentFileDescription = ¤tGameDescription->filesDescriptions[currentFileIndex];
-
- isBigEndian = ((currentGameDescription->features & GF_BIG_ENDIAN_DATA) != 0);
-
- if (currentFileDescription->fileType & GAME_SWAPENDIAN)
- isBigEndian = !isBigEndian;
- ///isBigEndian = false;
-
sprintf(inputFileNameWithExt, "%s.rsc", inputFileName);
inputFile = fopen(inputFileNameWithExt, "rb");
inputFileSize = fileSize(inputFile);
@@ -268,7 +315,7 @@
*/
fseek(inputFile, inputFileSize - RSC_TABLEINFO_SIZE, SEEK_SET);
- if (!isBigEndian) {
+ if (!currentFileDescription->swapEndian) {
resTableOffset = readUint32LE(inputFile);
resTableCount = readUint32LE(inputFile);
} else {
@@ -289,7 +336,7 @@
// Put offsets of all the records in a table
for (i = 0; i < resTableCount; i++) {
- if (!isBigEndian) {
+ if (!currentFileDescription->swapEndian) {
inputTable[i].offset = readUint32LE(inputFile);
inputTable[i].size = readUint32LE(inputFile);
} else {
@@ -314,19 +361,7 @@
fseek(inputFile, inputTable[i].offset, SEEK_SET);
outputTable[i].offset = ftell(outputFile);
- if ((currentFileDescription->fileType & GAME_VOICEFILE) != 0) {
- soundInfo = currentGameDescription->voiceInfo;
- } else {
- if ((currentFileDescription->fileType & GAME_SOUNDFILE) != 0) {
- soundInfo = currentGameDescription->sfxInfo;
- } else {
- if ((currentFileDescription->fileType & GAME_MUSICFILE) != 0) {
- soundInfo = currentGameDescription->musicInfo;
- }
- }
- }
-
- outputTable[i].size = encodeEntry(soundInfo, inputFile, inputTable[i].size, outputFile);
+ outputTable[i].size = encodeEntry(inputFile, inputTable[i].size, outputFile);
}
fclose(inputFile);
@@ -429,9 +464,16 @@
i = argc - 1;
inputFileName = argv[i];
+ // ITE
sprintf(inputFileNameWithExt, "%s.rsc", inputFileName);
- if (detectFile(inputFileNameWithExt))
+ if (detectFile(inputFileNameWithExt)) {
sagaEncode(inputFileName);
+ } else {
+ // IHNM
+ sprintf(inputFileNameWithExt, "%s.res", inputFileName);
+ if (detectFile(inputFileNameWithExt))
+ sagaEncode(inputFileName);
+ }
return (0);
}
Deleted: tools/trunk/sagagame.cpp
===================================================================
--- tools/trunk/sagagame.cpp 2007-06-27 16:38:05 UTC (rev 27748)
+++ tools/trunk/sagagame.cpp 2007-06-28 03:07:41 UTC (rev 27749)
@@ -1,1414 +0,0 @@
-#define ITE_CONVERSE_MAX_TEXT_WIDTH (256 - 60)
-#define ITE_CONVERSE_TEXT_HEIGHT 10
-#define ITE_CONVERSE_TEXT_LINES 4
-
-//TODO: ihnm
-#define IHNM_CONVERSE_MAX_TEXT_WIDTH (256 - 60)
-#define IHNM_CONVERSE_TEXT_HEIGHT 10
-#define IHNM_CONVERSE_TEXT_LINES 10
-
-// ITE section
-static PanelButton ITE_MainPanelButtons[] = {
- {kPanelButtonVerb, 52,4, 57,10, kVerbITEWalkTo,'w',0, 0,1,0},
- {kPanelButtonVerb, 52,15, 57,10, kVerbITELookAt,'l',0, 2,3,0},
- {kPanelButtonVerb, 52,26, 57,10, kVerbITEPickUp,'p',0, 4,5,0},
- {kPanelButtonVerb, 52,37, 57,10, kVerbITETalkTo,'t',0, 0,1,0},
- {kPanelButtonVerb, 110,4, 56,10, kVerbITEOpen,'o',0, 6,7,0},
- {kPanelButtonVerb, 110,15, 56,10, kVerbITEClose,'c',0, 8,9,0},
- {kPanelButtonVerb, 110,26, 56,10, kVerbITEUse,'u',0, 10,11,0},
- {kPanelButtonVerb, 110,37, 56,10, kVerbITEGive,'g',0, 12,13,0},
- {kPanelButtonArrow, 306,6, 8,5, -1,'U',0, 0,4,2},
- {kPanelButtonArrow, 306,41, 8,5, 1,'D',0, 1,5,3},
-
- {kPanelButtonInventory, 181 + 32*0,6, 27,18, 0,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*1,6, 27,18, 1,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*2,6, 27,18, 2,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*3,6, 27,18, 3,'-',0, 0,0,0},
-
- {kPanelButtonInventory, 181 + 32*0,27, 27,18, 4,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*1,27, 27,18, 5,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*2,27, 27,18, 6,'-',0, 0,0,0},
- {kPanelButtonInventory, 181 + 32*3,27, 27,18, 7,'-',0, 0,0,0}
-};
-
-static PanelButton ITE_ConversePanelButtons[] = {
- {kPanelButtonConverseText, 52,6 + ITE_CONVERSE_TEXT_HEIGHT * 0, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT, 0,'1',0, 0,0,0},
- {kPanelButtonConverseText, 52,6 + ITE_CONVERSE_TEXT_HEIGHT * 1, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT, 1,'2',0, 0,0,0},
- {kPanelButtonConverseText, 52,6 + ITE_CONVERSE_TEXT_HEIGHT * 2, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT, 2,'3',0, 0,0,0},
- {kPanelButtonConverseText, 52,6 + ITE_CONVERSE_TEXT_HEIGHT * 3, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT, 3,'4',0, 0,0,0},
- {kPanelButtonArrow, 257,6, 9,6, -1,'u',0, 0,4,2},
- {kPanelButtonArrow, 257,41, 9,6, 1,'d',0, 1,5,3},
-};
-
-static PanelButton ITE_OptionPanelButtons[] = {
- {kPanelButtonOptionSlider, 284,19, 13,75, 0,'-',0, 0,0,0}, //slider-scroller
- {kPanelButtonOption, 113,18, 45,17, kTextReadingSpeed,'r',0, 0,0,0}, //read speed
- {kPanelButtonOption, 113,37, 45,17, kTextMusic,'m',0, 0,0,0}, //music
- {kPanelButtonOption, 113,56, 45,17, kTextSound,'n',0, 0,0,0}, //sound-noise
- {kPanelButtonOption, 13,79, 135,17, kTextQuitGame,'q',0, 0,0,0}, //quit
- {kPanelButtonOption, 13,98, 135,17, kTextContinuePlaying,'c',0, 0,0,0}, //continue
- {kPanelButtonOption, 164,98, 57,17, kTextLoad,'l',0, 0,0,0}, //load
- {kPanelButtonOption, 241,98, 57,17, kTextSave,'s',0, 0,0,0}, //save
- {kPanelButtonOptionSaveFiles, 166,20, 112,74, 0,'-',0, 0,0,0}, //savefiles
-
- {kPanelButtonOptionText,106,4, 0,0, kTextGameOptions,'-',0, 0,0,0}, // text: game options
- {kPanelButtonOptionText,11,22, 0,0, kTextReadingSpeed,'-',0, 0,0,0}, // text: read speed
- {kPanelButtonOptionText,28,22, 0,0, kTextShowDialog,'-',0, 0,0,0}, // text: read speed
- {kPanelButtonOptionText,73,41, 0,0, kTextMusic,'-',0, 0,0,0}, // text: music
- {kPanelButtonOptionText,69,60, 0,0, kTextSound,'-',0, 0,0,0}, // text: noise
-};
-
-static PanelButton ITE_QuitPanelButtons[] = {
- {kPanelButtonQuit, 11,17, 60,16, kTextQuit,'q',0, 0,0,0},
- {kPanelButtonQuit, 121,17, 60,16, kTextCancel,'c',0, 0,0,0},
- {kPanelButtonQuitText, -1,5, 0,0, kTextQuitTheGameQuestion,'-',0, 0,0,0},
-};
-
-static PanelButton ITE_LoadPanelButtons[] = {
- {kPanelButtonLoad, 101,19, 60,16, kTextOK,'o',0, 0,0,0},
- {kPanelButtonLoadText, -1,5, 0,0, kTextLoadSuccessful,'-',0, 0,0,0},
-};
-
-static PanelButton ITE_SavePanelButtons[] = {
- {kPanelButtonSave, 11,37, 60,16, kTextSave,'s',0, 0,0,0},
- {kPanelButtonSave, 101,37, 60,16, kTextCancel,'c',0, 0,0,0},
- {kPanelButtonSaveEdit, 26,17, 119,17, 0,'-',0, 0,0,0},
- {kPanelButtonSaveText, -1,5, 0,0, kTextEnterSaveGameName,'-',0, 0,0,0},
-};
-
-static PanelButton ITE_ProtectPanelButtons[] = {
- {kPanelButtonProtectEdit, 26,17, 119,17, 0,'-',0, 0,0,0},
- {kPanelButtonProtectText, -1,5, 0,0, kTextEnterProtectAnswer,'-',0, 0,0,0},
-};
-
-/*
-static PanelButton ITE_ProtectionPanelButtons[] = {
- {kPanelButtonArrow, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
-};*/
-
-static GameDisplayInfo ITE_DisplayInfo = {
- 320, 200, // logical width&height
-
- 35, // scene path y offset
- 137, // scene height
-
- 0, // status x offset
- 137, // status y offset
- 320, // status width
- 11, // status height
- 2, // status text y offset
- 186, // status text color
- 15, // status BG color
- 308,137, // save reminder pos
- 12,12, // save reminder w & h
- 6,7, // save reminder sprite numbers
-
- 5, 4, // left portrait x, y offset
- 274, 4, // right portrait x, y offset
-
- 8, 9, // inventory Up & Down button indexies
- 2, 4, // inventory rows, columns
-
- 0, 148, // main panel offsets
- ARRAYSIZE(ITE_MainPanelButtons),
- ITE_MainPanelButtons,
-
- ITE_CONVERSE_MAX_TEXT_WIDTH,
- ITE_CONVERSE_TEXT_HEIGHT,
- ITE_CONVERSE_TEXT_LINES,
- 4, 5, // converse Up & Down button indexies
- 0, 148, // converse panel offsets
- ARRAYSIZE(ITE_ConversePanelButtons),
- ITE_ConversePanelButtons,
-
- 8, 0, // save file index
- 8, // optionSaveFileVisible
- 8, 8, // option panel offsets
- ARRAYSIZE(ITE_OptionPanelButtons),
- ITE_OptionPanelButtons,
-
- 64,54, // quit panel offsets
- 192,38, // quit panel width & height
- ARRAYSIZE(ITE_QuitPanelButtons),
- ITE_QuitPanelButtons,
-
- 74, 53, // load panel offsets
- 172, 40, // load panel width & height
- ARRAYSIZE(ITE_LoadPanelButtons),
- ITE_LoadPanelButtons,
-
- 2, // save edit index
- 74, 44, // save panel offsets
- 172, 58, // save panel width & height
- ARRAYSIZE(ITE_SavePanelButtons),
- ITE_SavePanelButtons,
-
- 0, // protect edit index
- 74, 44, // protect panel offsets
- 172, 58, // protect panel width & height
- ARRAYSIZE(ITE_ProtectPanelButtons),
- ITE_ProtectPanelButtons
-};
-
-static GameResourceDescription ITE_Resources = {
- RID_ITE_SCENE_LUT, // Scene lookup table RN
- RID_ITE_SCRIPT_LUT, // Script lookup table RN
- RID_ITE_MAIN_PANEL,
- RID_ITE_CONVERSE_PANEL,
- RID_ITE_OPTION_PANEL,
- RID_ITE_MAIN_SPRITES,
- RID_ITE_MAIN_PANEL_SPRITES,
- RID_ITE_DEFAULT_PORTRAITS,
- RID_ITE_MAIN_STRINGS,
- RID_ITE_ACTOR_NAMES
-};
-
-static GameResourceDescription ITEDemo_Resources = {
- RID_ITEDEMO_SCENE_LUT, // Scene lookup table RN
- RID_ITEDEMO_SCRIPT_LUT, // Script lookup table RN
- RID_ITEDEMO_MAIN_PANEL,
- RID_ITEDEMO_CONVERSE_PANEL,
- RID_ITEDEMO_OPTION_PANEL,
- RID_ITEDEMO_MAIN_SPRITES,
- RID_ITEDEMO_MAIN_PANEL_SPRITES,
- RID_ITEDEMO_DEFAULT_PORTRAITS,
- RID_ITEDEMO_MAIN_STRINGS,
- RID_ITEDEMO_ACTOR_NAMES
-};
-
-// Inherit the Earth - DOS Demo version
-static GameFileDescription ITE_DEMO_G_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "986c79c4d2939dbe555576529fd37932"},
- //{"ite.dmo", GAME_DEMOFILE}, "0b9a70eb4e120b6f00579b46c8cae29e"
- {"scripts.rsc", GAME_SCRIPTFILE, "d5697dd3240a3ceaddaa986c47e1a2d7"},
- {"voices.rsc", GAME_SOUNDFILE | GAME_VOICEFILE, "c58e67c506af4ffa03fd0aac2079deb0"}
-};
-
-static GameFontDescription ITEDEMO_GameFonts[] = {
- {0},
- {1}
-};
-
-static GameSoundInfo ITEDEMO_GameSound = {
- kSoundVOC,
- -1,
- -1,
- false,
- false,
- true
-};
-
-// Inherit the Earth - Wyrmkeep Win32 Demo version
-
-static GameFileDescription ITE_WINDEMO2_GameFiles[] = {
- {"ited.rsc", GAME_RESOURCEFILE, "3a450852cbf3c80773984d565647e6ac"},
- {"scriptsd.rsc", GAME_SCRIPTFILE, "3f12b67fa93e56e1a6be39d2921d80bb"},
- {"soundsd.rsc", GAME_SOUNDFILE, "95a6c148e22e99a8c243f2978223583c"},
- {"voicesd.rsc", GAME_VOICEFILE, "e139d86bab2ee8ba3157337f894a92d4"}
-};
-
-static GameFileDescription ITE_WINDEMO1_GameFiles[] = {
- {"ited.rsc", GAME_RESOURCEFILE, "3a450852cbf3c80773984d565647e6ac"},
- {"scriptsd.rsc", GAME_SCRIPTFILE, "3f12b67fa93e56e1a6be39d2921d80bb"},
- {"soundsd.rsc", GAME_SOUNDFILE, "a741139dd7365a13f463cd896ff9969a"},
- {"voicesd.rsc", GAME_VOICEFILE, "0759eaf5b64ae19fd429920a70151ad3"}
-};
-
-static GameFontDescription ITEWINDEMO_GameFonts[] = {
- {2},
- {0}
-};
-
-static GameSoundInfo ITEWINDEMO1_GameSound = {
- kSoundPCM,
- 22050,
- 8,
- false,
- false,
- false
-};
-
-static GameSoundInfo ITEWINDEMO2_GameVoice = {
- kSoundVOX,
- 22050,
- 16,
- false,
- false,
- true
-};
-
-static GameSoundInfo ITEWINDEMO2_GameSound = {
- kSoundPCM,
- 22050,
- 16,
- false,
- false,
- true
-};
-
-// Inherit the Earth - Wyrmkeep Mac Demo version
-static GameFileDescription ITE_MACDEMO2_GameFiles[] = {
- {"ited.rsc", GAME_RESOURCEFILE, "addfc9d82bc2fa1f4cab23743c652c08"},
- {"scriptsd.rsc", GAME_SCRIPTFILE, "fded5c59b8b7c5976229f960d21e6b0b"},
- {"soundsd.rsc", GAME_SOUNDFILE, "b3a831fbed337d1f1300fee1dd474f6c"},
- {"voicesd.rsc", GAME_VOICEFILE, "e139d86bab2ee8ba3157337f894a92d4"},
- {"musicd.rsc", GAME_MUSICFILE, "495bdde51fd9f4bea2b9c911091b1ab2"}
-};
-
-static GameFileDescription ITE_MACDEMO1_GameFiles[] = {
- {"ited.rsc", GAME_RESOURCEFILE, "addfc9d82bc2fa1f4cab23743c652c08"},
- {"scriptsd.rsc", GAME_SCRIPTFILE, "fded5c59b8b7c5976229f960d21e6b0b"},
- {"soundsd.rsc", GAME_SOUNDFILE, "b3a831fbed337d1f1300fee1dd474f6c"},
- {"voicesd.rsc", GAME_VOICEFILE, "e139d86bab2ee8ba3157337f894a92d4"},
- {"musicd.rsc", GAME_MUSICFILE, "1a91cd60169f367ecb6c6e058d899b2f"}
-};
-
-static GameSoundInfo ITEMACDEMO_GameVoice = {
- kSoundVOX,
- 22050,
- 16,
- false,
- false,
- true
-};
-
-static GameSoundInfo ITEMACDEMO_GameSound = {
- kSoundPCM,
- 22050,
- 16,
- false,
- true,
- true
-};
-
-static GameSoundInfo ITEMACDEMO_GameMusic = {
- kSoundPCM,
- 11025,
- 16,
- false,
- false,
- true
-};
-
-// Inherit the Earth - Wyrmkeep Linux Demo version
-static GameFileDescription ITE_LINDEMO_GameFiles[] = {
- {"ited.rsc", GAME_RESOURCEFILE, "3a450852cbf3c80773984d565647e6ac"},
- {"scriptsd.rsc", GAME_SCRIPTFILE, "3f12b67fa93e56e1a6be39d2921d80bb"},
- {"soundsd.rsc", GAME_SOUNDFILE, "95a6c148e22e99a8c243f2978223583c"},
- {"voicesd.rsc", GAME_VOICEFILE, "e139d86bab2ee8ba3157337f894a92d4"},
- {"musicd.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-static GameSoundInfo ITELINDEMO_GameMusic = {
- kSoundPCM,
- 11025,
- 16,
- true,
- false,
- true
-};
-
-// Inherit the Earth - Wyrmkeep Linux version
-
-static GameFileDescription ITE_LINCD_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "41bb6b95d792dde5196bdb78740895a6"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-// Inherit the Earth - Wyrmkeep combined Windows/Mac/Linux version. This
-// version is different from the other Wyrmkeep re-releases in that it does
-// not have any substitute files. Presumably the ite.rsc file has been
-// modified to include the Wyrmkeep changes. The resource files are little-
-// endian, except for the voice file which is big-endian.
-
-static GameFileDescription ITE_MULTICD_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "a6433e34b97b15e64fe8214651012db9"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"inherit the earth voices", GAME_VOICEFILE | GAME_SWAPENDIAN, "c14c4c995e7a0d3828e3812a494301b7"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-static GameFileDescription ITE_MACCD_G_GameFiles[] = {
- {"ite resources.bin", GAME_RESOURCEFILE | GAME_MACBINARY, "0bd506aa887bfc7965f695c6bd28237d"},
- {"ite scripts.bin", GAME_SCRIPTFILE | GAME_MACBINARY, "af0d7a2588e09ad3ecbc5b474ea238bf"},
- {"ite sounds.bin", GAME_SOUNDFILE | GAME_MACBINARY, "441426c6bb2a517f65c7e49b57f7a345"},
- {"ite music.bin", GAME_MUSICFILE_GM | GAME_MACBINARY, "c1d20324b7cdf1650e67061b8a93251c"},
- {"ite voices.bin", GAME_VOICEFILE | GAME_MACBINARY, "dba92ae7d57e942250fe135609708369"}
-};
-
-static GameSoundInfo ITEMACCD_G_GameSound = {
- kSoundMacPCM,
- 22050,
- 8,
- false,
- false,
- false
-};
-
-// Inherit the Earth - Mac Wyrmkeep version
-static GameFileDescription ITE_MACCD_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "4f7fa11c5175980ed593392838523060"},
- {"scripts.rsc", GAME_SCRIPTFILE, "adf1f46c1d0589083996a7060c798ad0"},
- {"sounds.rsc", GAME_SOUNDFILE, "95863b89a0916941f6c5e1789843ba14"},
- {"inherit the earth voices", GAME_VOICEFILE, "c14c4c995e7a0d3828e3812a494301b7"},
- {"music.rsc", GAME_MUSICFILE, "1a91cd60169f367ecb6c6e058d899b2f"}
-};
-
-static GameSoundInfo ITEMACCD_GameSound = {
- kSoundPCM,
- 22050,
- 16,
- false,
- true,
- true
-};
-
-static GameSoundInfo ITEMACCD_GameMusic = {
- kSoundPCM,
- 11025,
- 16,
- true,
- false,
- true
-};
-
-// Inherit the Earth - Diskette version
-static GameFileDescription ITE_DISK_DE_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "869fc23c8f38f575979ec67152914fee"},
- {"scripts.rsc", GAME_SCRIPTFILE, "516f7330f8410057b834424ea719d1ef"},
- {"voices.rsc", GAME_SOUNDFILE | GAME_VOICEFILE, "0c9113e630f97ef0996b8c3114badb08"}
-};
-
-static GameFileDescription ITE_DISK_G_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "516f7330f8410057b834424ea719d1ef"},
- {"voices.rsc", GAME_SOUNDFILE | GAME_VOICEFILE, "c46e4392fcd2e89bc91e5567db33b62d"}
-};
-
-static GameFileDescription ITE_DISK_DE2_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "869fc23c8f38f575979ec67152914fee"},
- {"scripts.rsc", GAME_SCRIPTFILE, "516f7330f8410057b834424ea719d1ef"},
- {"voices.rsc", GAME_SOUNDFILE | GAME_VOICEFILE, "0c9113e630f97ef0996b8c3114badb08"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-static GameFileDescription ITE_DISK_G2_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "516f7330f8410057b834424ea719d1ef"},
- {"voices.rsc", GAME_SOUNDFILE | GAME_VOICEFILE, "c46e4392fcd2e89bc91e5567db33b62d"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-static GameFontDescription ITEDISK_GameFonts[] = {
- {2},
- {0},
- {1}
-};
-
-static GameSoundInfo ITEDISK_GameSound = {
- kSoundVOC,
- -1,
- -1,
- false,
- false,
- true
-};
-
-// Inherit the Earth - CD Enhanced version
-static GameFileDescription ITE_WINCD_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "41bb6b95d792dde5196bdb78740895a6"}
-};
-
-static GameFileDescription ITE_CD_G_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "50a0d2d7003c926a3832d503c8534e90"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "41bb6b95d792dde5196bdb78740895a6"}
-};
-
-// reported by mld. Bestsellergamers cover disk
-static GameFileDescription ITE_CD_DE_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "869fc23c8f38f575979ec67152914fee"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "2fbad5d10b9b60a3415dc4aebbb11718"}
-};
-
-static GameFileDescription ITE_CD_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "41bb6b95d792dde5196bdb78740895a6"}
-};
-
-
-static GameFileDescription ITE_CD_G2_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "8f4315a9bb10ec839253108a032c8b54"},
- {"scripts.rsc", GAME_SCRIPTFILE, "50a0d2d7003c926a3832d503c8534e90"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "41bb6b95d792dde5196bdb78740895a6"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-static GameFileDescription ITE_CD_DE2_GameFiles[] = {
- {"ite.rsc", GAME_RESOURCEFILE, "869fc23c8f38f575979ec67152914fee"},
- {"scripts.rsc", GAME_SCRIPTFILE, "a891405405edefc69c9d6c420c868b84"},
- {"sounds.rsc", GAME_SOUNDFILE, "e2ccb61c325d6d1ead3be0e731fe29fe"},
- {"voices.rsc", GAME_VOICEFILE, "2fbad5d10b9b60a3415dc4aebbb11718"},
- {"music.rsc", GAME_MUSICFILE, "d6454756517f042f01210458abe8edd4"}
-};
-
-
-static GameFontDescription ITECD_GameFonts[] = {
- {2},
- {0},
- {1}
-};
-
-static GameSoundInfo ITECD_GameSound = {
- kSoundPCM,
- 22050,
- 16,
- false,
- false,
- true
-};
-
-static GamePatchDescription ITEWinPatch1_Files[] = {
- { "cave.mid", GAME_RESOURCEFILE, 9, NULL},
- { "intro.mid", GAME_RESOURCEFILE, 10, NULL},
- { "fvillage.mid", GAME_RESOURCEFILE, 11, NULL},
- { "elkhall.mid", GAME_RESOURCEFILE, 12, NULL},
- { "mouse.mid", GAME_RESOURCEFILE, 13, NULL},
- { "darkclaw.mid", GAME_RESOURCEFILE, 14, NULL},
- { "birdchrp.mid", GAME_RESOURCEFILE, 15, NULL},
- { "orbtempl.mid", GAME_RESOURCEFILE, 16, NULL},
- { "spooky.mid", GAME_RESOURCEFILE, 17, NULL},
- { "catfest.mid", GAME_RESOURCEFILE, 18, NULL},
- { "elkfanfare.mid", GAME_RESOURCEFILE, 19, NULL},
- { "bcexpl.mid", GAME_RESOURCEFILE, 20, NULL},
- { "boargtnt.mid", GAME_RESOURCEFILE, 21, NULL},
- { "boarking.mid", GAME_RESOURCEFILE, 22, NULL},
- { "explorea.mid", GAME_RESOURCEFILE, 23, NULL},
- { "exploreb.mid", GAME_RESOURCEFILE, 24, NULL},
- { "explorec.mid", GAME_RESOURCEFILE, 25, NULL},
- { "sunstatm.mid", GAME_RESOURCEFILE, 26, NULL},
- { "nitstrlm.mid", GAME_RESOURCEFILE, 27, NULL},
- { "humruinm.mid", GAME_RESOURCEFILE, 28, NULL},
- { "damexplm.mid", GAME_RESOURCEFILE, 29, NULL},
- { "tychom.mid", GAME_RESOURCEFILE, 30, NULL},
- { "kitten.mid", GAME_RESOURCEFILE, 31, NULL},
- { "sweet.mid", GAME_RESOURCEFILE, 32, NULL},
- { "brutalmt.mid", GAME_RESOURCEFILE, 33, NULL},
- { "shiala.mid", GAME_RESOURCEFILE, 34, NULL},
-
- { "wyrm.pak", GAME_RESOURCEFILE, 1529, NULL},
- { "wyrm1.dlt", GAME_RESOURCEFILE, 1530, NULL},
- { "wyrm2.dlt", GAME_RESOURCEFILE, 1531, NULL},
- { "wyrm3.dlt", GAME_RESOURCEFILE, 1532, NULL},
- { "wyrm4.dlt", GAME_RESOURCEFILE, 1533, NULL},
- { "credit3n.dlt", GAME_RESOURCEFILE, 1796, NULL},
- { "credit4n.dlt", GAME_RESOURCEFILE, 1797, NULL},
- { "p2_a.voc", GAME_VOICEFILE, 4, NULL}
-};
-
-static GamePatchDescription ITEWinPatch2_Files[] = {
- { "cave.mid", GAME_RESOURCEFILE, 9, NULL},
- { "intro.mid", GAME_RESOURCEFILE, 10, NULL},
- { "fvillage.mid", GAME_RESOURCEFILE, 11, NULL},
- { "elkfanfare.mid", GAME_RESOURCEFILE, 19, NULL},
- { "bcexpl.mid", GAME_RESOURCEFILE, 20, NULL},
- { "boargtnt.mid", GAME_RESOURCEFILE, 21, NULL},
- { "explorea.mid", GAME_RESOURCEFILE, 23, NULL},
- { "sweet.mid", GAME_RESOURCEFILE, 32, NULL},
-
- { "wyrm.pak", GAME_RESOURCEFILE, 1529, NULL},
- { "wyrm1.dlt", GAME_RESOURCEFILE, 1530, NULL},
- { "wyrm2.dlt", GAME_RESOURCEFILE, 1531, NULL},
- { "wyrm3.dlt", GAME_RESOURCEFILE, 1532, NULL},
- { "p2_a.iaf", GAME_VOICEFILE, 4, &ITECD_GameSound}
-/* boarhall.bbm
- elkenter.bbm
- ferrets.bbm
- ratdoor.bbm
- sanctuar.bbm
- tycho.bbm*/
-};
-
-static GamePatchDescription ITEMacPatch_Files[] = {
- { "wyrm.pak", GAME_RESOURCEFILE, 1529, NULL},
- { "wyrm1.dlt", GAME_RESOURCEFILE, 1530, NULL},
- { "wyrm2.dlt", GAME_RESOURCEFILE, 1531, NULL},
- { "wyrm3.dlt", GAME_RESOURCEFILE, 1532, NULL},
- { "wyrm4.dlt", GAME_RESOURCEFILE, 1533, NULL},
- { "credit3m.dlt", GAME_RESOURCEFILE, 1796, NULL},
- { "credit4m.dlt", GAME_RESOURCEFILE, 1797, NULL},
- { "p2_a.iaf", GAME_VOICEFILE, 4, &ITEMACCD_GameSound}
-};
-
-static GamePatchDescription ITELinPatch_Files[] = {
- { "wyrm.pak", GAME_RESOURCEFILE, 1529, NULL},
- { "wyrm1.dlt", GAME_RESOURCEFILE, 1530, NULL},
- { "wyrm2.dlt", GAME_RESOURCEFILE, 1531, NULL},
- { "wyrm3.dlt", GAME_RESOURCEFILE, 1532, NULL},
- { "credit3n.dlt", GAME_RESOURCEFILE, 1796, NULL},
- { "credit4n.dlt", GAME_RESOURCEFILE, 1797, NULL},
- { "P2_A.iaf", GAME_VOICEFILE, 4, &ITECD_GameSound}
-};
-
-// IHNM section
-
-static PanelButton IHNM_MainPanelButtons[] = {
- {kPanelButtonVerb, 106,12, 114,30, kVerbIHNMWalk,'w',0, 0,1,0},
- {kPanelButtonVerb, 106,44, 114,30, kVerbIHNMLookAt,'l',0, 2,3,0},
- {kPanelButtonVerb, 106,76, 114,30, kVerbIHNMTake,'k',0, 4,5,0},
- {kPanelButtonVerb, 106,108, 114,30, kVerbIHNMUse,'u',0, 6,7,0},
- {kPanelButtonVerb, 223,12, 114,30, kVerbIHNMTalkTo,'t',0, 8,9,0},
- {kPanelButtonVerb, 223,44, 114,30, kVerbIHNMSwallow,'s',0, 10,11,0},
- {kPanelButtonVerb, 223,76, 114,30, kVerbIHNMGive,'g',0, 12,13,0},
- {kPanelButtonVerb, 223,108, 114,30, kVerbIHNMPush,'p',0, 14,15,0},
- {kPanelButtonArrow, 606,22, 20,25, -1,'[',0, 0,0,0}, //TODO: arrow Sprite Numbers
- {kPanelButtonArrow, 606,108, 20,25, 1,']',0, 0,0,0},
-
- {kPanelButtonInventory, 357 + 64*0,18, 54,54, 0,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*1,18, 54,54, 1,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*2,18, 54,54, 2,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*3,18, 54,54, 3,'-',0, 0,0,0},
-
- {kPanelButtonInventory, 357 + 64*0,80, 54,54, 4,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*1,80, 54,54, 5,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*2,80, 54,54, 6,'-',0, 0,0,0},
- {kPanelButtonInventory, 357 + 64*3,80, 54,54, 7,'-',0, 0,0,0}
-};
-
-static PanelButton IHNM_ConversePanelButtons[] = {
- {kPanelButtonConverseText, 117,18 + IHNM_CONVERSE_TEXT_HEIGHT * 0, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT, 0,'1',0, 0,0,0},
- {kPanelButtonConverseText, 52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 1, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT, 1,'2',0, 0,0,0},
- {kPanelButtonConverseText, 52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 2, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT, 2,'3',0, 0,0,0},
- {kPanelButtonConverseText, 52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 3, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT, 3,'4',0, 0,0,0},
- //.....
- {kPanelButtonArrow, 606,22, 20,25, -1,'[',0, 0,0,0}, //TODO: arrow Sprite Numbers
- {kPanelButtonArrow, 606,108, 20,25, 1,']',0, 0,0,0}
-};
-
-static PanelButton IHNM_OptionPanelButtons[] = {
- {kPanelButtonArrow, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
-};
-
-static PanelButton IHNM_QuitPanelButtons[] = {
- {kPanelButtonArrow, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
-};
-
-static PanelButton IHNM_LoadPanelButtons[] = {
- {kPanelButtonArrow, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
-};
-
-static PanelButton IHNM_SavePanelButtons[] = {
- {kPanelButtonArrow, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
-};
-
-
-static GameDisplayInfo IHNM_DisplayInfo = { //TODO: fill it all
- 640, 480, // logical width&height
-
- 0, // scene path y offset
- 304, // scene height
-
- 0, // status x offset
- 304, // status y offset
- 616, // status width
- 24, // status height
- 8, // status text y offset
- 253, // status text color
- 250, // status BG color
- 616, 303, // save reminder pos
- 24, 24, // save reminder w&h
- 0,1, // save reminder sprite numbers
-
- 11, 12, // left portrait x, y offset
- -1, -1, // right portrait x, y offset
-
- -1, -1, // inventory Up & Down button indexies
- 2, 4, // inventory rows, columns
-
- 0, 328, // main panel offsets
- ARRAYSIZE(IHNM_MainPanelButtons),
- IHNM_MainPanelButtons,
-
- -1, -1, // converse Up & Down button indexies
-
- IHNM_CONVERSE_MAX_TEXT_WIDTH,
- IHNM_CONVERSE_TEXT_HEIGHT,
- IHNM_CONVERSE_TEXT_LINES,
- 0, 328, // converse panel offsets
- ARRAYSIZE(IHNM_ConversePanelButtons),
- IHNM_ConversePanelButtons,
-
- -1, -1, // save file index
- 0, // optionSaveFileVisible
- 0, 0, // option panel offsets
- ARRAYSIZE(IHNM_OptionPanelButtons),
- IHNM_OptionPanelButtons,
-
- 0,0, // quit panel offsets
- 0,0, // quit panel width & height
- ARRAYSIZE(IHNM_QuitPanelButtons),
- IHNM_QuitPanelButtons,
-
- 0, 0, // load panel offsets
- 0, 0, // load panel width & height
- ARRAYSIZE(IHNM_LoadPanelButtons),
- IHNM_LoadPanelButtons,
-
- -1, // save edit index
- 0, 0, // save panel offsets
- 0, 0, // save panel width & height
- ARRAYSIZE(IHNM_SavePanelButtons),
- IHNM_SavePanelButtons,
-
- // No protection panel in IHNM
- -1, // protect edit index
- 0, 0, // protect panel offsets
- 0, 0, // protect panel width & height
- ARRAYSIZE(IHNM_SavePanelButtons),
- IHNM_SavePanelButtons
-};
-
-static GameResourceDescription IHNM_Resources = {
- RID_IHNM_SCENE_LUT, // Scene lookup table RN
- RID_IHNM_SCRIPT_LUT, // Script lookup table RN
- RID_IHNM_MAIN_PANEL,
- RID_IHNM_CONVERSE_PANEL,
- RID_IHNM_OPTION_PANEL,
- RID_IHNM_MAIN_SPRITES,
- RID_IHNM_MAIN_PANEL_SPRITES,
- 0,
- RID_IHNM_MAIN_STRINGS,
- 0
-};
-
-// I Have No Mouth and I Must Scream - Demo version
-static GameFileDescription IHNM_DEMO_GameFiles[] = {
- {"scream.res", GAME_RESOURCEFILE, "46bbdc65d164ba7e89836a0935eec8e6"},
- {"scripts.res", GAME_SCRIPTFILE, "9626bda8978094ff9b29198bc1ed5f9a"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicesd.res", GAME_VOICEFILE, "3bbc16a8f741dbb511da506c660a0b54"}
-};
-
-// I Have No Mouth and I Must Scream - Retail CD version
-
-static GameFileDescription IHNM_CD_GameFiles[] = {
- {"musicfm.res", GAME_MUSICFILE_FM, "0439083e3dfdc51b486071d45872ae52"},
- {"musicgm.res", GAME_MUSICFILE_GM, "80f875a1fb384160d1f4b27166eef583"},
- {"scream.res", GAME_RESOURCEFILE, "46bbdc65d164ba7e89836a0935eec8e6"},
- {"patch.re_", GAME_PATCHFILE | GAME_RESOURCEFILE, "58b79e61594779513c7f2d35509fa89e"},
- {"scripts.res", GAME_SCRIPTFILE, "be38bbc5a26be809dbf39f13befebd01"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicess.res", GAME_VOICEFILE, "54b1f2013a075338ceb0e258d97808bd"}, //order of voice bank file is important
- {"voices1.res", GAME_VOICEFILE, "fc6440b38025f4b2cc3ff55c3da5c3eb"},
- {"voices2.res", GAME_VOICEFILE, "b37f10fd1696ade7d58704ccaaebceeb"},
- {"voices3.res", GAME_VOICEFILE, "3bbc16a8f741dbb511da506c660a0b54"},
- {"voices4.res", GAME_VOICEFILE, "ebfa160122d2247a676ca39920e5d481"},
- {"voices5.res", GAME_VOICEFILE, "1f501ce4b72392bdd1d9ec38f6eec6da"},
- {"voices6.res", GAME_VOICEFILE, "f580ed7568c7d6ef34e934ba20adf834"}
-};
-
-static GameFileDescription IHNM_CD_ES_GameFiles[] = {
- {"musicfm.res", GAME_MUSICFILE_FM, "0439083e3dfdc51b486071d45872ae52"},
- {"musicgm.res", GAME_MUSICFILE_GM, "80f875a1fb384160d1f4b27166eef583"},
- {"scream.res", GAME_RESOURCEFILE, "c92370d400e6f2a3fc411c3729d09224"},
- {"patch.re_", GAME_PATCHFILE | GAME_RESOURCEFILE, "58b79e61594779513c7f2d35509fa89e"},
- {"scripts.res", GAME_SCRIPTFILE, "be38bbc5a26be809dbf39f13befebd01"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicess.res", GAME_VOICEFILE, "d869de9883c8faea7f687217a9ec7057"}, //order of voice bank file is important
- {"voices1.res", GAME_VOICEFILE, "dc6a34e3d1668730ea46815a92c7847f"},
- {"voices2.res", GAME_VOICEFILE, "dc6a5fa7a4cdc2ca5a6fd924e969986c"},
- {"voices3.res", GAME_VOICEFILE, "dc6a5fa7a4cdc2ca5a6fd924e969986c"},
- {"voices4.res", GAME_VOICEFILE, "0f87400b804232a58dd22e404420cc45"},
- {"voices5.res", GAME_VOICEFILE, "172668cfc5d8c305cb5b1a9b4d995fc0"},
- {"voices6.res", GAME_VOICEFILE, "96c9bda9a5f41d6bc232ed7bf6d371d9"}
-};
-
-static GameFileDescription IHNM_CD_RU_GameFiles[] = {
- {"musicfm.res", GAME_MUSICFILE_FM, "0439083e3dfdc51b486071d45872ae52"},
- {"musicgm.res", GAME_MUSICFILE_GM, "80f875a1fb384160d1f4b27166eef583"},
- {"scream.res", GAME_RESOURCEFILE, "46bbdc65d164ba7e89836a0935eec8e6"},
- {"patch.re_", GAME_PATCHFILE | GAME_RESOURCEFILE, "58b79e61594779513c7f2d35509fa89e"},
- {"scripts.res", GAME_SCRIPTFILE, "be38bbc5a26be809dbf39f13befebd01"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicess.res", GAME_VOICEFILE, "9df7cd3b18ddaa16b5291b3432567036"}, //order of voice bank file is important
- {"voices1.res", GAME_VOICEFILE, "d6100d2dc3b2b9f2e1ad247f613dce9b"},
- {"voices2.res", GAME_VOICEFILE, "84f6f48ecc2832841ea6417a9a379430"},
- {"voices3.res", GAME_VOICEFILE, "ebb9501283047f27a0f54e27b3c8ba1e"},
- {"voices4.res", GAME_VOICEFILE, "4c145da5fa6d1306162a7ca8ce5a4f2e"},
- {"voices5.res", GAME_VOICEFILE, "871a559644281917677eca4af1b05620"},
- {"voices6.res", GAME_VOICEFILE, "211be5c24f066d69a2f6cfa953acfba6"}
-};
-
-// I Have No Mouth and I Must Scream - Censored CD version (without Nimdok)
-
-// Reported by mld. German Retail
-static GameFileDescription IHNM_CD_DE_GameFiles[] = {
- {"musicfm.res", GAME_MUSICFILE_FM, "0439083e3dfdc51b486071d45872ae52"},
- {"musicgm.res", GAME_MUSICFILE_GM, "80f875a1fb384160d1f4b27166eef583"},
- {"scream.res", GAME_RESOURCEFILE, "c92370d400e6f2a3fc411c3729d09224"},
- {"scripts.res", GAME_SCRIPTFILE, "32aa01a89937520fe0ea513950117292"},
- {"patch.re_", GAME_PATCHFILE | GAME_RESOURCEFILE, "58b79e61594779513c7f2d35509fa89e"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicess.res", GAME_VOICEFILE, "8b09a196a52627cacb4eab13bfe0b2c3"}, //order of voice bank file is important
- {"voices1.res", GAME_VOICEFILE, "424971e1e2373187c3f5734fe36071a2"},
- {"voices2.res", GAME_VOICEFILE, "c270e0980782af43641a86e4a14e2a32"},
- {"voices3.res", GAME_VOICEFILE, "49e42befea883fd101ec3d0f5d0647b9"},
- {"voices5.res", GAME_VOICEFILE, "c477443c52a0aa56e686ebd8d051e4ab"},
- {"voices6.res", GAME_VOICEFILE, "2b9aea838f74b4eecfb29a8f205a2bd4"}
-};
-
-static GameFileDescription IHNM_CD_FR_GameFiles[] = {
- {"musicfm.res", GAME_MUSICFILE_FM, "0439083e3dfdc51b486071d45872ae52"},
- {"musicgm.res", GAME_MUSICFILE_GM, "80f875a1fb384160d1f4b27166eef583"},
- {"scream.res", GAME_RESOURCEFILE, "c92370d400e6f2a3fc411c3729d09224"},
- {"scripts.res", GAME_SCRIPTFILE, "32aa01a89937520fe0ea513950117292"},
- {"patch.re_", GAME_PATCHFILE | GAME_RESOURCEFILE, "58b79e61594779513c7f2d35509fa89e"},
- {"sfx.res", GAME_SOUNDFILE, "1c610d543f32ec8b525e3f652536f269"},
- {"voicess.res", GAME_VOICEFILE, "b8642e943bbebf89cef2f48b31cb4305"}, //order of voice bank file is important
- {"voices1.res", GAME_VOICEFILE, "424971e1e2373187c3f5734fe36071a2"},
- {"voices2.res", GAME_VOICEFILE, "c2d93a35d2c2def9c3d6d242576c794b"},
- {"voices3.res", GAME_VOICEFILE, "49e42befea883fd101ec3d0f5d0647b9"},
- {"voices5.res", GAME_VOICEFILE, "f4c415de7c03de86b73f9a12b8bd632f"},
- {"voices6.res", GAME_VOICEFILE, "3fc5358a5d8eee43bdfab2740276572e"}
-};
-
-static GameFontDescription IHNMDEMO_GameFonts[] = {
- {2},
- {3},
- {4}
-};
-
-static GameFontDescription IHNMCD_GameFonts[] = {
- {2},
- {3},
- {4},
- {5},
- {6}, // kIHNMFont8
- {7},
- {8} // kIHNMMainFont
-};
-
-static GameSoundInfo IHNM_GameSound = {
- kSoundWAV,
- -1,
- -1,
- false,
- false,
- true
-};
-
-#define FILE_MD5_BYTES 5000
-
-static GameDescription gameDescriptions[] = {
- // Inherit the earth - DOS Demo version
- // sound unchecked
- {
- "ite",
- GType_ITE,
- GID_ITE_DEMO_G, // Game id
- "Demo", // Game title
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE, // Starting scene number
- &ITEDemo_Resources,
- ARRAYSIZE(ITE_DEMO_G_GameFiles), // Game datafiles
- ITE_DEMO_G_GameFiles,
- ARRAYSIZE(ITEDEMO_GameFonts),
- ITEDEMO_GameFonts,
- &ITEDEMO_GameSound,
- &ITEDEMO_GameSound,
- NULL,
- 0,
- NULL,
- 0, // features
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - MAC Demo version
- {
- "ite",
- GType_ITE,
- GID_ITE_MACDEMO2,
- "Demo",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_MACDEMO2_GameFiles),
- ITE_MACDEMO2_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEMACDEMO_GameVoice,
- &ITEMACDEMO_GameSound,
- &ITEMACDEMO_GameMusic,
- ARRAYSIZE(ITEMacPatch_Files),
- ITEMacPatch_Files,
- GF_BIG_ENDIAN_DATA | GF_WYRMKEEP | GF_CD_FX | GF_SCENE_SUBSTITUTES,
- Common::EN_ANY,
- Common::kPlatformMacintosh,
- },
-
- // Inherit the earth - early MAC Demo version
- {
- "ite",
- GType_ITE,
- GID_ITE_MACDEMO1,
- "early Demo",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_MACDEMO1_GameFiles),
- ITE_MACDEMO1_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEMACDEMO_GameVoice,
- &ITEMACDEMO_GameSound,
- &ITEMACCD_GameMusic,
- ARRAYSIZE(ITEMacPatch_Files),
- ITEMacPatch_Files,
- GF_BIG_ENDIAN_DATA | GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformMacintosh,
- },
-
- // Inherit the earth - MAC CD Guild version
- {
- "ite",
- GType_ITE,
- GID_ITE_MACCD_G,
- "CD",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_MACCD_G_GameFiles),
- ITE_MACCD_G_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEMACCD_G_GameSound,
- &ITEMACCD_G_GameSound,
- NULL,
- 0,
- NULL,
- GF_BIG_ENDIAN_DATA | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformMacintosh,
- },
-
- // Inherit the earth - MAC CD Wyrmkeep version
- {
- "ite",
- GType_ITE,
- GID_ITE_MACCD,
- "Wyrmkeep CD",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_MACCD_GameFiles),
- ITE_MACCD_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEMACCD_GameSound,
- &ITEMACCD_GameSound,
- &ITEMACCD_GameMusic,
- ARRAYSIZE(ITEMacPatch_Files),
- ITEMacPatch_Files,
- GF_BIG_ENDIAN_DATA | GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformMacintosh,
- },
-
- // Inherit the earth - Linux Demo version
- // Note: it should be before GID_ITE_WINDEMO2 version
- {
- "ite",
- GType_ITE,
- GID_ITE_LINDEMO,
- "Demo",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_LINDEMO_GameFiles),
- ITE_LINDEMO_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEWINDEMO2_GameVoice,
- &ITEWINDEMO2_GameSound,
- &ITELINDEMO_GameMusic,
- ARRAYSIZE(ITELinPatch_Files),
- ITELinPatch_Files,
- GF_WYRMKEEP | GF_CD_FX | GF_SCENE_SUBSTITUTES,
- Common::EN_ANY,
- Common::kPlatformLinux,
- },
-
- // Inherit the earth - Win32 Demo version
- {
- "ite",
- GType_ITE,
- GID_ITE_WINDEMO2,
- "Demo",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_WINDEMO2_GameFiles),
- ITE_WINDEMO2_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEWINDEMO2_GameVoice,
- &ITEWINDEMO2_GameSound,
- NULL,
- ARRAYSIZE(ITEWinPatch2_Files),
- ITEWinPatch2_Files,
- GF_WYRMKEEP | GF_CD_FX | GF_SCENE_SUBSTITUTES,
- Common::EN_ANY,
- Common::kPlatformWindows,
- },
-
- // Inherit the earth - early Win32 Demo version
- {
- "ite",
- GType_ITE,
- GID_ITE_WINDEMO1,
- "early Demo",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_WINDEMO1_GameFiles),
- ITE_WINDEMO1_GameFiles,
- ARRAYSIZE(ITEWINDEMO_GameFonts),
- ITEWINDEMO_GameFonts,
- &ITEWINDEMO1_GameSound,
- &ITEWINDEMO1_GameSound,
- NULL,
- ARRAYSIZE(ITEWinPatch1_Files),
- ITEWinPatch1_Files,
- GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformWindows,
- },
-
- // Inherit the earth - Wyrmkeep combined Windows/Mac/Linux CD
- {
- "ite",
- GType_ITE,
- GID_ITE_MULTICD,
- "Multi-OS CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_MULTICD_GameFiles),
- ITE_MULTICD_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITEMACCD_GameSound,
- &ITECD_GameSound,
- &ITEMACCD_GameMusic,
- 0,
- NULL,
- GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformUnknown,
- },
-
- // Inherit the earth - Wyrmkeep Linux CD version
- {
- "ite",
- GType_ITE,
- GID_ITE_LINCD,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_LINCD_GameFiles),
- ITE_LINCD_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- &ITEMACCD_GameMusic,
- ARRAYSIZE(ITELinPatch_Files),
- ITELinPatch_Files,
- GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformLinux,
- },
-
- // Inherit the earth - Wyrmkeep Windows CD version
- {
- "ite",
- GType_ITE,
- GID_ITE_WINCD,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_WINCD_GameFiles),
- ITE_WINCD_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- NULL,
- ARRAYSIZE(ITEWinPatch1_Files),
- ITEWinPatch1_Files,
- GF_WYRMKEEP | GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformWindows,
- },
-
- // Inherit the earth - DOS CD version
- {
- "ite",
- GType_ITE,
- GID_ITE_CD_G,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_CD_G_GameFiles),
- ITE_CD_G_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- NULL,
- 0,
- NULL,
- GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - DOS CD version with digital music
- {
- "ite",
- GType_ITE,
- GID_ITE_CD_G2,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_CD_G2_GameFiles),
- ITE_CD_G2_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- &ITEMACCD_GameMusic,
- 0,
- NULL,
- GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - DOS CD German version
- {
- "ite",
- GType_ITE,
- GID_ITE_CD_DE,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_CD_DE_GameFiles),
- ITE_CD_DE_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- NULL,
- 0,
- NULL,
- GF_CD_FX,
- Common::DE_DEU,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - DOS CD German version with digital music
- {
- "ite",
- GType_ITE,
- GID_ITE_CD_DE2,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_CD_DE2_GameFiles),
- ITE_CD_DE2_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- &ITEMACCD_GameMusic,
- 0,
- NULL,
- GF_CD_FX,
- Common::DE_DEU,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - CD version
- {
- "ite",
- GType_ITE,
- GID_ITE_CD,
- "CD Version",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_CD_GameFiles),
- ITE_CD_GameFiles,
- ARRAYSIZE(ITECD_GameFonts),
- ITECD_GameFonts,
- &ITECD_GameSound,
- &ITECD_GameSound,
- NULL,
- 0,
- NULL,
- GF_CD_FX,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - German Floppy version
- {
- "ite",
- GType_ITE,
- GID_ITE_DISK_DE,
- "Floppy",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_DISK_DE_GameFiles),
- ITE_DISK_DE_GameFiles,
- ARRAYSIZE(ITEDISK_GameFonts),
- ITEDISK_GameFonts,
- &ITEDISK_GameSound,
- &ITEDISK_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::DE_DEU,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - German Floppy version with digital music
- {
- "ite",
- GType_ITE,
- GID_ITE_DISK_DE2,
- "Floppy",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_DISK_DE2_GameFiles),
- ITE_DISK_DE2_GameFiles,
- ARRAYSIZE(ITEDISK_GameFonts),
- ITEDISK_GameFonts,
- &ITEDISK_GameSound,
- &ITEDISK_GameSound,
- &ITEMACCD_GameMusic,
- 0,
- NULL,
- 0,
- Common::DE_DEU,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - Disk version
- {
- "ite",
- GType_ITE,
- GID_ITE_DISK_G,
- "Floppy",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_DISK_G_GameFiles),
- ITE_DISK_G_GameFiles,
- ARRAYSIZE(ITEDISK_GameFonts),
- ITEDISK_GameFonts,
- &ITEDISK_GameSound,
- &ITEDISK_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // Inherit the earth - Disk version with digital music
- {
- "ite",
- GType_ITE,
- GID_ITE_DISK_G2,
- "Floppy",
- &ITE_DisplayInfo,
- ITE_DEFAULT_SCENE,
- &ITE_Resources,
- ARRAYSIZE(ITE_DISK_G2_GameFiles),
- ITE_DISK_G2_GameFiles,
- ARRAYSIZE(ITEDISK_GameFonts),
- ITEDISK_GameFonts,
- &ITEDISK_GameSound,
- &ITEDISK_GameSound,
- &ITEMACCD_GameMusic,
- 0,
- NULL,
- 0,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // I Have No Mouth And I Must Scream - Demo version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_DEMO,
- "Demo",
- &IHNM_DisplayInfo,
- 0,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_DEMO_GameFiles),
- IHNM_DEMO_GameFiles,
- ARRAYSIZE(IHNMDEMO_GameFonts),
- IHNMDEMO_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // I Have No Mouth And I Must Scream - CD version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_CD,
- "",
- &IHNM_DisplayInfo,
- IHNM_DEFAULT_SCENE,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_CD_GameFiles),
- IHNM_CD_GameFiles,
- ARRAYSIZE(IHNMCD_GameFonts),
- IHNMCD_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::EN_ANY,
- Common::kPlatformPC,
- },
-
- // I Have No Mouth And I Must Scream - De CD version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_CD_DE,
- "",
- &IHNM_DisplayInfo,
- IHNM_DEFAULT_SCENE,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_CD_DE_GameFiles),
- IHNM_CD_DE_GameFiles,
- ARRAYSIZE(IHNMCD_GameFonts),
- IHNMCD_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::DE_DEU,
- Common::kPlatformPC,
- },
- // I Have No Mouth And I Must Scream - Sp CD version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_CD_ES,
- "",
- &IHNM_DisplayInfo,
- IHNM_DEFAULT_SCENE,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_CD_ES_GameFiles),
- IHNM_CD_ES_GameFiles,
- ARRAYSIZE(IHNMCD_GameFonts),
- IHNMCD_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::ES_ESP,
- Common::kPlatformPC,
- },
- // I Have No Mouth And I Must Scream - Ru CD version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_CD_RU,
- "",
- &IHNM_DisplayInfo,
- IHNM_DEFAULT_SCENE,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_CD_RU_GameFiles),
- IHNM_CD_RU_GameFiles,
- ARRAYSIZE(IHNMCD_GameFonts),
- IHNMCD_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::RU_RUS,
- Common::kPlatformPC,
- },
- // I Have No Mouth And I Must Scream - Fr CD version
- {
- "ihnm",
- GType_IHNM,
- GID_IHNM_CD_FR,
- "",
- &IHNM_DisplayInfo,
- IHNM_DEFAULT_SCENE,
- &IHNM_Resources,
- ARRAYSIZE(IHNM_CD_FR_GameFiles),
- IHNM_CD_FR_GameFiles,
- ARRAYSIZE(IHNMCD_GameFonts),
- IHNMCD_GameFonts,
- &IHNM_GameSound,
- &IHNM_GameSound,
- NULL,
- 0,
- NULL,
- 0,
- Common::FR_FRA,
- Common::kPlatformPC,
- },
-};
-
-
Deleted: tools/trunk/sagagame.h
===================================================================
--- tools/trunk/sagagame.h 2007-06-27 16:38:05 UTC (rev 27748)
+++ tools/trunk/sagagame.h 2007-06-28 03:07:41 UTC (rev 27749)
@@ -1,357 +0,0 @@
-enum SAGAGameType {
- GType_ITE = 0,
- GType_IHNM = 1
-};
-
-enum GameIds {
- // Dreamers Guild
- GID_ITE_DEMO_G = 0,
- GID_ITE_DISK_G,
- GID_ITE_DISK_G2,
- GID_ITE_CD_G,
- GID_ITE_CD_G2,
- GID_ITE_MACCD_G,
-
- // Wyrmkeep
- GID_ITE_CD, // data for Win rerelease is same as in old DOS
- GID_ITE_WINCD, // but it has a bunch of patch files
- GID_ITE_MACCD,
- GID_ITE_LINCD,
- GID_ITE_MULTICD, // Wyrmkeep combined Windows/Mac/Linux version
- GID_ITE_WINDEMO1, // older Wyrmkeep windows demo
- GID_ITE_MACDEMO1, // older Wyrmkeep mac demo
- GID_ITE_LINDEMO,
- GID_ITE_WINDEMO2,
- GID_ITE_MACDEMO2,
-
- // German
- GID_ITE_DISK_DE,
- GID_ITE_DISK_DE2,
- GID_ITE_AMIGACD_DE, // TODO
- GID_ITE_OLDMAC_DE, // TODO
- GID_ITE_AMIGA_FL_DE,// TODO
- GID_ITE_CD_DE, // reported by mld. Bestsellergamers cover disk
- GID_ITE_CD_DE2,
- GID_ITE_AMIGA_AGA_DEMO, // TODO
- GID_ITE_AMIGA_ECS_DEMO, // TODO
-
- GID_IHNM_DEMO,
- GID_IHNM_CD,
- GID_IHNM_CD_DE, // reported by mld. German retail
- GID_IHNM_CD_ES,
- GID_IHNM_CD_RU,
- GID_IHNM_CD_FR
-};
-
-enum GameFileTypes {
- GAME_RESOURCEFILE = 1 << 0,
- GAME_SCRIPTFILE = 1 << 1,
- GAME_SOUNDFILE = 1 << 2,
- GAME_VOICEFILE = 1 << 3,
- GAME_DEMOFILE = 1 << 4,
- GAME_MUSICFILE = 1 << 5,
- GAME_MUSICFILE_GM = 1 << 6,
- GAME_MUSICFILE_FM = 1 << 7,
- GAME_PATCHFILE = 1 << 8,
- GAME_MACBINARY = 1 << 9,
- GAME_SWAPENDIAN = 1 << 10
-};
-
-enum GameFeatures {
- GF_BIG_ENDIAN_DATA = 1 << 0,
- GF_WYRMKEEP = 1 << 1,
- GF_CD_FX = 1 << 2,
- GF_SCENE_SUBSTITUTES = 1 << 3
-};
-
-enum VerbTypeIds {
- kVerbITENone = 0,
- kVerbITEPickUp = 1,
- kVerbITELookAt = 2,
- kVerbITEWalkTo = 3,
- kVerbITETalkTo = 4,
- kVerbITEOpen = 5,
- kVerbITEClose = 6,
- kVerbITEGive = 7,
- kVerbITEUse = 8,
- kVerbITEOptions = 9,
- kVerbITEEnter = 10,
- kVerbITELeave = 11,
- kVerbITEBegin = 12,
- kVerbITEWalkOnly = 13,
- kVerbITELookOnly = 14,
-
-
- kVerbIHNMNone = 0,
- kVerbIHNMWalk = 1,
- kVerbIHNMLookAt = 2,
- kVerbIHNMTake = 3,
- kVerbIHNMUse = 4,
- kVerbIHNMTalkTo = 5,
- kVerbIHNMSwallow = 6,
- kVerbIHNMGive = 7,
- kVerbIHNMPush = 8,
- kVerbIHNMOptions = 9,
- kVerbIHNMEnter = 10,
- kVerbIHNMLeave = 11,
- kVerbIHNMBegin = 12,
- kVerbIHNMWalkOnly = 13,
- kVerbIHNMLookOnly = 14,
-
- kVerbTypeIdsMax = kVerbITELookOnly + 1
-};
-enum PanelButtonType {
- kPanelButtonVerb = 1 << 0,
- kPanelButtonArrow = 1 << 1,
- kPanelButtonConverseText = 1 << 2,
- kPanelButtonInventory = 1 << 3,
-
- kPanelButtonOption = 1 << 4,
- kPanelButtonOptionSlider = 1 << 5,
- kPanelButtonOptionSaveFiles = 1 << 6,
- kPanelButtonOptionText = 1 << 7,
-
- kPanelButtonQuit = 1 << 8,
- kPanelButtonQuitText = 1 << 9,
-
- kPanelButtonLoad = 1 << 10,
- kPanelButtonLoadText = 1 << 11,
-
- kPanelButtonSave = 1 << 12,
- kPanelButtonSaveText = 1 << 13,
- kPanelButtonSaveEdit = 1 << 14,
-
- kPanelButtonProtectText = 1 << 15,
- kPanelButtonProtectEdit = 1 << 16,
-
- kPanelAllButtons = 0xFFFFF
-};
-
-enum GameSoundTypes {
- kSoundPCM = 0,
- kSoundVOX = 1,
- kSoundVOC = 2,
- kSoundWAV = 3,
- kSoundMacPCM = 4
-};
-
-enum TextStringIds {
- kTextWalkTo,
- kTextLookAt,
- kTextPickUp,
- kTextTalkTo,
- kTextOpen,
- kTextClose,
- kTextUse,
- kTextGive,
- kTextOptions,
- kTextTest,
- kTextDemo,
- kTextHelp,
- kTextQuitGame,
- kTextFast,
- kTextSlow,
- kTextOn,
- kTextOff,
- kTextContinuePlaying,
- kTextLoad,
- kTextSave,
- kTextGameOptions,
- kTextReadingSpeed,
- kTextMusic,
- kTextSound,
- kTextCancel,
- kTextQuit,
- kTextOK,
- kTextMid,
- kTextClick,
- kText10Percent,
- kText20Percent,
- kText30Percent,
- kText40Percent,
- kText50Percent,
- kText60Percent,
- kText70Percent,
- kText80Percent,
- kText90Percent,
- kTextMax,
- kTextQuitTheGameQuestion,
- kTextLoadSuccessful,
- kTextEnterSaveGameName,
- kTextGiveTo,
- kTextUseWidth,
- kTextNewSave,
- kTextICantPickup,
- kTextNothingSpecial,
- kTextNoPlaceToOpen,
- kTextNoOpening,
- kTextDontKnow,
- kTextShowDialog,
- kTextEnterProtectAnswer
-};
-
-
-struct GameFileDescription {
- const char *fileName;
- uint16 fileType;
- const char *md5;
-};
-
-struct GameResourceDescription {
- uint32 sceneLUTResourceId;
- uint32 moduleLUTResourceId;
- uint32 mainPanelResourceId;
- uint32 conversePanelResourceId;
- uint32 optionPanelResourceId;
- uint32 mainSpritesResourceId;
- uint32 mainPanelSpritesResourceId;
- uint32 defaultPortraitsResourceId;
- uint32 mainStringsResourceId;
- uint32 actorsStringsResourceId;
-};
-
-struct GameFontDescription {
- uint32 fontResourceId;
-};
-
-struct PanelButton {
- PanelButtonType type;
- int xOffset;
- int yOffset;
- int width;
- int height;
- int id;
- uint16 ascii;
- int state;
- int upSpriteNumber;
- int downSpriteNumber;
- int overSpriteNumber;
-};
-
-struct GameDisplayInfo {
- int logicalWidth;
- int logicalHeight;
-
- int pathStartY;
- int sceneHeight;
-
- int statusXOffset;
- int statusYOffset;
- int statusWidth;
- int statusHeight;
- int statusTextY;
- int statusTextColor;
- int statusBGColor;
-
- int saveReminderXOffset;
- int saveReminderYOffset;
- int saveReminderWidth;
- int saveReminderHeight;
- int saveReminderFirstSpriteNumber;
- int saveReminderSecondSpriteNumber;
-
- int leftPortraitXOffset;
- int leftPortraitYOffset;
- int rightPortraitXOffset;
- int rightPortraitYOffset;
-
- int inventoryUpButtonIndex;
- int inventoryDownButtonIndex;
- int inventoryRows;
- int inventoryColumns;
-
- int mainPanelXOffset;
- int mainPanelYOffset;
- int mainPanelButtonsCount;
- PanelButton *mainPanelButtons;
-
- int converseMaxTextWidth;
- int converseTextHeight;
- int converseTextLines;
- int converseUpButtonIndex;
- int converseDownButtonIndex;
-
- int conversePanelXOffset;
- int conversePanelYOffset;
- int conversePanelButtonsCount;
- PanelButton *conversePanelButtons;
-
- int optionSaveFilePanelIndex;
- int optionSaveFileSliderIndex;
- uint32 optionSaveFileVisible;
-
- int optionPanelXOffset;
- int optionPanelYOffset;
- int optionPanelButtonsCount;
- PanelButton *optionPanelButtons;
-
- int quitPanelXOffset;
- int quitPanelYOffset;
- int quitPanelWidth;
- int quitPanelHeight;
- int quitPanelButtonsCount;
- PanelButton *quitPanelButtons;
-
- int loadPanelXOffset;
- int loadPanelYOffset;
- int loadPanelWidth;
- int loadPanelHeight;
- int loadPanelButtonsCount;
- PanelButton *loadPanelButtons;
-
- int saveEditIndex;
- int savePanelXOffset;
- int savePanelYOffset;
- int savePanelWidth;
- int savePanelHeight;
- int savePanelButtonsCount;
- PanelButton *savePanelButtons;
-
- int protectEditIndex;
- int protectPanelXOffset;
- int protectPanelYOffset;
- int protectPanelWidth;
- int protectPanelHeight;
- int protectPanelButtonsCount;
- PanelButton *protectPanelButtons;
-};
-
-struct GameSoundInfo {
- GameSoundTypes resourceType;
- long frequency;
- int sampleBits;
- bool stereo;
- bool isBigEndian;
- bool isSigned;
-};
-
-struct GamePatchDescription {
- const char *fileName;
- uint16 fileType;
- uint32 resourceId;
- GameSoundInfo *soundInfo;
-};
-
-struct GameDescription {
- const char *name;
- SAGAGameType gameType;
- GameIds gameId;
- const char *extra;
- GameDisplayInfo *gameDisplayInfo;
- int startSceneNumber;
- GameResourceDescription *resourceDescription;
- int filesCount;
- GameFileDescription *filesDescriptions;
- int fontsCount;
- GameFontDescription *fontDescriptions;
- GameSoundInfo *voiceInfo;
- GameSoundInfo *sfxInfo;
- GameSoundInfo *musicInfo;
- int patchesCount;
- GamePatchDescription *patchDescriptions;
- uint32 features;
- Common::Language language;
- Common::Platform platform;
-};
-
-#define FILE_MD5_BYTES 5000
Deleted: tools/trunk/sagaresnames.h
===================================================================
--- tools/trunk/sagaresnames.h 2007-06-27 16:38:05 UTC (rev 27748)
+++ tools/trunk/sagaresnames.h 2007-06-28 03:07:41 UTC (rev 27749)
@@ -1,254 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2004-2006 The ScummVM project
- *
- * The ReInherit Engine is (C)2000-2003 by Daniel Balsom.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- *
- */
-
-// Descriptive names for game resource numbers
-
-#ifndef SAGA_RESOURCENAMES_H_
-#define SAGA_RESOURCENAMES_H_
-
-namespace Saga {
-
-// Prefix RID_ means Resource Id
-
-// Lookup tables
-#define RID_ITE_SCENE_LUT 1806
-#define RID_ITE_SCRIPT_LUT 216
-
-#define RID_ITEDEMO_SCENE_LUT 318
-#define RID_ITEDEMO_SCRIPT_LUT 146
-
-#define RID_IHNM_SCENE_LUT 1272
-#define RID_IHNM_SCRIPT_LUT 29
-#define RID_IHNM_SFX_LUT 265
-
-#define RID_IHNMDEMO_SCENE_LUT 286
-#define RID_IHNMDEMO_SCRIPT_LUT 18
-
-//obj names
-#define ITE_OBJ_MAP 14
-#define ITE_OBJ_MAGIC_HAT 0
-
-#define IHNM_OBJ_PROFILE 0x4000
-
-#define RID_IHNM_DEFAULT_PALETTE 1
-
-//actor names
-#define ITE_ACTOR_PUZZLE 176
-
-// SCENES
-#define ITE_SCENE_INV -1
-#define ITE_SCENE_PUZZLE 26
-#define ITE_SCENE_LODGE 21
-#define ITE_SCENE_ENDCREDIT1 295
-
-#define ITE_DEFAULT_SCENE 32
-#define IHNM_DEFAULT_SCENE 151
-
-#define ITEDEMO_DEFAULT_SCENE 68
-
-// FONTS
-#define RID_MEDIUM_FONT 0
-#define RID_BIG_FONT 1
-#define RID_SMALL_FONT 2
-
-// INTERFACE IMAGES
-#define RID_ITE_MAIN_PANEL 3
-#define RID_ITE_CONVERSE_PANEL 4
-#define RID_ITE_OPTION_PANEL 5
-#define RID_ITE_MAIN_SPRITES 6
-#define RID_ITE_MAIN_PANEL_SPRITES 7
-#define RID_ITE_MAIN_STRINGS 35 //main strings
-#define RID_ITE_ACTOR_NAMES 36 //actors names
-#define RID_ITE_DEFAULT_PORTRAITS 125
-
-#define RID_ITEDEMO_MAIN_PANEL 2
-#define RID_ITEDEMO_CONVERSE_PANEL 3
-#define RID_ITEDEMO_OPTION_PANEL 3 // FIXME: should be 4 but it is an empty resource.
-#define RID_ITEDEMO_MAIN_SPRITES 5 // Proper fix would be not load options panel when demo is running
-#define RID_ITEDEMO_MAIN_PANEL_SPRITES 6
-#define RID_ITEDEMO_MAIN_STRINGS 8 //main strings
-#define RID_ITEDEMO_ACTOR_NAMES 9 //actors names
-#define RID_ITEDEMO_DEFAULT_PORTRAITS 80
-
-#define RID_ITE_TYCHO_MAP 1686
-#define RID_ITE_SPR_XHAIR1 (73 + 9)
-#define RID_ITE_SPR_XHAIR2 (74 + 9)
-
-#define RID_IHNM_MAIN_PANEL 9
-#define RID_IHNM_CONVERSE_PANEL 10
-#define RID_IHNM_HOURGLASS_CURSOR 11
-#define RID_IHNM_MAIN_SPRITES 12 // TODO: verify this
-#define RID_IHNM_MAIN_PANEL_SPRITES 12
-#define RID_IHNM_ARROW_SPRITES 13
-#define RID_IHNM_SAVEREMINDER_SPRITES 14
-#define RID_IHNM_OPTION_PANEL 15
-#define RID_IHNM_WARNING_PANEL 17
-#define RID_IHNM_BOSS_SCREEN 19
-#define RID_IHNM_PROFILE_BG 20
-#define RID_IHNM_MAIN_STRINGS 21
-
-// Puzzle portraits
-#define RID_ITE_SAKKA_APPRAISING 6
-#define RID_ITE_SAKKA_DENIAL 7
-#define RID_ITE_SAKKA_EXCITED 8
-#define RID_ITE_JFERRET_SERIOUS 9
-#define RID_ITE_JFERRET_GOOFY 10
-#define RID_ITE_JFERRET_ALOOF 11
-
-// ITE Scene resource numbers
-#define RID_ITE_OVERMAP_SCENE 226
-#define RID_ITE_INTRO_ANIM_SCENE 1538
-#define RID_ITE_CAVE_SCENE_1 1542
-#define RID_ITE_CAVE_SCENE_2 1545
-#define RID_ITE_CAVE_SCENE_3 1548
-#define RID_ITE_CAVE_SCENE_4 1551
-
-#define RID_ITE_VALLEY_SCENE 1556
-#define RID_ITE_TREEHOUSE_SCENE 1560
-#define RID_ITE_FAIREPATH_SCENE 1564
-#define RID_ITE_FAIRETENT_SCENE 1567
-
-#define RID_ITE_INTRO_ANIM_STARTFRAME 1529
-
-#define RID_ITE_INTRO_ANIM_1 1530
-#define RID_ITE_INTRO_ANIM_2 1531
-#define RID_ITE_INTRO_ANIM_3 1532
-#define RID_ITE_INTRO_ANIM_4 1533
-#define RID_ITE_INTRO_ANIM_5 1534
-#define RID_ITE_INTRO_ANIM_6 1535
-#define RID_ITE_INTRO_ANIM_7 1536
-
-#define RID_ITE_CAVE_IMG_1 1540
-#define RID_ITE_CAVE_IMG_2 1543
-#define RID_ITE_CAVE_IMG_3 1546
-#define RID_ITE_CAVE_IMG_4 1549
-
-#define RID_ITE_INTRO_IMG_1 1552
-#define RID_ITE_INTRO_IMG_2 1557
-#define RID_ITE_INTRO_IMG_3 1561
-#define RID_ITE_INTRO_IMG_4 1565
-
-// ITE_VOICES
-#define RID_CAVE_VOICE_0 0
-#define RID_CAVE_VOICE_1 1
-#define RID_CAVE_VOICE_2 2
-#define RID_CAVE_VOICE_3 3
-#define RID_CAVE_VOICE_4 4
-#define RID_CAVE_VOICE_5 5
-#define RID_CAVE_VOICE_6 6
-#define RID_CAVE_VOICE_7 7
-#define RID_CAVE_VOICE_8 8
-#define RID_CAVE_VOICE_9 9
-#define RID_CAVE_VOICE_10 10
-#define RID_CAVE_VOICE_11 11
-#define RID_CAVE_VOICE_12 12
-#define RID_CAVE_VOICE_13 13
-
-#define RID_SCENE1_VOICE_009 57
-//TODO: fill it
-#define RID_SCENE1_VOICE_138 186
-
-#define RID_BOAR_VOICE_000 239
-#define RID_BOAR_VOICE_002 241
-#define RID_BOAR_VOICE_005 244
-#define RID_BOAR_VOICE_006 245
-#define RID_BOAR_VOICE_007 246
-
-// MUSIC
-#define MUSIC_1 9
-#define MUSIC_2 10
-#define MUSIC_SUNSPOT 26
-
-// TODO: If the sound effects are numbered sequentially, we don't really need
-// these constants. But for now they might be useful for debugging.
-
-// SOUND EFFECTS
-
-#define FX_DOOR_OPEN 14
-#define FX_DOOR_CLOSE 15
-#define FX_RUSH_WATER 16
-#define FX_CRICKET 17
-#define FX_PORTICULLIS 18
-#define FX_CLOCK_1 19
-#define FX_CLOCK_2 20
-#define FX_DAM_MACHINE 21
-#define FX_HUM1 22
-#define FX_HUM2 23
-#define FX_HUM3 24
-#define FX_HUM4 25
-#define FX_STREAM 26
-#define FX_SURF 27
-#define FX_FIRELOOP 28
-#define FX_SCRAPING 29
-#define FX_BEE_SWARM 30
-#define FX_SQUEAKBOARD 31
-#define FX_KNOCK 32
-#define FX_COINS 33
-#define FX_STORM 34
-#define FX_DOOR_CLOSE_2 35
-#define FX_ARCWELD 36
-#define FX_RETRACT_ORB 37
-#define FX_DRAGON 38
-#define FX_SNORES 39
-#define FX_SPLASH 40
-#define FX_LOBBY_DOOR 41
-#define FX_CHIRP_LOOP 42
-#define FX_DOOR_CREAK 43
-#define FX_SPOON_DIG 44
-#define FX_CROW 45
-#define FX_COLDWIND 46
-#define FX_TOOL_SND_1 47
-#define FX_TOOL_SND_2 48
-#define FX_TOOL_SND_3 49
-#define FX_DOOR_METAL 50
-#define FX_WATER_LOOP_S 51
-#define FX_WATER_LOOP_L 52
-#define FX_DOOR_OPEN_2 53
-#define FX_JAIL_DOOR 54
-#define FX_KILN_FIRE 55
-#define FX_DUMMY 56
-
-// These are only in the CD version
-
-#define FX_CROWD_01 57
-#define FX_CROWD_02 58
-#define FX_CROWD_03 59
-#define FX_CROWD_04 60
-#define FX_CROWD_05 61
-#define FX_CROWD_06 62
-#define FX_CROWD_07 63
-#define FX_CROWD_08 64
-#define FX_CROWD_09 65
-#define FX_CROWD_10 66
-#define FX_CROWD_11 67
-#define FX_CROWD_12 68
-#define FX_CROWD_13 69
-#define FX_CROWD_14 70
-#define FX_CROWD_15 71
-#define FX_CROWD_16 72
-#define FX_CROWD_17 73
-
-} // End of namespace Saga
-
-#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list