aboutsummaryrefslogtreecommitdiff
path: root/engines/adl/hires2.cpp
diff options
context:
space:
mode:
authorWalter van Niftrik2017-07-25 13:53:44 +0200
committerWalter van Niftrik2017-07-25 14:08:40 +0200
commitdf2e4e8e2c02981b339235f4a429db5bb68ea4f4 (patch)
tree996cbd61580ca548f528670009846e740419fa96 /engines/adl/hires2.cpp
parent06b9cd195f1cec8d7464c0179d90bc9b92db14cb (diff)
downloadscummvm-rg350-df2e4e8e2c02981b339235f4a429db5bb68ea4f4.tar.gz
scummvm-rg350-df2e4e8e2c02981b339235f4a429db5bb68ea4f4.tar.bz2
scummvm-rg350-df2e4e8e2c02981b339235f4a429db5bb68ea4f4.zip
ADL: Add hires3 support
Game starts up, but isn't playable yet
Diffstat (limited to 'engines/adl/hires2.cpp')
-rw-r--r--engines/adl/hires2.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/adl/hires2.cpp b/engines/adl/hires2.cpp
index 9f76b0f49f..4575cf6854 100644
--- a/engines/adl/hires2.cpp
+++ b/engines/adl/hires2.cpp
@@ -170,6 +170,20 @@ void HiRes2Engine::runIntro() {
_disk->setSectorLimit(13);
}
+class HiRes3Engine : public HiResBaseEngine {
+public:
+ HiRes3Engine(OSystem *syst, const AdlGameDescription *gd);
+};
+
+HiRes3Engine::HiRes3Engine(OSystem *syst, const AdlGameDescription *gd) :
+ HiResBaseEngine(syst, gd, 138, 255, 36) {
+
+ const byte brokenRooms[] = { 18, 24, 54, 98, 102, 108 };
+
+ for (int i = 0; i < ARRAYSIZE(brokenRooms); ++i)
+ _brokenRooms.push_back(brokenRooms[i]);
+}
+
Engine *HiRes2Engine_create(OSystem *syst, const AdlGameDescription *gd) {
return new HiRes2Engine(syst, gd);
}
@@ -178,4 +192,8 @@ Engine *HiRes0Engine_create(OSystem *syst, const AdlGameDescription *gd) {
return new HiResBaseEngine(syst, gd, 43, 142, 2);
}
+Engine *HiRes3Engine_create(OSystem *syst, const AdlGameDescription *gd) {
+ return new HiRes3Engine(syst, gd);
+}
+
} // End of namespace Adl