[Scummvm-cvs-logs] SF.net SVN: scummvm: [22433] scummvm/trunk/engines/saga

h00ligan at users.sourceforge.net h00ligan at users.sourceforge.net
Sat May 13 03:46:22 CEST 2006


Revision: 22433
Author:   h00ligan
Date:     2006-05-13 03:30:38 -0700 (Sat, 13 May 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=22433&view=rev

Log Message:
-----------
extract GameDescriptions to separate files (this will help compress_saga tool to detect sound resource)

Modified Paths:
--------------
    scummvm/trunk/engines/saga/actor.cpp
    scummvm/trunk/engines/saga/game.cpp
    scummvm/trunk/engines/saga/gfx.cpp
    scummvm/trunk/engines/saga/interface.cpp
    scummvm/trunk/engines/saga/isomap.cpp
    scummvm/trunk/engines/saga/ite_introproc.cpp
    scummvm/trunk/engines/saga/itedata.cpp
    scummvm/trunk/engines/saga/music.cpp
    scummvm/trunk/engines/saga/puzzle.cpp
    scummvm/trunk/engines/saga/saga.cpp
    scummvm/trunk/engines/saga/saga.h
    scummvm/trunk/engines/saga/saveload.cpp
    scummvm/trunk/engines/saga/scene.cpp
    scummvm/trunk/engines/saga/script.h
    scummvm/trunk/engines/saga/sfuncs.cpp
    scummvm/trunk/engines/saga/sndres.cpp
    scummvm/trunk/engines/saga/sprite.cpp
    scummvm/trunk/engines/saga/sthread.cpp

Added Paths:
-----------
    scummvm/trunk/engines/saga/sagagame.cpp
    scummvm/trunk/engines/saga/sagagame.h
    scummvm/trunk/engines/saga/sagaresnames.h

Removed Paths:
-------------
    scummvm/trunk/engines/saga/resnames.h
Modified: scummvm/trunk/engines/saga/actor.cpp
===================================================================
--- scummvm/trunk/engines/saga/actor.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/actor.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -33,7 +33,7 @@
 #include "saga/isomap.h"
 #include "saga/itedata.h"
 #include "saga/objectmap.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/rscfile.h"
 #include "saga/script.h"
 #include "saga/sndres.h"

Modified: scummvm/trunk/engines/saga/game.cpp
===================================================================
--- scummvm/trunk/engines/saga/game.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/game.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -36,17 +36,9 @@
 #include "saga/rscfile.h"
 #include "saga/interface.h"
 #include "saga/scene.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 
-#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
-
 namespace Saga {
 static DetectedGameList GAME_detectGames(const FSList &fslist);
 }
@@ -92,1411 +84,8 @@
 REGISTER_PLUGIN(SAGA, "SAGA Engine");
 
 namespace Saga {
+#include "sagagame.cpp"
 
-// 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,
-	},
-};
-
 DetectedGame toDetectedGame(const GameDescription &g) {
 	const char *title;
 	title = saga_games[g.gameType].description;

Modified: scummvm/trunk/engines/saga/gfx.cpp
===================================================================
--- scummvm/trunk/engines/saga/gfx.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/gfx.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -27,7 +27,7 @@
 #include "saga/saga.h"
 #include "saga/gfx.h"
 #include "saga/interface.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/rscfile.h"
 #include "saga/scene.h"
 #include "saga/stream.h"

Modified: scummvm/trunk/engines/saga/interface.cpp
===================================================================
--- scummvm/trunk/engines/saga/interface.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/interface.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -41,7 +41,7 @@
 #include "saga/sound.h"
 #include "saga/sprite.h"
 #include "saga/rscfile.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 
 #include "saga/interface.h"
 

Modified: scummvm/trunk/engines/saga/isomap.cpp
===================================================================
--- scummvm/trunk/engines/saga/isomap.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/isomap.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -27,7 +27,7 @@
 
 #include "saga/gfx.h"
 
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/scene.h"
 #include "saga/isomap.h"
 #include "saga/stream.h"

Modified: scummvm/trunk/engines/saga/ite_introproc.cpp
===================================================================
--- scummvm/trunk/engines/saga/ite_introproc.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/ite_introproc.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -36,7 +36,7 @@
 #include "saga/music.h"
 
 #include "saga/scene.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/rscfile.h"
 
 namespace Saga {

Modified: scummvm/trunk/engines/saga/itedata.cpp
===================================================================
--- scummvm/trunk/engines/saga/itedata.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/itedata.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -25,7 +25,7 @@
 // Actor and Object data tables
 #include "saga/saga.h"
 #include "saga/itedata.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/sndres.h"
 
 namespace Saga {

Modified: scummvm/trunk/engines/saga/music.cpp
===================================================================
--- scummvm/trunk/engines/saga/music.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/music.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -24,7 +24,7 @@
 #include "saga/saga.h"
 
 #include "saga/rscfile.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 #include "saga/music.h"
 #include "saga/stream.h"
 #include "sound/audiostream.h"

Modified: scummvm/trunk/engines/saga/puzzle.cpp
===================================================================
--- scummvm/trunk/engines/saga/puzzle.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/puzzle.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -28,7 +28,7 @@
 #include "saga/sprite.h"
 #include "saga/puzzle.h"
 #include "saga/render.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 
 #include "common/system.h"
 #include "common/timer.h"

Deleted: scummvm/trunk/engines/saga/resnames.h
===================================================================
--- scummvm/trunk/engines/saga/resnames.h	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/resnames.h	2006-05-13 10:30:38 UTC (rev 22433)
@@ -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

Modified: scummvm/trunk/engines/saga/saga.cpp
===================================================================
--- scummvm/trunk/engines/saga/saga.cpp	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/saga.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -51,7 +51,7 @@
 #include "saga/music.h"
 #include "saga/palanim.h"
 #include "saga/objectmap.h"
-#include "saga/resnames.h"
+#include "saga/sagaresnames.h"
 
 namespace Saga {
 

Modified: scummvm/trunk/engines/saga/saga.h
===================================================================
--- scummvm/trunk/engines/saga/saga.h	2006-05-13 10:16:19 UTC (rev 22432)
+++ scummvm/trunk/engines/saga/saga.h	2006-05-13 10:30:38 UTC (rev 22433)
@@ -83,11 +83,9 @@
 	SUCCESS = 0
 };
 
-enum SAGAGameType {
-	GType_ITE = 0,
-	GType_IHNM = 1
-};
+#include "sagagame.h"
 
+
 enum GameObjectTypes {
 	kGameObjectNone = 0,
 	kGameObjectActor = 1,
@@ -138,89 +136,6 @@
 	kHitZoneProject = (1 << 3)
 };
 
-
-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 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 ImageHeader {
 	int width;
 	int height;
@@ -252,75 +167,8 @@
 	}
 };
 
-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 GameSoundTypes {
-	kSoundPCM = 0,
-	kSoundVOX = 1,
-	kSoundVOC = 2,
-	kSoundWAV = 3,
-	kSoundMacPCM = 4
-};
-
-enum GameFeatures {
-	GF_BIG_ENDIAN_DATA   = 1 << 0,
-	GF_WYRMKEEP          = 1 << 1,
-	GF_CD_FX             = 1 << 2,
-	GF_SCENE_SUBSTITUTES = 1 << 3
-};
-
 enum ColorId {
 	kITEColorTransBlack = 0x00,
 	kITEColorBrightWhite = 0x01,
@@ -354,170 +202,6 @@
 	kKnownColorVerbTextActive
 };
 
-struct GameSoundInfo {
-	GameSoundTypes resourceType;
-	long frequency;
-	int sampleBits;
-	bool stereo;
-	bool isBigEndian;
-	bool isSigned;
-};
-
-struct GameFontDescription {
-	uint32 fontResourceId;
-};
-
-struct GameResourceDescription {
-	uint32 sceneLUTResourceId;
-	uint32 moduleLUTResourceId;
-	uint32 mainPanelResourceId;
-	uint32 conversePanelResourceId;
-	uint32 optionPanelResourceId;
-	uint32 mainSpritesResourceId;
-	uint32 mainPanelSpritesResourceId;
-	uint32 defaultPortraitsResourceId;
-	uint32 mainStringsResourceId;
-	uint32 actorsStringsResourceId;
-};
-
-struct GameFileDescription {
-	const char *fileName;
-	uint16 fileType;
-	const char *md5;
-};
-
-struct GamePatchDescription {
-	const char *fileName;
-	uint16 fileType;
-	uint32 resourceId;
-	GameSoundInfo *soundInfo;
-};
-
-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;
-	uint 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 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;
-};
-
 struct SaveFileData {
 	char name[SAVE_TITLE_SIZE];
 	uint slotNumber;

Added: scummvm/trunk/engines/saga/sagagame.cpp
===================================================================
--- scummvm/trunk/engines/saga/sagagame.cpp	                        (rev 0)
+++ scummvm/trunk/engines/saga/sagagame.cpp	2006-05-13 10:30:38 UTC (rev 22433)
@@ -0,0 +1,1414 @@
+#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

@@ Diff output truncated at 100000 characters. @@

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