[Scummvm-cvs-logs] SF.net SVN: scummvm: [24002] scummvm/trunk/engines/simon
kirben at users.sourceforge.net
kirben at users.sourceforge.net
Fri Sep 29 07:33:30 CEST 2006
Revision: 24002
http://svn.sourceforge.net/scummvm/?rev=24002&view=rev
Author: kirben
Date: 2006-09-28 22:33:22 -0700 (Thu, 28 Sep 2006)
Log Message:
-----------
Add last game (dimp) of PP
Modified Paths:
--------------
scummvm/trunk/engines/simon/game.cpp
scummvm/trunk/engines/simon/intern.h
scummvm/trunk/engines/simon/res.cpp
scummvm/trunk/engines/simon/simon.cpp
Modified: scummvm/trunk/engines/simon/game.cpp
===================================================================
--- scummvm/trunk/engines/simon/game.cpp 2006-09-29 05:31:33 UTC (rev 24001)
+++ scummvm/trunk/engines/simon/game.cpp 2006-09-29 05:33:22 UTC (rev 24002)
@@ -73,6 +73,7 @@
{"simon1", "Simon the Sorcerer 1"},
{"simon2", "Simon the Sorcerer 2"},
{"feeble", "The Feeble Files"},
+ {"dimp", "Demon in my Pocket"},
{"jumble", "Jumble"},
{"puzzle", "NoPatience"},
{"swampy", "Swampy Adventures"},
@@ -614,6 +615,10 @@
{ "tbllist", GAME_TBLFILE, "319f6b227c7822a551f57d24e70f8149"},
};
+static GameFileDescription DIMP_GameFiles[] = {
+ { "Gdimp", GAME_BASEFILE, "0b1e89ae1dc2e012b7fa7a987b4ac42a"},
+};
+
static GameFileDescription JUMBLE_GameFiles[] = {
{ "Gjumble", GAME_BASEFILE, "d54cce46d339038d1a6b74ea213655bc"},
};
@@ -1436,8 +1441,21 @@
Common::kPlatformWindows,
},
- // Jumble
+ // Simon the Sorcerer's Puzzle Pack - Demon in my Pocket
{
+ "dimp",
+ GType_PP,
+ GID_DIMP,
+ "CD",
+ ARRAYSIZE(DIMP_GameFiles),
+ DIMP_GameFiles,
+ GF_OLD_BUNDLE | GF_TALKIE,
+ Common::EN_ANY,
+ Common::kPlatformWindows,
+ },
+
+ // Simon the Sorcerer's Puzzle Pack - Jumble
+ {
"jumble",
GType_PP,
GID_JUMBLE,
@@ -1449,7 +1467,7 @@
Common::kPlatformWindows,
},
- // Puzzle
+ // Simon the Sorcerer's Puzzle Pack - NoPatience
{
"puzzle",
GType_PP,
@@ -1462,7 +1480,7 @@
Common::kPlatformWindows,
},
- // Swampy Adventures
+ // Simon the Sorcerer's Puzzle Pack - Swampy Adventures
{
"swampy",
GType_PP,
Modified: scummvm/trunk/engines/simon/intern.h
===================================================================
--- scummvm/trunk/engines/simon/intern.h 2006-09-29 05:31:33 UTC (rev 24001)
+++ scummvm/trunk/engines/simon/intern.h 2006-09-29 05:33:22 UTC (rev 24002)
@@ -251,6 +251,7 @@
GID_FEEBLEFILES_IT,
GID_FEEBLEFILES_ES,
+ GID_DIMP,
GID_JUMBLE,
GID_PUZZLE,
GID_SWAMPY
Modified: scummvm/trunk/engines/simon/res.cpp
===================================================================
--- scummvm/trunk/engines/simon/res.cpp 2006-09-29 05:31:33 UTC (rev 24001)
+++ scummvm/trunk/engines/simon/res.cpp 2006-09-29 05:33:22 UTC (rev 24002)
@@ -932,12 +932,64 @@
return dst;
}
+static const char *dimpSoundList[32] = {
+ "Beep",
+ "Birth",
+ "Boiling",
+ "Burp",
+ "Cough",
+ "Die1",
+ "Die2",
+ "Fart",
+ "Inject",
+ "Killchik",
+ "Puke",
+ "Lights",
+ "Shock",
+ "Snore",
+ "Snotty",
+ "Whip",
+ "Whistle",
+ "Work1",
+ "Work2",
+ "Yawn",
+ "And0w",
+ "And0x",
+ "And0y",
+ "And0z",
+ "And10",
+ "And11",
+ "And12",
+ "And13",
+ "And14",
+ "And15",
+ "And16",
+ "And17",
+};
+
+
void SimonEngine::loadSound(uint sound, int pan, int vol, uint type) {
byte *dst;
- if (getFeatures() & GF_ZLIBCOMP) {
+ if (getGameId() == GID_DIMP) {
+ File in;
char filename[15];
+ assert(sound >= 1 && sound <= 32);
+ sprintf(filename, "%s.wav", dimpSoundList[sound - 1]);
+
+ in.open(filename);
+ if (in.isOpen() == false)
+ error("loadSound: Can't load %s", filename);
+
+ uint32 dstSize = in.size();
+ dst = (byte *)malloc(dstSize);
+ if (in.read(dst, dstSize) != dstSize)
+ error("loadSound: Read failed");
+ in.close();
+ } else if (getFeatures() & GF_ZLIBCOMP) {
+ char filename[15];
+
uint32 file, offset, srcSize, dstSize;
if (getPlatform() == Common::kPlatformAmiga) {
loadOffsets((const char*)"sfxindex.dat", _zoneNumber * 22 + sound, file, offset, srcSize, dstSize);
Modified: scummvm/trunk/engines/simon/simon.cpp
===================================================================
--- scummvm/trunk/engines/simon/simon.cpp 2006-09-29 05:31:33 UTC (rev 24001)
+++ scummvm/trunk/engines/simon/simon.cpp 2006-09-29 05:33:22 UTC (rev 24002)
@@ -422,7 +422,10 @@
return -1;
}
- if (getGameType() == GType_FF || getGameType() == GType_PP) {
+ if (getGameId() == GID_DIMP) {
+ _screenWidth = 496;
+ _screenHeight = 400;
+ } else if (getGameType() == GType_FF || getGameType() == GType_PP) {
_screenWidth = 640;
_screenHeight = 480;
} else {
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