diff options
author | Filippos Karapetis | 2007-07-15 06:24:39 +0000 |
---|---|---|
committer | Filippos Karapetis | 2007-07-15 06:24:39 +0000 |
commit | 6376321e5a486fb6fba867e0e80205282826b806 (patch) | |
tree | 43ce7674e514d36253e18dd16fef490559b2bed6 /engines/agi | |
parent | 198b6ac8e64044823922420afaeb948508f41775 (diff) | |
download | scummvm-rg350-6376321e5a486fb6fba867e0e80205282826b806.tar.gz scummvm-rg350-6376321e5a486fb6fba867e0e80205282826b806.tar.bz2 scummvm-rg350-6376321e5a486fb6fba867e0e80205282826b806.zip |
Enabled menus in some old AGI games (released in 1986) which did not have menus them originally: KQ1 Amiga and ST and early versions of KQ3 Amiga, SQ1 ST, SQ1 DOS and SQ1 Amiga. The GF_FORCEMENUS flag has been remaned to GF_MENUS. Also, two problematic versions of KQ3, a problematic version of SQ1 and a problematic version of Mixed up Mother Goose have been disabled. Finally, a duplicate detection entry for SQ1 has been removed
svn-id: r28095
Diffstat (limited to 'engines/agi')
-rw-r--r-- | engines/agi/agi.h | 2 | ||||
-rw-r--r-- | engines/agi/detection.cpp | 67 | ||||
-rw-r--r-- | engines/agi/keyboard.cpp | 2 | ||||
-rw-r--r-- | engines/agi/menu.cpp | 2 |
4 files changed, 40 insertions, 33 deletions
diff --git a/engines/agi/agi.h b/engines/agi/agi.h index c732121e11..6c89edf1dd 100644 --- a/engines/agi/agi.h +++ b/engines/agi/agi.h @@ -112,7 +112,7 @@ enum AgiGameFeatures { GF_AGIPAL = (1 << 4), GF_MACGOLDRUSH = (1 << 5), GF_FANMADE = (1 << 6), - GF_FORCEMENUS = (1 << 7) + GF_MENUS = (1 << 7) }; enum AgiGameID { diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp index 3f53777f2d..381444f5ff 100644 --- a/engines/agi/detection.cpp +++ b/engines/agi/detection.cpp @@ -245,6 +245,7 @@ static const AGIGameDescription gameDescriptions[] = { { // Black Cauldron (Apple IIgs) 1.0O 2/24/89 (CE) + // Menus not tested { "bc", "1.0O 1989-02-24 (CE)", @@ -298,6 +299,7 @@ static const AGIGameDescription gameDescriptions[] = { #if 0 { // Donald Duck's Playground (Amiga) 1.0C + // Menus not tested { "ddp", "1.0C 1987-04-27", @@ -315,6 +317,7 @@ static const AGIGameDescription gameDescriptions[] = { { // Donald Duck's Playground (ST) 1.0A 8/8/86 + // Menus not tested { "ddp", "1.0A 1986-08-08", @@ -332,6 +335,7 @@ static const AGIGameDescription gameDescriptions[] = { { // reported by Filippos (thebluegr) in bugreport #1654500 + // Menus not tested { "ddp", "1.0C 1986-06-09", // verify date @@ -366,6 +370,7 @@ static const AGIGameDescription gameDescriptions[] = { { // Gold Rush! (Apple IIgs) 1.0M 2/28/89 (CE) aka 2.01 12/22/88 + // Menus not tested { "goldrush", "1.0M 1989-02-28 (CE) aka 2.01 1988-12-22", @@ -455,6 +460,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 1 (Amiga) 1.0U # 2.082 + // The original game did not have menus, they are enabled under ScummVM { "kq1", "1.0U 1986", @@ -465,13 +471,14 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_KQ1, GType_V2, - 0, + GF_MENUS, 0x2440, }, { // King's Quest 1 (ST) 1.0V + // The original game did not have menus, they are enabled under ScummVM { "kq1", "1.0V 1986", @@ -482,13 +489,14 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_KQ1, GType_V2, - 0, + GF_MENUS, 0x2272, }, { // King's Quest 1 (IIgs) 1.0S-88223 + // Menus not tested { "kq1", "1.0S 1988-02-23", @@ -625,6 +633,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 3 (Amiga) 1.01 11/8/86 + // The original game did not have menus, they are enabled under ScummVM { "kq3", "1.01 1986-11-08", @@ -635,13 +644,14 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_KQ3, GType_V2, - GF_FORCEMENUS, + GF_MENUS, 0x2440, }, - +#if 0 { // King's Quest 3 (ST) 1.02 11/18/86 + // Problematic: does not have menus, crashes if menus are enforced { "kq3", "1.02 1986-11-18", @@ -655,7 +665,7 @@ static const AGIGameDescription gameDescriptions[] = { 0, 0x2272, }, - +#endif { // King's Quest 3 (Mac) 2.14 3/15/88 @@ -707,9 +717,10 @@ static const AGIGameDescription gameDescriptions[] = { 0x3086, }, - +#if 0 { // King's Quest 3 (PC) 1.01 11/08/86 [AGI 2.272] + // Problematic: does not have menus, crashes if menus are enforced { "kq3", "1.01 1986-11-08", @@ -723,7 +734,7 @@ static const AGIGameDescription gameDescriptions[] = { 0, 0x2272, }, - +#endif { // King's Quest 3 (PC 5.25") 2.00 5/25/87 [AGI 2.435] @@ -744,6 +755,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 3 (Mac) 2.14 3/15/88 + // Menus not tested { "kq3", "2.14 1988-03-15 5.25\"", @@ -795,6 +807,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 4 (IIgs) 1.0K 11/22/88 (CE) + // Menus not tested { "kq4", "1.0K 1988-11-22", @@ -829,6 +842,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 4 (PC 3.5") 2.2 9/27/88 [AGI 3.002.086] + // Menus not tested { "kq4", "2.2 1988-09-27 3.5\"", @@ -846,6 +860,7 @@ static const AGIGameDescription gameDescriptions[] = { { // King's Quest 4 demo (PC) [AGI 3.002.102] + // Menus not tested { "kq4", "Demo 1988-12-20", @@ -1099,9 +1114,11 @@ static const AGIGameDescription gameDescriptions[] = { 0x3149, }, - +#if 0 { // Mixed-Up Mother Goose (Amiga) 1.1 + // Problematic: crashes + // Menus not tested { "mixedup", "1.1 1986-12-10", @@ -1115,7 +1132,7 @@ static const AGIGameDescription gameDescriptions[] = { 0, 0x3086, }, - +#endif { // Mixed Up Mother Goose (IIgs) @@ -1154,6 +1171,7 @@ static const AGIGameDescription gameDescriptions[] = { #if 0 { // Mixed Up Mother Goose (PC) [AGI 2.915] (Broken) + // Menus not tested { "mixedup", "[corrupt/OBJECT from disk 1]", @@ -1308,6 +1326,7 @@ static const AGIGameDescription gameDescriptions[] = { { // Space Quest 1 (ST) 1.1A + // The original game did not have menus, they are enabled under ScummVM { "sq1", "1.1A 1986-02-06", @@ -1318,13 +1337,14 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_SQ1, GType_V2, - 0, + GF_MENUS, 0x2440, }, { // Space Quest 1 (PC) 1.1A [AGI 2.272] + // The original game did not have menus, they are enabled under ScummVM { "sq1", "1.1A 1986-11-13", @@ -1335,13 +1355,14 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_SQ1, GType_V2, - GF_FORCEMENUS, + GF_MENUS, 0x2272, }, { // Space Quest 1 (Amiga) 1.2 # 2.082 + // The original game did not have menus, they are enabled under ScummVM { "sq1", "1.2 1986", @@ -1352,7 +1373,7 @@ static const AGIGameDescription gameDescriptions[] = { }, GID_SQ1, GType_V2, - GF_FORCEMENUS, + GF_MENUS, 0x2440, }, @@ -1390,9 +1411,10 @@ static const AGIGameDescription gameDescriptions[] = { 0x2917, }, - +#if 0 { // Space Quest 1 (PC) 1.0X [AGI 2.089] + // Problematic: does not have menus, crashes if menus are enforced { "sq1", "1.0X 1986-09-24", @@ -1406,23 +1428,7 @@ static const AGIGameDescription gameDescriptions[] = { 0, 0x2089, }, - - - { - // Space Quest 1 (PC) 1.1A [AGI 2.272] - { - "sq1", - "1.1A 1986-11-13", - AD_ENTRY1("logdir", "8d8c20ab9f4b6e4817698637174a1cb6"), - Common::EN_ANY, - Common::kPlatformPC, - Common::ADGF_NO_FLAGS - }, - GID_SQ1, - GType_V2, - 0, - 0x2272, - }, +#endif { @@ -1552,6 +1558,7 @@ static const AGIGameDescription gameDescriptions[] = { { // Space Quest 2 (PC 5.25"/ST) 2.0C/A [AGI 2.915] + // Menus not tested { "sq2", "2.0C/A 5.25\"/ST", diff --git a/engines/agi/keyboard.cpp b/engines/agi/keyboard.cpp index 9fd3700675..d41100d5d8 100644 --- a/engines/agi/keyboard.cpp +++ b/engines/agi/keyboard.cpp @@ -127,7 +127,7 @@ int AgiEngine::handleController(int key) { } if (key == BUTTON_LEFT) { - if ((getflag(fMenusWork) || (getFeatures() & GF_FORCEMENUS)) && g_mouse.y <= CHAR_LINES) { + if ((getflag(fMenusWork) || (getFeatures() & GF_MENUS)) && g_mouse.y <= CHAR_LINES) { newInputMode(INPUT_MENU); return true; } diff --git a/engines/agi/menu.cpp b/engines/agi/menu.cpp index 4cba788273..7aa7f5e55d 100644 --- a/engines/agi/menu.cpp +++ b/engines/agi/menu.cpp @@ -267,7 +267,7 @@ bool Menu::keyhandler(int key) { static int menuActive = false; static int buttonUsed = 0; - if (!_vm->getflag(fMenusWork) && !(_vm->getFeatures() & GF_FORCEMENUS)) + if (!_vm->getflag(fMenusWork) && !(_vm->getFeatures() & GF_MENUS)) return false; if (!menuActive) { |