[Scummvm-git-logs] scummvm master -> 17d8cab6bf87a12132eee007c2bc83be38b44f0c
trembyle
noreply at scummvm.org
Mon Jan 3 23:31:19 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
17d8cab6bf AGI: Add detection for additional PC booters
Commit: 17d8cab6bf87a12132eee007c2bc83be38b44f0c
https://github.com/scummvm/scummvm/commit/17d8cab6bf87a12132eee007c2bc83be38b44f0c
Author: trembyle (sean.patrick.brody at gmail.com)
Date: 2022-01-03T18:06:19-05:00
Commit Message:
AGI: Add detection for additional PC booters
Alternate version of Troll's Tale works without issue.
PCjr, Tandy 1000, and IBM PC booters for KQ1-2 do not work because
the earliest AGI versions are not yet supported.
Later MS-DOS releases of Troll's Tale also do not work yet.
Changed paths:
engines/agi/detection_tables.h
diff --git a/engines/agi/detection_tables.h b/engines/agi/detection_tables.h
index a690d4f2bdf..07661230ce4 100644
--- a/engines/agi/detection_tables.h
+++ b/engines/agi/detection_tables.h
@@ -98,6 +98,23 @@ namespace Agi {
ver \
}
+#define GAME_LVFPNU(id,msg,fname,md5,size,lang,ver,features,gid,platform,interp,guioptions) { \
+ { \
+ id, \
+ msg, \
+ AD_ENTRY1s(fname,md5,size), \
+ lang, \
+ platform, \
+ ADGF_UNSUPPORTED, \
+ guioptions \
+ }, \
+ gid, \
+ interp, \
+ features, \
+ ver \
+ }
+
+#define BOOTER1_U(id,msg,fname,md5,size,ver,gid) GAME_LVFPNU(id,msg,fname,md5,size,Common::EN_ANY,ver,0,gid,Common::kPlatformDOS,GType_V1,GAMEOPTIONS_DEFAULT)
#define BOOTER2(id,extra,fname,md5,size,ver,gid) GAME_LVFPN(id,extra,fname,md5,size,Common::EN_ANY,ver,0,gid,Common::kPlatformDOS,GType_V2,GAMEOPTIONS_DEFAULT)
#define GAME(id,extra,md5,ver,gid) GAME_LVFPN(id,extra,"logdir",md5,-1,Common::EN_ANY,ver,0,gid,Common::kPlatformDOS,GType_V2,GAMEOPTIONS_DEFAULT)
#define GAME3(id,extra,fname,md5,ver,gid) GAME_LVFPN(id,extra,fname,md5,-1,Common::EN_ANY,ver,0,gid,Common::kPlatformDOS,GType_V3,GAMEOPTIONS_DEFAULT)
@@ -123,6 +140,7 @@ namespace Agi {
#define GAMEpre_P(id,extra,fname_1,md5_1,size_1,fname_2,md5_2,size_2,ver,gid,platform) GAME_LVFPN2(id,extra,fname_1,md5_1,size_1,fname_2,md5_2,size_2,Common::EN_ANY,ver,0,gid,platform,GType_PreAGI,GAMEOPTIONS_DEFAULT)
#define GAMEpre_PO(id,extra,fname_1,md5_1,size_1,fname_2,md5_2,size_2,ver,gid,platform,guioptions) GAME_LVFPN2(id,extra,fname_1,md5_1,size_1,fname_2,md5_2,size_2,Common::EN_ANY,ver,0,gid,platform,GType_PreAGI,guioptions)
#define GAMEpre_PS(id,extra,fname,md5,size,ver,gid,platform) GAME_LVFPN(id,extra,fname,md5,size,Common::EN_ANY,ver,0,gid,platform,GType_PreAGI,GAMEOPTIONS_DEFAULT)
+#define GAMEpre_PSU(id,msg,fname,md5,size,ver,gid,platform) GAME_LVFPNU(id,msg,fname,md5,size,Common::EN_ANY,ver,0,gid,platform,GType_PreAGI,GAMEOPTIONS_DEFAULT)
#define GAME3_PS(id,extra,fname,md5,size,ver,flags,gid,platform) GAME_LVFPN(id,extra,fname,md5,size,Common::EN_ANY,ver,flags,gid,platform,GType_V3,GAMEOPTIONS_DEFAULT)
#define GAME3_PSO(id,extra,fname,md5,size,ver,flags,gid,platform,guioptions) GAME_LVFPN(id,extra,fname,md5,size,Common::EN_ANY,ver,flags,gid,platform,GType_V3,guioptions)
@@ -339,6 +357,14 @@ static const AGIGameDescription gameDescriptions[] = {
// King's Quest 1 (Mac) 2.0C
GAME_P("kq1", "2.0C 1987-03-26", "d4c4739d4ac63f7dbd29255425077d48", 0x2440, GID_KQ1, Common::kPlatformMacintosh),
+ // King's Quest 1 (IBM PCjr) 1.00 1502265 5/10/84
+ BOOTER1_U("kq1", "Early King\'s Quest releases are not currently supported.",
+ "kq1.img", "127675735f9d2c148738c1e96ea9d2cf", 368640, 0x1120, GID_KQ1),
+
+ // King's Quest 1 (Tandy 1000) 01.01.00 5/24/84
+ BOOTER1_U("kq1", "Early King\'s Quest releases are not currently supported.",
+ "kq1.img", "0a22131d0eaf66d955afecfdc83ef9d6", 368640, 0x1120, GID_KQ1),
+
// King's Quest 1 (PC 5.25"/3.5") 2.0F [AGI 2.917]
GAME("kq1", "2.0F 1987-05-05 5.25\"/3.5\"", "10ad66e2ecbd66951534a50aedcd0128", 0x2917, GID_KQ1),
@@ -363,6 +389,48 @@ static const AGIGameDescription gameDescriptions[] = {
// King's Quest 2 (Mac) 2.0R
GAME_P("kq2", "2.0R 1988-03-23", "cbdb0083317c8e7cfb7ac35da4bc7fdc", 0x2440, GID_KQ2, Common::kPlatformMacintosh),
+ {
+ // King's Quest 2 (PC booter) 1.0W
+ {
+ "kq2",
+ "Early King\'s Quest releases are not currently supported.",
+ {
+ { "kq2-d1.img", BooterDisk1, "68302776c012f5036ceb66e36920d353", 368640},
+ { "kq2-d2.img", BooterDisk2, "5fa6d8222608aee556627c67cb5fb4d4", 368640},
+ AD_LISTEND
+ },
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_UNSUPPORTED,
+ GAMEOPTIONS_DEFAULT
+ },
+ GID_KQ2,
+ GType_V1,
+ 0,
+ 0x1120
+ },
+
+ {
+ // King's Quest 2 (PC booter) 1.1H
+ {
+ "kq2",
+ "Early King\'s Quest releases are not currently supported.",
+ {
+ { "kq2-d1.img", BooterDisk1, "c7216589aca72348bc063950cb80b266", 368640},
+ { "kq2-d2.img", BooterDisk2, "9d29b6d41740945dce569cb59b2a6c5f", 368640},
+ AD_LISTEND
+ },
+ Common::EN_ANY,
+ Common::kPlatformDOS,
+ ADGF_UNSUPPORTED,
+ GAMEOPTIONS_DEFAULT
+ },
+ GID_KQ2,
+ GType_V1,
+ 0,
+ 0x1120
+ },
+
// King's Quest 2 (PC) 2.1 [AGI 2.411]; entry from DAGII, but missing from Sarien?
// XXX: any major differences from 2.411 to 2.440?
GAME("kq2", "2.1 1987-04-10", "759e39f891a0e1d86dd29d7de485c6ac", 0x2440, GID_KQ2),
@@ -679,9 +747,20 @@ static const AGIGameDescription gameDescriptions[] = {
// Space Quest 2 (CoCo3 360k) [AGI 2.072]
GAME_PS("sq2", "updated", "d24f19b047e65e1763eff4b46f3d50df", 768, 0x2440, GID_SQ2, Common::kPlatformCoCo3),
- // Troll's Tale
+ // Troll's Tale (PC Booter)
GAMEpre_PS("troll", "", "troll.img", "62903f264b3d849be4214b3a5c42a2fa", 184320, 0x0000, GID_TROLL, Common::kPlatformDOS),
+ // Troll's Tale (PC Booter)
+ GAMEpre_PS("troll", "", "troll.img", "2b7f6da1b1008bfb22750e6ab7359942", 184320, 0x0000, GID_TROLL, Common::kPlatformDOS),
+
+ // Troll's Tale (DOS)
+ GAMEpre_PSU("troll", "MS-DOS versions of Troll's Tale are not currently supported.",
+ "game.dat", "62903f264b3d849be4214b3a5c42a2fa", 184320, 0x0000, GID_TROLL, Common::kPlatformDOS),
+
+ // Troll's Tale (DOS)
+ GAMEpre_PSU("troll", "MS-DOS versions of Troll's Tale are not currently supported.",
+ "troll.exe", "9cd0dda6e2e7bc78a053f881f3a3176b", 59120, 0x0000, GID_TROLL, Common::kPlatformDOS),
+
// Winnie the Pooh in the Hundred Acre Wood
GAMEpre_P("winnie", "", "title.pic", "2e7900c1ccaa7671d65405f6d1efed30", 1334,
"obj.40", "188636a4a340fcfd8e7fab1e8e0ac53b", 657, 0x0000, GID_WINNIE, Common::kPlatformDOS),
More information about the Scummvm-git-logs
mailing list