[Scummvm-cvs-logs] SF.net SVN: scummvm: [25480] scummvm/trunk/engines/agos

kirben at users.sourceforge.net kirben at users.sourceforge.net
Sun Feb 11 03:16:01 CET 2007


Revision: 25480
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25480&view=rev
Author:   kirben
Date:     2007-02-10 18:16:00 -0800 (Sat, 10 Feb 2007)

Log Message:
-----------
Add Acorn disk version of Simon the Sorcerer 1.

Modified Paths:
--------------
    scummvm/trunk/engines/agos/agosgame.cpp
    scummvm/trunk/engines/agos/intern.h
    scummvm/trunk/engines/agos/res.cpp
    scummvm/trunk/engines/agos/res_snd.cpp
    scummvm/trunk/engines/agos/string.cpp
    scummvm/trunk/engines/agos/subroutine.cpp

Modified: scummvm/trunk/engines/agos/agosgame.cpp
===================================================================
--- scummvm/trunk/engines/agos/agosgame.cpp	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/agosgame.cpp	2007-02-11 02:16:00 UTC (rev 25480)
@@ -394,6 +394,28 @@
 		GF_OLD_BUNDLE
 	},
 
+	// Simon the Sorcerer 1 - English Acorn Floppy
+	{
+		{
+			"simon1",
+			"Floppy",
+
+			{
+	{ "gamebase.dat", 	GAME_BASEFILE,	"c392e494dcabed797b98cbcfc687b33a", -1},
+	{ "icondata.dat", 	GAME_ICONFILE, 	"22107c24dfb31b66ac503c28a6e20b19", -1},
+	{ "stripped.dat", 	GAME_STRFILE,	"c95a0a1ee973e19c2a1c5d12026c139f", -1},
+	{ "tbllist.dat", 	GAME_TBLFILE,	"d198a80de2c59e4a0cd24b98814849e8", -1},
+	{ NULL, 0, NULL, 0}
+			},
+			Common::EN_ANY,
+			Common::kPlatformAcorn
+		},
+
+		GType_SIMON1,
+		GID_SIMON1ACORN,
+		GF_OLD_BUNDLE
+	},
+
 	// Simon the Sorcerer 1 - English Acorn CD Demo
 	{
 		{

Modified: scummvm/trunk/engines/agos/intern.h
===================================================================
--- scummvm/trunk/engines/agos/intern.h	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/intern.h	2007-02-11 02:16:00 UTC (rev 25480)
@@ -234,6 +234,7 @@
 	GID_WAXWORKS,
 
 	GID_SIMON1DOS,
+	GID_SIMON1ACORN,
 	GID_SIMON1AMIGA,
 	GID_SIMON1CD32,
 	GID_SIMON1TALKIE,

Modified: scummvm/trunk/engines/agos/res.cpp
===================================================================
--- scummvm/trunk/engines/agos/res.cpp	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/res.cpp	2007-02-11 02:16:00 UTC (rev 25480)
@@ -677,7 +677,9 @@
 		dst = allocBlock(dstSize + extraBuffer);
 		decompressData(filename, dst, offs, srcSize, dstSize);
 	} else if (getFeatures() & GF_OLD_BUNDLE) {
-		if (getPlatform() == Common::kPlatformAmiga || getPlatform() == Common::kPlatformAtariST) {
+		if (getPlatform() == Common::kPlatformAcorn) {
+			sprintf(filename, "%.3d%d.DAT", id, type);
+		} else if (getPlatform() == Common::kPlatformAmiga || getPlatform() == Common::kPlatformAtariST) {
 			if (getFeatures() & GF_TALKIE) {
 				sprintf(filename, "%.3d%d.out", id, type);
 			} else if (getGameType() == GType_ELVIRA1 && getFeatures() & GF_DEMO) {

Modified: scummvm/trunk/engines/agos/res_snd.cpp
===================================================================
--- scummvm/trunk/engines/agos/res_snd.cpp	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/res_snd.cpp	2007-02-11 02:16:00 UTC (rev 25480)
@@ -120,7 +120,9 @@
 void AGOSEngine::loadMusic(uint music) {
 	char buf[4];
 
-	if (getPlatform() == Common::kPlatformAtariST) {
+	if (getGameId() == GID_SIMON1ACORN) {
+		// TODO: Add support for music format used by Simon 1 Floppy
+	} else if (getPlatform() == Common::kPlatformAtariST) {
 		// TODO: Add support for music format used by Elvira 2
 	} else if (getPlatform() == Common::kPlatformAmiga) {
 		_mixer->stopHandle(_modHandle);
@@ -130,6 +132,8 @@
 
 		if (getGameType() == GType_ELVIRA1 && getFeatures() & GF_DEMO)
 			sprintf(filename, "elvira2");
+		else if (getPlatform() == Common::kPlatformAcorn)
+			sprintf(filename, "%dtune.DAT", music);
 		else
 			sprintf(filename, "%dtune", music);
 

Modified: scummvm/trunk/engines/agos/string.cpp
===================================================================
--- scummvm/trunk/engines/agos/string.cpp	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/string.cpp	2007-02-11 02:16:00 UTC (rev 25480)
@@ -156,6 +156,10 @@
 		filename[i] = 0;
 		p++;
 
+		if (getPlatform() == Common::kPlatformAcorn) {
+			sprintf(filename, "%s.DAT", filename);
+		}
+
 		base_max = (p[0] * 256) | p[1];
 		p += 2;
 

Modified: scummvm/trunk/engines/agos/subroutine.cpp
===================================================================
--- scummvm/trunk/engines/agos/subroutine.cpp	2007-02-11 01:38:15 UTC (rev 25479)
+++ scummvm/trunk/engines/agos/subroutine.cpp	2007-02-11 02:16:00 UTC (rev 25480)
@@ -360,6 +360,10 @@
 		filename[i] = 0;
 		p++;
 
+		if (getPlatform() == Common::kPlatformAcorn) {
+			sprintf(filename, "%s.DAT", filename);
+		}
+
 		for (;;) {
 			min_num = READ_BE_UINT16(p); p += 2;
 			if (min_num == 0)


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