[Scummvm-git-logs] scummvm branch-2-1 -> 8e0a12f62a12ac5781594851e3d31a00b91fa573
bluegr
bluegr at gmail.com
Sat Sep 28 16:25:09 CEST 2019
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
9939f0b072 SCI32: Fixed several uninitialized reads in Hoyle 5
56d6a383b5 SCI: Add The Sect of Achturan fanmade game - bug #11072
8e0a12f62a SCI32: Extend the Hoyle 5 bridge slider workaround
Commit: 9939f0b07285a88f0d6473cb848f52bacdaa9745
https://github.com/scummvm/scummvm/commit/9939f0b07285a88f0d6473cb848f52bacdaa9745
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2019-09-28T17:24:05+03:00
Commit Message:
SCI32: Fixed several uninitialized reads in Hoyle 5
Closes bugs #11167, #11168, #11169, #11170, #11171, #11172 #11173
Changed paths:
engines/sci/engine/workarounds.cpp
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index b5ae01a..52d805f 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -80,6 +80,7 @@ const SciWorkaroundEntry arithmeticWorkarounds[] = {
{ GID_FANMADE, 516, 983, 0, "Wander", "setTarget", NULL, 0, 0, { WORKAROUND_FAKE, 0 } }, // op_mul: The Legend of the Lost Jewel Demo (fan made): called with object as second parameter when attacked by insects - bug #5124
{ GID_GK1, 800,64992, 0, "Fwd", "doit", NULL, 0, 0, { WORKAROUND_FAKE, 1 } }, // op_gt: when Mosely finds Gabriel and Grace near the end of the game, compares the Grooper object with 7
{ GID_HOYLE4, 700, -1, 1, "Code", "doit", NULL, 0, 0, { WORKAROUND_FAKE, 1 } }, // op_add: while bidding in Bridge, an object ("Bid") is added to an object in another segment ("hand3")
+ { GID_HOYLE5, 700, 733, 0, "Declarer_Second_NT", "think", NULL, 0, 0, { WORKAROUND_FAKE, 1 } }, // op_or: while playing Bridge - bug #11173
{ GID_ICEMAN, 199, 977, 0, "Grooper", "doit", NULL, 0, 0, { WORKAROUND_FAKE, 0 } }, // op_add: While dancing with the girl
{ GID_MOTHERGOOSE256, -1, 999, 0, "Event", "new", NULL, 0, 0, { WORKAROUND_FAKE, 0 } }, // op_and: constantly during the game (SCI1 version)
{ GID_MOTHERGOOSE256, -1, 4, 0, "rm004", "doit", NULL, 0, 0, { WORKAROUND_FAKE, 0 } }, // op_or: when going north and reaching the castle (rooms 4 and 37) - bug #5101
@@ -190,6 +191,17 @@ static const uint16 sig_uninitread_hoyle5_4[] = {
SIG_END
};
+// Game: Hoyle 5
+// Calling method: LeadSeat_NoTrump::think
+// Subroutine offset: 0x22e (script 753)
+// Applies to at least: English PC
+static const uint16 sig_uninitread_hoyle5_5[] = {
+ 0x7e, SIG_ADDTOOFFSET(2), // line N
+ 0x7d, 0x73, 0x74, 0x67, 0x62, 0x64, 0x6c, 0x6e, 0x74,
+ 0x2e, 0x73, 0x63, 0x00, // file "stgbdlnt.sc"
+ SIG_END
+};
+
// Game: Jones in the fast lane
// Calling method: weekendText::draw
// Subroutine offset: 0x03d3 (script 232)
@@ -391,6 +403,15 @@ const SciWorkaroundEntry uninitializedReadWorkarounds[] = {
{ GID_HOYLE5, 400, 400, 1, "GinHand", "calcRuns", NULL, 4, 4, { WORKAROUND_FAKE, 0 } }, // when starting Gin
{ GID_HOYLE5, 700, 700, 1, "BridgeHand", "calcQTS", NULL, 3, 3, { WORKAROUND_FAKE, 0 } }, // when an opponent is playing in Bridge
{ GID_HOYLE5, 700, 747, 0, "LeadReturn_Trump", "think", NULL, 17, 17, { WORKAROUND_FAKE, 0 } }, // when an opponent is playing in Bridge
+ { GID_HOYLE5, 700, 1115, 0, "attitudeSliderF", "select", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when adjusting the attitude slider in Bridge - bug #11166
+ { GID_HOYLE5, 700, 710, 1, "BridgeStrategyPlay", "checkSplitTops", NULL, 10, 10, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11167
+ { GID_HOYLE5, 700, 713, 0, "n2_tree", "doit", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11169
+ { GID_HOYLE5, 700, 715, 0, "c2_tree", "doit", NULL, 21, 21, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11170
+ { GID_HOYLE5, 700, 716, 0, "other1_tree", "doit", NULL, 10, 10, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11168
+ { GID_HOYLE5, 700, 716, 0, "other1_tree", "doit", NULL, 69, 69, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11168
+ { GID_HOYLE5, 700, 730, 1, "BridgeDefense", "beatTheirBest", NULL, 3, 3, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11171
+ { GID_HOYLE5, 700, 752, 0, "LeadReturn_NoTrump", "makeContractMinusAce", NULL, 2, 2, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11172
+ { GID_HOYLE5, 700, 753, 0, "LeadSeat_NoTrump", "think", sig_uninitread_hoyle5_5, 4, 4, { WORKAROUND_FAKE, 0 } }, // when playing Bridge
{ GID_HOYLE5, 1100, 18, 0, "Tray", "init", NULL, 0, 0, { WORKAROUND_FAKE, 0 } }, // when playing Poker
{ GID_HOYLE5, 1100, 1100, 0, "anteButton", "handleEvent", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when exiting Poker
{ GID_HOYLE5, 6029, 6029, 1, "ControlIcon", "select", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // Solitaire: when changing any slider in the Card Flip mini-game's options window
Commit: 56d6a383b539786837cf4fae07dcdb2e32327b5b
https://github.com/scummvm/scummvm/commit/56d6a383b539786837cf4fae07dcdb2e32327b5b
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2019-09-28T17:24:06+03:00
Commit Message:
SCI: Add The Sect of Achturan fanmade game - bug #11072
Changed paths:
engines/sci/detection_tables.h
diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h
index ea611f1..6110278 100644
--- a/engines/sci/detection_tables.h
+++ b/engines/sci/detection_tables.h
@@ -5199,6 +5199,7 @@ static const struct ADGameDescription SciGameDescriptions[] = {
FANMADE("The Farm Nightmare", "fb6cbfddaa7c055e2c3d8cf4c683a7db", 906, "50655e8b8925f717e698e08f006f40be", 338303),
FANMADE("The Gem Scenario", "ef5f61f4d2c6d31122d3e2baf89ad976", 642, "2f16be390dd90c3d7ca1c8a594ac0bfa", 244794),
FANMADE("The Legend of the Lost Jewel", "ba1bca315e3818c5626eda51bcfbcccf", 636, "9b0736d69924af0cff32a0f78db96855", 300398),
+ FANMADE("The Sect of Achturan", "130ee6a9137005cdd4a26c38fa21576a", 1626, "1faf42afbfdb782f61ceaa1ee6243b76", 961705),
FANMADE("Winter Wonderland", "c1ffaf8327462effd4ad21eeed9eea59", 504, "5d48666dc62f90d852a1d0de6e69195f", 305076),
// FIXME: The vga demo does not have a resource.000/001 file.
Commit: 8e0a12f62a12ac5781594851e3d31a00b91fa573
https://github.com/scummvm/scummvm/commit/8e0a12f62a12ac5781594851e3d31a00b91fa573
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2019-09-28T17:24:07+03:00
Commit Message:
SCI32: Extend the Hoyle 5 bridge slider workaround
This fixes the other sliders in the Bridge game. Thanks to sluicebox
Changed paths:
engines/sci/engine/workarounds.cpp
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index 52d805f..394a316 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -403,7 +403,7 @@ const SciWorkaroundEntry uninitializedReadWorkarounds[] = {
{ GID_HOYLE5, 400, 400, 1, "GinHand", "calcRuns", NULL, 4, 4, { WORKAROUND_FAKE, 0 } }, // when starting Gin
{ GID_HOYLE5, 700, 700, 1, "BridgeHand", "calcQTS", NULL, 3, 3, { WORKAROUND_FAKE, 0 } }, // when an opponent is playing in Bridge
{ GID_HOYLE5, 700, 747, 0, "LeadReturn_Trump", "think", NULL, 17, 17, { WORKAROUND_FAKE, 0 } }, // when an opponent is playing in Bridge
- { GID_HOYLE5, 700, 1115, 0, "attitudeSliderF", "select", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when adjusting the attitude slider in Bridge - bug #11166
+ { GID_HOYLE5, 700, 1115, 0, NULL, "select", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when adjusting the attitude slider in Bridge - bug #11166
{ GID_HOYLE5, 700, 710, 1, "BridgeStrategyPlay", "checkSplitTops", NULL, 10, 10, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11167
{ GID_HOYLE5, 700, 713, 0, "n2_tree", "doit", NULL, 1, 1, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11169
{ GID_HOYLE5, 700, 715, 0, "c2_tree", "doit", NULL, 21, 21, { WORKAROUND_FAKE, 0 } }, // when playing Bridge - bug #11170
More information about the Scummvm-git-logs
mailing list