[Scummvm-git-logs] scummvm master -> aad3745a79846b1fd7a84f4abd51bf4db95e18e9

sev- sev at scummvm.org
Sat Jun 6 22:04:07 UTC 2020


This automated email contains information about 144 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
fa37b76038 KINGDOM: Add skeletton engine
15d07a0cdd KINGDOM: Add some stubs and the main loop
f7bdd77d0c KINGDOM: Add some functions and constants (courtesy of TMM), fix the IFFDecoder for chunks with odd size
758f318c4d KINGDOM: Implement TitlePage, InitPlay, InitHelp, add a couple of STUBs
1be5596b22 KINGDOM: Add GameHelp
9016cacdd7 KINGDOM: Fix a crash, get rid of the off by one in resource handler, implement some stubs
73bbf10318 KINGDOM: Fix a bug, move pollevent to a new STUBed function
3231fda184 KINGDOM: Add GPLogic1 and a bunch of STUBs
245f67c3ef KINGDOM: Add Group Logic 2
1d97e08d1d KINGDOM: Add Group Logic 4, fix some boolean values,
b0defe793f KINGDOM: Implement some stubs
a0965a3915 KINGDOM: Hack transparency
96e34da3d6 KINGDOM: Implement DrawLocation
887d5b61a4 KINGDOM: Start to handle user input
791fc996e6 KINGDOM: Small compilation error fix
03f0fb2b9d KINGDOM: Rewrite the loading of kingart, get rid of _ArtPtr, add DrawCursor
fe7a6f8688 KINGDOM: Small typo fix
574cb0a6ca KINGDOM: Parse and set cursor correctly
9d7488e86d KINGDOM: Improve KingArt loader
abe6e93d19 KINGDOM: Fix some compiler warnings
97a430f44b KINGDOM: Rename kingartData to something more useful now
d57dc7ed4f KINGDOM: Fix 2 GCC warnings (which includes a bug fix)
a2570c7e45 KINGDOM: Implement some stubs
6c0258ceaf KINGDOM: Implement a couple of stubs, add a dummy value in MapExit
2789fcdd8c KINGDOM: Implement 3 more stubs
409efe3ca8 KINGDOM: Implement InventoryAdd and InventoryDel
f2c13960aa KINGDOM: Implement CheckMainScreen
524dbe79b5 KINGDOM: Implement WaitKey, GetAKey and CursorType
aa440acd03 KINGDOM: Initialize CurrMap to avoid a crash
845aa0ca46 KINGDOM: Fix a couple of bugs in CursorType logic, some cleanup
b32bb491a6 KINGDOM: Fix mouse cursor index
05aa762da9 KINGDOM: Small fixes
5fb2e50cf3 KINGDOM: Implement ReadMouse
1d1cb6a4aa KINGDOM: Fix typo
db34d3bf30 KINGDOM: Add some forgotten code
498fce3394 KINGDOM: Log unused _UserInput
2faef73557 KINGDOM: Fix bug in GL1
e13a3a056f KINGDOM: Add more debug traces in GL1
5547300cfd KINGDOM: Fix ReadMouse
10d4793ebe KINGDOM: Fix icon behavior
bcfd39c640 KINGDOM: Start work on GPLogic3
36df466c66 KINGDOM: Add GPL3 case 701
1de2999d6c KINGDOM: Implement GL3 opcodes 740, 780, 781, 790 and 791
63f36228d2 KINGDOM: Implement GL3 opcodes 710, 720, 741, 760, 761
1d0165c9a2 KINGDOM: Add GL3 opcodes 711 and 731
37b7b85aba KINGDOM: Add GL3 opcodes 712 and 730
bdc3d58c65 KINGDOM: Fix a duplicate variable, implement GL opcodes 661, 670, 671, 680, 690, 691 and 721
2dd21c4c3c KINGDOM: Small warning fix
74053fdc48 KINGDOM: Fix misleading code alignment in GL Opcode 731, Add opcode 552 and 582
7a854033bc KINGDOM: Implement GL3 opcodes 560, 561, 562, 570, 571, 572, 580, 581, 600 and 610
d9b46cc7b9 KINGDOM: ADD GL3 opcodes 590, 611 and 620
b5f4fd6c55 KINGDOM: Add GL3 opcodes 522, 530, 591 and 592
156b6213ee KINGDOM: Add GL3 opcodes 510, 512, 520, 521, 531, 540, 541, 542, 550 and 551
05e13b3e15 KINGDOM: Add GL3 opcodes 500, 501, 502, 511, 651, 660, 690 and 700
7228da69ad KINGDOM: Add GL3 opcodes 630, 631, 640 to 642 and 650
d35e51398e KINGDOM: Implement End Credits function
b7fe735a80 KINGDOM: Implement ProcessMapInput and DrawRect
712c080c55 KINGDOM: Implement DrawInventory
08f50c1f80 KINGDOM: Implement PlaySound
8aacb1e372 KINGDOM: Remove some useless code
b85f936748 KINGDOM: WIP work on savegames
08c86eab59 KINGDOM: Rename _Nodes items, save/load them
224af60b28 KINGDOM: Handle CTRL-C like in the original
4101e08741 KINGDOM: use boolean values when needed
db08471ed0 KINGDOM: Fix a couple of issues related to timers, add comments
c2335db693 KINGDOM: Add some code in RestoreGame functions
6410b3e615 KINGDOM: Implement SaveAS and RestoreAS
140f2f72d5 KINGDOM: Add code to handle timers
d03ed1e356 KINGDOM: Improve delay
1ba96757f9 KINGDOM: Remove code disabling game loading button
c42d08c49a KINGDOM: Fix issue in scene 11, clean up some boolean used as int
557c610138 KINGDOM: Implement DrawIcon, make a check in GL1 more coherent (style wise)
a2fe644845 KINGDOM: Improve savegame support
78c84c23d3 KINGDOM: Start renaming
dcf0d4a38b KINGDOM: Some renaming, check and fix values used for booleans
ece26af631 KINGDOM: Partial implementation of PlayMovie, some more renaming
1aab6bbd0e KINGDOM: Use SearchMan, simplify filename arrays accordingly
6fb6ca9ac1 KINGDOM: More renaming, ensure some boolean variables don't use numeric values
c6b5280185 KINGDOM: Some more renaming
fb1ba7ea4d KINGDOM: Last renaming of class variables
99974e1b3d KINGDOM: Initial all variables like in the original
2e925fb50c KINGDOM: Some renaming, consistently use boolean values for _pouch
3aeb4fb80b KINGDOM: Function renaming
ecacfbda0c KINGDOM: Finish the renaming of functions
c4cc901c63 KINGDOM: add change in setATimer for the demo
317c2970a1 KINGDOM: Add comments related to a difference in the demo version
ce6c1a2255 KINGDOM: Add a comment about a change in the demo, in displayIcon
33ef3352ce KINGDOM; Fix a bug in checkMainScreen(), implement a difference of the demo
45cafdc8aa KINGDOM: Add check in main loop to avoid GPL3 opcodes in demo
7153dd6d06 KINGDOM: Move the hardcoded logic to a separate class
9b5e4860b4 KINGDOM: Refactor hardcoded logic (WIP)
c867b3cad1 KINGDOM: Correct pointer-to-member call syntax
b384bd27d2 KINGDOM: Refactor GPL2
f14a9e7c06 KINGDOM: Refactor GPL3
36493f5bc2 KINGDOM: Refactor GPL4
a9216adcd8 KINGDOM: Start splitting Demo and Full DOS versions
8327f028c4 KINGDOM: Implement some logic changes in demo for opcodes 71 and 121
de25db242a KINGDOM: Add the display of the optional last frame , make resources optional
9c62a6a298 KINGDOM: Implement some changes in the demo for opcodes 30, 41 and sub10
5e1f1eef79 KINGDOM: Resynchronize node idx in demo by systematically adding 2 in the assembly
788bbf2a7b KINGDOM: Add GPL1_90_demo
5365e3bc53 KINGDOM: Revert previous commit after checking variable initialization, fix some initializations
70f1cb80a3 KINGDOM: Cosmetic changes after implementation check
0570d4be17 KINGDOM: Fix bug in GPL1_200
673a1660b7 KINGDOM: Fix GPL1_210 for the demo version
07a8ee2c80 KINGDOM: Remove two useless reset of _userInput in GPL1_241
4ab9b9ae21 KINGDOM: Fix bug in GPL1_221
aefbae6877 KINGDOM: Implement changes from the demo in GPL2_250
3107ad7936 KINGDOM: Move most of the GPL2 functions to initOpcodesFull
8632280e20 KINGDOM: Add GPL4_992_demo and GPL4_993_demo
e300515b52 KINGDOM: Add mouseMapMS for the demo version
5a94977c63 KINGDOM: Add _MouseMapAS for the demo version
82e562446c KINGDOM: Fix numbering of nodes in the full version. All indexes greater than 27 have been reduced by 1
aac768f353 KINGDOM: Fix code alignment in a switch
04132df7ac KINGDOM: Remove code duplication due to the renumbering of indexes
637493cc85 VIDEO: Stub for MVE decoder
585b24e4d0 KINGDOM: Fix compilation
db4852e3bd KINGDOM: Fix display init
989a8a6b89 KINGDOM: Turn Cursor position into a common::point
b835a4b213 KINGDOM: Use Common::Rect for hotspot areas
4a370dd0a0 KINGDOM: Introduce DUMMYHOTSPOT, disable some broken hotspots (bad coordinates)
c4e54246a7 KINGDOM: Remove movie name array
19386a50d5 KINGDOM: Move character death (repetitive) code to separate function
f4b43dde36 KINGDOM: Add debug command to display hotspots
c828e7548b KINGDOM: Sync with modern ScummVM
4a16632524 KINGDOM: Cleanup, optimize includes, fix some booleans initialized to 0
49080215b4 KINGDOM: Add credits for Kingdom
aff19ae96b KINGDOM: Implement preliminary MVE decoder.
7c07260ab8 KINGDOM: Replace uint16_t with uint16 in MVE decoder
e091dab0ae KINGDOM: Frames can span multiple chunks
03c2a973e4 KINGDOM: Fix MVE video format 6 decoding
25ed22d192 KINGDOM: Make audio track selectable in MVE decoder
9310bd99e4 KINGDOM: Fix readMouse clobbering quit events
c24d35d387 KINGDOM: Set audio track when playing movie
5ed3222fce KINGDOM: Support partial palette update in MVE decoder
1b5e758f30 KINGDOM: Improve placement of non-fullscreen video
2e963d8c03 KINGDOM: Fix partial palette updates in MVE decoder
cd8da6328f KINGDOM: Fix mouse debounce and keyboard input
6684724db0 KINGDOM: Fix off-by-one in mapExit table
72436eff6e KINGDOM: Add TMM in the engine credits
0291e23f0f KINGDOM: Reduce variable scope (CppCheck warning)
e39f16f28e KINGDOM: Turn a bunch of debug() into warning(), remove obsolete STUBs,
ff7c0ecb54 KINGDOM: Remove unused member in console
aad3745a79 KINGDOM: rename logic files


Commit: fa37b76038916e07ef02dbcd27b1b1a374e85ab7
    https://github.com/scummvm/scummvm/commit/fa37b76038916e07ef02dbcd27b1b1a374e85ab7
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add skeletton engine

Changed paths:
  A engines/kingdom/configure.engine
  A engines/kingdom/console.cpp
  A engines/kingdom/console.h
  A engines/kingdom/detection.cpp
  A engines/kingdom/kingdom.cpp
  A engines/kingdom/kingdom.h
  A engines/kingdom/module.mk


diff --git a/engines/kingdom/configure.engine b/engines/kingdom/configure.engine
new file mode 100644
index 0000000000..414925824c
--- /dev/null
+++ b/engines/kingdom/configure.engine
@@ -0,0 +1,3 @@
+# This file is included from the main "configure" script
+# add_engine [name] [desc] [build-by-default] [subengines] [base games] [deps]
+add_engine kingdom "Kingdom: The Far Reaches" no "" "" ""
diff --git a/engines/kingdom/console.cpp b/engines/kingdom/console.cpp
new file mode 100644
index 0000000000..27084d8563
--- /dev/null
+++ b/engines/kingdom/console.cpp
@@ -0,0 +1,32 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "gui/debugger.h"
+
+#include "kingdom/console.h"
+
+namespace Kingdom {
+
+Console::Console(Kingdom::KingdomGame *vm) : _vm(vm) {
+}
+
+} // End of namespace Kingdom
diff --git a/engines/kingdom/console.h b/engines/kingdom/console.h
new file mode 100644
index 0000000000..794bfbe39d
--- /dev/null
+++ b/engines/kingdom/console.h
@@ -0,0 +1,44 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+#ifndef KINGDOM_CONSOLE_H
+#define KINGDOM_CONSOLE_H
+
+#include "gui/debugger.h"
+
+namespace Kingdom {
+
+class KingdomGame;
+
+class Console : public GUI::Debugger {
+private:
+	KingdomGame *_vm;
+
+public:
+	bool _allowSkip;
+
+	explicit Console(Kingdom::KingdomGame *vm);
+	virtual ~Console(void) {}
+};
+}
+
+#endif
diff --git a/engines/kingdom/detection.cpp b/engines/kingdom/detection.cpp
new file mode 100644
index 0000000000..881645b925
--- /dev/null
+++ b/engines/kingdom/detection.cpp
@@ -0,0 +1,104 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "base/plugins.h"
+
+#include "engines/advancedDetector.h"
+#include "common/file.h"
+
+#include "kingdom/kingdom.h"
+
+
+namespace Kingdom {
+const char *KingdomGame::getGameId() const { return _gameDescription->gameId; }
+Common::Platform KingdomGame::getPlatform() const { return _gameDescription->platform; }
+}
+
+static const PlainGameDescriptor kingdomGames[] = {
+	{"kingdom", "Kingdom: The Far Reaches"},
+	{0, 0}
+};
+
+namespace Kingdom {
+
+static const ADGameDescription gameDescriptions[] = {
+	// Kingdom PC DOS Demo version, provided by Strangerke
+	{
+		"kingdom",
+		0,
+		AD_ENTRY1s("KINGDEMO.EXE", "2ce478fc13086d0ddb02a2867ba307dc", 167154),
+		Common::EN_ANY,
+		Common::kPlatformDOS,
+		ADGF_UNSTABLE | ADGF_DEMO,
+		GUIO1(GUIO_NONE)
+	},
+
+	// Kingdom PC DOS version v1.26 EN, provided by Strangerke
+	{
+		"kingdom",
+		0,
+		AD_ENTRY1s("KINGDOM.EXE", "64d3e03b963396ced402f3dc958765c0", 199693),
+		Common::EN_ANY,
+		Common::kPlatformDOS,
+		ADGF_UNSTABLE,
+		GUIO1(GUIO_NONE)
+	},
+
+	AD_TABLE_END_MARKER
+};
+
+} // End of namespace Kingdom
+
+class KingdomMetaEngine : public AdvancedMetaEngine {
+public:
+	KingdomMetaEngine() : AdvancedMetaEngine(Kingdom::gameDescriptions, sizeof(ADGameDescription), kingdomGames) {
+		_singleId = "kingdom";
+	}
+
+	virtual const char *getName() const {
+		return "Kingdom: The Far Reaches' Engine";
+	}
+
+	virtual const char *getOriginalCopyright() const {
+		return "Kingdom: The far Reaches (C) 1995 Virtual Image Productions";
+	}
+
+	virtual bool hasFeature(MetaEngineFeature f) const;
+	virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
+};
+
+bool KingdomMetaEngine::hasFeature(MetaEngineFeature f) const {
+	return false;
+}
+
+bool KingdomMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
+	if (desc)
+		*engine = new Kingdom::KingdomGame(syst, desc);
+
+	return desc != nullptr;
+}
+
+#if PLUGIN_ENABLED_DYNAMIC(KINGDOM)
+REGISTER_PLUGIN_DYNAMIC(KINGDOM, PLUGIN_TYPE_ENGINE, KingdomMetaEngine);
+#else
+REGISTER_PLUGIN_STATIC(KINGDOM, PLUGIN_TYPE_ENGINE, KingdomMetaEngine);
+#endif
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
new file mode 100644
index 0000000000..515025b1c5
--- /dev/null
+++ b/engines/kingdom/kingdom.cpp
@@ -0,0 +1,91 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "common/scummsys.h"
+
+#include "common/config-manager.h"
+#include "common/error.h"
+#include "graphics/cursorman.h"
+#include "graphics/surface.h"
+#include "graphics/screen.h"
+#include "graphics/palette.h"
+#include "graphics/font.h"
+#include "graphics/fontman.h"
+#include "common/system.h"
+#include "engines/util.h"
+#include "common/debug.h"
+#include "common/debug-channels.h"
+
+#include "kingdom/kingdom.h"
+
+namespace Kingdom {
+
+KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Engine(syst), _gameDescription(gameDesc) {
+	_console = nullptr;
+
+	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
+}
+
+KingdomGame::~KingdomGame() {
+	delete _console;
+}
+
+Common::Error KingdomGame::run() {
+	initGraphics(320, 200, false);
+	_console = new Console(this);
+
+	bool quit = false;
+
+	while (!quit) {
+		Common::Event event;
+		while (g_system->getEventManager()->pollEvent(event)) {
+			switch (event.type) {
+			case Common::EVENT_QUIT:
+			case Common::EVENT_RTL:
+				quit = true;
+				break;
+
+			case Common::EVENT_LBUTTONDOWN:
+				break;
+			case Common::EVENT_KEYDOWN:
+				if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+					_console->attach();
+				break;
+			default:
+				break;
+			}
+		}
+
+		g_system->updateScreen();
+		g_system->delayMillis(10);
+	}
+
+	return Common::kNoError;
+}
+
+void KingdomGame::drawScreen() {
+	//TODO
+
+	_console->onFrame();
+}
+
+} // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
new file mode 100644
index 0000000000..a1434054d2
--- /dev/null
+++ b/engines/kingdom/kingdom.h
@@ -0,0 +1,71 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef KINGDOM_KINGDOM_H
+#define KINGDOM_KINGDOM_H
+
+#include "common/scummsys.h"
+#include "common/config-manager.h"
+#include "engines/advancedDetector.h"
+#include "common/error.h"
+#include "engines/engine.h"
+
+#include "audio/audiostream.h"
+#include "audio/decoders/wave.h"
+#include "audio/mixer.h"
+#include "common/events.h"
+#include "common/file.h"
+#include "common/queue.h"
+#include "common/system.h"
+#include "common/timer.h"
+#include "graphics/palette.h"
+#include "graphics/screen.h"
+#include "graphics/surface.h"
+#include "image/bmp.h"
+
+#include "kingdom/console.h"
+
+namespace Kingdom {
+enum KingdomDebugChannels {
+	kDebugGeneral = 1 << 0
+};
+
+class KingdomGame : public Engine {
+public:
+	KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
+	~KingdomGame();
+
+	virtual Common::Error run();
+
+	// Detection related functions
+	const ADGameDescription *_gameDescription;
+	const char *getGameId() const;
+	Common::Platform getPlatform() const;
+
+private:
+	Console *_console;
+
+	void drawScreen();
+};
+} // End of namespace Kingdom
+
+#endif
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
new file mode 100644
index 0000000000..04c0c2b574
--- /dev/null
+++ b/engines/kingdom/module.mk
@@ -0,0 +1,14 @@
+MODULE := engines/kingdom
+
+MODULE_OBJS = \
+	kingdom.o \
+	console.o \
+	detection.o
+
+# This module can be built as a plugin
+ifeq ($(ENABLE_KINGDOM), DYNAMIC_PLUGIN)
+PLUGIN := 1
+endif
+
+# Include common rules
+include $(srcdir)/rules.mk


Commit: 15d07a0cdd41bf021af922c851f1dc5988b1b3e6
    https://github.com/scummvm/scummvm/commit/15d07a0cdd41bf021af922c851f1dc5988b1b3e6
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add some stubs and the main loop

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 515025b1c5..fbc1456af3 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -53,25 +53,46 @@ Common::Error KingdomGame::run() {
 	initGraphics(320, 200, false);
 	_console = new Console(this);
 
-	bool quit = false;
+	SetupPics();
+	InitTools();
+	TitlePage();
+
+	InitPlay();
+	InitHelp();
 
+	bool quit = false;
 	while (!quit) {
-		Common::Event event;
-		while (g_system->getEventManager()->pollEvent(event)) {
-			switch (event.type) {
-			case Common::EVENT_QUIT:
-			case Common::EVENT_RTL:
-				quit = true;
-				break;
-
-			case Common::EVENT_LBUTTONDOWN:
-				break;
-			case Common::EVENT_KEYDOWN:
-				if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
-					_console->attach();
-				break;
-			default:
-				break;
+		_LoopFlag = false;
+		GameHelp();
+		if (_GameMode == 0) {
+			if (_StatPlay < 250)
+				GPLogic1();
+			if (_StatPlay > 249 && _StatPlay < 500)
+				GPLogic2();
+			if (_StatPlay > 499 && _StatPlay < 900)
+				GPLogic3();
+			if (_StatPlay > 899)
+				GPLogic4();
+		}
+
+		if (!_LoopFlag) {
+			Common::Event event;
+			while (g_system->getEventManager()->pollEvent(event)) {
+				switch (event.type) {
+				case Common::EVENT_QUIT:
+				case Common::EVENT_RTL:
+					quit = true;
+					break;
+
+				case Common::EVENT_LBUTTONDOWN:
+					break;
+				case Common::EVENT_KEYDOWN:
+					if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+						_console->attach();
+					break;
+				default:
+					break;
+				}
 			}
 		}
 
@@ -79,6 +100,7 @@ Common::Error KingdomGame::run() {
 		g_system->delayMillis(10);
 	}
 
+	FadeToBlack2();
 	return Common::kNoError;
 }
 
@@ -88,4 +110,48 @@ void KingdomGame::drawScreen() {
 	_console->onFrame();
 }
 
+void KingdomGame::SetupPics() {
+	debug("STUB: SetupPics");
+}
+
+void KingdomGame::InitTools() {
+	debug("STUB: InitTools");
+}
+
+void KingdomGame::TitlePage() {
+	debug("STUB: TitlePage");
+}
+
+void KingdomGame::InitPlay() {
+	debug("STUB: InitPlay");
+}
+
+void KingdomGame::InitHelp() {
+	debug("STUB: InitHelp");
+}
+
+void KingdomGame::FadeToBlack2() {
+	debug("STUB: FadeToBlack2");
+}
+
+void KingdomGame::GameHelp() {
+	debug("STUB: GameHelp");
+}
+
+void KingdomGame::GPLogic1() {
+	debug("STUB: GPLogic1");
+}
+
+void KingdomGame::GPLogic2() {
+	debug("STUB: GPLogic2");
+}
+
+void KingdomGame::GPLogic3() {
+	debug("STUB: GPLogic3");
+}
+
+void KingdomGame::GPLogic4() {
+	debug("STUB: GPLogic4");
+}
+
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index a1434054d2..d3eff7f59a 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -45,27 +45,42 @@
 #include "kingdom/console.h"
 
 namespace Kingdom {
-enum KingdomDebugChannels {
-	kDebugGeneral = 1 << 0
-};
+	enum KingdomDebugChannels {
+		kDebugGeneral = 1 << 0
+	};
 
-class KingdomGame : public Engine {
-public:
-	KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
-	~KingdomGame();
+	class KingdomGame : public Engine {
+	public:
+		KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
+		~KingdomGame();
 
-	virtual Common::Error run();
+		virtual Common::Error run();
 
-	// Detection related functions
-	const ADGameDescription *_gameDescription;
-	const char *getGameId() const;
-	Common::Platform getPlatform() const;
+		// Detection related functions
+		const ADGameDescription *_gameDescription;
+		const char *getGameId() const;
+		Common::Platform getPlatform() const;
 
-private:
-	Console *_console;
+	private:
+		Console *_console;
 
-	void drawScreen();
-};
+		bool _LoopFlag;
+		int _GameMode;
+		int _StatPlay;
+
+		void drawScreen();
+		void SetupPics();
+		void InitTools();
+		void TitlePage();
+		void InitPlay();
+		void InitHelp();
+		void FadeToBlack2();
+		void GameHelp();
+		void GPLogic1();
+		void GPLogic2();
+		void GPLogic3();
+		void GPLogic4();
+	};
 } // End of namespace Kingdom
 
 #endif


Commit: f7bdd77d0c9c792a69b8f6df23bc2fe3bf6f4670
    https://github.com/scummvm/scummvm/commit/f7bdd77d0c9c792a69b8f6df23bc2fe3bf6f4670
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add some functions and constants (courtesy of TMM), fix the IFFDecoder for chunks with odd size

Changed paths:
  A engines/kingdom/reznames.h
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    image/iff.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index fbc1456af3..04cdd022e4 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -31,11 +31,15 @@
 #include "graphics/font.h"
 #include "graphics/fontman.h"
 #include "common/system.h"
+#include "image/iff.h"
 #include "engines/util.h"
 #include "common/debug.h"
 #include "common/debug-channels.h"
+#include "common/stream.h"
+#include "common/memstream.h"
 
 #include "kingdom/kingdom.h"
+#include "kingdom/reznames.h"
 
 namespace Kingdom {
 
@@ -43,6 +47,10 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_console = nullptr;
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
+	for (int i = 0; i < 509; i++) {
+		_RezPointers[i] = nullptr;
+		_RezSize[i] = 0;
+	}
 }
 
 KingdomGame::~KingdomGame() {
@@ -111,11 +119,19 @@ void KingdomGame::drawScreen() {
 }
 
 void KingdomGame::SetupPics() {
-	debug("STUB: SetupPics");
+	// Load Pics\kingArt.art
+	LoadAResource(0x97);
+	_ArtPtr = _RezPointers[0x97 - 1];
 }
 
 void KingdomGame::InitTools() {
 	debug("STUB: InitTools");
+	//CHECKME: InitTimers?
+	ShowPic(124);
+	InitCursor();
+	SetMouse();
+	FadeToBlack2();
+	InitMPlayer();
 }
 
 void KingdomGame::TitlePage() {
@@ -154,4 +170,54 @@ void KingdomGame::GPLogic4() {
 	debug("STUB: GPLogic4");
 }
 
+void KingdomGame::LoadAResource(int reznum) {
+	// CHECKME: Weird off-by-one here?
+	reznum--;
+
+	Common::String path = Common::String(_RezNames[reznum]);
+	path.toUppercase();
+
+	debug("Loading resource: %i (%s)\n", reznum, path.c_str());
+
+	if(!_RezSize[reznum]) {
+		Common::File *file = new Common::File();
+		if(!file->open(path))
+			error("Failed to open %s", path);
+
+		_RezSize[reznum] = file->size();
+		file->seek(0, SEEK_SET);
+		_RezPointers[reznum] = file->readStream(_RezSize[reznum]);
+		file->close();
+		delete file;
+	}
+}
+
+void KingdomGame::ShowPic(int reznum) {
+	debug("STUB ShowPic %i\n", reznum);
+	LoadAResource(reznum);
+	Image::IFFDecoder decoder;
+	if (!decoder.loadStream(*_RezPointers[reznum - 1]))
+		return;
+
+	const byte *palette = decoder.getPalette();
+	int paletteColorCount = decoder.getPaletteColorCount();
+	g_system->getPaletteManager()->setPalette(palette, 0, paletteColorCount);
+
+	const Graphics::Surface *surface = decoder.getSurface();
+	g_system->copyRectToScreen(surface->getPixels(), 320, 0, 0, 320, 200);
+	g_system->updateScreen();
+}
+
+void KingdomGame::InitCursor() {
+	debug("STUB: InitCursor");
+}
+
+void KingdomGame::SetMouse() {
+	debug("STUB: SetMouse");
+}
+
+void KingdomGame::InitMPlayer() {
+	debug("STUB: InitMPlayer");
+}
+
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index d3eff7f59a..e59410c911 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -67,6 +67,9 @@ namespace Kingdom {
 		bool _LoopFlag;
 		int _GameMode;
 		int _StatPlay;
+		Common::SeekableReadStream *_ArtPtr;
+		Common::SeekableReadStream *_RezPointers[509];
+		int _RezSize[509];
 
 		void drawScreen();
 		void SetupPics();
@@ -80,6 +83,11 @@ namespace Kingdom {
 		void GPLogic2();
 		void GPLogic3();
 		void GPLogic4();
+		void LoadAResource(int reznum);
+		void ShowPic(int reznum);
+		void InitCursor();
+		void SetMouse();
+		void InitMPlayer();
 	};
 } // End of namespace Kingdom
 
diff --git a/engines/kingdom/reznames.h b/engines/kingdom/reznames.h
new file mode 100644
index 0000000000..46bfaa5099
--- /dev/null
+++ b/engines/kingdom/reznames.h
@@ -0,0 +1,511 @@
+char *_RezNames[] = {
+	"Maps/KMAP001.lbm",
+	"Maps/KMAP002.lbm",
+	"Maps/KMAP003.lbm",
+	"Maps/KMAP004.lbm",
+	"Maps/KMAP005.lbm",
+	"Maps/KMAP006.lbm",
+	"Maps/KMAP007.lbm",
+	"Maps/KMAP008.lbm",
+	"Maps/KMAP009.lbm",
+	"Maps/KMAP010.lbm",
+	"Maps/KMAP011.lbm",
+	"Maps/KMAP012.lbm",
+	"Maps/KMAP013.lbm",
+	"Maps/KMAP014.lbm",
+	"Maps/KMAP015.lbm",
+	"Maps/KMAP016.lbm",
+	"Maps/KMAP017.lbm",
+	"Maps/KMAP018.lbm",
+	"Maps/KMAP019.lbm",
+	"Maps/KMAP020.lbm",
+	"Maps/KMAP021.lbm",
+	"Maps/KMAP022.lbm",
+	"Maps/KMAP023.lbm",
+	"Maps/KMAP024.lbm",
+	"Maps/KMAP025.lbm",
+	"Maps/KMAP026.lbm",
+	"Maps/KMAP027.lbm",
+	"Maps/KMAP028.lbm",
+	"Maps/KMAP029.lbm",
+	"Maps/KMAP030.lbm",
+	"Maps/KMAP031.lbm",
+	"Maps/KMAP032.lbm",
+	"Maps/KMAP033.lbm",
+	"Maps/KMAP034.lbm",
+	"Maps/KMAP035.lbm",
+	"Maps/KMAP036.lbm",
+	"Maps/KMAP037.lbm",
+	"Maps/KMAP038.lbm",
+	"Maps/KMAP039.lbm",
+	"Maps/KMAP040.lbm",
+	"Maps/KMAP041.lbm",
+	"Maps/KMAP042.lbm",
+	"Maps/KMAP043.lbm",
+	"Maps/KMAP044.lbm",
+	"Maps/KMAP045.lbm",
+	"Maps/KMAP046.lbm",
+	"Maps/KMAP047.lbm",
+	"Maps/KMAP048.lbm",
+	"Maps/KMAP049.lbm",
+	"Maps/KMAP050.lbm",
+	"Maps/KMAP051.lbm",
+	"Maps/KMAP052.lbm",
+	"Maps/KMAP053.lbm",
+	"Maps/KMAP054.lbm",
+	"Maps/KMAP055.lbm",
+	"Maps/KMAP056.lbm",
+	"Maps/KMAP057.lbm",
+	"Maps/KMAP058.lbm",
+	"Maps/KMAP059.lbm",
+	"Maps/KMAP060.lbm",
+	"Maps/KMAP061.lbm",
+	"Maps/KMAP062.lbm",
+	"Maps/KMAP063.lbm",
+	"Maps/KMAP064.lbm",
+	"Maps/KMAP065.lbm",
+	"Maps/KMAP066.lbm",
+	"Maps/KMAP067.lbm",
+	"Maps/KMAP068.lbm",
+	"Maps/KMAP069.lbm",
+	"Maps/KMAP070.lbm",
+	"Maps/KMAP071.lbm",
+	"Maps/KMAP072.lbm",
+	"Maps/KMAP073.lbm",
+	"Maps/KMAP074.lbm",
+	"Maps/KMAP075.lbm",
+	"Maps/KMAP076.lbm",
+	"Maps/KMAP077.lbm",
+	"Maps/KMAP078.lbm",
+	"Maps/KMAP079.lbm",
+	"Maps/KMAP080.lbm",
+	"Maps/KMAP081.lbm",
+	"Maps/KMAP082.lbm",
+	"Maps/KMAP083.lbm",
+	"Maps/KMAP084.lbm",
+	"Maps/KMAP085.lbm",
+	"Maps/KMAP086.lbm",
+	"Maps/KMAP087.lbm",
+	"Maps/KMAP088.lbm",
+	"Maps/KMAP089.lbm",
+	"Maps/KMAP090.lbm",
+	"Maps/KMAP091.lbm",
+	"Maps/KMAP092.lbm",
+	"Maps/KMAP093.lbm",
+	"Maps/KMAP094.lbm",
+	"Maps/KMAP095.lbm",
+	"Maps/KMAP096.lbm",
+	"Maps/KMAP097.lbm",
+	"Maps/KMAP098.lbm",
+	"Maps/KMAP099.lbm",
+	"Maps/KMAP100.lbm",
+	"Maps/KMAP101.lbm",
+	"Maps/KMAP102.lbm",
+	"Maps/KMAP103.lbm",
+	"Pics/KSndCard.lbm",
+	"Pics/KBook.lbm",
+	"Pics/KInterF.lbm",
+	"Pics/KGamOver.lbm",
+	"Pics/KPouch.lbm",
+	"Pics/KForest.lbm",
+	"Pics/KArtist.lbm",
+	"Pics/K4.lbm",
+	"Pics/K5.lbm",
+	"Pics/K6.lbm",
+	"Pics/KRestore.lbm",
+	"Pics/KINIT.lbm",
+	"Pics/KASKS1.lbm",
+	"Pics/KASKS2.lbm",
+	"Pics/KASKS3.lbm",
+	"Pics/KIlleSgn.lbm",
+	"Pics/KTSMAP.lbm",
+	"Pics/KPORHELH.lbm",
+	"Pics/KGSaved.lbm",
+	"Pics/KDoor.lbm",
+	"Pics/KLogo.lbm",
+	"Pics/KEOG.lbm",
+	"Pics/K8.lbm",
+	"Pics/K9.lbm",
+	"Pics/KPalace3.lbm",
+	"Pics/KBKenter.lbm",
+	"Pics/KIUNDER.lbm",
+	"Pics/KISEEING.lbm",
+	"Pics/KIRELESE.lbm",
+	"Pics/KITRAVEL.lbm",
+	"Pics/KIXTAL.lbm",
+	"Pics/KICFIRE.lbm",
+	"Pics/KIOSEAL.lbm",
+	"Pics/KISTAFF.lbm",
+	"Pics/KISWORD.lbm",
+	"Pics/KISEPTER.lbm",
+	"Pics/KIBOW.lbm",
+	"Pics/KICOINS.lbm",
+	"Pics/KICHALIC.lbm",
+	"Pics/KIWHEAT.lbm",
+	"Pics/KIRUNES.lbm",
+	"Pics/KRMACE.lbm",
+	"Pics/KRHORN.lbm",
+	"Pics/KRORB.lbm",
+	"Pics/K10.lbm",
+	"Pics/K11.lbm",
+	"Pics/KEMACE.lbm",
+	"Pics/kingArt.art",
+	"Pics/K12.lbm",
+	"Pics/K13.lbm",
+	"Pics/K14.lbm",
+	"Pics/K15.lbm",
+	"Pics/K16.lbm",
+	"Pics/K17.lbm",
+	"Pics/K18.lbm",
+	"Pics/K19.lbm",
+	"Pics/K20.lbm",
+	"Pics/KHelp01.lbm",
+	"Pics/KHelp02.lbm",
+	"Pics/KHelp03.lbm",
+	"Pics/KHelp04.lbm",
+	"Pics/KHelp05.lbm",
+	"Pics/KHelp06.lbm",
+	"Pics/KHelp07.lbm",
+	"Pics/KHelp08.lbm",
+	"Pics/KHelp09.lbm",
+	"Pics/KHelp10.lbm",
+	"Pics/KHelp11.lbm",
+	"Pics/KHelp12.lbm",
+	"Pics/K21.lbm",
+	"Pics/K22.lbm",
+	"Pics/K23.lbm",
+	"Pics/K24.lbm",
+	"Pics/K25.lbm",
+	"Pics/KTideOn.lbm",
+	"Pics/KTideOff.lbm",
+	"Pics/K26.lbm",
+	"Pics/K27.lbm",
+	"Pics/K28.lbm",
+	"Pics/K29.lbm",
+	"Pics/K30.lbm",
+	"Pics/K31.lbm",
+	"Pics/K32.lbm",
+	"Pics/K33.lbm",
+	"Pics/K34.lbm",
+	"Pics/K35.lbm",
+	"Pics/K36.lbm",
+	"Pics/K37.lbm",
+	"Pics/K38.lbm",
+	"Pics/K39.lbm",
+	"Pics/K40.lbm",
+	"Pics/K41.lbm",
+	"Pics/K42.lbm",
+	"Pics/K43.lbm",
+	"Pics/StrtDemo.lbm",
+	"Pics/EndDemo.lbm",
+	"Pics/TST.lbm",
+	"SoundS/L1.ssd",
+	"SoundS/L2.ssd",
+	"SoundS/L3.ssd",
+	"SoundS/L4.ssd",
+	"SoundS/L5.ssd",
+	"SoundS/L6.ssd",
+	"SoundS/L7.ssd",
+	"SoundS/L8.ssd",
+	"SoundS/L9.ssd",
+	"SoundS/L10.ssd",
+	"SoundS/L11.ssd",
+	"SoundS/L12.ssd",
+	"SoundS/L13.ssd",
+	"SoundS/L14.ssd",
+	"SoundS/L15.ssd",
+	"SoundS/L16.ssd",
+	"SoundS/L17.ssd",
+	"SoundS/L18.ssd",
+	"SoundS/L19.ssd",
+	"SoundS/L20.ssd",
+	"SoundS/L21.ssd",
+	"SoundS/L22.ssd",
+	"SoundS/L23.ssd",
+	"SoundS/L24.ssd",
+	"SoundS/L25.ssd",
+	"SoundS/L26.ssd",
+	"SoundS/L27.ssd",
+	"SoundS/L28.ssd",
+	"SoundS/L29.ssd",
+	"SoundS/L30.ssd",
+	"SoundS/L31.ssd",
+	"SoundS/L32.ssd",
+	"SoundS/L33.ssd",
+	"SoundS/L34.ssd",
+	"SoundS/L35.ssd",
+	"SoundS/L36.ssd",
+	"SoundS/L37.ssd",
+	"SoundS/L38.ssd",
+	"SoundS/L39.ssd",
+	"SoundS/L40.ssd",
+	"SoundS/L41.ssd",
+	"SoundS/L42.ssd",
+	"SoundS/L43.ssd",
+	"SoundS/L44.ssd",
+	"SoundS/L45.ssd",
+	"SoundS/L46.ssd",
+	"SoundS/L47.ssd",
+	"SoundS/L48.ssd",
+	"SoundS/L49.ssd",
+	"SoundS/L50.ssd",
+	"SoundM/L1.msd",
+	"SoundM/L2.msd",
+	"SoundM/L3.msd",
+	"SoundM/L4.msd",
+	"SoundM/L5.msd",
+	"SoundM/L6.msd",
+	"SoundM/L7.msd",
+	"SoundM/L8.msd",
+	"SoundM/L9.msd",
+	"SoundM/L10.msd",
+	"SoundM/L11.msd",
+	"SoundM/L12.msd",
+	"SoundM/L13.msd",
+	"SoundM/L14.msd",
+	"SoundM/L15.msd",
+	"SoundM/L16.msd",
+	"SoundM/L17.msd",
+	"SoundM/L18.msd",
+	"SoundM/L19.msd",
+	"SoundM/L20.msd",
+	"SoundM/L21.msd",
+	"SoundM/L22.msd",
+	"SoundM/L23.msd",
+	"SoundM/L24.msd",
+	"SoundM/L25.msd",
+	"SoundM/L26.msd",
+	"SoundM/L27.msd",
+	"SoundM/L28.msd",
+	"SoundM/L29.msd",
+	"SoundM/L30.msd",
+	"SoundM/L31.msd",
+	"SoundM/L32.msd",
+	"SoundM/L33.msd",
+	"SoundM/L34.msd",
+	"SoundM/L35.msd",
+	"SoundM/L36.msd",
+	"SoundM/L37.msd",
+	"SoundM/L38.msd",
+	"SoundM/L39.msd",
+	"SoundM/L40.msd",
+	"SoundM/L41.msd",
+	"SoundM/L42.msd",
+	"SoundM/L43.msd",
+	"SoundM/L44.msd",
+	"SoundM/L45.msd",
+	"SoundM/L46.msd",
+	"SoundM/L47.msd",
+	"SoundM/L48.msd",
+	"SoundM/L49.msd",
+	"SoundM/L50.msd",
+	"MovieLF/KLF001.lbm",
+	"MovieLF/KLF002.lbm",
+	"MovieLF/KLF003.lbm",
+	"MovieLF/KLF004.lbm",
+	"MovieLF/KLF005.lbm",
+	"MovieLF/KLF006.lbm",
+	"MovieLF/KLF007.lbm",
+	"MovieLF/KLF008.lbm",
+	"MovieLF/KLF009.lbm",
+	"MovieLF/KLF010.lbm",
+	"MovieLF/KLF011.lbm",
+	"MovieLF/KLF012.lbm",
+	"MovieLF/KLF013.lbm",
+	"MovieLF/KLF014.lbm",
+	"MovieLF/KLF015.lbm",
+	"MovieLF/KLF016.lbm",
+	"MovieLF/KLF017.lbm",
+	"MovieLF/KLF018.lbm",
+	"MovieLF/KLF019.lbm",
+	"MovieLF/KLF020.lbm",
+	"MovieLF/KLF021.lbm",
+	"MovieLF/KLF022.lbm",
+	"MovieLF/KLF023.lbm",
+	"MovieLF/KLF024.lbm",
+	"MovieLF/KLF025.lbm",
+	"MovieLF/KLF026.lbm",
+	"MovieLF/KLF027.lbm",
+	"MovieLF/KLF028.lbm",
+	"MovieLF/KLF029.lbm",
+	"MovieLF/KLF030.lbm",
+	"MovieLF/KLF031.lbm",
+	"MovieLF/KLF032.lbm",
+	"MovieLF/KLF033.lbm",
+	"MovieLF/KLF034.lbm",
+	"MovieLF/KLF035.lbm",
+	"MovieLF/KLF036.lbm",
+	"MovieLF/KLF037.lbm",
+	"MovieLF/KLF038.lbm",
+	"MovieLF/KLF039.lbm",
+	"MovieLF/KLF040.lbm",
+	"MovieLF/KLF041.lbm",
+	"MovieLF/KLF042.lbm",
+	"MovieLF/KLF043.lbm",
+	"MovieLF/KLF044.lbm",
+	"MovieLF/KLF045.lbm",
+	"MovieLF/KLF046.lbm",
+	"MovieLF/KLF047.lbm",
+	"MovieLF/KLF048.lbm",
+	"MovieLF/KLF049.lbm",
+	"MovieLF/KLF050.lbm",
+	"MovieLF/KLF051.lbm",
+	"MovieLF/KLF052.lbm",
+	"MovieLF/KLF053.lbm",
+	"MovieLF/KLF054.lbm",
+	"MovieLF/KLF055.lbm",
+	"MovieLF/KLF056.lbm",
+	"MovieLF/KLF057.lbm",
+	"MovieLF/KLF058.lbm",
+	"MovieLF/KLF059.lbm",
+	"MovieLF/KLF060.lbm",
+	"MovieLF/KLF061.lbm",
+	"MovieLF/KLF062.lbm",
+	"MovieLF/KLF063.lbm",
+	"MovieLF/KLF064.lbm",
+	"MovieLF/KLF065.lbm",
+	"MovieLF/KLF066.lbm",
+	"MovieLF/KLF067.lbm",
+	"MovieLF/KLF068.lbm",
+	"MovieLF/KLF069.lbm",
+	"MovieLF/KLF070.lbm",
+	"MovieLF/KLF071.lbm",
+	"MovieLF/KLF072.lbm",
+	"MovieLF/KLF073.lbm",
+	"MovieLF/KLF074.lbm",
+	"MovieLF/KLF075.lbm",
+	"MovieLF/KLF076.lbm",
+	"MovieLF/KLF077.lbm",
+	"MovieLF/KLF078.lbm",
+	"MovieLF/KLF079.lbm",
+	"MovieLF/KLF080.lbm",
+	"MovieLF/KLF081.lbm",
+	"MovieLF/KLF082.lbm",
+	"MovieLF/KLF083.lbm",
+	"MovieLF/KLF084.lbm",
+	"MovieLF/KLF085.lbm",
+	"MovieLF/KLF086.lbm",
+	"MovieLF/KLF087.lbm",
+	"MovieLF/KLF088.lbm",
+	"MovieLF/KLF089.lbm",
+	"MovieLF/KLF090.lbm",
+	"MovieLF/KLF091.lbm",
+	"MovieLF/KLF092.lbm",
+	"MovieLF/KLF093.lbm",
+	"MovieLF/KLF094.lbm",
+	"MovieLF/KLF095.lbm",
+	"MovieLF/KLF096.lbm",
+	"MovieLF/KLF097.lbm",
+	"MovieLF/KLF098.lbm",
+	"MovieLF/KLF099.lbm",
+	"MovieLF/KLF100.lbm",
+	"MovieLF/KLF101.lbm",
+	"MovieLF/KLF102.lbm",
+	"MovieLF/KLF103.lbm",
+	"MovieLF/KLF104.lbm",
+	"MovieLF/KLF105.lbm",
+	"MovieLF/KLF106.lbm",
+	"MovieLF/KLF107.lbm",
+	"MovieLF/KLF108.lbm",
+	"MovieLF/KLF109.lbm",
+	"MovieLF/KLF110.lbm",
+	"MovieLF/KLF111.lbm",
+	"MovieLF/KLF112.lbm",
+	"MovieLF/KLF113.lbm",
+	"MovieLF/KLF114.lbm",
+	"MovieLF/KLF115.lbm",
+	"MovieLF/KLF116.lbm",
+	"MovieLF/KLF117.lbm",
+	"MovieLF/KLF118.lbm",
+	"MovieLF/KLF119.lbm",
+	"MovieLF/KLF120.lbm",
+	"MovieLF/KLF121.lbm",
+	"MovieLF/KLF122.lbm",
+	"MovieLF/KLF123.lbm",
+	"MovieLF/KLF124.lbm",
+	"MovieLF/KLF125.lbm",
+	"MovieLF/KLF126.lbm",
+	"MovieLF/KLF127.lbm",
+	"MovieLF/KLF128.lbm",
+	"MovieLF/KLF129.lbm",
+	"MovieLF/KLF130.lbm",
+	"MovieLF/KLF131.lbm",
+	"MovieLF/KLF132.lbm",
+	"MovieLF/KLF133.lbm",
+	"MovieLF/KLF134.lbm",
+	"MovieLF/KLF135.lbm",
+	"MovieLF/KLF136.lbm",
+	"MovieLF/KLF137.lbm",
+	"MovieLF/KLF138.lbm",
+	"MovieLF/KLF139.lbm",
+	"MovieLF/KLF140.lbm",
+	"MovieLF/KLF141.lbm",
+	"MovieLF/KLF142.lbm",
+	"MovieLF/KLF143.lbm",
+	"MovieLF/KLF144.lbm",
+	"MovieLF/KLF145.lbm",
+	"MovieLF/KLF146.lbm",
+	"MovieLF/KLF147.lbm",
+	"MovieLF/KLF148.lbm",
+	"MovieLF/KLF149.lbm",
+	"MovieLF/KLF150.lbm",
+	"MovieLF/KLF151.lbm",
+	"MovieLF/KLF152.lbm",
+	"MovieLF/KLF153.lbm",
+	"MovieLF/KLF154.lbm",
+	"MovieLF/KLF155.lbm",
+	"MovieLF/KLF156.lbm",
+	"MovieLF/KLF157.lbm",
+	"MovieLF/KLF158.lbm",
+	"MovieLF/KLF159.lbm",
+	"MovieLF/KLF160.lbm",
+	"MovieLF/KLF161.lbm",
+	"MovieLF/KLF162.lbm",
+	"MovieLF/KLF163.lbm",
+	"MovieLF/KLF164.lbm",
+	"MovieLF/KLF165.lbm",
+	"MovieLF/KLF166.lbm",
+	"MovieLF/KLF167.lbm",
+	"MovieLF/KLF168.lbm",
+	"MovieLF/KLF169.lbm",
+	"MovieLF/KLF170.lbm",
+	"MovieLF/KLF171.lbm",
+	"MovieLF/KLF172.lbm",
+	"MovieLF/KLF173.lbm",
+	"MovieLF/KLF174.lbm",
+	"MovieLF/KLF175.lbm",
+	"MovieLF/KLF176.lbm",
+	"MovieLF/KLF177.lbm",
+	"MovieLF/KLF178.lbm",
+	"MovieLF/KLF179.lbm",
+	"MovieLF/KLF180.lbm",
+	"MovieLF/KLF181.lbm",
+	"MovieLF/KLF182.lbm",
+	"MovieLF/KLF183.lbm",
+	"MovieLF/KLF184.lbm",
+	"MovieLF/KLF185.lbm",
+	"MovieLF/KLF186.lbm",
+	"MovieLF/KLF187.lbm",
+	"MovieLF/KLF188.lbm",
+	"MovieLF/KLF189.lbm",
+	"MovieLF/KLF190.lbm",
+	"MovieLF/KLF191.lbm",
+	"MovieLF/KLF192.lbm",
+	"MovieLF/KLF193.lbm",
+	"MovieLF/KLF194.lbm",
+	"MovieLF/KLF195.lbm",
+	"MovieLF/KLF196.lbm",
+	"MovieLF/KLF197.lbm",
+	"MovieLF/KLF198.lbm",
+	"MovieLF/KLF199.lbm",
+	"MovieLF/KLF200.lbm",
+	"MovieLF/KLF201.lbm",
+	"MovieLF/KLF202.lbm",
+	"MovieLF/KLF203.lbm",
+	"MovieLF/KLF204.lbm",
+	"MovieLF/KLF205.lbm",
+	"MovieLF/KLF206.lbm",
+	"MovieLF/KLF207.lbm",
+	"MovieLF/KLF208.lbm",
+	"MovieLF/KLF209.lbm",
+};
diff --git a/image/iff.cpp b/image/iff.cpp
index e0ac10858c..3e156eec8e 100644
--- a/image/iff.cpp
+++ b/image/iff.cpp
@@ -94,8 +94,16 @@ bool IFFDecoder::loadStream(Common::SeekableReadStream &stream) {
 	}
 
 	while (1) {
+		if (stream.size() < stream.pos() + 8)
+			break;
+
 		const uint32 chunkType = stream.readUint32BE();
-		const uint32 chunkSize = stream.readUint32BE();
+		uint32 chunkSize = stream.readUint32BE();
+		// According to the format specs:
+		// "If ckData is an odd number of bytes long, a 0 pad byte follows which is not included in ckSize."
+		// => fix the length
+		if (chunkSize % 2)
+			chunkSize++;
 
 		if (stream.eos())
 			break;
@@ -114,6 +122,9 @@ bool IFFDecoder::loadStream(Common::SeekableReadStream &stream) {
 			loadBitmap(stream);
 			break;
 		default:
+			if (stream.size() < stream.pos() + (int32)chunkSize)
+				break;
+
 			stream.skip(chunkSize);
 		}
 	}


Commit: 758f318c4d7dafcbb1cf721627b358386f78e03d
    https://github.com/scummvm/scummvm/commit/758f318c4d7dafcbb1cf721627b358386f78e03d
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement TitlePage, InitPlay, InitHelp, add a couple of STUBs

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 04cdd022e4..87f3f2e398 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -45,6 +45,7 @@ namespace Kingdom {
 
 KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Engine(syst), _gameDescription(gameDesc) {
 	_console = nullptr;
+	_rnd = new Common::RandomSource("kingdom");
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
 	for (int i = 0; i < 509; i++) {
@@ -55,6 +56,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 
 KingdomGame::~KingdomGame() {
 	delete _console;
+	delete _rnd;
 }
 
 Common::Error KingdomGame::run() {
@@ -135,15 +137,72 @@ void KingdomGame::InitTools() {
 }
 
 void KingdomGame::TitlePage() {
-	debug("STUB: TitlePage");
+	if (shouldQuit())
+		return;
+
+	_FstFwd = true;
+	_NoIFScreen = true;
+	_Sound = false;
+	FadeToBlack2();
+	PlayMovie(200);
+	FadeToBlack2();
+	PlayMovie(206);
+	FadeToBlack2();
+	PlayMovie(198);
+	FadeToBlack2();
 }
 
 void KingdomGame::InitPlay() {
-	debug("STUB: InitPlay");
+	memset(_Inventory, 0xFF, 19);
+
+	//TODO: Init game flags, once the hardcoded logic is implemented and they are renamed
+
+	for (int i = 0; i < 7; i++)
+		_IconPic[i] = 89 + i;
+
+	_FrameStop = 0;
+	_GameMode = 0;
+	_DaelonCntr = 0;
+	_StatPlay = 10;
+	_Spell1 = false;
+	_Spell2 = false;
+	_Spell3 = false;
+	_ItemInhibit = false;
+	_ASMode = false;
+	_ATimerFlag = false;
+	_BTimerFlag = false;
+	_CTimerFlag = false;
+	_SkylarTimerFlag = false;
+	_ATimer = 0;
+	_BTimer = 0;
+	_CTimer = 0;
+	_SkylarTimer = 0;
+	_TideCntl = false;
+	_MapEx = false;
+	_Health = 12;
+	_HealthOld = 1;
+	_HealthTmr = 0;
+	_TreeEyeTimer = 0;
+	_TreeHGTimer = 0;
+	_TreeHGUPic = 147;
+	_TreeLeftPic = 0;
+	_TreeRightPic = 0;
+	_TreeRightSta = 1;
+	_TSIconOnly = false;
+	_LastObs = false;
+	EnAll();
+	_Pouch = true;
+	_NoIFScreen = true;
+	_NoMusic = false;
+	_FstFwd = true;
+	if (_ASPtr)
+		free(_ASPtr);
+
+	_ASPtr = nullptr;
 }
 
 void KingdomGame::InitHelp() {
-	debug("STUB: InitHelp");
+	_GameMode = 0;
 }
 
 void KingdomGame::FadeToBlack2() {
@@ -220,4 +279,12 @@ void KingdomGame::InitMPlayer() {
 	debug("STUB: InitMPlayer");
 }
 
+void KingdomGame::PlayMovie(int movieNum) {
+	debug("STUB: PlayMovie");
+}
+
+void KingdomGame::EnAll() {
+	debug("STUB: EnAll");
+}
+
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index e59410c911..546e8811e5 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -25,6 +25,7 @@
 
 #include "common/scummsys.h"
 #include "common/config-manager.h"
+#include "common/random.h"
 #include "engines/advancedDetector.h"
 #include "common/error.h"
 #include "engines/engine.h"
@@ -63,13 +64,51 @@ namespace Kingdom {
 
 	private:
 		Console *_console;
+		Common::RandomSource *_rnd;
 
 		bool _LoopFlag;
 		int _GameMode;
 		int _StatPlay;
+		bool _FstFwd;
+		bool _NoIFScreen;
+		bool _Sound;
+		int _FrameStop;
+		int _DaelonCntr;
+		bool _Spell1;
+		bool _Spell2;
+		bool _Spell3;
+		bool _ItemInhibit;
+		bool _ASMode;
+		bool _ATimerFlag;
+		bool _BTimerFlag;
+		bool _CTimerFlag;
+		bool _SkylarTimerFlag;
+		int _ATimer;
+		int _BTimer;
+		int _CTimer;
+		int _SkylarTimer;
+		bool _TideCntl;
+		bool _MapEx;
+		int _Health;
+		int _HealthOld;
+		int _HealthTmr;
+		int _TreeEyeTimer;
+		int _TreeHGTimer;
+		int _TreeHGUPic;
+		int _TreeLeftPic;
+		int _TreeRightPic;
+		int _TreeRightSta;
+		bool _TSIconOnly;
+		bool _LastObs;
+		bool _Pouch;
+		bool _NoMusic;
+		byte *_ASPtr;
+
 		Common::SeekableReadStream *_ArtPtr;
 		Common::SeekableReadStream *_RezPointers[509];
 		int _RezSize[509];
+		int8 _Inventory[19];
+		int _IconPic[7];
 
 		void drawScreen();
 		void SetupPics();
@@ -88,6 +127,8 @@ namespace Kingdom {
 		void InitCursor();
 		void SetMouse();
 		void InitMPlayer();
+		void PlayMovie(int movieNum);
+		void EnAll();
 	};
 } // End of namespace Kingdom
 


Commit: 1be5596b2219e45160db34c02e978a39f9fc1c9a
    https://github.com/scummvm/scummvm/commit/1be5596b2219e45160db34c02e978a39f9fc1c9a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GameHelp

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 87f3f2e398..d586da3e78 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -205,12 +205,151 @@ void KingdomGame::InitHelp() {
 	_GameMode = 0;
 }
 
+void KingdomGame::FadeToBlack1() {
+	debug("STUB: FadeToBlack1");
+}
+
 void KingdomGame::FadeToBlack2() {
 	debug("STUB: FadeToBlack2");
 }
 
+void KingdomGame::GameHelp_Sub43C() {
+	FadeToBlack1();
+	_CurrMap = _ASMap;
+	DrawRect(4, 17, 228, 161, 0);
+	RestoreAS();
+	_UserInput = 0;
+	_GameMode = 0;
+	_IconsClosed = false;
+	_TreeLeftSta = _OldTLS;
+	_Eye = _OldEye;
+	_Help = _OldHelp;
+	_Pouch = _OldPouch;
+}
+
 void KingdomGame::GameHelp() {
 	debug("STUB: GameHelp");
+	if (!_GameMode) {
+		if (_UserInput == 0x43C) {
+			SaveAS();
+			_ASMap = _CurrMap;
+			_CurrMap = 0;
+			FadeToBlack1();
+			DrawRect(4, 17, 228, 161, 0);
+			DrawHelpScreen();
+			_GameMode = 1;
+			_OldTLS = _TreeLeftSta;
+			_TreeLeftSta = 0;
+			_IconsClosed = true;
+			_OldEye = _Eye;
+			_Eye = false;
+			_OldHelp = _Help;
+			_OldPouch = _Pouch;
+			_Pouch = false;
+			_UserInput = 0;
+		}
+		if (_UserInput == 0x44F) {
+			SaveAS();
+			_ASMap = _CurrMap;
+			_GameMode = 2;
+			_OldTLS = _TreeLeftSta;
+			_TreeLeftSta = 0;
+			_IconsClosed = true;
+			_OldEye = _Eye;
+			_Eye = false;
+			_OldHelp = _Help;
+			_Help = false;
+			_OldPouch = _Pouch;
+			FadeToBlack1();
+			DrawRect(4, 17, 228, 161, 0);
+			DrawInventory();
+
+			if (word_2D7CC == 1 || word_2D77E == 1 || _ItemInhibit)
+				_CurrMap = 10;
+			else
+				_CurrMap = 11;
+
+			_UserInput = 0;
+		}
+	}
+	if (_GameMode != 0)
+		return;
+
+	switch(_UserInput) {
+	case 0x240:
+		FadeToBlack2();
+		//TODO: Set _quitFlag
+		break;
+	case 0x241:
+		GameHelp_Sub43C();
+		return;
+		break;
+	case 0x242:
+		if (_NoMusic) {
+			_NoMusic = false;
+			PlaySound(1);
+		} else {
+			_NoMusic = true;
+			PlaySound(0);
+		}
+		DrawHelpScreen();
+		break;
+	case 0x243: {
+		FadeToBlack2();
+		_KeyActive = false;
+		_NoIFScreen = true;
+		PlaySound(0);
+		int var = _PMovie;
+		while(!_KeyActive) {
+			PlayMovie(54);
+			FadeToBlack2();
+		}
+		_PMovie = var;
+		_NoIFScreen = false;
+		ShowPic(106);
+		DrawHelpScreen();
+		_IconRedraw = true;
+		PlaySound(1);
+		}
+		break;
+	case 0x244:
+		break;
+	case 0x245: {
+		FadeToBlack1();
+		int var = _PMovie;
+		DrawRect(4, 17, 228, 161, 0);
+		PlayMovie(205);
+		FadeToBlack1();
+		DrawRect(4, 17, 228, 161, 0);
+		PlayMovie(199);
+		FadeToBlack1();
+		DrawRect(4, 17, 228, 161, 0);
+		DrawHelpScreen();
+		_PMovie = var;
+		}
+		break;
+	case 0x246:
+		SaveGame();
+		break;
+	case 0x43B:
+	case 0x43C:
+	case 0x44F:
+		GameHelp_Sub43C();
+		return;
+	}
+
+	if (_UserInput > 0x427 && _UserInput < 0x43A)
+		FShowPic(130 + _UserInput - 0x428);
+
+	if (_UserInput == 0x260) {
+		DrawInventory();
+		if (word_2D7CC == 1 || word_2D77E == 1)
+			_CurrMap = 10;
+		else
+			_CurrMap = 11;
+
+		_UserInput = 0;
+	}
 }
 
 void KingdomGame::GPLogic1() {
@@ -267,6 +406,10 @@ void KingdomGame::ShowPic(int reznum) {
 	g_system->updateScreen();
 }
 
+void KingdomGame::FShowPic(int v1) {
+	debug("STUB: FShowPic");
+}
+
 void KingdomGame::InitCursor() {
 	debug("STUB: InitCursor");
 }
@@ -287,4 +430,31 @@ void KingdomGame::EnAll() {
 	debug("STUB: EnAll");
 }
 
+void KingdomGame::SaveAS() {
+	debug("STUB: SaveAS");
+}
+
+void KingdomGame::RestoreAS() {
+	debug("STUB: RestoreAS");
+}
+
+void KingdomGame::DrawHelpScreen() {
+	debug("STUB: DrawHelpScreen");
+}
+
+void KingdomGame::DrawRect(int v1, int v2, int v3, int v4, int v5) {
+	debug("STUB: DrawRect)");
+}
+
+void KingdomGame::DrawInventory() {
+	debug("STUB: DrawInventory");
+}
+
+void KingdomGame::SaveGame() {
+	debug("STUB: SaveGame");
+}
+
+void KingdomGame::PlaySound(int v1) {
+	debug("STUB: PlaySound");
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 546e8811e5..3a2e210808 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -103,12 +103,30 @@ namespace Kingdom {
 		bool _Pouch;
 		bool _NoMusic;
 		byte *_ASPtr;
+		int _ASMap;
+		int _CurrMap;
+		int _OldTLS;
+		int _TreeLeftSta;
+		bool _IconsClosed;
+		bool _OldEye;
+		bool _Eye;
+		bool _OldHelp;
+		bool _Help;
+		bool _OldPouch;
+		int _PMovie;
+		bool _KeyActive;
+		bool _IconRedraw;
+
+		// Game Flags - Will be renames later into _Nodes[]
+		int16 word_2D77E;
+		int16 word_2D7CC;
 
 		Common::SeekableReadStream *_ArtPtr;
 		Common::SeekableReadStream *_RezPointers[509];
 		int _RezSize[509];
 		int8 _Inventory[19];
 		int _IconPic[7];
+		uint16 _UserInput;
 
 		void drawScreen();
 		void SetupPics();
@@ -116,6 +134,7 @@ namespace Kingdom {
 		void TitlePage();
 		void InitPlay();
 		void InitHelp();
+		void FadeToBlack1();
 		void FadeToBlack2();
 		void GameHelp();
 		void GPLogic1();
@@ -124,11 +143,20 @@ namespace Kingdom {
 		void GPLogic4();
 		void LoadAResource(int reznum);
 		void ShowPic(int reznum);
+		void FShowPic(int v1);
 		void InitCursor();
 		void SetMouse();
 		void InitMPlayer();
 		void PlayMovie(int movieNum);
 		void EnAll();
+		void SaveAS();
+		void RestoreAS();
+		void DrawHelpScreen();
+		void DrawRect(int v1, int v2, int v3, int v4, int v5);
+		void DrawInventory();
+		void GameHelp_Sub43C();
+		void SaveGame();
+		void PlaySound(int v1);
 	};
 } // End of namespace Kingdom
 


Commit: 9016cacdd74f51f8dea761b39ba2aebfa519935b
    https://github.com/scummvm/scummvm/commit/9016cacdd74f51f8dea761b39ba2aebfa519935b
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix a crash, get rid of the off by one in resource handler, implement some stubs

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/reznames.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index d586da3e78..816520f248 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -48,10 +48,12 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_rnd = new Common::RandomSource("kingdom");
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
-	for (int i = 0; i < 509; i++) {
+	for (int i = 0; i < 510; i++) {
 		_RezPointers[i] = nullptr;
 		_RezSize[i] = 0;
 	}
+
+	_ASPtr = nullptr;
 }
 
 KingdomGame::~KingdomGame() {
@@ -123,7 +125,7 @@ void KingdomGame::drawScreen() {
 void KingdomGame::SetupPics() {
 	// Load Pics\kingArt.art
 	LoadAResource(0x97);
-	_ArtPtr = _RezPointers[0x97 - 1];
+	_ArtPtr = _RezPointers[0x97];
 }
 
 void KingdomGame::InitTools() {
@@ -369,9 +371,6 @@ void KingdomGame::GPLogic4() {
 }
 
 void KingdomGame::LoadAResource(int reznum) {
-	// CHECKME: Weird off-by-one here?
-	reznum--;
-
 	Common::String path = Common::String(_RezNames[reznum]);
 	path.toUppercase();
 
@@ -390,11 +389,19 @@ void KingdomGame::LoadAResource(int reznum) {
 	}
 }
 
+void KingdomGame::ReleaseAResource(int reznum) {
+	if (_RezSize[reznum]) {
+		delete _RezPointers[reznum];
+		_RezSize[reznum] = 0;
+	}
+}
+
 void KingdomGame::ShowPic(int reznum) {
-	debug("STUB ShowPic %i\n", reznum);
+	EraseCursor();
+
 	LoadAResource(reznum);
 	Image::IFFDecoder decoder;
-	if (!decoder.loadStream(*_RezPointers[reznum - 1]))
+	if (!decoder.loadStream(*_RezPointers[reznum]))
 		return;
 
 	const byte *palette = decoder.getPalette();
@@ -404,10 +411,15 @@ void KingdomGame::ShowPic(int reznum) {
 	const Graphics::Surface *surface = decoder.getSurface();
 	g_system->copyRectToScreen(surface->getPixels(), 320, 0, 0, 320, 200);
 	g_system->updateScreen();
+
+	ReleaseAResource(reznum);
 }
 
-void KingdomGame::FShowPic(int v1) {
-	debug("STUB: FShowPic");
+void KingdomGame::FShowPic(int reznum) {
+	EraseCursor();
+	FadeToBlack1();
+	DrawRect(4, 17, 228, 161, 0);
+	ShowPic(reznum);
 }
 
 void KingdomGame::InitCursor() {
@@ -427,7 +439,19 @@ void KingdomGame::PlayMovie(int movieNum) {
 }
 
 void KingdomGame::EnAll() {
-	debug("STUB: EnAll");
+	_Help = true;
+	_Eye = true;
+	_Replay = true;
+	_Pouch = true;
+	_FstFwd = true;
+}
+
+void KingdomGame::DsAll() {
+	_Help = false;
+	_Eye = false;
+	_Replay = false;
+	_Pouch = false;
+	_FstFwd = false;
 }
 
 void KingdomGame::SaveAS() {
@@ -457,4 +481,8 @@ void KingdomGame::SaveGame() {
 void KingdomGame::PlaySound(int v1) {
 	debug("STUB: PlaySound");
 }
+
+void KingdomGame::EraseCursor() {
+	debug("STUB: EraseCursor");
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 3a2e210808..8b2eb82730 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -116,14 +116,15 @@ namespace Kingdom {
 		int _PMovie;
 		bool _KeyActive;
 		bool _IconRedraw;
+		bool _Replay;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D77E;
 		int16 word_2D7CC;
 
 		Common::SeekableReadStream *_ArtPtr;
-		Common::SeekableReadStream *_RezPointers[509];
-		int _RezSize[509];
+		Common::SeekableReadStream *_RezPointers[510];
+		int _RezSize[510];
 		int8 _Inventory[19];
 		int _IconPic[7];
 		uint16 _UserInput;
@@ -142,13 +143,15 @@ namespace Kingdom {
 		void GPLogic3();
 		void GPLogic4();
 		void LoadAResource(int reznum);
+		void ReleaseAResource(int reznum);
 		void ShowPic(int reznum);
-		void FShowPic(int v1);
+		void FShowPic(int reznum);
 		void InitCursor();
 		void SetMouse();
 		void InitMPlayer();
 		void PlayMovie(int movieNum);
 		void EnAll();
+		void DsAll();
 		void SaveAS();
 		void RestoreAS();
 		void DrawHelpScreen();
@@ -157,6 +160,7 @@ namespace Kingdom {
 		void GameHelp_Sub43C();
 		void SaveGame();
 		void PlaySound(int v1);
+		void EraseCursor();
 	};
 } // End of namespace Kingdom
 
diff --git a/engines/kingdom/reznames.h b/engines/kingdom/reznames.h
index 46bfaa5099..85c5883146 100644
--- a/engines/kingdom/reznames.h
+++ b/engines/kingdom/reznames.h
@@ -1,4 +1,5 @@
 char *_RezNames[] = {
+	"",
 	"Maps/KMAP001.lbm",
 	"Maps/KMAP002.lbm",
 	"Maps/KMAP003.lbm",


Commit: 73bbf1031880d13130b7a2e4c3115c9107baa131
    https://github.com/scummvm/scummvm/commit/73bbf1031880d13130b7a2e4c3115c9107baa131
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix a bug, move pollevent to a new STUBed function

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 816520f248..ca847d451c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -54,6 +54,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	}
 
 	_ASPtr = nullptr;
+	_quit = false;
 }
 
 KingdomGame::~KingdomGame() {
@@ -72,8 +73,7 @@ Common::Error KingdomGame::run() {
 	InitPlay();
 	InitHelp();
 
-	bool quit = false;
-	while (!quit) {
+	while (!_quit) {
 		_LoopFlag = false;
 		GameHelp();
 		if (_GameMode == 0) {
@@ -87,26 +87,8 @@ Common::Error KingdomGame::run() {
 				GPLogic4();
 		}
 
-		if (!_LoopFlag) {
-			Common::Event event;
-			while (g_system->getEventManager()->pollEvent(event)) {
-				switch (event.type) {
-				case Common::EVENT_QUIT:
-				case Common::EVENT_RTL:
-					quit = true;
-					break;
-
-				case Common::EVENT_LBUTTONDOWN:
-					break;
-				case Common::EVENT_KEYDOWN:
-					if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
-						_console->attach();
-					break;
-				default:
-					break;
-				}
-			}
-		}
+		if (!_LoopFlag)
+			GetUserInput();
 
 		g_system->updateScreen();
 		g_system->delayMillis(10);
@@ -129,7 +111,6 @@ void KingdomGame::SetupPics() {
 }
 
 void KingdomGame::InitTools() {
-	debug("STUB: InitTools");
 	//CHECKME: InitTimers?
 	ShowPic(124);
 	InitCursor();
@@ -139,6 +120,7 @@ void KingdomGame::InitTools() {
 }
 
 void KingdomGame::TitlePage() {
+	// TODO: Check on QuitFlag == 2
 	if (shouldQuit())
 		return;
 
@@ -230,7 +212,6 @@ void KingdomGame::GameHelp_Sub43C() {
 }
 
 void KingdomGame::GameHelp() {
-	debug("STUB: GameHelp");
 	if (!_GameMode) {
 		if (_UserInput == 0x43C) {
 			SaveAS();
@@ -274,13 +255,13 @@ void KingdomGame::GameHelp() {
 			_UserInput = 0;
 		}
 	}
-	if (_GameMode != 0)
+	if (_GameMode == 0)
 		return;
 
 	switch(_UserInput) {
 	case 0x240:
 		FadeToBlack2();
-		//TODO: Set _quitFlag
+		//TODO: Set _quitFlag to 1
 		break;
 	case 0x241:
 		GameHelp_Sub43C();
@@ -315,6 +296,7 @@ void KingdomGame::GameHelp() {
 		}
 		break;
 	case 0x244:
+		//TODO: Set _quitFlag to 2
 		break;
 	case 0x245: {
 		FadeToBlack1();
@@ -485,4 +467,27 @@ void KingdomGame::PlaySound(int v1) {
 void KingdomGame::EraseCursor() {
 	debug("STUB: EraseCursor");
 }
+
+void KingdomGame::GetUserInput() {
+	debug("STUB: GetUserInput");
+
+	Common::Event event;
+	while (g_system->getEventManager()->pollEvent(event)) {
+		switch (event.type) {
+				case Common::EVENT_QUIT:
+				case Common::EVENT_RTL:
+					_quit = true;
+					break;
+
+				case Common::EVENT_LBUTTONDOWN:
+					break;
+				case Common::EVENT_KEYDOWN:
+					if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+						_console->attach();
+					break;
+				default:
+					break;
+		}
+	}
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 8b2eb82730..83c20bf65d 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -117,6 +117,7 @@ namespace Kingdom {
 		bool _KeyActive;
 		bool _IconRedraw;
 		bool _Replay;
+		bool _quit;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D77E;
@@ -161,6 +162,7 @@ namespace Kingdom {
 		void SaveGame();
 		void PlaySound(int v1);
 		void EraseCursor();
+		void GetUserInput();
 	};
 } // End of namespace Kingdom
 


Commit: 3231fda1842e345e8a55afc66a88e7b6718f97ca
    https://github.com/scummvm/scummvm/commit/3231fda1842e345e8a55afc66a88e7b6718f97ca
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GPLogic1 and a bunch of STUBs

Changed paths:
  A engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
new file mode 100644
index 0000000000..0cd1cc1105
--- /dev/null
+++ b/engines/kingdom/GPLogic1.cpp
@@ -0,0 +1,1319 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "kingdom/kingdom.h"
+
+namespace Kingdom {
+
+void KingdomGame::GPLogic1() {
+	switch(_StatPlay) {
+	case 10:
+		_NodeNum = 1;
+		InitPlay();
+		_Replay = 0;
+		GPLogic1_SubSP10();
+		break;
+	case 11:
+		switch(_UserInput) {
+		case 0x193:
+			_ATimer = 0;
+			_KeyActive = 0;
+			_NoIFScreen = 1;
+			PlaySound(0);
+			while(!_KeyActive) {
+				FadeToBlack2();
+				PlayMovie(54);
+			}
+			GPLogic1_SubSP10();
+			break;
+		case 0x194:
+// CHECKME	_QuitFlag = 2;
+			_quit = true;
+			break;
+		case 0x24A:
+			FadeToBlack2();
+			SetMouse();
+			EraseCursor();
+			RestoreGame();
+			break;
+		case 0x2F1:
+			EraseCursorAsm();
+			_CursorDrawn = false;
+			FadeToBlack2();
+			PlaySound(0);
+			PlayMovie(54);
+			GPLogic1_SubSP10();
+			break;
+		}
+		break;
+	case 20:
+		InitPlay();
+		_NoIFScreen = 0;
+		EraseCursorAsm();
+		_CursorDrawn = false;
+		FadeToBlack2();
+		ShowPic(106);
+		_StatPlay = 30;
+		_UserInput = 0;
+		_LoopFlag = 1;
+		break;
+	case 30:
+		_NodeNum = 3;
+		_UserInput = 0;
+		if (word_2D74C == 0) {
+			PlayMovie(177);
+			word_2D74C = 9;
+			if (!_Wizard) {
+				_StatPlay = 50;
+				_LoopFlag = true;
+				return;
+			}
+		}
+		DrawLocation();
+		if (word_2D74E != 0 && word_2D752 != 1)
+			_Sound = 1;
+		else
+			_Sound = 0;
+		
+		PlayMovie(7);
+		_StatPlay = 31;
+		_CurrMap = 10;
+		PlaySound(24);
+		_UserInput = 0;
+		break;
+	case 31:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 32;
+			_Zoom = 2;
+			ProcessMap(3, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_Pmovie);
+			break;
+		}
+		break;
+	case 32:
+		ProcessMapInput(3);
+		break;
+	case 40:
+		_NodeNum = 4;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D74E == 0)
+			PlayMovie(62);
+		if (word_2D74E == 9) {
+			PlayMovie(8);
+			_TSIconOnly = 1;
+		}
+		_CurrMap = 10;
+		PlaySound(14);
+		_StatPlay = 41;
+		break;
+	case 41:
+		switch(_UserInput) {
+		case 0x429:
+			PlayMovie(178);
+			PlayMovie(63);
+			InventoryDel(1);
+			_CurrMap = 10;
+			word_2D74E = 9;
+			_StatPlay = 41;
+			_TSIconOnly = true;
+			break;
+		case 0x43A:
+			_StatPlay = 42;
+			_Zoom = 2;
+			ProcessMap(4, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 42:
+		ProcessMapInput(4);
+		break;
+	case 50:
+		_NodeNum = 5;
+		DrawLocation();
+		if (word_2D750 != 0 && !_Resurrect) {
+			_FrameStop = 38;
+			PlayMovie(5);
+		}
+		
+		if (word_2D750 == 0)
+			PlayMovie(5);
+		
+		_Resurrect = false;
+		PlaySound(1);
+		
+		if (_Spell1 && _Spell2 && _Spell3) {
+			_Sound = 1;
+			PlayMovie(2);
+			_CurrMap = 10;
+			_StatPlay = 51;
+			_LoopFlag = true;
+		} else if (_DaelonCntr) {
+			PlayMovie(2);
+			_CurrMap = 10;
+			_StatPlay = 51;
+		} else {
+			switch(word_2D750) {
+			case 0:
+				InventoryAdd(1);
+				break;
+			case 1:
+				PlayMovie(60);
+				InventoryAdd(0);
+				_Spell1 = true;
+				break;
+			case 2:
+				PlayMovie(59);
+				InventoryAdd(2);
+				_Spell2 = true;
+				break;
+			case 3:
+				_Sound = 1;
+				PlayMovie(59);
+				InventoryAdd(3);
+				_Spell3 = true;
+				break;
+			}
+			if (_Spell1 && _Spell2 && _Spell3) {
+				PlayMovie(6);
+				_CurrMap = 7;
+				_StatPlay = 51;
+				_LoopFlag = true;
+			} else {
+				_Eye = 0;
+				PlayMovie(61);
+				PlaySound(1);
+
+				if (!_Spell1)
+					DrawPic(116);
+				
+				if (!_Spell2)
+					DrawPic(117);
+				
+				if (!_Spell3)
+					DrawPic(118);
+				
+				_CurrMap = 6;
+				_StatPlay = 53;
+				_LoopFlag = true;
+			}
+		}
+		break;
+	case 51:
+		switch(_UserInput) {
+		case 0x406:
+			_StatPlay = 70;
+			_LoopFlag = true;
+			break;
+		case 0x40A:
+			_StatPlay = 110;
+			_LoopFlag = true;
+			break;
+		case 0x417:
+			_StatPlay = 30;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 52;
+			_Zoom = 2;
+			ProcessMap(5, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 52:
+		ProcessMapInput(5);
+		break;
+	case 53:
+		switch(_UserInput) {
+		case 0x428:
+			word_2D750 = 1;
+			_DaelonCntr = 5;
+			PlayMovie(6);
+			_CurrMap = 7;
+			_StatPlay = 51;
+			_Eye = true;
+			break;
+		case 0x42A:
+			word_2D750 = 2;
+			_DaelonCntr = 5;
+			PlayMovie(6);
+			_CurrMap = 7;
+			_StatPlay = 51;
+			_Eye = true;
+			break;
+		case 0x42B:
+			word_2D750 = 3;
+			_DaelonCntr = 5;
+			PlayMovie(6);
+			_CurrMap = 7;
+			_StatPlay = 51;
+			_Eye = true;
+			break;
+		case 0x43E:
+			if (!_Spell1 && !_Spell2 && !_Spell3 && !_Wizard) {
+				PlayMovie(177);
+				DrawLocation();
+				PlayMovie(5);
+			}
+
+			PlaySound(1);
+			_Eye = false;
+			PlayMovie(61);
+
+			if (!_Spell1)
+				DrawPic(116);
+
+			if (!_Spell2)
+				DrawPic(117);
+
+			if (!_Spell3)
+				DrawPic(118);
+			break;
+		}
+		break;
+	case 60:
+		_NodeNum = 6;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D74E == 0) {
+			DsAll();
+			PlayMovie(9);
+			_StatPlay = 991;
+		} else {
+			PlayMovie(64);
+			_StatPlay = 200;
+		}
+		_CurrMap = 10;
+		_LoopFlag = true;
+		break;
+	case 70:
+		_NodeNum = 7;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D754 == 0) {
+			PlayMovie(11);
+			PlaySound(2);
+			_CurrMap = 9;
+		} else {
+			_Sound = 1;
+			PlayMovie(13);
+			PlaySound(43);
+			_CurrMap = 10;
+			_TSIconOnly = 1;
+		}
+		_StatPlay = 71;
+		break;
+	case 71:
+		switch(_UserInput) {
+		case 0x42F:
+			if (word_2D754 == 9) {
+				DisplayIcon(137);
+			} else {
+				PlayMovie(12);
+				PlaySound(30);
+				InventoryAdd(7);
+				word_2D754 = 9;
+				_CurrMap = 10;
+			}
+			_UserInput = 0;
+			break;
+		case 0x43A:
+			_StatPlay = 72;
+			_Zoom = 2;
+			ProcessMap(7, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 72:
+		ProcessMapInput(7);
+		break;
+	case 80:
+		_NodeNum = 8;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D756 == 9) {
+			PlayMovie(24);
+			PlaySound(3);
+			_CurrMap = 13;
+			_TSIconOnly = 1;
+		} else {
+			word_2D756 = 0;
+			DsAll();
+			PlayMovie(14);
+			_CurrMap = 10;
+			SetATimer();
+		}
+		_StatPlay = 81;
+		break;
+	case 81:
+		switch(_UserInput) {
+		case 0x2F1:
+			DsAll();
+			PlayMovie(15);
+			_StatPlay = 991;
+			_LoopFlag = true;
+			break;
+		case 0x429:
+			if (!word_2D756) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(18);
+				PlaySound(3);
+				InventoryDel(1);
+				_UserInput = 0;
+				_CurrMap = 13;
+				word_2D756 = 1;
+			}
+			break;
+		case 0x42A:
+			if (!word_2D756) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(18);
+				PlaySound(3);
+				InventoryDel(2);
+				_UserInput = 0;
+				_CurrMap = 13;
+				word_2D756 = 1;
+			}
+			break;
+		case 0x42C:
+			if (!word_2D756) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(16);
+				PlaySound(3);
+				word_2D756 = 9;
+				_TSIconOnly = 1;
+				_CurrMap = 13;
+			}
+			break;
+		case 0x42D:
+			if (!word_2D756) {
+				EnAll();
+				PlayMovie(17);
+				InventoryDel(5);
+				PlaySound(3);
+				_ATimer = 0;
+				_UserInput = 0;
+				_CurrMap = 13;
+				word_2D756 = 1;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 82;
+			_Zoom = 2;
+			ProcessMap(8, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			_ATimer = 0;
+			break;
+		case 0x453:
+			if (word_2D756 == 1) {
+				_StatPlay = 80;
+				_LoopFlag = true;
+			} else {
+				_StatPlay = 160;
+				_LoopFlag = true;
+				_UserInput = 0;
+			}
+			break;
+		}
+		break;
+	case 82:
+		ProcessMapInput(8);
+		break;
+	case 90:
+		if (_NodeNum == 18 && word_2D768 == 0) {
+			_StatPlay = 170;
+			_LoopFlag = true;
+			_NextNode = 90;
+		} else {
+			_NodeNum = 9;
+			DrawLocation();
+			_UserInput = 0;
+			if (word_2D758 == 0) {
+				_Sound = 0;
+				word_2D758 = 9;
+			} else
+				_Sound = 1;
+			
+			if (!_Wizard)
+				_FrameStop = 90;
+
+			PlayMovie(19);
+			PlaySound(15);
+			if (!_Wizard)
+				ShowPic(109);
+			else
+				ShowPic(319);
+
+			_CurrMap = 10;
+			_StatPlay = 91;
+		}
+		break;
+	case 91:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 92;
+			_Zoom = 2;
+			ProcessMap(9, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			if (!_Wizard)
+				_FrameStop = 90;
+
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			if (!_Wizard)
+				ShowPic(109);
+			else
+				ShowPic(319);
+			break;
+		}
+		break;
+	case 92:
+		ProcessMapInput(9);
+		break;
+	case 100:
+		if (_NodeNum == 18 && word_2D768 == 0) {
+			_StatPlay = 170;
+			_LoopFlag = true;
+			_NextNode = 100;
+		} else {
+			_NodeNum = 10;
+			DrawLocation();
+			_UserInput = 0;
+			if (word_2D75A == 1)
+				word_2D75A = 9;
+
+			if (word_2D75A != 9) {
+				_Sound = 0;
+				word_2D75A = 1;
+			} else if (_Wizard)
+				_Sound = 1;
+
+			PlayMovie(20);
+			PlaySound(41);
+			_CurrMap = 10;
+			_StatPlay = 101;
+		}
+		break;
+	case 101:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 102;
+			_Zoom = 2;
+			ProcessMap(10, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 102:
+		ProcessMapInput(10);
+		break;
+	case 110:
+		_NodeNum = 11;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D772 == 0)
+			_Sound = 0;
+		else
+			_Sound = 1;
+		PlayMovie(21);
+		PlaySound(42);
+		_CurrMap = 10;
+		_StatPlay = 111;
+		break;
+	case 111:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 112;
+			_Zoom = 1;
+			ProcessMap(11, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			PlayMovie(21);
+			break;
+		}
+		break;
+	case 112:
+		ProcessMapInput(11);
+		break;
+	case 120:
+		_NodeNum = 12;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D75E == 0) {
+			PlayMovie(22);
+			_CurrMap = 14;
+		} else {
+			PlayMovie(25);
+			_CurrMap = 15;
+		}
+		_Eye = 0;
+		PlaySound(3);
+		_StatPlay = 121;
+		break;
+	case 121:
+		switch (_UserInput) {
+		case 0x445:
+			_StatPlay = 150;
+			_LoopFlag = true;
+			_Eye = true;
+			_UserInput = 0;
+			break;
+		case 0x446:
+			_StatPlay = 80;
+			_LoopFlag = true;
+			_Eye = true;
+			_UserInput = 0;
+			break;
+		case 0x437:
+			if (word_2D75E == 9) {
+				DisplayIcon(145);
+				_UserInput = 0;
+			} else
+				GPLogic1_SubSP121();
+			break;
+		case 0x43E:
+			if (_PMovie == 023)
+				GPLogic1_SubSP121();
+			else {
+				_Sound = _LastSound;
+				PlayMovie(_PMovie);
+				PlaySound(3);
+			}
+			break;
+		}
+		break;
+	case 130:
+		_NodeNum = 13;
+		DrawLocation();
+		_UserInput = 0;
+		DsAll();
+		PlayMovie(4);
+		_StatPlay = 991;
+		_LoopFlag = true;
+		break;
+	case 140:
+		_NodeNum = 14;
+		DrawLocation();
+		_UserInput = 0;
+		if (Wound()) {
+			PlayMovie(26);
+			PlaySound(35);
+			_CurrMap = 10;
+			_StatPlay = 141;
+		} else {
+			DsAll();
+			PlayMovie(27);
+			_StatPlay = 991;
+			_LoopFlag = true;
+			_UserInput = 0;
+		}
+		break;
+	case 141:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 142;
+			_Zoom = 2;
+			ProcessMap(14, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 142:
+		ProcessMapInput(14);
+		break;
+	case 150:
+		_NodeNum = 15;
+		DrawLocation();
+		PlayMovie(28);
+		PlaySound(3);
+		_CurrMap = 16;
+		_StatPlay = 151;
+		_Eye = 0;
+		break;
+	case 151:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			_ATimer = 0;
+			break;
+		case 0x445:
+			_StatPlay = 80;
+			EnAll();
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		}
+		break;
+	case 160:
+		_NodeNum = 16;
+		DrawLocation();
+		_UserInput = 0;
+		PlayMovie(29);
+		PlaySound(3);
+		_CurrMap = 85;
+		_StatPlay = 161;
+		break;
+	case 161:
+		switch(_UserInput) {
+		case 0x198: {
+			FadeToBlack1();
+			DrawRect(4, 17, 228, 161, 0);
+			_Replay = 1;
+			int oldPMovie = _PMovie;
+			PlayMovie(208);
+			_PMovie = oldPMovie;
+			_ASMode = 0;
+			RestoreAS();
+			_Help = 1;
+			_Eye = 1;
+			_Pouch = 1;
+			_CurrMap = 85;
+			}
+			break;
+		case 0x199: {
+			FadeToBlack1();
+			DrawRect(4, 17, 228, 161, 0);
+			_Replay = 1;
+			int oldPMovie = _PMovie;
+			PlayMovie(207);
+			_PMovie = oldPMovie;
+			_ASMode = 0;
+			RestoreAS();
+			_Help = 1;
+			_Eye = 1;
+			_Pouch = 1;
+			_CurrMap = 85;
+			}
+			break;
+		case 0x19A:
+			FShowPic(110);
+			_BTimer = 190;
+			ReadMouse();
+			while(_BTimer != 0 && _MouseButton == 0) {
+				RefreshSound();
+				ReadMouse();
+			}
+			FShowPic(105);
+			break;
+		case 0x42E:
+			word_2D764 = 1;
+			word_2D766 = 1;
+			_StatPlay = 120;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 162;
+			_Zoom = 2;
+			ProcessMap(16, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			if (_PMovie > 206)
+				SaveAS();
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			if (_PMovie > 206)
+				RestoreAS();
+			break;
+		case 0x444:
+			SaveAS();
+			_Help = 0;
+			_Eye = 0;
+			_Pouch = 0;
+			_Replay = 0;
+			FShowPic(105);
+			_CurrMap = 86;
+			break;
+		case 0x445:
+			if (word_2D766 || !_Wizard) {
+				_StatPlay = 120;
+				_LoopFlag = 1;
+			}
+			break;
+		case 0x446:
+			_StatPlay = 80;
+			_LoopFlag = 1;
+			_UserInput = 0;
+			break;
+		case 0x450:
+			SaveAS();
+			FShowPic(123);
+			_BTimer = 76;
+			ReadMouse();
+
+			while(_BTimer != 0 && _MouseButton == 0) {
+				RefreshSound();
+				ReadMouse();
+			}
+
+			FadeToBlack1();
+			DrawRect(4, 17, 228, 161, 0);
+			RestoreAS();
+			break;	
+		}
+		break;
+	case 162:
+			ProcessMapInput(16);
+		break;
+	case 170:
+		if (word_2D768 == 9) {
+			_StatPlay = _NextNode;
+			_LoopFlag = true;
+		} else {
+			_NodeNum = 17;
+			DrawLocation();
+			DsAll();
+			PlayMovie(30);
+			_CurrMap = 10;
+			_StatPlay = 171;
+			SetATimer();
+			_UserInput = 0;
+		}
+		break;
+	case 171:
+		switch(_UserInput) {
+		case 0x2F1:
+			EnAll();
+			if (Wound()) {
+				_ATimer = 0;
+				_Replay = 0;
+				PlayMovie(31);
+				_StatPlay = _NextNode;
+				_LoopFlag = true;
+			} else {
+				DsAll();
+				PlayMovie(32);
+				_StatPlay = 991;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x42C:
+			_ATimer = 0;
+			_Replay = 0;
+			EnAll();
+			PlayMovie(34);
+			_UserInput = 0;
+			word_2D768 = 9;
+			_StatPlay = _NextNode;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 172:
+		if (_UserInput == 0x2F1) {
+			_StatPlay = 171;
+			_LoopFlag= true;
+			SwitchAS();
+		} else
+			ProcessMapInput(_NodeNum);
+		break;
+	case 180:
+		if ((_NodeNum != 9 && _NodeNum != 10) || (word_2D768 != 0)) {
+			_NodeNum = 18;
+			DrawLocation();
+			_UserInput = 0;
+			if (word_2D76A == 0 || word_2D76A == 1) {
+				word_2D76A = 0;
+				PlayMovie(33);
+				_CurrMap = 10;
+			}
+			if (word_2D76A == 9) {
+				PlayMovie(37);
+				_CurrMap = 19;
+				_TSIconOnly = 1;
+			}
+			PlaySound(16);
+			_StatPlay = 181;
+		} else {
+			_StatPlay = 170;
+			_LoopFlag = true;
+			_NextNode = 180;
+		}
+		break;
+	case 181:
+		switch(_UserInput) {
+		case 0x407:
+			_StatPlay = 80;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		case 0x428:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(0);
+			_UserInput = 0;
+			break;
+		case 0x429:
+			if (!word_2D76A) {
+				InventoryDel(1);
+				word_2D76A = true;
+			}
+			PlayMovie(35);
+			_UserInput = 0;
+			break;
+		case 0x42A:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(2);
+			_UserInput = 0;
+			break;
+		case 0x42C:
+			SaveAS();
+			PlayMovie(34);
+			RestoreAS();
+			break;
+		case 0x42F:
+			if (word_2D76A == 1) {
+				PlayMovie(36);
+				InventoryDel(7);
+				word_2D76A = 9;
+				_CurrMap = 19;
+				_TSIconOnly = 1;
+			} else {
+				_FrameStop = 27;
+				_FstFwd = 0;
+				PlayMovie(36);
+				_FstFwd = 1;
+			}
+			_UserInput = 0;
+			break;
+		case 0x43A:
+			_StatPlay = 182;
+			_Zoom = 2;
+			if (word_2D76A == 9)
+				ProcessMap(80, _Zoom);
+			else
+				ProcessMap(18, _Zoom);
+
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			if (_PMovie == 36 && word_2D76A != 9) {
+				_FrameStop = 27;
+				_FstFwd = 0;
+				PlayMovie(36);
+				_FstFwd = 1;
+			} else
+				PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 182:
+		ProcessMapInput(18);
+		break;
+	case 190:
+		_NodeNum = 19;
+		DrawLocation();
+		_UserInput = 0;
+		DsAll();
+		PlayMovie(38);
+		_StatPlay = 991;
+		_LoopFlag = true;
+		break;
+	case 200:
+		_NodeNum = 20;
+		DrawLocation();
+		_UserInput = 0;
+		if (!word_2D76E) {
+			PlayMovie(39);
+			IncreaseHealth();
+		} else {
+			PlayMovie(40);
+			_TideCntl = 1;
+			DrawPic(178);
+		}
+		PlaySound(42);
+		_CurrMap = 10;
+		_StatPlay = 201;
+		break;
+	case 201:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 202;
+			_Zoom = 0;
+			ProcessMap(20, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 202:
+		ProcessMapInput(20);
+		break;
+	case 210:
+		_NodeNum = 21;
+		DrawLocation();
+		_UserInput = 0;
+		if (!_Wizard)
+			word_2D770 = 9;
+
+		if (word_2D770 == 9) {
+			word_2D770 = 9;
+			PlayMovie(209);
+			PlaySound(38);
+			_CurrMap = 81;
+		} else {
+			DsAll();
+			PlayMovie(45);
+			word_2D770 = 0;
+			_CurrMap = 10;
+			SetATimer();
+		}
+		_StatPlay = 211;
+		break;
+	case 211:
+		switch(_UserInput) {
+		case 0x2F1:
+			DsAll();
+			PlayMovie(46);
+			_StatPlay = 991;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+			InventoryDel(0);
+			if (word_2D770 == 9) {
+				SaveAS();
+				PlayMovie(65);
+				RestoreAS();
+				_UserInput = 0;
+			} else {
+				PlayMovie(178);
+				DsAll();
+				PlayMovie(46);
+				_StatPlay = 991;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x42A:
+			if (!word_2D770) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(48);
+				InventoryDel(2);
+				word_2D770 = 1;
+				_TSIconOnly = 1;
+				PlaySound(38);
+				_UserInput = 0;
+			}
+			break;
+		case 0x42D:
+			if (!word_2D770) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(47);
+				PlaySound(38);
+				InventoryDel(5);
+				word_2D770 = 9;
+				_UserInput = 0;
+				_CurrMap = 81;
+				_TSIconOnly = 1;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 212;
+			_Zoom = 2;
+			ProcessMap(21, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			if (_PMovie == 65) {
+				SaveAS();
+				PlayMovie(65);
+				RestoreAS();
+				_UserInput = 0;
+			} else {
+				_Sound = _LastSound;
+				PlayMovie(_PMovie);
+			}
+			break;
+		case 0x441:
+			_StatPlay = 220;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		case 0x442:
+			if (_TSIconOnly != 0) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(49);
+				_TSIconOnly = 0;
+				PlaySound(38);
+				_UserInput = 0;
+			}
+			break;
+		case 0x448:
+			_StatPlay = 140;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		}
+		break;
+	case 212:
+		if (_UserInput == 0x2F1) {
+			_UserInput = 0;
+			_ATimer = 0;
+			_StatPlay = 211;
+			_LoopFlag = true;
+			SwitchAS();
+		}
+		ProcessMapInput(21);
+		break;
+	case 220:
+		_NodeNum = 22;
+		DrawLocation();
+		_UserInput = 0;
+		if (!word_2D772) {
+			PlayMovie(41);
+			_CurrMap = 82;
+		} else {
+			_TSIconOnly = 1;
+			PlayMovie(44);
+			_CurrMap = 10;
+		}
+		PlaySound(38);
+		_StatPlay = 221;
+		break;
+	case 221:
+		switch(_UserInput) {
+		case 0x428:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(0);
+			_UserInput = 0;
+			break;
+		case 0x429:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(1);
+			_UserInput = 0;
+			break;
+		case 0x42A:
+			PlayMovie(42);
+			PlaySound(30);
+			if (!word_2D772) {
+				InventoryDel(2);
+				InventoryAdd(4);
+				_TSIconOnly = 1;
+			}
+			_UserInput = 0;
+			_CurrMap = 10;
+			break;
+		case 0x42C:
+			if (!word_2D772) {
+				DsAll();
+				PlayMovie(43);
+				PlaySound(34);
+				_StatPlay = 991;
+				_LoopFlag = true;
+			} else {
+				PlayMovie(42);
+				PlaySound(30);
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 222;
+			_Zoom = 2;
+			ProcessMap(22, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 222:
+		ProcessMapInput(22);
+		break;
+	case 230:
+		_NodeNum = 23;
+		DrawLocation();
+		_UserInput = 0;
+		DsAll();
+		PlayMovie(50);
+		_StatPlay = 991;
+		_LoopFlag = true;
+		break;
+	case 240:
+		_NodeNum = 24;
+		DrawLocation();
+		_UserInput = 0;
+		if (!word_2D776) {
+			PlayMovie(51);
+			_CurrMap = 83;
+		} else {
+			PlayMovie(53);
+			ShowPic(119);
+			_CurrMap = 84;
+			_TSIconOnly = 1;
+		}
+		PlaySound(4);
+		_StatPlay = 241;
+		break;
+	case 241:
+		switch(_UserInput) {
+		case 0x428:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(0);
+			break;
+		case 0x429:
+			if (word_2D776 != 9) {
+				_TSIconOnly = 1;
+				PlayMovie(66);
+				InventoryDel(1);
+				_CurrMap = 84;
+				word_2D776 = 9;
+			}
+			break;
+		case 0x42A:
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			InventoryDel(2);
+			break;
+		case 0x42D:
+			if (_Inventory[5] >= 1)
+				DisplayIcon(135);
+			else {
+				SaveAS();
+				PlayMovie(52);
+				PlaySound(30);
+				RestoreAS();
+				InventoryAdd(5);
+				_UserInput = 0;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 242;
+			_Zoom = 2;
+			ProcessMap(24, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			if (_PMovie == 53) {
+				PlayMovie(53);
+				ShowPic(119);
+				_CurrMap = 84;
+			} else
+				PlayMovie(_PMovie);
+			break;
+		case 0x441:
+			_CurrMap = 10;
+			_StatPlay = 300;
+			_LoopFlag = true;
+			break;
+		}
+		_UserInput = 0;
+		break;
+	case 242:
+		ProcessMapInput(24);
+		break;
+	}
+}
+
+void KingdomGame::GPLogic1_SubSP10() {
+	PlaySound(0);
+	PlaySound(18);
+	FadeToBlack2();
+	ShowPic(115);
+	CheckSaveGame();
+	if (_SaveFile)
+		ShowPic(114);
+
+	_CurrMap = 4;
+	_UserInput = 0;
+	_ATimer = 595;
+	_StatPlay = 11;
+}
+
+void KingdomGame::GPLogic1_SubSP121() {
+	PlayMovie(23);
+	PlaySound(30);
+	_BTimer = 190;
+	ReadMouse();
+	
+	while (_BTimer != 0 && _MouseButton == 0) {
+		RefreshSound();
+		CheckMainScreen();
+		ReadMouse();
+	}
+	
+	PlaySound(23);
+	InventoryAdd(15);
+	_CurrMap = 10;
+	FShowPic(150);
+	word_2D75E = 9;
+	PlaySound(3);
+	_CurrMap = 15;
+}
+
+} // NameSpace
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index ca847d451c..add6a8859b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -336,10 +336,6 @@ void KingdomGame::GameHelp() {
 	}
 }
 
-void KingdomGame::GPLogic1() {
-	debug("STUB: GPLogic1");
-}
-
 void KingdomGame::GPLogic2() {
 	debug("STUB: GPLogic2");
 }
@@ -444,6 +440,10 @@ void KingdomGame::RestoreAS() {
 	debug("STUB: RestoreAS");
 }
 
+void KingdomGame::SwitchAS() {
+	debug("STUB: SwitchAS");
+}
+
 void KingdomGame::DrawHelpScreen() {
 	debug("STUB: DrawHelpScreen");
 }
@@ -468,6 +468,10 @@ void KingdomGame::EraseCursor() {
 	debug("STUB: EraseCursor");
 }
 
+void KingdomGame::ReadMouse() {
+	debug("STUB: ReadMouse");
+}
+
 void KingdomGame::GetUserInput() {
 	debug("STUB: GetUserInput");
 
@@ -490,4 +494,65 @@ void KingdomGame::GetUserInput() {
 		}
 	}
 }
+
+void KingdomGame::EraseCursorAsm() {
+	debug("STUB: EraseCursorAsm");
+}
+
+void KingdomGame::RestoreGame() {
+	debug("STUB: RestoreGame");
+}
+
+void KingdomGame::DrawLocation() {
+	debug("STUB: DrawLocation");
+}
+
+void KingdomGame::ProcessMap(int mapNum, int zoom) {
+	debug("STUB: ProcessMap");
+}
+
+void KingdomGame::ProcessMapInput(int mapNum) {
+	debug("STUB: ProcessMapInput");
+}
+
+void KingdomGame::InventoryDel(int item) {
+	debug("STUB: InventoryDel");
+}
+
+void KingdomGame::InventoryAdd(int item) {
+	debug("STUB: InventoryAdd");
+}
+
+void KingdomGame::DrawPic(int reznum) {
+	debug("STUB: DrawPic");
+}
+
+void KingdomGame::DisplayIcon(int reznum) {
+	debug("STUB: DisplayIcon");
+}
+
+void KingdomGame::SetATimer() {
+	debug("STUB: SetATimer");
+}
+
+bool KingdomGame::Wound() {
+	debug("STUB: Wound");
+	return false;
+}
+
+void KingdomGame::RefreshSound() {
+	debug("STUB: RefreshSound");
+}
+
+void KingdomGame::IncreaseHealth() {
+	debug("STUB: IncreaseHealth");
+}
+
+void KingdomGame::CheckSaveGame() {
+	debug("STUB: CheckSaveGame");
+}
+
+void KingdomGame::CheckMainScreen() {
+	debug("STUB: CheckMainScreen");
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 83c20bf65d..a1c6b00e14 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -72,6 +72,7 @@ namespace Kingdom {
 		bool _FstFwd;
 		bool _NoIFScreen;
 		bool _Sound;
+		bool _LastSound;
 		int _FrameStop;
 		int _DaelonCntr;
 		bool _Spell1;
@@ -118,8 +119,33 @@ namespace Kingdom {
 		bool _IconRedraw;
 		bool _Replay;
 		bool _quit;
+		int _NodeNum;
+		int _NextNode;
+		bool _CursorDrawn;
+		bool _Wizard;
+		int _Zoom;
+		int _Pmovie;
+		bool _Resurrect;
+		bool _SaveFile;
 
 		// Game Flags - Will be renames later into _Nodes[]
+		int16 word_2D74C;
+		int16 word_2D74E;
+		int16 word_2D750;
+		int16 word_2D752;
+		int16 word_2D754;
+		int16 word_2D756;
+		int16 word_2D758;
+		int16 word_2D75A;
+		int16 word_2D75E;
+		int16 word_2D764;
+		int16 word_2D766;
+		int16 word_2D768;
+		int16 word_2D76A;
+		int16 word_2D76E;
+		int16 word_2D770;
+		int16 word_2D772;
+		int16 word_2D776;
 		int16 word_2D77E;
 		int16 word_2D7CC;
 
@@ -129,6 +155,7 @@ namespace Kingdom {
 		int8 _Inventory[19];
 		int _IconPic[7];
 		uint16 _UserInput;
+		uint16 _MouseButton;
 
 		void drawScreen();
 		void SetupPics();
@@ -140,6 +167,8 @@ namespace Kingdom {
 		void FadeToBlack2();
 		void GameHelp();
 		void GPLogic1();
+		void GPLogic1_SubSP10();
+		void GPLogic1_SubSP121();
 		void GPLogic2();
 		void GPLogic3();
 		void GPLogic4();
@@ -163,6 +192,23 @@ namespace Kingdom {
 		void PlaySound(int v1);
 		void EraseCursor();
 		void GetUserInput();
+		void EraseCursorAsm();
+		void RestoreGame();
+		void DrawLocation();
+		void ProcessMap(int mapNum, int zoom);
+		void ProcessMapInput(int mapNum);
+		void InventoryDel(int item);
+		void InventoryAdd(int item);
+		void DrawPic(int reznum);
+		void DisplayIcon(int reznum);
+		void SetATimer();
+		bool Wound();
+		void ReadMouse();
+		void RefreshSound();
+		void SwitchAS();
+		void IncreaseHealth();
+		void CheckSaveGame();
+		void CheckMainScreen();
 	};
 } // End of namespace Kingdom
 
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index 04c0c2b574..de144fce0f 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -2,6 +2,7 @@ MODULE := engines/kingdom
 
 MODULE_OBJS = \
 	kingdom.o \
+	GPLogic1.o \
 	console.o \
 	detection.o
 


Commit: 245f67c3ef0746ba13f68a80bea012e71db3b39c
    https://github.com/scummvm/scummvm/commit/245f67c3ef0746ba13f68a80bea012e71db3b39c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add Group Logic 2

Changed paths:
  A engines/kingdom/GPLogic2.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
new file mode 100644
index 0000000000..f72b153cdf
--- /dev/null
+++ b/engines/kingdom/GPLogic2.cpp
@@ -0,0 +1,1238 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "kingdom/kingdom.h"
+
+namespace Kingdom {
+
+void KingdomGame::GPLogic2() {
+	switch(_StatPlay) {
+	case 250: {
+		bool highNode = (_NodeNum > 25);
+		_NodeNum = 25;
+
+		DrawLocation();
+		DsAll();
+		if (word_2D776 != 0 || highNode) {
+			_Eye = 1;
+			PlayMovie(72);
+			_ATimerFlag = 0;
+			_ATimer = 114;
+			PlaySound(34);
+			_UserInput = 0;
+			_CurrMap = 10;
+			_StatPlay = 251;
+		} else {
+			_FrameStop = 67;
+			PlayMovie(72);
+			DsAll();
+			PlayMovie(73);
+			DsAll();
+			_StatPlay = 991;
+			_LoopFlag = true;
+		}
+		}
+		break;
+	case 251:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			PlayMovie(73);
+			DsAll();
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 252;
+			_Zoom = 2;
+			ProcessMap(30, _Zoom);
+			SetATimer();
+			_UserInput = 0;
+			break;
+		}
+		break;
+	case 252:
+		ProcessMapInput(30);
+		break;
+	case 260:
+		_NodeNum = 26;
+		DrawLocation();
+		DsAll();
+		PlayMovie(74);
+		_CurrMap = 10;
+		SetATimer();
+		_StatPlay = 261;
+		_UserInput = 0;
+		break;
+	case 261:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(75);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+			InventoryDel(0);
+			_ATimer = 0;
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			SetATimer();
+			_UserInput = 0;
+			break;
+		case 0x42A:
+			InventoryDel(2);
+			_ATimer = 0;
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			SetATimer();
+			_UserInput = 0;
+			break;
+		case 0x42C:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(76);
+			word_2D77A = 1;
+			_UserInput = 0;
+			_StatPlay = 290;
+			_LastObs = 1;
+			_LastObstacle = 29;
+			_LoopFlag = true;
+			break;
+		case 0x42D:
+			if (Wound()) {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(77);
+				PlaySound(34);
+				InventoryDel(5);
+				_StatPlay = 300;
+				_LoopFlag = true;
+			} else {
+				DsAll();
+				PlayMovie(78);
+				_StatPlay = 992;
+				_LoopFlag = true;
+			}
+			break;
+		}
+		break;
+	case 270:
+		_NodeNum = 27;
+		DrawLocation();
+		if (word_2D77C == 1)
+			word_2D77C = 9;
+		if (word_2D77C == 9 || word_2D77E != 0) {
+			if (_Wizard)
+				_Sound = 1;
+		} else {
+			_Sound = 0;
+			word_2D77C = 1;
+		}
+		PlayMovie(80);
+		PlaySound(18);
+		_CurrMap = 10;
+		_StatPlay = 271;
+		word_2D77C = 1;
+		_UserInput = 0;
+		break;
+	case 271:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 272;
+			_Zoom = 2;
+			ProcessMap(27, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 272:
+		ProcessMapInput(27);
+		break;
+	case 280:
+		_NodeNum = 28;
+		DrawLocation();
+		_UserInput = 0;
+		DsAll();
+		_FstFwd = 0;
+		PlayMovie(81);
+		_CurrMap = 10;
+		word_2D77E = word_2D792 = 1;
+		_StatPlay = _RobberyNode * 10;
+		EnAll();
+		_LoopFlag = true;
+		break;
+	case 290:
+		_OldNode = _NodeNum;
+		if (!_Wizard) {
+			word_2D77A = 9;
+			word_2D780 = 8;
+		}
+		if (word_2D77A == 0) {
+			_StatPlay = 260;
+			_LoopFlag = true;
+			_NextNode = 29;
+		} else {
+			if (word_2D77A == 2)
+				PlayMovie(79);
+			_NodeNum = 29;
+			if (word_2D77A <= 2 || !ChkDesertObstacles()) {
+				DrawLocation();
+				word_2D77A++;
+				_UserInput = 0;
+				switch (word_2D780) {
+				case 0:
+					_Sound = 0;
+					PlayMovie(82);
+					_CurrMap = 89;
+					word_2D780 = 1;
+					break;
+				case 1:
+					_Sound = 1;
+					PlayMovie(82);
+					_CurrMap = 89;
+					word_2D780 = 0;
+					break;
+				case 8:
+					_Sound = 0;
+					PlayMovie(85);
+					_CurrMap = 10;
+					word_2D780 = 9;
+					_TSIconOnly = 1;
+					break;
+				default:
+					_Sound = 1;
+					PlayMovie(85);
+					_CurrMap = 10;
+					_TSIconOnly = 1;
+					break;
+				}
+				PlaySound(17);
+				_StatPlay = 291;
+			}
+		}
+			
+		break;
+	case 291:
+		switch(_UserInput) {
+		case 0x431:
+			_TSIconOnly = 1;
+			PlayMovie(83);
+			PlaySound(30);
+			InventoryAdd(10);
+			word_2D780 = 8;
+			_UserInput = 0;
+			_CurrMap = 10;
+			break;
+		case 0x432:
+			if (word_2D780 >= 8)
+				DisplayIcon(140);
+			else {
+				DsAll();
+				PlayMovie(84);
+				_StatPlay = 992;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 292;
+			_Zoom = 2;
+			ProcessMap(29, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 292:
+		ProcessMapInput(29);
+		break;
+	case 300:
+		if (word_2D776 == 0) {
+			_LoopFlag = true;
+			_StatPlay = 250;
+		} else {
+			_NodeNum = 30;
+			if (!ChkDesertObstacles()) {
+				DrawLocation();
+				PlayMovie(86);
+				PlaySound(18);
+				_CurrMap = 10;
+				_StatPlay = 301;
+			}
+		}
+		break;
+	case 301:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 302;
+			_Zoom = 2;
+			ProcessMap(30, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		} 
+		break;
+	case 302:
+		ProcessMapInput(30);
+		break;
+	case 310:
+		_OldNode = _NodeNum;
+		_NodeNum = 31;
+		if (!ChkDesertObstacles()) {
+			DrawLocation();
+			PlayMovie(67);
+			PlaySound(18);
+			_CurrMap = 90;
+			_StatPlay = 311;
+			word_2D784 = 1;
+			_ATimer = 0;
+			_UserInput = 0;
+		}
+		break;
+	case 311:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 312;
+			_Zoom = 2;
+			ProcessMap(31, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x449:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(68);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;			
+		}
+		break;
+	case 312:
+		ProcessMapInput(31);
+		break;
+	case 320:
+		_OldNode = _NodeNum;
+		_NodeNum = 32;
+		DrawLocation();
+		_UserInput = 0;
+		IncreaseHealth();
+		if (word_2D786 != 9 && _Wizard != 0) {
+			_Sound = 0;
+			word_2D786 = 9;
+		} else {
+			_Sound = 1;
+			word_2D786 = 1;
+		}
+		PlayMovie(87);
+		PlaySound(18);
+		_CurrMap = 10;
+		_StatPlay = 321;
+		break;
+	case 321:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 322;
+			_Zoom = 2;
+			ProcessMap(32, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 322:
+		ProcessMapInput(32);
+		break;
+	case 330:
+		_OldNode = _NodeNum;
+		_NodeNum = 33;
+		if (!ChkDesertObstacles()) {
+			DrawLocation();
+			_UserInput = 0;
+			if (word_2D784 == 0)
+				_Sound = 0;
+			else
+				_Sound = 1;
+			PlayMovie(88);
+			PlaySound(18);
+			_CurrMap = 10;
+			_StatPlay = 331;
+		}
+		break;
+	case 331:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 332;
+			_Zoom = 2;
+			ProcessMap(33, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 332:
+		ProcessMapInput(33);
+		break;
+	case 340:
+		if (word_2D78C == 0) {
+			_StatPlay = 350;
+			_LoopFlag = true;
+			_NextNode = 34;
+		} else {
+			_OldNode = _NodeNum;
+			_NodeNum = 34;
+			if (!ChkDesertObstacles()) {
+				DrawLocation();
+				_UserInput = 0;
+				if (word_2D78A == 9 || word_2D796 == 0 || _Wizard == 0) {
+					PlayMovie(91);
+					_CurrMap = 92;
+				} else {
+					PlayMovie(89);
+					ShowPic(389);
+					_CurrMap = 91;
+				}
+				if (word_2D78A == 9)
+					_TSIconOnly = 1;
+				PlaySound(26);
+				_StatPlay = 341;
+			}
+		}
+		break;
+	case 341:
+		switch(_UserInput) {
+		case 0x431:
+			if (word_2D78A == 9)
+				DisplayIcon(139);
+			else {
+				PlayMovie(90);
+				InventoryAdd(9);
+				word_2D78A = 9;
+				_CurrMap = 93;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 342;
+			_Zoom = 2;
+			ProcessMap(34, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			if (_PMovie == 89)
+				ShowPic(389);
+			break;
+		case 0x445:
+			_StatPlay = 410;
+			_UserInput = 0;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			_StatPlay = 400;
+			_UserInput = 0;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 342:
+		ProcessMapInput(34);
+		break;
+	case 350:
+		if (_Wizard == 0)
+			word_2D78C = 1;
+		if (word_2D78C == 1) {
+			_StatPlay = _NextNode * 10;
+			_LoopFlag = true;
+		} else {
+			_NodeNum = 35;
+			DrawLocation();
+			DsAll();
+			PlayMovie(92);
+			_CurrMap = 94;
+			SetATimer();
+			_UserInput = 0;
+			_StatPlay = 351;
+		}
+		break;
+	case 351:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+			InventoryDel(_UserInput - 0x428);
+			_ATimer = 0;
+			PlayMovie(178);
+			_UserInput = 0x2F1;
+			_LoopFlag = true;
+		// No break on purpose
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(93);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x42A:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(179);
+			InventoryDel(2);
+			word_2D78C = 1;
+			_UserInput = 0;
+			_StatPlay = _NextNode * 10;
+			_LastObs = 1;
+			_LastObstacle = _NextNode;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 360:
+		_NodeNum = 36;
+		DrawLocation();
+		if (word_2D78E == 0)
+			_Sound = 0;
+		else
+			_Sound = 1;
+			_FrameStop = 185;
+			DsAll();
+			PlayMovie(94);
+			_CurrMap = 95;
+			SetATimer();
+			_UserInput = 0;
+			_StatPlay = 361;
+		break;
+	case 361:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(95);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(97);
+			InventoryDel(0);
+			PlaySound(5);
+			word_2D78E = 1;
+			_UserInput = 0;
+			_CurrMap = 10;
+			if (word_2D79A == 0) {
+				_StatPlay = 420;
+				_OldNode = _NodeNum;
+				_NodeNum = 42;
+				GPLogic2_SubSP361();
+			} else {
+				_TSIconOnly = 1;
+			}
+			break;
+		case 0x42A:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(98);
+			InventoryDel(2);
+			PlaySound(5);
+			word_2D78E = 1;
+			_UserInput = 0;
+			_CurrMap = 10;
+			_TSIconOnly = 1;
+			break;
+		case 0x42E:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(100);
+			InventoryDel(6);
+			PlaySound(5);
+			word_2D78E = 1;
+			_UserInput = 0;
+			_CurrMap = 10;
+			_TSIconOnly = 1;
+			break;
+		case 0x431:
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(96);
+			PlaySound(5);
+			word_2D78E = 9;
+			_UserInput = 0;
+			_CurrMap = 10;
+			_StatPlay = 420;
+			_OldNode = _NodeNum;
+			_NodeNum = 42;
+			GPLogic2_SubSP361();
+			break;
+		case 0x437:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(99);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 362;
+			_Zoom = 2;
+			ProcessMap(36, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 362:
+		ProcessMapInput(36);
+		break;
+	case 370:
+		_NodeNum = 37;
+		DrawLocation();
+		_UserInput = 0;
+		word_2D790 = 0;
+		PlayMovie(102);
+		PlaySound(20);
+		_CurrMap = 109;
+		_StatPlay = 371;
+		break;
+	case 371:
+		switch(_UserInput) {
+		case 0x413:
+			_StatPlay = 440;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 372;
+			_Zoom = 2;
+			ProcessMap(37, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 372:
+		ProcessMapInput(37);
+		break;
+	case 380:
+		_OldNode = _NodeNum;
+		_NodeNum =38;
+		if (!ChkDesertObstacles()) {
+			DrawLocation();
+			_UserInput = 0;
+			PlayMovie(159);
+			_CurrMap = 10;
+			PlaySound(7);
+			word_2D792 = 1;
+			_StatPlay = 381;
+		}
+		break;
+	case 381:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			if (_Wizard && word_2D792 != 9) {
+				InventoryDel(_UserInput - 0x428);
+				SaveAS();
+				PlayMovie(178);
+				RestoreAS();
+			}
+			_UserInput = 0;
+			break;
+		case 0x430:
+			if (_Wizard && word_2D792 != 9) {
+				DsAll();
+				PlayMovie(162);
+				_StatPlay = 992;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x433:
+			if (_Wizard && word_2D792 != 9) {
+				PlayMovie(161);
+				InventoryDel(11);
+				word_2D7AA = 0;
+				_UserInput = 0;
+			}
+			_UserInput = 0;
+			break;
+		case 0x435:
+			if (_Wizard && word_2D792 != 9) {
+				PlayMovie(160);
+				InventoryDel(13);
+				word_2D792 = 9;
+				word_2D7BA = 0;
+				_UserInput = 0;
+				_TSIconOnly = 1;
+				_CurrMap = 108;
+			}
+			break;
+		case 0x437:
+			if (_Wizard && word_2D792 != 9) {
+				PlayMovie(163);
+				InventoryDel(15);
+				word_2D75E = 0;
+			}
+			_UserInput = 0;
+			break;
+		case 0x43A:
+			_StatPlay = 382;
+			_Zoom = 2;
+			ProcessMap(38, _Zoom);
+			_UserInput = 0;
+		break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x456:
+			_StatPlay = 370;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 382:
+		if (_Wizard && (word_2D792 != 9) && (_UserInput == 0x413))
+			_UserInput = 0;
+
+		ProcessMapInput(38);
+		break;
+	case 390:
+		_NodeNum = 39;
+		DrawLocation();
+		_ATimer = 0;
+		DsAll();
+		PlayMovie(104);
+		PlaySound(34);
+		_StatPlay = 992;
+		_LoopFlag = true;
+		break;
+	case 400:
+		_NodeNum = 40;
+		if (!_Wizard)
+			word_2D796 = 2;
+		if (word_2D796) {
+			if (word_2D796 == 1)
+				word_2D796 = 2;
+			else {
+				word_2D796 = 1;
+				_Sound = 1;
+			}
+		} else {
+			DsAll();
+			PlayMovie(105);
+			_CurrMap = 10;
+			SetATimer();
+		}
+		
+		_UserInput = 0;
+		_StatPlay = 401;
+		break;
+	case 401:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(106);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			if (!word_2D796) {
+				InventoryDel(_UserInput - 0x428);
+				_ATimer = 0;
+				PlayMovie(178);
+				_UserInput = 753;
+				_LoopFlag = true;
+				_CurrMap = 10;
+			}
+			break;
+		case 0x42C:
+			if (!word_2D796) {
+				_ATimer = 0;
+				DsAll();
+				PlayMovie(108);
+				_UserInput = 0;
+				_StatPlay = 992;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x42E:
+			if (!word_2D796) {
+				_ATimer = 0;
+				PlayMovie(109);
+				InventoryDel(6);
+				word_2D79A = 0;
+				_UserInput = 0;
+				_ATimer = 136;
+			}
+			break;
+		case 0x437:
+			if (!word_2D796) {
+				_ATimer = 0;
+				_Help = 1;
+				_Replay = 1;
+				_Pouch = 1;
+				_FstFwd = 1;
+				PlayMovie(107);
+				PlaySound(26);
+				word_2D796 = 1;
+				_UserInput = 0;
+				_CurrMap = 96;
+				_TSIconOnly = 1;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x43E:
+			_ATimer = 0;
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x441:
+			_StatPlay = 460;
+			_CurrMap = 10;
+			_UserInput = 0;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 402:
+		_ATimer = 0;
+		ProcessMapInput(40);
+		break;
+	case 410:
+		_NodeNum = 41;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D796)
+			_Sound = 1;
+
+		_Eye = 0;
+		PlayMovie(111);
+		PlaySound(26);
+		_CurrMap = 97;
+		_StatPlay = 411;
+		break;
+	case 411:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			if (_PMovie == 120) {
+				SaveAS();
+				_FrameStop = 50;
+				PlayMovie(120);
+				_BTimer = 34;
+				while(_BTimer != 0) {
+					RefreshSound();
+					CheckMainScreen();
+				}
+				RestoreAS();
+			}
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_UserInput = 0;
+			_LoopFlag = true;
+			_CurrMap = 10;
+			_StatPlay = 450;
+			break;
+		case 0x446:
+			_UserInput = 0;
+			_LoopFlag = true;
+			_CurrMap = 10;
+			_StatPlay = 460;
+			break;
+		}
+		break;
+	case 420:
+		if (word_2D78E == 9 || word_2D77E == 1 || !_Wizard) {
+			_OldNode = _NodeNum;
+			_NodeNum = 42;
+			if (!ChkDesertObstacles()) {
+				DrawLocation();
+				GPLogic2_SubSP361();
+			}
+		} else {
+			_StatPlay = 360;
+			_LoopFlag = true;
+		}
+		break;
+	case 421:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			_UserInput = 0;
+			break;
+		case 0x42E:
+			if (word_2D79A)
+				DisplayIcon(136);
+			else {
+				if (word_2D78A == 9) {
+					_Sound = 0;
+				} else {
+					_Sound = 1;
+				}
+				PlayMovie(113);
+				InventoryAdd(6);
+				word_2D79A = 9;
+				_CurrMap = 10;
+			}
+			_TSIconOnly = 1;
+			break;
+		case 0x43A:
+			_StatPlay = 422;
+			_Zoom = 2;
+			ProcessMap(42, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		
+		}
+		break;
+	case 422:
+		ProcessMapInput(42);
+		break;
+	case 430:
+		_NodeNum = 43;
+		DrawLocation();
+		_Eye = 0;
+		_UserInput = 0;
+		if (word_2D79C == 9) {
+			_TSIconOnly = 1;
+			PlayMovie(118);
+			_CurrMap = 80;
+		} else if (_Inventory[12] <= 0) {
+			PlayMovie(115);
+			ShowPic(415);
+			_CurrMap = 78;
+			if (!_SkylarTimer)
+				_SkylarTimer = 5400;
+		} else {
+			_SkylarTimer = 0;
+			PlayMovie(116);
+			PlaySound(25);
+			InventoryDel(12);
+			InventoryAdd(16);
+			word_2D79C = 9;
+			_CurrMap = 79;
+			_TSIconOnly = 1;
+		}
+		_StatPlay = 431;
+		PlaySound(20);
+		_Eye = 0;
+		break;
+	case 431:
+		switch(_UserInput) {
+			case 0x40A:
+				PlayMovie(10);
+				_StatPlay = 200;
+				if (word_2D79C != 9)
+					word_2D76E = 1;
+				_CurrMap = 10;
+				_LoopFlag = true;
+				break;
+			case 0x414:
+				PlayMovie(10);
+				_StatPlay = 390;
+				_CurrMap = 10;
+				_LoopFlag = true;
+				break;
+			case 0x41D:
+				PlayMovie(10);
+				_StatPlay = 500;
+				_CurrMap = 10;
+				_LoopFlag = true;
+				break;
+			case 0x422:
+				PlayMovie(10);
+				_StatPlay = 380;
+				_CurrMap = 10;
+				_LoopFlag = true;
+				break;
+			case 0x428:
+			case 0x429:
+			case 0x42A:
+				if (word_2D79C != 9) {
+					InventoryDel(_UserInput - 0x428);
+					SaveAS();
+					PlayMovie(178);
+					RestoreAS();
+				}
+				break;
+			case 0x438:
+				if (word_2D79C == 9) {
+					DisplayIcon(146);
+				} else {
+					DsAll();
+					PlayMovie(117);
+					_StatPlay = 992;
+					_LoopFlag = true;
+				}
+				break;
+			case 0x43E:
+				break;
+		}
+		break;
+	case 440:
+		_NodeNum = 44;
+		DrawLocation();
+		_UserInput = 0;
+		if (_Inventory[12] > 0 || word_2D79C == 9)
+			_Sound = 1;
+
+		PlayMovie(119);
+		PlaySound(20);
+		_CurrMap = 100;
+		_StatPlay = 441;
+		break;
+	case 441:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 442;
+			_Zoom = 2;
+			ProcessMap(44, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x452:
+			_StatPlay = 430;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 442:
+		ProcessMapInput(44);
+		break;
+	case 450:
+		_NodeNum = 45;
+		_UserInput = 0;
+		if (!word_2D796) {
+			DsAll();
+			PlayMovie(120);
+			_StatPlay = 992;
+			_CurrMap = 10;
+			_LoopFlag = true;
+		} else {
+			_FstFwd = 0;
+			_FrameStop = 50;
+			PlayMovie(120);
+			_CurrMap = 17;
+			_StatPlay = 451;
+		}
+		break;
+	case 451:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			_FstFwd = 0;
+			_FrameStop = 50;
+			PlayMovie(_PMovie);
+			_CurrMap = 17;
+			PlaySound(26);
+			break;
+		case 0x441:
+			_StatPlay = 410;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	case 460:
+		_Eye = 0;
+		_NodeNum = 46;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D7A2 && _Wizard)
+			word_2D7A2 = 1;
+		else {
+			word_2D7A2 = 0;
+			_Sound = 1;
+		}
+		PlayMovie(121);
+		PlaySound(26);
+		_CurrMap = 107;
+		_StatPlay = 461;
+		break;
+	case 461:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_StatPlay = 340;
+			_UserInput = 0;
+			_LoopFlag = true;
+			_CurrMap = 10;
+			_LastObs = 1;
+			break;
+		case 0x446:
+			_StatPlay = 400;
+			_UserInput = 0;
+			_LoopFlag = true;
+			_CurrMap = 10;
+			break;
+		}
+		break;
+	case 462:
+		ProcessMapInput(46);
+		break;
+	case 480:
+		_NodeNum = 48;
+		_UserInput = 0;
+		PlayMovie(114);
+		_CurrMap = 10;
+		_StatPlay = 481;
+		word_2D7A6 = 1;
+		break;
+	case 481:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 482;
+			_Zoom = 2;
+			ProcessMap(48, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		}
+		break;
+	case 482:
+		ProcessMapInput(48);
+		break;
+	case 490:
+		_NodeNum = 49;
+		DrawLocation();
+		DsAll();
+		PlayMovie(180);
+		PlaySound(18);
+		_CurrMap = 101;
+		_StatPlay = 491;
+		_ATimer = 0;
+		_UserInput = 0;
+		break;
+	case 491:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x42A:
+		case 0x42B:
+			InventoryDel(_UserInput - 0x428);
+			_ATimer = 0;
+			PlayMovie(178);
+			_UserInput = 753;
+			_LoopFlag = true;
+			_CurrMap = 10;
+			break;
+		case 0x442:
+			PlayMovie(182);
+			_StatPlay = 992;
+			_LoopFlag = true;
+			break;
+		case 0x44A:
+			_CurrMap = 10;
+			_UserInput = 0;
+			_ATimer = 0;
+			EnAll();
+			PlayMovie(181);
+			word_2D77E = 9;
+			word_2D7A6 = 0;
+			_StatPlay = _NextNode * 10;
+			_LoopFlag = true;
+			break;
+		}
+		break;
+	}
+}
+
+void KingdomGame::GPLogic2_SubSP361() {
+	EnAll();
+	_UserInput = 0;
+	PlaySound(19);
+	if (word_2D77E == 1) {
+		_StatPlay = 480;
+		_LoopFlag = true;
+		_CurrMap = 10;
+	} else {
+		if (_Inventory[6] == 1 || _Wizard == 0) {
+			if (word_2D79A != 1 || _Wizard != 0)
+				word_2D79A = 1;
+			else {
+				_Sound = 1;
+				word_2D79A = 2;
+			}
+			PlayMovie(122);
+			_CurrMap = 10;
+			_TSIconOnly = 1;
+			_StatPlay = 421;
+		} else {
+			PlayMovie(112);
+			_CurrMap = 98;
+			_StatPlay = 421;
+		}
+	}
+}
+
+} // NameSpace
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index add6a8859b..070a2c222a 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -336,10 +336,6 @@ void KingdomGame::GameHelp() {
 	}
 }
 
-void KingdomGame::GPLogic2() {
-	debug("STUB: GPLogic2");
-}
-
 void KingdomGame::GPLogic3() {
 	debug("STUB: GPLogic3");
 }
@@ -555,4 +551,9 @@ void KingdomGame::CheckSaveGame() {
 void KingdomGame::CheckMainScreen() {
 	debug("STUB: CheckMainScreen");
 }
+
+bool KingdomGame::ChkDesertObstacles() {
+	debug("STUB: ChkDesertObstacles");
+	return false;
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index a1c6b00e14..728265109f 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -120,13 +120,16 @@ namespace Kingdom {
 		bool _Replay;
 		bool _quit;
 		int _NodeNum;
+		int _OldNode;
 		int _NextNode;
+		int _RobberyNode;
 		bool _CursorDrawn;
 		bool _Wizard;
 		int _Zoom;
 		int _Pmovie;
 		bool _Resurrect;
 		bool _SaveFile;
+		int _LastObstacle;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -146,7 +149,24 @@ namespace Kingdom {
 		int16 word_2D770;
 		int16 word_2D772;
 		int16 word_2D776;
+		int16 word_2D77A;
+		int16 word_2D77C;
 		int16 word_2D77E;
+		int16 word_2D780;
+		int16 word_2D784;
+		int16 word_2D786;
+		int16 word_2D78A;
+		int16 word_2D78C;
+		int16 word_2D78E;
+		int16 word_2D790;
+		int16 word_2D792;
+		int16 word_2D796;
+		int16 word_2D79A;
+		int16 word_2D79C;
+		int16 word_2D7A2;
+		int16 word_2D7A6;
+		int16 word_2D7AA;
+		int16 word_2D7BA;
 		int16 word_2D7CC;
 
 		Common::SeekableReadStream *_ArtPtr;
@@ -170,6 +190,7 @@ namespace Kingdom {
 		void GPLogic1_SubSP10();
 		void GPLogic1_SubSP121();
 		void GPLogic2();
+		void GPLogic2_SubSP361();
 		void GPLogic3();
 		void GPLogic4();
 		void LoadAResource(int reznum);
@@ -209,6 +230,7 @@ namespace Kingdom {
 		void IncreaseHealth();
 		void CheckSaveGame();
 		void CheckMainScreen();
+		bool ChkDesertObstacles();
 	};
 } // End of namespace Kingdom
 
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index de144fce0f..21d1875398 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -3,6 +3,7 @@ MODULE := engines/kingdom
 MODULE_OBJS = \
 	kingdom.o \
 	GPLogic1.o \
+	GPLogic2.o \
 	console.o \
 	detection.o
 


Commit: 1d97e08d1d932875983742d335dadc2f6f5c6f9d
    https://github.com/scummvm/scummvm/commit/1d97e08d1d932875983742d335dadc2f6f5c6f9d
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add Group Logic 4, fix some boolean values,

Changed paths:
  A engines/kingdom/GPLogic4.cpp
  A engines/kingdom/constants.cpp
  R engines/kingdom/reznames.h
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 0cd1cc1105..aa3cdb3d15 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -74,7 +74,7 @@ void KingdomGame::GPLogic1() {
 		ShowPic(106);
 		_StatPlay = 30;
 		_UserInput = 0;
-		_LoopFlag = 1;
+		_LoopFlag = true;
 		break;
 	case 30:
 		_NodeNum = 3;
@@ -785,12 +785,12 @@ void KingdomGame::GPLogic1() {
 		case 0x445:
 			if (word_2D766 || !_Wizard) {
 				_StatPlay = 120;
-				_LoopFlag = 1;
+				_LoopFlag = true;
 			}
 			break;
 		case 0x446:
 			_StatPlay = 80;
-			_LoopFlag = 1;
+			_LoopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x450:
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
new file mode 100644
index 0000000000..9ed58afb31
--- /dev/null
+++ b/engines/kingdom/GPLogic4.cpp
@@ -0,0 +1,265 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "kingdom/kingdom.h"
+
+namespace Kingdom {
+
+void KingdomGame::GPLogic4() {
+	switch(_StatPlay) {
+	case 900:
+		if (_ATimer > 0) {
+			PlaySound(0);
+			_ATimer = 133;
+		}
+		if (_ASMode == 1) {
+			SwitchMtoA();
+			_MapStat = 0;
+			_OldStatPlay--;
+			_ASMode = 0;
+		}
+		SaveAS();
+		FadeToBlack2();
+
+		if (_Health == 10 || _Health == 6 || _Health == 2) {
+			ShowPic(121);
+			_BTimer = 38;
+			ReadMouse();
+			while (_BTimer && !_MouseButton) {
+				RefreshSound();
+				RefreshMouse();
+			}
+			
+			if (_ATimer > 0)
+				SetATimer();
+			
+			_UserInput = 0;
+			GPLogic4_SP901();
+		} else {
+			if (_ATimer > 0) {
+				SetATimer();
+				_ATimer = 133;
+			}
+			ShowPic(120);
+			_StatPlay = 901;
+		}
+		break;
+	case 901:
+		GPLogic4_SP901();
+		break;
+	case 991:
+		_CurrMap = 10;
+		_UserInput = 0;
+		PlaySound(0);
+		if (_Health == 10 || _Health == 6 || _Health == 2)
+			_Health -= 2;
+		else
+			_Health -= 4;
+		
+		if (_Health == 0) {
+			PlayMovie(194);
+			_NoIFScreen = 1;
+			FShowPic(107);
+			_CurrMap = 3;
+			DsAll();
+			_Pouch = 0;
+			PlaySound(1);
+			memset(_Inventory, -1, 19);
+			_StatPlay = 994;
+		} else {
+			_BTimer = 36;
+			while(_BTimer)
+				RefreshSound();
+			
+			_LoopFlag = true;
+			if (word_2D77E == 1) {
+				word_2D77E = 0;
+				word_2D7A6 = 0;
+			}
+
+			_ItemInhibit = 0;
+			_TideCntl = 0;
+			DrawPic(179);
+			_SkylarTimer = 0;
+			_SkylarTimerFlag = 0;
+			EnAll();
+			_MapEx = 1;
+			_NodeNum = 5;
+			DrawLocation();
+			PlaySound(0);
+			if (word_2D750 > 0) {
+				PlayMovie(197);
+				_Resurrect = 1;
+			}
+			InventoryDel(12);
+			_StatPlay = 50;
+		}
+		break;
+	case 992:
+		_CurrMap = 10;
+		_UserInput = 0;
+		PlaySound(0);
+		if (_Health == 10 || _Health == 6 || _Health == 2)
+			_Health -= 2;
+		else
+			_Health -= 4;
+		
+		if (_Health == 0) {
+			PlayMovie(194);
+			_NoIFScreen = 1;
+			FShowPic(107);
+			_CurrMap = 3;
+			DsAll();
+			_Pouch = 0;
+			PlaySound(1);
+			memset(_Inventory, -1, 19);
+			_StatPlay = 994;
+		} else {
+			_BTimer = 36;
+			while(_BTimer != 0)
+				RefreshSound();
+
+			_LoopFlag = true;
+			if (word_2D77E == 1) {
+				word_2D77E = 0;
+				word_2D7A6 = 0;
+			}
+
+			_ItemInhibit = 0;
+			_TideCntl = 0;
+			DrawPic(179);
+			_SkylarTimer = 0;
+			_SkylarTimerFlag = 0;
+			EnAll();
+			_MapEx = 1;
+			_NodeNum = 27;
+			DrawLocation();
+			_Resurrect = 1;
+			PlaySound(0);
+			PlayMovie(195);
+			InventoryDel(12);
+			_StatPlay = 270;
+		}
+		break;
+	case 993:
+		_CurrMap = 10;
+		_UserInput = 0;
+		PlaySound(0);
+		if (_Health == 10 || _Health == 6 || _Health == 2)
+			_Health -= 2;
+		else
+			_Health -= 4;
+		
+		if (_Health == 0) {
+			PlayMovie(194);
+			_NoIFScreen = 1;
+			FShowPic(107);
+			_CurrMap = 3;
+			DsAll();
+			_Pouch = 0;
+			PlaySound(1);
+			memset(_Inventory, -1, 19);
+			_StatPlay = 994;
+		} else {
+			_BTimer = 36;
+			while (_BTimer != 0);
+				RefreshSound();
+			
+			_LoopFlag = true;
+			if (word_2D77E == 1) {
+				word_2D77E = 0;
+				word_2D7A6 = 0;
+			}
+			if (word_2D7CC == 1)
+				word_2D7CC = 0;
+
+			_ItemInhibit = 0;
+			_TideCntl = 0;
+			DrawPic(179);
+			_SkylarTimer = 0;
+			_SkylarTimerFlag = 0;
+			EnAll();
+			_MapEx = 1;
+			_NodeNum = 52;
+			DrawLocation();
+			_Resurrect = 1;
+			PlaySound(0);
+			PlayMovie(196);
+			InventoryDel(12);
+			_StatPlay = 520;
+		}
+		break;
+	case 994:
+		switch(_UserInput) {
+		case 0x190:
+			InitPlay();
+			// TODO _QuitFlag = 1;
+			_quit = true;
+			break;
+		case 0x191:
+			// TODO _QuitFlag = 2;
+			_quit = true;
+			break;
+		}
+		break;
+	}
+}
+
+void KingdomGame::GPLogic4_SP901() {
+	SetMouse();
+	EraseCursor();
+	FadeToBlack2();
+	ShowPic(106);
+	// FIXME: _DrawIcon(4, 0, _ArtPtr[12 - _HealthOld]);
+	if (_TideCntl == 1)
+		DrawPic(178);
+	else
+		DrawPic(179);
+	
+	_IconRedraw = true;
+	if (_UserInput == 0x2F1) {
+		_ASMode = 0;
+		RestoreAS();
+		_StatPlay = _OldStatPlay;
+		_LoopFlag = true;
+	} else {
+		if (_Health == 10 || _Health == 6 || _Health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
+			_ASMode = 0;
+			RestoreAS();
+			_StatPlay = _OldStatPlay;
+		} else {
+			_StatPlay = _MapExit[_UserInput - 0x400];
+			_UserInput = 0;
+			Wound();
+			PlayMovie(10);
+			InventoryDel(3);
+			_TSIconOnly = 0;
+			EnAll();
+			SwitchAS();
+			_MapStat = 0;
+		}
+		_UserInput = 0;
+		_LoopFlag = true;
+	}
+}
+
+} // Namespace
diff --git a/engines/kingdom/reznames.h b/engines/kingdom/constants.cpp
similarity index 88%
rename from engines/kingdom/reznames.h
rename to engines/kingdom/constants.cpp
index 85c5883146..cfc32a13c1 100644
--- a/engines/kingdom/reznames.h
+++ b/engines/kingdom/constants.cpp
@@ -1,3 +1,27 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+namespace Kingdom {
+
 char *_RezNames[] = {
 	"",
 	"Maps/KMAP001.lbm",
@@ -510,3 +534,15 @@ char *_RezNames[] = {
 	"MovieLF/KLF208.lbm",
 	"MovieLF/KLF209.lbm",
 };
+
+int _MapExit[] = {
+	100,  90,  50, 420, 550, 110,  70,  80, 180, 190,
+	200, 210, 230, 240, 300, 290, 330, 360, 310, 370,
+	390,  60, 570,  30,  40, 340, 640, 520, 510, 500,
+	540, 320, 140, 270, 380, 580, 590, 610,   0,   0,
+	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
+	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
+	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0
+};
+
+}
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 070a2c222a..109e73dd80 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -39,7 +39,6 @@
 #include "common/memstream.h"
 
 #include "kingdom/kingdom.h"
-#include "kingdom/reznames.h"
 
 namespace Kingdom {
 
@@ -340,10 +339,6 @@ void KingdomGame::GPLogic3() {
 	debug("STUB: GPLogic3");
 }
 
-void KingdomGame::GPLogic4() {
-	debug("STUB: GPLogic4");
-}
-
 void KingdomGame::LoadAResource(int reznum) {
 	Common::String path = Common::String(_RezNames[reznum]);
 	path.toUppercase();
@@ -468,6 +463,10 @@ void KingdomGame::ReadMouse() {
 	debug("STUB: ReadMouse");
 }
 
+void KingdomGame::RefreshMouse() {
+	debug ("STUB: RefreshMouse");
+}
+
 void KingdomGame::GetUserInput() {
 	debug("STUB: GetUserInput");
 
@@ -556,4 +555,12 @@ bool KingdomGame::ChkDesertObstacles() {
 	debug("STUB: ChkDesertObstacles");
 	return false;
 }
+
+void KingdomGame::SwitchMtoA() {
+	debug("STUB: SwitchMtoA");
+}
+
+void KingdomGame::_DrawIcon(int x, int y, Common::MemoryReadStream icon) {
+	debug("STUB: _DrawIcon");
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 728265109f..92724c10b2 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -33,6 +33,7 @@
 #include "audio/audiostream.h"
 #include "audio/decoders/wave.h"
 #include "audio/mixer.h"
+#include "common/memstream.h"
 #include "common/events.h"
 #include "common/file.h"
 #include "common/queue.h"
@@ -50,6 +51,9 @@ namespace Kingdom {
 		kDebugGeneral = 1 << 0
 	};
 
+	extern char *_RezNames[];
+	extern int _MapExit[];
+
 	class KingdomGame : public Engine {
 	public:
 		KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
@@ -69,6 +73,7 @@ namespace Kingdom {
 		bool _LoopFlag;
 		int _GameMode;
 		int _StatPlay;
+		int _OldStatPlay;
 		bool _FstFwd;
 		bool _NoIFScreen;
 		bool _Sound;
@@ -130,6 +135,7 @@ namespace Kingdom {
 		bool _Resurrect;
 		bool _SaveFile;
 		int _LastObstacle;
+		int _MapStat;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -193,6 +199,7 @@ namespace Kingdom {
 		void GPLogic2_SubSP361();
 		void GPLogic3();
 		void GPLogic4();
+		void GPLogic4_SP901();
 		void LoadAResource(int reznum);
 		void ReleaseAResource(int reznum);
 		void ShowPic(int reznum);
@@ -225,12 +232,15 @@ namespace Kingdom {
 		void SetATimer();
 		bool Wound();
 		void ReadMouse();
+		void RefreshMouse();
 		void RefreshSound();
 		void SwitchAS();
 		void IncreaseHealth();
 		void CheckSaveGame();
 		void CheckMainScreen();
 		bool ChkDesertObstacles();
+		void SwitchMtoA();
+		void _DrawIcon(int x, int y, Common::MemoryReadStream icon);
 	};
 } // End of namespace Kingdom
 
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index 21d1875398..51144ef2f7 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -2,8 +2,10 @@ MODULE := engines/kingdom
 
 MODULE_OBJS = \
 	kingdom.o \
+	constants.o \
 	GPLogic1.o \
 	GPLogic2.o \
+	GPLogic4.o \
 	console.o \
 	detection.o
 


Commit: b0defe793fff126b75f4a197f0f9e08415ec1955
    https://github.com/scummvm/scummvm/commit/b0defe793fff126b75f4a197f0f9e08415ec1955
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement some stubs

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 109e73dd80..62f4644db0 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -296,6 +296,7 @@ void KingdomGame::GameHelp() {
 		break;
 	case 0x244:
 		//TODO: Set _quitFlag to 2
+		_quit = true;
 		break;
 	case 0x245: {
 		FadeToBlack1();
@@ -436,7 +437,34 @@ void KingdomGame::SwitchAS() {
 }
 
 void KingdomGame::DrawHelpScreen() {
-	debug("STUB: DrawHelpScreen");
+	int picNum;
+
+	switch(_Health) {
+	case 2:
+		picNum = 166;
+		break;
+	case 4:
+		picNum = 165;
+		break;
+	case 6:
+		picNum = 164;
+		break;
+	case 8:
+		picNum = 163;
+		break;
+	case 10:
+		picNum = 162;
+		break;
+	case 12:
+	default:
+		picNum = 161;
+		break;
+	}
+
+	if (_NoMusic)
+		picNum += 6;
+
+	ShowPic(picNum);
 }
 
 void KingdomGame::DrawRect(int v1, int v2, int v3, int v4, int v5) {
@@ -473,19 +501,19 @@ void KingdomGame::GetUserInput() {
 	Common::Event event;
 	while (g_system->getEventManager()->pollEvent(event)) {
 		switch (event.type) {
-				case Common::EVENT_QUIT:
-				case Common::EVENT_RTL:
-					_quit = true;
-					break;
-
-				case Common::EVENT_LBUTTONDOWN:
-					break;
-				case Common::EVENT_KEYDOWN:
-					if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
-						_console->attach();
-					break;
-				default:
-					break;
+		case Common::EVENT_QUIT:
+		case Common::EVENT_RTL:
+			_quit = true;
+			break;
+
+		case Common::EVENT_LBUTTONDOWN:
+			break;
+		case Common::EVENT_KEYDOWN:
+			if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+				_console->attach();
+			break;
+		default:
+			break;
 		}
 	}
 }
@@ -540,7 +568,12 @@ void KingdomGame::RefreshSound() {
 }
 
 void KingdomGame::IncreaseHealth() {
-	debug("STUB: IncreaseHealth");
+	if (_Health <= 3)
+		_Health = 4;
+	else if (_Health <= 7)
+		_Health = 8;
+	else
+		_Health = 12;
 }
 
 void KingdomGame::CheckSaveGame() {
@@ -553,7 +586,43 @@ void KingdomGame::CheckMainScreen() {
 
 bool KingdomGame::ChkDesertObstacles() {
 	debug("STUB: ChkDesertObstacles");
-	return false;
+	if (!_Wizard)
+		return false;
+
+	_NextNode = _NodeNum;
+	if (_LastObs) {
+		_LastObs = false;
+		return false;
+	}
+
+	if (word_2D77E || _rnd->getRandomNumber(6) == 0) {
+		if (!word_2D7A6 || _RobberyNode != _NodeNum) {
+			if (_LastObstacle != _NodeNum) {
+				if (_rnd->getRandomNumber(5) == 0) {
+					_StatPlay = 250;
+					_LastObstacle = _NodeNum;
+					_LastObs = true;
+					_LoopFlag = true;
+					return true;
+				} else {
+					return false;
+				}
+			} else {
+				return false;
+			}
+		} else {
+			_StatPlay = 490;
+			_LoopFlag = true;
+			return true;
+		}
+	} else {
+		_StatPlay = 280;
+		_RobberyNode = _NodeNum;
+		_LastObstacle = _NodeNum;
+		_LastObs = true;
+		_LoopFlag = true;
+		return true;
+	}
 }
 
 void KingdomGame::SwitchMtoA() {


Commit: a0965a3915f4735799d16388a69509bd0139e9ef
    https://github.com/scummvm/scummvm/commit/a0965a3915f4735799d16388a69509bd0139e9ef
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Hack transparency

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 62f4644db0..12acd9eade 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -379,7 +379,19 @@ void KingdomGame::ShowPic(int reznum) {
 	g_system->getPaletteManager()->setPalette(palette, 0, paletteColorCount);
 
 	const Graphics::Surface *surface = decoder.getSurface();
-	g_system->copyRectToScreen(surface->getPixels(), 320, 0, 0, 320, 200);
+
+	byte *data = (byte *)surface->getPixels();
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = 0; curX < 320; curX++) {
+		for (uint curY = 0; curY < 200; curY++) {
+			byte *src = data + (curY * 320) + curX;
+			byte *dst = (byte *)screen->getBasePtr(curX, curY);
+			if (*src != 0xFF)
+				*dst = *src;
+		}
+	}
+	g_system->unlockScreen();
+
 	g_system->updateScreen();
 
 	ReleaseAResource(reznum);
@@ -585,7 +597,6 @@ void KingdomGame::CheckMainScreen() {
 }
 
 bool KingdomGame::ChkDesertObstacles() {
-	debug("STUB: ChkDesertObstacles");
 	if (!_Wizard)
 		return false;
 


Commit: 96e34da3d67cd57255ca5e9ac82d37fb049ca01f
    https://github.com/scummvm/scummvm/commit/96e34da3d67cd57255ca5e9ac82d37fb049ca01f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement DrawLocation

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index cfc32a13c1..0750bf98d3 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -545,4 +545,15 @@ int _MapExit[] = {
 	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0
 };
 
+int _EMLTable[] = {
+	 0,  0,  0, 65, 66, 69,  0, 59,  0, 60,
+	61, 63,  0,  0, 62,  0,  0,  0, 58,  0,
+	63, 67, 67,  0, 70, 75,  0, 77,  0, 72,
+	33, 73, 82, 79, 76,  0, 75, 45, 81,  0,
+	 0,  0, 78,  0, 83,  0,  0,  0, 78,  0,
+	88, 85, 86,  0, 91, 87, 98, 84, 93, 92,
+	 0,  0,  0,  0, 89,  0,  0,  0,  0,  0,
+	 0,  0,  0,  0,  0,  0,  0,  0,  0,  0
+};
+
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 12acd9eade..21909c670d 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -391,7 +391,6 @@ void KingdomGame::ShowPic(int reznum) {
 		}
 	}
 	g_system->unlockScreen();
-
 	g_system->updateScreen();
 
 	ReleaseAResource(reznum);
@@ -539,7 +538,37 @@ void KingdomGame::RestoreGame() {
 }
 
 void KingdomGame::DrawLocation() {
-	debug("STUB: DrawLocation");
+	if (_DaelonCntr > 0)
+		_DaelonCntr--;
+
+	PlaySound(0);
+	_IconsClosed = true;
+	_TSIconOnly = false;
+	_ATimer = 0;
+	_ATimerFlag = false;
+
+	int emlValue = _EMLTable[_NodeNum];
+	if (emlValue > 0)
+		EnAll();
+
+	if (!_MapEx || !emlValue || _Resurrect) {
+		if (_StatPlay != 50)
+			_Resurrect = false;
+		_IconsClosed = false;
+	} else {
+		_MapEx = false;
+		SaveAS();
+		FShowPic(emlValue);
+		_BTimer = 16;
+		while(_BTimer) {
+			RefreshSound();
+			CheckMainScreen();
+		}
+		FadeToBlack1();
+		DrawRect(4, 17, 228, 161, 0);
+		_IconsClosed = false;
+		_TSIconOnly = false;
+	}
 }
 
 void KingdomGame::ProcessMap(int mapNum, int zoom) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 92724c10b2..4e466442fd 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -53,6 +53,7 @@ namespace Kingdom {
 
 	extern char *_RezNames[];
 	extern int _MapExit[];
+	extern int _EMLTable[];
 
 	class KingdomGame : public Engine {
 	public:


Commit: 887d5b61a481d5f7818e62d5277b7158328f566a
    https://github.com/scummvm/scummvm/commit/887d5b61a481d5f7818e62d5277b7158328f566a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Start to handle user input

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 21909c670d..2135484bf8 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -54,6 +54,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 
 	_ASPtr = nullptr;
 	_quit = false;
+	_MouseValue = 0;
 }
 
 KingdomGame::~KingdomGame() {
@@ -509,24 +510,29 @@ void KingdomGame::RefreshMouse() {
 void KingdomGame::GetUserInput() {
 	debug("STUB: GetUserInput");
 
-	Common::Event event;
-	while (g_system->getEventManager()->pollEvent(event)) {
-		switch (event.type) {
-		case Common::EVENT_QUIT:
-		case Common::EVENT_RTL:
-			_quit = true;
-			break;
+	// CHECKME: _QuitFlag != 0
+	if (_quit)
+		return;
 
-		case Common::EVENT_LBUTTONDOWN:
-			break;
-		case Common::EVENT_KEYDOWN:
-			if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
-				_console->attach();
-			break;
-		default:
-			break;
-		}
+	_UserInput = WaitKey();
+
+	if (_quit)
+		return;
+
+	if (_UserInput == 0x2F5) {
+		_StatPlay = 600;
+		_LoopFlag = true;
+	}
+
+	if (_UserInput == 0x42B && _StatPlay == 53 && _GameMode == 0) {
+		_OldStatPlay = _StatPlay;
+		_StatPlay = 900;
+		_LoopFlag = true;
 	}
+
+	if (_UserInput == 0x12D && _CurrMap == 1)
+		// CHECKME: _quitFlag = 2;
+		_quit = true;
 }
 
 void KingdomGame::EraseCursorAsm() {
@@ -600,8 +606,12 @@ void KingdomGame::SetATimer() {
 }
 
 bool KingdomGame::Wound() {
-	debug("STUB: Wound");
-	return false;
+	bool retval = false;
+	if (_Health == 12 || _Health == 8 || _Health == 4) {
+		_Health -= 2;
+		retval = true;
+	}
+	return retval;
 }
 
 void KingdomGame::RefreshSound() {
@@ -672,4 +682,51 @@ void KingdomGame::SwitchMtoA() {
 void KingdomGame::_DrawIcon(int x, int y, Common::MemoryReadStream icon) {
 	debug("STUB: _DrawIcon");
 }
+
+int KingdomGame::WaitKey() {
+	int retval = 0;
+
+	Common::Event event;
+	while (g_system->getEventManager()->pollEvent(event)) {
+		switch (event.type) {
+		case Common::EVENT_QUIT:
+		case Common::EVENT_RTL:
+			_quit = true;
+			break;
+
+		case Common::EVENT_LBUTTONDOWN:
+			break;
+		case Common::EVENT_KEYDOWN:
+			// if keyboard used, retVal = getch() + 0x100
+			if (!event.kbd.hasFlags(Common::KBD_CTRL) && !event.kbd.hasFlags(Common::KBD_ALT))
+				retval = 0x100 + event.kbd.keycode;
+			else if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+				_console->attach();
+			break;
+		case Common::EVENT_LBUTTONUP: // retval == 2?
+			if (_Eye)
+				retval= !_ASMode ? 0x43A : 0x43B;
+			break;
+		case Common::EVENT_RBUTTONUP: // retval == 1?
+			retval = _MouseValue;
+			break;
+		default:
+			RefreshSound();
+			CheckMainScreen();
+			if (_ATimerFlag) {
+				_ATimerFlag = false;
+				retval = 0x2F1;
+			} else if (_BTimerFlag) {
+				_BTimerFlag = false;
+				retval = 0x2F2;
+			} else if (_CTimerFlag) {
+				_CTimerFlag = false;
+				retval = 0x2F5;
+			} else
+				retval= 0;
+			break;
+		}
+	}
+	return retval;
+}
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 4e466442fd..da518b0eeb 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -137,6 +137,7 @@ namespace Kingdom {
 		bool _SaveFile;
 		int _LastObstacle;
 		int _MapStat;
+		int _MouseValue;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -242,6 +243,7 @@ namespace Kingdom {
 		bool ChkDesertObstacles();
 		void SwitchMtoA();
 		void _DrawIcon(int x, int y, Common::MemoryReadStream icon);
+		int KingdomGame::WaitKey();
 	};
 } // End of namespace Kingdom
 


Commit: 791fc996e6730a0d57530c3f0febe5327d7e034c
    https://github.com/scummvm/scummvm/commit/791fc996e6730a0d57530c3f0febe5327d7e034c
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Small compilation error fix

Changed paths:
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index da518b0eeb..8c1c09f229 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -243,7 +243,7 @@ namespace Kingdom {
 		bool ChkDesertObstacles();
 		void SwitchMtoA();
 		void _DrawIcon(int x, int y, Common::MemoryReadStream icon);
-		int KingdomGame::WaitKey();
+		int WaitKey();
 	};
 } // End of namespace Kingdom
 


Commit: 03f0fb2b9d817ddf9d0eb8a18a2eb6a885421246
    https://github.com/scummvm/scummvm/commit/03f0fb2b9d817ddf9d0eb8a18a2eb6a885421246
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Rewrite the loading of kingart, get rid of _ArtPtr, add DrawCursor

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 2135484bf8..21fcfc9573 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -37,6 +37,7 @@
 #include "common/debug-channels.h"
 #include "common/stream.h"
 #include "common/memstream.h"
+#include "graphics/cursorman.h"
 
 #include "kingdom/kingdom.h"
 
@@ -55,6 +56,9 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_ASPtr = nullptr;
 	_quit = false;
 	_MouseValue = 0;
+
+	_kingartData = nullptr;
+	_kingartSize = nullptr;
 }
 
 KingdomGame::~KingdomGame() {
@@ -105,12 +109,11 @@ void KingdomGame::drawScreen() {
 }
 
 void KingdomGame::SetupPics() {
-	// Load Pics\kingArt.art
-	LoadAResource(0x97);
-	_ArtPtr = _RezPointers[0x97];
+	LoadKingArt();
 }
 
 void KingdomGame::InitTools() {
+	InitMouse();
 	//CHECKME: InitTimers?
 	ShowPic(124);
 	InitCursor();
@@ -341,6 +344,29 @@ void KingdomGame::GPLogic3() {
 	debug("STUB: GPLogic3");
 }
 
+void KingdomGame::LoadKingArt() {
+	LoadAResource(0x97);
+	Common::SeekableReadStream *kingartStream = _RezPointers[0x97];
+	int val = kingartStream->readUint32LE();
+	int size = val / 4;
+	uint32 *kingartIdx = new uint32[size + 1];
+	_kingartData = new byte*[size];
+	_kingartSize = new int32[size];
+	kingartIdx[0] = val;
+	for (int i = 1; i < size; i++)
+		kingartIdx[i] = kingartStream->readUint32LE();
+	kingartIdx[size] = kingartStream->size();
+
+	for (int i = 0; i < size; i++) {
+		int chunkSize = kingartIdx[i + 1] - kingartIdx[i];
+		_kingartData[i] = new byte[chunkSize];
+		_kingartSize[i] = chunkSize;
+		kingartStream->read(_kingartData[i], chunkSize);
+	}
+
+	delete[] kingartIdx;
+}
+
 void KingdomGame::LoadAResource(int reznum) {
 	Common::String path = Common::String(_RezNames[reznum]);
 	path.toUppercase();
@@ -405,7 +431,15 @@ void KingdomGame::FShowPic(int reznum) {
 }
 
 void KingdomGame::InitCursor() {
-	debug("STUB: InitCursor");
+	InitMouse();
+	// 0x19C / 4
+	CursorMan.replaceCursor(_kingartData[103], 8, 8, 0, 0, 0);
+	_CursorDrawn = false;
+	DrawCursor();
+}
+
+void KingdomGame::InitMouse() {
+	_CursorActive = true;
 }
 
 void KingdomGame::SetMouse() {
@@ -705,7 +739,7 @@ int KingdomGame::WaitKey() {
 			break;
 		case Common::EVENT_LBUTTONUP: // retval == 2?
 			if (_Eye)
-				retval= !_ASMode ? 0x43A : 0x43B;
+				retval = !_ASMode ? 0x43A : 0x43B;
 			break;
 		case Common::EVENT_RBUTTONUP: // retval == 1?
 			retval = _MouseValue;
@@ -729,4 +763,27 @@ int KingdomGame::WaitKey() {
 	}
 	return retval;
 }
+
+void KingdomGame::DrawCursor() {
+	ReadMouse();
+
+	Common::Event event;
+	g_system->getEventManager()->pollEvent(event);
+	_CursorX = event.mouse.x;
+	_CursorY = event.mouse.y;
+	_CursorDef = CursorType();
+	CursorMan.replaceCursor(_kingartData[_CursorDef / 4], 8, 8, 0, 0, 0);
+	_OldCursorX = _CursorX;
+	_OldCursorY = _CursorY;
+	_OldCursorDef = _CursorDef;
+
+	CursorMan.showMouse(true);
+	_CursorDrawn = true;
+}
+
+int KingdomGame::CursorType() {
+	debug("STUB: CursorType");
+	return 0;
+}
+
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 8c1c09f229..522a5bbc69 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -23,6 +23,7 @@
 #ifndef KINGDOM_KINGDOM_H
 #define KINGDOM_KINGDOM_H
 
+#include "Common/system.h"
 #include "common/scummsys.h"
 #include "common/config-manager.h"
 #include "common/random.h"
@@ -71,6 +72,9 @@ namespace Kingdom {
 		Console *_console;
 		Common::RandomSource *_rnd;
 
+		byte **_kingartData;
+		int32 *_kingartSize;
+
 		bool _LoopFlag;
 		int _GameMode;
 		int _StatPlay;
@@ -138,6 +142,13 @@ namespace Kingdom {
 		int _LastObstacle;
 		int _MapStat;
 		int _MouseValue;
+		bool _CursorActive;
+		int _CursorDef;
+		int _OldCursorDef;
+		int _CursorX;
+		int _CursorY;
+		int _OldCursorX;
+		int _OldCursorY;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -177,7 +188,6 @@ namespace Kingdom {
 		int16 word_2D7BA;
 		int16 word_2D7CC;
 
-		Common::SeekableReadStream *_ArtPtr;
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];
 		int8 _Inventory[19];
@@ -207,7 +217,10 @@ namespace Kingdom {
 		void ShowPic(int reznum);
 		void FShowPic(int reznum);
 		void InitCursor();
+		void InitMouse();
 		void SetMouse();
+		void ReadMouse();
+		void RefreshMouse();
 		void InitMPlayer();
 		void PlayMovie(int movieNum);
 		void EnAll();
@@ -233,8 +246,6 @@ namespace Kingdom {
 		void DisplayIcon(int reznum);
 		void SetATimer();
 		bool Wound();
-		void ReadMouse();
-		void RefreshMouse();
 		void RefreshSound();
 		void SwitchAS();
 		void IncreaseHealth();
@@ -244,6 +255,9 @@ namespace Kingdom {
 		void SwitchMtoA();
 		void _DrawIcon(int x, int y, Common::MemoryReadStream icon);
 		int WaitKey();
+		void DrawCursor();
+		int CursorType();
+		void LoadKingArt();
 	};
 } // End of namespace Kingdom
 


Commit: fe7a6f8688791bde315a781683a610e6eef2ec96
    https://github.com/scummvm/scummvm/commit/fe7a6f8688791bde315a781683a610e6eef2ec96
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Small typo fix

Changed paths:
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 522a5bbc69..90321ee2bf 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -23,7 +23,7 @@
 #ifndef KINGDOM_KINGDOM_H
 #define KINGDOM_KINGDOM_H
 
-#include "Common/system.h"
+#include "common/system.h"
 #include "common/scummsys.h"
 #include "common/config-manager.h"
 #include "common/random.h"


Commit: 574cb0a6cafc4d116b80bce07a7059c3d23a0d68
    https://github.com/scummvm/scummvm/commit/574cb0a6cafc4d116b80bce07a7059c3d23a0d68
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Parse and set cursor correctly

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 21fcfc9573..ea85ee2a4a 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -432,8 +432,7 @@ void KingdomGame::FShowPic(int reznum) {
 
 void KingdomGame::InitCursor() {
 	InitMouse();
-	// 0x19C / 4
-	CursorMan.replaceCursor(_kingartData[103], 8, 8, 0, 0, 0);
+	SetCursor(0x19C);
 	_CursorDrawn = false;
 	DrawCursor();
 }
@@ -772,7 +771,7 @@ void KingdomGame::DrawCursor() {
 	_CursorX = event.mouse.x;
 	_CursorY = event.mouse.y;
 	_CursorDef = CursorType();
-	CursorMan.replaceCursor(_kingartData[_CursorDef / 4], 8, 8, 0, 0, 0);
+	SetCursor(_CursorDef);
 	_OldCursorX = _CursorX;
 	_OldCursorY = _CursorY;
 	_OldCursorDef = _CursorDef;
@@ -781,9 +780,19 @@ void KingdomGame::DrawCursor() {
 	_CursorDrawn = true;
 }
 
+
 int KingdomGame::CursorType() {
 	debug("STUB: CursorType");
-	return 0;
+	// Default cursor
+	return 0x19C;
+}
+
+void KingdomGame::SetCursor(int cursor) {
+	byte* CursorData = _kingartData[cursor / 4];
+	uint8 CursorWidth = CursorData[0];
+	uint8 CursorHeight = CursorData[1];
+
+	CursorMan.replaceCursor(CursorData + 2, CursorWidth, CursorHeight, 0, 0, 255);
 }
 
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 90321ee2bf..b129423fbc 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -258,6 +258,7 @@ namespace Kingdom {
 		void DrawCursor();
 		int CursorType();
 		void LoadKingArt();
+		void SetCursor(int cursor);
 	};
 } // End of namespace Kingdom
 


Commit: 9d7488e86da631c6b58a979c459189b5ec88e77e
    https://github.com/scummvm/scummvm/commit/9d7488e86da631c6b58a979c459189b5ec88e77e
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Improve KingArt loader

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index ea85ee2a4a..4e372ae64e 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -58,7 +58,6 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_MouseValue = 0;
 
 	_kingartData = nullptr;
-	_kingartSize = nullptr;
 }
 
 KingdomGame::~KingdomGame() {
@@ -350,8 +349,7 @@ void KingdomGame::LoadKingArt() {
 	int val = kingartStream->readUint32LE();
 	int size = val / 4;
 	uint32 *kingartIdx = new uint32[size + 1];
-	_kingartData = new byte*[size];
-	_kingartSize = new int32[size];
+	_kingartData = new KingArtEntry[size];
 	kingartIdx[0] = val;
 	for (int i = 1; i < size; i++)
 		kingartIdx[i] = kingartStream->readUint32LE();
@@ -359,9 +357,13 @@ void KingdomGame::LoadKingArt() {
 
 	for (int i = 0; i < size; i++) {
 		int chunkSize = kingartIdx[i + 1] - kingartIdx[i];
-		_kingartData[i] = new byte[chunkSize];
-		_kingartSize[i] = chunkSize;
-		kingartStream->read(_kingartData[i], chunkSize);
+		_kingartData[i].Width = kingartStream->readByte();
+		_kingartData[i].Height = kingartStream->readByte();
+
+		assert(_kingartData[i].Width * _kingartData[i].Height == chunkSize - 2);
+
+		_kingartData[i].data = new byte[chunkSize - 2];
+		kingartStream->read(_kingartData[i].data, chunkSize - 2);
 	}
 
 	delete[] kingartIdx;
@@ -788,11 +790,8 @@ int KingdomGame::CursorType() {
 }
 
 void KingdomGame::SetCursor(int cursor) {
-	byte* CursorData = _kingartData[cursor / 4];
-	uint8 CursorWidth = CursorData[0];
-	uint8 CursorHeight = CursorData[1];
-
-	CursorMan.replaceCursor(CursorData + 2, CursorWidth, CursorHeight, 0, 0, 255);
+	KingArtEntry Cursor = _kingartData[cursor / 4];
+	CursorMan.replaceCursor(Cursor.data, Cursor.Width, Cursor.Height, 0, 0, 255);
 }
 
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index b129423fbc..6e0e29fe10 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -56,6 +56,12 @@ namespace Kingdom {
 	extern int _MapExit[];
 	extern int _EMLTable[];
 
+	struct KingArtEntry {
+		uint8 Width;
+		uint8 Height;
+		byte* data;
+	};
+
 	class KingdomGame : public Engine {
 	public:
 		KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
@@ -72,8 +78,7 @@ namespace Kingdom {
 		Console *_console;
 		Common::RandomSource *_rnd;
 
-		byte **_kingartData;
-		int32 *_kingartSize;
+		KingArtEntry *_kingartData;
 
 		bool _LoopFlag;
 		int _GameMode;


Commit: abe6e93d19f3ba9df30d08e7df3d4bbf014176cb
    https://github.com/scummvm/scummvm/commit/abe6e93d19f3ba9df30d08e7df3d4bbf014176cb
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix some compiler warnings

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 4e372ae64e..1a3048a658 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -378,7 +378,7 @@ void KingdomGame::LoadAResource(int reznum) {
 	if(!_RezSize[reznum]) {
 		Common::File *file = new Common::File();
 		if(!file->open(path))
-			error("Failed to open %s", path);
+			error("Failed to open %s", path.c_str());
 
 		_RezSize[reznum] = file->size();
 		file->seek(0, SEEK_SET);
@@ -409,11 +409,11 @@ void KingdomGame::ShowPic(int reznum) {
 
 	const Graphics::Surface *surface = decoder.getSurface();
 
-	byte *data = (byte *)surface->getPixels();
+	const byte *data = (const byte *)surface->getPixels();
 	::Graphics::Surface *screen = g_system->lockScreen();
 	for (uint curX = 0; curX < 320; curX++) {
 		for (uint curY = 0; curY < 200; curY++) {
-			byte *src = data + (curY * 320) + curX;
+			const byte *src = data + (curY * 320) + curX;
 			byte *dst = (byte *)screen->getBasePtr(curX, curY);
 			if (*src != 0xFF)
 				*dst = *src;


Commit: 97a430f44b6296e86697ab33dca635a83aee7d9a
    https://github.com/scummvm/scummvm/commit/97a430f44b6296e86697ab33dca635a83aee7d9a
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Rename kingartData to something more useful now

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 1a3048a658..13ca541ff6 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -57,7 +57,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_quit = false;
 	_MouseValue = 0;
 
-	_kingartData = nullptr;
+	_kingartEntries = nullptr;
 }
 
 KingdomGame::~KingdomGame() {
@@ -349,7 +349,7 @@ void KingdomGame::LoadKingArt() {
 	int val = kingartStream->readUint32LE();
 	int size = val / 4;
 	uint32 *kingartIdx = new uint32[size + 1];
-	_kingartData = new KingArtEntry[size];
+	_kingartEntries = new KingArtEntry[size];
 	kingartIdx[0] = val;
 	for (int i = 1; i < size; i++)
 		kingartIdx[i] = kingartStream->readUint32LE();
@@ -357,13 +357,13 @@ void KingdomGame::LoadKingArt() {
 
 	for (int i = 0; i < size; i++) {
 		int chunkSize = kingartIdx[i + 1] - kingartIdx[i];
-		_kingartData[i].Width = kingartStream->readByte();
-		_kingartData[i].Height = kingartStream->readByte();
+		_kingartEntries[i].Width = kingartStream->readByte();
+		_kingartEntries[i].Height = kingartStream->readByte();
 
-		assert(_kingartData[i].Width * _kingartData[i].Height == chunkSize - 2);
+		assert(_kingartEntries[i].Width * _kingartEntries[i].Height == chunkSize - 2);
 
-		_kingartData[i].data = new byte[chunkSize - 2];
-		kingartStream->read(_kingartData[i].data, chunkSize - 2);
+		_kingartEntries[i].data = new byte[chunkSize - 2];
+		kingartStream->read(_kingartEntries[i].data, chunkSize - 2);
 	}
 
 	delete[] kingartIdx;
@@ -790,7 +790,7 @@ int KingdomGame::CursorType() {
 }
 
 void KingdomGame::SetCursor(int cursor) {
-	KingArtEntry Cursor = _kingartData[cursor / 4];
+	KingArtEntry Cursor = _kingartEntries[cursor / 4];
 	CursorMan.replaceCursor(Cursor.data, Cursor.Width, Cursor.Height, 0, 0, 255);
 }
 
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 6e0e29fe10..33f8a5b5d3 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -78,7 +78,7 @@ namespace Kingdom {
 		Console *_console;
 		Common::RandomSource *_rnd;
 
-		KingArtEntry *_kingartData;
+		KingArtEntry *_kingartEntries;
 
 		bool _LoopFlag;
 		int _GameMode;


Commit: d57dc7ed4fd1ad57a9dcca310745ab144e58d8e3
    https://github.com/scummvm/scummvm/commit/d57dc7ed4fd1ad57a9dcca310745ab144e58d8e3
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix 2 GCC warnings (which includes a bug fix)

Changed paths:
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic4.cpp


diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index f72b153cdf..b956e11c23 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -535,13 +535,13 @@ void KingdomGame::GPLogic2() {
 			_Sound = 0;
 		else
 			_Sound = 1;
-			_FrameStop = 185;
-			DsAll();
-			PlayMovie(94);
-			_CurrMap = 95;
-			SetATimer();
-			_UserInput = 0;
-			_StatPlay = 361;
+		_FrameStop = 185;
+		DsAll();
+		PlayMovie(94);
+		_CurrMap = 95;
+		SetATimer();
+		_UserInput = 0;
+		_StatPlay = 361;
 		break;
 	case 361:
 		switch(_UserInput) {
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 9ed58afb31..d2f51aab0b 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -181,7 +181,7 @@ void KingdomGame::GPLogic4() {
 			_StatPlay = 994;
 		} else {
 			_BTimer = 36;
-			while (_BTimer != 0);
+			while (_BTimer != 0)
 				RefreshSound();
 			
 			_LoopFlag = true;


Commit: a2570c7e45ca50b67dd6175586c189d3073a6431
    https://github.com/scummvm/scummvm/commit/a2570c7e45ca50b67dd6175586c189d3073a6431
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement some stubs

Changed paths:
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index d2f51aab0b..9cd7aa3d3d 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -229,7 +229,7 @@ void KingdomGame::GPLogic4_SP901() {
 	EraseCursor();
 	FadeToBlack2();
 	ShowPic(106);
-	// FIXME: _DrawIcon(4, 0, _ArtPtr[12 - _HealthOld]);
+	DrawIcon(4, 0, 12 - _HealthOld);
 	if (_TideCntl == 1)
 		DrawPic(178);
 	else
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 13ca541ff6..57fe9168a7 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -444,7 +444,9 @@ void KingdomGame::InitMouse() {
 }
 
 void KingdomGame::SetMouse() {
-	debug("STUB: SetMouse");
+	g_system->warpMouse(272, 157);
+	_CursorX = 272;
+	_CursorY = 157;
 }
 
 void KingdomGame::InitMPlayer() {
@@ -480,7 +482,13 @@ void KingdomGame::RestoreAS() {
 }
 
 void KingdomGame::SwitchAS() {
-	debug("STUB: SwitchAS");
+	_ASMode = 0;
+	_CurrMap = _ASMap;
+	_TreeLeftSta = _OldTLS;
+	_TreeRightSta = _OldTRS;
+	_Pouch = _OldPouch;
+	_Help = _OldHelp;
+	_IconsClosed = _OldIconsClosed;
 }
 
 void KingdomGame::DrawHelpScreen() {
@@ -711,11 +719,14 @@ bool KingdomGame::ChkDesertObstacles() {
 }
 
 void KingdomGame::SwitchMtoA() {
-	debug("STUB: SwitchMtoA");
+	SwitchAS();
+	FadeToBlack1();
+	DrawRect(4, 17, 228, 161, 0);
+	RestoreAS();
 }
 
-void KingdomGame::_DrawIcon(int x, int y, Common::MemoryReadStream icon) {
-	debug("STUB: _DrawIcon");
+void KingdomGame::DrawIcon(int x, int y, int index) {
+	debug("STUB: DrawIcon");
 }
 
 int KingdomGame::WaitKey() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 33f8a5b5d3..9d33748968 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -122,8 +122,10 @@ namespace Kingdom {
 		int _ASMap;
 		int _CurrMap;
 		int _OldTLS;
+		int _OldTRS;
 		int _TreeLeftSta;
 		bool _IconsClosed;
+		bool _OldIconsClosed;
 		bool _OldEye;
 		bool _Eye;
 		bool _OldHelp;
@@ -258,7 +260,7 @@ namespace Kingdom {
 		void CheckMainScreen();
 		bool ChkDesertObstacles();
 		void SwitchMtoA();
-		void _DrawIcon(int x, int y, Common::MemoryReadStream icon);
+		void DrawIcon(int x, int y, int index);
 		int WaitKey();
 		void DrawCursor();
 		int CursorType();


Commit: 6c0258ceafb87abdfacd9a32850331fb167dfcee
    https://github.com/scummvm/scummvm/commit/6c0258ceafb87abdfacd9a32850331fb167dfcee
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement a couple of stubs, add a dummy value in MapExit

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index aa3cdb3d15..462fbe64b4 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -720,7 +720,7 @@ void KingdomGame::GPLogic1() {
 			int oldPMovie = _PMovie;
 			PlayMovie(208);
 			_PMovie = oldPMovie;
-			_ASMode = 0;
+			_ASMode = false;
 			RestoreAS();
 			_Help = 1;
 			_Eye = 1;
@@ -735,7 +735,7 @@ void KingdomGame::GPLogic1() {
 			int oldPMovie = _PMovie;
 			PlayMovie(207);
 			_PMovie = oldPMovie;
-			_ASMode = 0;
+			_ASMode = false;
 			RestoreAS();
 			_Help = 1;
 			_Eye = 1;
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 9cd7aa3d3d..f1b3fd1194 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -31,11 +31,11 @@ void KingdomGame::GPLogic4() {
 			PlaySound(0);
 			_ATimer = 133;
 		}
-		if (_ASMode == 1) {
+		if (_ASMode) {
 			SwitchMtoA();
 			_MapStat = 0;
 			_OldStatPlay--;
-			_ASMode = 0;
+			_ASMode = false;
 		}
 		SaveAS();
 		FadeToBlack2();
@@ -237,13 +237,13 @@ void KingdomGame::GPLogic4_SP901() {
 	
 	_IconRedraw = true;
 	if (_UserInput == 0x2F1) {
-		_ASMode = 0;
+		_ASMode = false;
 		RestoreAS();
 		_StatPlay = _OldStatPlay;
 		_LoopFlag = true;
 	} else {
 		if (_Health == 10 || _Health == 6 || _Health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
-			_ASMode = 0;
+			_ASMode = false;
 			RestoreAS();
 			_StatPlay = _OldStatPlay;
 		} else {
diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 0750bf98d3..2efaf1e663 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -536,13 +536,14 @@ char *_RezNames[] = {
 };
 
 int _MapExit[] = {
-	100,  90,  50, 420, 550, 110,  70,  80, 180, 190,
-	200, 210, 230, 240, 300, 290, 330, 360, 310, 370,
-	390,  60, 570,  30,  40, 340, 640, 520, 510, 500,
-	540, 320, 140, 270, 380, 580, 590, 610,   0,   0,
+	  0, 100,  90,  50, 420, 550, 110,  70,  80, 180,
+	190, 200, 210, 230, 240, 300, 290, 330, 360, 310,
+	370, 390,  60, 570,  30,  40, 340, 640, 520, 510,
+	500, 540, 320, 140, 270, 380, 580, 590, 610,   0,
 	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
 	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
-	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0
+	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
+	  0
 };
 
 int _EMLTable[] = {
@@ -556,4 +557,89 @@ int _EMLTable[] = {
 	 0,  0,  0,  0,  0,  0,  0,  0,  0,  0
 };
 
+int _ZoomTable[81][9][2] = {
+	// The first array is a dummy one used to fix an stupid trick on the index in the original
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x41, 0x15}, {0x1C, 0x14}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x42, 0x0A}, {0x1B, 0x16}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x45, 0x0A}, {0x1F, 0x17}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x40, 0x0A}, {0x1A, 0x18}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3B, 0x0A}, {0x13, 0x19}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x38, 0x1B}, {0x10, 0x1A}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3C, 0x0A}, {0x15, 0x1C}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3D, 0x0A}, {0x17, 0x1D}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3F, 0x1F}, {0x19, 0x1E}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3E, 0x0A}, {0x18, 0x23}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x38, 0x1B}, {0x10, 0x1A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x3A, 0x0A}, {0x11, 0x24}, {0x0B, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x5F, 0x20}, {0x3F, 0x12}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x43, 0x26}, {0x1D, 0x25}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x43, 0x26}, {0x1D, 0x25}, {0x0C, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x46, 0x0A}, {0x1E, 0x27}, {0x20, 0x0A}, {0x0C, 0x0A}, {   8, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4B, 0x0A}, {0x25, 0x28}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4D, 0x0A}, {0x27, 0x2A}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x29}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x48, 0x0A}, {0x22, 0x2B}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {0x21, 0x29}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x49, 0x0A}, {0x23, 0x2C}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x52, 0x0A}, {0x2C, 0x2D}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4F, 0x0A}, {0x29, 0x2E}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4C, 0x30}, {0x26, 0x2F}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4E, 0x0A}, {0x28, 0x36}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x53, 0x0A}, {0x2D, 0x32}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x51, 0x0A}, {0x2B, 0x34}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x61, 0x35}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x62, 0x35}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4E, 0x0A}, {0x28, 0x36}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x53, 0x0A}, {0x2D, 0x0A}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x53, 0x0A}, {0x2D, 0x32}, {0x0D, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x61, 0x35}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x4E, 0x0A}, {0x28, 0x36}, {0x0E, 0x0A}, {   9, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x58, 0x0A}, {0x32, 0x38}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x55, 0x0A}, {0x2F, 0x39}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x56, 0x3B}, {0x30, 0x3A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{   0, 0x0A}, {0x5B, 0x3D}, {0x35, 0x3C}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x57, 0x0A}, {0x31, 0x3E}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x62, 0x0A}, {0x57, 0x0A}, {0x31, 0x3E}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x54, 0x0A}, {0x2E, 0x41}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x5D, 0x0A}, {0x37, 0x42}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x48}, {0x5C, 0x44}, {0x36, 0x43}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x63, 0x0A}, {0x5A, 0x46}, {0x34, 0x45}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x62, 0x40}, {0x57, 0x3F}, {0x31, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x62, 0x40}, {0x57, 0x3F}, {0x31, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x59, 0x0A}, {0x33, 0x47}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x63, 0x49}, {0x5A, 0x0A}, {0x34, 0x45}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x63, 0x49}, {0x5A, 0x0A}, {0x34, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{0x63, 0x49}, {0x5A, 0x0A}, {0x34, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   8, 0x0A}, {   5, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
+	{{0x64, 0x48}, {0x5C, 0x0A}, {0x36, 0x0A}, {0x0F, 0x0A}, {0x0A, 0x0A}, {   7, 0x0A}, {   4, 0x0A}, {   3, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x3C, 0x0A}, {0x15, 0x0A}, {0x0B, 0x0A}, {   8, 0x0A}, {   5, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}},
+	{{   0, 0x0A}, {0x3A, 0x0A}, {0x12, 0x24}, {0x0B, 0x0A}, {   8, 0x0A}, {   5, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}} 
+};
+
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 57fe9168a7..08e300ce2c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -482,7 +482,7 @@ void KingdomGame::RestoreAS() {
 }
 
 void KingdomGame::SwitchAS() {
-	_ASMode = 0;
+	_ASMode = false;
 	_CurrMap = _ASMap;
 	_TreeLeftSta = _OldTLS;
 	_TreeRightSta = _OldTRS;
@@ -551,8 +551,6 @@ void KingdomGame::RefreshMouse() {
 }
 
 void KingdomGame::GetUserInput() {
-	debug("STUB: GetUserInput");
-
 	// CHECKME: _QuitFlag != 0
 	if (_quit)
 		return;
@@ -621,7 +619,21 @@ void KingdomGame::DrawLocation() {
 }
 
 void KingdomGame::ProcessMap(int mapNum, int zoom) {
-	debug("STUB: ProcessMap");
+	int var6 = _ZoomTable[mapNum][zoom][0];
+	if (!_ASMode)
+		SwitchAtoM();
+	FShowPic(var6);
+	_CurrMap = _ZoomTable[mapNum][zoom][1];
+
+	if (zoom > 0)
+		_TreeLeftSta = _ZoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
+	else
+		_TreeLeftSta = 0;
+
+	if (zoom < 8)
+		_TreeRightSta = _ZoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
+	else
+		_TreeRightSta = 0;
 }
 
 void KingdomGame::ProcessMapInput(int mapNum) {
@@ -718,6 +730,23 @@ bool KingdomGame::ChkDesertObstacles() {
 	}
 }
 
+void KingdomGame::SwitchAtoM() {
+	_ASMode = true;
+	_ASMap = _CurrMap;
+	SaveAS();
+	_IconSel = 9;
+	_OldTLS = _TreeLeftSta;
+	_OldTRS = _TreeRightSta;
+	_OldPouch = _Pouch;
+	_OldHelp = _Help;
+	_OldIconsClosed = _IconsClosed;
+	_TreeLeftSta = 0;
+	_TreeRightSta = 0;
+	_Pouch = false;
+	_Help = false;
+	_IconsClosed = true;
+}
+
 void KingdomGame::SwitchMtoA() {
 	SwitchAS();
 	FadeToBlack1();
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 9d33748968..94c9a16429 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -55,7 +55,7 @@ namespace Kingdom {
 	extern char *_RezNames[];
 	extern int _MapExit[];
 	extern int _EMLTable[];
-
+	extern int _ZoomTable[81][9][2];
 	struct KingArtEntry {
 		uint8 Width;
 		uint8 Height;
@@ -156,6 +156,7 @@ namespace Kingdom {
 		int _CursorY;
 		int _OldCursorX;
 		int _OldCursorY;
+		int _IconSel;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -259,6 +260,7 @@ namespace Kingdom {
 		void CheckSaveGame();
 		void CheckMainScreen();
 		bool ChkDesertObstacles();
+		void SwitchAtoM();
 		void SwitchMtoA();
 		void DrawIcon(int x, int y, int index);
 		int WaitKey();


Commit: 2789fcdd8c023e048399495e88c4fb1ac45fd1b7
    https://github.com/scummvm/scummvm/commit/2789fcdd8c023e048399495e88c4fb1ac45fd1b7
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement 3 more stubs

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 2efaf1e663..877b4829f7 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -642,4 +642,88 @@ int _ZoomTable[81][9][2] = {
 	{{   0, 0x0A}, {0x3A, 0x0A}, {0x12, 0x24}, {0x0B, 0x0A}, {   8, 0x0A}, {   5, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}} 
 };
 
+int _IconActTable[82][7] = {
+	{18, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  1, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18,  7},
+	{ 3, 18,  4,  2, 18,  5, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 15, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18,  6, 18},
+	{18,  4, 18, 18, 18, 18, 18},
+	{ 3,  7,  2, 18,  1,  0, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  5,  2,  0, 18, 18},
+	{ 3,  0, 18,  2, 18,  4,  1},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  5,  1,  2,  0, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  5,  0,  2,  4, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18,  9, 10},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  9, 18, 18, 18, 18},
+	{ 3,  0, 18,  1,  2, 18, 18},
+	{ 3, 18, 15,  6,  9,  2,  0},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 15,  2,  0, 13, 11,  8},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  2,  4,  6, 15, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  2,  6,  0,  1, 18},
+	{ 3, 18, 12,  0, 16, 18,  2},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  0, 18,  2, 18,  1},
+	{ 3,  2, 18,  0, 11,  1, 17},
+	{ 3, 18, 18, 12, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  0,  1,  2, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18,  4, 18},
+	{ 3, 18,  2, 16,  1, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 13,  2,  8,  0,  1},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 10, 18,  2,  1,  0},
+	{ 3,  0, 18,  1, 18,  2,  8},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3,  2, 17,  0, 18,  1, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3,  8, 10,  2, 11, 14,  0},
+	{18, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 15,  2, 10,  1,  0},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{18, 18, 18, 18, 18, 18, 18},
+	{ 3, 18, 17,  2,  0, 18,  1},
+	{ 3, 18, 18, 18, 18, 18, 18},
+	{ 3, 18,  2,  4, 18,  1, 18},
+	{ 3, 18, 18, 18,  0, 18, 18} 
+};
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 08e300ce2c..c19b856078 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -649,15 +649,72 @@ void KingdomGame::InventoryAdd(int item) {
 }
 
 void KingdomGame::DrawPic(int reznum) {
-	debug("STUB: DrawPic");
+	EraseCursor();
+	LoadAResource(reznum);
+
+	Image::IFFDecoder decoder;
+	if (!decoder.loadStream(*_RezPointers[reznum]))
+		return;
+
+	const Graphics::Surface *surface = decoder.getSurface();
+
+	const byte *data = (const byte *)surface->getPixels();
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = 0; curX < 320; curX++) {
+		for (uint curY = 0; curY < 200; curY++) {
+			const byte *src = data + (curY * 320) + curX;
+			byte *dst = (byte *)screen->getBasePtr(curX, curY);
+			if (*src != 0xFF)
+				*dst = *src;
+		}
+	}
+	g_system->unlockScreen();
+	g_system->updateScreen();
+
+	ReleaseAResource(reznum);
 }
 
 void KingdomGame::DisplayIcon(int reznum) {
-	debug("STUB: DisplayIcon");
+	PlaySound(0);
+	PlaySound(30);
+	SaveAS();
+	FShowPic(reznum);
+	_BTimer = 76;
+	ReadMouse();
+	
+	while(_BTimer != 0 && _MouseButton == 0) {
+		RefreshSound();
+		ReadMouse();
+	}
+
+	FadeToBlack1();
+	DrawRect(4, 17, 228, 161, 0);
+	RestoreAS();
 }
 
 void KingdomGame::SetATimer() {
-	debug("STUB: SetATimer");
+	_ATimerFlag = true;
+	_ATimer = 0;
+	int wrkNodeNum = _NodeNum;
+	if (word_2D77E == 1 || word_2D7CC == 1)
+		return;
+
+	if (_TSIconOnly != 0)
+		wrkNodeNum = 79;
+
+	if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+		wrkNodeNum = 80;
+	
+	for (int i = 0; i < 7; i++) {
+		int idx = _IconActTable[wrkNodeNum][i];
+		if (_Inventory[idx] > 0) {
+			_ATimerFlag = false;
+			_ATimer = _Wizard ? 114 : 133;
+			PlaySound(0);
+			PlaySound(34);
+			break;
+		}
+	}
 }
 
 bool KingdomGame::Wound() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 94c9a16429..f64359fa26 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -56,6 +56,7 @@ namespace Kingdom {
 	extern int _MapExit[];
 	extern int _EMLTable[];
 	extern int _ZoomTable[81][9][2];
+	extern int _IconActTable[82][7];
 	struct KingArtEntry {
 		uint8 Width;
 		uint8 Height;


Commit: 409efe3ca8761f60e95c65bebab9ffa31651e236
    https://github.com/scummvm/scummvm/commit/409efe3ca8761f60e95c65bebab9ffa31651e236
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement InventoryAdd and InventoryDel

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index c19b856078..67da94a4f0 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -641,11 +641,15 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 }
 
 void KingdomGame::InventoryDel(int item) {
-	debug("STUB: InventoryDel");
+	if (_Inventory[item] > 0)
+		_Inventory[item]--;
 }
 
 void KingdomGame::InventoryAdd(int item) {
-	debug("STUB: InventoryAdd");
+	if (item >= 4)
+		_Inventory[item] = 1;
+	else
+		_Inventory[item] = 3;
 }
 
 void KingdomGame::DrawPic(int reznum) {


Commit: f2c13960aa16c442ffcb175f48556fbf69afc673
    https://github.com/scummvm/scummvm/commit/f2c13960aa16c442ffcb175f48556fbf69afc673
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement CheckMainScreen

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 877b4829f7..192969f67f 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -726,4 +726,21 @@ int _IconActTable[82][7] = {
 	{ 3, 18,  2,  4, 18,  1, 18},
 	{ 3, 18, 18, 18,  0, 18, 18} 
 };
+
+int _TEASeq[6][2] = {
+	{138, 24},
+	{139,  3},
+	{138, 12},
+	{140,  3},
+	{138, 12},
+	{141,  2}
+};
+
+int _HGASeq[4][2] = {
+	{47, 0},
+	{48, 0},
+	{49, 0},
+	{50, 0}
+};
+
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 67da94a4f0..1a96e0f519 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -748,7 +748,220 @@ void KingdomGame::CheckSaveGame() {
 }
 
 void KingdomGame::CheckMainScreen() {
-	debug("STUB: CheckMainScreen");
+	if (!_CTimerFlag || _StatPlay == 900 || _StatPlay == 901)
+		return;
+
+	_CTimerFlag = false;
+	if (_NoIFScreen)
+		return;
+
+	if (_HealthOld != _Health) {
+		if (_HealthTmr > 0)
+			_HealthTmr--;
+		else {
+			if (_Health <= _HealthOld)
+				_HealthOld--;
+			else
+				_HealthOld++;
+
+			int iconIndex;
+			if (_HealthOld == 0)
+				iconIndex = 12 - 1;
+			else
+				iconIndex = 12 - _HealthOld;
+
+			DrawIcon(4, 0, iconIndex);
+			_HealthTmr = 1;
+		}
+	}
+
+	if (_IconRedraw) {
+		_IconRedraw = false;
+		DrawIcon(4, 0, 12 - _HealthOld);
+		DrawIcon(11, 178, _IconPic[0]);
+		DrawIcon(38, 178, _IconPic[1]);
+		DrawIcon(65, 178, _IconPic[2]);
+		DrawIcon(92, 178, _IconPic[3]);
+		DrawIcon(119, 178, _IconPic[4]);
+		DrawIcon(146, 178, _IconPic[5]);
+		DrawIcon(173, 178, _IconPic[6]);
+		_TreeLeftPic = 0;
+		_TreeRightPic = 0;
+		_TreeEyeTimer = 0;
+		if (_SkylarTimer != 0 || _ATimer != 0) {
+			_TreeHGTimer = 0;
+			_TreeHGUPic = 0;
+		}
+		if (_TideCntl)
+			DrawPic(178);
+	}
+
+	for (int i = 0; i < 7; i++) {
+		int wrkNodeNum = _NodeNum;
+		if (_TSIconOnly)
+			wrkNodeNum = 79;
+		if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+			wrkNodeNum = 80;
+		if (_NodeNum == 21 && word_2D770 == 9)
+			wrkNodeNum = 81;
+		int idx = _IconActTable[wrkNodeNum][i];
+
+		if (_Inventory[idx] >= 1 && word_2D77E != 1 && word_2D7CC != 1 && !_ItemInhibit && !_IconsClosed) {
+			if (_IconPic[i] != 12 + idx) {
+				if (_IconPic[i] == 89 + i)
+					_IconPic[i] = 96 + i;
+				else if (_IconPic[i] == 96 + i)
+					_IconPic[i] = 31;
+				else if (_IconPic[i] == 31)
+					_IconPic[i] = 32;
+				else if (_IconPic[i] == 32)
+					_IconPic[i] = 12 + idx;
+				else
+					_IconPic[i] = 89 + i;
+			} 
+		} else if (_IconSel != i && _IconPic[i] != 89 + i) {
+			if (_IconPic[i] != 12 + idx)
+				_IconPic[i] = 32;
+			else if (_IconPic[i] == 32)
+				_IconPic[i] = 31;
+			else if (_IconPic[i] == 31)
+				_IconPic[i] = 96 + i;
+			else if (_IconPic[i] == 96 + i)
+				_IconPic[i] = 32;
+			else
+				_IconPic[i] = 89 + i;
+		} else
+			continue;
+
+		int posX = (27 * i) + 11;
+		DrawIcon(posX, 178, _IconPic[i]);
+	}
+
+	switch (_TreeLeftSta) {
+	case 0:
+		if (_TreeLeftPic != 33) {
+			DrawIcon(243, 141, 33);
+			_TreeLeftPic = 33;
+		}
+		break;
+	case 1:
+		if (_TreeLeftPic != 34) {
+			DrawIcon(243, 141, 34);
+			_TreeLeftPic = 34;
+		}
+		break;
+	case 2:
+		if (!_Replay) {
+			if (_TreeLeftPic != 33) {
+				DrawIcon(243, 141, 33);
+				_TreeLeftPic = 33;
+			}
+		} else if (_TreeLeftPic != 35) {
+			DrawIcon(243, 141, 35);
+			_TreeLeftPic = 35;
+		}
+		break;
+	case 3:
+		if (_TreeLeftPic != 36) {
+			DrawIcon(243, 141, 36);
+			_TreeLeftPic = 36;
+		}
+		break;
+	default:
+		_TreeLeftPic = 33;
+		_TreeLeftSta = 0;
+		DrawIcon(243, 141, 33);
+		break;
+	}
+
+	switch (_TreeRightSta) {
+	case 0:
+		if (_TreeRightPic == 37) {
+			DrawIcon(290, 143, 37);
+			_TreeRightPic = 37;
+		}
+		break;
+	case 1:
+		if (_Help) {
+			if (_TreeRightPic != 38) {
+				DrawIcon(290, 143, 38);
+				_TreeRightPic = 38;
+			}
+		} else if (_TreeRightPic != 37) {
+			DrawIcon(290, 143, 37);
+			_TreeRightPic = 37;
+		}
+		break;
+	case 2:
+		if (_TreeRightPic != 39) {
+			DrawIcon(290, 143, 39);
+			_TreeRightPic = 39;
+		}
+		break;
+	default:
+		_TreeRightPic = 37;
+		_TreeRightSta = 0;
+		DrawIcon(290, 143, 37);
+		break;
+	}
+
+	if (_Eye) {
+		if (_TreeEyeTimer == 0) {
+			_TreeEyePic = _TEASeq[_TreeEyeSta][0];
+			DrawIcon(261, 51, _TreeEyePic);
+			_TreeEyeTimer, _TEASeq[_TreeEyeSta][1];
+			_TreeEyeSta++;
+			if (_TreeEyeSta == 5)
+				_TreeEyeSta = 0;
+		} else
+			_TreeEyeTimer--;
+	} else if (_TreeEyePic != 37) {
+		DrawIcon(261, 51, 146);
+		_TreeEyePic = 37;
+		_TreeEyeSta = 0;
+		_TreeEyeTimer = 0;
+	}
+
+	int timer = 0;
+	int delta = 7; // CHECKME: the variable is the same than the one used for the first for(), and the value should therefore be 7  
+	if (_SkylarTimer != 0) {
+		delta = 772;
+		timer = _SkylarTimer;
+	}
+	if (_ATimer != 0) {
+		delta = 19;
+		timer = _ATimer;
+	}
+
+	if (timer == 0) {
+		if (_TreeHGUPic != 147) {
+			EraseCursor();
+			DrawIcon(249, 171, 147);
+			_TreeHGUPic = 147;
+		}
+	} else if (_TreeHGTimer == 0) {
+		_TreeHGPic = _HGASeq[_TreeHGSta][0];
+		DrawIcon(249, 185, _TreeHGPic);
+		_TreeHGTimer = _HGASeq[_TreeHGSta][1];
+		_TreeHGSta++;
+		if (_TreeHGSta > 3)
+			_TreeHGSta = 0;
+
+		int var2 = 6;
+		while (true) {
+			if (timer <= 1)
+				break;
+
+			timer -= delta;
+			if (timer > 1)
+				var2--;
+			else {
+				DrawIcon(249, 171, 40 + var2);
+				_TreeHGUPic = 40 + var2;
+			}
+		}
+	} else
+		_TreeHGTimer--;
 }
 
 bool KingdomGame::ChkDesertObstacles() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index f64359fa26..186db63c1c 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -57,6 +57,9 @@ namespace Kingdom {
 	extern int _EMLTable[];
 	extern int _ZoomTable[81][9][2];
 	extern int _IconActTable[82][7];
+	extern int _TEASeq[6][2];
+	extern int _HGASeq[4][2];
+
 	struct KingArtEntry {
 		uint8 Width;
 		uint8 Height;
@@ -110,11 +113,15 @@ namespace Kingdom {
 		int _HealthOld;
 		int _HealthTmr;
 		int _TreeEyeTimer;
+		int _TreeEyePic;
+		int _TreeEyeSta;
 		int _TreeHGTimer;
+		int _TreeHGPic;
 		int _TreeHGUPic;
 		int _TreeLeftPic;
 		int _TreeRightPic;
 		int _TreeRightSta;
+		int _TreeHGSta;
 		bool _TSIconOnly;
 		bool _LastObs;
 		bool _Pouch;


Commit: 524dbe79b5942db957ed803b54515004e9a5c88c
    https://github.com/scummvm/scummvm/commit/524dbe79b5942db957ed803b54515004e9a5c88c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement WaitKey, GetAKey and CursorType

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 192969f67f..6cae881aa0 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -20,6 +20,8 @@
  *
  */
 
+#include "kingdom/kingdom.h"
+
 namespace Kingdom {
 
 char *_RezNames[] = {
@@ -743,4 +745,2634 @@ int _HGASeq[4][2] = {
 	{50, 0}
 };
 
+HotSpot _MouseMapMS[51] = {
+	{ 11,  35, 178, 197, 0x181},
+	{ 38,  62, 178, 197, 0x182},
+	{ 65,  89, 178, 197, 0x183},
+	{ 92, 116, 178, 197, 0x184},
+	{119, 143, 178, 197, 0x185},
+	{146, 170, 178, 197, 0x186},
+	{173, 197, 178, 197, 0x187},
+	{271, 292, 124, 143, 0x44F},
+	{262, 298,  51,  80, 0x18A},
+	{243, 267, 141, 160, 0x18C},
+	{290, 314, 143, 162, 0x18D},
+	{272, 296, 170, 189, 0x457},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{ 74,  92,  60,  75, 0x417},
+	{ 74,  89,  75,  93, 0x418},
+	{ 92, 105,  96, 111, 0x402},
+	{ 74,  87,  50,  61, 0x415},
+	{ 50,  67,  43,  52, 0x406},
+	{ 29,  37,  43,  55, 0x407},
+	{ 45,  56,  67,  74, 0x401},
+	{ 52,  65,  80,  90, 0x400},
+	{ 45,  75, 102, 112, 0x420},
+	{ 25,  38,  59,  69, 0x408},
+	{ 75,  85,  33,  43, 0x40A},
+	{ 75,  90,  99, 112, 0x40B},
+	{ 45,  88, 113, 131, 0x40C},
+	{ 89, 104, 116, 131, 0x40D},
+	{160, 178, 131, 148, 0x421},
+	{135, 149, 118, 130, 0x40F},
+	{131, 142, 138, 148, 0x412},
+	{159, 171, 168, 175, 0x410},
+	{157, 168, 110, 126, 0x419},
+	{  0,   0,   0,   0, 0x411},
+	{106, 128, 122, 154, 0x40E},
+	{171, 283, 156, 170, 0x422},
+	{147, 171, 152, 163, 0x403},
+	{  0,   0,   0,   0, 0x413},
+	{186, 203,  74,  86, 0x41C},
+	{195, 207,  89, 106, 0x41B},
+	{232, 244,  81,  89, 0x41E},
+	{215, 222,  76,  95, 0x404},
+	{214, 223, 100, 110, 0x41D},
+	{182, 196,  88,  97, 0x416},
+	{  0,   0,   0,   0, 0x423},
+	{225, 241, 100, 110, 0x424},
+	{209, 224, 137, 155, 0x425},
+	{211, 221, 115, 126, 0x41A},
+	{  0,   0,   0,   0,     0}
+};
+
+int _CursorTable[96] = {
+	 51,  52,  53,  54,  55,  56,  57,  58,  59,  60,
+	 61,  62,  63,  64,  65,  66,  67,  68,  69,  70,
+	 71,  72,  73,  74,  75,  76,  77,  78,  79,  80,
+	 81,  82,  83,  84,  85,  86,  87,  88, 103, 104,
+	105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+	115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+	125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+	134, 134, 130, 142, 131, 130, 130, 143, 144, 145,
+	148, 149, 150, 151, 151, 151, 152, 153, 145,   0,
+	  0,   0,   0,   0,   0,   0
+};
+
+HotSpot _MouseMapAS[256][8] = {
+	{
+		{15, 110, 48, 62, 0x240},
+		{61, 176, 30, 44, 0x241},
+		{121, 216, 66, 80, 0x242},
+		{121, 216, 48, 62, 0x243},
+		{121, 216, 84, 98, 0x244},
+		{15, 110, 66, 80, 0x245},
+		{15, 110, 84, 98, 0x246},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{119, 197, 78, 84, 0x190},
+		{119, 197, 85, 91, 0x191},
+		{119, 197, 92, 98, 0x192},
+		{119, 197, 99, 105, 0x193},
+		{72, 96, 103, 109, 0x194},
+		{72, 96, 110, 116, 0x195},
+		{72, 96, 117, 123, 0x196},
+		{72, 96, 124, 130, 0x197}
+	},
+	{
+		{72, 96, 131, 137, 0x198},
+		{220, 242, 111, 117, 0x199},
+		{220, 242, 118, 124, 0x19A},
+		{220, 242, 125, 131, 0x19B},
+		{141, 173, 136, 142, 0x19C},
+		{141, 173, 143, 149, 0x19D},
+		{230, 280, 182, 193, 0x19E},
+		{34, 91, 182, 193, 0x19F}
+	},
+	{
+		{4, 227, 17, 160, 0x260},
+		{0, 0, 0, 0, 0x261},
+		{0, 0, 0, 0, 0x262},
+		{0, 0, 0, 0, 0x263},
+		{0, 0, 0, 0, 0x264},
+		{0, 0, 0, 0, 0x265},
+		{0, 0, 0, 0, 0x266},
+		{0, 0, 0, 0, 0x267}
+	},
+	{
+		{0, 0, 0, 0, 0x268},
+		{0, 0, 0, 0, 0x269},
+		{0, 0, 0, 0, 0x26A},
+		{0, 0, 0, 0, 0x26B},
+		{0, 0, 0, 0, 0x26C},
+		{0, 0, 0, 0, 0x26D},
+		{0, 0, 0, 0, 0x26E},
+		{0, 0, 0, 0, 0x26F}
+	},
+	{
+		{17, 120, 122, 132, 0x190},
+		{17, 120, 140, 150, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{69, 242, 114, 129, 0x190},
+		{69, 242, 132, 147, 0x191},
+		{69, 242, 150, 165, 0x192},
+		{69, 131, 168, 183, 0x193},
+		{181, 242, 168, 183, 0x194},
+		{133, 179, 168, 183, 0x24A},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{73, 105, 56, 80, 0x428},
+		{89, 131, 88, 110, 0x42A},
+		{124, 152, 56, 81, 0x42B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{61, 91, 61, 87, 0x417},
+		{92, 122, 84, 110, 0x40A},
+		{123, 154, 61, 87, 0x406},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{47, 80, 48, 116, 0x445},
+		{149, 182, 51, 116, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{62, 88, 76, 141, 0x42F},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{140, 170, 102, 127, 0x428},
+		{73, 117, 65, 82, 0x429},
+		{170, 216, 96, 121, 0x42A},
+		{121, 144, 34, 62, 0x42B},
+		{160, 183, 41, 59, 0x42C},
+		{21, 51, 125, 151, 0x42D},
+		{201, 217, 43, 76, 0x42E},
+		{76, 114, 119, 150, 0x42F}
+	},
+	{
+		{18, 48, 31, 61, 0x430},
+		{57, 72, 88, 122, 0x431},
+		{182, 207, 125, 155, 0x432},
+		{176, 203, 26, 37, 0x433},
+		{55, 75, 23, 51, 0x434},
+		{120, 166, 133, 155, 0x435},
+		{96, 117, 93, 113, 0x436},
+		{140, 189, 68, 89, 0x437}
+	},
+	{
+		{84, 113, 30, 53, 0x438},
+		{21, 42, 78, 105, 0x439},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{4, 227, 17, 160, 0x241}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{86, 112, 27, 85, 0x453},
+		{85, 127, 29, 90, 0x453},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{128, 149, 55, 114, 0x445},
+		{180, 215, 36, 120, 0x445},
+		{0, 0, 0, 0, 0x192},
+		{69, 86, 86, 103, 0x437},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{128, 149, 55, 114, 0x445},
+		{180, 215, 36, 120, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{53, 131, 41, 159, 0x445},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{204, 227, 100, 160, 0x441},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{94, 106, 83, 104, 0x443},
+		{107, 127, 83, 104, 0x405},
+		{75, 94, 98, 133, 0x409},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{67, 135, 22, 68, 0x407},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{88, 156, 102, 158, 0x418},
+		{96, 137, 20, 47, 0x415},
+		{21, 83, 18, 37, 0x406},
+		{19, 45, 76, 102, 0x401},
+		{23, 68, 134, 157, 0x400},
+		{96, 156, 47, 102, 0x443},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{68, 131, 117, 158, 0x418},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{103, 158, 18, 40, 0x417},
+		{163, 179, 127, 150, 0x402},
+		{20, 43, 18, 43, 0x401},
+		{28, 67, 67, 98, 0x400},
+		{5, 53, 139, 159, 0x420},
+		{95, 151, 124, 159, 0x40B},
+		{53, 94, 124, 159, 0x420},
+		{89, 158, 40, 103, 0x443}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{33, 99, 18, 53, 0x418},
+		{40, 82, 69, 103, 0x40B},
+		{5, 39, 69, 103, 0x420},
+		{5, 82, 103, 159, 0x40C},
+		{82, 123, 128, 159, 0x40D},
+		{96, 120, 73, 96, 0x443},
+		{123, 184, 112, 159, 0x40E},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{113, 125, 43, 60, 0x40A},
+		{99, 114, 60, 80, 0x409},
+		{99, 135, 80, 104, 0x443},
+		{99, 160, 104, 159, 0x417},
+		{17, 56, 134, 159, 0x401},
+		{9, 81, 65, 98, 0x406},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 216, 109, 147, 0x417},
+		{161, 193, 81, 105, 0x415},
+		{91, 110, 131, 154, 0x401},
+		{31, 66, 128, 147, 0x408},
+		{84, 141, 70, 96, 0x443},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{67, 85, 72, 98, 0x443},
+		{117, 182, 65, 96, 0x406},
+		{124, 147, 130, 153, 0x401},
+		{56, 89, 124, 146, 0x408},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{92, 106, 120, 130, 0x446},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 209, 50, 98, 0x417},
+		{157, 209, 98, 159, 0x418},
+		{161, 191, 29, 50, 0x415},
+		{91, 139, 18, 44, 0x406},
+		{95, 128, 137, 151, 0x400},
+		{32, 61, 81, 95, 0x408},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{87, 109, 81, 105, 0x443},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 214, 18, 46, 0x417},
+		{151, 214, 46, 105, 0x418},
+		{87, 108, 22, 46, 0x401},
+		{58, 43, 141, 57, 0x40B},
+		{24, 62, 18, 37, 0x408},
+		{155, 200, 123, 157, 0x40B},
+		{0, 0, 0, 0, 0x196},
+		{92, 131, 77, 97, 0x443}
+	},
+	{
+		{113, 155, 123, 157, 0x420},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{94, 129, 121, 145, 0x415},
+		{14, 79, 108, 142, 0x406},
+		{0, 0, 0, 0, 0x192},
+		{102, 127, 96, 107, 0x443},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 125, 62, 104, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{5, 71, 102, 160, 0x406},
+		{0, 0, 0, 0, 0x193},
+		{71, 92, 97, 146, 0x409},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{40, 133, 99, 158, 0x443},
+		{133, 188, 94, 145, 0x405},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{104, 122, 124, 148, 0x445},
+		{151, 165, 32, 56, 0x445},
+		{100, 118, 34, 55, 0x19F},
+		{50, 66, 35, 58, 0x445},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{89, 129, 58, 106, 0x19F}
+	},
+	{
+		{146, 195, 18, 51, 0x418},
+		{87, 130, 21, 45, 0x400},
+		{150, 204, 66, 99, 0x40B},
+		{63, 112, 80, 103, 0x443},
+		{112, 150, 66, 103, 0x443},
+		{63, 183, 103, 159, 0x40C},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{125, 182, 18, 42, 0x406},
+		{122, 148, 80, 105, 0x401},
+		{130, 175, 135, 156, 0x400},
+		{66, 85, 20, 49, 0x407},
+		{0, 0, 0, 0, 0x194},
+		{53, 89, 77, 95, 0x443},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{88, 144, 18, 49, 0x418},
+		{158, 178, 73, 95, 0x402},
+		{16, 69, 18, 43, 0x400},
+		{5, 52, 81, 108, 0x420},
+		{52, 88, 65, 108, 0x420},
+		{5, 134, 108, 159, 0x40C},
+		{135, 179, 124, 159, 0x40D},
+		{88, 134, 65, 108, 0x443}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{40, 160, 49, 148, 0x442},
+		{5, 39, 49, 159, 0x40B},
+		{210, 226, 75, 116, 0x402},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{135, 177, 68, 111, 0x443},
+		{158, 176, 17, 34, 0x402},
+		{90, 132, 17, 46, 0x40B},
+		{23, 55, 24, 91, 0x420},
+		{4, 55, 27, 124, 0x40C},
+		{55, 113, 17, 124, 0x40C},
+		{113, 154, 65, 124, 0x40C},
+		{154, 227, 81, 160, 0x40E}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{141, 213, 79, 110, 0x410},
+		{0, 0, 0, 0, 0x191},
+		{126, 188, 24, 54, 0x403},
+		{5, 101, 18, 90, 0x40E},
+		{5, 65, 90, 159, 0x40E},
+		{65, 98, 213, 159, 0x40E},
+		{0, 0, 0, 0, 0x196},
+		{5, 213, 18, 159, 0x40E}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{19, 66, 18, 64, 0x40D},
+		{5, 32, 18, 73, 0x40C},
+		{155, 184, 84, 111, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{134, 197, 18, 59, 0x40F},
+		{189, 227, 120, 159, 0x403},
+		{5, 155, 18, 132, 0x443}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{85, 132, 18, 60, 0x419},
+		{0, 0, 0, 0, 0x191},
+		{33, 63, 88, 117, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{72, 144, 130, 159, 0x403},
+		{0, 0, 0, 0, 0x195},
+		{90, 156, 60, 130, 0x443},
+		{144, 94, 130, 159, 0x422}
+	},
+	{
+		{8, 90, 18, 63, 0x40F},
+		{132, 194, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 215, 111, 159, 0x421},
+		{85, 153, 49, 111, 0x443},
+		{104, 131, 134, 159, 0x412},
+		{153, 201, 54, 111, 0x419},
+		{0, 0, 0, 0, 0x194},
+		{5, 104, 128, 159, 0x40E},
+		{5, 161, 54, 159, 0x40E},
+		{201, 227, 49, 159, 0x414}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 126, 79, 106, 0x443},
+		{163, 212, 56, 108, 0x421},
+		{73, 139, 18, 56, 0x40F},
+		{156, 181, 18, 49, 0x419},
+		{0, 0, 0, 0, 0x194},
+		{129, 194, 121, 156, 0x403},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{22, 100, 18, 138, 0x40E},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{96, 135, 88, 115, 0x443},
+		{29, 96, 68, 115, 0x410},
+		{28, 80, 17, 68, 0x403},
+		{0, 0, 0, 0, 0x193},
+		{80, 135, 17, 88, 0x422},
+		{135, 204, 17, 158, 0x414},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{69, 136, 71, 112, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{136, 175, 91, 119, 0x41F},
+		{0, 0, 0, 0, 0x193},
+		{131, 185, 18, 91, 0x422},
+		{185, 226, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x196},
+		{67, 131, 18, 71, 0x403}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{91, 133, 52, 112, 0x443},
+		{16, 84, 63, 117, 0x40F},
+		{115, 160, 114, 160, 0x421},
+		{37, 70, 139, 160, 0x412},
+		{128, 170, 36, 51, 0x416},
+		{140, 227, 17, 38, 0x416},
+		{152, 227, 38, 160, 0x414},
+		{51, 91, 118, 159, 0x40E}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{67, 150, 53, 159, 0x445},
+		{150, 226, 19, 159, 0x414},
+		{5, 67, 46, 159, 0x40F},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{59, 146, 77, 135, 0x443},
+		{146, 193, 77, 124, 0x403},
+		{129, 206, 124, 159, 0x410},
+		{94, 124, 36, 63, 0x412},
+		{0, 0, 0, 0, 0x195},
+		{94, 147, 18, 77, 0x40E},
+		{5, 129, 18, 158, 0x40E}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{50, 109, 115, 159, 0x422},
+		{0, 0, 0, 0, 0x413},
+		{50, 135, 46, 159, 0x414},
+		{135, 159, 113, 159, 0x414},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{93, 135, 78, 141, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{39, 97, 17, 78, 0x421},
+		{39, 93, 78, 123, 0x403},
+		{39, 135, 123, 159, 0x410},
+		{97, 195, 17, 159, 0x414},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196}
+	},
+	{
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E}
+	},
+	{
+		{15, 66, 104, 141, 0x190},
+		{105, 164, 87, 155, 0x191},
+		{174, 225, 100, 154, 0x192},
+		{81, 132, 37, 78, 0x193},
+		{165, 212, 26, 78, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{84, 150, 79, 114, 0x443},
+		{66, 200, 127, 159, 0x410},
+		{47, 75, 38, 64, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{100, 156, 18, 79, 0x421},
+		{150, 200, 72, 132, 0x422},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{156, 226, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{26, 42, 48, 77, 0x404},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{112, 134, 77, 84, 0x443},
+		{97, 134, 84, 102, 0x443},
+		{55, 71, 52, 73, 0x41B},
+		{97, 123, 18, 84, 0x404},
+		{84, 97, 61, 92, 0x404},
+		{154, 178, 20, 42, 0x41E},
+		{134, 183, 72, 102, 0x424},
+		{95, 129, 123, 149, 0x41A}
+	},
+	{
+		{14, 54, 79, 159, 0x414},
+		{66, 86, 73, 82, 0x41B},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 136, 84, 102, 0x443},
+		{104, 116, 101, 122, 0x41B},
+		{113, 134, 122, 130, 0x41B},
+		{78, 97, 96, 110, 0x416},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 136, 84, 102, 0x443},
+		{74, 129, 26, 57, 0x41C},
+		{103, 118, 63, 85, 0x443},
+		{112, 131, 85, 95, 0x443},
+		{78, 99, 58, 70, 0x416},
+		{160, 182, 86, 112, 0x41D},
+		{146, 182, 95, 112, 0x41D},
+		{146, 170, 28, 95, 0x404}
+	},
+	{
+		{129, 146, 71, 102, 0x404},
+		{59, 98, 84, 160, 0x414},
+		{144, 177, 134, 159, 0x41A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{144, 176, 76, 110, 0x404},
+		{175, 206, 18, 110, 0x404},
+		{167, 226, 84, 159, 0x41D},
+		{4, 45, 18, 48, 0x416},
+		{71, 89, 47, 85, 0x443},
+		{77, 132, 86, 110, 0x443},
+		{4, 67, 18, 39, 0x41C}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{96, 119, 76, 93, 0x443},
+		{82, 120, 125, 153, 0x424},
+		{43, 74, 129, 150, 0x41D},
+		{44, 64, 71, 112, 0x404},
+		{32, 64, 112, 129, 0x404},
+		{0, 0, 0, 0, 0x41B},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{99, 119, 69, 103, 0x443},
+		{135, 185, 123, 154, 0x424},
+		{112, 135, 129, 138, 0x41D},
+		{92, 135, 138, 154, 0x41D},
+		{53, 70, 107, 129, 0x41B},
+		{63, 81, 129, 138, 0x41B},
+		{156, 177, 76, 91, 0x41E},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{74, 124, 38, 133, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{70, 110, 121, 159, 0x441},
+		{92, 112, 33, 59, 0x445},
+		{150, 177, 24, 49, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{129, 149, 43, 60, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{130, 182, 17, 46, 0x41C},
+		{158, 168, 49, 69, 0x41B},
+		{164, 183, 69, 77, 0x41B},
+		{105, 166, 71, 160, 0x414},
+		{46, 80, 98, 149, 0x419},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 129, 78, 86, 0x443},
+		{105, 129, 86, 99, 0x443},
+		{34, 84, 134, 159, 0x425},
+		{48, 75, 81, 109, 0x41A},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 141, 76, 103, 0x443},
+		{53, 80, 125, 150, 0x41A},
+		{67, 92, 80, 87, 0x41D},
+		{54, 92, 87, 103, 0x41D},
+		{38, 54, 63, 95, 0x404},
+		{54, 78, 20, 87, 0x404},
+		{113, 131, 26, 43, 0x41E},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{8, 38, 58, 103, 0x41B},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{58, 68, 88, 103, 0x445},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 133, 81, 120, 0x189},
+		{104, 133, 120, 133, 0x189},
+		{112, 123, 65, 142, 0x189},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{18, 65, 18, 159, 0x414},
+		{65, 143, 75, 159, 0x414},
+		{143, 157, 96, 159, 0x414},
+		{143, 150, 86, 96, 0x414},
+		{99, 120, 38, 60, 0x41A},
+		{65, 112, 58, 75, 0x414}
+	},
+	{
+		{107, 119, 61, 88, 0x445},
+		{91, 110, 95, 136, 0x446},
+		{181, 208, 66, 146, 0x447},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{100, 129, 74, 100, 0x443},
+		{103, 140, 29, 54, 0x41D},
+		{140, 189, 24, 54, 0x424},
+		{89, 126, 18, 41, 0x404},
+		{46, 89, 18, 41, 0x41B},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{95, 129, 124, 131, 0x425}
+	},
+	{
+		{95, 139, 131, 159, 0x425},
+		{139, 146, 136, 159, 0x425},
+		{5, 58, 18, 159, 0x414},
+		{58, 122, 111, 159, 0x414},
+		{129, 154, 120, 131, 0x414},
+		{139, 160, 131, 159, 0x414},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{125, 179, 49, 126, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{159, 173, 17, 32, 0x445},
+		{148, 165, 40, 61, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{39, 59, 35, 69, 0x447},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{56, 79, 88, 133, 0x445},
+		{103, 122, 81, 136, 0x446},
+		{161, 190, 85, 145, 0x447},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{65, 105, 87, 119, 0x438},
+		{141, 165, 55, 78, 0x40A},
+		{182, 203, 74, 95, 0x414},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{93, 127, 39, 80, 0x40A},
+		{21, 54, 92, 129, 0x41D},
+		{167, 200, 94, 134, 0x422},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{59, 95, 55, 95, 0x40A},
+		{129, 169, 82, 131, 0x41D},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{57, 92, 76, 102, 0x442},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{4, 44, 74, 104, 0x441},
+		{85, 143, 73, 98, 0x448},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x191},
+		{125, 151, 103, 125, 0x42C},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{38, 47, 151, 159, 0x42D},
+		{88, 112, 143, 154, 0x42D},
+		{79, 123, 92, 132, 0x42D},
+		{48, 64, 98, 113, 0x42D},
+		{7, 12, 97, 102, 0x42D},
+		{78, 104, 105, 114, 0x42D},
+		{103, 111, 100, 106, 0x42D}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{13, 48, 82, 112, 0x42D},
+		{45, 54, 61, 75, 0x42D},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{68, 188, 65, 105, 0x441}
+	},
+	{
+		{164, 191, 38, 109, 0x445},
+		{56, 93, 69, 83, 0x444},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{30, 44, 50, 77, 0x198},
+		{30, 44, 113, 140, 0x199},
+		{308, 319, 179, 191, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{4, 227, 17, 160, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{39, 67, 73, 118, 0x450},
+		{123, 151, 37, 76, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{90, 130, 99, 123, 0x432},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{67, 152, 99, 139, 0x449},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 194, 29, 73, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{110, 123, 82, 130, 0x431},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{104, 121, 60, 86, 0x445},
+		{78, 91, 52, 77, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{151, 190, 31, 105, 0x445},
+		{37, 65, 23, 105, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{144, 223, 48, 105, 0x441},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{11, 59, 80, 141, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{160, 208, 80, 140, 0x446},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{74, 91, 78, 105, 0x42E},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{181, 217, 49, 128, 0x445},
+		{17, 50, 28, 131, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{27, 199, 79, 159, 0x452},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{191, 222, 57, 84, 0x442},
+		{103, 119, 130, 141, 0x44A},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{167, 194, 115, 130, 0x433},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{73, 104, 109, 138, 0x434},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{85, 133, 47, 93, 0x452},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{39, 67, 73, 118, 0x445},
+		{123, 151, 37, 76, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{146, 177, 61, 114, 0x445},
+		{14, 43, 69, 131, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{78, 145, 55, 144, 0x456},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{133, 194, 18, 72, 0x413},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{159, 197, 38, 71, 0x441},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 198, 42, 80, 0x404},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{197, 217, 84, 128, 0x453},
+		{26, 42, 48, 77, 0x404},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{84, 105, 77, 108, 0x435},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 197, 77, 119, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 277, 57, 73, 0x441},
+		{47, 119, 107, 160, 0x448},
+		{73, 98, 43, 90, 0x44B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 277, 57, 73, 0x441},
+		{0, 0, 0, 0, 0x448},
+		{73, 98, 43, 90, 0x44B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{47, 119, 107, 160, 0x451},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 124, 94, 137, 0x441},
+		{67, 81, 71, 160, 0x448},
+		{15, 48, 19, 160, 0x44B},
+		{211, 227, 17, 160, 0x44C},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{181, 205, 50, 96, 0x441},
+		{107, 166, 123, 160, 0x448},
+		{4, 25, 71, 130, 0x44B},
+		{210, 227, 60, 105, 0x44C},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 124, 70, 106, 0x439},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{128, 191, 43, 129, 0x441},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{17, 51, 50, 126, 0x445},
+		{179, 211, 30, 129, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{17, 51, 50, 126, 0x445},
+		{179, 211, 30, 129, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{117, 139, 73, 135, 0x430},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{20, 37, 88, 132, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{20, 37, 88, 132, 0x445},
+		{101, 125, 99, 141, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{4, 41, 92, 160, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{61, 78, 69, 86, 0x458},
+		{136, 142, 17, 130, 0x44D},
+		{167, 175, 17, 139, 0x44E},
+		{181, 194, 58, 136, 0x445},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{164, 192, 71, 130, 0x445},
+		{105, 141, 70, 131, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197}
+	},
+	{
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	}
+};
+
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 1a96e0f519..d8d0b2899c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1032,9 +1032,15 @@ void KingdomGame::DrawIcon(int x, int y, int index) {
 	debug("STUB: DrawIcon");
 }
 
-int KingdomGame::WaitKey() {
-	int retval = 0;
+int KingdomGame::GetAKey() {
+	DrawCursor();
+	if (_MouseButton != 0 && _MouseDebound == 0) {
+		_MouseDebound = true;
+		return (_MouseButton == 2) ? 2 : 1;
+	}
 
+	int retval = 0;
+	_MouseDebound = false;
 	Common::Event event;
 	while (g_system->getEventManager()->pollEvent(event)) {
 		switch (event.type) {
@@ -1079,6 +1085,10 @@ int KingdomGame::WaitKey() {
 	return retval;
 }
 
+int KingdomGame::WaitKey() {
+	return GetAKey();
+}
+
 void KingdomGame::DrawCursor() {
 	ReadMouse();
 
@@ -1086,7 +1096,8 @@ void KingdomGame::DrawCursor() {
 	g_system->getEventManager()->pollEvent(event);
 	_CursorX = event.mouse.x;
 	_CursorY = event.mouse.y;
-	_CursorDef = CursorType();
+
+	CursorType();
 	SetCursor(_CursorDef);
 	_OldCursorX = _CursorX;
 	_OldCursorY = _CursorY;
@@ -1096,13 +1107,149 @@ void KingdomGame::DrawCursor() {
 	_CursorDrawn = true;
 }
 
+void KingdomGame::CursorType() {
+	_MouseValue = 0;
+	if (_CurrMap != 1 && _StatPlay >= 30) {
+		int var2 = _StatPlay == 901 ? 80 : 0;
+		int var6 = _StatPlay == 901 ? 35 : 16;
+		for (int i = 0; i < var6 + 1; i++) {
+			if (i == var6) {
+				int tmpVal = checkMouseMapAS();
+				if (tmpVal == -1) {
+					CursorTypeExit();
+					return;
+				} else
+					_MouseValue = tmpVal;
+			} else if (_CursorX >= _MouseMapMS[var2 + i]._minX && _CursorX < _MouseMapMS[var2 + i]._maxX && _CursorY >= _MouseMapMS[var2 + i]._minY && _CursorY < _MouseMapMS[var2 + i]._maxY) {
+				_MouseValue = _MouseMapMS[var2 + i]._mouseValue;
+				break;
+			}
+		}
+	} else {
+		int tmpVal = checkMouseMapAS();
+		if (tmpVal == -1) {
+			CursorTypeExit();
+			return;
+		} else {
+			_MouseValue = tmpVal;
+		}
+	}
 
-int KingdomGame::CursorType() {
-	debug("STUB: CursorType");
-	// Default cursor
-	return 0x19C;
+	switch(_MouseValue) {
+	case 0x18A:
+		if (_Eye)
+			_MouseValue = _ASMode == 0 ? 0x43A : 0x43B;
+		else
+			_MouseValue = 0;
+		break;
+	case 0x18C:
+		if (_TreeLeftSta == 1)
+			_MouseValue = 0x43D;
+		else if (_TreeLeftSta == 3)
+			_MouseValue = 0x43F;
+		else if (_TreeLeftSta == 0)
+			_MouseValue = 0;
+		else if (_TreeLeftSta == 2 && _Replay)
+			_MouseValue = 0x43E;
+		else
+			_MouseValue = 0;
+		break;
+	case 0x18D:
+		if (_TreeRightSta == 1)
+			_MouseValue = _Help ? 0x43C : 0;
+		if (_TreeRightSta == 2)
+			_MouseValue = 0x440;
+		break;
+	case 0x24A:
+		if (_SaveFile == 0)
+			_MouseValue = 0;
+		break;
+	case 0x407:
+		if (_StatPlay == 182 && word_2D76A < 9)
+			_MouseValue = 0;
+		break;
+	case 0x40D:
+		if (word_2D77E == 1)
+			_MouseValue = 0;
+		break;
+	case 0x41F:
+		if (word_2D784 == 0)
+			_MouseValue = 0;
+		break;
+	case 0x422:
+	case 0x425:
+		if (!_Wizard)
+			_MouseValue = 0;
+		break;
+	case 0x428:
+		if (_NodeNum == 5 && _GameMode != 2 && _Spell1)
+			_MouseValue = 0;
+		break;
+	case 0x42A:
+		if (_NodeNum == 5 && _GameMode != 2 && _Spell2)
+			_MouseValue = 0;
+		break;
+	case 0x42B:
+		if (_NodeNum == 5 && _GameMode != 2 && _Spell3)
+			_MouseValue = 0;
+		break;
+	case 0x445:
+		if (_StatPlay == 161 && word_2D766 == 0 && _Wizard)
+			_MouseValue = 0x450;
+		break;
+	case 0x44F:
+		if (!_Pouch)
+			_MouseValue = 0;
+		break;
+	case 0457:
+		if (!_TideCntl)
+			_MouseValue = 0;
+		break;
+	}
+
+	_IconSelect = 9;
+	for (int var6 = 0; var6 < 8; var6++) {
+		if (_MouseValue == 181 + var6) {
+			int var2 = _NodeNum;
+			if (_TSIconOnly!= 0)
+				var2 = 79;
+			if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+				var2 = 80;
+			int indx = _IconActTable[var2][var6];
+			if (_Inventory[indx] != 0 && word_2D77E != 1 && word_2D7CC != 1 && !_IconsClosed && !_ItemInhibit) {
+				_MouseValue = indx + 0x428;
+				_IconSelect = var6;
+				break;
+			}
+			_MouseValue = 0;
+		}
+	}
+
+	if (_CurrMap == 11) {
+		if (_MouseValue > 0x427 && _MouseValue < 0x43A) {
+			if (_Inventory[_MouseValue - 0x428] < 1)
+				_MouseValue = 0x241;
+		}
+	}
+	CursorTypeExit();
+}
+
+void KingdomGame::CursorTypeExit() {
+	if (_MouseValue >= 0x400)
+		_CursorDef = _CursorTable[_MouseValue - 0x400];
+	else 
+		_CursorDef = (_MouseValue != 0) ? 0x68 : 0x67;
 }
 
+int KingdomGame::checkMouseMapAS() {
+	int var6 = _CurrMap == 11 ? 32 : 16;
+	for (int i = 0; i < var6; i++) {
+		if (_CursorX >= _MouseMapAS[_CurrMap][i]._minX && _CursorX < _MouseMapAS[_CurrMap][i]._maxX
+		 && _CursorY >= _MouseMapAS[_CurrMap][i]._minY && _CursorY < _MouseMapAS[_CurrMap][i]._maxY)
+			return _MouseMapAS[_CurrMap][i]._mouseValue;
+	}
+	return -1;
+}
 void KingdomGame::SetCursor(int cursor) {
 	KingArtEntry Cursor = _kingartEntries[cursor / 4];
 	CursorMan.replaceCursor(Cursor.data, Cursor.Width, Cursor.Height, 0, 0, 255);
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 186db63c1c..d9a9137bb5 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -52,6 +52,20 @@ namespace Kingdom {
 		kDebugGeneral = 1 << 0
 	};
 
+	struct KingArtEntry {
+		uint8 Width;
+		uint8 Height;
+		byte* data;
+	};
+
+	struct HotSpot {
+		int16 _minX;
+		int16 _maxX;
+		int16 _minY;
+		int16 _maxY;
+		int16 _mouseValue;
+	};
+
 	extern char *_RezNames[];
 	extern int _MapExit[];
 	extern int _EMLTable[];
@@ -59,12 +73,9 @@ namespace Kingdom {
 	extern int _IconActTable[82][7];
 	extern int _TEASeq[6][2];
 	extern int _HGASeq[4][2];
-
-	struct KingArtEntry {
-		uint8 Width;
-		uint8 Height;
-		byte* data;
-	};
+	extern HotSpot _MouseMapMS[51];
+	extern int _CursorTable[96];
+	extern HotSpot _MouseMapAS[256][8];
 
 	class KingdomGame : public Engine {
 	public:
@@ -165,6 +176,8 @@ namespace Kingdom {
 		int _OldCursorX;
 		int _OldCursorY;
 		int _IconSel;
+		int _IconSelect;
+		bool _MouseDebound;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;
@@ -273,9 +286,12 @@ namespace Kingdom {
 		void DrawIcon(int x, int y, int index);
 		int WaitKey();
 		void DrawCursor();
-		int CursorType();
+		void CursorType();
 		void LoadKingArt();
 		void SetCursor(int cursor);
+		int GetAKey();
+		int checkMouseMapAS();
+		void CursorTypeExit();
 	};
 } // End of namespace Kingdom
 


Commit: aa440acd038518bbc482f6c27f60574c0551bf00
    https://github.com/scummvm/scummvm/commit/aa440acd038518bbc482f6c27f60574c0551bf00
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Initialize CurrMap to avoid a crash

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index d8d0b2899c..7a06d91a0b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -56,6 +56,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_ASPtr = nullptr;
 	_quit = false;
 	_MouseValue = 0;
+	_CurrMap = 0;
 
 	_kingartEntries = nullptr;
 }


Commit: 845aa0ca467f80b78c8941a1da0c07289dbd4a3a
    https://github.com/scummvm/scummvm/commit/845aa0ca467f80b78c8941a1da0c07289dbd4a3a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix a couple of bugs in CursorType logic, some cleanup

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 462fbe64b4..40f03831bb 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -29,7 +29,7 @@ void KingdomGame::GPLogic1() {
 	case 10:
 		_NodeNum = 1;
 		InitPlay();
-		_Replay = 0;
+		_Replay = false;
 		GPLogic1_SubSP10();
 		break;
 	case 11:
@@ -716,7 +716,7 @@ void KingdomGame::GPLogic1() {
 		case 0x198: {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
-			_Replay = 1;
+			_Replay = true;
 			int oldPMovie = _PMovie;
 			PlayMovie(208);
 			_PMovie = oldPMovie;
@@ -731,7 +731,7 @@ void KingdomGame::GPLogic1() {
 		case 0x199: {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
-			_Replay = 1;
+			_Replay = true;
 			int oldPMovie = _PMovie;
 			PlayMovie(207);
 			_PMovie = oldPMovie;
@@ -778,7 +778,7 @@ void KingdomGame::GPLogic1() {
 			_Help = 0;
 			_Eye = 0;
 			_Pouch = 0;
-			_Replay = 0;
+			_Replay = false;
 			FShowPic(105);
 			_CurrMap = 86;
 			break;
@@ -834,7 +834,7 @@ void KingdomGame::GPLogic1() {
 			EnAll();
 			if (Wound()) {
 				_ATimer = 0;
-				_Replay = 0;
+				_Replay = false;
 				PlayMovie(31);
 				_StatPlay = _NextNode;
 				_LoopFlag = true;
@@ -847,7 +847,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42C:
 			_ATimer = 0;
-			_Replay = 0;
+			_Replay = false;
 			EnAll();
 			PlayMovie(34);
 			_UserInput = 0;
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index b956e11c23..4051341c91 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -820,7 +820,7 @@ void KingdomGame::GPLogic2() {
 			if (!word_2D796) {
 				_ATimer = 0;
 				_Help = 1;
-				_Replay = 1;
+				_Replay = true;
 				_Pouch = 1;
 				_FstFwd = 1;
 				PlayMovie(107);
diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 6cae881aa0..6ee198cc37 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -812,7 +812,7 @@ int _CursorTable[96] = {
 	  0,   0,   0,   0,   0,   0
 };
 
-HotSpot _MouseMapAS[256][8] = {
+HotSpot _MouseMapAS[128][16] = {
 	{
 		{15, 110, 48, 62, 0x240},
 		{61, 176, 30, 44, 0x241},
@@ -821,9 +821,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{121, 216, 84, 98, 0x244},
 		{15, 110, 66, 80, 0x245},
 		{15, 110, 84, 98, 0x246},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -841,9 +839,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{72, 96, 103, 109, 0x194},
 		{72, 96, 110, 116, 0x195},
 		{72, 96, 117, 123, 0x196},
-		{72, 96, 124, 130, 0x197}
-	},
-	{
+		{72, 96, 124, 130, 0x197},
 		{72, 96, 131, 137, 0x198},
 		{220, 242, 111, 117, 0x199},
 		{220, 242, 118, 124, 0x19A},
@@ -861,9 +857,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x264},
 		{0, 0, 0, 0, 0x265},
 		{0, 0, 0, 0, 0x266},
-		{0, 0, 0, 0, 0x267}
-	},
-	{
+		{0, 0, 0, 0, 0x267},
 		{0, 0, 0, 0, 0x268},
 		{0, 0, 0, 0, 0x269},
 		{0, 0, 0, 0, 0x26A},
@@ -881,9 +875,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -901,9 +893,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{181, 242, 168, 183, 0x194},
 		{133, 179, 168, 183, 0x24A},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -921,9 +911,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -941,9 +929,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -961,9 +947,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -981,9 +965,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1001,9 +983,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1021,9 +1001,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1041,9 +1019,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{160, 183, 41, 59, 0x42C},
 		{21, 51, 125, 151, 0x42D},
 		{201, 217, 43, 76, 0x42E},
-		{76, 114, 119, 150, 0x42F}
-	},
-	{
+		{76, 114, 119, 150, 0x42F},
 		{18, 48, 31, 61, 0x430},
 		{57, 72, 88, 122, 0x431},
 		{182, 207, 125, 155, 0x432},
@@ -1061,9 +1037,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1081,9 +1055,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1101,9 +1073,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1121,9 +1091,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1141,9 +1109,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{53, 131, 41, 159, 0x445},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1161,9 +1127,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1181,9 +1145,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1201,9 +1163,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1221,9 +1181,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{23, 68, 134, 157, 0x400},
 		{96, 156, 47, 102, 0x443},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1241,9 +1199,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1261,9 +1217,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{5, 53, 139, 159, 0x420},
 		{95, 151, 124, 159, 0x40B},
 		{53, 94, 124, 159, 0x420},
-		{89, 158, 40, 103, 0x443}
-	},
-	{
+		{89, 158, 40, 103, 0x443},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1281,9 +1235,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{82, 123, 128, 159, 0x40D},
 		{96, 120, 73, 96, 0x443},
 		{123, 184, 112, 159, 0x40E},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1301,9 +1253,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{17, 56, 134, 159, 0x401},
 		{9, 81, 65, 98, 0x406},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1321,9 +1271,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{84, 141, 70, 96, 0x443},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1341,9 +1289,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1361,9 +1307,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{92, 106, 120, 130, 0x446},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1381,9 +1325,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{95, 128, 137, 151, 0x400},
 		{32, 61, 81, 95, 0x408},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{87, 109, 81, 105, 0x443},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1401,9 +1343,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{24, 62, 18, 37, 0x408},
 		{155, 200, 123, 157, 0x40B},
 		{0, 0, 0, 0, 0x196},
-		{92, 131, 77, 97, 0x443}
-	},
-	{
+		{92, 131, 77, 97, 0x443},
 		{113, 155, 123, 157, 0x420},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1421,9 +1361,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1441,9 +1379,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{71, 92, 97, 146, 0x409},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1461,9 +1397,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{40, 133, 99, 158, 0x443},
 		{133, 188, 94, 145, 0x405},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1481,9 +1415,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1501,9 +1433,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1521,9 +1451,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{112, 150, 66, 103, 0x443},
 		{63, 183, 103, 159, 0x40C},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1541,9 +1469,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{53, 89, 77, 95, 0x443},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1561,9 +1487,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{52, 88, 65, 108, 0x420},
 		{5, 134, 108, 159, 0x40C},
 		{135, 179, 124, 159, 0x40D},
-		{88, 134, 65, 108, 0x443}
-	},
-	{
+		{88, 134, 65, 108, 0x443},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1581,9 +1505,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{40, 160, 49, 148, 0x442},
@@ -1601,9 +1523,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{4, 55, 27, 124, 0x40C},
 		{55, 113, 17, 124, 0x40C},
 		{113, 154, 65, 124, 0x40C},
-		{154, 227, 81, 160, 0x40E}
-	},
-	{
+		{154, 227, 81, 160, 0x40E},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1621,9 +1541,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{5, 65, 90, 159, 0x40E},
 		{65, 98, 213, 159, 0x40E},
 		{0, 0, 0, 0, 0x196},
-		{5, 213, 18, 159, 0x40E}
-	},
-	{
+		{5, 213, 18, 159, 0x40E},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1641,9 +1559,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{134, 197, 18, 59, 0x40F},
 		{189, 227, 120, 159, 0x403},
-		{5, 155, 18, 132, 0x443}
-	},
-	{
+		{5, 155, 18, 132, 0x443},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1661,9 +1577,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{72, 144, 130, 159, 0x403},
 		{0, 0, 0, 0, 0x195},
 		{90, 156, 60, 130, 0x443},
-		{144, 94, 130, 159, 0x422}
-	},
-	{
+		{144, 94, 130, 159, 0x422},
 		{8, 90, 18, 63, 0x40F},
 		{132, 194, 18, 159, 0x414},
 		{0, 0, 0, 0, 0x19A},
@@ -1681,9 +1595,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{5, 104, 128, 159, 0x40E},
 		{5, 161, 54, 159, 0x40E},
-		{201, 227, 49, 159, 0x414}
-	},
-	{
+		{201, 227, 49, 159, 0x414},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1701,9 +1613,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{129, 194, 121, 156, 0x403},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{22, 100, 18, 138, 0x40E},
 		{0, 0, 0, 0, 0x19A},
@@ -1721,9 +1631,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{80, 135, 17, 88, 0x422},
 		{135, 204, 17, 158, 0x414},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1741,9 +1649,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{131, 185, 18, 91, 0x422},
 		{185, 226, 18, 159, 0x414},
 		{0, 0, 0, 0, 0x196},
-		{67, 131, 18, 71, 0x403}
-	},
-	{
+		{67, 131, 18, 71, 0x403},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1761,9 +1667,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{128, 170, 36, 51, 0x416},
 		{140, 227, 17, 38, 0x416},
 		{152, 227, 38, 160, 0x414},
-		{51, 91, 118, 159, 0x40E}
-	},
-	{
+		{51, 91, 118, 159, 0x40E},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1781,9 +1685,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{67, 150, 53, 159, 0x445},
 		{150, 226, 19, 159, 0x414},
 		{5, 67, 46, 159, 0x40F},
@@ -1801,9 +1703,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{94, 124, 36, 63, 0x412},
 		{0, 0, 0, 0, 0x195},
 		{94, 147, 18, 77, 0x40E},
-		{5, 129, 18, 158, 0x40E}
-	},
-	{
+		{5, 129, 18, 158, 0x40E},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1821,9 +1721,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1841,9 +1739,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1861,9 +1757,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{39, 135, 123, 159, 0x410},
 		{97, 195, 17, 159, 0x414},
 		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196}
-	},
-	{
+		{0, 0, 0, 0, 0x196},
 		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
@@ -1881,9 +1775,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{165, 212, 26, 78, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1901,9 +1793,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{100, 156, 18, 79, 0x421},
 		{150, 200, 72, 132, 0x422},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{156, 226, 18, 159, 0x414},
 		{0, 0, 0, 0, 0x19A},
@@ -1921,9 +1811,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1941,9 +1829,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{84, 97, 61, 92, 0x404},
 		{154, 178, 20, 42, 0x41E},
 		{134, 183, 72, 102, 0x424},
-		{95, 129, 123, 149, 0x41A}
-	},
-	{
+		{95, 129, 123, 149, 0x41A},
 		{14, 54, 79, 159, 0x414},
 		{66, 86, 73, 82, 0x41B},
 		{0, 0, 0, 0, 0x19A},
@@ -1961,9 +1847,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -1981,9 +1865,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{78, 99, 58, 70, 0x416},
 		{160, 182, 86, 112, 0x41D},
 		{146, 182, 95, 112, 0x41D},
-		{146, 170, 28, 95, 0x404}
-	},
-	{
+		{146, 170, 28, 95, 0x404},
 		{129, 146, 71, 102, 0x404},
 		{59, 98, 84, 160, 0x414},
 		{144, 177, 134, 159, 0x41A},
@@ -2001,9 +1883,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{4, 45, 18, 48, 0x416},
 		{71, 89, 47, 85, 0x443},
 		{77, 132, 86, 110, 0x443},
-		{4, 67, 18, 39, 0x41C}
-	},
-	{
+		{4, 67, 18, 39, 0x41C},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2021,9 +1901,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{32, 64, 112, 129, 0x404},
 		{0, 0, 0, 0, 0x41B},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2041,9 +1919,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2061,9 +1937,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{53, 70, 107, 129, 0x41B},
 		{63, 81, 129, 138, 0x41B},
 		{156, 177, 76, 91, 0x41E},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2081,9 +1955,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2101,9 +1973,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2121,9 +1991,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{164, 183, 69, 77, 0x41B},
 		{105, 166, 71, 160, 0x414},
 		{46, 80, 98, 149, 0x419},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2141,9 +2009,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2161,9 +2027,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{38, 54, 63, 95, 0x404},
 		{54, 78, 20, 87, 0x404},
 		{113, 131, 26, 43, 0x41E},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{8, 38, 58, 103, 0x41B},
 		{0, 0, 0, 0, 0x19A},
@@ -2181,9 +2045,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{58, 68, 88, 103, 0x445},
@@ -2201,9 +2063,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{18, 65, 18, 159, 0x414},
@@ -2221,9 +2081,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2241,9 +2099,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{46, 89, 18, 41, 0x41B},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{95, 129, 124, 131, 0x425}
-	},
-	{
+		{95, 129, 124, 131, 0x425},
 		{95, 139, 131, 159, 0x425},
 		{139, 146, 136, 159, 0x425},
 		{5, 58, 18, 159, 0x414},
@@ -2261,9 +2117,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2281,9 +2135,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2301,9 +2153,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2321,9 +2171,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2341,9 +2189,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2361,9 +2207,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2381,9 +2225,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2401,9 +2243,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2421,9 +2261,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2441,9 +2279,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{85, 143, 73, 98, 0x448},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2461,9 +2297,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2481,9 +2315,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{48, 64, 98, 113, 0x42D},
 		{7, 12, 97, 102, 0x42D},
 		{78, 104, 105, 114, 0x42D},
-		{103, 111, 100, 106, 0x42D}
-	},
-	{
+		{103, 111, 100, 106, 0x42D},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2501,9 +2333,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2521,9 +2351,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2541,9 +2369,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{30, 44, 50, 77, 0x198},
 		{30, 44, 113, 140, 0x199},
 		{308, 319, 179, 191, 0x19A},
@@ -2561,9 +2387,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2581,9 +2405,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2601,9 +2423,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2621,9 +2441,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2641,9 +2459,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{110, 123, 82, 130, 0x431},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2661,9 +2477,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2681,9 +2495,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2701,9 +2513,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2721,9 +2531,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2741,9 +2549,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{144, 223, 48, 105, 0x441},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2761,9 +2567,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2781,9 +2585,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2801,9 +2603,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2821,9 +2621,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2841,9 +2639,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2861,9 +2657,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2881,9 +2675,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2901,9 +2693,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2921,9 +2711,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2941,9 +2729,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2961,9 +2747,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -2981,9 +2765,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{78, 145, 55, 144, 0x456},
 		{0, 0, 0, 0, 0x19A},
@@ -3001,9 +2783,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{133, 194, 18, 72, 0x413},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3021,9 +2801,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{159, 197, 38, 71, 0x441},
 		{0, 0, 0, 0, 0x19A},
@@ -3041,9 +2819,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3061,9 +2837,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3081,9 +2855,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3101,9 +2873,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3121,9 +2891,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3141,9 +2909,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{47, 119, 107, 160, 0x451},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3161,9 +2927,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3181,9 +2945,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3201,9 +2963,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3221,9 +2981,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{128, 191, 43, 129, 0x441},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3241,9 +2999,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3261,9 +3017,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{117, 139, 73, 135, 0x430},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3281,9 +3035,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3301,9 +3053,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3321,9 +3071,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3341,9 +3089,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
@@ -3361,9 +3107,7 @@ HotSpot _MouseMapAS[256][8] = {
 		{0, 0, 0, 0, 0x194},
 		{0, 0, 0, 0, 0x195},
 		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197}
-	},
-	{
+		{0, 0, 0, 0, 0x197},
 		{0, 0, 0, 0, 0x198},
 		{0, 0, 0, 0, 0x199},
 		{0, 0, 0, 0, 0x19A},
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 7a06d91a0b..e4d0c26554 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -57,6 +57,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_quit = false;
 	_MouseValue = 0;
 	_CurrMap = 0;
+	_StatPlay = 0;
 
 	_kingartEntries = nullptr;
 }
@@ -544,7 +545,8 @@ void KingdomGame::EraseCursor() {
 }
 
 void KingdomGame::ReadMouse() {
-	debug("STUB: ReadMouse");
+// No implementation needed?
+//	debug("STUB: ReadMouse");
 }
 
 void KingdomGame::RefreshMouse() {
@@ -1111,7 +1113,7 @@ void KingdomGame::DrawCursor() {
 void KingdomGame::CursorType() {
 	_MouseValue = 0;
 	if (_CurrMap != 1 && _StatPlay >= 30) {
-		int var2 = _StatPlay == 901 ? 80 : 0;
+		int var2 = _StatPlay == 901 ? 16 : 0;
 		int var6 = _StatPlay == 901 ? 35 : 16;
 		for (int i = 0; i < var6 + 1; i++) {
 			if (i == var6) {
@@ -1243,12 +1245,18 @@ void KingdomGame::CursorTypeExit() {
 }
 
 int KingdomGame::checkMouseMapAS() {
-	int var6 = _CurrMap == 11 ? 32 : 16;
-	for (int i = 0; i < var6; i++) {
+	for (int i = 0; i < 16; i++) {
 		if (_CursorX >= _MouseMapAS[_CurrMap][i]._minX && _CursorX < _MouseMapAS[_CurrMap][i]._maxX
-		 && _CursorY >= _MouseMapAS[_CurrMap][i]._minY && _CursorY < _MouseMapAS[_CurrMap][i]._maxY)
+			&& _CursorY >= _MouseMapAS[_CurrMap][i]._minY && _CursorY < _MouseMapAS[_CurrMap][i]._maxY)
 			return _MouseMapAS[_CurrMap][i]._mouseValue;
 	}
+	if (_CurrMap == 11) {
+		for (int i = 0; i < 16; i++) {
+			if (_CursorX >= _MouseMapAS[12][i]._minX && _CursorX < _MouseMapAS[12][i]._maxX
+				&& _CursorY >= _MouseMapAS[12][i]._minY && _CursorY < _MouseMapAS[12][i]._maxY)
+				return _MouseMapAS[12][i]._mouseValue;
+		}
+	}
 	return -1;
 }
 void KingdomGame::SetCursor(int cursor) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index d9a9137bb5..881abe0b1d 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -75,7 +75,7 @@ namespace Kingdom {
 	extern int _HGASeq[4][2];
 	extern HotSpot _MouseMapMS[51];
 	extern int _CursorTable[96];
-	extern HotSpot _MouseMapAS[256][8];
+	extern HotSpot _MouseMapAS[128][16];
 
 	class KingdomGame : public Engine {
 	public:


Commit: b32bb491a65f6dcf8c983dced68f4909fc6ee144
    https://github.com/scummvm/scummvm/commit/b32bb491a65f6dcf8c983dced68f4909fc6ee144
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix mouse cursor index

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index e4d0c26554..847d61eed7 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1260,7 +1260,7 @@ int KingdomGame::checkMouseMapAS() {
 	return -1;
 }
 void KingdomGame::SetCursor(int cursor) {
-	KingArtEntry Cursor = _kingartEntries[cursor / 4];
+	KingArtEntry Cursor = _kingartEntries[cursor];
 	CursorMan.replaceCursor(Cursor.data, Cursor.Width, Cursor.Height, 0, 0, 255);
 }
 


Commit: 05aa762da9c07ba154f1562ca99abdbf78fea691
    https://github.com/scummvm/scummvm/commit/05aa762da9c07ba154f1562ca99abdbf78fea691
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Small fixes

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 847d61eed7..e998cec47c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -436,7 +436,7 @@ void KingdomGame::FShowPic(int reznum) {
 
 void KingdomGame::InitCursor() {
 	InitMouse();
-	SetCursor(0x19C);
+	SetCursor(0x19C / 4);
 	_CursorDrawn = false;
 	DrawCursor();
 }
@@ -1204,7 +1204,7 @@ void KingdomGame::CursorType() {
 		if (!_Pouch)
 			_MouseValue = 0;
 		break;
-	case 0457:
+	case 0x457:
 		if (!_TideCntl)
 			_MouseValue = 0;
 		break;


Commit: 5fb2e50cf34f9209b9411d5797ad05c23964fdbd
    https://github.com/scummvm/scummvm/commit/5fb2e50cf34f9209b9411d5797ad05c23964fdbd
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement ReadMouse

Changed paths:
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index f1b3fd1194..694dcef928 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -46,7 +46,7 @@ void KingdomGame::GPLogic4() {
 			ReadMouse();
 			while (_BTimer && !_MouseButton) {
 				RefreshSound();
-				RefreshMouse();
+				ReadMouse();
 			}
 			
 			if (_ATimer > 0)
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index e998cec47c..89fd4f9e20 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -38,7 +38,7 @@
 #include "common/stream.h"
 #include "common/memstream.h"
 #include "graphics/cursorman.h"
-
+#include "common/events.h"
 #include "kingdom/kingdom.h"
 
 namespace Kingdom {
@@ -545,12 +545,15 @@ void KingdomGame::EraseCursor() {
 }
 
 void KingdomGame::ReadMouse() {
-// No implementation needed?
-//	debug("STUB: ReadMouse");
-}
-
-void KingdomGame::RefreshMouse() {
-	debug ("STUB: RefreshMouse");
+	Common::Event event;
+	g_system->getEventManager()->pollEvent(event);
+	_CursorX = event.mouse.x;
+	_CursorY = event.mouse.y;
+	_MouseButton = 0;
+	if (event.type == Common::EVENT_LBUTTONUP)
+		_MouseButton |= 1;
+	if (event.type == Common::EVENT_RBUTTONUP)
+		_MouseButton |= 2;
 }
 
 void KingdomGame::GetUserInput() {
@@ -1039,7 +1042,7 @@ int KingdomGame::GetAKey() {
 	DrawCursor();
 	if (_MouseButton != 0 && _MouseDebound == 0) {
 		_MouseDebound = true;
-		return (_MouseButton == 2) ? 2 : 1;
+		return (_MouseButton & 2) ? 2 : 1;
 	}
 
 	int retval = 0;
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 881abe0b1d..1855a63d5e 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -249,7 +249,6 @@ namespace Kingdom {
 		void InitMouse();
 		void SetMouse();
 		void ReadMouse();
-		void RefreshMouse();
 		void InitMPlayer();
 		void PlayMovie(int movieNum);
 		void EnAll();


Commit: 1d1cb6a4aa7c68db50758bb92c2bb4b5decf2df8
    https://github.com/scummvm/scummvm/commit/1d1cb6a4aa7c68db50758bb92c2bb4b5decf2df8
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix typo

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 89fd4f9e20..8f07315603 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -915,7 +915,7 @@ void KingdomGame::CheckMainScreen() {
 		if (_TreeEyeTimer == 0) {
 			_TreeEyePic = _TEASeq[_TreeEyeSta][0];
 			DrawIcon(261, 51, _TreeEyePic);
-			_TreeEyeTimer, _TEASeq[_TreeEyeSta][1];
+			_TreeEyeTimer = _TEASeq[_TreeEyeSta][1];
 			_TreeEyeSta++;
 			if (_TreeEyeSta == 5)
 				_TreeEyeSta = 0;


Commit: db34d3bf30d92499fbb91812fc617e739a87294c
    https://github.com/scummvm/scummvm/commit/db34d3bf30d92499fbb91812fc617e739a87294c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add some forgotten code

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 40f03831bb..456f70182e 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -34,6 +34,16 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 11:
 		switch(_UserInput) {
+		case 0x190:
+			_StatPlay = 20;
+			_Wizard = false;
+			_ATimer = 0;
+			break;
+		case 0x191:
+			_StatPlay = 20;
+			_Wizard = true;
+			_ATimer = 0;
+			break;
 		case 0x193:
 			_ATimer = 0;
 			_KeyActive = 0;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 8f07315603..35ba4a9a7f 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -566,6 +566,12 @@ void KingdomGame::GetUserInput() {
 	if (_quit)
 		return;
 
+	if (_UserInput == 2 && _Eye)
+		_UserInput = _ASMode ? 0x43B : 0x43A;
+
+	if (_UserInput == 1)
+		_UserInput = _MouseValue;
+
 	if (_UserInput == 0x2F5) {
 		_StatPlay = 600;
 		_LoopFlag = true;
@@ -1040,7 +1046,7 @@ void KingdomGame::DrawIcon(int x, int y, int index) {
 
 int KingdomGame::GetAKey() {
 	DrawCursor();
-	if (_MouseButton != 0 && _MouseDebound == 0) {
+	if (_MouseButton != 0 && _MouseDebound == false) {
 		_MouseDebound = true;
 		return (_MouseButton & 2) ? 2 : 1;
 	}


Commit: 498fce3394686d38507c394a4d81d279b8694d73
    https://github.com/scummvm/scummvm/commit/498fce3394686d38507c394a4d81d279b8694d73
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Log unused _UserInput

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 456f70182e..0e7b9fa45f 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -73,6 +73,9 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(54);
 			GPLogic1_SubSP10();
 			break;
+		default:
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay 11", _UserInput, _UserInput);
+			break;
 		}
 		break;
 	case 20:


Commit: 2faef735577edd2c5cff32dab56a2c8de3d6b326
    https://github.com/scummvm/scummvm/commit/2faef735577edd2c5cff32dab56a2c8de3d6b326
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix bug in GL1

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 0e7b9fa45f..66d4439f58 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -44,6 +44,11 @@ void KingdomGame::GPLogic1() {
 			_Wizard = true;
 			_ATimer = 0;
 			break;
+		case 0x192:
+			_ATimer = 0;
+			FadeToBlack2();
+			PlayMovie(1);
+			break;
 		case 0x193:
 			_ATimer = 0;
 			_KeyActive = 0;


Commit: e13a3a056f16daa9800454e6b17a73253097e660
    https://github.com/scummvm/scummvm/commit/e13a3a056f16daa9800454e6b17a73253097e660
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add more debug traces in GL1

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 66d4439f58..a4e77d646a 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -61,7 +61,7 @@ void KingdomGame::GPLogic1() {
 			GPLogic1_SubSP10();
 			break;
 		case 0x194:
-// CHECKME	_QuitFlag = 2;
+			// CHECKME	_QuitFlag = 2;
 			_quit = true;
 			break;
 		case 0x24A:
@@ -79,7 +79,8 @@ void KingdomGame::GPLogic1() {
 			GPLogic1_SubSP10();
 			break;
 		default:
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay 11", _UserInput, _UserInput);
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
 			break;
 		}
 		break;
@@ -130,6 +131,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_Pmovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 32:
@@ -170,6 +175,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 42:
@@ -270,6 +279,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 52:
@@ -321,6 +334,10 @@ void KingdomGame::GPLogic1() {
 			if (!_Spell3)
 				DrawPic(118);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 60:
@@ -379,6 +396,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 72:
@@ -478,6 +499,10 @@ void KingdomGame::GPLogic1() {
 				_UserInput = 0;
 			}
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 82:
@@ -531,6 +556,10 @@ void KingdomGame::GPLogic1() {
 			else
 				ShowPic(319);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 92:
@@ -601,6 +630,10 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			PlayMovie(21);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 112:
@@ -651,6 +684,10 @@ void KingdomGame::GPLogic1() {
 				PlaySound(3);
 			}
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 130:
@@ -691,6 +728,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 142:
@@ -718,6 +759,10 @@ void KingdomGame::GPLogic1() {
 			_LoopFlag = true;
 			_UserInput = 0;
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 160:
@@ -826,6 +871,10 @@ void KingdomGame::GPLogic1() {
 			DrawRect(4, 17, 228, 161, 0);
 			RestoreAS();
 			break;	
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 162:
@@ -873,6 +922,10 @@ void KingdomGame::GPLogic1() {
 			_StatPlay = _NextNode;
 			_LoopFlag = true;
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 172:
@@ -975,6 +1028,10 @@ void KingdomGame::GPLogic1() {
 			} else
 				PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 182:
@@ -1128,6 +1185,10 @@ void KingdomGame::GPLogic1() {
 			_LoopFlag = true;
 			_UserInput = 0;
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 212:
@@ -1204,6 +1265,10 @@ void KingdomGame::GPLogic1() {
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		break;
 	case 222:
@@ -1289,6 +1354,10 @@ void KingdomGame::GPLogic1() {
 			_StatPlay = 300;
 			_LoopFlag = true;
 			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
 		}
 		_UserInput = 0;
 		break;


Commit: 5547300cfd9cafd12ea331d6a60f0cd02f340840
    https://github.com/scummvm/scummvm/commit/5547300cfd9cafd12ea331d6a60f0cd02f340840
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix ReadMouse

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 35ba4a9a7f..4f75b5ec33 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -37,7 +37,6 @@
 #include "common/debug-channels.h"
 #include "common/stream.h"
 #include "common/memstream.h"
-#include "graphics/cursorman.h"
 #include "common/events.h"
 #include "kingdom/kingdom.h"
 
@@ -545,15 +544,20 @@ void KingdomGame::EraseCursor() {
 }
 
 void KingdomGame::ReadMouse() {
-	Common::Event event;
-	g_system->getEventManager()->pollEvent(event);
-	_CursorX = event.mouse.x;
-	_CursorY = event.mouse.y;
 	_MouseButton = 0;
-	if (event.type == Common::EVENT_LBUTTONUP)
-		_MouseButton |= 1;
-	if (event.type == Common::EVENT_RBUTTONUP)
-		_MouseButton |= 2;
+
+	if (_CursorActive) {
+		Common::Event event;
+		g_system->getEventManager()->pollEvent(event);
+		_CursorX = event.mouse.x;
+		_CursorY = event.mouse.y;
+		if (event.type == Common::EVENT_LBUTTONUP)
+			_MouseButton |= 1;
+		if (event.type == Common::EVENT_RBUTTONUP)
+			_MouseButton |= 2;
+
+		g_system->getEventManager()->pushEvent(event);
+	}
 }
 
 void KingdomGame::GetUserInput() {


Commit: 10d4793ebee0704120da64486a0b0b93c5d87789
    https://github.com/scummvm/scummvm/commit/10d4793ebee0704120da64486a0b0b93c5d87789
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix icon behavior

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 4f75b5ec33..2f9e9c2283 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -549,8 +549,10 @@ void KingdomGame::ReadMouse() {
 	if (_CursorActive) {
 		Common::Event event;
 		g_system->getEventManager()->pollEvent(event);
+		if (event.type == Common::EVENT_MOUSEMOVE) {
 		_CursorX = event.mouse.x;
 		_CursorY = event.mouse.y;
+		}
 		if (event.type == Common::EVENT_LBUTTONUP)
 			_MouseButton |= 1;
 		if (event.type == Common::EVENT_RBUTTONUP)
@@ -1081,6 +1083,10 @@ int KingdomGame::GetAKey() {
 		case Common::EVENT_RBUTTONUP: // retval == 1?
 			retval = _MouseValue;
 			break;
+		case Common::EVENT_MOUSEMOVE:
+			_CursorX = event.mouse.x;
+			_CursorY = event.mouse.y;
+
 		default:
 			RefreshSound();
 			CheckMainScreen();
@@ -1108,11 +1114,6 @@ int KingdomGame::WaitKey() {
 void KingdomGame::DrawCursor() {
 	ReadMouse();
 
-	Common::Event event;
-	g_system->getEventManager()->pollEvent(event);
-	_CursorX = event.mouse.x;
-	_CursorY = event.mouse.y;
-
 	CursorType();
 	SetCursor(_CursorDef);
 	_OldCursorX = _CursorX;


Commit: bcfd39c64080941c9caa041beb6669f383f37b70
    https://github.com/scummvm/scummvm/commit/bcfd39c64080941c9caa041beb6669f383f37b70
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Start work on GPLogic3

Changed paths:
  A engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
new file mode 100644
index 0000000000..a00c015077
--- /dev/null
+++ b/engines/kingdom/GPLogic3.cpp
@@ -0,0 +1,90 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "kingdom/kingdom.h"
+
+namespace Kingdom {
+
+void KingdomGame::GPLogic3() {
+	switch(_StatPlay) {
+	case 621:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			_UserInput = 0;
+			break;
+		case 0x430:
+			PlayMovie(150);
+			InventoryAdd(8);
+			word_2D7C2 = 1;
+			PlaySound(25);
+			_CurrMap = 121;
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			switch (word_2D7C2) {
+			case 0:
+				PlayMovie(149);
+				break;
+			case 1:
+				PlayMovie(150);
+				break;
+			case 9:
+				_FrameStop = 24;
+				PlayMovie(202);
+				_CurrMap = 121;
+				break;
+			}
+			break;
+		case 0x445:
+			_NodeNum = 56;
+			_UserInput = 0;
+			_FrameStop = 50;
+			EnAll();
+			PlayMovie(135);
+			word_2D7B6 = 1;
+			PlaySound(8);
+			_StatPlay = 561;
+			_CurrMap = 106;
+			if (_Inventory[16] < 1 && _Wizard)
+				_CurrMap = 88;
+			break;
+		case 0x452:
+			_StatPlay = 630;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	}
+}
+
+} // NameSpace
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 2f9e9c2283..0f96bcdbf6 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -340,10 +340,6 @@ void KingdomGame::GameHelp() {
 	}
 }
 
-void KingdomGame::GPLogic3() {
-	debug("STUB: GPLogic3");
-}
-
 void KingdomGame::LoadKingArt() {
 	LoadAResource(0x97);
 	Common::SeekableReadStream *kingartStream = _RezPointers[0x97];
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 1855a63d5e..aa617472fb 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -214,7 +214,9 @@ namespace Kingdom {
 		int16 word_2D7A2;
 		int16 word_2D7A6;
 		int16 word_2D7AA;
+		int16 word_2D7B6;
 		int16 word_2D7BA;
+		int16 word_2D7C2;
 		int16 word_2D7CC;
 
 		Common::SeekableReadStream *_RezPointers[510];
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index 51144ef2f7..d3e2d53a6a 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -5,6 +5,7 @@ MODULE_OBJS = \
 	constants.o \
 	GPLogic1.o \
 	GPLogic2.o \
+	GPLogic3.o \
 	GPLogic4.o \
 	console.o \
 	detection.o


Commit: 36df466c6672fbbd19d9caefae55e1b6dec9dbfe
    https://github.com/scummvm/scummvm/commit/36df466c6672fbbd19d9caefae55e1b6dec9dbfe
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GPL3 case 701

Changed paths:
    engines/kingdom/GPLogic3.cpp


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index a00c015077..8cbc544a50 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -84,6 +84,30 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 701:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_StatPlay = 650;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			_StatPlay = 780;
+			_LoopFlag = true;
+			break;
+		case 0x447:
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	}
 }
 


Commit: 1de2999d6ca238482b71fb8c8d82aa37749fe52f
    https://github.com/scummvm/scummvm/commit/1de2999d6ca238482b71fb8c8d82aa37749fe52f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement GL3 opcodes 740, 780, 781, 790 and 791

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 8cbc544a50..1d0352be48 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -108,6 +108,130 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 740:
+		_RtnNode = _NodeNum;
+		_NodeNum = 74;
+		DrawLocation();
+		DsAll();
+		PlayMovie(185);
+		_CurrMap = 10;
+		SetATimer();
+		_StatPlay = 741;
+		_UserInput = 0;
+		break;
+	case 780:
+		_NodeNum = 78;
+		DrawLocation();
+		_UserInput = 0;
+		_Eye = false;
+		PlayMovie(171);
+		_CurrMap = 124;
+		PlaySound(40);
+		_StatPlay = 781;
+		break;
+	case 781:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			_FrameStop = 64;
+			PlayMovie(173);
+			ShowPic(471);
+			_CurrMap = 124;
+			break;
+		case 0x429:
+			if (_Wizard) {
+				_FrameStop = 64;
+				PlayMovie(173);
+				InventoryDel(1);
+			} else {
+				_FrameStop = 66;
+				_FstFwd = false;
+				PlayMovie(172);
+				_FstFwd = true;
+				PlayMovie(201);
+			}
+
+			FShowPic(471);
+			_CurrMap = 124;
+			break;
+		case 0x439:
+			_FrameStop = 59;
+			_FstFwd = false;
+			PlayMovie(174);
+			_FstFwd = true;
+			PlayMovie(201);
+			FShowPic(471);
+			_CurrMap = 124;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			if (_PMovie == 173)
+				_FrameStop = 64;
+			if (_PMovie == 201) {
+				_FrameStop = 59;
+				_FstFwd = false;
+				PlayMovie(174);
+				_FstFwd = true;
+				PlayMovie(201);
+			} else {
+				PlayMovie(_PMovie);
+			}
+			if (_PMovie != 171) {
+				FShowPic(471);
+				_CurrMap = 124;
+			}
+			break;
+		case 0x445:
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			_StatPlay = (word_2D7CC == 1) ? 760 : 660;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 790:
+		_NodeNum = 79;
+		DrawLocation();
+		DsAll();
+		PlayMovie(4);
+		_CurrMap = 8;
+		_StatPlay = 791;
+		SetATimer();
+		_UserInput = 0;
+		break;
+	case 791:
+		switch(_UserInput) {
+		case 0x2F1:
+			DsAll();
+			PlayMovie(204);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x445:
+			EnAll();
+			PlayMovie(10);
+			_StatPlay = 50;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			EnAll();
+			PlayMovie(10);
+			_StatPlay = 520;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	}
 }
 
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index aa617472fb..6923229503 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -178,6 +178,7 @@ namespace Kingdom {
 		int _IconSel;
 		int _IconSelect;
 		bool _MouseDebound;
+		int _RtnNode;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;


Commit: 63f36228d28a1394866cb2c69bc256daafaf54c6
    https://github.com/scummvm/scummvm/commit/63f36228d28a1394866cb2c69bc256daafaf54c6
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement GL3 opcodes 710, 720, 741, 760, 761

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 1d0352be48..f8d13dc80a 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -108,6 +108,40 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 710:
+		_NodeNum = 71;
+		_UserInput = 0;
+		_Eye = false;
+		if (_Inventory[8] && _Inventory[14])
+			_Sound = true;
+		DsAll();
+		PlayMovie(165);
+		_CurrMap = 10;
+		SetATimer();
+		_StatPlay = _Wizard ? 712 : 711;
+		break;
+	case 720:
+		_NodeNum = 72;
+		_UserInput = 0;
+		_Eye = false;
+		switch (word_2D7D6) {
+		case 0:
+			word_2D7D6 = 1;
+			break;
+		case 1:
+			_FrameStop = 24;
+			word_2D7D6 = 2;
+			break;
+		default:
+			_FrameStop = 24;
+			word_2D7D6 = 3;
+			break;
+		}
+		PlayMovie(175);
+		_CurrMap = 118;
+		PlaySound(12);
+		_StatPlay = 721;
+		break;
 	case 740:
 		_RtnNode = _NodeNum;
 		_NodeNum = 74;
@@ -119,6 +153,90 @@ void KingdomGame::GPLogic3() {
 		_StatPlay = 741;
 		_UserInput = 0;
 		break;
+	case 741:
+		switch(_UserInput) {
+		case 0x2F1:
+			DsAll();
+			PlayMovie(188);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			_ATimer = 0;
+			PlayMovie(178);
+			_LoopFlag = true;
+			_UserInput = 753;
+			break;
+		case 0x432:
+			if (word_2D7DA) {
+				_Sound = false;
+				word_2D7DA = false;
+			} else
+				word_2D7DA = true;
+			break;
+		case 0x437:
+			_LoopFlag = true;
+			if (Wound()) {
+				_FrameStop = 88;
+				PlayMovie(187);
+				_StatPlay = 570;
+				word_2D7B8 = 1;
+			} else {
+				_FrameStop = 78;
+				PlayMovie(187);
+				_StatPlay = 993;
+			}
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 760:
+		_NodeNum = 76;
+		_Eye = false;
+		_UserInput = 0;
+		PlayMovie(189);
+		_CurrMap = 126;
+		PlaySound(21);
+		_StatPlay = 761;
+		break;
+	case 761:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		case 0x44D:
+			PlayMovie(191);
+			word_2D7CC = 2;
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		case 0x44E:
+			PlayMovie(192);
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		case 0x458:
+			PlayMovie(190);
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 780:
 		_NodeNum = 78;
 		DrawLocation();
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 6923229503..677c888fe0 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -216,9 +216,12 @@ namespace Kingdom {
 		int16 word_2D7A6;
 		int16 word_2D7AA;
 		int16 word_2D7B6;
+		int16 word_2D7B8;
 		int16 word_2D7BA;
 		int16 word_2D7C2;
 		int16 word_2D7CC;
+		int16 word_2D7D6;
+		int16 word_2D7DA;
 
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];


Commit: 1d0165c9a258300a37c04788c88508a6c843803e
    https://github.com/scummvm/scummvm/commit/1d0165c9a258300a37c04788c88508a6c843803e
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 711 and 731

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index f8d13dc80a..e57150e173 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -120,6 +120,43 @@ void KingdomGame::GPLogic3() {
 		SetATimer();
 		_StatPlay = _Wizard ? 712 : 711;
 		break;
+	case 711:
+		switch(_UserInput) {
+		case 0x2F1:
+			_Replay = false;
+			PlayMovie(166);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			_Replay = false;
+			_ATimer = 0;
+			PlayMovie(178);
+			PlayMovie(166);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x430:
+			_ATimer = 0;
+			_NodeNum = 0;
+			_IconsClosed = true;
+			_FstFwd = false;
+			PlayMovie(167);
+			_FstFwd = false;
+			PlayMovie(170);
+			PlaySound(25);
+			EndCredits();
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 720:
 		_NodeNum = 72;
 		_UserInput = 0;
@@ -142,6 +179,84 @@ void KingdomGame::GPLogic3() {
 		PlaySound(12);
 		_StatPlay = 721;
 		break;
+	case 731:
+		switch(_UserInput) {
+		case 0x43E:
+			if (word_2D7D8 > 2)
+				_FrameStop = 23;
+				_Sound = _LastSound;
+				PlayMovie(_Pmovie);
+			break;
+		case 0x441:
+			switch (word_2D7D8) {
+			case 1:
+			case 2:
+				_StatPlay = 720;
+				break;
+			case 3:
+				_StatPlay = 720;
+				word_2D7D6 = 1;
+				break;
+			default:
+				_StatPlay = 680;
+				break;
+			}
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x448:
+			switch(word_2D7D8) {
+			case 3:
+				_StatPlay = 690;
+				break;
+			case 4:
+				_StatPlay = 720;
+				word_2D7D6 = 1;
+				break;
+			default:
+				_StatPlay = 680;
+				break;
+			}
+			break;
+		case 0x44B:
+			switch(word_2D7D8) {
+			case 1:
+				_StatPlay = 720;
+				break;
+			case 3:
+			case 4:
+				_StatPlay = 720;
+				word_2D7D6 = 1;
+				break;
+			default:
+				_StatPlay= 680;
+				break;
+			}
+
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x44C:
+			switch(word_2D7D8) {
+			case 1:
+			case 2:
+				_StatPlay = 720;
+				break;
+			case 4:
+				_StatPlay = 720;
+				word_2D7D6 = 1;
+				break;
+			default:
+				_StatPlay = 680;
+				break;
+			}
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 740:
 		_RtnNode = _NodeNum;
 		_NodeNum = 74;
@@ -353,4 +468,7 @@ void KingdomGame::GPLogic3() {
 	}
 }
 
+void KingdomGame::EndCredits() {
+	debug("STUB: EndCredits");
+}
 } // NameSpace
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 677c888fe0..bf590f0039 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -221,8 +221,10 @@ namespace Kingdom {
 		int16 word_2D7C2;
 		int16 word_2D7CC;
 		int16 word_2D7D6;
+		int16 word_2D7D8;
 		int16 word_2D7DA;
 
+
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];
 		int8 _Inventory[19];
@@ -297,6 +299,7 @@ namespace Kingdom {
 		int GetAKey();
 		int checkMouseMapAS();
 		void CursorTypeExit();
+		void EndCredits();
 	};
 } // End of namespace Kingdom
 


Commit: 37b7b85aba84be19c8ba7641aeae5e68ed380dd4
    https://github.com/scummvm/scummvm/commit/37b7b85aba84be19c8ba7641aeae5e68ed380dd4
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 712 and 730

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index e57150e173..1e994f7cb7 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -157,6 +157,99 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 712:
+		switch(_UserInput) {
+		case 0x2F1:
+			_Replay = false;
+			PlayMovie(166);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			_Replay = false;
+			_ATimer = 0;
+			PlayMovie(178);
+			PlayMovie(166);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x430:
+			_ATimer = 0;
+			if (word_2D7D4 != 2) {
+				PlayMovie(57);
+				_StatPlay = 993;
+			} else {
+				_NodeNum = 0;
+				_IconsClosed = true;
+				_FstFwd = false;
+				PlayMovie(55);
+				_FstFwd = false;
+				PlayMovie(184);
+				PlaySound(25);
+				EndCredits();
+			}
+			_LoopFlag = true;
+			break;
+		case 0x432:
+			_ATimer = 0;
+			_Replay = false;
+			PlayMovie(168);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x433:
+			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || word_2D7D4 == 2) {
+				_Replay = false;
+				PlayMovie(166);
+				_StatPlay = 993;
+			} else {
+				_ATimer = 0;
+				EnAll();
+				PlayMovie(169);
+				_StatPlay = 580;
+				InventoryDel(11);
+				word_2D7AA = 0;
+			}
+			_LoopFlag = true;
+			break;
+		case 0x436:
+			_ATimer = 0;
+			PlaySound(0);
+			PlayMovie(193);
+			ShowPic(128);
+			InventoryDel(14);
+			word_2D7D4 = 2;
+			SetATimer();
+			break;
+
+		case 0x437:
+			_ATimer = 0;
+			if (word_2D7D4 == 2) {
+				_NodeNum = 0;
+				_IconsClosed = true;
+				_FstFwd = false;
+				PlayMovie(56);
+				_FstFwd = false;
+				PlayMovie(184);
+				PlaySound(25);
+				EndCredits();
+				_quit = true;
+//--				_QuitFlag = true;
+			} else {
+				PlayMovie(58);
+				_StatPlay = 993;
+			}
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 720:
 		_NodeNum = 72;
 		_UserInput = 0;
@@ -179,6 +272,32 @@ void KingdomGame::GPLogic3() {
 		PlaySound(12);
 		_StatPlay = 721;
 		break;
+	case 730:
+		_NodeNum = 73;
+		_UserInput = 0;
+		_Eye = false;
+		switch(word_2D7D8) {
+		case 0:
+			word_2D7D8 = 1;
+			break;
+		case 1:
+			_Sound = true;
+			word_2D7D8 = 2;
+			break;
+		case 2:
+			_FrameStop = 23;
+			word_2D7D8 = 3;
+			break;
+		default:
+			_FrameStop = 23;
+			word_2D7D8 = 4;
+			break;
+		}
+		PlayMovie(176);
+		_CurrMap = 117;
+		PlaySound(36);
+		_StatPlay = 731;
+		break;
 	case 731:
 		switch(_UserInput) {
 		case 0x43E:
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index bf590f0039..cf25a6f944 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -220,6 +220,7 @@ namespace Kingdom {
 		int16 word_2D7BA;
 		int16 word_2D7C2;
 		int16 word_2D7CC;
+		int16 word_2D7D4;
 		int16 word_2D7D6;
 		int16 word_2D7D8;
 		int16 word_2D7DA;


Commit: bdc3d58c65eddb8f40e59aabdf4ed683435ae490
    https://github.com/scummvm/scummvm/commit/bdc3d58c65eddb8f40e59aabdf4ed683435ae490
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix a duplicate variable, implement GL opcodes 661, 670, 671, 680, 690, 691 and 721

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index a4e77d646a..f9afbc688c 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -129,7 +129,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_Sound = _LastSound;
-			PlayMovie(_Pmovie);
+			PlayMovie(_PMovie);
 			break;
 		default:
 			if (_UserInput)
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 1e994f7cb7..ddb9b4feb6 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -84,6 +84,144 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 661:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_StatPlay = 700;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			_LoopFlag = true;
+			_StatPlay = (word_2D7CC == 1) ? 650 : 790;
+			break;
+		case 0x447:
+			if (!_Wizard || word_2D7CC)
+				_StatPlay = 650;
+			else
+				_StatPlay = 670;
+
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 670:
+		_NodeNum = 67;
+		_UserInput = 0;
+		_Eye = false;
+		word_2D7CC = 1;
+		_FstFwd = false;
+		PlayMovie(155);
+		_CurrMap = 127;
+		_StatPlay = 671;
+		break;
+	case 671:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			_FstFwd = false;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_StatPlay = 650;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 680:
+		_NodeNum = 68;
+		_UserInput = 0;
+		DsAll();
+		PlayMovie(156);
+		_StatPlay = 993;
+		_LoopFlag = true;
+		break;
+	case 690:
+		_ItemInhibit = false;
+		EnAll();
+		if (word_2D7D0 == 9) {
+			_StatPlay = 640;
+			word_2D7D6 = 0;
+			_LoopFlag = true;
+			_UserInput = 0;
+		} else {
+			_NodeNum = 69;
+			DrawLocation();
+			_UserInput = 0;
+			_CurrMap = 119;
+			_FrameStop = 40;
+			PlayMovie(157);
+			PlaySound(12);
+			_StatPlay = 691;
+		}
+		break;
+	case 691:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			_UserInput = 0;
+			break;
+		case 0x439:
+			if (word_2D7D0 == 9)
+				DisplayIcon(147);
+			else {
+				_FrameStop = 108;
+				PlayMovie(158);
+				_ItemInhibit = false;
+				InventoryAdd(17);
+				word_2D7D0 = 9;
+				PlaySound(23);
+				_UserInput = 0;
+				_CurrMap = 120;
+			}
+			break;
+		case 0x43E:
+			if (_PMovie == 157)
+				_FrameStop = 40;
+			else if (_PMovie == 158)
+				_FrameStop = 108;
+			
+			if (_PMovie == 178) {
+				SaveAS();
+				PlayMovie(178);
+				RestoreAS();
+			} else
+				PlayMovie(_PMovie);
+
+			break;
+		case 0x441:
+			_ItemInhibit = false;
+			_StatPlay = 640;
+			word_2D7D6 = 0;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 701:
 		switch(_UserInput) {
 		case 0x43E:
@@ -272,6 +410,49 @@ void KingdomGame::GPLogic3() {
 		PlaySound(12);
 		_StatPlay = 721;
 		break;
+	case 721:
+		switch(_UserInput) {
+		case 0x43E:
+			if (word_2D7D6 > 1)
+				_FrameStop = 24;
+			PlayMovie(_PMovie);
+			break;
+		case 0x441:
+			if (word_2D7D6 == 1) {
+				_ItemInhibit = false;
+				_StatPlay = 640;
+			} else
+				_StatPlay = 680;
+
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x448:
+			_StatPlay = (word_2D7D6 == 2) ? 730 : 680;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x44B:
+			_StatPlay = (word_2D7D6 == 1) ? 730 : 680;
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		case 0x44C:
+			if (word_2D7D6 == 1) {
+				_StatPlay = 730;
+				word_2D7D8 = 3;
+			} else
+				_StatPlay = 680;
+
+			_CurrMap = 10;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 730:
 		_NodeNum = 73;
 		_UserInput = 0;
@@ -304,7 +485,7 @@ void KingdomGame::GPLogic3() {
 			if (word_2D7D8 > 2)
 				_FrameStop = 23;
 				_Sound = _LastSound;
-				PlayMovie(_Pmovie);
+				PlayMovie(_PMovie);
 			break;
 		case 0x441:
 			switch (word_2D7D8) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index cf25a6f944..f5f5ca0a10 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -162,7 +162,6 @@ namespace Kingdom {
 		bool _CursorDrawn;
 		bool _Wizard;
 		int _Zoom;
-		int _Pmovie;
 		bool _Resurrect;
 		bool _SaveFile;
 		int _LastObstacle;
@@ -220,12 +219,12 @@ namespace Kingdom {
 		int16 word_2D7BA;
 		int16 word_2D7C2;
 		int16 word_2D7CC;
+		int16 word_2D7D0;
 		int16 word_2D7D4;
 		int16 word_2D7D6;
 		int16 word_2D7D8;
 		int16 word_2D7DA;
 
-
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];
 		int8 _Inventory[19];


Commit: 2dd21c4c3c6cd63ebd87d1b8fc54f772160d5dc0
    https://github.com/scummvm/scummvm/commit/2dd21c4c3c6cd63ebd87d1b8fc54f772160d5dc0
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Small warning fix

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 6ee198cc37..bd99304712 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -24,7 +24,7 @@
 
 namespace Kingdom {
 
-char *_RezNames[] = {
+const char *_RezNames[] = {
 	"",
 	"Maps/KMAP001.lbm",
 	"Maps/KMAP002.lbm",
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index f5f5ca0a10..584577526c 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -66,7 +66,7 @@ namespace Kingdom {
 		int16 _mouseValue;
 	};
 
-	extern char *_RezNames[];
+	extern const char *_RezNames[];
 	extern int _MapExit[];
 	extern int _EMLTable[];
 	extern int _ZoomTable[81][9][2];


Commit: 74053fdc48a59a58b6132e9f300a37f30bb7eee4
    https://github.com/scummvm/scummvm/commit/74053fdc48a59a58b6132e9f300a37f30bb7eee4
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix misleading code alignment in GL Opcode 731, Add opcode 552 and 582

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index ddb9b4feb6..51964b1823 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -26,6 +26,17 @@ namespace Kingdom {
 
 void KingdomGame::GPLogic3() {
 	switch(_StatPlay) {
+	case 552:
+		ProcessMapInput(55);
+		if (!word_2D7B4 && _StatPlay == 560) {
+			_StatPlay = 551;
+			_UserInput = 0x190;
+			_LoopFlag = true;
+		}
+		break;
+	case 582:
+		ProcessMapInput(58);
+		break;
 	case 621:
 		switch(_UserInput) {
 		case 0x428:
@@ -484,8 +495,8 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			if (word_2D7D8 > 2)
 				_FrameStop = 23;
-				_Sound = _LastSound;
-				PlayMovie(_PMovie);
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
 			break;
 		case 0x441:
 			switch (word_2D7D8) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 584577526c..139873bea8 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -214,6 +214,7 @@ namespace Kingdom {
 		int16 word_2D7A2;
 		int16 word_2D7A6;
 		int16 word_2D7AA;
+		int16 word_2D7B4;
 		int16 word_2D7B6;
 		int16 word_2D7B8;
 		int16 word_2D7BA;


Commit: 7a854033bc13b751d1a6c053f2835454fa267572
    https://github.com/scummvm/scummvm/commit/7a854033bc13b751d1a6c053f2835454fa267572
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement GL3 opcodes 560, 561, 562, 570, 571, 572, 580, 581, 600 and 610

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 51964b1823..4077954899 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -34,9 +34,280 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 		}
 		break;
+	case 560:
+		_NodeNum = 56;
+		DrawLocation();
+		_UserInput = 0;
+		if (_Wizard) {
+			_FrameStop = 50;
+			EnAll();
+			PlayMovie(135);
+			ShowPic(435);
+			word_2D7B6 = 1;
+			PlaySound(8);
+			_StatPlay = 561;
+			_CurrMap = 106;
+			_TSIconOnly = true;
+		} else {
+			DsAll();
+			PlayMovie(135);
+			_CurrMap = 10;
+			SetATimer();
+			word_2D7B6 = 0;
+			_StatPlay = 561;
+		}
+		break;
+	case 561:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(136);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			_ATimer = 0;
+			if (!word_2D7B6) {
+				InventoryDel(_UserInput - 0x428);
+				SaveAS();
+				PlayMovie(178);
+				RestoreAS();
+				_UserInput = 753;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x42C:
+			_ATimer = 0;
+			if (!word_2D7B6) {
+				_FstFwd = false;
+				_Replay = true;
+				PlayMovie(138);
+				EnAll();
+				PlaySound(8);
+				word_2D7B6 = 1;
+				InventoryDel(4);
+				word_2D772 = 0;
+				_CurrMap = 88;
+				_TSIconOnly = true;
+			}
+			break;
+		case 0x438:
+			_ATimer = 0;
+			if (!word_2D7B6) {
+				EnAll();
+				_FstFwd = false;
+				_Replay = true;
+				PlayMovie(137);
+				EnAll();
+				PlaySound(8);
+				word_2D7B6 = 1;
+				_CurrMap = 106;
+				_TSIconOnly = true;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 562;
+			_Zoom = 2;
+			ProcessMap(56, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_FstFwd = false;
+			if (_PMovie == 135 && word_2D7B6) {
+				_FrameStop = 50;
+				PlayMovie(135);
+			} else if (word_2D7B6)
+				PlayMovie(_PMovie);
+			else {
+				_UserInput = 753;
+				_ATimer = 0;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x445:
+			_StatPlay = 530;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		case 0x446:
+			_StatPlay = 620;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		case 0x452:
+			_StatPlay = 550;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 562:
+		ProcessMapInput(56);
+		break;
+	case 570:
+		if (word_2D7B8) {
+			if (_RtnNode != 34)
+				_Sound = true;
+			_NodeNum = 57;
+			DrawLocation();
+			word_2D7B8 = 0;
+			_UserInput = 0;
+			PlayMovie(139);
+			PlaySound(27);
+			_CurrMap = 10;
+			_StatPlay = 571;
+		} else {
+			_StatPlay = 740;
+			_LoopFlag = true;
+		}
+		break;
+	case 571:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 572;
+			_Zoom = 2;
+			ProcessMap(57, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 572:
+		ProcessMapInput(57);
+		break;
+	case 580:
+		_NodeNum = 58;
+		DrawLocation();
+		_IconsClosed = true;
+		_UserInput = 0;
+		switch(word_2D7BA) {
+		case 0:
+			_Sound = true;
+			PlayMovie(140);
+			_CurrMap = 113;
+			word_2D7BA = 1;
+			break;
+		case 1:
+			PlayMovie(140);
+			_CurrMap = 113;
+			word_2D7BA = 0;
+			break;
+		case 8:
+			_TSIconOnly = true;
+			PlayMovie(143);
+			_CurrMap = 10;
+			word_2D7BA = 9;
+			break;
+		case 9:
+			_TSIconOnly = true;
+			_Sound = true;
+			PlayMovie(143);
+			_CurrMap = 10;
+			break;
+		}
+		PlaySound(27);
+		_StatPlay = 581;
+		break;
+	case 581:
+		switch(_UserInput) {
+		case 0x430:
+			PlayMovie(141);
+			word_2D7BA = 8;
+			InventoryAdd(13);
+			_TSIconOnly = true;
+			_CurrMap = 10;
+			PlaySound(30);
+		// No break on purpose
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			if (word_2D7BA < 8) {
+				InventoryDel(_UserInput - 0x428);
+				SaveAS();
+				PlayMovie(178);
+				RestoreAS();
+			}
+			_UserInput = 0;
+			break;
+		case 0x435:
+			if (word_2D7BA >= 8)
+				DisplayIcon(143);
+			else {
+				DsAll();
+				PlayMovie(142);
+				_StatPlay = 993;
+				_LoopFlag = true;
+			}
+		case 0x43A:
+			_StatPlay = 582;
+			_Zoom = 2;
+			ProcessMap(58, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 582:
 		ProcessMapInput(58);
 		break;
+	case 600:
+		SetMouse();
+		EraseCursor();
+		FadeToBlack2();
+		ShowPic(106);
+		DrawIcon(4, 0, 12 - _HealthOld);
+		_ASMode = false;
+		_NodeNum = 60;
+		DrawLocation();
+		_UserInput = 0;
+		DsAll();
+		PlayMovie(145);
+		_StatPlay = 992;
+		_LoopFlag = true;
+		break;
+	case 610:
+		_NodeNum = 61;
+		DrawLocation();
+		_UserInput = 0;
+		word_2D7D6 = 0;
+		word_2D7D8 = 0;
+		if (word_2D7C0 == 0)
+			word_2D7C0 = 1;
+		else
+			_Sound = true;
+
+		PlayMovie(146);
+		if (word_2D7D0 == 9) {
+			_ItemInhibit = true;
+			_TSIconOnly = true;
+		}
+		
+		_CurrMap = 115;
+		PlaySound(36);
+		_StatPlay = 611;
+		_Eye = false;
+		break;
 	case 621:
 		switch(_UserInput) {
 		case 0x428:
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 139873bea8..6f5e2fa6f4 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -218,6 +218,7 @@ namespace Kingdom {
 		int16 word_2D7B6;
 		int16 word_2D7B8;
 		int16 word_2D7BA;
+		int16 word_2D7C0;
 		int16 word_2D7C2;
 		int16 word_2D7CC;
 		int16 word_2D7D0;


Commit: d9b46cc7b9a561ba9e8dfdc346c4d4e37f329388
    https://github.com/scummvm/scummvm/commit/d9b46cc7b9a561ba9e8dfdc346c4d4e37f329388
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: ADD GL3 opcodes 590, 611 and 620

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 4077954899..bf35938575 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -271,6 +271,22 @@ void KingdomGame::GPLogic3() {
 	case 582:
 		ProcessMapInput(58);
 		break;
+	case 590:
+		_NodeNum = 59;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D7BC == 0)
+			word_2D7BC = 1;
+		else {
+			_Sound = true;
+			word_2D7BC = 0;
+		}
+		PlayMovie(144);
+		ShowPic(144);
+		_CurrMap = 114;
+		PlaySound(21);
+		_StatPlay = 591;
+		break;
 	case 600:
 		SetMouse();
 		EraseCursor();
@@ -308,6 +324,69 @@ void KingdomGame::GPLogic3() {
 		_StatPlay = 611;
 		_Eye = false;
 		break;
+	case 611:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			DsAll();
+			PlayMovie(148);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x432:
+			PlayMovie(147);
+			_Inventory[5] = -1;
+			word_2D780 = 0;
+			_CurrMap = 116;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x441:
+			// Cascade on purpose
+		case 0x448:
+			_CurrMap = 10;
+			_ItemInhibit = true;
+			_StatPlay = 730;
+			_LoopFlag = true;
+			break;
+		case 0x44B:
+			_CurrMap = 10;
+			_StatPlay = 680;
+			_LoopFlag = true;
+			break;
+		case 0x451:
+			_CurrMap = 10;
+			_StatPlay = 690;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 620:
+		_NodeNum = 62;
+		DrawLocation();
+		_UserInput = 0;
+		_Eye = false;
+		if (word_2D7C2 == 0) {
+			PlayMovie(149);
+			_CurrMap = 122;
+		} else {
+			_FrameStop = 24;
+			PlayMovie(202);
+			_CurrMap = 121;
+			word_2D7C2 = 9;
+		}
+		_TSIconOnly = true;
+		PlaySound(8);
+		_StatPlay = 621;
+		break;
 	case 621:
 		switch(_UserInput) {
 		case 0x428:
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 6f5e2fa6f4..b717c3a023 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -218,6 +218,7 @@ namespace Kingdom {
 		int16 word_2D7B6;
 		int16 word_2D7B8;
 		int16 word_2D7BA;
+		int16 word_2D7BC;
 		int16 word_2D7C0;
 		int16 word_2D7C2;
 		int16 word_2D7CC;


Commit: b5f4fd6c55cd684da6951bf852ecc5377cfde374
    https://github.com/scummvm/scummvm/commit/b5f4fd6c55cd684da6951bf852ecc5377cfde374
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 522, 530, 591 and 592

Changed paths:
    engines/kingdom/GPLogic3.cpp


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index bf35938575..32460be6a0 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -26,6 +26,26 @@ namespace Kingdom {
 
 void KingdomGame::GPLogic3() {
 	switch(_StatPlay) {
+	case 522:
+		ProcessMapInput(52);
+		break;
+	case 530:
+		_NodeNum = 53;
+		DrawLocation();
+		_UserInput = 0;
+		_FstFwd = false;
+		if (_Inventory[7] <= 0 && _Wizard)
+			_TSIconOnly = false;
+		else {
+			_FrameStop = 24;
+			_TSIconOnly = true;
+		}
+		_Eye = false;
+		PlayMovie(70);
+		_CurrMap = 99;
+		PlaySound(8);
+		_StatPlay = 531;
+		break;
 	case 552:
 		ProcessMapInput(55);
 		if (!word_2D7B4 && _StatPlay == 560) {
@@ -287,6 +307,32 @@ void KingdomGame::GPLogic3() {
 		PlaySound(21);
 		_StatPlay = 591;
 		break;
+	case 591:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 592;
+			_Zoom = 2;
+			ProcessMap(59, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			ShowPic(444);
+			break;
+		case 0x445:
+			_StatPlay = 660;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 592:
+		ProcessMapInput(59);
+		break;
 	case 600:
 		SetMouse();
 		EraseCursor();


Commit: 156b6213eedad967dc3d4cc3f75b2d6c153f830c
    https://github.com/scummvm/scummvm/commit/156b6213eedad967dc3d4cc3f75b2d6c153f830c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 510, 512, 520, 521, 531, 540, 541, 542, 550 and 551

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 32460be6a0..e3be737014 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -26,6 +26,55 @@ namespace Kingdom {
 
 void KingdomGame::GPLogic3() {
 	switch(_StatPlay) {
+	case 510:
+		_NodeNum = 51;
+		DrawLocation();
+		_UserInput = 0;
+		PlayMovie(129);
+		_CurrMap = 10;
+		PlaySound(6);
+		_StatPlay = 511;
+		break;
+	case 512:
+		ProcessMapInput(51);
+		break;
+	case 520:
+		_NodeNum = 52;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D7AE == 0)
+			word_2D7AE = 1;
+		else {
+			_Sound = true;
+			word_2D7AE = false;
+		}
+		PlayMovie(130);
+		_CurrMap = 111;
+		_StatPlay = 521;
+		PlaySound(31);
+		break;
+	case 521:
+		switch(_UserInput) {
+		case 0x404:
+			_StatPlay = 550;
+			_LoopFlag = true;
+			break;
+		case 0x43A:
+			_StatPlay = 522;
+			_Zoom = 2;
+			ProcessMap(52, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 522:
 		ProcessMapInput(52);
 		break;
@@ -46,6 +95,194 @@ void KingdomGame::GPLogic3() {
 		PlaySound(8);
 		_StatPlay = 531;
 		break;
+	case 531:
+		switch(_UserInput) {
+		case 0x428:
+			if (word_2D7B0 == 0) {
+				PlayMovie(71);
+				InventoryAdd(14);
+				InventoryDel(0);
+				_TSIconOnly = true;
+				PlaySound(25);
+			}
+			_UserInput = 0;
+			break;
+		case 0x429:
+		case 0x42A:
+			InventoryDel(_UserInput - 0x428);
+			SaveAS();
+			PlayMovie(178);
+			RestoreAS();
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_FstFwd = false;
+			if (_Inventory[7] > 0 && _PMovie == 70)
+				_FrameStop = 24;
+			if (!_Wizard && _PMovie == 70)
+				_FrameStop = 24;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			_NodeNum = 56;
+			_UserInput = 0;
+			_FrameStop = 50;
+			EnAll();
+			PlayMovie(135);
+			_CurrMap = 106;
+			word_2D7B6 = 1;
+			PlaySound(8);
+			_TSIconOnly = true;
+			_StatPlay = 561;
+			break;
+		case 0x452:
+			_StatPlay = 630;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 540:
+		_NodeNum = 54;
+		DrawLocation();
+		_UserInput = 0;
+		if (!_Wizard) {
+			_Sound = true;
+			_CurrMap = 55;
+		} else {
+			if (!word_2D7B2)
+				word_2D7B2 = 1;
+			else {
+				_Sound = true;
+				word_2D7B2 = 0;
+			}
+			_CurrMap = 112;
+		}
+
+		PlayMovie(132);
+		ShowPic(432);
+		_StatPlay = 541;
+		PlaySound(22);
+		break;
+	case 541:
+		switch(_UserInput) {
+		case 0x404:
+			_StatPlay = 550;
+			_LoopFlag = true;
+			_UserInput = 0;
+			break;
+		case 0x43A:
+			_StatPlay = 542;
+			_Zoom = 2;
+			ProcessMap(54, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			ShowPic(432);
+			break;
+		case 0x453:
+			_Sound = _LastSound;
+			PlayMovie(131);
+			PlaySound(32);
+			FShowPic(432);
+			// Useless, but present in the original
+			// _CurrMap = 10;
+			_CurrMap = 55;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 542:
+		ProcessMapInput(54);
+		break;
+	case 550:
+		_NodeNum = 55;
+		DrawLocation();
+		_UserInput = 0;
+		PlayMovie(133);
+		if (word_2D7B4 != 9)
+			word_2D7B4 = 0;
+		_TSIconOnly = true;
+		_CurrMap = 104;
+		_StatPlay = 551;
+		PlaySound(8);
+		break;
+	case 551:
+		switch(_UserInput) {
+		case 0x2F1:
+			_ATimer = 0;
+			DsAll();
+			PlayMovie(134);
+			_StatPlay = 993;
+			_LoopFlag = true;
+			break;
+		case 0x42C:
+			_ATimer = 0;
+			if (word_2D7B4 == 1) {
+				EnAll();
+				PlayMovie(183);
+				FShowPic(433);
+				PlaySound(8);
+				word_2D7B4 = 9;
+				_TSIconOnly = true;
+			}
+			break;
+		case 0x43A:
+			if (word_2D7B4 == 1) {
+				DsAll();
+				PlayMovie(134);
+				_StatPlay = 993;
+				_LoopFlag = true;
+			} else {
+				_StatPlay = 552;
+				_Zoom = 2;
+				ProcessMap(55, _Zoom);
+				_UserInput = 0;
+			}
+			break;
+		case 0x43E:
+			_ATimer = 0;
+			PlayMovie(_PMovie);
+			if (_PMovie == 183)
+				FShowPic(433);
+			break;
+		case 0x452:
+			_ATimer = 0;
+			switch(word_2D7B4) {
+			case 0:
+				DsAll();
+				PlayMovie(69);
+				_TSIconOnly = false;
+				word_2D7B4 = 1;
+				SetATimer();
+				break;
+			case 1:
+				DsAll();
+				PlayMovie(134);
+				_StatPlay = 993;
+				_LoopFlag = true;
+				break;
+			case 9:
+				_StatPlay = 560;
+				_LoopFlag = true;
+				break;
+			}
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 552:
 		ProcessMapInput(55);
 		if (!word_2D7B4 && _StatPlay == 560) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index b717c3a023..32ebe98b8f 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -214,6 +214,9 @@ namespace Kingdom {
 		int16 word_2D7A2;
 		int16 word_2D7A6;
 		int16 word_2D7AA;
+		int16 word_2D7AE;
+		int16 word_2D7B0;
+		int16 word_2D7B2;
 		int16 word_2D7B4;
 		int16 word_2D7B6;
 		int16 word_2D7B8;


Commit: 05e13b3e153602297861dd5666c95d3e0c4ba9d3
    https://github.com/scummvm/scummvm/commit/05e13b3e153602297861dd5666c95d3e0c4ba9d3
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 500, 501, 502, 511, 651, 660, 690 and 700

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index e3be737014..d92944d3c0 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -26,6 +26,86 @@ namespace Kingdom {
 
 void KingdomGame::GPLogic3() {
 	switch(_StatPlay) {
+	case 500:
+		_NodeNum = 50;
+		DrawLocation();
+		_UserInput = 0;
+		_Resurrect = false;
+		if (!_Wizard)
+			word_2D7AA = 1;
+		switch(word_2D7AA) {
+		case 0:
+			PlayMovie(123);
+			_CurrMap = 102;
+			break;
+		case 1:
+			word_2D7AA = 2;
+			PlayMovie(126);
+			_CurrMap = 10;
+			_TSIconOnly = true;
+			break;
+		default:
+			word_2D7AA = 1;
+			_Sound = true;
+			PlayMovie(126);
+			_CurrMap = 10;
+			_TSIconOnly = true;
+			break;
+		}
+		PlaySound(29);
+		_StatPlay = 501;
+		break;
+	case 501:
+		switch(_UserInput) {
+		case 0x428:
+		case 0x429:
+		case 0x42A:
+			if (!word_2D7AA) {
+				InventoryDel(_UserInput - 0x428);
+				SaveAS();
+				PlayMovie(178);
+				RestoreAS();
+				_UserInput = 0;
+			}
+			break;
+		case 0x433:
+			if (!word_2D7AA) {
+				DsAll();
+				PlayMovie(125);
+				_StatPlay = 993;
+				_LoopFlag = true;
+			} else
+				DisplayIcon(141);
+
+			break;
+		case 0x439:
+			if (!word_2D7AA) {
+				PlayMovie(124);
+				word_2D7AA = 1;
+				InventoryAdd(11);
+				_UserInput = 0;
+				_CurrMap = 10;
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 502;
+			_Zoom = 2;
+			ProcessMap(50, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 502:
+		ProcessMapInput(50);
+		break;
 	case 510:
 		_NodeNum = 51;
 		DrawLocation();
@@ -35,6 +115,44 @@ void KingdomGame::GPLogic3() {
 		PlaySound(6);
 		_StatPlay = 511;
 		break;
+	case 511:
+		switch(_UserInput) {
+		case 0x434:
+			if (_Inventory[6] >= 1)
+				DisplayIcon(142);
+			else {
+				PlayMovie(128);
+				word_2D7AC = 9;
+				InventoryAdd(12);
+				_UserInput = 0;
+				_CurrMap = 10;
+				PlaySound(30);
+			}
+			break;
+		case 0x43A:
+			_StatPlay = 512;
+			_Zoom = 2;
+			ProcessMap(51, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			PlayMovie(_PMovie);
+			break;
+		case 0x457:
+			_TideCntl = false;
+			DrawPic(179);
+			PlayMovie(127);
+			_CurrMap = 103;
+			_UserInput = 0;
+			PlaySound(0);
+			PlaySound(6);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
 	case 512:
 		ProcessMapInput(51);
 		break;
@@ -728,6 +846,51 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 651:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			ShowPic(453);
+			break;
+		case 0x445:
+			_StatPlay = 700;
+			_LoopFlag = true;
+			break;
+		case 0x446:
+			if (word_2D7CC == 1) {
+				_StatPlay = 660;
+				_LoopFlag = true;
+			} else {
+				_StatPlay = 790;
+				_LoopFlag = true;
+			}
+			break;
+		case 0x447:
+			_StatPlay = 710;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 660:
+		_NodeNum = 66;
+		_Eye = false;
+		_UserInput = 0;
+		if (word_2D7CA == 0)
+			word_2D7CA = 1;
+		else {
+			_Sound = true;
+			word_2D7CA = 0;
+		}
+		PlayMovie(154);
+		_CurrMap = 70;
+		PlaySound(40);
+		_StatPlay = 661;
+		break;
 	case 661:
 		switch(_UserInput) {
 		case 0x43E:
@@ -866,6 +1029,24 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 692:
+		ProcessMapInput(69);
+		break;
+	case 700:
+		_NodeNum = 70;
+		_UserInput = 0;
+		_Eye = false;
+		if (word_2D7D2 & _Wizard) {
+			word_2D7D2 = 0;
+			_Sound = false;
+		} else
+			word_2D7D2 = 1;
+
+		PlayMovie(164);
+		_CurrMap = 74;
+		PlaySound(10);
+		_StatPlay = 701;
+		break;
 	case 701:
 		switch(_UserInput) {
 		case 0x43E:
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 32ebe98b8f..27671e5490 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -214,6 +214,7 @@ namespace Kingdom {
 		int16 word_2D7A2;
 		int16 word_2D7A6;
 		int16 word_2D7AA;
+		int16 word_2D7AC;
 		int16 word_2D7AE;
 		int16 word_2D7B0;
 		int16 word_2D7B2;
@@ -224,8 +225,10 @@ namespace Kingdom {
 		int16 word_2D7BC;
 		int16 word_2D7C0;
 		int16 word_2D7C2;
+		int16 word_2D7CA;
 		int16 word_2D7CC;
 		int16 word_2D7D0;
+		int16 word_2D7D2;
 		int16 word_2D7D4;
 		int16 word_2D7D6;
 		int16 word_2D7D8;


Commit: 7228da69ad3d17c590391ed76a7c818d9d7002dc
    https://github.com/scummvm/scummvm/commit/7228da69ad3d17c590391ed76a7c818d9d7002dc
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GL3 opcodes 630, 631, 640 to 642 and 650

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index d92944d3c0..cfa2040e28 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -846,6 +846,91 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		break;
+	case 630:
+		_NodeNum = 63;
+		DrawLocation();
+		_UserInput = 0;
+		_Eye = false;
+		if (word_2D7C4 == 1 || !_Wizard) {
+			word_2D7C4 = 0;
+			_Sound = true;
+		} else
+			word_2D7C4 = true;
+
+		PlayMovie(151);
+		_CurrMap = 72;
+		PlaySound(40);
+		_StatPlay = 631;
+		break;
+	case 631:
+		switch(_UserInput) {
+		case 0x43E:
+			_Sound = _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		case 0x445:
+			PlayMovie(10);
+			_StatPlay = 50;
+			_LoopFlag = true;
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 640:
+		_NodeNum = 64;
+		DrawLocation();
+		_UserInput = 0;
+		if (word_2D7C6 || _Wizard) {
+			_Sound = true;
+			word_2D7C6 = 0;
+		} else
+			word_2D7C6 = 1;
+
+		PlayMovie(152);
+		_CurrMap = 10;
+		_StatPlay = 641;
+		PlaySound(28);
+		break;
+	case 641:
+		switch(_UserInput) {
+		case 0x43A:
+			_StatPlay = 642;
+			_Zoom = 2;
+			ProcessMap(64, _Zoom);
+			_UserInput = 0;
+			break;
+		case 0x43E:
+			_Sound= _LastSound;
+			PlayMovie(_PMovie);
+			break;
+		default:
+			if (_UserInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+			break;
+		}
+		break;
+	case 642:
+		ProcessMapInput(64);
+		break;
+	case 650:
+		_NodeNum = 65;
+		_Eye = false;
+		_UserInput = 0;
+		if (word_2D7C8 == 0)
+			word_2D7C8 = 1;
+		else {
+			_Sound = true;
+			word_2D7C8 = 0;
+		}
+		PlayMovie(153);
+		ShowPic(453);
+		_CurrMap = 73;
+		PlaySound(37);
+		_StatPlay = 651;
+		break;
 	case 651:
 		switch(_UserInput) {
 		case 0x43E:
@@ -1036,7 +1121,7 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 70;
 		_UserInput = 0;
 		_Eye = false;
-		if (word_2D7D2 & _Wizard) {
+		if (word_2D7D2 && _Wizard) {
 			word_2D7D2 = 0;
 			_Sound = false;
 		} else
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 27671e5490..083ba85823 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -225,6 +225,9 @@ namespace Kingdom {
 		int16 word_2D7BC;
 		int16 word_2D7C0;
 		int16 word_2D7C2;
+		int16 word_2D7C4;
+		int16 word_2D7C6;
+		int16 word_2D7C8;
 		int16 word_2D7CA;
 		int16 word_2D7CC;
 		int16 word_2D7D0;


Commit: d35e51398e8f543046e3c1596bb72433ec746652
    https://github.com/scummvm/scummvm/commit/d35e51398e8f543046e3c1596bb72433ec746652
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement End Credits function

Changed paths:
    engines/kingdom/GPLogic3.cpp


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index cfa2040e28..218bb488d9 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -1679,6 +1679,34 @@ void KingdomGame::GPLogic3() {
 }
 
 void KingdomGame::EndCredits() {
-	debug("STUB: EndCredits");
+	_NodeNum = 0;
+	_BTimer = 190;
+	ReadMouse();
+
+	while(_BTimer != 0 && _MouseButton == 0) {
+		RefreshSound();
+		CheckMainScreen();
+		ReadMouse();
+	}
+
+	FadeToBlack1();
+	DrawRect(4, 17, 228, 161, 0);
+	PlaySound(0);
+	DsAll();
+	_IconsClosed = true;
+	PlayMovie(199);
+	DsAll();
+	PlayMovie(205);
+	DsAll();
+	FadeToBlack1();
+	DrawRect(4, 17, 228, 161, 0);
+	PlayMovie(201);
+	FShowPic(125);
+	_CurrMap = 3;
+	DsAll();
+	_Pouch = false;
+	memset(_Inventory, 0xFF, 19);
+	_StatPlay = 994;
+	_LoopFlag = true;
 }
 } // NameSpace


Commit: b7fe735a806a91c7d5128000a4dfd4418c610e7f
    https://github.com/scummvm/scummvm/commit/b7fe735a806a91c7d5128000a4dfd4418c610e7f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement ProcessMapInput and DrawRect

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 0f96bcdbf6..fd7da0d41b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -519,8 +519,16 @@ void KingdomGame::DrawHelpScreen() {
 	ShowPic(picNum);
 }
 
-void KingdomGame::DrawRect(int v1, int v2, int v3, int v4, int v5) {
-	debug("STUB: DrawRect)");
+void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color) {
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = minX; curX < maxX; curX++) {
+		for (uint curY = minY; curY < maxY; curY++) {
+			byte *dst = (byte *)screen->getBasePtr(curX, curY);
+			*dst = color;
+		}
+	}
+	g_system->unlockScreen();
+	g_system->updateScreen();
 }
 
 void KingdomGame::DrawInventory() {
@@ -651,7 +659,43 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 }
 
 void KingdomGame::ProcessMapInput(int mapNum) {
-	debug("STUB: ProcessMapInput");
+	switch(_UserInput) {
+	case 0x43B:
+	case 0x443:
+		SwitchMtoA();
+		_MapStat = 0;
+		_StatPlay--;
+		break;
+	case 0x43F:
+		if (_TreeLeftSta == 3) {
+			_Zoom--;
+			ProcessMap(mapNum, _Zoom);
+		} else
+			_UserInput = 0;
+		break;
+	case 0x440:
+		if (_TreeRightSta == 2) {
+			_Zoom++;
+			ProcessMap(mapNum, _Zoom);
+		} else
+			_UserInput = 0;
+		break;
+	default:
+		if (_UserInput > 0x3FF && _UserInput < 0x428) {
+			_StatPlay = _MapExit[_UserInput - 0x400];
+			_MapEx = true;
+			_LoopFlag = true;
+			SwitchAS();
+		}
+
+		if (_UserInput > 0x440) {
+			SwitchMtoA();
+			_MapStat = false;
+			_StatPlay--;
+			_LoopFlag = true;
+		}
+		break;
+	}
 }
 
 void KingdomGame::InventoryDel(int item) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 083ba85823..48a78dfd52 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -276,7 +276,7 @@ namespace Kingdom {
 		void SaveAS();
 		void RestoreAS();
 		void DrawHelpScreen();
-		void DrawRect(int v1, int v2, int v3, int v4, int v5);
+		void DrawRect(uint v1, uint v2, uint v3, uint v4, int v5);
 		void DrawInventory();
 		void GameHelp_Sub43C();
 		void SaveGame();


Commit: 712c080c55a792e86453ae6588654ba44ea73013
    https://github.com/scummvm/scummvm/commit/712c080c55a792e86453ae6588654ba44ea73013
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement DrawInventory

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index fd7da0d41b..09a311c5f9 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -532,7 +532,75 @@ void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 }
 
 void KingdomGame::DrawInventory() {
-	debug("STUB: DrawInventory");
+	FShowPic(108);
+	if (word_2D77E == 1 || word_2D7CC == 1 || _ItemInhibit)
+		return;
+
+	if (_Inventory[0] > 0)
+		DrawIcon(136, 102, 180);
+
+	if (_Inventory[1] > 0)
+		DrawIcon(73, 65, 175);
+
+	if (_Inventory[2] > 0)
+		DrawIcon(171, 96, 179);
+
+	if (_Inventory[3] > 0)
+		DrawIcon(120, 34, 174);
+
+	if (_Inventory[4] > 0)
+		DrawIcon(160, 41, 177);
+
+	if (_Inventory[5] > 0)
+		DrawIcon(21, 124, 184);
+
+	if (_Inventory[6] > 0)
+		DrawIcon(201, 42, 178);
+
+	if (_Inventory[7] > 0)
+		DrawIcon(76, 119, 186);
+
+	if (_Inventory[8] > 0)
+		DrawIcon(18, 31, 170);
+
+	if (_Inventory[9] > 0)
+		DrawIcon(57, 88, 185);
+
+	if (_Inventory[10] > 0)
+		DrawIcon(182, 124, 181);
+
+	if (_Inventory[11] > 0)
+		DrawIcon(176, 26, 183);
+
+	if (_Inventory[12] > 0)
+		DrawIcon(54, 23, 171);
+
+	if (_Inventory[13] > 0)
+		DrawIcon(120, 133, 182);
+
+	if (_Inventory[14] > 0)
+		DrawIcon(94, 92, 187);
+
+	if (_Inventory[15] > 0)
+		DrawIcon(135, 67, 176);
+
+	if (_Inventory[16] > 0)
+		DrawIcon(84, 30, 173);
+
+	if (_Inventory[17] > 0)
+		DrawIcon(20, 78, 172);
+
+	if (_Inventory[0] > 0)
+		DrawIcon(158, 117, 134 + _Inventory[0]);
+
+	if (_Inventory[1] > 0)
+		DrawIcon(94, 67, 134 + _Inventory[1]);
+
+	if (_Inventory[2] > 0)
+		DrawIcon(193, 105, 134 + _Inventory[2]);
+
+	if (_Inventory[3] > 0)
+		DrawIcon(131, 39, 134 + _Inventory[3]);
 }
 
 void KingdomGame::SaveGame() {


Commit: 08f50c1f80301c9867717a48646736dbef2574d5
    https://github.com/scummvm/scummvm/commit/08f50c1f80301c9867717a48646736dbef2574d5
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement PlaySound

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 09a311c5f9..7e337c88c1 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -38,6 +38,10 @@
 #include "common/stream.h"
 #include "common/memstream.h"
 #include "common/events.h"
+#include "audio/audiostream.h"
+#include "audio/mixer.h"
+#include "audio/decoders/raw.h"
+
 #include "kingdom/kingdom.h"
 
 namespace Kingdom {
@@ -57,6 +61,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_MouseValue = 0;
 	_CurrMap = 0;
 	_StatPlay = 0;
+	_SoundNumber = -1;
 
 	_kingartEntries = nullptr;
 }
@@ -607,8 +612,31 @@ void KingdomGame::SaveGame() {
 	debug("STUB: SaveGame");
 }
 
-void KingdomGame::PlaySound(int v1) {
-	debug("STUB: PlaySound");
+void KingdomGame::PlaySound(int idx) {
+	if (idx > 43 || _SoundNumber == idx)
+		return;
+
+	// Stop Sound
+	if (_mixer->isSoundHandleActive(_soundHandle)) {
+		_mixer->stopHandle(_soundHandle);
+		ReleaseAResource(idx);
+	}
+
+	_SoundNumber = idx;
+	if (_SoundNumber == 0 || _NoMusic)
+		return;
+
+	int realIdx = _SoundNumber + 200; // Or +250, depending in the original on the sound card
+	debug("PlaySound %d : %s", idx, _RezNames[realIdx]);
+	LoadAResource(realIdx);
+
+	Common::SeekableReadStream *soundStream = _RezPointers[realIdx];
+	Audio::RewindableAudioStream *rewindableStream = Audio::makeRawStream(soundStream, 22050, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN, DisposeAfterUse::NO);
+	_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, Audio::Mixer::kMaxMixerVolume);
+	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, rewindableStream);
+
+//	Audio::AudioStream *stream = Audio::makeLoopingAudioStream(rewindableStream, false);
+//	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, stream);
 }
 
 void KingdomGame::EraseCursor() {
@@ -857,7 +885,7 @@ bool KingdomGame::Wound() {
 }
 
 void KingdomGame::RefreshSound() {
-	debug("STUB: RefreshSound");
+//	debug("STUB: RefreshSound");
 }
 
 void KingdomGame::IncreaseHealth() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 48a78dfd52..69a459912d 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -178,6 +178,8 @@ namespace Kingdom {
 		int _IconSelect;
 		bool _MouseDebound;
 		int _RtnNode;
+		int _SoundNumber;
+		Audio::SoundHandle _soundHandle;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 word_2D74C;


Commit: 8aacb1e372a7271e1a1ba50d9cbdca8abe2c6826
    https://github.com/scummvm/scummvm/commit/8aacb1e372a7271e1a1ba50d9cbdca8abe2c6826
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove some useless code

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index f9afbc688c..abc327c6e7 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1372,9 +1372,7 @@ void KingdomGame::GPLogic1_SubSP10() {
 	PlaySound(18);
 	FadeToBlack2();
 	ShowPic(115);
-	CheckSaveGame();
-	if (_SaveFile)
-		ShowPic(114);
+	ShowPic(114);
 
 	_CurrMap = 4;
 	_UserInput = 0;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 7e337c88c1..94e51bbb5d 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -442,7 +442,7 @@ void KingdomGame::InitCursor() {
 }
 
 void KingdomGame::InitMouse() {
-	_CursorActive = true;
+	// No implementation required
 }
 
 void KingdomGame::SetMouse() {
@@ -612,6 +612,10 @@ void KingdomGame::SaveGame() {
 	debug("STUB: SaveGame");
 }
 
+void KingdomGame::RestoreGame() {
+	debug("STUB: RestoreGame");
+}
+
 void KingdomGame::PlaySound(int idx) {
 	if (idx > 43 || _SoundNumber == idx)
 		return;
@@ -646,20 +650,18 @@ void KingdomGame::EraseCursor() {
 void KingdomGame::ReadMouse() {
 	_MouseButton = 0;
 
-	if (_CursorActive) {
-		Common::Event event;
-		g_system->getEventManager()->pollEvent(event);
-		if (event.type == Common::EVENT_MOUSEMOVE) {
-		_CursorX = event.mouse.x;
-		_CursorY = event.mouse.y;
-		}
-		if (event.type == Common::EVENT_LBUTTONUP)
-			_MouseButton |= 1;
-		if (event.type == Common::EVENT_RBUTTONUP)
-			_MouseButton |= 2;
-
-		g_system->getEventManager()->pushEvent(event);
+	Common::Event event;
+	g_system->getEventManager()->pollEvent(event);
+	if (event.type == Common::EVENT_MOUSEMOVE) {
+	_CursorX = event.mouse.x;
+	_CursorY = event.mouse.y;
 	}
+	if (event.type == Common::EVENT_LBUTTONUP)
+		_MouseButton |= 1;
+	if (event.type == Common::EVENT_RBUTTONUP)
+		_MouseButton |= 2;
+
+	g_system->getEventManager()->pushEvent(event);
 }
 
 void KingdomGame::GetUserInput() {
@@ -698,10 +700,6 @@ void KingdomGame::EraseCursorAsm() {
 	debug("STUB: EraseCursorAsm");
 }
 
-void KingdomGame::RestoreGame() {
-	debug("STUB: RestoreGame");
-}
-
 void KingdomGame::DrawLocation() {
 	if (_DaelonCntr > 0)
 		_DaelonCntr--;
@@ -885,7 +883,7 @@ bool KingdomGame::Wound() {
 }
 
 void KingdomGame::RefreshSound() {
-//	debug("STUB: RefreshSound");
+//	No implementation needed in ScummVM
 }
 
 void KingdomGame::IncreaseHealth() {
@@ -897,10 +895,6 @@ void KingdomGame::IncreaseHealth() {
 		_Health = 12;
 }
 
-void KingdomGame::CheckSaveGame() {
-	debug("STUB: CheckSaveGame");
-}
-
 void KingdomGame::CheckMainScreen() {
 	if (!_CTimerFlag || _StatPlay == 900 || _StatPlay == 901)
 		return;
@@ -1314,8 +1308,9 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0x440;
 		break;
 	case 0x24A:
-		if (_SaveFile == 0)
-			_MouseValue = 0;
+		// if (_SaveFile == 0)
+		_MouseValue = 0;
+		debug("CursorType: Unhandled 0x24A");
 		break;
 	case 0x407:
 		if (_StatPlay == 182 && word_2D76A < 9)
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 69a459912d..dd0317abef 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -163,11 +163,9 @@ namespace Kingdom {
 		bool _Wizard;
 		int _Zoom;
 		bool _Resurrect;
-		bool _SaveFile;
 		int _LastObstacle;
 		int _MapStat;
 		int _MouseValue;
-		bool _CursorActive;
 		int _CursorDef;
 		int _OldCursorDef;
 		int _CursorX;
@@ -299,7 +297,6 @@ namespace Kingdom {
 		void RefreshSound();
 		void SwitchAS();
 		void IncreaseHealth();
-		void CheckSaveGame();
 		void CheckMainScreen();
 		bool ChkDesertObstacles();
 		void SwitchAtoM();


Commit: b85f93674860c5381f4876a5fe5d94867e284f3f
    https://github.com/scummvm/scummvm/commit/b85f93674860c5381f4876a5fe5d94867e284f3f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: WIP work on savegames

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index abc327c6e7..88fdbe8ce5 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -68,7 +68,7 @@ void KingdomGame::GPLogic1() {
 			FadeToBlack2();
 			SetMouse();
 			EraseCursor();
-			RestoreGame();
+			restoreGame();
 			break;
 		case 0x2F1:
 			EraseCursorAsm();
@@ -1055,7 +1055,7 @@ void KingdomGame::GPLogic1() {
 			IncreaseHealth();
 		} else {
 			PlayMovie(40);
-			_TideCntl = 1;
+			_TideCntl = true;
 			DrawPic(178);
 		}
 		PlaySound(42);
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 694dcef928..0360a4d648 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -96,13 +96,13 @@ void KingdomGame::GPLogic4() {
 				word_2D7A6 = 0;
 			}
 
-			_ItemInhibit = 0;
-			_TideCntl = 0;
+			_ItemInhibit = false;
+			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
 			_SkylarTimerFlag = 0;
 			EnAll();
-			_MapEx = 1;
+			_MapEx = true;
 			_NodeNum = 5;
 			DrawLocation();
 			PlaySound(0);
@@ -144,13 +144,13 @@ void KingdomGame::GPLogic4() {
 				word_2D7A6 = 0;
 			}
 
-			_ItemInhibit = 0;
-			_TideCntl = 0;
+			_ItemInhibit = false;
+			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
 			_SkylarTimerFlag = 0;
 			EnAll();
-			_MapEx = 1;
+			_MapEx = true;
 			_NodeNum = 27;
 			DrawLocation();
 			_Resurrect = 1;
@@ -192,13 +192,13 @@ void KingdomGame::GPLogic4() {
 			if (word_2D7CC == 1)
 				word_2D7CC = 0;
 
-			_ItemInhibit = 0;
-			_TideCntl = 0;
+			_ItemInhibit = false;
+			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
 			_SkylarTimerFlag = 0;
 			EnAll();
-			_MapEx = 1;
+			_MapEx = true;
 			_NodeNum = 52;
 			DrawLocation();
 			_Resurrect = 1;
@@ -230,7 +230,7 @@ void KingdomGame::GPLogic4_SP901() {
 	FadeToBlack2();
 	ShowPic(106);
 	DrawIcon(4, 0, 12 - _HealthOld);
-	if (_TideCntl == 1)
+	if (_TideCntl)
 		DrawPic(178);
 	else
 		DrawPic(179);
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 94e51bbb5d..6756d3f6eb 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -21,6 +21,7 @@
  */
 
 #include "common/scummsys.h"
+#include "common/translation.h"
 
 #include "common/config-manager.h"
 #include "common/error.h"
@@ -322,7 +323,7 @@ void KingdomGame::GameHelp() {
 		}
 		break;
 	case 0x246:
-		SaveGame();
+		saveGame();
 		break;
 	case 0x43B:
 	case 0x43C:
@@ -608,12 +609,191 @@ void KingdomGame::DrawInventory() {
 		DrawIcon(131, 39, 134 + _Inventory[3]);
 }
 
-void KingdomGame::SaveGame() {
-	debug("STUB: SaveGame");
+Common::String KingdomGame::generateSaveName(int slot) {
+	return Common::String::format("%s.%03d", _targetName.c_str(), slot);
 }
 
-void KingdomGame::RestoreGame() {
+void KingdomGame::saveGame() {
+	GUI::SaveLoadChooser *dialog = new GUI::SaveLoadChooser(_("Save game:"), _("Save"), true);
+	int16 savegameId = dialog->runModalWithCurrentTarget();
+	Common::String savegameDescription = dialog->getResultString();
+	delete dialog;
+	if (savegameId < 0)
+		return; // dialog aborted
+	saveGameState(savegameId, savegameDescription);
+}
+
+void KingdomGame::restoreGame() {
+	GUI::SaveLoadChooser *dialog = new GUI::SaveLoadChooser(_("Restore game:"), _("Restore"), false);
+	int16 savegameId = dialog->runModalWithCurrentTarget();
+	delete dialog;
+
+	if (savegameId < 0)
+		return; // dialog aborted
+
+	Common::String savegameFile = generateSaveName(savegameId);
+	Common::InSaveFile *loadFile = _saveFileMan->openForLoading(savegameFile);
+	if (!loadFile)
+		return;
+}
+
+Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
+	Common::String savegameFile = generateSaveName(slot);
+	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
+	Common::OutSaveFile *out = saveMan->openForSaving(savegameFile);
+
+	if (!out)
+		return Common::kCreatingFileFailed;
+
+	KingdomSavegameHeader header;
+	header._saveName = desc;
+	writeSavegameHeader(out, header);
+
+	Common::Serializer s(nullptr, out);
+	synchronize(s);
+
+	out->finalize();
+	delete out;
+
+	return Common::kNoError;
+}
+
+Common::Error KingdomGame::loadGameState(int slot) {
 	debug("STUB: RestoreGame");
+	Common::String savegameFile = generateSaveName(slot);
+	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
+	Common::InSaveFile *inFile = saveMan->openForLoading(savegameFile);
+	if (!inFile)
+		return Common::kReadingFailed;
+
+	Common::Serializer s(inFile, nullptr);
+
+	KingdomSavegameHeader header;
+	if (!readSavegameHeader(inFile, header))
+		error("Invalid savegame");
+
+	if (header._thumbnail) {
+		header._thumbnail->free();
+		delete header._thumbnail;
+	}
+
+	// Load most of the savegame data
+	synchronize(s);
+	delete inFile;
+
+	return Common::kNoError;
+}
+
+void KingdomGame::synchronize(Common::Serializer &s) {
+	s.syncAsSint16LE(_StatPlay);
+	s.syncAsSint16LE(_ASMap);
+	s.syncAsSint16LE(_DaelonCntr);
+	s.syncAsSint16LE(_Health);
+	s.syncAsSint16LE(_HealthOld);
+	s.syncAsSint16LE(_LastObstacle);
+	s.syncAsSint16LE(_NextNode);
+	s.syncAsSint16LE(_NodeNum);
+	s.syncAsSint16LE(_PMovie);
+	s.syncAsSint16LE(_RtnNode);
+	s.syncAsSint16LE(_RobberyNode);
+	s.syncAsSint16LE(_SoundNumber);
+	s.syncAsSint16LE(_TreeEyePic);
+	s.syncAsSint16LE(_TreeEyeSta);
+	s.syncAsSint16LE(_TreeHGPic);
+	s.syncAsSint16LE(_TreeHGSta);
+	s.syncAsSint16LE(_OldTLS);
+	s.syncAsSint16LE(_CTimer);
+	s.syncAsSint16LE(_SkylarTimer);
+
+	// TODO: synchronize the _Node array when it's ready
+	for (int i = 0; i < 18; i++)
+		s.syncAsSint16LE(_Inventory[i]);
+
+	s.syncAsByte(_OldEye);
+	s.syncAsByte(_FstFwd);
+	s.syncAsByte(_Help);
+	s.syncAsByte(_ItemInhibit);
+	s.syncAsByte(_LastObs);
+	s.syncAsByte(_LastSound);
+	s.syncAsByte(_MapEx);
+	s.syncAsByte(_NoMusic);
+	s.syncAsByte(_OldPouch);
+	s.syncAsByte(_Replay);
+	s.syncAsByte(_Spell1);
+	s.syncAsByte(_Spell2);
+	s.syncAsByte(_Spell3);
+	s.syncAsByte(_TideCntl);
+	s.syncAsByte(_Wizard);
+	s.syncAsByte(_TSIconOnly);
+	s.syncAsByte(_CTimerFlag);
+	s.syncAsByte(_SkylarTimerFlag);
+
+
+	// Present in the original. Looks unused.
+	// s.syncAsSint16LE(_StatMap);
+}
+
+const char *const SAVEGAME_STR = "KTFR";
+#define SAVEGAME_STR_SIZE 4
+#define KTFR_SAVEGAME_VERSION 1
+
+void KingdomGame::writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameHeader &header) {
+	// Write out a savegame header
+	out->write(SAVEGAME_STR, SAVEGAME_STR_SIZE + 1);
+
+	out->writeByte(KTFR_SAVEGAME_VERSION);
+
+	// Write savegame name
+	out->writeString(header._saveName);
+	out->writeByte('\0');
+
+	Common::MemoryWriteStreamDynamic *tempThumbnail = new Common::MemoryWriteStreamDynamic;
+	Graphics::saveThumbnail(*tempThumbnail);
+	out->write(tempThumbnail->getData(), tempThumbnail->size());
+	delete tempThumbnail;
+
+	// Write out the save date/time
+	TimeDate td;
+	g_system->getTimeAndDate(td);
+	out->writeSint16LE(td.tm_year + 1900);
+	out->writeSint16LE(td.tm_mon + 1);
+	out->writeSint16LE(td.tm_mday);
+	out->writeSint16LE(td.tm_hour);
+	out->writeSint16LE(td.tm_min);
+}
+
+bool KingdomGame::readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header) {
+	char saveIdentBuffer[SAVEGAME_STR_SIZE + 1];
+	header._thumbnail = nullptr;
+
+	// Validate the header Id
+	in->read(saveIdentBuffer, SAVEGAME_STR_SIZE + 1);
+	if (strncmp(saveIdentBuffer, SAVEGAME_STR, SAVEGAME_STR_SIZE))
+		return false;
+
+	header._version = in->readByte();
+	if (header._version > KTFR_SAVEGAME_VERSION)
+		return false;
+
+	// Read in the string
+	header._saveName.clear();
+	char ch;
+	while ((ch = (char)in->readByte()) != '\0')
+		header._saveName += ch;
+
+	// Get the thumbnail
+	header._thumbnail = Graphics::loadThumbnail(*in);
+	if (!header._thumbnail)
+		return false;
+
+	// Read in save date/time
+	header._year = in->readSint16LE();
+	header._month = in->readSint16LE();
+	header._day = in->readSint16LE();
+	header._hour = in->readSint16LE();
+	header._minute = in->readSint16LE();
+
+	return true;
 }
 
 void KingdomGame::PlaySound(int idx) {
@@ -638,8 +818,10 @@ void KingdomGame::PlaySound(int idx) {
 	Audio::RewindableAudioStream *rewindableStream = Audio::makeRawStream(soundStream, 22050, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN, DisposeAfterUse::NO);
 	_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, Audio::Mixer::kMaxMixerVolume);
 	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, rewindableStream);
-
-//	Audio::AudioStream *stream = Audio::makeLoopingAudioStream(rewindableStream, false);
+//  In the original, there's an array describing whether a sound should loop or not.
+//  The array is full of 'false'. If a variant uses looping sound/music, the following code
+//	and the loop array should be added.
+//	Audio::AudioStream *stream = Audio::makeLoopingAudioStream(rewindableStream, _loopArray[idx]);
 //	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, stream);
 }
 
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index dd0317abef..72a4287f95 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -45,6 +45,11 @@
 #include "graphics/surface.h"
 #include "image/bmp.h"
 
+#include "common/savefile.h"
+#include "gui/saveload.h"
+#include "graphics/thumbnail.h"
+#include "common/serializer.h"
+
 #include "kingdom/console.h"
 
 namespace Kingdom {
@@ -77,6 +82,15 @@ namespace Kingdom {
 	extern int _CursorTable[96];
 	extern HotSpot _MouseMapAS[128][16];
 
+	struct KingdomSavegameHeader {
+		uint32 _signature;
+		uint8 _version;
+		Common::String _saveName;
+		Graphics::Surface *_thumbnail;
+		int _year, _month, _day;
+		int _hour, _minute;
+	};
+
 	class KingdomGame : public Engine {
 	public:
 		KingdomGame(OSystem *syst, const ADGameDescription *gameDesc);
@@ -239,7 +253,7 @@ namespace Kingdom {
 
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];
-		int8 _Inventory[19];
+		int _Inventory[19];
 		int _IconPic[7];
 		uint16 _UserInput;
 		uint16 _MouseButton;
@@ -279,12 +293,10 @@ namespace Kingdom {
 		void DrawRect(uint v1, uint v2, uint v3, uint v4, int v5);
 		void DrawInventory();
 		void GameHelp_Sub43C();
-		void SaveGame();
 		void PlaySound(int v1);
 		void EraseCursor();
 		void GetUserInput();
 		void EraseCursorAsm();
-		void RestoreGame();
 		void DrawLocation();
 		void ProcessMap(int mapNum, int zoom);
 		void ProcessMapInput(int mapNum);
@@ -311,6 +323,14 @@ namespace Kingdom {
 		int checkMouseMapAS();
 		void CursorTypeExit();
 		void EndCredits();
+		void saveGame();
+		void restoreGame();
+		virtual Common::Error loadGameState(int slot);
+		virtual Common::Error saveGameState(int slot, const Common::String &desc);
+		Common::String generateSaveName(int slot);
+		static bool readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header);
+		void writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameHeader &header);
+		void synchronize(Common::Serializer &s);
 	};
 } // End of namespace Kingdom
 


Commit: 08c86eab59158c6b2f976718bb6430aecf57f126
    https://github.com/scummvm/scummvm/commit/08c86eab59158c6b2f976718bb6430aecf57f126
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Rename _Nodes items, save/load them

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 88fdbe8ce5..3fb9be36bd 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -98,9 +98,9 @@ void KingdomGame::GPLogic1() {
 	case 30:
 		_NodeNum = 3;
 		_UserInput = 0;
-		if (word_2D74C == 0) {
+		if (_Nodes[3] == 0) {
 			PlayMovie(177);
-			word_2D74C = 9;
+			_Nodes[3] = 9;
 			if (!_Wizard) {
 				_StatPlay = 50;
 				_LoopFlag = true;
@@ -108,7 +108,7 @@ void KingdomGame::GPLogic1() {
 			}
 		}
 		DrawLocation();
-		if (word_2D74E != 0 && word_2D752 != 1)
+		if (_Nodes[4] != 0 && _Nodes[6] != 1)
 			_Sound = 1;
 		else
 			_Sound = 0;
@@ -144,9 +144,9 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 4;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D74E == 0)
+		if (_Nodes[4] == 0)
 			PlayMovie(62);
-		if (word_2D74E == 9) {
+		if (_Nodes[4] == 9) {
 			PlayMovie(8);
 			_TSIconOnly = 1;
 		}
@@ -161,7 +161,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(63);
 			InventoryDel(1);
 			_CurrMap = 10;
-			word_2D74E = 9;
+			_Nodes[4] = 9;
 			_StatPlay = 41;
 			_TSIconOnly = true;
 			break;
@@ -187,12 +187,12 @@ void KingdomGame::GPLogic1() {
 	case 50:
 		_NodeNum = 5;
 		DrawLocation();
-		if (word_2D750 != 0 && !_Resurrect) {
+		if (_Nodes[5] != 0 && !_Resurrect) {
 			_FrameStop = 38;
 			PlayMovie(5);
 		}
 		
-		if (word_2D750 == 0)
+		if (_Nodes[5] == 0)
 			PlayMovie(5);
 		
 		_Resurrect = false;
@@ -209,7 +209,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			_StatPlay = 51;
 		} else {
-			switch(word_2D750) {
+			switch(_Nodes[5]) {
 			case 0:
 				InventoryAdd(1);
 				break;
@@ -291,7 +291,7 @@ void KingdomGame::GPLogic1() {
 	case 53:
 		switch(_UserInput) {
 		case 0x428:
-			word_2D750 = 1;
+			_Nodes[5] = 1;
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
@@ -299,7 +299,7 @@ void KingdomGame::GPLogic1() {
 			_Eye = true;
 			break;
 		case 0x42A:
-			word_2D750 = 2;
+			_Nodes[5] = 2;
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
@@ -307,7 +307,7 @@ void KingdomGame::GPLogic1() {
 			_Eye = true;
 			break;
 		case 0x42B:
-			word_2D750 = 3;
+			_Nodes[5] = 3;
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
@@ -344,7 +344,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 6;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D74E == 0) {
+		if (_Nodes[4] == 0) {
 			DsAll();
 			PlayMovie(9);
 			_StatPlay = 991;
@@ -359,7 +359,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 7;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D754 == 0) {
+		if (_Nodes[7] == 0) {
 			PlayMovie(11);
 			PlaySound(2);
 			_CurrMap = 9;
@@ -375,13 +375,13 @@ void KingdomGame::GPLogic1() {
 	case 71:
 		switch(_UserInput) {
 		case 0x42F:
-			if (word_2D754 == 9) {
+			if (_Nodes[7] == 9) {
 				DisplayIcon(137);
 			} else {
 				PlayMovie(12);
 				PlaySound(30);
 				InventoryAdd(7);
-				word_2D754 = 9;
+				_Nodes[7] = 9;
 				_CurrMap = 10;
 			}
 			_UserInput = 0;
@@ -409,13 +409,13 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 8;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D756 == 9) {
+		if (_Nodes[8] == 9) {
 			PlayMovie(24);
 			PlaySound(3);
 			_CurrMap = 13;
 			_TSIconOnly = 1;
 		} else {
-			word_2D756 = 0;
+			_Nodes[8] = 0;
 			DsAll();
 			PlayMovie(14);
 			_CurrMap = 10;
@@ -432,7 +432,7 @@ void KingdomGame::GPLogic1() {
 			_LoopFlag = true;
 			break;
 		case 0x429:
-			if (!word_2D756) {
+			if (!_Nodes[8]) {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(18);
@@ -440,11 +440,11 @@ void KingdomGame::GPLogic1() {
 				InventoryDel(1);
 				_UserInput = 0;
 				_CurrMap = 13;
-				word_2D756 = 1;
+				_Nodes[8] = 1;
 			}
 			break;
 		case 0x42A:
-			if (!word_2D756) {
+			if (!_Nodes[8]) {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(18);
@@ -452,22 +452,22 @@ void KingdomGame::GPLogic1() {
 				InventoryDel(2);
 				_UserInput = 0;
 				_CurrMap = 13;
-				word_2D756 = 1;
+				_Nodes[8] = 1;
 			}
 			break;
 		case 0x42C:
-			if (!word_2D756) {
+			if (!_Nodes[8]) {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(16);
 				PlaySound(3);
-				word_2D756 = 9;
+				_Nodes[8] = 9;
 				_TSIconOnly = 1;
 				_CurrMap = 13;
 			}
 			break;
 		case 0x42D:
-			if (!word_2D756) {
+			if (!_Nodes[8]) {
 				EnAll();
 				PlayMovie(17);
 				InventoryDel(5);
@@ -475,7 +475,7 @@ void KingdomGame::GPLogic1() {
 				_ATimer = 0;
 				_UserInput = 0;
 				_CurrMap = 13;
-				word_2D756 = 1;
+				_Nodes[8] = 1;
 			}
 			break;
 		case 0x43A:
@@ -490,7 +490,7 @@ void KingdomGame::GPLogic1() {
 			_ATimer = 0;
 			break;
 		case 0x453:
-			if (word_2D756 == 1) {
+			if (_Nodes[8] == 1) {
 				_StatPlay = 80;
 				_LoopFlag = true;
 			} else {
@@ -509,7 +509,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(8);
 		break;
 	case 90:
-		if (_NodeNum == 18 && word_2D768 == 0) {
+		if (_NodeNum == 18 && _Nodes[17] == 0) {
 			_StatPlay = 170;
 			_LoopFlag = true;
 			_NextNode = 90;
@@ -517,9 +517,9 @@ void KingdomGame::GPLogic1() {
 			_NodeNum = 9;
 			DrawLocation();
 			_UserInput = 0;
-			if (word_2D758 == 0) {
+			if (_Nodes[9] == 0) {
 				_Sound = 0;
-				word_2D758 = 9;
+				_Nodes[9] = 9;
 			} else
 				_Sound = 1;
 			
@@ -566,7 +566,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(9);
 		break;
 	case 100:
-		if (_NodeNum == 18 && word_2D768 == 0) {
+		if (_NodeNum == 18 && _Nodes[17] == 0) {
 			_StatPlay = 170;
 			_LoopFlag = true;
 			_NextNode = 100;
@@ -574,12 +574,12 @@ void KingdomGame::GPLogic1() {
 			_NodeNum = 10;
 			DrawLocation();
 			_UserInput = 0;
-			if (word_2D75A == 1)
-				word_2D75A = 9;
+			if (_Nodes[10] == 1)
+				_Nodes[10] = 9;
 
-			if (word_2D75A != 9) {
+			if (_Nodes[10] != 9) {
 				_Sound = 0;
-				word_2D75A = 1;
+				_Nodes[10] = 1;
 			} else if (_Wizard)
 				_Sound = 1;
 
@@ -610,7 +610,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 11;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D772 == 0)
+		if (_Nodes[22] == 0)
 			_Sound = 0;
 		else
 			_Sound = 1;
@@ -643,7 +643,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 12;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D75E == 0) {
+		if (_Nodes[12] == 0) {
 			PlayMovie(22);
 			_CurrMap = 14;
 		} else {
@@ -669,7 +669,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x437:
-			if (word_2D75E == 9) {
+			if (_Nodes[12] == 9) {
 				DisplayIcon(145);
 				_UserInput = 0;
 			} else
@@ -817,8 +817,8 @@ void KingdomGame::GPLogic1() {
 			FShowPic(105);
 			break;
 		case 0x42E:
-			word_2D764 = 1;
-			word_2D766 = 1;
+			_Nodes[15] = 1;
+			_Nodes[16] = 1;
 			_StatPlay = 120;
 			_LoopFlag = true;
 			break;
@@ -846,7 +846,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 86;
 			break;
 		case 0x445:
-			if (word_2D766 || !_Wizard) {
+			if (_Nodes[16] || !_Wizard) {
 				_StatPlay = 120;
 				_LoopFlag = true;
 			}
@@ -881,7 +881,7 @@ void KingdomGame::GPLogic1() {
 			ProcessMapInput(16);
 		break;
 	case 170:
-		if (word_2D768 == 9) {
+		if (_Nodes[17] == 9) {
 			_StatPlay = _NextNode;
 			_LoopFlag = true;
 		} else {
@@ -918,7 +918,7 @@ void KingdomGame::GPLogic1() {
 			EnAll();
 			PlayMovie(34);
 			_UserInput = 0;
-			word_2D768 = 9;
+			_Nodes[17] = 9;
 			_StatPlay = _NextNode;
 			_LoopFlag = true;
 			break;
@@ -937,16 +937,16 @@ void KingdomGame::GPLogic1() {
 			ProcessMapInput(_NodeNum);
 		break;
 	case 180:
-		if ((_NodeNum != 9 && _NodeNum != 10) || (word_2D768 != 0)) {
+		if ((_NodeNum != 9 && _NodeNum != 10) || (_Nodes[17] != 0)) {
 			_NodeNum = 18;
 			DrawLocation();
 			_UserInput = 0;
-			if (word_2D76A == 0 || word_2D76A == 1) {
-				word_2D76A = 0;
+			if (_Nodes[18] == 0 || _Nodes[18] == 1) {
+				_Nodes[18] = 0;
 				PlayMovie(33);
 				_CurrMap = 10;
 			}
-			if (word_2D76A == 9) {
+			if (_Nodes[18] == 9) {
 				PlayMovie(37);
 				_CurrMap = 19;
 				_TSIconOnly = 1;
@@ -974,9 +974,9 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x429:
-			if (!word_2D76A) {
+			if (!_Nodes[18]) {
 				InventoryDel(1);
-				word_2D76A = true;
+				_Nodes[18] = true;
 			}
 			PlayMovie(35);
 			_UserInput = 0;
@@ -994,10 +994,10 @@ void KingdomGame::GPLogic1() {
 			RestoreAS();
 			break;
 		case 0x42F:
-			if (word_2D76A == 1) {
+			if (_Nodes[18] == 1) {
 				PlayMovie(36);
 				InventoryDel(7);
-				word_2D76A = 9;
+				_Nodes[18] = 9;
 				_CurrMap = 19;
 				_TSIconOnly = 1;
 			} else {
@@ -1011,7 +1011,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_StatPlay = 182;
 			_Zoom = 2;
-			if (word_2D76A == 9)
+			if (_Nodes[18] == 9)
 				ProcessMap(80, _Zoom);
 			else
 				ProcessMap(18, _Zoom);
@@ -1020,7 +1020,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_Sound = _LastSound;
-			if (_PMovie == 36 && word_2D76A != 9) {
+			if (_PMovie == 36 && _Nodes[18] != 9) {
 				_FrameStop = 27;
 				_FstFwd = 0;
 				PlayMovie(36);
@@ -1050,7 +1050,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 20;
 		DrawLocation();
 		_UserInput = 0;
-		if (!word_2D76E) {
+		if (!_Nodes[20]) {
 			PlayMovie(39);
 			IncreaseHealth();
 		} else {
@@ -1084,17 +1084,17 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_UserInput = 0;
 		if (!_Wizard)
-			word_2D770 = 9;
+			_Nodes[21] = 9;
 
-		if (word_2D770 == 9) {
-			word_2D770 = 9;
+		if (_Nodes[21] == 9) {
+			_Nodes[21] = 9;
 			PlayMovie(209);
 			PlaySound(38);
 			_CurrMap = 81;
 		} else {
 			DsAll();
 			PlayMovie(45);
-			word_2D770 = 0;
+			_Nodes[21] = 0;
 			_CurrMap = 10;
 			SetATimer();
 		}
@@ -1110,7 +1110,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x428:
 			InventoryDel(0);
-			if (word_2D770 == 9) {
+			if (_Nodes[21] == 9) {
 				SaveAS();
 				PlayMovie(65);
 				RestoreAS();
@@ -1124,25 +1124,25 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x42A:
-			if (!word_2D770) {
+			if (!_Nodes[21]) {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(48);
 				InventoryDel(2);
-				word_2D770 = 1;
+				_Nodes[21] = 1;
 				_TSIconOnly = 1;
 				PlaySound(38);
 				_UserInput = 0;
 			}
 			break;
 		case 0x42D:
-			if (!word_2D770) {
+			if (!_Nodes[21]) {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(47);
 				PlaySound(38);
 				InventoryDel(5);
-				word_2D770 = 9;
+				_Nodes[21] = 9;
 				_UserInput = 0;
 				_CurrMap = 81;
 				_TSIconOnly = 1;
@@ -1205,7 +1205,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 22;
 		DrawLocation();
 		_UserInput = 0;
-		if (!word_2D772) {
+		if (!_Nodes[22]) {
 			PlayMovie(41);
 			_CurrMap = 82;
 		} else {
@@ -1235,7 +1235,7 @@ void KingdomGame::GPLogic1() {
 		case 0x42A:
 			PlayMovie(42);
 			PlaySound(30);
-			if (!word_2D772) {
+			if (!_Nodes[22]) {
 				InventoryDel(2);
 				InventoryAdd(4);
 				_TSIconOnly = 1;
@@ -1244,7 +1244,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			break;
 		case 0x42C:
-			if (!word_2D772) {
+			if (!_Nodes[22]) {
 				DsAll();
 				PlayMovie(43);
 				PlaySound(34);
@@ -1287,7 +1287,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 24;
 		DrawLocation();
 		_UserInput = 0;
-		if (!word_2D776) {
+		if (!_Nodes[24]) {
 			PlayMovie(51);
 			_CurrMap = 83;
 		} else {
@@ -1308,12 +1308,12 @@ void KingdomGame::GPLogic1() {
 			InventoryDel(0);
 			break;
 		case 0x429:
-			if (word_2D776 != 9) {
+			if (_Nodes[24] != 9) {
 				_TSIconOnly = 1;
 				PlayMovie(66);
 				InventoryDel(1);
 				_CurrMap = 84;
-				word_2D776 = 9;
+				_Nodes[24] = 9;
 			}
 			break;
 		case 0x42A:
@@ -1396,7 +1396,7 @@ void KingdomGame::GPLogic1_SubSP121() {
 	InventoryAdd(15);
 	_CurrMap = 10;
 	FShowPic(150);
-	word_2D75E = 9;
+	_Nodes[12] = 9;
 	PlaySound(3);
 	_CurrMap = 15;
 }
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 4051341c91..de50f8ceeb 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -32,7 +32,7 @@ void KingdomGame::GPLogic2() {
 
 		DrawLocation();
 		DsAll();
-		if (word_2D776 != 0 || highNode) {
+		if (_Nodes[24] != 0 || highNode) {
 			_Eye = 1;
 			PlayMovie(72);
 			_ATimerFlag = 0;
@@ -114,7 +114,7 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			EnAll();
 			PlayMovie(76);
-			word_2D77A = 1;
+			_Nodes[26] = 1;
 			_UserInput = 0;
 			_StatPlay = 290;
 			_LastObs = 1;
@@ -142,20 +142,20 @@ void KingdomGame::GPLogic2() {
 	case 270:
 		_NodeNum = 27;
 		DrawLocation();
-		if (word_2D77C == 1)
-			word_2D77C = 9;
-		if (word_2D77C == 9 || word_2D77E != 0) {
+		if (_Nodes[28] == 1)
+			_Nodes[28] = 9;
+		if (_Nodes[28] == 9 || _Nodes[29] != 0) {
 			if (_Wizard)
 				_Sound = 1;
 		} else {
 			_Sound = 0;
-			word_2D77C = 1;
+			_Nodes[28] = 1;
 		}
 		PlayMovie(80);
 		PlaySound(18);
 		_CurrMap = 10;
 		_StatPlay = 271;
-		word_2D77C = 1;
+		_Nodes[28] = 1;
 		_UserInput = 0;
 		break;
 	case 271:
@@ -183,7 +183,7 @@ void KingdomGame::GPLogic2() {
 		_FstFwd = 0;
 		PlayMovie(81);
 		_CurrMap = 10;
-		word_2D77E = word_2D792 = 1;
+		_Nodes[29] = _Nodes[39] = 1;
 		_StatPlay = _RobberyNode * 10;
 		EnAll();
 		_LoopFlag = true;
@@ -191,39 +191,39 @@ void KingdomGame::GPLogic2() {
 	case 290:
 		_OldNode = _NodeNum;
 		if (!_Wizard) {
-			word_2D77A = 9;
-			word_2D780 = 8;
+			_Nodes[26] = 9;
+			_Nodes[30] = 8;
 		}
-		if (word_2D77A == 0) {
+		if (_Nodes[26] == 0) {
 			_StatPlay = 260;
 			_LoopFlag = true;
 			_NextNode = 29;
 		} else {
-			if (word_2D77A == 2)
+			if (_Nodes[26] == 2)
 				PlayMovie(79);
 			_NodeNum = 29;
-			if (word_2D77A <= 2 || !ChkDesertObstacles()) {
+			if (_Nodes[26] <= 2 || !ChkDesertObstacles()) {
 				DrawLocation();
-				word_2D77A++;
+				_Nodes[26]++;
 				_UserInput = 0;
-				switch (word_2D780) {
+				switch (_Nodes[30]) {
 				case 0:
 					_Sound = 0;
 					PlayMovie(82);
 					_CurrMap = 89;
-					word_2D780 = 1;
+					_Nodes[30] = 1;
 					break;
 				case 1:
 					_Sound = 1;
 					PlayMovie(82);
 					_CurrMap = 89;
-					word_2D780 = 0;
+					_Nodes[30] = 0;
 					break;
 				case 8:
 					_Sound = 0;
 					PlayMovie(85);
 					_CurrMap = 10;
-					word_2D780 = 9;
+					_Nodes[30] = 9;
 					_TSIconOnly = 1;
 					break;
 				default:
@@ -246,12 +246,12 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(83);
 			PlaySound(30);
 			InventoryAdd(10);
-			word_2D780 = 8;
+			_Nodes[30] = 8;
 			_UserInput = 0;
 			_CurrMap = 10;
 			break;
 		case 0x432:
-			if (word_2D780 >= 8)
+			if (_Nodes[30] >= 8)
 				DisplayIcon(140);
 			else {
 				DsAll();
@@ -276,7 +276,7 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(29);
 		break;
 	case 300:
-		if (word_2D776 == 0) {
+		if (_Nodes[24] == 0) {
 			_LoopFlag = true;
 			_StatPlay = 250;
 		} else {
@@ -316,7 +316,7 @@ void KingdomGame::GPLogic2() {
 			PlaySound(18);
 			_CurrMap = 90;
 			_StatPlay = 311;
-			word_2D784 = 1;
+			_Nodes[32] = 1;
 			_ATimer = 0;
 			_UserInput = 0;
 		}
@@ -351,12 +351,12 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_UserInput = 0;
 		IncreaseHealth();
-		if (word_2D786 != 9 && _Wizard != 0) {
+		if (_Nodes[33] != 9 && _Wizard != 0) {
 			_Sound = 0;
-			word_2D786 = 9;
+			_Nodes[33] = 9;
 		} else {
 			_Sound = 1;
-			word_2D786 = 1;
+			_Nodes[33] = 1;
 		}
 		PlayMovie(87);
 		PlaySound(18);
@@ -386,7 +386,7 @@ void KingdomGame::GPLogic2() {
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
 			_UserInput = 0;
-			if (word_2D784 == 0)
+			if (_Nodes[32] == 0)
 				_Sound = 0;
 			else
 				_Sound = 1;
@@ -414,7 +414,7 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(33);
 		break;
 	case 340:
-		if (word_2D78C == 0) {
+		if (_Nodes[36] == 0) {
 			_StatPlay = 350;
 			_LoopFlag = true;
 			_NextNode = 34;
@@ -424,7 +424,7 @@ void KingdomGame::GPLogic2() {
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
 				_UserInput = 0;
-				if (word_2D78A == 9 || word_2D796 == 0 || _Wizard == 0) {
+				if (_Nodes[35] == 9 || _Nodes[41] == 0 || _Wizard == 0) {
 					PlayMovie(91);
 					_CurrMap = 92;
 				} else {
@@ -432,7 +432,7 @@ void KingdomGame::GPLogic2() {
 					ShowPic(389);
 					_CurrMap = 91;
 				}
-				if (word_2D78A == 9)
+				if (_Nodes[35] == 9)
 					_TSIconOnly = 1;
 				PlaySound(26);
 				_StatPlay = 341;
@@ -442,12 +442,12 @@ void KingdomGame::GPLogic2() {
 	case 341:
 		switch(_UserInput) {
 		case 0x431:
-			if (word_2D78A == 9)
+			if (_Nodes[35] == 9)
 				DisplayIcon(139);
 			else {
 				PlayMovie(90);
 				InventoryAdd(9);
-				word_2D78A = 9;
+				_Nodes[35] = 9;
 				_CurrMap = 93;
 			}
 			break;
@@ -482,8 +482,8 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 350:
 		if (_Wizard == 0)
-			word_2D78C = 1;
-		if (word_2D78C == 1) {
+			_Nodes[36] = 1;
+		if (_Nodes[36] == 1) {
 			_StatPlay = _NextNode * 10;
 			_LoopFlag = true;
 		} else {
@@ -519,7 +519,7 @@ void KingdomGame::GPLogic2() {
 			EnAll();
 			PlayMovie(179);
 			InventoryDel(2);
-			word_2D78C = 1;
+			_Nodes[36] = 1;
 			_UserInput = 0;
 			_StatPlay = _NextNode * 10;
 			_LastObs = 1;
@@ -531,7 +531,7 @@ void KingdomGame::GPLogic2() {
 	case 360:
 		_NodeNum = 36;
 		DrawLocation();
-		if (word_2D78E == 0)
+		if (_Nodes[37] == 0)
 			_Sound = 0;
 		else
 			_Sound = 1;
@@ -558,10 +558,10 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(97);
 			InventoryDel(0);
 			PlaySound(5);
-			word_2D78E = 1;
+			_Nodes[37] = 1;
 			_UserInput = 0;
 			_CurrMap = 10;
-			if (word_2D79A == 0) {
+			if (_Nodes[43] == 0) {
 				_StatPlay = 420;
 				_OldNode = _NodeNum;
 				_NodeNum = 42;
@@ -576,7 +576,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(98);
 			InventoryDel(2);
 			PlaySound(5);
-			word_2D78E = 1;
+			_Nodes[37] = 1;
 			_UserInput = 0;
 			_CurrMap = 10;
 			_TSIconOnly = 1;
@@ -587,7 +587,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(100);
 			InventoryDel(6);
 			PlaySound(5);
-			word_2D78E = 1;
+			_Nodes[37] = 1;
 			_UserInput = 0;
 			_CurrMap = 10;
 			_TSIconOnly = 1;
@@ -597,7 +597,7 @@ void KingdomGame::GPLogic2() {
 			EnAll();
 			PlayMovie(96);
 			PlaySound(5);
-			word_2D78E = 9;
+			_Nodes[37] = 9;
 			_UserInput = 0;
 			_CurrMap = 10;
 			_StatPlay = 420;
@@ -631,7 +631,7 @@ void KingdomGame::GPLogic2() {
 		_NodeNum = 37;
 		DrawLocation();
 		_UserInput = 0;
-		word_2D790 = 0;
+		_Nodes[38] = 0;
 		PlayMovie(102);
 		PlaySound(20);
 		_CurrMap = 109;
@@ -668,7 +668,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(159);
 			_CurrMap = 10;
 			PlaySound(7);
-			word_2D792 = 1;
+			_Nodes[39] = 1;
 			_StatPlay = 381;
 		}
 		break;
@@ -677,7 +677,7 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (_Wizard && word_2D792 != 9) {
+			if (_Wizard && _Nodes[39] != 9) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
@@ -686,7 +686,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x430:
-			if (_Wizard && word_2D792 != 9) {
+			if (_Wizard && _Nodes[39] != 9) {
 				DsAll();
 				PlayMovie(162);
 				_StatPlay = 992;
@@ -694,30 +694,30 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x433:
-			if (_Wizard && word_2D792 != 9) {
+			if (_Wizard && _Nodes[39] != 9) {
 				PlayMovie(161);
 				InventoryDel(11);
-				word_2D7AA = 0;
+				_Nodes[51] = 0;
 				_UserInput = 0;
 			}
 			_UserInput = 0;
 			break;
 		case 0x435:
-			if (_Wizard && word_2D792 != 9) {
+			if (_Wizard && _Nodes[39] != 9) {
 				PlayMovie(160);
 				InventoryDel(13);
-				word_2D792 = 9;
-				word_2D7BA = 0;
+				_Nodes[39] = 9;
+				_Nodes[59] = 0;
 				_UserInput = 0;
 				_TSIconOnly = 1;
 				_CurrMap = 108;
 			}
 			break;
 		case 0x437:
-			if (_Wizard && word_2D792 != 9) {
+			if (_Wizard && _Nodes[39] != 9) {
 				PlayMovie(163);
 				InventoryDel(15);
-				word_2D75E = 0;
+				_Nodes[12] = 0;
 			}
 			_UserInput = 0;
 			break;
@@ -739,7 +739,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 382:
-		if (_Wizard && (word_2D792 != 9) && (_UserInput == 0x413))
+		if (_Wizard && (_Nodes[39] != 9) && (_UserInput == 0x413))
 			_UserInput = 0;
 
 		ProcessMapInput(38);
@@ -757,12 +757,12 @@ void KingdomGame::GPLogic2() {
 	case 400:
 		_NodeNum = 40;
 		if (!_Wizard)
-			word_2D796 = 2;
-		if (word_2D796) {
-			if (word_2D796 == 1)
-				word_2D796 = 2;
+			_Nodes[41] = 2;
+		if (_Nodes[41]) {
+			if (_Nodes[41] == 1)
+				_Nodes[41] = 2;
 			else {
-				word_2D796 = 1;
+				_Nodes[41] = 1;
 				_Sound = 1;
 			}
 		} else {
@@ -787,7 +787,7 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (!word_2D796) {
+			if (!_Nodes[41]) {
 				InventoryDel(_UserInput - 0x428);
 				_ATimer = 0;
 				PlayMovie(178);
@@ -797,7 +797,7 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x42C:
-			if (!word_2D796) {
+			if (!_Nodes[41]) {
 				_ATimer = 0;
 				DsAll();
 				PlayMovie(108);
@@ -807,17 +807,17 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x42E:
-			if (!word_2D796) {
+			if (!_Nodes[41]) {
 				_ATimer = 0;
 				PlayMovie(109);
 				InventoryDel(6);
-				word_2D79A = 0;
+				_Nodes[43] = 0;
 				_UserInput = 0;
 				_ATimer = 136;
 			}
 			break;
 		case 0x437:
-			if (!word_2D796) {
+			if (!_Nodes[41]) {
 				_ATimer = 0;
 				_Help = 1;
 				_Replay = true;
@@ -825,7 +825,7 @@ void KingdomGame::GPLogic2() {
 				_FstFwd = 1;
 				PlayMovie(107);
 				PlaySound(26);
-				word_2D796 = 1;
+				_Nodes[41] = 1;
 				_UserInput = 0;
 				_CurrMap = 96;
 				_TSIconOnly = 1;
@@ -853,7 +853,7 @@ void KingdomGame::GPLogic2() {
 		_NodeNum = 41;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D796)
+		if (_Nodes[41])
 			_Sound = 1;
 
 		_Eye = 0;
@@ -894,7 +894,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 420:
-		if (word_2D78E == 9 || word_2D77E == 1 || !_Wizard) {
+		if (_Nodes[37] == 9 || _Nodes[29] == 1 || !_Wizard) {
 			_OldNode = _NodeNum;
 			_NodeNum = 42;
 			if (!ChkDesertObstacles()) {
@@ -918,17 +918,17 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x42E:
-			if (word_2D79A)
+			if (_Nodes[43])
 				DisplayIcon(136);
 			else {
-				if (word_2D78A == 9) {
+				if (_Nodes[35] == 9) {
 					_Sound = 0;
 				} else {
 					_Sound = 1;
 				}
 				PlayMovie(113);
 				InventoryAdd(6);
-				word_2D79A = 9;
+				_Nodes[43] = 9;
 				_CurrMap = 10;
 			}
 			_TSIconOnly = 1;
@@ -954,7 +954,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_Eye = 0;
 		_UserInput = 0;
-		if (word_2D79C == 9) {
+		if (_Nodes[44] == 9) {
 			_TSIconOnly = 1;
 			PlayMovie(118);
 			_CurrMap = 80;
@@ -970,7 +970,7 @@ void KingdomGame::GPLogic2() {
 			PlaySound(25);
 			InventoryDel(12);
 			InventoryAdd(16);
-			word_2D79C = 9;
+			_Nodes[44] = 9;
 			_CurrMap = 79;
 			_TSIconOnly = 1;
 		}
@@ -983,8 +983,8 @@ void KingdomGame::GPLogic2() {
 			case 0x40A:
 				PlayMovie(10);
 				_StatPlay = 200;
-				if (word_2D79C != 9)
-					word_2D76E = 1;
+				if (_Nodes[44] != 9)
+					_Nodes[20] = 1;
 				_CurrMap = 10;
 				_LoopFlag = true;
 				break;
@@ -1009,7 +1009,7 @@ void KingdomGame::GPLogic2() {
 			case 0x428:
 			case 0x429:
 			case 0x42A:
-				if (word_2D79C != 9) {
+				if (_Nodes[44] != 9) {
 					InventoryDel(_UserInput - 0x428);
 					SaveAS();
 					PlayMovie(178);
@@ -1017,7 +1017,7 @@ void KingdomGame::GPLogic2() {
 				}
 				break;
 			case 0x438:
-				if (word_2D79C == 9) {
+				if (_Nodes[44] == 9) {
 					DisplayIcon(146);
 				} else {
 					DsAll();
@@ -1034,7 +1034,7 @@ void KingdomGame::GPLogic2() {
 		_NodeNum = 44;
 		DrawLocation();
 		_UserInput = 0;
-		if (_Inventory[12] > 0 || word_2D79C == 9)
+		if (_Inventory[12] > 0 || _Nodes[44] == 9)
 			_Sound = 1;
 
 		PlayMovie(119);
@@ -1067,7 +1067,7 @@ void KingdomGame::GPLogic2() {
 	case 450:
 		_NodeNum = 45;
 		_UserInput = 0;
-		if (!word_2D796) {
+		if (!_Nodes[41]) {
 			DsAll();
 			PlayMovie(120);
 			_StatPlay = 992;
@@ -1103,10 +1103,10 @@ void KingdomGame::GPLogic2() {
 		_NodeNum = 46;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D7A2 && _Wizard)
-			word_2D7A2 = 1;
+		if (_Nodes[47] && _Wizard)
+			_Nodes[47] = 1;
 		else {
-			word_2D7A2 = 0;
+			_Nodes[47] = 0;
 			_Sound = 1;
 		}
 		PlayMovie(121);
@@ -1144,7 +1144,7 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(114);
 		_CurrMap = 10;
 		_StatPlay = 481;
-		word_2D7A6 = 1;
+		_Nodes[49] = 1;
 		break;
 	case 481:
 		switch(_UserInput) {
@@ -1197,8 +1197,8 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			EnAll();
 			PlayMovie(181);
-			word_2D77E = 9;
-			word_2D7A6 = 0;
+			_Nodes[29] = 9;
+			_Nodes[49] = 0;
 			_StatPlay = _NextNode * 10;
 			_LoopFlag = true;
 			break;
@@ -1211,17 +1211,17 @@ void KingdomGame::GPLogic2_SubSP361() {
 	EnAll();
 	_UserInput = 0;
 	PlaySound(19);
-	if (word_2D77E == 1) {
+	if (_Nodes[29] == 1) {
 		_StatPlay = 480;
 		_LoopFlag = true;
 		_CurrMap = 10;
 	} else {
 		if (_Inventory[6] == 1 || _Wizard == 0) {
-			if (word_2D79A != 1 || _Wizard != 0)
-				word_2D79A = 1;
+			if (_Nodes[43] != 1 || _Wizard != 0)
+				_Nodes[43] = 1;
 			else {
 				_Sound = 1;
-				word_2D79A = 2;
+				_Nodes[43] = 2;
 			}
 			PlayMovie(122);
 			_CurrMap = 10;
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 218bb488d9..3b63ea21f4 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -32,20 +32,20 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		_Resurrect = false;
 		if (!_Wizard)
-			word_2D7AA = 1;
-		switch(word_2D7AA) {
+			_Nodes[51] = 1;
+		switch(_Nodes[51]) {
 		case 0:
 			PlayMovie(123);
 			_CurrMap = 102;
 			break;
 		case 1:
-			word_2D7AA = 2;
+			_Nodes[51] = 2;
 			PlayMovie(126);
 			_CurrMap = 10;
 			_TSIconOnly = true;
 			break;
 		default:
-			word_2D7AA = 1;
+			_Nodes[51] = 1;
 			_Sound = true;
 			PlayMovie(126);
 			_CurrMap = 10;
@@ -60,7 +60,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (!word_2D7AA) {
+			if (!_Nodes[51]) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
@@ -69,7 +69,7 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x433:
-			if (!word_2D7AA) {
+			if (!_Nodes[51]) {
 				DsAll();
 				PlayMovie(125);
 				_StatPlay = 993;
@@ -79,9 +79,9 @@ void KingdomGame::GPLogic3() {
 
 			break;
 		case 0x439:
-			if (!word_2D7AA) {
+			if (!_Nodes[51]) {
 				PlayMovie(124);
-				word_2D7AA = 1;
+				_Nodes[51] = 1;
 				InventoryAdd(11);
 				_UserInput = 0;
 				_CurrMap = 10;
@@ -122,7 +122,7 @@ void KingdomGame::GPLogic3() {
 				DisplayIcon(142);
 			else {
 				PlayMovie(128);
-				word_2D7AC = 9;
+				_Nodes[52] = 9;
 				InventoryAdd(12);
 				_UserInput = 0;
 				_CurrMap = 10;
@@ -160,11 +160,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 52;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D7AE == 0)
-			word_2D7AE = 1;
+		if (_Nodes[53] == 0)
+			_Nodes[53] = 1;
 		else {
 			_Sound = true;
-			word_2D7AE = false;
+			_Nodes[53] = false;
 		}
 		PlayMovie(130);
 		_CurrMap = 111;
@@ -216,7 +216,7 @@ void KingdomGame::GPLogic3() {
 	case 531:
 		switch(_UserInput) {
 		case 0x428:
-			if (word_2D7B0 == 0) {
+			if (_Nodes[54] == 0) {
 				PlayMovie(71);
 				InventoryAdd(14);
 				InventoryDel(0);
@@ -248,7 +248,7 @@ void KingdomGame::GPLogic3() {
 			EnAll();
 			PlayMovie(135);
 			_CurrMap = 106;
-			word_2D7B6 = 1;
+			_Nodes[57] = 1;
 			PlaySound(8);
 			_TSIconOnly = true;
 			_StatPlay = 561;
@@ -272,11 +272,11 @@ void KingdomGame::GPLogic3() {
 			_Sound = true;
 			_CurrMap = 55;
 		} else {
-			if (!word_2D7B2)
-				word_2D7B2 = 1;
+			if (!_Nodes[55])
+				_Nodes[55] = 1;
 			else {
 				_Sound = true;
-				word_2D7B2 = 0;
+				_Nodes[55] = 0;
 			}
 			_CurrMap = 112;
 		}
@@ -327,8 +327,8 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		PlayMovie(133);
-		if (word_2D7B4 != 9)
-			word_2D7B4 = 0;
+		if (_Nodes[56] != 9)
+			_Nodes[56] = 0;
 		_TSIconOnly = true;
 		_CurrMap = 104;
 		_StatPlay = 551;
@@ -345,17 +345,17 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x42C:
 			_ATimer = 0;
-			if (word_2D7B4 == 1) {
+			if (_Nodes[56] == 1) {
 				EnAll();
 				PlayMovie(183);
 				FShowPic(433);
 				PlaySound(8);
-				word_2D7B4 = 9;
+				_Nodes[56] = 9;
 				_TSIconOnly = true;
 			}
 			break;
 		case 0x43A:
-			if (word_2D7B4 == 1) {
+			if (_Nodes[56] == 1) {
 				DsAll();
 				PlayMovie(134);
 				_StatPlay = 993;
@@ -375,12 +375,12 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x452:
 			_ATimer = 0;
-			switch(word_2D7B4) {
+			switch(_Nodes[56]) {
 			case 0:
 				DsAll();
 				PlayMovie(69);
 				_TSIconOnly = false;
-				word_2D7B4 = 1;
+				_Nodes[56] = 1;
 				SetATimer();
 				break;
 			case 1:
@@ -403,7 +403,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 552:
 		ProcessMapInput(55);
-		if (!word_2D7B4 && _StatPlay == 560) {
+		if (!_Nodes[56] && _StatPlay == 560) {
 			_StatPlay = 551;
 			_UserInput = 0x190;
 			_LoopFlag = true;
@@ -418,7 +418,7 @@ void KingdomGame::GPLogic3() {
 			EnAll();
 			PlayMovie(135);
 			ShowPic(435);
-			word_2D7B6 = 1;
+			_Nodes[57] = 1;
 			PlaySound(8);
 			_StatPlay = 561;
 			_CurrMap = 106;
@@ -428,7 +428,7 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(135);
 			_CurrMap = 10;
 			SetATimer();
-			word_2D7B6 = 0;
+			_Nodes[57] = 0;
 			_StatPlay = 561;
 		}
 		break;
@@ -445,7 +445,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			_ATimer = 0;
-			if (!word_2D7B6) {
+			if (!_Nodes[57]) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
@@ -456,29 +456,29 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x42C:
 			_ATimer = 0;
-			if (!word_2D7B6) {
+			if (!_Nodes[57]) {
 				_FstFwd = false;
 				_Replay = true;
 				PlayMovie(138);
 				EnAll();
 				PlaySound(8);
-				word_2D7B6 = 1;
+				_Nodes[57] = 1;
 				InventoryDel(4);
-				word_2D772 = 0;
+				_Nodes[22] = 0;
 				_CurrMap = 88;
 				_TSIconOnly = true;
 			}
 			break;
 		case 0x438:
 			_ATimer = 0;
-			if (!word_2D7B6) {
+			if (!_Nodes[57]) {
 				EnAll();
 				_FstFwd = false;
 				_Replay = true;
 				PlayMovie(137);
 				EnAll();
 				PlaySound(8);
-				word_2D7B6 = 1;
+				_Nodes[57] = 1;
 				_CurrMap = 106;
 				_TSIconOnly = true;
 			}
@@ -491,10 +491,10 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_FstFwd = false;
-			if (_PMovie == 135 && word_2D7B6) {
+			if (_PMovie == 135 && _Nodes[57]) {
 				_FrameStop = 50;
 				PlayMovie(135);
-			} else if (word_2D7B6)
+			} else if (_Nodes[57])
 				PlayMovie(_PMovie);
 			else {
 				_UserInput = 753;
@@ -527,12 +527,12 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(56);
 		break;
 	case 570:
-		if (word_2D7B8) {
+		if (_Nodes[58]) {
 			if (_RtnNode != 34)
 				_Sound = true;
 			_NodeNum = 57;
 			DrawLocation();
-			word_2D7B8 = 0;
+			_Nodes[58] = 0;
 			_UserInput = 0;
 			PlayMovie(139);
 			PlaySound(27);
@@ -569,23 +569,23 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_IconsClosed = true;
 		_UserInput = 0;
-		switch(word_2D7BA) {
+		switch(_Nodes[59]) {
 		case 0:
 			_Sound = true;
 			PlayMovie(140);
 			_CurrMap = 113;
-			word_2D7BA = 1;
+			_Nodes[59] = 1;
 			break;
 		case 1:
 			PlayMovie(140);
 			_CurrMap = 113;
-			word_2D7BA = 0;
+			_Nodes[59] = 0;
 			break;
 		case 8:
 			_TSIconOnly = true;
 			PlayMovie(143);
 			_CurrMap = 10;
-			word_2D7BA = 9;
+			_Nodes[59] = 9;
 			break;
 		case 9:
 			_TSIconOnly = true;
@@ -601,7 +601,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x430:
 			PlayMovie(141);
-			word_2D7BA = 8;
+			_Nodes[59] = 8;
 			InventoryAdd(13);
 			_TSIconOnly = true;
 			_CurrMap = 10;
@@ -610,7 +610,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (word_2D7BA < 8) {
+			if (_Nodes[59] < 8) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
@@ -619,7 +619,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x435:
-			if (word_2D7BA >= 8)
+			if (_Nodes[59] >= 8)
 				DisplayIcon(143);
 			else {
 				DsAll();
@@ -650,11 +650,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 59;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D7BC == 0)
-			word_2D7BC = 1;
+		if (_Nodes[60] == 0)
+			_Nodes[60] = 1;
 		else {
 			_Sound = true;
-			word_2D7BC = 0;
+			_Nodes[60] = 0;
 		}
 		PlayMovie(144);
 		ShowPic(144);
@@ -707,15 +707,15 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 61;
 		DrawLocation();
 		_UserInput = 0;
-		word_2D7D6 = 0;
-		word_2D7D8 = 0;
-		if (word_2D7C0 == 0)
-			word_2D7C0 = 1;
+		_Nodes[73] = 0;
+		_Nodes[74] = 0;
+		if (_Nodes[62] == 0)
+			_Nodes[62] = 1;
 		else
 			_Sound = true;
 
 		PlayMovie(146);
-		if (word_2D7D0 == 9) {
+		if (_Nodes[70] == 9) {
 			_ItemInhibit = true;
 			_TSIconOnly = true;
 		}
@@ -739,7 +739,7 @@ void KingdomGame::GPLogic3() {
 		case 0x432:
 			PlayMovie(147);
 			_Inventory[5] = -1;
-			word_2D780 = 0;
+			_Nodes[30] = 0;
 			_CurrMap = 116;
 			break;
 		case 0x43E:
@@ -775,14 +775,14 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		_Eye = false;
-		if (word_2D7C2 == 0) {
+		if (_Nodes[63] == 0) {
 			PlayMovie(149);
 			_CurrMap = 122;
 		} else {
 			_FrameStop = 24;
 			PlayMovie(202);
 			_CurrMap = 121;
-			word_2D7C2 = 9;
+			_Nodes[63] = 9;
 		}
 		_TSIconOnly = true;
 		PlaySound(8);
@@ -802,13 +802,13 @@ void KingdomGame::GPLogic3() {
 		case 0x430:
 			PlayMovie(150);
 			InventoryAdd(8);
-			word_2D7C2 = 1;
+			_Nodes[63] = 1;
 			PlaySound(25);
 			_CurrMap = 121;
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			switch (word_2D7C2) {
+			switch (_Nodes[63]) {
 			case 0:
 				PlayMovie(149);
 				break;
@@ -828,7 +828,7 @@ void KingdomGame::GPLogic3() {
 			_FrameStop = 50;
 			EnAll();
 			PlayMovie(135);
-			word_2D7B6 = 1;
+			_Nodes[57] = 1;
 			PlaySound(8);
 			_StatPlay = 561;
 			_CurrMap = 106;
@@ -851,11 +851,11 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		_Eye = false;
-		if (word_2D7C4 == 1 || !_Wizard) {
-			word_2D7C4 = 0;
+		if (_Nodes[64] == 1 || !_Wizard) {
+			_Nodes[64] = 0;
 			_Sound = true;
 		} else
-			word_2D7C4 = true;
+			_Nodes[64] = true;
 
 		PlayMovie(151);
 		_CurrMap = 72;
@@ -883,11 +883,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 64;
 		DrawLocation();
 		_UserInput = 0;
-		if (word_2D7C6 || _Wizard) {
+		if (_Nodes[65] || _Wizard) {
 			_Sound = true;
-			word_2D7C6 = 0;
+			_Nodes[65] = 0;
 		} else
-			word_2D7C6 = 1;
+			_Nodes[65] = 1;
 
 		PlayMovie(152);
 		_CurrMap = 10;
@@ -919,11 +919,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 65;
 		_Eye = false;
 		_UserInput = 0;
-		if (word_2D7C8 == 0)
-			word_2D7C8 = 1;
+		if (_Nodes[66] == 0)
+			_Nodes[66] = 1;
 		else {
 			_Sound = true;
-			word_2D7C8 = 0;
+			_Nodes[66] = 0;
 		}
 		PlayMovie(153);
 		ShowPic(453);
@@ -943,7 +943,7 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x446:
-			if (word_2D7CC == 1) {
+			if (_Nodes[68] == 1) {
 				_StatPlay = 660;
 				_LoopFlag = true;
 			} else {
@@ -965,11 +965,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 66;
 		_Eye = false;
 		_UserInput = 0;
-		if (word_2D7CA == 0)
-			word_2D7CA = 1;
+		if (_Nodes[67] == 0)
+			_Nodes[67] = 1;
 		else {
 			_Sound = true;
-			word_2D7CA = 0;
+			_Nodes[67] = 0;
 		}
 		PlayMovie(154);
 		_CurrMap = 70;
@@ -988,10 +988,10 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x446:
 			_LoopFlag = true;
-			_StatPlay = (word_2D7CC == 1) ? 650 : 790;
+			_StatPlay = (_Nodes[68] == 1) ? 650 : 790;
 			break;
 		case 0x447:
-			if (!_Wizard || word_2D7CC)
+			if (!_Wizard || _Nodes[68])
 				_StatPlay = 650;
 			else
 				_StatPlay = 670;
@@ -1008,7 +1008,7 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 67;
 		_UserInput = 0;
 		_Eye = false;
-		word_2D7CC = 1;
+		_Nodes[68] = 1;
 		_FstFwd = false;
 		PlayMovie(155);
 		_CurrMap = 127;
@@ -1046,9 +1046,9 @@ void KingdomGame::GPLogic3() {
 	case 690:
 		_ItemInhibit = false;
 		EnAll();
-		if (word_2D7D0 == 9) {
+		if (_Nodes[70] == 9) {
 			_StatPlay = 640;
-			word_2D7D6 = 0;
+			_Nodes[73] = 0;
 			_LoopFlag = true;
 			_UserInput = 0;
 		} else {
@@ -1074,14 +1074,14 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x439:
-			if (word_2D7D0 == 9)
+			if (_Nodes[70] == 9)
 				DisplayIcon(147);
 			else {
 				_FrameStop = 108;
 				PlayMovie(158);
 				_ItemInhibit = false;
 				InventoryAdd(17);
-				word_2D7D0 = 9;
+				_Nodes[70] = 9;
 				PlaySound(23);
 				_UserInput = 0;
 				_CurrMap = 120;
@@ -1104,7 +1104,7 @@ void KingdomGame::GPLogic3() {
 		case 0x441:
 			_ItemInhibit = false;
 			_StatPlay = 640;
-			word_2D7D6 = 0;
+			_Nodes[73] = 0;
 			_LoopFlag = true;
 			_UserInput = 0;
 			break;
@@ -1121,11 +1121,11 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 70;
 		_UserInput = 0;
 		_Eye = false;
-		if (word_2D7D2 && _Wizard) {
-			word_2D7D2 = 0;
+		if (_Nodes[71] && _Wizard) {
+			_Nodes[71] = 0;
 			_Sound = false;
 		} else
-			word_2D7D2 = 1;
+			_Nodes[71] = 1;
 
 		PlayMovie(164);
 		_CurrMap = 74;
@@ -1226,7 +1226,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x430:
 			_ATimer = 0;
-			if (word_2D7D4 != 2) {
+			if (_Nodes[72] != 2) {
 				PlayMovie(57);
 				_StatPlay = 993;
 			} else {
@@ -1249,7 +1249,7 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x433:
-			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || word_2D7D4 == 2) {
+			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || _Nodes[72] == 2) {
 				_Replay = false;
 				PlayMovie(166);
 				_StatPlay = 993;
@@ -1259,7 +1259,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(169);
 				_StatPlay = 580;
 				InventoryDel(11);
-				word_2D7AA = 0;
+				_Nodes[51] = 0;
 			}
 			_LoopFlag = true;
 			break;
@@ -1269,13 +1269,13 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(193);
 			ShowPic(128);
 			InventoryDel(14);
-			word_2D7D4 = 2;
+			_Nodes[72] = 2;
 			SetATimer();
 			break;
 
 		case 0x437:
 			_ATimer = 0;
-			if (word_2D7D4 == 2) {
+			if (_Nodes[72] == 2) {
 				_NodeNum = 0;
 				_IconsClosed = true;
 				_FstFwd = false;
@@ -1302,17 +1302,17 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 72;
 		_UserInput = 0;
 		_Eye = false;
-		switch (word_2D7D6) {
+		switch (_Nodes[73]) {
 		case 0:
-			word_2D7D6 = 1;
+			_Nodes[73] = 1;
 			break;
 		case 1:
 			_FrameStop = 24;
-			word_2D7D6 = 2;
+			_Nodes[73] = 2;
 			break;
 		default:
 			_FrameStop = 24;
-			word_2D7D6 = 3;
+			_Nodes[73] = 3;
 			break;
 		}
 		PlayMovie(175);
@@ -1323,12 +1323,12 @@ void KingdomGame::GPLogic3() {
 	case 721:
 		switch(_UserInput) {
 		case 0x43E:
-			if (word_2D7D6 > 1)
+			if (_Nodes[73] > 1)
 				_FrameStop = 24;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
-			if (word_2D7D6 == 1) {
+			if (_Nodes[73] == 1) {
 				_ItemInhibit = false;
 				_StatPlay = 640;
 			} else
@@ -1338,19 +1338,19 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x448:
-			_StatPlay = (word_2D7D6 == 2) ? 730 : 680;
+			_StatPlay = (_Nodes[73] == 2) ? 730 : 680;
 			_CurrMap = 10;
 			_LoopFlag = true;
 			break;
 		case 0x44B:
-			_StatPlay = (word_2D7D6 == 1) ? 730 : 680;
+			_StatPlay = (_Nodes[73] == 1) ? 730 : 680;
 			_CurrMap = 10;
 			_LoopFlag = true;
 			break;
 		case 0x44C:
-			if (word_2D7D6 == 1) {
+			if (_Nodes[73] == 1) {
 				_StatPlay = 730;
-				word_2D7D8 = 3;
+				_Nodes[74] = 3;
 			} else
 				_StatPlay = 680;
 
@@ -1367,21 +1367,21 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 73;
 		_UserInput = 0;
 		_Eye = false;
-		switch(word_2D7D8) {
+		switch(_Nodes[74]) {
 		case 0:
-			word_2D7D8 = 1;
+			_Nodes[74] = 1;
 			break;
 		case 1:
 			_Sound = true;
-			word_2D7D8 = 2;
+			_Nodes[74] = 2;
 			break;
 		case 2:
 			_FrameStop = 23;
-			word_2D7D8 = 3;
+			_Nodes[74] = 3;
 			break;
 		default:
 			_FrameStop = 23;
-			word_2D7D8 = 4;
+			_Nodes[74] = 4;
 			break;
 		}
 		PlayMovie(176);
@@ -1392,20 +1392,20 @@ void KingdomGame::GPLogic3() {
 	case 731:
 		switch(_UserInput) {
 		case 0x43E:
-			if (word_2D7D8 > 2)
+			if (_Nodes[74] > 2)
 				_FrameStop = 23;
 			_Sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
-			switch (word_2D7D8) {
+			switch (_Nodes[74]) {
 			case 1:
 			case 2:
 				_StatPlay = 720;
 				break;
 			case 3:
 				_StatPlay = 720;
-				word_2D7D6 = 1;
+				_Nodes[73] = 1;
 				break;
 			default:
 				_StatPlay = 680;
@@ -1415,13 +1415,13 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x448:
-			switch(word_2D7D8) {
+			switch(_Nodes[74]) {
 			case 3:
 				_StatPlay = 690;
 				break;
 			case 4:
 				_StatPlay = 720;
-				word_2D7D6 = 1;
+				_Nodes[73] = 1;
 				break;
 			default:
 				_StatPlay = 680;
@@ -1429,14 +1429,14 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x44B:
-			switch(word_2D7D8) {
+			switch(_Nodes[74]) {
 			case 1:
 				_StatPlay = 720;
 				break;
 			case 3:
 			case 4:
 				_StatPlay = 720;
-				word_2D7D6 = 1;
+				_Nodes[73] = 1;
 				break;
 			default:
 				_StatPlay= 680;
@@ -1447,14 +1447,14 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x44C:
-			switch(word_2D7D8) {
+			switch(_Nodes[74]) {
 			case 1:
 			case 2:
 				_StatPlay = 720;
 				break;
 			case 4:
 				_StatPlay = 720;
-				word_2D7D6 = 1;
+				_Nodes[73] = 1;
 				break;
 			default:
 				_StatPlay = 680;
@@ -1496,11 +1496,11 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 753;
 			break;
 		case 0x432:
-			if (word_2D7DA) {
+			if (_Nodes[75]) {
 				_Sound = false;
-				word_2D7DA = false;
+				_Nodes[75] = false;
 			} else
-				word_2D7DA = true;
+				_Nodes[75] = true;
 			break;
 		case 0x437:
 			_LoopFlag = true;
@@ -1508,7 +1508,7 @@ void KingdomGame::GPLogic3() {
 				_FrameStop = 88;
 				PlayMovie(187);
 				_StatPlay = 570;
-				word_2D7B8 = 1;
+				_Nodes[58] = 1;
 			} else {
 				_FrameStop = 78;
 				PlayMovie(187);
@@ -1542,7 +1542,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x44D:
 			PlayMovie(191);
-			word_2D7CC = 2;
+			_Nodes[68] = 2;
 			_StatPlay = 660;
 			_LoopFlag = true;
 			break;
@@ -1630,7 +1630,7 @@ void KingdomGame::GPLogic3() {
 			_LoopFlag = true;
 			break;
 		case 0x446:
-			_StatPlay = (word_2D7CC == 1) ? 760 : 660;
+			_StatPlay = (_Nodes[68] == 1) ? 760 : 660;
 			_LoopFlag = true;
 			break;
 		default:
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 0360a4d648..396c123670 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -91,9 +91,9 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 			
 			_LoopFlag = true;
-			if (word_2D77E == 1) {
-				word_2D77E = 0;
-				word_2D7A6 = 0;
+			if (_Nodes[29] == 1) {
+				_Nodes[29] = 0;
+				_Nodes[49] = 0;
 			}
 
 			_ItemInhibit = false;
@@ -106,7 +106,7 @@ void KingdomGame::GPLogic4() {
 			_NodeNum = 5;
 			DrawLocation();
 			PlaySound(0);
-			if (word_2D750 > 0) {
+			if (_Nodes[5] > 0) {
 				PlayMovie(197);
 				_Resurrect = 1;
 			}
@@ -139,9 +139,9 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 
 			_LoopFlag = true;
-			if (word_2D77E == 1) {
-				word_2D77E = 0;
-				word_2D7A6 = 0;
+			if (_Nodes[29] == 1) {
+				_Nodes[29] = 0;
+				_Nodes[49] = 0;
 			}
 
 			_ItemInhibit = false;
@@ -185,12 +185,12 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 			
 			_LoopFlag = true;
-			if (word_2D77E == 1) {
-				word_2D77E = 0;
-				word_2D7A6 = 0;
+			if (_Nodes[29] == 1) {
+				_Nodes[29] = 0;
+				_Nodes[49] = 0;
 			}
-			if (word_2D7CC == 1)
-				word_2D7CC = 0;
+			if (_Nodes[68] == 1)
+				_Nodes[68] = 0;
 
 			_ItemInhibit = false;
 			_TideCntl = false;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 6756d3f6eb..a00a08f526 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -57,6 +57,9 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 		_RezSize[i] = 0;
 	}
 
+	for (int i = 0; i < 99; i++)
+		_Nodes[i] = 0;
+
 	_ASPtr = nullptr;
 	_quit = false;
 	_MouseValue = 0;
@@ -148,7 +151,8 @@ void KingdomGame::TitlePage() {
 void KingdomGame::InitPlay() {
 	memset(_Inventory, 0xFF, 19);
 
-	//TODO: Init game flags, once the hardcoded logic is implemented and they are renamed
+	for (int i = 0; i < 99; i++)
+		_Nodes[i] = 0;
 
 	for (int i = 0; i < 7; i++)
 		_IconPic[i] = 89 + i;
@@ -256,7 +260,7 @@ void KingdomGame::GameHelp() {
 			DrawRect(4, 17, 228, 161, 0);
 			DrawInventory();
 
-			if (word_2D7CC == 1 || word_2D77E == 1 || _ItemInhibit)
+			if (_Nodes[68] == 1 || _Nodes[29] == 1 || _ItemInhibit)
 				_CurrMap = 10;
 			else
 				_CurrMap = 11;
@@ -337,7 +341,7 @@ void KingdomGame::GameHelp() {
 
 	if (_UserInput == 0x260) {
 		DrawInventory();
-		if (word_2D7CC == 1 || word_2D77E == 1)
+		if (_Nodes[68] == 1 || _Nodes[29] == 1)
 			_CurrMap = 10;
 		else
 			_CurrMap = 11;
@@ -539,7 +543,7 @@ void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 
 void KingdomGame::DrawInventory() {
 	FShowPic(108);
-	if (word_2D77E == 1 || word_2D7CC == 1 || _ItemInhibit)
+	if (_Nodes[29] == 1 || _Nodes[68] == 1 || _ItemInhibit)
 		return;
 
 	if (_Inventory[0] > 0)
@@ -705,10 +709,12 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_CTimer);
 	s.syncAsSint16LE(_SkylarTimer);
 
-	// TODO: synchronize the _Node array when it's ready
 	for (int i = 0; i < 18; i++)
 		s.syncAsSint16LE(_Inventory[i]);
 
+	for (int i = 0; i < 99; i++)
+		s.syncAsSint16LE(_Nodes[i]);
+
 	s.syncAsByte(_OldEye);
 	s.syncAsByte(_FstFwd);
 	s.syncAsByte(_Help);
@@ -728,7 +734,6 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsByte(_CTimerFlag);
 	s.syncAsByte(_SkylarTimerFlag);
 
-
 	// Present in the original. Looks unused.
 	// s.syncAsSint16LE(_StatMap);
 }
@@ -1034,7 +1039,7 @@ void KingdomGame::SetATimer() {
 	_ATimerFlag = true;
 	_ATimer = 0;
 	int wrkNodeNum = _NodeNum;
-	if (word_2D77E == 1 || word_2D7CC == 1)
+	if (_Nodes[29] == 1 || _Nodes[68] == 1)
 		return;
 
 	if (_TSIconOnly != 0)
@@ -1132,11 +1137,11 @@ void KingdomGame::CheckMainScreen() {
 			wrkNodeNum = 79;
 		if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
 			wrkNodeNum = 80;
-		if (_NodeNum == 21 && word_2D770 == 9)
+		if (_NodeNum == 21 && _Nodes[21] == 9)
 			wrkNodeNum = 81;
 		int idx = _IconActTable[wrkNodeNum][i];
 
-		if (_Inventory[idx] >= 1 && word_2D77E != 1 && word_2D7CC != 1 && !_ItemInhibit && !_IconsClosed) {
+		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_ItemInhibit && !_IconsClosed) {
 			if (_IconPic[i] != 12 + idx) {
 				if (_IconPic[i] == 89 + i)
 					_IconPic[i] = 96 + i;
@@ -1304,8 +1309,8 @@ bool KingdomGame::ChkDesertObstacles() {
 		return false;
 	}
 
-	if (word_2D77E || _rnd->getRandomNumber(6) == 0) {
-		if (!word_2D7A6 || _RobberyNode != _NodeNum) {
+	if (_Nodes[29] || _rnd->getRandomNumber(6) == 0) {
+		if (!_Nodes[49] || _RobberyNode != _NodeNum) {
 			if (_LastObstacle != _NodeNum) {
 				if (_rnd->getRandomNumber(5) == 0) {
 					_StatPlay = 250;
@@ -1495,15 +1500,15 @@ void KingdomGame::CursorType() {
 		debug("CursorType: Unhandled 0x24A");
 		break;
 	case 0x407:
-		if (_StatPlay == 182 && word_2D76A < 9)
+		if (_StatPlay == 182 && _Nodes[18] < 9)
 			_MouseValue = 0;
 		break;
 	case 0x40D:
-		if (word_2D77E == 1)
+		if (_Nodes[29] == 1)
 			_MouseValue = 0;
 		break;
 	case 0x41F:
-		if (word_2D784 == 0)
+		if (_Nodes[32] == 0)
 			_MouseValue = 0;
 		break;
 	case 0x422:
@@ -1524,7 +1529,7 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0;
 		break;
 	case 0x445:
-		if (_StatPlay == 161 && word_2D766 == 0 && _Wizard)
+		if (_StatPlay == 161 && _Nodes[16] == 0 && _Wizard)
 			_MouseValue = 0x450;
 		break;
 	case 0x44F:
@@ -1546,7 +1551,7 @@ void KingdomGame::CursorType() {
 			if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
 				var2 = 80;
 			int indx = _IconActTable[var2][var6];
-			if (_Inventory[indx] != 0 && word_2D77E != 1 && word_2D7CC != 1 && !_IconsClosed && !_ItemInhibit) {
+			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_IconsClosed && !_ItemInhibit) {
 				_MouseValue = indx + 0x428;
 				_IconSelect = var6;
 				break;
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 72a4287f95..41298c5ecf 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -194,62 +194,7 @@ namespace Kingdom {
 		Audio::SoundHandle _soundHandle;
 
 		// Game Flags - Will be renames later into _Nodes[]
-		int16 word_2D74C;
-		int16 word_2D74E;
-		int16 word_2D750;
-		int16 word_2D752;
-		int16 word_2D754;
-		int16 word_2D756;
-		int16 word_2D758;
-		int16 word_2D75A;
-		int16 word_2D75E;
-		int16 word_2D764;
-		int16 word_2D766;
-		int16 word_2D768;
-		int16 word_2D76A;
-		int16 word_2D76E;
-		int16 word_2D770;
-		int16 word_2D772;
-		int16 word_2D776;
-		int16 word_2D77A;
-		int16 word_2D77C;
-		int16 word_2D77E;
-		int16 word_2D780;
-		int16 word_2D784;
-		int16 word_2D786;
-		int16 word_2D78A;
-		int16 word_2D78C;
-		int16 word_2D78E;
-		int16 word_2D790;
-		int16 word_2D792;
-		int16 word_2D796;
-		int16 word_2D79A;
-		int16 word_2D79C;
-		int16 word_2D7A2;
-		int16 word_2D7A6;
-		int16 word_2D7AA;
-		int16 word_2D7AC;
-		int16 word_2D7AE;
-		int16 word_2D7B0;
-		int16 word_2D7B2;
-		int16 word_2D7B4;
-		int16 word_2D7B6;
-		int16 word_2D7B8;
-		int16 word_2D7BA;
-		int16 word_2D7BC;
-		int16 word_2D7C0;
-		int16 word_2D7C2;
-		int16 word_2D7C4;
-		int16 word_2D7C6;
-		int16 word_2D7C8;
-		int16 word_2D7CA;
-		int16 word_2D7CC;
-		int16 word_2D7D0;
-		int16 word_2D7D2;
-		int16 word_2D7D4;
-		int16 word_2D7D6;
-		int16 word_2D7D8;
-		int16 word_2D7DA;
+		int16 _Nodes[99];
 
 		Common::SeekableReadStream *_RezPointers[510];
 		int _RezSize[510];


Commit: 224af60b28eea099d894ec9b0709fa63e3e2e2a5
    https://github.com/scummvm/scummvm/commit/224af60b28eea099d894ec9b0709fa63e3e2e2a5
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Handle CTRL-C like in the original

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index a00a08f526..6a5b618b5b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1392,6 +1392,11 @@ int KingdomGame::GetAKey() {
 				retval = 0x100 + event.kbd.keycode;
 			else if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
 				_console->attach();
+			else if (event.kbd.keycode == Common::KEYCODE_c && event.kbd.hasFlags(Common::KBD_CTRL)) {
+				_UserInput = 0x12D;
+				// _QuitFlag = 2;
+				_quit = true; 
+			}
 			break;
 		case Common::EVENT_LBUTTONUP: // retval == 2?
 			if (_Eye)


Commit: 4101e08741dd4ff45f11089a6798be789f31a436
    https://github.com/scummvm/scummvm/commit/4101e08741dd4ff45f11089a6798be789f31a436
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: use boolean values when needed

Changed paths:
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic4.cpp


diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index de50f8ceeb..3d71dae92e 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -35,7 +35,7 @@ void KingdomGame::GPLogic2() {
 		if (_Nodes[24] != 0 || highNode) {
 			_Eye = 1;
 			PlayMovie(72);
-			_ATimerFlag = 0;
+			_ATimerFlag = false;
 			_ATimer = 114;
 			PlaySound(34);
 			_UserInput = 0;
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 396c123670..7d61f7b843 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -100,7 +100,7 @@ void KingdomGame::GPLogic4() {
 			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
-			_SkylarTimerFlag = 0;
+			_SkylarTimerFlag = false;
 			EnAll();
 			_MapEx = true;
 			_NodeNum = 5;
@@ -148,7 +148,7 @@ void KingdomGame::GPLogic4() {
 			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
-			_SkylarTimerFlag = 0;
+			_SkylarTimerFlag = false;
 			EnAll();
 			_MapEx = true;
 			_NodeNum = 27;
@@ -196,7 +196,7 @@ void KingdomGame::GPLogic4() {
 			_TideCntl = false;
 			DrawPic(179);
 			_SkylarTimer = 0;
-			_SkylarTimerFlag = 0;
+			_SkylarTimerFlag = false;
 			EnAll();
 			_MapEx = true;
 			_NodeNum = 52;


Commit: db08471ed0dca4f7058bfc75145ff5671af545a6
    https://github.com/scummvm/scummvm/commit/db08471ed0dca4f7058bfc75145ff5671af545a6
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix a couple of issues related to timers, add comments

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 6a5b618b5b..a84221b32f 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1083,7 +1083,7 @@ void KingdomGame::IncreaseHealth() {
 }
 
 void KingdomGame::CheckMainScreen() {
-	if (!_CTimerFlag || _StatPlay == 900 || _StatPlay == 901)
+	if (_CTimerFlag || _StatPlay == 900 || _StatPlay == 901)
 		return;
 
 	_CTimerFlag = false;
@@ -1418,8 +1418,8 @@ int KingdomGame::GetAKey() {
 			} else if (_BTimerFlag) {
 				_BTimerFlag = false;
 				retval = 0x2F2;
-			} else if (_CTimerFlag) {
-				_CTimerFlag = false;
+			} else if (_SkylarTimerFlag) {
+				_SkylarTimerFlag = false;
 				retval = 0x2F5;
 			} else
 				retval= 0;
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 41298c5ecf..e1c7f7a2c3 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -125,9 +125,9 @@ namespace Kingdom {
 		bool _ItemInhibit;
 		bool _ASMode;
 		bool _ATimerFlag;
-		bool _BTimerFlag;
-		bool _CTimerFlag;
-		bool _SkylarTimerFlag;
+		bool _BTimerFlag; // TODO: this flag is always false: to be refactored
+		bool _CTimerFlag; // TODO: this flag is always false: to be refactored
+		bool _SkylarTimerFlag; // TODO: this flag is always false: to be refactored
 		int _ATimer;
 		int _BTimer;
 		int _CTimer;


Commit: c2335db693a2c9cf83c1344f4eeabe02161d7180
    https://github.com/scummvm/scummvm/commit/c2335db693a2c9cf83c1344f4eeabe02161d7180
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add some code in RestoreGame functions

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index a84221b32f..b5234cbf07 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -635,10 +635,7 @@ void KingdomGame::restoreGame() {
 	if (savegameId < 0)
 		return; // dialog aborted
 
-	Common::String savegameFile = generateSaveName(savegameId);
-	Common::InSaveFile *loadFile = _saveFileMan->openForLoading(savegameFile);
-	if (!loadFile)
-		return;
+	loadGameState(savegameId);
 }
 
 Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
@@ -663,7 +660,6 @@ Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
 }
 
 Common::Error KingdomGame::loadGameState(int slot) {
-	debug("STUB: RestoreGame");
 	Common::String savegameFile = generateSaveName(slot);
 	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
 	Common::InSaveFile *inFile = saveMan->openForLoading(savegameFile);
@@ -685,6 +681,35 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	synchronize(s);
 	delete inFile;
 
+	free(_ASPtr);
+	_ASPtr = nullptr;
+
+	PlaySound(_SoundNumber);
+	for (int i = 0; i < 7; i++)
+		_IconPic[i] = 89 + i;
+	
+	_FrameStop = 0;
+	_GameMode = 0;
+	_ASMode = false;
+	_HealthTmr = 0;
+	_NoIFScreen = false;
+	_IconRedraw = true;
+	_TreeRightSta = 1;
+	_ATimerFlag = false;
+	_ATimer = 0;
+	_BTimerFlag = false;
+	_BTimer = 0;
+	_TreeEyeTimer = 0;
+	_TreeEyePic = 0;
+	_TreeHGUPic = 0;
+	_CursorDrawn = false;
+	ShowPic(106);
+	_GameMode = 0;
+	_IconsClosed = false;
+	DrawRect(4, 17, 228, 161, 0);
+	_UserInput = 0x43E;
+	_LoopFlag = true;
+
 	return Common::kNoError;
 }
 
@@ -1477,7 +1502,7 @@ void KingdomGame::CursorType() {
 	switch(_MouseValue) {
 	case 0x18A:
 		if (_Eye)
-			_MouseValue = _ASMode == 0 ? 0x43A : 0x43B;
+			_MouseValue = !_ASMode ? 0x43A : 0x43B;
 		else
 			_MouseValue = 0;
 		break;


Commit: 6410b3e615a2564cb6e3b08258ad4580926d63bd
    https://github.com/scummvm/scummvm/commit/6410b3e615a2564cb6e3b08258ad4580926d63bd
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement SaveAS and RestoreAS

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index b5234cbf07..e504f6dcd1 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -192,9 +192,8 @@ void KingdomGame::InitPlay() {
 	_NoIFScreen = true;
 	_NoMusic = false;
 	_FstFwd = true;
-	if (_ASPtr)
-		free(_ASPtr);
 
+	delete[] _ASPtr;
 	_ASPtr = nullptr;
 }
 
@@ -481,11 +480,45 @@ void KingdomGame::DsAll() {
 }
 
 void KingdomGame::SaveAS() {
-	debug("STUB: SaveAS");
+	byte palette[256 * 3];
+	delete[] _ASPtr;
+	_ASPtr = new byte[224 * 146 + 768];
+	g_system->getPaletteManager()->grabPalette(palette, 0, 256);
+
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = 0; curX < 224; curX++) {
+		for (uint curY = 0; curY < 146; curY++) {
+			byte *ptr = (byte *)screen->getBasePtr(curX + 4, curY + 15);
+			_ASPtr[curY * 224 + curX] = *ptr;
+		}
+	}
+
+	for (uint i = 0; i < 768; i++)
+		_ASPtr[224 * 146 + i] = palette[i];
+
+	g_system->unlockScreen();
+	g_system->updateScreen();
 }
 
 void KingdomGame::RestoreAS() {
-	debug("STUB: RestoreAS");
+	byte palette[256 * 3];
+	for (uint i = 0; i < 768; i++)
+		palette[i] = _ASPtr[224 * 146 + i];
+
+	g_system->getPaletteManager()->setPalette(palette, 0, 256);
+
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = 0; curX < 224; curX++) {
+		for (uint curY = 0; curY < 146; curY++) {
+			byte *ptr = (byte *)screen->getBasePtr(curX + 4, curY + 15);
+			*ptr = _ASPtr[curY * 224 + curX];
+		}
+	}
+
+	g_system->unlockScreen();
+	g_system->updateScreen();
+	delete[] _ASPtr;
+	_ASPtr = nullptr;
 }
 
 void KingdomGame::SwitchAS() {
@@ -681,7 +714,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	synchronize(s);
 	delete inFile;
 
-	free(_ASPtr);
+	delete[] _ASPtr;
 	_ASPtr = nullptr;
 
 	PlaySound(_SoundNumber);


Commit: 140f2f72d5c9bf0f3be9c8f7b855cb0363a010d1
    https://github.com/scummvm/scummvm/commit/140f2f72d5c9bf0f3be9c8f7b855cb0363a010d1
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add code to handle timers

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 3fb9be36bd..cf78a61d6f 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -811,6 +811,7 @@ void KingdomGame::GPLogic1() {
 			_BTimer = 190;
 			ReadMouse();
 			while(_BTimer != 0 && _MouseButton == 0) {
+				checkTimers();
 				RefreshSound();
 				ReadMouse();
 			}
@@ -863,6 +864,7 @@ void KingdomGame::GPLogic1() {
 			ReadMouse();
 
 			while(_BTimer != 0 && _MouseButton == 0) {
+				checkTimers();
 				RefreshSound();
 				ReadMouse();
 			}
@@ -1387,6 +1389,7 @@ void KingdomGame::GPLogic1_SubSP121() {
 	ReadMouse();
 	
 	while (_BTimer != 0 && _MouseButton == 0) {
+		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
 		ReadMouse();
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 3d71dae92e..12d53b0f3c 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -872,6 +872,7 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(120);
 				_BTimer = 34;
 				while(_BTimer != 0) {
+					checkTimers();
 					RefreshSound();
 					CheckMainScreen();
 				}
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 3b63ea21f4..62dd24a8b6 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -1684,6 +1684,7 @@ void KingdomGame::EndCredits() {
 	ReadMouse();
 
 	while(_BTimer != 0 && _MouseButton == 0) {
+		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
 		ReadMouse();
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 7d61f7b843..8a404e1baf 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -45,6 +45,7 @@ void KingdomGame::GPLogic4() {
 			_BTimer = 38;
 			ReadMouse();
 			while (_BTimer && !_MouseButton) {
+				checkTimers();
 				RefreshSound();
 				ReadMouse();
 			}
@@ -87,8 +88,10 @@ void KingdomGame::GPLogic4() {
 			_StatPlay = 994;
 		} else {
 			_BTimer = 36;
-			while(_BTimer)
+			while(_BTimer) {
+				checkTimers();
 				RefreshSound();
+			}
 			
 			_LoopFlag = true;
 			if (_Nodes[29] == 1) {
@@ -135,8 +138,10 @@ void KingdomGame::GPLogic4() {
 			_StatPlay = 994;
 		} else {
 			_BTimer = 36;
-			while(_BTimer != 0)
+			while(_BTimer != 0) {
+				checkTimers();
 				RefreshSound();
+			}
 
 			_LoopFlag = true;
 			if (_Nodes[29] == 1) {
@@ -181,8 +186,10 @@ void KingdomGame::GPLogic4() {
 			_StatPlay = 994;
 		} else {
 			_BTimer = 36;
-			while (_BTimer != 0)
+			while (_BTimer != 0) {
+				checkTimers();
 				RefreshSound();
+			}
 			
 			_LoopFlag = true;
 			if (_Nodes[29] == 1) {
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index e504f6dcd1..426e348973 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -68,6 +68,8 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_SoundNumber = -1;
 
 	_kingartEntries = nullptr;
+
+	_tickCount = 0;
 }
 
 KingdomGame::~KingdomGame() {
@@ -103,14 +105,57 @@ Common::Error KingdomGame::run() {
 		if (!_LoopFlag)
 			GetUserInput();
 
-		g_system->updateScreen();
-		g_system->delayMillis(10);
+		refreshScreen();
 	}
 
 	FadeToBlack2();
 	return Common::kNoError;
 }
 
+void KingdomGame::refreshScreen() {
+	g_system->updateScreen();
+	checkTimers();
+}
+
+void KingdomGame::checkTimers() {
+	g_system->delayMillis(10);
+	_tickCount++;
+
+	if (_tickCount == 5) {
+		_tickCount = 0;
+	} else
+		return;
+
+	if (_ATimer != 0) {
+		_ATimer--;
+		if (_ATimer == 0)
+			_ATimerFlag = true;
+	}
+
+	if (_BTimer != 0) {
+		_BTimer--;
+		if (_BTimer == 0)
+			_BTimerFlag = true;
+	}
+
+	if (_CTimer != 0) {
+		_CTimer--;
+		if (_CTimer == 0) {
+			_CTimerFlag = true;
+			_CTimer = 4;
+		}
+	} else
+		_CTimer = 4;
+
+	if (_SkylarTimer != 0) {
+		_SkylarTimer--;
+		if (_SkylarTimer == 0)
+			_SkylarTimerFlag = true;
+	}
+
+	_PalStepFlag = false;
+}
+
 void KingdomGame::drawScreen() {
 	//TODO
 
@@ -969,6 +1014,7 @@ void KingdomGame::DrawLocation() {
 		FShowPic(emlValue);
 		_BTimer = 16;
 		while(_BTimer) {
+			checkTimers();
 			RefreshSound();
 			CheckMainScreen();
 		}
@@ -1084,6 +1130,7 @@ void KingdomGame::DisplayIcon(int reznum) {
 	ReadMouse();
 	
 	while(_BTimer != 0 && _MouseButton == 0) {
+		checkTimers();
 		RefreshSound();
 		ReadMouse();
 	}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index e1c7f7a2c3..d70279f750 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -191,7 +191,9 @@ namespace Kingdom {
 		bool _MouseDebound;
 		int _RtnNode;
 		int _SoundNumber;
+		bool _PalStepFlag;
 		Audio::SoundHandle _soundHandle;
+		int _tickCount;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 _Nodes[99];
@@ -276,6 +278,8 @@ namespace Kingdom {
 		static bool readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header);
 		void writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameHeader &header);
 		void synchronize(Common::Serializer &s);
+		void refreshScreen();
+		void checkTimers();
 	};
 } // End of namespace Kingdom
 


Commit: d03ed1e356155decfe700ff6339aa8ab83a39af4
    https://github.com/scummvm/scummvm/commit/d03ed1e356155decfe700ff6339aa8ab83a39af4
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Improve delay

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 426e348973..3722406dce 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -70,6 +70,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_kingartEntries = nullptr;
 
 	_tickCount = 0;
+	_oldTime = g_system->getMillis();
 }
 
 KingdomGame::~KingdomGame() {
@@ -118,7 +119,11 @@ void KingdomGame::refreshScreen() {
 }
 
 void KingdomGame::checkTimers() {
-	g_system->delayMillis(10);
+	uint32 newTime = g_system->getMillis();
+	int32 delay = 11 - (newTime - _oldTime);
+	if (delay > 0)
+		g_system->delayMillis(delay);
+	_oldTime = newTime;
 	_tickCount++;
 
 	if (_tickCount == 5) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index d70279f750..6da0a2b71f 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -194,6 +194,7 @@ namespace Kingdom {
 		bool _PalStepFlag;
 		Audio::SoundHandle _soundHandle;
 		int _tickCount;
+		uint32 _oldTime;
 
 		// Game Flags - Will be renames later into _Nodes[]
 		int16 _Nodes[99];


Commit: 1ba96757f93a3dd5b46f28653a3fff01507a95f0
    https://github.com/scummvm/scummvm/commit/1ba96757f93a3dd5b46f28653a3fff01507a95f0
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove code disabling game loading button

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 3722406dce..b6eac132ba 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1610,9 +1610,8 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0x440;
 		break;
 	case 0x24A:
-		// if (_SaveFile == 0)
-		_MouseValue = 0;
-		debug("CursorType: Unhandled 0x24A");
+		// Restore game.
+		// No more check in ScummVM, we display the load screen
 		break;
 	case 0x407:
 		if (_StatPlay == 182 && _Nodes[18] < 9)


Commit: c42d08c49af932fe7275f012c9001dae3434296e
    https://github.com/scummvm/scummvm/commit/c42d08c49af932fe7275f012c9001dae3434296e
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix issue in scene 11, clean up some boolean used as int

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index cf78a61d6f..da7e153609 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -48,6 +48,7 @@ void KingdomGame::GPLogic1() {
 			_ATimer = 0;
 			FadeToBlack2();
 			PlayMovie(1);
+			GPLogic1_SubSP10();
 			break;
 		case 0x193:
 			_ATimer = 0;
@@ -236,7 +237,7 @@ void KingdomGame::GPLogic1() {
 				_StatPlay = 51;
 				_LoopFlag = true;
 			} else {
-				_Eye = 0;
+				_Eye = false;
 				PlayMovie(61);
 				PlaySound(1);
 
@@ -650,7 +651,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(25);
 			_CurrMap = 15;
 		}
-		_Eye = 0;
+		_Eye = false;
 		PlaySound(3);
 		_StatPlay = 121;
 		break;
@@ -744,7 +745,7 @@ void KingdomGame::GPLogic1() {
 		PlaySound(3);
 		_CurrMap = 16;
 		_StatPlay = 151;
-		_Eye = 0;
+		_Eye = false;
 		break;
 	case 151:
 		switch(_UserInput) {
@@ -785,9 +786,9 @@ void KingdomGame::GPLogic1() {
 			_PMovie = oldPMovie;
 			_ASMode = false;
 			RestoreAS();
-			_Help = 1;
-			_Eye = 1;
-			_Pouch = 1;
+			_Help = true;
+			_Eye = true;
+			_Pouch = true;
 			_CurrMap = 85;
 			}
 			break;
@@ -800,9 +801,9 @@ void KingdomGame::GPLogic1() {
 			_PMovie = oldPMovie;
 			_ASMode = false;
 			RestoreAS();
-			_Help = 1;
-			_Eye = 1;
-			_Pouch = 1;
+			_Help = true;
+			_Eye = true;
+			_Pouch = true;
 			_CurrMap = 85;
 			}
 			break;
@@ -839,9 +840,9 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x444:
 			SaveAS();
-			_Help = 0;
-			_Eye = 0;
-			_Pouch = 0;
+			_Help = false;
+			_Eye = false;
+			_Pouch = false;
 			_Replay = false;
 			FShowPic(105);
 			_CurrMap = 86;
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 12d53b0f3c..f4a077023f 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -33,7 +33,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		DsAll();
 		if (_Nodes[24] != 0 || highNode) {
-			_Eye = 1;
+			_Eye = true;
 			PlayMovie(72);
 			_ATimerFlag = false;
 			_ATimer = 114;
@@ -856,7 +856,7 @@ void KingdomGame::GPLogic2() {
 		if (_Nodes[41])
 			_Sound = 1;
 
-		_Eye = 0;
+		_Eye = false;
 		PlayMovie(111);
 		PlaySound(26);
 		_CurrMap = 97;
@@ -953,7 +953,7 @@ void KingdomGame::GPLogic2() {
 	case 430:
 		_NodeNum = 43;
 		DrawLocation();
-		_Eye = 0;
+		_Eye = false;
 		_UserInput = 0;
 		if (_Nodes[44] == 9) {
 			_TSIconOnly = 1;
@@ -977,7 +977,7 @@ void KingdomGame::GPLogic2() {
 		}
 		_StatPlay = 431;
 		PlaySound(20);
-		_Eye = 0;
+		_Eye = false;
 		break;
 	case 431:
 		switch(_UserInput) {
@@ -1100,7 +1100,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 460:
-		_Eye = 0;
+		_Eye = false;
 		_NodeNum = 46;
 		DrawLocation();
 		_UserInput = 0;


Commit: 557c610138f4ad3bb0f644a9870973f5de98939a
    https://github.com/scummvm/scummvm/commit/557c610138f4ad3bb0f644a9870973f5de98939a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement DrawIcon, make a check in GL1 more coherent (style wise)

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index da7e153609..a0ef18ac29 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -105,7 +105,7 @@ void KingdomGame::GPLogic1() {
 			if (!_Wizard) {
 				_StatPlay = 50;
 				_LoopFlag = true;
-				return;
+				break;
 			}
 		}
 		DrawLocation();
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index b6eac132ba..3fed5bba72 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1474,7 +1474,22 @@ void KingdomGame::SwitchMtoA() {
 }
 
 void KingdomGame::DrawIcon(int x, int y, int index) {
-	debug("STUB: DrawIcon");
+	const byte *data = _kingartEntries[index].data;
+	int width = _kingartEntries[index].Width;
+	int height = _kingartEntries[index].Height;
+
+	::Graphics::Surface *screen = g_system->lockScreen();
+	for (uint curX = 0; curX < width; curX++) {
+		for (uint curY = 0; curY < height; curY++) {
+			const byte *src = data + (curY * width) + curX;
+			byte *dst = (byte *)screen->getBasePtr(curX + x, curY + y);
+			if (*src != 0xFF)
+				*dst = *src;
+		}
+	}
+	g_system->unlockScreen();
+	g_system->updateScreen();
+
 }
 
 int KingdomGame::GetAKey() {


Commit: a2fe6448459003abb5eb81deba8045d5546a5a6a
    https://github.com/scummvm/scummvm/commit/a2fe6448459003abb5eb81deba8045d5546a5a6a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Improve savegame support

Changed paths:
    engines/kingdom/detection.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/detection.cpp b/engines/kingdom/detection.cpp
index 881645b925..42c2360378 100644
--- a/engines/kingdom/detection.cpp
+++ b/engines/kingdom/detection.cpp
@@ -40,6 +40,8 @@ static const PlainGameDescriptor kingdomGames[] = {
 
 namespace Kingdom {
 
+#define MAX_SAVES 99
+
 static const ADGameDescription gameDescriptions[] = {
 	// Kingdom PC DOS Demo version, provided by Strangerke
 	{
@@ -84,10 +86,20 @@ public:
 
 	virtual bool hasFeature(MetaEngineFeature f) const;
 	virtual bool createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const;
+	virtual int getMaximumSaveSlot() const;
+	virtual SaveStateList listSaves(const char *target) const;
+	virtual void removeSaveState(const char *target, int slot) const;
+	SaveStateDescriptor querySaveMetaInfos(const char *target, int slot) const;
 };
 
 bool KingdomMetaEngine::hasFeature(MetaEngineFeature f) const {
-	return false;
+	return
+	    (f == kSupportsListSaves) ||
+	    (f == kSupportsLoadingDuringStartup) ||
+	    (f == kSupportsDeleteSave) ||
+	    (f == kSavesSupportMetaInfo) ||
+	    (f == kSavesSupportThumbnail) ||
+	    (f == kSavesSupportCreationDate);
 }
 
 bool KingdomMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
@@ -97,6 +109,72 @@ bool KingdomMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADG
 	return desc != nullptr;
 }
 
+int KingdomMetaEngine::getMaximumSaveSlot() const {
+	return MAX_SAVES;
+}
+
+SaveStateList KingdomMetaEngine::listSaves(const char *target) const {
+	Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
+	Common::StringArray filenames;
+	Common::String saveDesc;
+	Common::String pattern = Common::String::format("%s.0##", target);
+
+	filenames = saveFileMan->listSavefiles(pattern);
+
+	Kingdom::KingdomSavegameHeader header;
+
+	SaveStateList saveList;
+	for (Common::StringArray::const_iterator file = filenames.begin(); file != filenames.end(); ++file) {
+		const char *ext = strrchr(file->c_str(), '.');
+		int slot = ext ? atoi(ext + 1) : -1;
+
+		if (slot >= 0 && slot < MAX_SAVES) {
+			Common::InSaveFile *in = g_system->getSavefileManager()->openForLoading(*file);
+
+			if (in) {
+				if (Kingdom::KingdomGame::readSavegameHeader(in, header)) {
+					saveList.push_back(SaveStateDescriptor(slot, header._saveName));
+
+					header._thumbnail->free();
+					delete header._thumbnail;
+				}
+
+				delete in;
+			}
+		}
+	}
+
+	// Sort saves based on slot number.
+	Common::sort(saveList.begin(), saveList.end(), SaveStateDescriptorSlotComparator());
+	return saveList;
+}
+
+void KingdomMetaEngine::removeSaveState(const char *target, int slot) const {
+	Common::String filename = Common::String::format("%s.%03d", target, slot);
+	g_system->getSavefileManager()->removeSavefile(filename);
+}
+
+SaveStateDescriptor KingdomMetaEngine::querySaveMetaInfos(const char *target, int slot) const {
+	Common::String filename = Common::String::format("%s.%03d", target, slot);
+	Common::InSaveFile *f = g_system->getSavefileManager()->openForLoading(filename);
+
+	if (f) {
+		Kingdom::KingdomSavegameHeader header;
+		Kingdom::KingdomGame::readSavegameHeader(f, header);
+		delete f;
+
+		// Create the return descriptor
+		SaveStateDescriptor desc(slot, header._saveName);
+		desc.setThumbnail(header._thumbnail);
+		desc.setSaveDate(header._year, header._month, header._day);
+		desc.setSaveTime(header._hour, header._minute);
+
+		return desc;
+	}
+
+	return SaveStateDescriptor();
+}
+
 #if PLUGIN_ENABLED_DYNAMIC(KINGDOM)
 REGISTER_PLUGIN_DYNAMIC(KINGDOM, PLUGIN_TYPE_ENGINE, KingdomMetaEngine);
 #else
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 3fed5bba72..16dc4ca873 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -696,7 +696,7 @@ void KingdomGame::DrawInventory() {
 		DrawIcon(131, 39, 134 + _Inventory[3]);
 }
 
-Common::String KingdomGame::generateSaveName(int slot) {
+Common::String KingdomGame::getSavegameFilename(int slot) {
 	return Common::String::format("%s.%03d", _targetName.c_str(), slot);
 }
 
@@ -722,7 +722,7 @@ void KingdomGame::restoreGame() {
 }
 
 Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
-	Common::String savegameFile = generateSaveName(slot);
+	Common::String savegameFile = getSavegameFilename(slot);
 	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
 	Common::OutSaveFile *out = saveMan->openForSaving(savegameFile);
 
@@ -743,7 +743,7 @@ Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
 }
 
 Common::Error KingdomGame::loadGameState(int slot) {
-	Common::String savegameFile = generateSaveName(slot);
+	Common::String savegameFile = getSavegameFilename(slot);
 	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
 	Common::InSaveFile *inFile = saveMan->openForLoading(savegameFile);
 	if (!inFile)
@@ -1479,8 +1479,8 @@ void KingdomGame::DrawIcon(int x, int y, int index) {
 	int height = _kingartEntries[index].Height;
 
 	::Graphics::Surface *screen = g_system->lockScreen();
-	for (uint curX = 0; curX < width; curX++) {
-		for (uint curY = 0; curY < height; curY++) {
+	for (int curX = 0; curX < width; curX++) {
+		for (int curY = 0; curY < height; curY++) {
 			const byte *src = data + (curY * width) + curX;
 			byte *dst = (byte *)screen->getBasePtr(curX + x, curY + y);
 			if (*src != 0xFF)
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 6da0a2b71f..65ced52b21 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -102,6 +102,7 @@ namespace Kingdom {
 		const ADGameDescription *_gameDescription;
 		const char *getGameId() const;
 		Common::Platform getPlatform() const;
+		static bool readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header);
 
 	private:
 		Console *_console;
@@ -275,8 +276,7 @@ namespace Kingdom {
 		void restoreGame();
 		virtual Common::Error loadGameState(int slot);
 		virtual Common::Error saveGameState(int slot, const Common::String &desc);
-		Common::String generateSaveName(int slot);
-		static bool readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header);
+		Common::String getSavegameFilename(int slot);
 		void writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameHeader &header);
 		void synchronize(Common::Serializer &s);
 		void refreshScreen();


Commit: 78c84c23d32b7153c88adfc26656b8b4a6f2f089
    https://github.com/scummvm/scummvm/commit/78c84c23d32b7153c88adfc26656b8b4a6f2f089
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Start renaming

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index a0ef18ac29..98347c24cf 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -25,7 +25,7 @@
 namespace Kingdom {
 
 void KingdomGame::GPLogic1() {
-	switch(_StatPlay) {
+	switch(_statPlay) {
 	case 10:
 		_NodeNum = 1;
 		InitPlay();
@@ -35,12 +35,12 @@ void KingdomGame::GPLogic1() {
 	case 11:
 		switch(_UserInput) {
 		case 0x190:
-			_StatPlay = 20;
+			_statPlay = 20;
 			_Wizard = false;
 			_ATimer = 0;
 			break;
 		case 0x191:
-			_StatPlay = 20;
+			_statPlay = 20;
 			_Wizard = true;
 			_ATimer = 0;
 			break;
@@ -81,7 +81,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -92,9 +92,9 @@ void KingdomGame::GPLogic1() {
 		_CursorDrawn = false;
 		FadeToBlack2();
 		ShowPic(106);
-		_StatPlay = 30;
+		_statPlay = 30;
 		_UserInput = 0;
-		_LoopFlag = true;
+		_loopFlag = true;
 		break;
 	case 30:
 		_NodeNum = 3;
@@ -103,8 +103,8 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(177);
 			_Nodes[3] = 9;
 			if (!_Wizard) {
-				_StatPlay = 50;
-				_LoopFlag = true;
+				_statPlay = 50;
+				_loopFlag = true;
 				break;
 			}
 		}
@@ -115,7 +115,7 @@ void KingdomGame::GPLogic1() {
 			_Sound = 0;
 		
 		PlayMovie(7);
-		_StatPlay = 31;
+		_statPlay = 31;
 		_CurrMap = 10;
 		PlaySound(24);
 		_UserInput = 0;
@@ -123,7 +123,7 @@ void KingdomGame::GPLogic1() {
 	case 31:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 32;
+			_statPlay = 32;
 			_Zoom = 2;
 			ProcessMap(3, _Zoom);
 			_UserInput = 0;
@@ -134,7 +134,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -153,7 +153,7 @@ void KingdomGame::GPLogic1() {
 		}
 		_CurrMap = 10;
 		PlaySound(14);
-		_StatPlay = 41;
+		_statPlay = 41;
 		break;
 	case 41:
 		switch(_UserInput) {
@@ -163,11 +163,11 @@ void KingdomGame::GPLogic1() {
 			InventoryDel(1);
 			_CurrMap = 10;
 			_Nodes[4] = 9;
-			_StatPlay = 41;
+			_statPlay = 41;
 			_TSIconOnly = true;
 			break;
 		case 0x43A:
-			_StatPlay = 42;
+			_statPlay = 42;
 			_Zoom = 2;
 			ProcessMap(4, _Zoom);
 			_UserInput = 0;
@@ -178,7 +178,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -203,12 +203,12 @@ void KingdomGame::GPLogic1() {
 			_Sound = 1;
 			PlayMovie(2);
 			_CurrMap = 10;
-			_StatPlay = 51;
-			_LoopFlag = true;
+			_statPlay = 51;
+			_loopFlag = true;
 		} else if (_DaelonCntr) {
 			PlayMovie(2);
 			_CurrMap = 10;
-			_StatPlay = 51;
+			_statPlay = 51;
 		} else {
 			switch(_Nodes[5]) {
 			case 0:
@@ -234,8 +234,8 @@ void KingdomGame::GPLogic1() {
 			if (_Spell1 && _Spell2 && _Spell3) {
 				PlayMovie(6);
 				_CurrMap = 7;
-				_StatPlay = 51;
-				_LoopFlag = true;
+				_statPlay = 51;
+				_loopFlag = true;
 			} else {
 				_Eye = false;
 				PlayMovie(61);
@@ -251,27 +251,27 @@ void KingdomGame::GPLogic1() {
 					DrawPic(118);
 				
 				_CurrMap = 6;
-				_StatPlay = 53;
-				_LoopFlag = true;
+				_statPlay = 53;
+				_loopFlag = true;
 			}
 		}
 		break;
 	case 51:
 		switch(_UserInput) {
 		case 0x406:
-			_StatPlay = 70;
-			_LoopFlag = true;
+			_statPlay = 70;
+			_loopFlag = true;
 			break;
 		case 0x40A:
-			_StatPlay = 110;
-			_LoopFlag = true;
+			_statPlay = 110;
+			_loopFlag = true;
 			break;
 		case 0x417:
-			_StatPlay = 30;
-			_LoopFlag = true;
+			_statPlay = 30;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 52;
+			_statPlay = 52;
 			_Zoom = 2;
 			ProcessMap(5, _Zoom);
 			_UserInput = 0;
@@ -282,7 +282,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -296,7 +296,7 @@ void KingdomGame::GPLogic1() {
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
-			_StatPlay = 51;
+			_statPlay = 51;
 			_Eye = true;
 			break;
 		case 0x42A:
@@ -304,7 +304,7 @@ void KingdomGame::GPLogic1() {
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
-			_StatPlay = 51;
+			_statPlay = 51;
 			_Eye = true;
 			break;
 		case 0x42B:
@@ -312,7 +312,7 @@ void KingdomGame::GPLogic1() {
 			_DaelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
-			_StatPlay = 51;
+			_statPlay = 51;
 			_Eye = true;
 			break;
 		case 0x43E:
@@ -337,7 +337,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -348,13 +348,13 @@ void KingdomGame::GPLogic1() {
 		if (_Nodes[4] == 0) {
 			DsAll();
 			PlayMovie(9);
-			_StatPlay = 991;
+			_statPlay = 991;
 		} else {
 			PlayMovie(64);
-			_StatPlay = 200;
+			_statPlay = 200;
 		}
 		_CurrMap = 10;
-		_LoopFlag = true;
+		_loopFlag = true;
 		break;
 	case 70:
 		_NodeNum = 7;
@@ -371,7 +371,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			_TSIconOnly = 1;
 		}
-		_StatPlay = 71;
+		_statPlay = 71;
 		break;
 	case 71:
 		switch(_UserInput) {
@@ -388,7 +388,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43A:
-			_StatPlay = 72;
+			_statPlay = 72;
 			_Zoom = 2;
 			ProcessMap(7, _Zoom);
 			_UserInput = 0;
@@ -399,7 +399,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -422,15 +422,15 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			SetATimer();
 		}
-		_StatPlay = 81;
+		_statPlay = 81;
 		break;
 	case 81:
 		switch(_UserInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(15);
-			_StatPlay = 991;
-			_LoopFlag = true;
+			_statPlay = 991;
+			_loopFlag = true;
 			break;
 		case 0x429:
 			if (!_Nodes[8]) {
@@ -480,7 +480,7 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 82;
+			_statPlay = 82;
 			_Zoom = 2;
 			ProcessMap(8, _Zoom);
 			_UserInput = 0;
@@ -492,17 +492,17 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x453:
 			if (_Nodes[8] == 1) {
-				_StatPlay = 80;
-				_LoopFlag = true;
+				_statPlay = 80;
+				_loopFlag = true;
 			} else {
-				_StatPlay = 160;
-				_LoopFlag = true;
+				_statPlay = 160;
+				_loopFlag = true;
 				_UserInput = 0;
 			}
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -511,8 +511,8 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 90:
 		if (_NodeNum == 18 && _Nodes[17] == 0) {
-			_StatPlay = 170;
-			_LoopFlag = true;
+			_statPlay = 170;
+			_loopFlag = true;
 			_NextNode = 90;
 		} else {
 			_NodeNum = 9;
@@ -535,13 +535,13 @@ void KingdomGame::GPLogic1() {
 				ShowPic(319);
 
 			_CurrMap = 10;
-			_StatPlay = 91;
+			_statPlay = 91;
 		}
 		break;
 	case 91:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 92;
+			_statPlay = 92;
 			_Zoom = 2;
 			ProcessMap(9, _Zoom);
 			_UserInput = 0;
@@ -559,7 +559,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -568,8 +568,8 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 100:
 		if (_NodeNum == 18 && _Nodes[17] == 0) {
-			_StatPlay = 170;
-			_LoopFlag = true;
+			_statPlay = 170;
+			_loopFlag = true;
 			_NextNode = 100;
 		} else {
 			_NodeNum = 10;
@@ -587,13 +587,13 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(20);
 			PlaySound(41);
 			_CurrMap = 10;
-			_StatPlay = 101;
+			_statPlay = 101;
 		}
 		break;
 	case 101:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 102;
+			_statPlay = 102;
 			_Zoom = 2;
 			ProcessMap(10, _Zoom);
 			_UserInput = 0;
@@ -618,12 +618,12 @@ void KingdomGame::GPLogic1() {
 		PlayMovie(21);
 		PlaySound(42);
 		_CurrMap = 10;
-		_StatPlay = 111;
+		_statPlay = 111;
 		break;
 	case 111:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 112;
+			_statPlay = 112;
 			_Zoom = 1;
 			ProcessMap(11, _Zoom);
 			_UserInput = 0;
@@ -633,7 +633,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -653,19 +653,19 @@ void KingdomGame::GPLogic1() {
 		}
 		_Eye = false;
 		PlaySound(3);
-		_StatPlay = 121;
+		_statPlay = 121;
 		break;
 	case 121:
 		switch (_UserInput) {
 		case 0x445:
-			_StatPlay = 150;
-			_LoopFlag = true;
+			_statPlay = 150;
+			_loopFlag = true;
 			_Eye = true;
 			_UserInput = 0;
 			break;
 		case 0x446:
-			_StatPlay = 80;
-			_LoopFlag = true;
+			_statPlay = 80;
+			_loopFlag = true;
 			_Eye = true;
 			_UserInput = 0;
 			break;
@@ -687,7 +687,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -697,8 +697,8 @@ void KingdomGame::GPLogic1() {
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(4);
-		_StatPlay = 991;
-		_LoopFlag = true;
+		_statPlay = 991;
+		_loopFlag = true;
 		break;
 	case 140:
 		_NodeNum = 14;
@@ -708,19 +708,19 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(26);
 			PlaySound(35);
 			_CurrMap = 10;
-			_StatPlay = 141;
+			_statPlay = 141;
 		} else {
 			DsAll();
 			PlayMovie(27);
-			_StatPlay = 991;
-			_LoopFlag = true;
+			_statPlay = 991;
+			_loopFlag = true;
 			_UserInput = 0;
 		}
 		break;
 	case 141:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 142;
+			_statPlay = 142;
 			_Zoom = 2;
 			ProcessMap(14, _Zoom);
 			_UserInput = 0;
@@ -731,7 +731,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -744,7 +744,7 @@ void KingdomGame::GPLogic1() {
 		PlayMovie(28);
 		PlaySound(3);
 		_CurrMap = 16;
-		_StatPlay = 151;
+		_statPlay = 151;
 		_Eye = false;
 		break;
 	case 151:
@@ -755,14 +755,14 @@ void KingdomGame::GPLogic1() {
 			_ATimer = 0;
 			break;
 		case 0x445:
-			_StatPlay = 80;
+			_statPlay = 80;
 			EnAll();
-			_LoopFlag = true;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -773,7 +773,7 @@ void KingdomGame::GPLogic1() {
 		PlayMovie(29);
 		PlaySound(3);
 		_CurrMap = 85;
-		_StatPlay = 161;
+		_statPlay = 161;
 		break;
 	case 161:
 		switch(_UserInput) {
@@ -821,11 +821,11 @@ void KingdomGame::GPLogic1() {
 		case 0x42E:
 			_Nodes[15] = 1;
 			_Nodes[16] = 1;
-			_StatPlay = 120;
-			_LoopFlag = true;
+			_statPlay = 120;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 162;
+			_statPlay = 162;
 			_Zoom = 2;
 			ProcessMap(16, _Zoom);
 			_UserInput = 0;
@@ -849,13 +849,13 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x445:
 			if (_Nodes[16] || !_Wizard) {
-				_StatPlay = 120;
-				_LoopFlag = true;
+				_statPlay = 120;
+				_loopFlag = true;
 			}
 			break;
 		case 0x446:
-			_StatPlay = 80;
-			_LoopFlag = true;
+			_statPlay = 80;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x450:
@@ -876,7 +876,7 @@ void KingdomGame::GPLogic1() {
 			break;	
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -885,15 +885,15 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 170:
 		if (_Nodes[17] == 9) {
-			_StatPlay = _NextNode;
-			_LoopFlag = true;
+			_statPlay = _NextNode;
+			_loopFlag = true;
 		} else {
 			_NodeNum = 17;
 			DrawLocation();
 			DsAll();
 			PlayMovie(30);
 			_CurrMap = 10;
-			_StatPlay = 171;
+			_statPlay = 171;
 			SetATimer();
 			_UserInput = 0;
 		}
@@ -906,13 +906,13 @@ void KingdomGame::GPLogic1() {
 				_ATimer = 0;
 				_Replay = false;
 				PlayMovie(31);
-				_StatPlay = _NextNode;
-				_LoopFlag = true;
+				_statPlay = _NextNode;
+				_loopFlag = true;
 			} else {
 				DsAll();
 				PlayMovie(32);
-				_StatPlay = 991;
-				_LoopFlag = true;
+				_statPlay = 991;
+				_loopFlag = true;
 			}
 			break;
 		case 0x42C:
@@ -922,19 +922,19 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(34);
 			_UserInput = 0;
 			_Nodes[17] = 9;
-			_StatPlay = _NextNode;
-			_LoopFlag = true;
+			_statPlay = _NextNode;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
 	case 172:
 		if (_UserInput == 0x2F1) {
-			_StatPlay = 171;
-			_LoopFlag= true;
+			_statPlay = 171;
+			_loopFlag= true;
 			SwitchAS();
 		} else
 			ProcessMapInput(_NodeNum);
@@ -955,18 +955,18 @@ void KingdomGame::GPLogic1() {
 				_TSIconOnly = 1;
 			}
 			PlaySound(16);
-			_StatPlay = 181;
+			_statPlay = 181;
 		} else {
-			_StatPlay = 170;
-			_LoopFlag = true;
+			_statPlay = 170;
+			_loopFlag = true;
 			_NextNode = 180;
 		}
 		break;
 	case 181:
 		switch(_UserInput) {
 		case 0x407:
-			_StatPlay = 80;
-			_LoopFlag = true;
+			_statPlay = 80;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x428:
@@ -1012,7 +1012,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43A:
-			_StatPlay = 182;
+			_statPlay = 182;
 			_Zoom = 2;
 			if (_Nodes[18] == 9)
 				ProcessMap(80, _Zoom);
@@ -1033,7 +1033,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1046,8 +1046,8 @@ void KingdomGame::GPLogic1() {
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(38);
-		_StatPlay = 991;
-		_LoopFlag = true;
+		_statPlay = 991;
+		_loopFlag = true;
 		break;
 	case 200:
 		_NodeNum = 20;
@@ -1063,12 +1063,12 @@ void KingdomGame::GPLogic1() {
 		}
 		PlaySound(42);
 		_CurrMap = 10;
-		_StatPlay = 201;
+		_statPlay = 201;
 		break;
 	case 201:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 202;
+			_statPlay = 202;
 			_Zoom = 0;
 			ProcessMap(20, _Zoom);
 			_UserInput = 0;
@@ -1101,15 +1101,15 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			SetATimer();
 		}
-		_StatPlay = 211;
+		_statPlay = 211;
 		break;
 	case 211:
 		switch(_UserInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(46);
-			_StatPlay = 991;
-			_LoopFlag = true;
+			_statPlay = 991;
+			_loopFlag = true;
 			break;
 		case 0x428:
 			InventoryDel(0);
@@ -1122,8 +1122,8 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(178);
 				DsAll();
 				PlayMovie(46);
-				_StatPlay = 991;
-				_LoopFlag = true;
+				_statPlay = 991;
+				_loopFlag = true;
 			}
 			break;
 		case 0x42A:
@@ -1152,7 +1152,7 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 212;
+			_statPlay = 212;
 			_Zoom = 2;
 			ProcessMap(21, _Zoom);
 			_UserInput = 0;
@@ -1169,8 +1169,8 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x441:
-			_StatPlay = 220;
-			_LoopFlag = true;
+			_statPlay = 220;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x442:
@@ -1184,13 +1184,13 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x448:
-			_StatPlay = 140;
-			_LoopFlag = true;
+			_statPlay = 140;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1198,8 +1198,8 @@ void KingdomGame::GPLogic1() {
 		if (_UserInput == 0x2F1) {
 			_UserInput = 0;
 			_ATimer = 0;
-			_StatPlay = 211;
-			_LoopFlag = true;
+			_statPlay = 211;
+			_loopFlag = true;
 			SwitchAS();
 		}
 		ProcessMapInput(21);
@@ -1217,7 +1217,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 		}
 		PlaySound(38);
-		_StatPlay = 221;
+		_statPlay = 221;
 		break;
 	case 221:
 		switch(_UserInput) {
@@ -1251,15 +1251,15 @@ void KingdomGame::GPLogic1() {
 				DsAll();
 				PlayMovie(43);
 				PlaySound(34);
-				_StatPlay = 991;
-				_LoopFlag = true;
+				_statPlay = 991;
+				_loopFlag = true;
 			} else {
 				PlayMovie(42);
 				PlaySound(30);
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 222;
+			_statPlay = 222;
 			_Zoom = 2;
 			ProcessMap(22, _Zoom);
 			_UserInput = 0;
@@ -1270,7 +1270,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1283,8 +1283,8 @@ void KingdomGame::GPLogic1() {
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(50);
-		_StatPlay = 991;
-		_LoopFlag = true;
+		_statPlay = 991;
+		_loopFlag = true;
 		break;
 	case 240:
 		_NodeNum = 24;
@@ -1300,7 +1300,7 @@ void KingdomGame::GPLogic1() {
 			_TSIconOnly = 1;
 		}
 		PlaySound(4);
-		_StatPlay = 241;
+		_statPlay = 241;
 		break;
 	case 241:
 		switch(_UserInput) {
@@ -1338,7 +1338,7 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 242;
+			_statPlay = 242;
 			_Zoom = 2;
 			ProcessMap(24, _Zoom);
 			_UserInput = 0;
@@ -1354,12 +1354,12 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x441:
 			_CurrMap = 10;
-			_StatPlay = 300;
-			_LoopFlag = true;
+			_statPlay = 300;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		_UserInput = 0;
@@ -1380,7 +1380,7 @@ void KingdomGame::GPLogic1_SubSP10() {
 	_CurrMap = 4;
 	_UserInput = 0;
 	_ATimer = 595;
-	_StatPlay = 11;
+	_statPlay = 11;
 }
 
 void KingdomGame::GPLogic1_SubSP121() {
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index f4a077023f..3c91d37412 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -25,7 +25,7 @@
 namespace Kingdom {
 
 void KingdomGame::GPLogic2() {
-	switch(_StatPlay) {
+	switch(_statPlay) {
 	case 250: {
 		bool highNode = (_NodeNum > 25);
 		_NodeNum = 25;
@@ -40,15 +40,15 @@ void KingdomGame::GPLogic2() {
 			PlaySound(34);
 			_UserInput = 0;
 			_CurrMap = 10;
-			_StatPlay = 251;
+			_statPlay = 251;
 		} else {
 			_FrameStop = 67;
 			PlayMovie(72);
 			DsAll();
 			PlayMovie(73);
 			DsAll();
-			_StatPlay = 991;
-			_LoopFlag = true;
+			_statPlay = 991;
+			_loopFlag = true;
 		}
 		}
 		break;
@@ -58,11 +58,11 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			PlayMovie(73);
 			DsAll();
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 252;
+			_statPlay = 252;
 			_Zoom = 2;
 			ProcessMap(30, _Zoom);
 			SetATimer();
@@ -80,7 +80,7 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(74);
 		_CurrMap = 10;
 		SetATimer();
-		_StatPlay = 261;
+		_statPlay = 261;
 		_UserInput = 0;
 		break;
 	case 261:
@@ -89,8 +89,8 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(75);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x428:
 			InventoryDel(0);
@@ -116,10 +116,10 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(76);
 			_Nodes[26] = 1;
 			_UserInput = 0;
-			_StatPlay = 290;
+			_statPlay = 290;
 			_LastObs = 1;
 			_LastObstacle = 29;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x42D:
 			if (Wound()) {
@@ -128,13 +128,13 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(77);
 				PlaySound(34);
 				InventoryDel(5);
-				_StatPlay = 300;
-				_LoopFlag = true;
+				_statPlay = 300;
+				_loopFlag = true;
 			} else {
 				DsAll();
 				PlayMovie(78);
-				_StatPlay = 992;
-				_LoopFlag = true;
+				_statPlay = 992;
+				_loopFlag = true;
 			}
 			break;
 		}
@@ -154,14 +154,14 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(80);
 		PlaySound(18);
 		_CurrMap = 10;
-		_StatPlay = 271;
+		_statPlay = 271;
 		_Nodes[28] = 1;
 		_UserInput = 0;
 		break;
 	case 271:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 272;
+			_statPlay = 272;
 			_Zoom = 2;
 			ProcessMap(27, _Zoom);
 			_UserInput = 0;
@@ -184,9 +184,9 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(81);
 		_CurrMap = 10;
 		_Nodes[29] = _Nodes[39] = 1;
-		_StatPlay = _RobberyNode * 10;
+		_statPlay = _RobberyNode * 10;
 		EnAll();
-		_LoopFlag = true;
+		_loopFlag = true;
 		break;
 	case 290:
 		_OldNode = _NodeNum;
@@ -195,8 +195,8 @@ void KingdomGame::GPLogic2() {
 			_Nodes[30] = 8;
 		}
 		if (_Nodes[26] == 0) {
-			_StatPlay = 260;
-			_LoopFlag = true;
+			_statPlay = 260;
+			_loopFlag = true;
 			_NextNode = 29;
 		} else {
 			if (_Nodes[26] == 2)
@@ -234,7 +234,7 @@ void KingdomGame::GPLogic2() {
 					break;
 				}
 				PlaySound(17);
-				_StatPlay = 291;
+				_statPlay = 291;
 			}
 		}
 			
@@ -256,12 +256,12 @@ void KingdomGame::GPLogic2() {
 			else {
 				DsAll();
 				PlayMovie(84);
-				_StatPlay = 992;
-				_LoopFlag = true;
+				_statPlay = 992;
+				_loopFlag = true;
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 292;
+			_statPlay = 292;
 			_Zoom = 2;
 			ProcessMap(29, _Zoom);
 			_UserInput = 0;
@@ -277,8 +277,8 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 300:
 		if (_Nodes[24] == 0) {
-			_LoopFlag = true;
-			_StatPlay = 250;
+			_loopFlag = true;
+			_statPlay = 250;
 		} else {
 			_NodeNum = 30;
 			if (!ChkDesertObstacles()) {
@@ -286,14 +286,14 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(86);
 				PlaySound(18);
 				_CurrMap = 10;
-				_StatPlay = 301;
+				_statPlay = 301;
 			}
 		}
 		break;
 	case 301:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 302;
+			_statPlay = 302;
 			_Zoom = 2;
 			ProcessMap(30, _Zoom);
 			_UserInput = 0;
@@ -315,7 +315,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(67);
 			PlaySound(18);
 			_CurrMap = 90;
-			_StatPlay = 311;
+			_statPlay = 311;
 			_Nodes[32] = 1;
 			_ATimer = 0;
 			_UserInput = 0;
@@ -324,7 +324,7 @@ void KingdomGame::GPLogic2() {
 	case 311:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 312;
+			_statPlay = 312;
 			_Zoom = 2;
 			ProcessMap(31, _Zoom);
 			_UserInput = 0;
@@ -337,8 +337,8 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(68);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;			
 		}
 		break;
@@ -361,12 +361,12 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(87);
 		PlaySound(18);
 		_CurrMap = 10;
-		_StatPlay = 321;
+		_statPlay = 321;
 		break;
 	case 321:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 322;
+			_statPlay = 322;
 			_Zoom = 2;
 			ProcessMap(32, _Zoom);
 			_UserInput = 0;
@@ -393,13 +393,13 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(88);
 			PlaySound(18);
 			_CurrMap = 10;
-			_StatPlay = 331;
+			_statPlay = 331;
 		}
 		break;
 	case 331:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 332;
+			_statPlay = 332;
 			_Zoom = 2;
 			ProcessMap(33, _Zoom);
 			_UserInput = 0;
@@ -415,8 +415,8 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 340:
 		if (_Nodes[36] == 0) {
-			_StatPlay = 350;
-			_LoopFlag = true;
+			_statPlay = 350;
+			_loopFlag = true;
 			_NextNode = 34;
 		} else {
 			_OldNode = _NodeNum;
@@ -435,7 +435,7 @@ void KingdomGame::GPLogic2() {
 				if (_Nodes[35] == 9)
 					_TSIconOnly = 1;
 				PlaySound(26);
-				_StatPlay = 341;
+				_statPlay = 341;
 			}
 		}
 		break;
@@ -452,7 +452,7 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 342;
+			_statPlay = 342;
 			_Zoom = 2;
 			ProcessMap(34, _Zoom);
 			_UserInput = 0;
@@ -464,16 +464,16 @@ void KingdomGame::GPLogic2() {
 				ShowPic(389);
 			break;
 		case 0x445:
-			_StatPlay = 410;
+			_statPlay = 410;
 			_UserInput = 0;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x446:
-			_StatPlay = 400;
+			_statPlay = 400;
 			_UserInput = 0;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -484,8 +484,8 @@ void KingdomGame::GPLogic2() {
 		if (_Wizard == 0)
 			_Nodes[36] = 1;
 		if (_Nodes[36] == 1) {
-			_StatPlay = _NextNode * 10;
-			_LoopFlag = true;
+			_statPlay = _NextNode * 10;
+			_loopFlag = true;
 		} else {
 			_NodeNum = 35;
 			DrawLocation();
@@ -494,7 +494,7 @@ void KingdomGame::GPLogic2() {
 			_CurrMap = 94;
 			SetATimer();
 			_UserInput = 0;
-			_StatPlay = 351;
+			_statPlay = 351;
 		}
 		break;
 	case 351:
@@ -505,14 +505,14 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			PlayMovie(178);
 			_UserInput = 0x2F1;
-			_LoopFlag = true;
+			_loopFlag = true;
 		// No break on purpose
 		case 0x2F1:
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(93);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x42A:
 			_ATimer = 0;
@@ -521,10 +521,10 @@ void KingdomGame::GPLogic2() {
 			InventoryDel(2);
 			_Nodes[36] = 1;
 			_UserInput = 0;
-			_StatPlay = _NextNode * 10;
+			_statPlay = _NextNode * 10;
 			_LastObs = 1;
 			_LastObstacle = _NextNode;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -541,7 +541,7 @@ void KingdomGame::GPLogic2() {
 		_CurrMap = 95;
 		SetATimer();
 		_UserInput = 0;
-		_StatPlay = 361;
+		_statPlay = 361;
 		break;
 	case 361:
 		switch(_UserInput) {
@@ -549,8 +549,8 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(95);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x428:
 			_ATimer = 0;
@@ -562,7 +562,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			_CurrMap = 10;
 			if (_Nodes[43] == 0) {
-				_StatPlay = 420;
+				_statPlay = 420;
 				_OldNode = _NodeNum;
 				_NodeNum = 42;
 				GPLogic2_SubSP361();
@@ -600,7 +600,7 @@ void KingdomGame::GPLogic2() {
 			_Nodes[37] = 9;
 			_UserInput = 0;
 			_CurrMap = 10;
-			_StatPlay = 420;
+			_statPlay = 420;
 			_OldNode = _NodeNum;
 			_NodeNum = 42;
 			GPLogic2_SubSP361();
@@ -609,11 +609,11 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(99);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 362;
+			_statPlay = 362;
 			_Zoom = 2;
 			ProcessMap(36, _Zoom);
 			_UserInput = 0;
@@ -635,17 +635,17 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(102);
 		PlaySound(20);
 		_CurrMap = 109;
-		_StatPlay = 371;
+		_statPlay = 371;
 		break;
 	case 371:
 		switch(_UserInput) {
 		case 0x413:
-			_StatPlay = 440;
+			_statPlay = 440;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 372;
+			_statPlay = 372;
 			_Zoom = 2;
 			ProcessMap(37, _Zoom);
 			_UserInput = 0;
@@ -669,7 +669,7 @@ void KingdomGame::GPLogic2() {
 			_CurrMap = 10;
 			PlaySound(7);
 			_Nodes[39] = 1;
-			_StatPlay = 381;
+			_statPlay = 381;
 		}
 		break;
 	case 381:
@@ -689,8 +689,8 @@ void KingdomGame::GPLogic2() {
 			if (_Wizard && _Nodes[39] != 9) {
 				DsAll();
 				PlayMovie(162);
-				_StatPlay = 992;
-				_LoopFlag = true;
+				_statPlay = 992;
+				_loopFlag = true;
 			}
 			break;
 		case 0x433:
@@ -722,7 +722,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43A:
-			_StatPlay = 382;
+			_statPlay = 382;
 			_Zoom = 2;
 			ProcessMap(38, _Zoom);
 			_UserInput = 0;
@@ -732,9 +732,9 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x456:
-			_StatPlay = 370;
+			_statPlay = 370;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -751,8 +751,8 @@ void KingdomGame::GPLogic2() {
 		DsAll();
 		PlayMovie(104);
 		PlaySound(34);
-		_StatPlay = 992;
-		_LoopFlag = true;
+		_statPlay = 992;
+		_loopFlag = true;
 		break;
 	case 400:
 		_NodeNum = 40;
@@ -773,7 +773,7 @@ void KingdomGame::GPLogic2() {
 		}
 		
 		_UserInput = 0;
-		_StatPlay = 401;
+		_statPlay = 401;
 		break;
 	case 401:
 		switch(_UserInput) {
@@ -781,8 +781,8 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(106);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
@@ -792,7 +792,7 @@ void KingdomGame::GPLogic2() {
 				_ATimer = 0;
 				PlayMovie(178);
 				_UserInput = 753;
-				_LoopFlag = true;
+				_loopFlag = true;
 				_CurrMap = 10;
 			}
 			break;
@@ -802,8 +802,8 @@ void KingdomGame::GPLogic2() {
 				DsAll();
 				PlayMovie(108);
 				_UserInput = 0;
-				_StatPlay = 992;
-				_LoopFlag = true;
+				_statPlay = 992;
+				_loopFlag = true;
 			}
 			break;
 		case 0x42E:
@@ -829,7 +829,7 @@ void KingdomGame::GPLogic2() {
 				_UserInput = 0;
 				_CurrMap = 96;
 				_TSIconOnly = 1;
-				_LoopFlag = true;
+				_loopFlag = true;
 			}
 			break;
 		case 0x43E:
@@ -838,10 +838,10 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
-			_StatPlay = 460;
+			_statPlay = 460;
 			_CurrMap = 10;
 			_UserInput = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -860,7 +860,7 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(111);
 		PlaySound(26);
 		_CurrMap = 97;
-		_StatPlay = 411;
+		_statPlay = 411;
 		break;
 	case 411:
 		switch(_UserInput) {
@@ -882,15 +882,15 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x445:
 			_UserInput = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_CurrMap = 10;
-			_StatPlay = 450;
+			_statPlay = 450;
 			break;
 		case 0x446:
 			_UserInput = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_CurrMap = 10;
-			_StatPlay = 460;
+			_statPlay = 460;
 			break;
 		}
 		break;
@@ -903,8 +903,8 @@ void KingdomGame::GPLogic2() {
 				GPLogic2_SubSP361();
 			}
 		} else {
-			_StatPlay = 360;
-			_LoopFlag = true;
+			_statPlay = 360;
+			_loopFlag = true;
 		}
 		break;
 	case 421:
@@ -935,7 +935,7 @@ void KingdomGame::GPLogic2() {
 			_TSIconOnly = 1;
 			break;
 		case 0x43A:
-			_StatPlay = 422;
+			_statPlay = 422;
 			_Zoom = 2;
 			ProcessMap(42, _Zoom);
 			_UserInput = 0;
@@ -975,7 +975,7 @@ void KingdomGame::GPLogic2() {
 			_CurrMap = 79;
 			_TSIconOnly = 1;
 		}
-		_StatPlay = 431;
+		_statPlay = 431;
 		PlaySound(20);
 		_Eye = false;
 		break;
@@ -983,29 +983,29 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 			case 0x40A:
 				PlayMovie(10);
-				_StatPlay = 200;
+				_statPlay = 200;
 				if (_Nodes[44] != 9)
 					_Nodes[20] = 1;
 				_CurrMap = 10;
-				_LoopFlag = true;
+				_loopFlag = true;
 				break;
 			case 0x414:
 				PlayMovie(10);
-				_StatPlay = 390;
+				_statPlay = 390;
 				_CurrMap = 10;
-				_LoopFlag = true;
+				_loopFlag = true;
 				break;
 			case 0x41D:
 				PlayMovie(10);
-				_StatPlay = 500;
+				_statPlay = 500;
 				_CurrMap = 10;
-				_LoopFlag = true;
+				_loopFlag = true;
 				break;
 			case 0x422:
 				PlayMovie(10);
-				_StatPlay = 380;
+				_statPlay = 380;
 				_CurrMap = 10;
-				_LoopFlag = true;
+				_loopFlag = true;
 				break;
 			case 0x428:
 			case 0x429:
@@ -1023,8 +1023,8 @@ void KingdomGame::GPLogic2() {
 				} else {
 					DsAll();
 					PlayMovie(117);
-					_StatPlay = 992;
-					_LoopFlag = true;
+					_statPlay = 992;
+					_loopFlag = true;
 				}
 				break;
 			case 0x43E:
@@ -1041,12 +1041,12 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(119);
 		PlaySound(20);
 		_CurrMap = 100;
-		_StatPlay = 441;
+		_statPlay = 441;
 		break;
 	case 441:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 442;
+			_statPlay = 442;
 			_Zoom = 2;
 			ProcessMap(44, _Zoom);
 			_UserInput = 0;
@@ -1056,9 +1056,9 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x452:
-			_StatPlay = 430;
+			_statPlay = 430;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -1071,15 +1071,15 @@ void KingdomGame::GPLogic2() {
 		if (!_Nodes[41]) {
 			DsAll();
 			PlayMovie(120);
-			_StatPlay = 992;
+			_statPlay = 992;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 		} else {
 			_FstFwd = 0;
 			_FrameStop = 50;
 			PlayMovie(120);
 			_CurrMap = 17;
-			_StatPlay = 451;
+			_statPlay = 451;
 		}
 		break;
 	case 451:
@@ -1093,9 +1093,9 @@ void KingdomGame::GPLogic2() {
 			PlaySound(26);
 			break;
 		case 0x441:
-			_StatPlay = 410;
+			_statPlay = 410;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -1113,7 +1113,7 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(121);
 		PlaySound(26);
 		_CurrMap = 107;
-		_StatPlay = 461;
+		_statPlay = 461;
 		break;
 	case 461:
 		switch(_UserInput) {
@@ -1122,16 +1122,16 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
-			_StatPlay = 340;
+			_statPlay = 340;
 			_UserInput = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_CurrMap = 10;
 			_LastObs = 1;
 			break;
 		case 0x446:
-			_StatPlay = 400;
+			_statPlay = 400;
 			_UserInput = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_CurrMap = 10;
 			break;
 		}
@@ -1144,13 +1144,13 @@ void KingdomGame::GPLogic2() {
 		_UserInput = 0;
 		PlayMovie(114);
 		_CurrMap = 10;
-		_StatPlay = 481;
+		_statPlay = 481;
 		_Nodes[49] = 1;
 		break;
 	case 481:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 482;
+			_statPlay = 482;
 			_Zoom = 2;
 			ProcessMap(48, _Zoom);
 			_UserInput = 0;
@@ -1171,7 +1171,7 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(180);
 		PlaySound(18);
 		_CurrMap = 101;
-		_StatPlay = 491;
+		_statPlay = 491;
 		_ATimer = 0;
 		_UserInput = 0;
 		break;
@@ -1184,13 +1184,13 @@ void KingdomGame::GPLogic2() {
 			_ATimer = 0;
 			PlayMovie(178);
 			_UserInput = 753;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_CurrMap = 10;
 			break;
 		case 0x442:
 			PlayMovie(182);
-			_StatPlay = 992;
-			_LoopFlag = true;
+			_statPlay = 992;
+			_loopFlag = true;
 			break;
 		case 0x44A:
 			_CurrMap = 10;
@@ -1200,8 +1200,8 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(181);
 			_Nodes[29] = 9;
 			_Nodes[49] = 0;
-			_StatPlay = _NextNode * 10;
-			_LoopFlag = true;
+			_statPlay = _NextNode * 10;
+			_loopFlag = true;
 			break;
 		}
 		break;
@@ -1213,8 +1213,8 @@ void KingdomGame::GPLogic2_SubSP361() {
 	_UserInput = 0;
 	PlaySound(19);
 	if (_Nodes[29] == 1) {
-		_StatPlay = 480;
-		_LoopFlag = true;
+		_statPlay = 480;
+		_loopFlag = true;
 		_CurrMap = 10;
 	} else {
 		if (_Inventory[6] == 1 || _Wizard == 0) {
@@ -1227,11 +1227,11 @@ void KingdomGame::GPLogic2_SubSP361() {
 			PlayMovie(122);
 			_CurrMap = 10;
 			_TSIconOnly = 1;
-			_StatPlay = 421;
+			_statPlay = 421;
 		} else {
 			PlayMovie(112);
 			_CurrMap = 98;
-			_StatPlay = 421;
+			_statPlay = 421;
 		}
 	}
 }
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 62dd24a8b6..6d428ecc50 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -25,7 +25,7 @@
 namespace Kingdom {
 
 void KingdomGame::GPLogic3() {
-	switch(_StatPlay) {
+	switch(_statPlay) {
 	case 500:
 		_NodeNum = 50;
 		DrawLocation();
@@ -53,7 +53,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		PlaySound(29);
-		_StatPlay = 501;
+		_statPlay = 501;
 		break;
 	case 501:
 		switch(_UserInput) {
@@ -72,8 +72,8 @@ void KingdomGame::GPLogic3() {
 			if (!_Nodes[51]) {
 				DsAll();
 				PlayMovie(125);
-				_StatPlay = 993;
-				_LoopFlag = true;
+				_statPlay = 993;
+				_loopFlag = true;
 			} else
 				DisplayIcon(141);
 
@@ -88,7 +88,7 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 502;
+			_statPlay = 502;
 			_Zoom = 2;
 			ProcessMap(50, _Zoom);
 			_UserInput = 0;
@@ -99,7 +99,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -113,7 +113,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(129);
 		_CurrMap = 10;
 		PlaySound(6);
-		_StatPlay = 511;
+		_statPlay = 511;
 		break;
 	case 511:
 		switch(_UserInput) {
@@ -130,7 +130,7 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 512;
+			_statPlay = 512;
 			_Zoom = 2;
 			ProcessMap(51, _Zoom);
 			_UserInput = 0;
@@ -149,7 +149,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -168,17 +168,17 @@ void KingdomGame::GPLogic3() {
 		}
 		PlayMovie(130);
 		_CurrMap = 111;
-		_StatPlay = 521;
+		_statPlay = 521;
 		PlaySound(31);
 		break;
 	case 521:
 		switch(_UserInput) {
 		case 0x404:
-			_StatPlay = 550;
-			_LoopFlag = true;
+			_statPlay = 550;
+			_loopFlag = true;
 			break;
 		case 0x43A:
-			_StatPlay = 522;
+			_statPlay = 522;
 			_Zoom = 2;
 			ProcessMap(52, _Zoom);
 			_UserInput = 0;
@@ -189,7 +189,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -211,7 +211,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(70);
 		_CurrMap = 99;
 		PlaySound(8);
-		_StatPlay = 531;
+		_statPlay = 531;
 		break;
 	case 531:
 		switch(_UserInput) {
@@ -251,16 +251,16 @@ void KingdomGame::GPLogic3() {
 			_Nodes[57] = 1;
 			PlaySound(8);
 			_TSIconOnly = true;
-			_StatPlay = 561;
+			_statPlay = 561;
 			break;
 		case 0x452:
-			_StatPlay = 630;
-			_LoopFlag = true;
+			_statPlay = 630;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -283,18 +283,18 @@ void KingdomGame::GPLogic3() {
 
 		PlayMovie(132);
 		ShowPic(432);
-		_StatPlay = 541;
+		_statPlay = 541;
 		PlaySound(22);
 		break;
 	case 541:
 		switch(_UserInput) {
 		case 0x404:
-			_StatPlay = 550;
-			_LoopFlag = true;
+			_statPlay = 550;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x43A:
-			_StatPlay = 542;
+			_statPlay = 542;
 			_Zoom = 2;
 			ProcessMap(54, _Zoom);
 			_UserInput = 0;
@@ -315,7 +315,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -331,7 +331,7 @@ void KingdomGame::GPLogic3() {
 			_Nodes[56] = 0;
 		_TSIconOnly = true;
 		_CurrMap = 104;
-		_StatPlay = 551;
+		_statPlay = 551;
 		PlaySound(8);
 		break;
 	case 551:
@@ -340,8 +340,8 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(134);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x42C:
 			_ATimer = 0;
@@ -358,10 +358,10 @@ void KingdomGame::GPLogic3() {
 			if (_Nodes[56] == 1) {
 				DsAll();
 				PlayMovie(134);
-				_StatPlay = 993;
-				_LoopFlag = true;
+				_statPlay = 993;
+				_loopFlag = true;
 			} else {
-				_StatPlay = 552;
+				_statPlay = 552;
 				_Zoom = 2;
 				ProcessMap(55, _Zoom);
 				_UserInput = 0;
@@ -386,27 +386,27 @@ void KingdomGame::GPLogic3() {
 			case 1:
 				DsAll();
 				PlayMovie(134);
-				_StatPlay = 993;
-				_LoopFlag = true;
+				_statPlay = 993;
+				_loopFlag = true;
 				break;
 			case 9:
-				_StatPlay = 560;
-				_LoopFlag = true;
+				_statPlay = 560;
+				_loopFlag = true;
 				break;
 			}
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
 	case 552:
 		ProcessMapInput(55);
-		if (!_Nodes[56] && _StatPlay == 560) {
-			_StatPlay = 551;
+		if (!_Nodes[56] && _statPlay == 560) {
+			_statPlay = 551;
 			_UserInput = 0x190;
-			_LoopFlag = true;
+			_loopFlag = true;
 		}
 		break;
 	case 560:
@@ -420,7 +420,7 @@ void KingdomGame::GPLogic3() {
 			ShowPic(435);
 			_Nodes[57] = 1;
 			PlaySound(8);
-			_StatPlay = 561;
+			_statPlay = 561;
 			_CurrMap = 106;
 			_TSIconOnly = true;
 		} else {
@@ -429,7 +429,7 @@ void KingdomGame::GPLogic3() {
 			_CurrMap = 10;
 			SetATimer();
 			_Nodes[57] = 0;
-			_StatPlay = 561;
+			_statPlay = 561;
 		}
 		break;
 	case 561:
@@ -438,8 +438,8 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			DsAll();
 			PlayMovie(136);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
@@ -451,7 +451,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(178);
 				RestoreAS();
 				_UserInput = 753;
-				_LoopFlag = true;
+				_loopFlag = true;
 			}
 			break;
 		case 0x42C:
@@ -484,7 +484,7 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x43A:
-			_StatPlay = 562;
+			_statPlay = 562;
 			_Zoom = 2;
 			ProcessMap(56, _Zoom);
 			_UserInput = 0;
@@ -499,27 +499,27 @@ void KingdomGame::GPLogic3() {
 			else {
 				_UserInput = 753;
 				_ATimer = 0;
-				_LoopFlag = true;
+				_loopFlag = true;
 			}
 			break;
 		case 0x445:
-			_StatPlay = 530;
-			_LoopFlag = true;
+			_statPlay = 530;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x446:
-			_StatPlay = 620;
-			_LoopFlag = true;
+			_statPlay = 620;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		case 0x452:
-			_StatPlay = 550;
-			_LoopFlag = true;
+			_statPlay = 550;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -537,16 +537,16 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(139);
 			PlaySound(27);
 			_CurrMap = 10;
-			_StatPlay = 571;
+			_statPlay = 571;
 		} else {
-			_StatPlay = 740;
-			_LoopFlag = true;
+			_statPlay = 740;
+			_loopFlag = true;
 		}
 		break;
 	case 571:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 572;
+			_statPlay = 572;
 			_Zoom = 2;
 			ProcessMap(57, _Zoom);
 			_UserInput = 0;
@@ -557,7 +557,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -595,7 +595,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		PlaySound(27);
-		_StatPlay = 581;
+		_statPlay = 581;
 		break;
 	case 581:
 		switch(_UserInput) {
@@ -624,11 +624,11 @@ void KingdomGame::GPLogic3() {
 			else {
 				DsAll();
 				PlayMovie(142);
-				_StatPlay = 993;
-				_LoopFlag = true;
+				_statPlay = 993;
+				_loopFlag = true;
 			}
 		case 0x43A:
-			_StatPlay = 582;
+			_statPlay = 582;
 			_Zoom = 2;
 			ProcessMap(58, _Zoom);
 			_UserInput = 0;
@@ -639,7 +639,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -660,12 +660,12 @@ void KingdomGame::GPLogic3() {
 		ShowPic(144);
 		_CurrMap = 114;
 		PlaySound(21);
-		_StatPlay = 591;
+		_statPlay = 591;
 		break;
 	case 591:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 592;
+			_statPlay = 592;
 			_Zoom = 2;
 			ProcessMap(59, _Zoom);
 			_UserInput = 0;
@@ -676,12 +676,12 @@ void KingdomGame::GPLogic3() {
 			ShowPic(444);
 			break;
 		case 0x445:
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -700,8 +700,8 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(145);
-		_StatPlay = 992;
-		_LoopFlag = true;
+		_statPlay = 992;
+		_loopFlag = true;
 		break;
 	case 610:
 		_NodeNum = 61;
@@ -722,7 +722,7 @@ void KingdomGame::GPLogic3() {
 		
 		_CurrMap = 115;
 		PlaySound(36);
-		_StatPlay = 611;
+		_statPlay = 611;
 		_Eye = false;
 		break;
 	case 611:
@@ -733,8 +733,8 @@ void KingdomGame::GPLogic3() {
 			InventoryDel(_UserInput - 0x428);
 			DsAll();
 			PlayMovie(148);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x432:
 			PlayMovie(147);
@@ -751,22 +751,22 @@ void KingdomGame::GPLogic3() {
 		case 0x448:
 			_CurrMap = 10;
 			_ItemInhibit = true;
-			_StatPlay = 730;
-			_LoopFlag = true;
+			_statPlay = 730;
+			_loopFlag = true;
 			break;
 		case 0x44B:
 			_CurrMap = 10;
-			_StatPlay = 680;
-			_LoopFlag = true;
+			_statPlay = 680;
+			_loopFlag = true;
 			break;
 		case 0x451:
 			_CurrMap = 10;
-			_StatPlay = 690;
-			_LoopFlag = true;
+			_statPlay = 690;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -786,7 +786,7 @@ void KingdomGame::GPLogic3() {
 		}
 		_TSIconOnly = true;
 		PlaySound(8);
-		_StatPlay = 621;
+		_statPlay = 621;
 		break;
 	case 621:
 		switch(_UserInput) {
@@ -830,19 +830,19 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(135);
 			_Nodes[57] = 1;
 			PlaySound(8);
-			_StatPlay = 561;
+			_statPlay = 561;
 			_CurrMap = 106;
 			if (_Inventory[16] < 1 && _Wizard)
 				_CurrMap = 88;
 			break;
 		case 0x452:
-			_StatPlay = 630;
-			_LoopFlag = true;
+			_statPlay = 630;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -860,7 +860,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(151);
 		_CurrMap = 72;
 		PlaySound(40);
-		_StatPlay = 631;
+		_statPlay = 631;
 		break;
 	case 631:
 		switch(_UserInput) {
@@ -870,12 +870,12 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x445:
 			PlayMovie(10);
-			_StatPlay = 50;
-			_LoopFlag = true;
+			_statPlay = 50;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -891,13 +891,13 @@ void KingdomGame::GPLogic3() {
 
 		PlayMovie(152);
 		_CurrMap = 10;
-		_StatPlay = 641;
+		_statPlay = 641;
 		PlaySound(28);
 		break;
 	case 641:
 		switch(_UserInput) {
 		case 0x43A:
-			_StatPlay = 642;
+			_statPlay = 642;
 			_Zoom = 2;
 			ProcessMap(64, _Zoom);
 			_UserInput = 0;
@@ -908,7 +908,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -929,7 +929,7 @@ void KingdomGame::GPLogic3() {
 		ShowPic(453);
 		_CurrMap = 73;
 		PlaySound(37);
-		_StatPlay = 651;
+		_statPlay = 651;
 		break;
 	case 651:
 		switch(_UserInput) {
@@ -939,25 +939,25 @@ void KingdomGame::GPLogic3() {
 			ShowPic(453);
 			break;
 		case 0x445:
-			_StatPlay = 700;
-			_LoopFlag = true;
+			_statPlay = 700;
+			_loopFlag = true;
 			break;
 		case 0x446:
 			if (_Nodes[68] == 1) {
-				_StatPlay = 660;
-				_LoopFlag = true;
+				_statPlay = 660;
+				_loopFlag = true;
 			} else {
-				_StatPlay = 790;
-				_LoopFlag = true;
+				_statPlay = 790;
+				_loopFlag = true;
 			}
 			break;
 		case 0x447:
-			_StatPlay = 710;
-			_LoopFlag = true;
+			_statPlay = 710;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -974,7 +974,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(154);
 		_CurrMap = 70;
 		PlaySound(40);
-		_StatPlay = 661;
+		_statPlay = 661;
 		break;
 	case 661:
 		switch(_UserInput) {
@@ -983,24 +983,24 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
-			_StatPlay = 700;
-			_LoopFlag = true;
+			_statPlay = 700;
+			_loopFlag = true;
 			break;
 		case 0x446:
-			_LoopFlag = true;
-			_StatPlay = (_Nodes[68] == 1) ? 650 : 790;
+			_loopFlag = true;
+			_statPlay = (_Nodes[68] == 1) ? 650 : 790;
 			break;
 		case 0x447:
 			if (!_Wizard || _Nodes[68])
-				_StatPlay = 650;
+				_statPlay = 650;
 			else
-				_StatPlay = 670;
+				_statPlay = 670;
 
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1012,7 +1012,7 @@ void KingdomGame::GPLogic3() {
 		_FstFwd = false;
 		PlayMovie(155);
 		_CurrMap = 127;
-		_StatPlay = 671;
+		_statPlay = 671;
 		break;
 	case 671:
 		switch(_UserInput) {
@@ -1022,16 +1022,16 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
-			_StatPlay = 650;
-			_LoopFlag = true;
+			_statPlay = 650;
+			_loopFlag = true;
 			break;
 		case 0x446:
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1040,16 +1040,16 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(156);
-		_StatPlay = 993;
-		_LoopFlag = true;
+		_statPlay = 993;
+		_loopFlag = true;
 		break;
 	case 690:
 		_ItemInhibit = false;
 		EnAll();
 		if (_Nodes[70] == 9) {
-			_StatPlay = 640;
+			_statPlay = 640;
 			_Nodes[73] = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_UserInput = 0;
 		} else {
 			_NodeNum = 69;
@@ -1059,7 +1059,7 @@ void KingdomGame::GPLogic3() {
 			_FrameStop = 40;
 			PlayMovie(157);
 			PlaySound(12);
-			_StatPlay = 691;
+			_statPlay = 691;
 		}
 		break;
 	case 691:
@@ -1103,14 +1103,14 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x441:
 			_ItemInhibit = false;
-			_StatPlay = 640;
+			_statPlay = 640;
 			_Nodes[73] = 0;
-			_LoopFlag = true;
+			_loopFlag = true;
 			_UserInput = 0;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1130,7 +1130,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(164);
 		_CurrMap = 74;
 		PlaySound(10);
-		_StatPlay = 701;
+		_statPlay = 701;
 		break;
 	case 701:
 		switch(_UserInput) {
@@ -1139,20 +1139,20 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
-			_StatPlay = 650;
-			_LoopFlag = true;
+			_statPlay = 650;
+			_loopFlag = true;
 			break;
 		case 0x446:
-			_StatPlay = 780;
-			_LoopFlag = true;
+			_statPlay = 780;
+			_loopFlag = true;
 			break;
 		case 0x447:
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1166,15 +1166,15 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(165);
 		_CurrMap = 10;
 		SetATimer();
-		_StatPlay = _Wizard ? 712 : 711;
+		_statPlay = _Wizard ? 712 : 711;
 		break;
 	case 711:
 		switch(_UserInput) {
 		case 0x2F1:
 			_Replay = false;
 			PlayMovie(166);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
@@ -1184,8 +1184,8 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x430:
 			_ATimer = 0;
@@ -1197,11 +1197,11 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(170);
 			PlaySound(25);
 			EndCredits();
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1210,8 +1210,8 @@ void KingdomGame::GPLogic3() {
 		case 0x2F1:
 			_Replay = false;
 			PlayMovie(166);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
@@ -1221,14 +1221,14 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x430:
 			_ATimer = 0;
 			if (_Nodes[72] != 2) {
 				PlayMovie(57);
-				_StatPlay = 993;
+				_statPlay = 993;
 			} else {
 				_NodeNum = 0;
 				_IconsClosed = true;
@@ -1239,29 +1239,29 @@ void KingdomGame::GPLogic3() {
 				PlaySound(25);
 				EndCredits();
 			}
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x432:
 			_ATimer = 0;
 			_Replay = false;
 			PlayMovie(168);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x433:
 			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || _Nodes[72] == 2) {
 				_Replay = false;
 				PlayMovie(166);
-				_StatPlay = 993;
+				_statPlay = 993;
 			} else {
 				_ATimer = 0;
 				EnAll();
 				PlayMovie(169);
-				_StatPlay = 580;
+				_statPlay = 580;
 				InventoryDel(11);
 				_Nodes[51] = 0;
 			}
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x436:
 			_ATimer = 0;
@@ -1288,13 +1288,13 @@ void KingdomGame::GPLogic3() {
 //--				_QuitFlag = true;
 			} else {
 				PlayMovie(58);
-				_StatPlay = 993;
+				_statPlay = 993;
 			}
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1318,7 +1318,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(175);
 		_CurrMap = 118;
 		PlaySound(12);
-		_StatPlay = 721;
+		_statPlay = 721;
 		break;
 	case 721:
 		switch(_UserInput) {
@@ -1330,36 +1330,36 @@ void KingdomGame::GPLogic3() {
 		case 0x441:
 			if (_Nodes[73] == 1) {
 				_ItemInhibit = false;
-				_StatPlay = 640;
+				_statPlay = 640;
 			} else
-				_StatPlay = 680;
+				_statPlay = 680;
 
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x448:
-			_StatPlay = (_Nodes[73] == 2) ? 730 : 680;
+			_statPlay = (_Nodes[73] == 2) ? 730 : 680;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x44B:
-			_StatPlay = (_Nodes[73] == 1) ? 730 : 680;
+			_statPlay = (_Nodes[73] == 1) ? 730 : 680;
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x44C:
 			if (_Nodes[73] == 1) {
-				_StatPlay = 730;
+				_statPlay = 730;
 				_Nodes[74] = 3;
 			} else
-				_StatPlay = 680;
+				_statPlay = 680;
 
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1387,7 +1387,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(176);
 		_CurrMap = 117;
 		PlaySound(36);
-		_StatPlay = 731;
+		_statPlay = 731;
 		break;
 	case 731:
 		switch(_UserInput) {
@@ -1401,69 +1401,69 @@ void KingdomGame::GPLogic3() {
 			switch (_Nodes[74]) {
 			case 1:
 			case 2:
-				_StatPlay = 720;
+				_statPlay = 720;
 				break;
 			case 3:
-				_StatPlay = 720;
+				_statPlay = 720;
 				_Nodes[73] = 1;
 				break;
 			default:
-				_StatPlay = 680;
+				_statPlay = 680;
 				break;
 			}
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x448:
 			switch(_Nodes[74]) {
 			case 3:
-				_StatPlay = 690;
+				_statPlay = 690;
 				break;
 			case 4:
-				_StatPlay = 720;
+				_statPlay = 720;
 				_Nodes[73] = 1;
 				break;
 			default:
-				_StatPlay = 680;
+				_statPlay = 680;
 				break;
 			}
 			break;
 		case 0x44B:
 			switch(_Nodes[74]) {
 			case 1:
-				_StatPlay = 720;
+				_statPlay = 720;
 				break;
 			case 3:
 			case 4:
-				_StatPlay = 720;
+				_statPlay = 720;
 				_Nodes[73] = 1;
 				break;
 			default:
-				_StatPlay= 680;
+				_statPlay= 680;
 				break;
 			}
 
 			_CurrMap = 10;
-			_LoopFlag = true;
+			_loopFlag = true;
 			break;
 		case 0x44C:
 			switch(_Nodes[74]) {
 			case 1:
 			case 2:
-				_StatPlay = 720;
+				_statPlay = 720;
 				break;
 			case 4:
-				_StatPlay = 720;
+				_statPlay = 720;
 				_Nodes[73] = 1;
 				break;
 			default:
-				_StatPlay = 680;
+				_statPlay = 680;
 				break;
 			}
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1475,7 +1475,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(185);
 		_CurrMap = 10;
 		SetATimer();
-		_StatPlay = 741;
+		_statPlay = 741;
 		_UserInput = 0;
 		break;
 	case 741:
@@ -1483,8 +1483,8 @@ void KingdomGame::GPLogic3() {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(188);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
@@ -1492,7 +1492,7 @@ void KingdomGame::GPLogic3() {
 			InventoryDel(_UserInput - 0x428);
 			_ATimer = 0;
 			PlayMovie(178);
-			_LoopFlag = true;
+			_loopFlag = true;
 			_UserInput = 753;
 			break;
 		case 0x432:
@@ -1503,21 +1503,21 @@ void KingdomGame::GPLogic3() {
 				_Nodes[75] = true;
 			break;
 		case 0x437:
-			_LoopFlag = true;
+			_loopFlag = true;
 			if (Wound()) {
 				_FrameStop = 88;
 				PlayMovie(187);
-				_StatPlay = 570;
+				_statPlay = 570;
 				_Nodes[58] = 1;
 			} else {
 				_FrameStop = 78;
 				PlayMovie(187);
-				_StatPlay = 993;
+				_statPlay = 993;
 			}
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1528,7 +1528,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(189);
 		_CurrMap = 126;
 		PlaySound(21);
-		_StatPlay = 761;
+		_statPlay = 761;
 		break;
 	case 761:
 		switch(_UserInput) {
@@ -1537,28 +1537,28 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		case 0x44D:
 			PlayMovie(191);
 			_Nodes[68] = 2;
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		case 0x44E:
 			PlayMovie(192);
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		case 0x458:
 			PlayMovie(190);
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1570,7 +1570,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(171);
 		_CurrMap = 124;
 		PlaySound(40);
-		_StatPlay = 781;
+		_statPlay = 781;
 		break;
 	case 781:
 		switch(_UserInput) {
@@ -1626,16 +1626,16 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x445:
-			_StatPlay = 660;
-			_LoopFlag = true;
+			_statPlay = 660;
+			_loopFlag = true;
 			break;
 		case 0x446:
-			_StatPlay = (_Nodes[68] == 1) ? 760 : 660;
-			_LoopFlag = true;
+			_statPlay = (_Nodes[68] == 1) ? 760 : 660;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1645,7 +1645,7 @@ void KingdomGame::GPLogic3() {
 		DsAll();
 		PlayMovie(4);
 		_CurrMap = 8;
-		_StatPlay = 791;
+		_statPlay = 791;
 		SetATimer();
 		_UserInput = 0;
 		break;
@@ -1654,24 +1654,24 @@ void KingdomGame::GPLogic3() {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(204);
-			_StatPlay = 993;
-			_LoopFlag = true;
+			_statPlay = 993;
+			_loopFlag = true;
 			break;
 		case 0x445:
 			EnAll();
 			PlayMovie(10);
-			_StatPlay = 50;
-			_LoopFlag = true;
+			_statPlay = 50;
+			_loopFlag = true;
 			break;
 		case 0x446:
 			EnAll();
 			PlayMovie(10);
-			_StatPlay = 520;
-			_LoopFlag = true;
+			_statPlay = 520;
+			_loopFlag = true;
 			break;
 		default:
 			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _StatPlay);
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
 			break;
 		}
 		break;
@@ -1707,7 +1707,7 @@ void KingdomGame::EndCredits() {
 	DsAll();
 	_Pouch = false;
 	memset(_Inventory, 0xFF, 19);
-	_StatPlay = 994;
-	_LoopFlag = true;
+	_statPlay = 994;
+	_loopFlag = true;
 }
 } // NameSpace
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 8a404e1baf..0827110572 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -25,7 +25,7 @@
 namespace Kingdom {
 
 void KingdomGame::GPLogic4() {
-	switch(_StatPlay) {
+	switch(_statPlay) {
 	case 900:
 		if (_ATimer > 0) {
 			PlaySound(0);
@@ -34,7 +34,7 @@ void KingdomGame::GPLogic4() {
 		if (_ASMode) {
 			SwitchMtoA();
 			_MapStat = 0;
-			_OldStatPlay--;
+			_oldStatPlay--;
 			_ASMode = false;
 		}
 		SaveAS();
@@ -61,7 +61,7 @@ void KingdomGame::GPLogic4() {
 				_ATimer = 133;
 			}
 			ShowPic(120);
-			_StatPlay = 901;
+			_statPlay = 901;
 		}
 		break;
 	case 901:
@@ -85,7 +85,7 @@ void KingdomGame::GPLogic4() {
 			_Pouch = 0;
 			PlaySound(1);
 			memset(_Inventory, -1, 19);
-			_StatPlay = 994;
+			_statPlay = 994;
 		} else {
 			_BTimer = 36;
 			while(_BTimer) {
@@ -93,7 +93,7 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 			}
 			
-			_LoopFlag = true;
+			_loopFlag = true;
 			if (_Nodes[29] == 1) {
 				_Nodes[29] = 0;
 				_Nodes[49] = 0;
@@ -114,7 +114,7 @@ void KingdomGame::GPLogic4() {
 				_Resurrect = 1;
 			}
 			InventoryDel(12);
-			_StatPlay = 50;
+			_statPlay = 50;
 		}
 		break;
 	case 992:
@@ -135,7 +135,7 @@ void KingdomGame::GPLogic4() {
 			_Pouch = 0;
 			PlaySound(1);
 			memset(_Inventory, -1, 19);
-			_StatPlay = 994;
+			_statPlay = 994;
 		} else {
 			_BTimer = 36;
 			while(_BTimer != 0) {
@@ -143,7 +143,7 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 			}
 
-			_LoopFlag = true;
+			_loopFlag = true;
 			if (_Nodes[29] == 1) {
 				_Nodes[29] = 0;
 				_Nodes[49] = 0;
@@ -162,7 +162,7 @@ void KingdomGame::GPLogic4() {
 			PlaySound(0);
 			PlayMovie(195);
 			InventoryDel(12);
-			_StatPlay = 270;
+			_statPlay = 270;
 		}
 		break;
 	case 993:
@@ -183,7 +183,7 @@ void KingdomGame::GPLogic4() {
 			_Pouch = 0;
 			PlaySound(1);
 			memset(_Inventory, -1, 19);
-			_StatPlay = 994;
+			_statPlay = 994;
 		} else {
 			_BTimer = 36;
 			while (_BTimer != 0) {
@@ -191,7 +191,7 @@ void KingdomGame::GPLogic4() {
 				RefreshSound();
 			}
 			
-			_LoopFlag = true;
+			_loopFlag = true;
 			if (_Nodes[29] == 1) {
 				_Nodes[29] = 0;
 				_Nodes[49] = 0;
@@ -212,7 +212,7 @@ void KingdomGame::GPLogic4() {
 			PlaySound(0);
 			PlayMovie(196);
 			InventoryDel(12);
-			_StatPlay = 520;
+			_statPlay = 520;
 		}
 		break;
 	case 994:
@@ -246,15 +246,15 @@ void KingdomGame::GPLogic4_SP901() {
 	if (_UserInput == 0x2F1) {
 		_ASMode = false;
 		RestoreAS();
-		_StatPlay = _OldStatPlay;
-		_LoopFlag = true;
+		_statPlay = _oldStatPlay;
+		_loopFlag = true;
 	} else {
 		if (_Health == 10 || _Health == 6 || _Health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
 			_ASMode = false;
 			RestoreAS();
-			_StatPlay = _OldStatPlay;
+			_statPlay = _oldStatPlay;
 		} else {
-			_StatPlay = _MapExit[_UserInput - 0x400];
+			_statPlay = _mapExit[_UserInput - 0x400];
 			_UserInput = 0;
 			Wound();
 			PlayMovie(10);
@@ -265,7 +265,7 @@ void KingdomGame::GPLogic4_SP901() {
 			_MapStat = 0;
 		}
 		_UserInput = 0;
-		_LoopFlag = true;
+		_loopFlag = true;
 	}
 }
 
diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index bd99304712..e7d647de8b 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -24,7 +24,7 @@
 
 namespace Kingdom {
 
-const char *_RezNames[] = {
+const char *_rezNames[] = {
 	"",
 	"Maps/KMAP001.lbm",
 	"Maps/KMAP002.lbm",
@@ -537,7 +537,7 @@ const char *_RezNames[] = {
 	"MovieLF/KLF209.lbm",
 };
 
-int _MapExit[] = {
+int _mapExit[] = {
 	  0, 100,  90,  50, 420, 550, 110,  70,  80, 180,
 	190, 200, 210, 230, 240, 300, 290, 330, 360, 310,
 	370, 390,  60, 570,  30,  40, 340, 640, 520, 510,
@@ -548,7 +548,7 @@ int _MapExit[] = {
 	  0
 };
 
-int _EMLTable[] = {
+int _emlTable[] = {
 	 0,  0,  0, 65, 66, 69,  0, 59,  0, 60,
 	61, 63,  0,  0, 62,  0,  0,  0, 58,  0,
 	63, 67, 67,  0, 70, 75,  0, 77,  0, 72,
@@ -559,7 +559,7 @@ int _EMLTable[] = {
 	 0,  0,  0,  0,  0,  0,  0,  0,  0,  0
 };
 
-int _ZoomTable[81][9][2] = {
+int _zoomTable[81][9][2] = {
 	// The first array is a dummy one used to fix an stupid trick on the index in the original
 	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}},
 	{{   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   0, 0x0A}, {   8, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}, {   0, 0x0A}},
@@ -644,7 +644,7 @@ int _ZoomTable[81][9][2] = {
 	{{   0, 0x0A}, {0x3A, 0x0A}, {0x12, 0x24}, {0x0B, 0x0A}, {   8, 0x0A}, {   5, 0x0A}, {   4, 0x0A}, {   2, 0x0A}, {   1, 0x0A}} 
 };
 
-int _IconActTable[82][7] = {
+int _iconActTable[82][7] = {
 	{18, 18, 18, 18, 18, 18, 18},
 	{18, 18, 18, 18, 18, 18, 18},
 	{18, 18, 18, 18, 18, 18, 18},
@@ -729,7 +729,7 @@ int _IconActTable[82][7] = {
 	{ 3, 18, 18, 18,  0, 18, 18} 
 };
 
-int _TEASeq[6][2] = {
+int _teaSeq[6][2] = {
 	{138, 24},
 	{139,  3},
 	{138, 12},
@@ -738,14 +738,14 @@ int _TEASeq[6][2] = {
 	{141,  2}
 };
 
-int _HGASeq[4][2] = {
+int _hgaSeq[4][2] = {
 	{47, 0},
 	{48, 0},
 	{49, 0},
 	{50, 0}
 };
 
-HotSpot _MouseMapMS[51] = {
+HotSpot _mouseMapMS[51] = {
 	{ 11,  35, 178, 197, 0x181},
 	{ 38,  62, 178, 197, 0x182},
 	{ 65,  89, 178, 197, 0x183},
@@ -799,7 +799,7 @@ HotSpot _MouseMapMS[51] = {
 	{  0,   0,   0,   0,     0}
 };
 
-int _CursorTable[96] = {
+int _cursorTable[96] = {
 	 51,  52,  53,  54,  55,  56,  57,  58,  59,  60,
 	 61,  62,  63,  64,  65,  66,  67,  68,  69,  70,
 	 71,  72,  73,  74,  75,  76,  77,  78,  79,  80,
@@ -812,7 +812,7 @@ int _CursorTable[96] = {
 	  0,   0,   0,   0,   0,   0
 };
 
-HotSpot _MouseMapAS[128][16] = {
+HotSpot _mouseMapAS[128][16] = {
 	{
 		{15, 110, 48, 62, 0x240},
 		{61, 176, 30, 44, 0x241},
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 16dc4ca873..775b6c160b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -64,7 +64,7 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_quit = false;
 	_MouseValue = 0;
 	_CurrMap = 0;
-	_StatPlay = 0;
+	_statPlay = 0;
 	_SoundNumber = -1;
 
 	_kingartEntries = nullptr;
@@ -90,20 +90,20 @@ Common::Error KingdomGame::run() {
 	InitHelp();
 
 	while (!_quit) {
-		_LoopFlag = false;
+		_loopFlag = false;
 		GameHelp();
-		if (_GameMode == 0) {
-			if (_StatPlay < 250)
+		if (_gameMode == 0) {
+			if (_statPlay < 250)
 				GPLogic1();
-			if (_StatPlay > 249 && _StatPlay < 500)
+			if (_statPlay > 249 && _statPlay < 500)
 				GPLogic2();
-			if (_StatPlay > 499 && _StatPlay < 900)
+			if (_statPlay > 499 && _statPlay < 900)
 				GPLogic3();
-			if (_StatPlay > 899)
+			if (_statPlay > 899)
 				GPLogic4();
 		}
 
-		if (!_LoopFlag)
+		if (!_loopFlag)
 			GetUserInput();
 
 		refreshScreen();
@@ -208,9 +208,9 @@ void KingdomGame::InitPlay() {
 		_IconPic[i] = 89 + i;
 
 	_FrameStop = 0;
-	_GameMode = 0;
+	_gameMode = 0;
 	_DaelonCntr = 0;
-	_StatPlay = 10;
+	_statPlay = 10;
 	_Spell1 = false;
 	_Spell2 = false;
 	_Spell3 = false;
@@ -248,7 +248,7 @@ void KingdomGame::InitPlay() {
 }
 
 void KingdomGame::InitHelp() {
-	_GameMode = 0;
+	_gameMode = 0;
 }
 
 void KingdomGame::FadeToBlack1() {
@@ -265,7 +265,7 @@ void KingdomGame::GameHelp_Sub43C() {
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
 	_UserInput = 0;
-	_GameMode = 0;
+	_gameMode = 0;
 	_IconsClosed = false;
 	_TreeLeftSta = _OldTLS;
 	_Eye = _OldEye;
@@ -274,7 +274,7 @@ void KingdomGame::GameHelp_Sub43C() {
 }
 
 void KingdomGame::GameHelp() {
-	if (!_GameMode) {
+	if (!_gameMode) {
 		if (_UserInput == 0x43C) {
 			SaveAS();
 			_ASMap = _CurrMap;
@@ -282,7 +282,7 @@ void KingdomGame::GameHelp() {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			DrawHelpScreen();
-			_GameMode = 1;
+			_gameMode = 1;
 			_OldTLS = _TreeLeftSta;
 			_TreeLeftSta = 0;
 			_IconsClosed = true;
@@ -296,7 +296,7 @@ void KingdomGame::GameHelp() {
 		if (_UserInput == 0x44F) {
 			SaveAS();
 			_ASMap = _CurrMap;
-			_GameMode = 2;
+			_gameMode = 2;
 			_OldTLS = _TreeLeftSta;
 			_TreeLeftSta = 0;
 			_IconsClosed = true;
@@ -317,7 +317,7 @@ void KingdomGame::GameHelp() {
 			_UserInput = 0;
 		}
 	}
-	if (_GameMode == 0)
+	if (_gameMode == 0)
 		return;
 
 	switch(_UserInput) {
@@ -413,20 +413,20 @@ void KingdomGame::LoadKingArt() {
 
 	for (int i = 0; i < size; i++) {
 		int chunkSize = kingartIdx[i + 1] - kingartIdx[i];
-		_kingartEntries[i].Width = kingartStream->readByte();
-		_kingartEntries[i].Height = kingartStream->readByte();
+		_kingartEntries[i]._width = kingartStream->readByte();
+		_kingartEntries[i]._height = kingartStream->readByte();
 
-		assert(_kingartEntries[i].Width * _kingartEntries[i].Height == chunkSize - 2);
+		assert(_kingartEntries[i]._width * _kingartEntries[i]._height == chunkSize - 2);
 
-		_kingartEntries[i].data = new byte[chunkSize - 2];
-		kingartStream->read(_kingartEntries[i].data, chunkSize - 2);
+		_kingartEntries[i]._data = new byte[chunkSize - 2];
+		kingartStream->read(_kingartEntries[i]._data, chunkSize - 2);
 	}
 
 	delete[] kingartIdx;
 }
 
 void KingdomGame::LoadAResource(int reznum) {
-	Common::String path = Common::String(_RezNames[reznum]);
+	Common::String path = Common::String(_rezNames[reznum]);
 	path.toUppercase();
 
 	debug("Loading resource: %i (%s)\n", reznum, path.c_str());
@@ -772,7 +772,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 		_IconPic[i] = 89 + i;
 	
 	_FrameStop = 0;
-	_GameMode = 0;
+	_gameMode = 0;
 	_ASMode = false;
 	_HealthTmr = 0;
 	_NoIFScreen = false;
@@ -787,17 +787,17 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_TreeHGUPic = 0;
 	_CursorDrawn = false;
 	ShowPic(106);
-	_GameMode = 0;
+	_gameMode = 0;
 	_IconsClosed = false;
 	DrawRect(4, 17, 228, 161, 0);
 	_UserInput = 0x43E;
-	_LoopFlag = true;
+	_loopFlag = true;
 
 	return Common::kNoError;
 }
 
 void KingdomGame::synchronize(Common::Serializer &s) {
-	s.syncAsSint16LE(_StatPlay);
+	s.syncAsSint16LE(_statPlay);
 	s.syncAsSint16LE(_ASMap);
 	s.syncAsSint16LE(_DaelonCntr);
 	s.syncAsSint16LE(_Health);
@@ -924,7 +924,7 @@ void KingdomGame::PlaySound(int idx) {
 		return;
 
 	int realIdx = _SoundNumber + 200; // Or +250, depending in the original on the sound card
-	debug("PlaySound %d : %s", idx, _RezNames[realIdx]);
+	debug("PlaySound %d : %s", idx, _rezNames[realIdx]);
 	LoadAResource(realIdx);
 
 	Common::SeekableReadStream *soundStream = _RezPointers[realIdx];
@@ -976,14 +976,14 @@ void KingdomGame::GetUserInput() {
 		_UserInput = _MouseValue;
 
 	if (_UserInput == 0x2F5) {
-		_StatPlay = 600;
-		_LoopFlag = true;
+		_statPlay = 600;
+		_loopFlag = true;
 	}
 
-	if (_UserInput == 0x42B && _StatPlay == 53 && _GameMode == 0) {
-		_OldStatPlay = _StatPlay;
-		_StatPlay = 900;
-		_LoopFlag = true;
+	if (_UserInput == 0x42B && _statPlay == 53 && _gameMode == 0) {
+		_oldStatPlay = _statPlay;
+		_statPlay = 900;
+		_loopFlag = true;
 	}
 
 	if (_UserInput == 0x12D && _CurrMap == 1)
@@ -1005,12 +1005,12 @@ void KingdomGame::DrawLocation() {
 	_ATimer = 0;
 	_ATimerFlag = false;
 
-	int emlValue = _EMLTable[_NodeNum];
+	int emlValue = _emlTable[_NodeNum];
 	if (emlValue > 0)
 		EnAll();
 
 	if (!_MapEx || !emlValue || _Resurrect) {
-		if (_StatPlay != 50)
+		if (_statPlay != 50)
 			_Resurrect = false;
 		_IconsClosed = false;
 	} else {
@@ -1031,19 +1031,19 @@ void KingdomGame::DrawLocation() {
 }
 
 void KingdomGame::ProcessMap(int mapNum, int zoom) {
-	int var6 = _ZoomTable[mapNum][zoom][0];
+	int var6 = _zoomTable[mapNum][zoom][0];
 	if (!_ASMode)
 		SwitchAtoM();
 	FShowPic(var6);
-	_CurrMap = _ZoomTable[mapNum][zoom][1];
+	_CurrMap = _zoomTable[mapNum][zoom][1];
 
 	if (zoom > 0)
-		_TreeLeftSta = _ZoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
+		_TreeLeftSta = _zoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
 	else
 		_TreeLeftSta = 0;
 
 	if (zoom < 8)
-		_TreeRightSta = _ZoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
+		_TreeRightSta = _zoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
 	else
 		_TreeRightSta = 0;
 }
@@ -1054,7 +1054,7 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 	case 0x443:
 		SwitchMtoA();
 		_MapStat = 0;
-		_StatPlay--;
+		_statPlay--;
 		break;
 	case 0x43F:
 		if (_TreeLeftSta == 3) {
@@ -1072,17 +1072,17 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 		break;
 	default:
 		if (_UserInput > 0x3FF && _UserInput < 0x428) {
-			_StatPlay = _MapExit[_UserInput - 0x400];
+			_statPlay = _mapExit[_UserInput - 0x400];
 			_MapEx = true;
-			_LoopFlag = true;
+			_loopFlag = true;
 			SwitchAS();
 		}
 
 		if (_UserInput > 0x440) {
 			SwitchMtoA();
 			_MapStat = false;
-			_StatPlay--;
-			_LoopFlag = true;
+			_statPlay--;
+			_loopFlag = true;
 		}
 		break;
 	}
@@ -1159,7 +1159,7 @@ void KingdomGame::SetATimer() {
 		wrkNodeNum = 80;
 	
 	for (int i = 0; i < 7; i++) {
-		int idx = _IconActTable[wrkNodeNum][i];
+		int idx = _iconActTable[wrkNodeNum][i];
 		if (_Inventory[idx] > 0) {
 			_ATimerFlag = false;
 			_ATimer = _Wizard ? 114 : 133;
@@ -1193,7 +1193,7 @@ void KingdomGame::IncreaseHealth() {
 }
 
 void KingdomGame::CheckMainScreen() {
-	if (_CTimerFlag || _StatPlay == 900 || _StatPlay == 901)
+	if (_CTimerFlag || _statPlay == 900 || _statPlay == 901)
 		return;
 
 	_CTimerFlag = false;
@@ -1249,7 +1249,7 @@ void KingdomGame::CheckMainScreen() {
 			wrkNodeNum = 80;
 		if (_NodeNum == 21 && _Nodes[21] == 9)
 			wrkNodeNum = 81;
-		int idx = _IconActTable[wrkNodeNum][i];
+		int idx = _iconActTable[wrkNodeNum][i];
 
 		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_ItemInhibit && !_IconsClosed) {
 			if (_IconPic[i] != 12 + idx) {
@@ -1352,9 +1352,9 @@ void KingdomGame::CheckMainScreen() {
 
 	if (_Eye) {
 		if (_TreeEyeTimer == 0) {
-			_TreeEyePic = _TEASeq[_TreeEyeSta][0];
+			_TreeEyePic = _teaSeq[_TreeEyeSta][0];
 			DrawIcon(261, 51, _TreeEyePic);
-			_TreeEyeTimer = _TEASeq[_TreeEyeSta][1];
+			_TreeEyeTimer = _teaSeq[_TreeEyeSta][1];
 			_TreeEyeSta++;
 			if (_TreeEyeSta == 5)
 				_TreeEyeSta = 0;
@@ -1385,9 +1385,9 @@ void KingdomGame::CheckMainScreen() {
 			_TreeHGUPic = 147;
 		}
 	} else if (_TreeHGTimer == 0) {
-		_TreeHGPic = _HGASeq[_TreeHGSta][0];
+		_TreeHGPic = _hgaSeq[_TreeHGSta][0];
 		DrawIcon(249, 185, _TreeHGPic);
-		_TreeHGTimer = _HGASeq[_TreeHGSta][1];
+		_TreeHGTimer = _hgaSeq[_TreeHGSta][1];
 		_TreeHGSta++;
 		if (_TreeHGSta > 3)
 			_TreeHGSta = 0;
@@ -1423,10 +1423,10 @@ bool KingdomGame::ChkDesertObstacles() {
 		if (!_Nodes[49] || _RobberyNode != _NodeNum) {
 			if (_LastObstacle != _NodeNum) {
 				if (_rnd->getRandomNumber(5) == 0) {
-					_StatPlay = 250;
+					_statPlay = 250;
 					_LastObstacle = _NodeNum;
 					_LastObs = true;
-					_LoopFlag = true;
+					_loopFlag = true;
 					return true;
 				} else {
 					return false;
@@ -1435,16 +1435,16 @@ bool KingdomGame::ChkDesertObstacles() {
 				return false;
 			}
 		} else {
-			_StatPlay = 490;
-			_LoopFlag = true;
+			_statPlay = 490;
+			_loopFlag = true;
 			return true;
 		}
 	} else {
-		_StatPlay = 280;
+		_statPlay = 280;
 		_RobberyNode = _NodeNum;
 		_LastObstacle = _NodeNum;
 		_LastObs = true;
-		_LoopFlag = true;
+		_loopFlag = true;
 		return true;
 	}
 }
@@ -1474,9 +1474,9 @@ void KingdomGame::SwitchMtoA() {
 }
 
 void KingdomGame::DrawIcon(int x, int y, int index) {
-	const byte *data = _kingartEntries[index].data;
-	int width = _kingartEntries[index].Width;
-	int height = _kingartEntries[index].Height;
+	const byte *data = _kingartEntries[index]._data;
+	int width = _kingartEntries[index]._width;
+	int height = _kingartEntries[index]._height;
 
 	::Graphics::Surface *screen = g_system->lockScreen();
 	for (int curX = 0; curX < width; curX++) {
@@ -1573,9 +1573,9 @@ void KingdomGame::DrawCursor() {
 
 void KingdomGame::CursorType() {
 	_MouseValue = 0;
-	if (_CurrMap != 1 && _StatPlay >= 30) {
-		int var2 = _StatPlay == 901 ? 16 : 0;
-		int var6 = _StatPlay == 901 ? 35 : 16;
+	if (_CurrMap != 1 && _statPlay >= 30) {
+		int var2 = _statPlay == 901 ? 16 : 0;
+		int var6 = _statPlay == 901 ? 35 : 16;
 		for (int i = 0; i < var6 + 1; i++) {
 			if (i == var6) {
 				int tmpVal = checkMouseMapAS();
@@ -1584,8 +1584,8 @@ void KingdomGame::CursorType() {
 					return;
 				} else
 					_MouseValue = tmpVal;
-			} else if (_CursorX >= _MouseMapMS[var2 + i]._minX && _CursorX < _MouseMapMS[var2 + i]._maxX && _CursorY >= _MouseMapMS[var2 + i]._minY && _CursorY < _MouseMapMS[var2 + i]._maxY) {
-				_MouseValue = _MouseMapMS[var2 + i]._mouseValue;
+			} else if (_CursorX >= _mouseMapMS[var2 + i]._minX && _CursorX < _mouseMapMS[var2 + i]._maxX && _CursorY >= _mouseMapMS[var2 + i]._minY && _CursorY < _mouseMapMS[var2 + i]._maxY) {
+				_MouseValue = _mouseMapMS[var2 + i]._mouseValue;
 				break;
 			}
 		}
@@ -1629,7 +1629,7 @@ void KingdomGame::CursorType() {
 		// No more check in ScummVM, we display the load screen
 		break;
 	case 0x407:
-		if (_StatPlay == 182 && _Nodes[18] < 9)
+		if (_statPlay == 182 && _Nodes[18] < 9)
 			_MouseValue = 0;
 		break;
 	case 0x40D:
@@ -1646,19 +1646,19 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0;
 		break;
 	case 0x428:
-		if (_NodeNum == 5 && _GameMode != 2 && _Spell1)
+		if (_NodeNum == 5 && _gameMode != 2 && _Spell1)
 			_MouseValue = 0;
 		break;
 	case 0x42A:
-		if (_NodeNum == 5 && _GameMode != 2 && _Spell2)
+		if (_NodeNum == 5 && _gameMode != 2 && _Spell2)
 			_MouseValue = 0;
 		break;
 	case 0x42B:
-		if (_NodeNum == 5 && _GameMode != 2 && _Spell3)
+		if (_NodeNum == 5 && _gameMode != 2 && _Spell3)
 			_MouseValue = 0;
 		break;
 	case 0x445:
-		if (_StatPlay == 161 && _Nodes[16] == 0 && _Wizard)
+		if (_statPlay == 161 && _Nodes[16] == 0 && _Wizard)
 			_MouseValue = 0x450;
 		break;
 	case 0x44F:
@@ -1679,7 +1679,7 @@ void KingdomGame::CursorType() {
 				var2 = 79;
 			if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
 				var2 = 80;
-			int indx = _IconActTable[var2][var6];
+			int indx = _iconActTable[var2][var6];
 			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_IconsClosed && !_ItemInhibit) {
 				_MouseValue = indx + 0x428;
 				_IconSelect = var6;
@@ -1700,29 +1700,29 @@ void KingdomGame::CursorType() {
 
 void KingdomGame::CursorTypeExit() {
 	if (_MouseValue >= 0x400)
-		_CursorDef = _CursorTable[_MouseValue - 0x400];
+		_CursorDef = _cursorTable[_MouseValue - 0x400];
 	else 
 		_CursorDef = (_MouseValue != 0) ? 0x68 : 0x67;
 }
 
 int KingdomGame::checkMouseMapAS() {
 	for (int i = 0; i < 16; i++) {
-		if (_CursorX >= _MouseMapAS[_CurrMap][i]._minX && _CursorX < _MouseMapAS[_CurrMap][i]._maxX
-			&& _CursorY >= _MouseMapAS[_CurrMap][i]._minY && _CursorY < _MouseMapAS[_CurrMap][i]._maxY)
-			return _MouseMapAS[_CurrMap][i]._mouseValue;
+		if (_CursorX >= _mouseMapAS[_CurrMap][i]._minX && _CursorX < _mouseMapAS[_CurrMap][i]._maxX
+			&& _CursorY >= _mouseMapAS[_CurrMap][i]._minY && _CursorY < _mouseMapAS[_CurrMap][i]._maxY)
+			return _mouseMapAS[_CurrMap][i]._mouseValue;
 	}
 	if (_CurrMap == 11) {
 		for (int i = 0; i < 16; i++) {
-			if (_CursorX >= _MouseMapAS[12][i]._minX && _CursorX < _MouseMapAS[12][i]._maxX
-				&& _CursorY >= _MouseMapAS[12][i]._minY && _CursorY < _MouseMapAS[12][i]._maxY)
-				return _MouseMapAS[12][i]._mouseValue;
+			if (_CursorX >= _mouseMapAS[12][i]._minX && _CursorX < _mouseMapAS[12][i]._maxX
+				&& _CursorY >= _mouseMapAS[12][i]._minY && _CursorY < _mouseMapAS[12][i]._maxY)
+				return _mouseMapAS[12][i]._mouseValue;
 		}
 	}
 	return -1;
 }
 void KingdomGame::SetCursor(int cursor) {
 	KingArtEntry Cursor = _kingartEntries[cursor];
-	CursorMan.replaceCursor(Cursor.data, Cursor.Width, Cursor.Height, 0, 0, 255);
+	CursorMan.replaceCursor(Cursor._data, Cursor._width, Cursor._height, 0, 0, 255);
 }
 
 } // End of namespace Kingdom
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 65ced52b21..085e58e96e 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -58,9 +58,9 @@ namespace Kingdom {
 	};
 
 	struct KingArtEntry {
-		uint8 Width;
-		uint8 Height;
-		byte* data;
+		uint8 _width;
+		uint8 _height;
+		byte* _data;
 	};
 
 	struct HotSpot {
@@ -71,16 +71,16 @@ namespace Kingdom {
 		int16 _mouseValue;
 	};
 
-	extern const char *_RezNames[];
-	extern int _MapExit[];
-	extern int _EMLTable[];
-	extern int _ZoomTable[81][9][2];
-	extern int _IconActTable[82][7];
-	extern int _TEASeq[6][2];
-	extern int _HGASeq[4][2];
-	extern HotSpot _MouseMapMS[51];
-	extern int _CursorTable[96];
-	extern HotSpot _MouseMapAS[128][16];
+	extern const char *_rezNames[];
+	extern int _mapExit[];
+	extern int _emlTable[];
+	extern int _zoomTable[81][9][2];
+	extern int _iconActTable[82][7];
+	extern int _cursorTable[96];
+	extern int _teaSeq[6][2];
+	extern int _hgaSeq[4][2];
+	extern HotSpot _mouseMapMS[51];
+	extern HotSpot _mouseMapAS[128][16];
 
 	struct KingdomSavegameHeader {
 		uint32 _signature;
@@ -110,10 +110,10 @@ namespace Kingdom {
 
 		KingArtEntry *_kingartEntries;
 
-		bool _LoopFlag;
-		int _GameMode;
-		int _StatPlay;
-		int _OldStatPlay;
+		bool _loopFlag;
+		int _gameMode;
+		int _statPlay;
+		int _oldStatPlay;
 		bool _FstFwd;
 		bool _NoIFScreen;
 		bool _Sound;


Commit: dcf0d4a38b7a9e6e74125f9a76a5d4054a525623
    https://github.com/scummvm/scummvm/commit/dcf0d4a38b7a9e6e74125f9a76a5d4054a525623
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Some renaming, check and fix values used for booleans

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 98347c24cf..2e8ba3002c 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -53,7 +53,7 @@ void KingdomGame::GPLogic1() {
 		case 0x193:
 			_ATimer = 0;
 			_KeyActive = 0;
-			_NoIFScreen = 1;
+			_noIFScreen = true;
 			PlaySound(0);
 			while(!_KeyActive) {
 				FadeToBlack2();
@@ -87,7 +87,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 20:
 		InitPlay();
-		_NoIFScreen = 0;
+		_noIFScreen = false;
 		EraseCursorAsm();
 		_CursorDrawn = false;
 		FadeToBlack2();
@@ -110,9 +110,9 @@ void KingdomGame::GPLogic1() {
 		}
 		DrawLocation();
 		if (_Nodes[4] != 0 && _Nodes[6] != 1)
-			_Sound = 1;
+			_sound = true;
 		else
-			_Sound = 0;
+			_sound = false;
 		
 		PlayMovie(7);
 		_statPlay = 31;
@@ -129,7 +129,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -173,7 +173,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -200,7 +200,7 @@ void KingdomGame::GPLogic1() {
 		PlaySound(1);
 		
 		if (_Spell1 && _Spell2 && _Spell3) {
-			_Sound = 1;
+			_sound = true;
 			PlayMovie(2);
 			_CurrMap = 10;
 			_statPlay = 51;
@@ -225,7 +225,7 @@ void KingdomGame::GPLogic1() {
 				_Spell2 = true;
 				break;
 			case 3:
-				_Sound = 1;
+				_sound = true;
 				PlayMovie(59);
 				InventoryAdd(3);
 				_Spell3 = true;
@@ -277,7 +277,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -365,7 +365,7 @@ void KingdomGame::GPLogic1() {
 			PlaySound(2);
 			_CurrMap = 9;
 		} else {
-			_Sound = 1;
+			_sound = true;
 			PlayMovie(13);
 			PlaySound(43);
 			_CurrMap = 10;
@@ -394,7 +394,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -486,7 +486,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			_ATimer = 0;
 			break;
@@ -519,10 +519,10 @@ void KingdomGame::GPLogic1() {
 			DrawLocation();
 			_UserInput = 0;
 			if (_Nodes[9] == 0) {
-				_Sound = 0;
+				_sound = false;
 				_Nodes[9] = 9;
 			} else
-				_Sound = 1;
+				_sound = true;
 			
 			if (!_Wizard)
 				_FrameStop = 90;
@@ -550,7 +550,7 @@ void KingdomGame::GPLogic1() {
 			if (!_Wizard)
 				_FrameStop = 90;
 
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			if (!_Wizard)
 				ShowPic(109);
@@ -579,10 +579,10 @@ void KingdomGame::GPLogic1() {
 				_Nodes[10] = 9;
 
 			if (_Nodes[10] != 9) {
-				_Sound = 0;
+				_sound = false;
 				_Nodes[10] = 1;
 			} else if (_Wizard)
-				_Sound = 1;
+				_sound = true;
 
 			PlayMovie(20);
 			PlaySound(41);
@@ -599,7 +599,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -612,9 +612,9 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[22] == 0)
-			_Sound = 0;
+			_sound = false;
 		else
-			_Sound = 1;
+			_sound = true;
 		PlayMovie(21);
 		PlaySound(42);
 		_CurrMap = 10;
@@ -680,7 +680,7 @@ void KingdomGame::GPLogic1() {
 			if (_PMovie == 023)
 				GPLogic1_SubSP121();
 			else {
-				_Sound = _LastSound;
+				_sound = _LastSound;
 				PlayMovie(_PMovie);
 				PlaySound(3);
 			}
@@ -726,7 +726,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -750,7 +750,7 @@ void KingdomGame::GPLogic1() {
 	case 151:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			_ATimer = 0;
 			break;
@@ -833,7 +833,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			if (_PMovie > 206)
 				SaveAS();
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			if (_PMovie > 206)
 				RestoreAS();
@@ -1005,9 +1005,9 @@ void KingdomGame::GPLogic1() {
 				_TSIconOnly = 1;
 			} else {
 				_FrameStop = 27;
-				_FstFwd = 0;
+				_fstFwd = false;
 				PlayMovie(36);
-				_FstFwd = 1;
+				_fstFwd = true;
 			}
 			_UserInput = 0;
 			break;
@@ -1022,12 +1022,12 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			if (_PMovie == 36 && _Nodes[18] != 9) {
 				_FrameStop = 27;
-				_FstFwd = 0;
+				_fstFwd = false;
 				PlayMovie(36);
-				_FstFwd = 1;
+				_fstFwd = true;
 			} else
 				PlayMovie(_PMovie);
 			break;
@@ -1074,7 +1074,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -1164,7 +1164,7 @@ void KingdomGame::GPLogic1() {
 				RestoreAS();
 				_UserInput = 0;
 			} else {
-				_Sound = _LastSound;
+				_sound = _LastSound;
 				PlayMovie(_PMovie);
 			}
 			break;
@@ -1265,7 +1265,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -1344,7 +1344,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			if (_PMovie == 53) {
 				PlayMovie(53);
 				ShowPic(119);
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 3c91d37412..9b8f37d65b 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -146,9 +146,9 @@ void KingdomGame::GPLogic2() {
 			_Nodes[28] = 9;
 		if (_Nodes[28] == 9 || _Nodes[29] != 0) {
 			if (_Wizard)
-				_Sound = 1;
+				_sound = true;
 		} else {
-			_Sound = 0;
+			_sound = false;
 			_Nodes[28] = 1;
 		}
 		PlayMovie(80);
@@ -167,7 +167,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -180,7 +180,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
-		_FstFwd = 0;
+		_fstFwd = falser;
 		PlayMovie(81);
 		_CurrMap = 10;
 		_Nodes[29] = _Nodes[39] = 1;
@@ -208,26 +208,26 @@ void KingdomGame::GPLogic2() {
 				_UserInput = 0;
 				switch (_Nodes[30]) {
 				case 0:
-					_Sound = 0;
+					_sound = false;
 					PlayMovie(82);
 					_CurrMap = 89;
 					_Nodes[30] = 1;
 					break;
 				case 1:
-					_Sound = 1;
+					_sound = true;
 					PlayMovie(82);
 					_CurrMap = 89;
 					_Nodes[30] = 0;
 					break;
 				case 8:
-					_Sound = 0;
+					_sound = false;
 					PlayMovie(85);
 					_CurrMap = 10;
 					_Nodes[30] = 9;
 					_TSIconOnly = 1;
 					break;
 				default:
-					_Sound = 1;
+					_sound = true;
 					PlayMovie(85);
 					_CurrMap = 10;
 					_TSIconOnly = 1;
@@ -267,7 +267,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -299,7 +299,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		} 
@@ -330,7 +330,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x449:
@@ -352,10 +352,10 @@ void KingdomGame::GPLogic2() {
 		_UserInput = 0;
 		IncreaseHealth();
 		if (_Nodes[33] != 9 && _Wizard != 0) {
-			_Sound = 0;
+			_sound = false;
 			_Nodes[33] = 9;
 		} else {
-			_Sound = 1;
+			_sound = true;
 			_Nodes[33] = 1;
 		}
 		PlayMovie(87);
@@ -372,7 +372,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -387,9 +387,9 @@ void KingdomGame::GPLogic2() {
 			DrawLocation();
 			_UserInput = 0;
 			if (_Nodes[32] == 0)
-				_Sound = 0;
+				_sound = false;
 			else
-				_Sound = 1;
+				_sound = true;
 			PlayMovie(88);
 			PlaySound(18);
 			_CurrMap = 10;
@@ -405,7 +405,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -458,7 +458,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			if (_PMovie == 89)
 				ShowPic(389);
@@ -532,9 +532,9 @@ void KingdomGame::GPLogic2() {
 		_NodeNum = 36;
 		DrawLocation();
 		if (_Nodes[37] == 0)
-			_Sound = 0;
+			_sound = false;
 		else
-			_Sound = 1;
+			_sound = true;
 		_FrameStop = 185;
 		DsAll();
 		PlayMovie(94);
@@ -619,7 +619,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -651,7 +651,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -728,7 +728,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 		break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x456:
@@ -763,7 +763,7 @@ void KingdomGame::GPLogic2() {
 				_Nodes[41] = 2;
 			else {
 				_Nodes[41] = 1;
-				_Sound = 1;
+				_sound = true;
 			}
 		} else {
 			DsAll();
@@ -822,7 +822,7 @@ void KingdomGame::GPLogic2() {
 				_Help = 1;
 				_Replay = true;
 				_Pouch = 1;
-				_FstFwd = 1;
+				_fstFwd = true;
 				PlayMovie(107);
 				PlaySound(26);
 				_Nodes[41] = 1;
@@ -834,7 +834,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_ATimer = 0;
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -854,7 +854,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[41])
-			_Sound = 1;
+			_sound = true;
 
 		_Eye = false;
 		PlayMovie(111);
@@ -865,7 +865,7 @@ void KingdomGame::GPLogic2() {
 	case 411:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			if (_PMovie == 120) {
 				SaveAS();
 				_FrameStop = 50;
@@ -923,9 +923,9 @@ void KingdomGame::GPLogic2() {
 				DisplayIcon(136);
 			else {
 				if (_Nodes[35] == 9) {
-					_Sound = 0;
+					_sound = false;
 				} else {
-					_Sound = 1;
+					_sound = true;
 				}
 				PlayMovie(113);
 				InventoryAdd(6);
@@ -941,7 +941,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		
@@ -1036,7 +1036,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_UserInput = 0;
 		if (_Inventory[12] > 0 || _Nodes[44] == 9)
-			_Sound = 1;
+			_sound = true;
 
 		PlayMovie(119);
 		PlaySound(20);
@@ -1052,7 +1052,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x452:
@@ -1075,7 +1075,7 @@ void KingdomGame::GPLogic2() {
 			_CurrMap = 10;
 			_loopFlag = true;
 		} else {
-			_FstFwd = 0;
+			_fstFwd = false;
 			_FrameStop = 50;
 			PlayMovie(120);
 			_CurrMap = 17;
@@ -1085,8 +1085,8 @@ void KingdomGame::GPLogic2() {
 	case 451:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
-			_FstFwd = 0;
+			_sound = _LastSound;
+			_fstFwd = false;
 			_FrameStop = 50;
 			PlayMovie(_PMovie);
 			_CurrMap = 17;
@@ -1108,7 +1108,7 @@ void KingdomGame::GPLogic2() {
 			_Nodes[47] = 1;
 		else {
 			_Nodes[47] = 0;
-			_Sound = 1;
+			_sound = true;
 		}
 		PlayMovie(121);
 		PlaySound(26);
@@ -1118,7 +1118,7 @@ void KingdomGame::GPLogic2() {
 	case 461:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1156,7 +1156,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -1221,7 +1221,7 @@ void KingdomGame::GPLogic2_SubSP361() {
 			if (_Nodes[43] != 1 || _Wizard != 0)
 				_Nodes[43] = 1;
 			else {
-				_Sound = 1;
+				_sound = true;
 				_Nodes[43] = 2;
 			}
 			PlayMovie(122);
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 6d428ecc50..5e1fa56c88 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -46,7 +46,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		default:
 			_Nodes[51] = 1;
-			_Sound = true;
+			_sound = true;
 			PlayMovie(126);
 			_CurrMap = 10;
 			_TSIconOnly = true;
@@ -94,7 +94,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -163,7 +163,7 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[53] == 0)
 			_Nodes[53] = 1;
 		else {
-			_Sound = true;
+			_sound = true;
 			_Nodes[53] = false;
 		}
 		PlayMovie(130);
@@ -184,7 +184,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -200,7 +200,7 @@ void KingdomGame::GPLogic3() {
 		_NodeNum = 53;
 		DrawLocation();
 		_UserInput = 0;
-		_FstFwd = false;
+		_fstFwd = false;
 		if (_Inventory[7] <= 0 && _Wizard)
 			_TSIconOnly = false;
 		else {
@@ -234,7 +234,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_FstFwd = false;
+			_fstFwd = false;
 			if (_Inventory[7] > 0 && _PMovie == 70)
 				_FrameStop = 24;
 			if (!_Wizard && _PMovie == 70)
@@ -269,13 +269,13 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		if (!_Wizard) {
-			_Sound = true;
+			_sound = true;
 			_CurrMap = 55;
 		} else {
 			if (!_Nodes[55])
 				_Nodes[55] = 1;
 			else {
-				_Sound = true;
+				_sound = true;
 				_Nodes[55] = 0;
 			}
 			_CurrMap = 112;
@@ -300,12 +300,12 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			ShowPic(432);
 			break;
 		case 0x453:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(131);
 			PlaySound(32);
 			FShowPic(432);
@@ -457,7 +457,7 @@ void KingdomGame::GPLogic3() {
 		case 0x42C:
 			_ATimer = 0;
 			if (!_Nodes[57]) {
-				_FstFwd = false;
+				_fstFwd = false;
 				_Replay = true;
 				PlayMovie(138);
 				EnAll();
@@ -473,7 +473,7 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			if (!_Nodes[57]) {
 				EnAll();
-				_FstFwd = false;
+				_fstFwd = false;
 				_Replay = true;
 				PlayMovie(137);
 				EnAll();
@@ -490,7 +490,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_FstFwd = false;
+			_fstFwd = false;
 			if (_PMovie == 135 && _Nodes[57]) {
 				_FrameStop = 50;
 				PlayMovie(135);
@@ -529,7 +529,7 @@ void KingdomGame::GPLogic3() {
 	case 570:
 		if (_Nodes[58]) {
 			if (_RtnNode != 34)
-				_Sound = true;
+				_sound = true;
 			_NodeNum = 57;
 			DrawLocation();
 			_Nodes[58] = 0;
@@ -552,7 +552,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -571,7 +571,7 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		switch(_Nodes[59]) {
 		case 0:
-			_Sound = true;
+			_sound = true;
 			PlayMovie(140);
 			_CurrMap = 113;
 			_Nodes[59] = 1;
@@ -589,7 +589,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 9:
 			_TSIconOnly = true;
-			_Sound = true;
+			_sound = true;
 			PlayMovie(143);
 			_CurrMap = 10;
 			break;
@@ -634,7 +634,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -653,7 +653,7 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[60] == 0)
 			_Nodes[60] = 1;
 		else {
-			_Sound = true;
+			_sound = true;
 			_Nodes[60] = 0;
 		}
 		PlayMovie(144);
@@ -671,7 +671,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			ShowPic(444);
 			break;
@@ -712,7 +712,7 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[62] == 0)
 			_Nodes[62] = 1;
 		else
-			_Sound = true;
+			_sound = true;
 
 		PlayMovie(146);
 		if (_Nodes[70] == 9) {
@@ -743,7 +743,7 @@ void KingdomGame::GPLogic3() {
 			_CurrMap = 116;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -853,7 +853,7 @@ void KingdomGame::GPLogic3() {
 		_Eye = false;
 		if (_Nodes[64] == 1 || !_Wizard) {
 			_Nodes[64] = 0;
-			_Sound = true;
+			_sound = true;
 		} else
 			_Nodes[64] = true;
 
@@ -865,7 +865,7 @@ void KingdomGame::GPLogic3() {
 	case 631:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -884,7 +884,7 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[65] || _Wizard) {
-			_Sound = true;
+			_sound = true;
 			_Nodes[65] = 0;
 		} else
 			_Nodes[65] = 1;
@@ -903,7 +903,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_Sound= _LastSound;
+			_sound= _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -922,7 +922,7 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[66] == 0)
 			_Nodes[66] = 1;
 		else {
-			_Sound = true;
+			_sound = true;
 			_Nodes[66] = 0;
 		}
 		PlayMovie(153);
@@ -934,7 +934,7 @@ void KingdomGame::GPLogic3() {
 	case 651:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			ShowPic(453);
 			break;
@@ -968,7 +968,7 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[67] == 0)
 			_Nodes[67] = 1;
 		else {
-			_Sound = true;
+			_sound = true;
 			_Nodes[67] = 0;
 		}
 		PlayMovie(154);
@@ -979,7 +979,7 @@ void KingdomGame::GPLogic3() {
 	case 661:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1009,7 +1009,7 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		_Eye = false;
 		_Nodes[68] = 1;
-		_FstFwd = false;
+		_fstFwd = false;
 		PlayMovie(155);
 		_CurrMap = 127;
 		_statPlay = 671;
@@ -1017,8 +1017,8 @@ void KingdomGame::GPLogic3() {
 	case 671:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
-			_FstFwd = false;
+			_sound = _LastSound;
+			_fstFwd = false;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1123,7 +1123,7 @@ void KingdomGame::GPLogic3() {
 		_Eye = false;
 		if (_Nodes[71] && _Wizard) {
 			_Nodes[71] = 0;
-			_Sound = false;
+			_sound = false;
 		} else
 			_Nodes[71] = 1;
 
@@ -1135,7 +1135,7 @@ void KingdomGame::GPLogic3() {
 	case 701:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1161,7 +1161,7 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		_Eye = false;
 		if (_Inventory[8] && _Inventory[14])
-			_Sound = true;
+			_sound = true;
 		DsAll();
 		PlayMovie(165);
 		_CurrMap = 10;
@@ -1191,9 +1191,9 @@ void KingdomGame::GPLogic3() {
 			_ATimer = 0;
 			_NodeNum = 0;
 			_IconsClosed = true;
-			_FstFwd = false;
+			_fstFwd = false;
 			PlayMovie(167);
-			_FstFwd = false;
+			_fstFwd = false;
 			PlayMovie(170);
 			PlaySound(25);
 			EndCredits();
@@ -1232,9 +1232,9 @@ void KingdomGame::GPLogic3() {
 			} else {
 				_NodeNum = 0;
 				_IconsClosed = true;
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(55);
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(184);
 				PlaySound(25);
 				EndCredits();
@@ -1278,9 +1278,9 @@ void KingdomGame::GPLogic3() {
 			if (_Nodes[72] == 2) {
 				_NodeNum = 0;
 				_IconsClosed = true;
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(56);
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(184);
 				PlaySound(25);
 				EndCredits();
@@ -1372,7 +1372,7 @@ void KingdomGame::GPLogic3() {
 			_Nodes[74] = 1;
 			break;
 		case 1:
-			_Sound = true;
+			_sound = true;
 			_Nodes[74] = 2;
 			break;
 		case 2:
@@ -1394,7 +1394,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			if (_Nodes[74] > 2)
 				_FrameStop = 23;
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -1497,7 +1497,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x432:
 			if (_Nodes[75]) {
-				_Sound = false;
+				_sound = false;
 				_Nodes[75] = false;
 			} else
 				_Nodes[75] = true;
@@ -1533,7 +1533,7 @@ void KingdomGame::GPLogic3() {
 	case 761:
 		switch(_UserInput) {
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1589,9 +1589,9 @@ void KingdomGame::GPLogic3() {
 				InventoryDel(1);
 			} else {
 				_FrameStop = 66;
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(172);
-				_FstFwd = true;
+				_fstFwd = true;
 				PlayMovie(201);
 			}
 
@@ -1600,22 +1600,22 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x439:
 			_FrameStop = 59;
-			_FstFwd = false;
+			_fstFwd = false;
 			PlayMovie(174);
-			_FstFwd = true;
+			_fstFwd = true;
 			PlayMovie(201);
 			FShowPic(471);
 			_CurrMap = 124;
 			break;
 		case 0x43E:
-			_Sound = _LastSound;
+			_sound = _LastSound;
 			if (_PMovie == 173)
 				_FrameStop = 64;
 			if (_PMovie == 201) {
 				_FrameStop = 59;
-				_FstFwd = false;
+				_fstFwd = false;
 				PlayMovie(174);
-				_FstFwd = true;
+				_fstFwd = true;
 				PlayMovie(201);
 			} else {
 				PlayMovie(_PMovie);
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 0827110572..71666f86c8 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -78,7 +78,7 @@ void KingdomGame::GPLogic4() {
 		
 		if (_Health == 0) {
 			PlayMovie(194);
-			_NoIFScreen = 1;
+			_noIFScreen = true;
 			FShowPic(107);
 			_CurrMap = 3;
 			DsAll();
@@ -128,7 +128,7 @@ void KingdomGame::GPLogic4() {
 		
 		if (_Health == 0) {
 			PlayMovie(194);
-			_NoIFScreen = 1;
+			_noIFScreen = true;
 			FShowPic(107);
 			_CurrMap = 3;
 			DsAll();
@@ -176,7 +176,7 @@ void KingdomGame::GPLogic4() {
 		
 		if (_Health == 0) {
 			PlayMovie(194);
-			_NoIFScreen = 1;
+			_noIFScreen = true;
 			FShowPic(107);
 			_CurrMap = 3;
 			DsAll();
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 775b6c160b..704234caf4 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -186,9 +186,9 @@ void KingdomGame::TitlePage() {
 	if (shouldQuit())
 		return;
 
-	_FstFwd = true;
-	_NoIFScreen = true;
-	_Sound = false;
+	_fstFwd = true;
+	_noIFScreen = true;
+	_sound = false;
 	FadeToBlack2();
 	PlayMovie(200);
 	FadeToBlack2();
@@ -239,9 +239,9 @@ void KingdomGame::InitPlay() {
 	_LastObs = false;
 	EnAll();
 	_Pouch = true;
-	_NoIFScreen = true;
+	_noIFScreen = true;
 	_NoMusic = false;
-	_FstFwd = true;
+	_fstFwd = true;
 
 	delete[] _ASPtr;
 	_ASPtr = nullptr;
@@ -342,7 +342,7 @@ void KingdomGame::GameHelp() {
 	case 0x243: {
 		FadeToBlack2();
 		_KeyActive = false;
-		_NoIFScreen = true;
+		_noIFScreen = true;
 		PlaySound(0);
 		int var = _PMovie;
 		while(!_KeyActive) {
@@ -350,7 +350,7 @@ void KingdomGame::GameHelp() {
 			FadeToBlack2();
 		}
 		_PMovie = var;
-		_NoIFScreen = false;
+		_noIFScreen = false;
 		ShowPic(106);
 		DrawHelpScreen();
 		_IconRedraw = true;
@@ -518,7 +518,7 @@ void KingdomGame::EnAll() {
 	_Eye = true;
 	_Replay = true;
 	_Pouch = true;
-	_FstFwd = true;
+	_fstFwd = true;
 }
 
 void KingdomGame::DsAll() {
@@ -526,7 +526,7 @@ void KingdomGame::DsAll() {
 	_Eye = false;
 	_Replay = false;
 	_Pouch = false;
-	_FstFwd = false;
+	_fstFwd = false;
 }
 
 void KingdomGame::SaveAS() {
@@ -775,7 +775,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_gameMode = 0;
 	_ASMode = false;
 	_HealthTmr = 0;
-	_NoIFScreen = false;
+	_noIFScreen = false;
 	_IconRedraw = true;
 	_TreeRightSta = 1;
 	_ATimerFlag = false;
@@ -824,7 +824,7 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 		s.syncAsSint16LE(_Nodes[i]);
 
 	s.syncAsByte(_OldEye);
-	s.syncAsByte(_FstFwd);
+	s.syncAsByte(_fstFwd);
 	s.syncAsByte(_Help);
 	s.syncAsByte(_ItemInhibit);
 	s.syncAsByte(_LastObs);
@@ -1197,7 +1197,7 @@ void KingdomGame::CheckMainScreen() {
 		return;
 
 	_CTimerFlag = false;
-	if (_NoIFScreen)
+	if (_noIFScreen)
 		return;
 
 	if (_HealthOld != _Health) {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 085e58e96e..f23e28ffaf 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -114,9 +114,9 @@ namespace Kingdom {
 		int _gameMode;
 		int _statPlay;
 		int _oldStatPlay;
-		bool _FstFwd;
-		bool _NoIFScreen;
-		bool _Sound;
+		bool _fstFwd;
+		bool _noIFScreen;
+		bool _sound;
 		bool _LastSound;
 		int _FrameStop;
 		int _DaelonCntr;


Commit: ece26af6315a404f819bcaca333b468d3d87b952
    https://github.com/scummvm/scummvm/commit/ece26af6315a404f819bcaca333b468d3d87b952
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Partial implementation of PlayMovie, some more renaming

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 2e8ba3002c..6577f68d17 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -129,7 +129,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -173,7 +173,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -277,7 +277,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -394,7 +394,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -486,7 +486,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			_ATimer = 0;
 			break;
@@ -550,7 +550,7 @@ void KingdomGame::GPLogic1() {
 			if (!_Wizard)
 				_FrameStop = 90;
 
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			if (!_Wizard)
 				ShowPic(109);
@@ -599,7 +599,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -680,7 +680,7 @@ void KingdomGame::GPLogic1() {
 			if (_PMovie == 023)
 				GPLogic1_SubSP121();
 			else {
-				_sound = _LastSound;
+				_sound = _lastSound;
 				PlayMovie(_PMovie);
 				PlaySound(3);
 			}
@@ -726,7 +726,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -750,7 +750,7 @@ void KingdomGame::GPLogic1() {
 	case 151:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			_ATimer = 0;
 			break;
@@ -833,7 +833,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			if (_PMovie > 206)
 				SaveAS();
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			if (_PMovie > 206)
 				RestoreAS();
@@ -1022,7 +1022,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			if (_PMovie == 36 && _Nodes[18] != 9) {
 				_FrameStop = 27;
 				_fstFwd = false;
@@ -1074,7 +1074,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -1164,7 +1164,7 @@ void KingdomGame::GPLogic1() {
 				RestoreAS();
 				_UserInput = 0;
 			} else {
-				_sound = _LastSound;
+				_sound = _lastSound;
 				PlayMovie(_PMovie);
 			}
 			break;
@@ -1265,7 +1265,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -1344,7 +1344,7 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			if (_PMovie == 53) {
 				PlayMovie(53);
 				ShowPic(119);
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 9b8f37d65b..55f4e40383 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -167,7 +167,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -180,7 +180,7 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
-		_fstFwd = falser;
+		_fstFwd = false;
 		PlayMovie(81);
 		_CurrMap = 10;
 		_Nodes[29] = _Nodes[39] = 1;
@@ -267,7 +267,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -299,7 +299,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		} 
@@ -330,7 +330,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x449:
@@ -372,7 +372,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -405,7 +405,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -458,7 +458,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			if (_PMovie == 89)
 				ShowPic(389);
@@ -619,7 +619,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -651,7 +651,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
@@ -728,7 +728,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 		break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x456:
@@ -834,7 +834,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_ATimer = 0;
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -865,7 +865,7 @@ void KingdomGame::GPLogic2() {
 	case 411:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			if (_PMovie == 120) {
 				SaveAS();
 				_FrameStop = 50;
@@ -941,7 +941,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		
@@ -1052,7 +1052,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x452:
@@ -1085,7 +1085,7 @@ void KingdomGame::GPLogic2() {
 	case 451:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			_fstFwd = false;
 			_FrameStop = 50;
 			PlayMovie(_PMovie);
@@ -1118,7 +1118,7 @@ void KingdomGame::GPLogic2() {
 	case 461:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1156,7 +1156,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		}
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 5e1fa56c88..21c4d485c3 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -94,7 +94,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -184,7 +184,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -300,12 +300,12 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			ShowPic(432);
 			break;
 		case 0x453:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(131);
 			PlaySound(32);
 			FShowPic(432);
@@ -552,7 +552,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -634,7 +634,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -671,7 +671,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			ShowPic(444);
 			break;
@@ -743,7 +743,7 @@ void KingdomGame::GPLogic3() {
 			_CurrMap = 116;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -865,7 +865,7 @@ void KingdomGame::GPLogic3() {
 	case 631:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -903,7 +903,7 @@ void KingdomGame::GPLogic3() {
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			_sound= _LastSound;
+			_sound= _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		default:
@@ -934,7 +934,7 @@ void KingdomGame::GPLogic3() {
 	case 651:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			ShowPic(453);
 			break;
@@ -979,7 +979,7 @@ void KingdomGame::GPLogic3() {
 	case 661:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1017,7 +1017,7 @@ void KingdomGame::GPLogic3() {
 	case 671:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			_fstFwd = false;
 			PlayMovie(_PMovie);
 			break;
@@ -1135,7 +1135,7 @@ void KingdomGame::GPLogic3() {
 	case 701:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1394,7 +1394,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			if (_Nodes[74] > 2)
 				_FrameStop = 23;
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
@@ -1533,7 +1533,7 @@ void KingdomGame::GPLogic3() {
 	case 761:
 		switch(_UserInput) {
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
@@ -1608,7 +1608,7 @@ void KingdomGame::GPLogic3() {
 			_CurrMap = 124;
 			break;
 		case 0x43E:
-			_sound = _LastSound;
+			_sound = _lastSound;
 			if (_PMovie == 173)
 				_FrameStop = 64;
 			if (_PMovie == 201) {
diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index e7d647de8b..6fb1a71e51 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -537,6 +537,219 @@ const char *_rezNames[] = {
 	"MovieLF/KLF209.lbm",
 };
 
+const char *_movieNames[] = {
+	"",
+	"Movies/King001.mve",
+	"Movies/King002.mve",
+	"Movies/King003.mve",
+	"Movies/King004.mve",
+	"Movies/King005.mve",
+	"Movies/King006.mve",
+	"Movies/King007.mve",
+	"Movies/King008.mve",
+	"Movies/King009.mve",
+	"Movies/King010.mve",
+	"Movies/King011.mve",
+	"Movies/King012.mve",
+	"Movies/King013.mve",
+	"Movies/King014.mve",
+	"Movies/King015.mve",
+	"Movies/King016.mve",
+	"Movies/King017.mve",
+	"Movies/King018.mve",
+	"Movies/King019.mve",
+	"Movies/King020.mve",
+	"Movies/King021.mve",
+	"Movies/King022.mve",
+	"Movies/King023.mve",
+	"Movies/King024.mve",
+	"Movies/King025.mve",
+	"Movies/King026.mve",
+	"Movies/King027.mve",
+	"Movies/King028.mve",
+	"Movies/King029.mve",
+	"Movies/King030.mve",
+	"Movies/King031.mve",
+	"Movies/King032.mve",
+	"Movies/King033.mve",
+	"Movies/King034.mve",
+	"Movies/King035.mve",
+	"Movies/King036.mve",
+	"Movies/King037.mve",
+	"Movies/King038.mve",
+	"Movies/King039.mve",
+	"Movies/King040.mve",
+	"Movies/King041.mve",
+	"Movies/King042.mve",
+	"Movies/King043.mve",
+	"Movies/King044.mve",
+	"Movies/King045.mve",
+	"Movies/King046.mve",
+	"Movies/King047.mve",
+	"Movies/King048.mve",
+	"Movies/King049.mve",
+	"Movies/King050.mve",
+	"Movies/King051.mve",
+	"Movies/King052.mve",
+	"Movies/King053.mve",
+	"Movies/King054.mve",
+	"Movies/King055.mve",
+	"Movies/King056.mve",
+	"Movies/King057.mve",
+	"Movies/King058.mve",
+	"Movies/King059.mve",
+	"Movies/King060.mve",
+	"Movies/King061.mve",
+	"Movies/King062.mve",
+	"Movies/King063.mve",
+	"Movies/King064.mve",
+	"Movies/King065.mve",
+	"Movies/King066.mve",
+	"Movies/King067.mve",
+	"Movies/King068.mve",
+	"Movies/King069.mve",
+	"Movies/King070.mve",
+	"Movies/King071.mve",
+	"Movies/King072.mve",
+	"Movies/King073.mve",
+	"Movies/King074.mve",
+	"Movies/King075.mve",
+	"Movies/King076.mve",
+	"Movies/King077.mve",
+	"Movies/King078.mve",
+	"Movies/King079.mve",
+	"Movies/King080.mve",
+	"Movies/King081.mve",
+	"Movies/King082.mve",
+	"Movies/King083.mve",
+	"Movies/King084.mve",
+	"Movies/King085.mve",
+	"Movies/King086.mve",
+	"Movies/King087.mve",
+	"Movies/King088.mve",
+	"Movies/King089.mve",
+	"Movies/King090.mve",
+	"Movies/King091.mve",
+	"Movies/King092.mve",
+	"Movies/King093.mve",
+	"Movies/King094.mve",
+	"Movies/King095.mve",
+	"Movies/King096.mve",
+	"Movies/King097.mve",
+	"Movies/King098.mve",
+	"Movies/King099.mve",
+	"Movies/King100.mve",
+	"Movies/King101.mve",
+	"Movies/King102.mve",
+	"Movies/King103.mve",
+	"Movies/King104.mve",
+	"Movies/King105.mve",
+	"Movies/King106.mve",
+	"Movies/King107.mve",
+	"Movies/King108.mve",
+	"Movies/King109.mve",
+	"Movies/King110.mve",
+	"Movies/King111.mve",
+	"Movies/King112.mve",
+	"Movies/King113.mve",
+	"Movies/King114.mve",
+	"Movies/King115.mve",
+	"Movies/King116.mve",
+	"Movies/King117.mve",
+	"Movies/King118.mve",
+	"Movies/King119.mve",
+	"Movies/King120.mve",
+	"Movies/King121.mve",
+	"Movies/King122.mve",
+	"Movies/King123.mve",
+	"Movies/King124.mve",
+	"Movies/King125.mve",
+	"Movies/King126.mve",
+	"Movies/King127.mve",
+	"Movies/King128.mve",
+	"Movies/King129.mve",
+	"Movies/King130.mve",
+	"Movies/King131.mve",
+	"Movies/King132.mve",
+	"Movies/King133.mve",
+	"Movies/King134.mve",
+	"Movies/King135.mve",
+	"Movies/King136.mve",
+	"Movies/King137.mve",
+	"Movies/King138.mve",
+	"Movies/King139.mve",
+	"Movies/King140.mve",
+	"Movies/King141.mve",
+	"Movies/King142.mve",
+	"Movies/King143.mve",
+	"Movies/King144.mve",
+	"Movies/King145.mve",
+	"Movies/King146.mve",
+	"Movies/King147.mve",
+	"Movies/King148.mve",
+	"Movies/King149.mve",
+	"Movies/King150.mve",
+	"Movies/King151.mve",
+	"Movies/King152.mve",
+	"Movies/King153.mve",
+	"Movies/King154.mve",
+	"Movies/King155.mve",
+	"Movies/King156.mve",
+	"Movies/King157.mve",
+	"Movies/King158.mve",
+	"Movies/King159.mve",
+	"Movies/King160.mve",
+	"Movies/King161.mve",
+	"Movies/King162.mve",
+	"Movies/King163.mve",
+	"Movies/King164.mve",
+	"Movies/King165.mve",
+	"Movies/King166.mve",
+	"Movies/King167.mve",
+	"Movies/King168.mve",
+	"Movies/King169.mve",
+	"Movies/King170.mve",
+	"Movies/King171.mve",
+	"Movies/King172.mve",
+	"Movies/King173.mve",
+	"Movies/King174.mve",
+	"Movies/King175.mve",
+	"Movies/King176.mve",
+	"Movies/King177.mve",
+	"Movies/King178.mve",
+	"Movies/King179.mve",
+	"Movies/King180.mve",
+	"Movies/King181.mve",
+	"Movies/King182.mve",
+	"Movies/King183.mve",
+	"Movies/King184.mve",
+	"Movies/King185.mve",
+	"Movies/King186.mve",
+	"Movies/King187.mve",
+	"Movies/King188.mve",
+	"Movies/King189.mve",
+	"Movies/King190.mve",
+	"Movies/King191.mve",
+	"Movies/King192.mve",
+	"Movies/King193.mve",
+	"Movies/King194.mve",
+	"Movies/King195.mve",
+	"Movies/King196.mve",
+	"Movies/King197.mve",
+	"Movies/King198.mve",
+	"Movies/King199.mve",
+	"Movies/King200.mve",
+	"Movies/King201.mve",
+	"Movies/King202.mve",
+	"Movies/King203.mve",
+	"Movies/King204.mve",
+	"Movies/King205.mve",
+	"Movies/King206.mve",
+	"Movies/King207.mve",
+	"Movies/King208.mve",
+	"Movies/King209.mve"
+};
+
 int _mapExit[] = {
 	  0, 100,  90,  50, 420, 550, 110,  70,  80, 180,
 	190, 200, 210, 230, 240, 300, 290, 330, 360, 310,
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 704234caf4..cc85b4ac30 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -511,6 +511,63 @@ void KingdomGame::InitMPlayer() {
 
 void KingdomGame::PlayMovie(int movieNum) {
 	debug("STUB: PlayMovie");
+
+	if (movieNum == 1 || movieNum == 3 || movieNum == 54 || movieNum == 198 || movieNum == 200 || movieNum == 206)
+		_fullScreen = true;
+	else
+		_fullScreen = false;
+
+	_mixer->stopAll();
+
+	_ATimer = 0;
+	_ASMode = 0;
+
+	EraseCursor();
+
+	if (!_fullScreen) {
+		_TreeLeftSta = (_fstFwd == 0) ? 0 : 1;
+		_TreeRightSta = 0;
+		_IconSel = _IconSelect;
+		_IconsClosed = true;
+		CheckMainScreen();
+		SetMouse();
+		_OldCursorX = _CursorX;
+		_OldCursorY = _CursorY;
+	}
+
+	_PMovie = movieNum;
+	ReadMouse();
+	_MouseButton = 0;
+	_KeyActive = false;
+	const char *path = _movieNames[movieNum];
+	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
+	// That can be replaced by an error()
+
+	/* Original behavior. To be uncommented when the codec is available
+	_track = _sound;
+	_vidState = 0;
+
+	if (_fullScreen)
+		MVE_RunMovie(fileHandle, 0, 0, _track);
+	else
+		MVE_RunMovie(fileHandle, 6, 17, _track);
+	
+	MVE_ReleaseMem();
+	*/
+
+	if (!_fullScreen) {
+		_TreeRightSta = 1;
+		_IconsClosed = false;
+		_IconSel = 9;
+		_TreeLeftSta = _Replay == 0 ? 0 : 2;
+		CheckMainScreen();
+		DrawCursor();
+		_fstFwd = true;
+		_FrameStop = 0;
+		_lastSound = _sound;
+		_sound = false;
+		_UserInput = 0;
+	}
 }
 
 void KingdomGame::EnAll() {
@@ -828,7 +885,7 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsByte(_Help);
 	s.syncAsByte(_ItemInhibit);
 	s.syncAsByte(_LastObs);
-	s.syncAsByte(_LastSound);
+	s.syncAsByte(_lastSound);
 	s.syncAsByte(_MapEx);
 	s.syncAsByte(_NoMusic);
 	s.syncAsByte(_OldPouch);
@@ -939,7 +996,7 @@ void KingdomGame::PlaySound(int idx) {
 }
 
 void KingdomGame::EraseCursor() {
-	debug("STUB: EraseCursor");
+	CursorMan.showMouse(false);
 }
 
 void KingdomGame::ReadMouse() {
@@ -992,7 +1049,7 @@ void KingdomGame::GetUserInput() {
 }
 
 void KingdomGame::EraseCursorAsm() {
-	debug("STUB: EraseCursorAsm");
+	CursorMan.showMouse(false);
 }
 
 void KingdomGame::DrawLocation() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index f23e28ffaf..f90755287b 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -72,6 +72,7 @@ namespace Kingdom {
 	};
 
 	extern const char *_rezNames[];
+	extern const char *_movieNames[];
 	extern int _mapExit[];
 	extern int _emlTable[];
 	extern int _zoomTable[81][9][2];
@@ -117,7 +118,8 @@ namespace Kingdom {
 		bool _fstFwd;
 		bool _noIFScreen;
 		bool _sound;
-		bool _LastSound;
+		bool _lastSound;
+		bool _fullScreen;
 		int _FrameStop;
 		int _DaelonCntr;
 		bool _Spell1;
@@ -174,7 +176,7 @@ namespace Kingdom {
 		int _OldNode;
 		int _NextNode;
 		int _RobberyNode;
-		bool _CursorDrawn;
+		bool _CursorDrawn; // CHECKME: Useless
 		bool _Wizard;
 		int _Zoom;
 		bool _Resurrect;


Commit: 1aab6bbd0e1622240e9707cf6858dd4b570c8e42
    https://github.com/scummvm/scummvm/commit/1aab6bbd0e1622240e9707cf6858dd4b570c8e42
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Use SearchMan, simplify filename arrays accordingly

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 6fb1a71e51..934ab32678 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -26,728 +26,728 @@ namespace Kingdom {
 
 const char *_rezNames[] = {
 	"",
-	"Maps/KMAP001.lbm",
-	"Maps/KMAP002.lbm",
-	"Maps/KMAP003.lbm",
-	"Maps/KMAP004.lbm",
-	"Maps/KMAP005.lbm",
-	"Maps/KMAP006.lbm",
-	"Maps/KMAP007.lbm",
-	"Maps/KMAP008.lbm",
-	"Maps/KMAP009.lbm",
-	"Maps/KMAP010.lbm",
-	"Maps/KMAP011.lbm",
-	"Maps/KMAP012.lbm",
-	"Maps/KMAP013.lbm",
-	"Maps/KMAP014.lbm",
-	"Maps/KMAP015.lbm",
-	"Maps/KMAP016.lbm",
-	"Maps/KMAP017.lbm",
-	"Maps/KMAP018.lbm",
-	"Maps/KMAP019.lbm",
-	"Maps/KMAP020.lbm",
-	"Maps/KMAP021.lbm",
-	"Maps/KMAP022.lbm",
-	"Maps/KMAP023.lbm",
-	"Maps/KMAP024.lbm",
-	"Maps/KMAP025.lbm",
-	"Maps/KMAP026.lbm",
-	"Maps/KMAP027.lbm",
-	"Maps/KMAP028.lbm",
-	"Maps/KMAP029.lbm",
-	"Maps/KMAP030.lbm",
-	"Maps/KMAP031.lbm",
-	"Maps/KMAP032.lbm",
-	"Maps/KMAP033.lbm",
-	"Maps/KMAP034.lbm",
-	"Maps/KMAP035.lbm",
-	"Maps/KMAP036.lbm",
-	"Maps/KMAP037.lbm",
-	"Maps/KMAP038.lbm",
-	"Maps/KMAP039.lbm",
-	"Maps/KMAP040.lbm",
-	"Maps/KMAP041.lbm",
-	"Maps/KMAP042.lbm",
-	"Maps/KMAP043.lbm",
-	"Maps/KMAP044.lbm",
-	"Maps/KMAP045.lbm",
-	"Maps/KMAP046.lbm",
-	"Maps/KMAP047.lbm",
-	"Maps/KMAP048.lbm",
-	"Maps/KMAP049.lbm",
-	"Maps/KMAP050.lbm",
-	"Maps/KMAP051.lbm",
-	"Maps/KMAP052.lbm",
-	"Maps/KMAP053.lbm",
-	"Maps/KMAP054.lbm",
-	"Maps/KMAP055.lbm",
-	"Maps/KMAP056.lbm",
-	"Maps/KMAP057.lbm",
-	"Maps/KMAP058.lbm",
-	"Maps/KMAP059.lbm",
-	"Maps/KMAP060.lbm",
-	"Maps/KMAP061.lbm",
-	"Maps/KMAP062.lbm",
-	"Maps/KMAP063.lbm",
-	"Maps/KMAP064.lbm",
-	"Maps/KMAP065.lbm",
-	"Maps/KMAP066.lbm",
-	"Maps/KMAP067.lbm",
-	"Maps/KMAP068.lbm",
-	"Maps/KMAP069.lbm",
-	"Maps/KMAP070.lbm",
-	"Maps/KMAP071.lbm",
-	"Maps/KMAP072.lbm",
-	"Maps/KMAP073.lbm",
-	"Maps/KMAP074.lbm",
-	"Maps/KMAP075.lbm",
-	"Maps/KMAP076.lbm",
-	"Maps/KMAP077.lbm",
-	"Maps/KMAP078.lbm",
-	"Maps/KMAP079.lbm",
-	"Maps/KMAP080.lbm",
-	"Maps/KMAP081.lbm",
-	"Maps/KMAP082.lbm",
-	"Maps/KMAP083.lbm",
-	"Maps/KMAP084.lbm",
-	"Maps/KMAP085.lbm",
-	"Maps/KMAP086.lbm",
-	"Maps/KMAP087.lbm",
-	"Maps/KMAP088.lbm",
-	"Maps/KMAP089.lbm",
-	"Maps/KMAP090.lbm",
-	"Maps/KMAP091.lbm",
-	"Maps/KMAP092.lbm",
-	"Maps/KMAP093.lbm",
-	"Maps/KMAP094.lbm",
-	"Maps/KMAP095.lbm",
-	"Maps/KMAP096.lbm",
-	"Maps/KMAP097.lbm",
-	"Maps/KMAP098.lbm",
-	"Maps/KMAP099.lbm",
-	"Maps/KMAP100.lbm",
-	"Maps/KMAP101.lbm",
-	"Maps/KMAP102.lbm",
-	"Maps/KMAP103.lbm",
-	"Pics/KSndCard.lbm",
-	"Pics/KBook.lbm",
-	"Pics/KInterF.lbm",
-	"Pics/KGamOver.lbm",
-	"Pics/KPouch.lbm",
-	"Pics/KForest.lbm",
-	"Pics/KArtist.lbm",
-	"Pics/K4.lbm",
-	"Pics/K5.lbm",
-	"Pics/K6.lbm",
-	"Pics/KRestore.lbm",
-	"Pics/KINIT.lbm",
-	"Pics/KASKS1.lbm",
-	"Pics/KASKS2.lbm",
-	"Pics/KASKS3.lbm",
-	"Pics/KIlleSgn.lbm",
-	"Pics/KTSMAP.lbm",
-	"Pics/KPORHELH.lbm",
-	"Pics/KGSaved.lbm",
-	"Pics/KDoor.lbm",
-	"Pics/KLogo.lbm",
-	"Pics/KEOG.lbm",
-	"Pics/K8.lbm",
-	"Pics/K9.lbm",
-	"Pics/KPalace3.lbm",
-	"Pics/KBKenter.lbm",
-	"Pics/KIUNDER.lbm",
-	"Pics/KISEEING.lbm",
-	"Pics/KIRELESE.lbm",
-	"Pics/KITRAVEL.lbm",
-	"Pics/KIXTAL.lbm",
-	"Pics/KICFIRE.lbm",
-	"Pics/KIOSEAL.lbm",
-	"Pics/KISTAFF.lbm",
-	"Pics/KISWORD.lbm",
-	"Pics/KISEPTER.lbm",
-	"Pics/KIBOW.lbm",
-	"Pics/KICOINS.lbm",
-	"Pics/KICHALIC.lbm",
-	"Pics/KIWHEAT.lbm",
-	"Pics/KIRUNES.lbm",
-	"Pics/KRMACE.lbm",
-	"Pics/KRHORN.lbm",
-	"Pics/KRORB.lbm",
-	"Pics/K10.lbm",
-	"Pics/K11.lbm",
-	"Pics/KEMACE.lbm",
-	"Pics/kingArt.art",
-	"Pics/K12.lbm",
-	"Pics/K13.lbm",
-	"Pics/K14.lbm",
-	"Pics/K15.lbm",
-	"Pics/K16.lbm",
-	"Pics/K17.lbm",
-	"Pics/K18.lbm",
-	"Pics/K19.lbm",
-	"Pics/K20.lbm",
-	"Pics/KHelp01.lbm",
-	"Pics/KHelp02.lbm",
-	"Pics/KHelp03.lbm",
-	"Pics/KHelp04.lbm",
-	"Pics/KHelp05.lbm",
-	"Pics/KHelp06.lbm",
-	"Pics/KHelp07.lbm",
-	"Pics/KHelp08.lbm",
-	"Pics/KHelp09.lbm",
-	"Pics/KHelp10.lbm",
-	"Pics/KHelp11.lbm",
-	"Pics/KHelp12.lbm",
-	"Pics/K21.lbm",
-	"Pics/K22.lbm",
-	"Pics/K23.lbm",
-	"Pics/K24.lbm",
-	"Pics/K25.lbm",
-	"Pics/KTideOn.lbm",
-	"Pics/KTideOff.lbm",
-	"Pics/K26.lbm",
-	"Pics/K27.lbm",
-	"Pics/K28.lbm",
-	"Pics/K29.lbm",
-	"Pics/K30.lbm",
-	"Pics/K31.lbm",
-	"Pics/K32.lbm",
-	"Pics/K33.lbm",
-	"Pics/K34.lbm",
-	"Pics/K35.lbm",
-	"Pics/K36.lbm",
-	"Pics/K37.lbm",
-	"Pics/K38.lbm",
-	"Pics/K39.lbm",
-	"Pics/K40.lbm",
-	"Pics/K41.lbm",
-	"Pics/K42.lbm",
-	"Pics/K43.lbm",
-	"Pics/StrtDemo.lbm",
-	"Pics/EndDemo.lbm",
-	"Pics/TST.lbm",
-	"SoundS/L1.ssd",
-	"SoundS/L2.ssd",
-	"SoundS/L3.ssd",
-	"SoundS/L4.ssd",
-	"SoundS/L5.ssd",
-	"SoundS/L6.ssd",
-	"SoundS/L7.ssd",
-	"SoundS/L8.ssd",
-	"SoundS/L9.ssd",
-	"SoundS/L10.ssd",
-	"SoundS/L11.ssd",
-	"SoundS/L12.ssd",
-	"SoundS/L13.ssd",
-	"SoundS/L14.ssd",
-	"SoundS/L15.ssd",
-	"SoundS/L16.ssd",
-	"SoundS/L17.ssd",
-	"SoundS/L18.ssd",
-	"SoundS/L19.ssd",
-	"SoundS/L20.ssd",
-	"SoundS/L21.ssd",
-	"SoundS/L22.ssd",
-	"SoundS/L23.ssd",
-	"SoundS/L24.ssd",
-	"SoundS/L25.ssd",
-	"SoundS/L26.ssd",
-	"SoundS/L27.ssd",
-	"SoundS/L28.ssd",
-	"SoundS/L29.ssd",
-	"SoundS/L30.ssd",
-	"SoundS/L31.ssd",
-	"SoundS/L32.ssd",
-	"SoundS/L33.ssd",
-	"SoundS/L34.ssd",
-	"SoundS/L35.ssd",
-	"SoundS/L36.ssd",
-	"SoundS/L37.ssd",
-	"SoundS/L38.ssd",
-	"SoundS/L39.ssd",
-	"SoundS/L40.ssd",
-	"SoundS/L41.ssd",
-	"SoundS/L42.ssd",
-	"SoundS/L43.ssd",
-	"SoundS/L44.ssd",
-	"SoundS/L45.ssd",
-	"SoundS/L46.ssd",
-	"SoundS/L47.ssd",
-	"SoundS/L48.ssd",
-	"SoundS/L49.ssd",
-	"SoundS/L50.ssd",
-	"SoundM/L1.msd",
-	"SoundM/L2.msd",
-	"SoundM/L3.msd",
-	"SoundM/L4.msd",
-	"SoundM/L5.msd",
-	"SoundM/L6.msd",
-	"SoundM/L7.msd",
-	"SoundM/L8.msd",
-	"SoundM/L9.msd",
-	"SoundM/L10.msd",
-	"SoundM/L11.msd",
-	"SoundM/L12.msd",
-	"SoundM/L13.msd",
-	"SoundM/L14.msd",
-	"SoundM/L15.msd",
-	"SoundM/L16.msd",
-	"SoundM/L17.msd",
-	"SoundM/L18.msd",
-	"SoundM/L19.msd",
-	"SoundM/L20.msd",
-	"SoundM/L21.msd",
-	"SoundM/L22.msd",
-	"SoundM/L23.msd",
-	"SoundM/L24.msd",
-	"SoundM/L25.msd",
-	"SoundM/L26.msd",
-	"SoundM/L27.msd",
-	"SoundM/L28.msd",
-	"SoundM/L29.msd",
-	"SoundM/L30.msd",
-	"SoundM/L31.msd",
-	"SoundM/L32.msd",
-	"SoundM/L33.msd",
-	"SoundM/L34.msd",
-	"SoundM/L35.msd",
-	"SoundM/L36.msd",
-	"SoundM/L37.msd",
-	"SoundM/L38.msd",
-	"SoundM/L39.msd",
-	"SoundM/L40.msd",
-	"SoundM/L41.msd",
-	"SoundM/L42.msd",
-	"SoundM/L43.msd",
-	"SoundM/L44.msd",
-	"SoundM/L45.msd",
-	"SoundM/L46.msd",
-	"SoundM/L47.msd",
-	"SoundM/L48.msd",
-	"SoundM/L49.msd",
-	"SoundM/L50.msd",
-	"MovieLF/KLF001.lbm",
-	"MovieLF/KLF002.lbm",
-	"MovieLF/KLF003.lbm",
-	"MovieLF/KLF004.lbm",
-	"MovieLF/KLF005.lbm",
-	"MovieLF/KLF006.lbm",
-	"MovieLF/KLF007.lbm",
-	"MovieLF/KLF008.lbm",
-	"MovieLF/KLF009.lbm",
-	"MovieLF/KLF010.lbm",
-	"MovieLF/KLF011.lbm",
-	"MovieLF/KLF012.lbm",
-	"MovieLF/KLF013.lbm",
-	"MovieLF/KLF014.lbm",
-	"MovieLF/KLF015.lbm",
-	"MovieLF/KLF016.lbm",
-	"MovieLF/KLF017.lbm",
-	"MovieLF/KLF018.lbm",
-	"MovieLF/KLF019.lbm",
-	"MovieLF/KLF020.lbm",
-	"MovieLF/KLF021.lbm",
-	"MovieLF/KLF022.lbm",
-	"MovieLF/KLF023.lbm",
-	"MovieLF/KLF024.lbm",
-	"MovieLF/KLF025.lbm",
-	"MovieLF/KLF026.lbm",
-	"MovieLF/KLF027.lbm",
-	"MovieLF/KLF028.lbm",
-	"MovieLF/KLF029.lbm",
-	"MovieLF/KLF030.lbm",
-	"MovieLF/KLF031.lbm",
-	"MovieLF/KLF032.lbm",
-	"MovieLF/KLF033.lbm",
-	"MovieLF/KLF034.lbm",
-	"MovieLF/KLF035.lbm",
-	"MovieLF/KLF036.lbm",
-	"MovieLF/KLF037.lbm",
-	"MovieLF/KLF038.lbm",
-	"MovieLF/KLF039.lbm",
-	"MovieLF/KLF040.lbm",
-	"MovieLF/KLF041.lbm",
-	"MovieLF/KLF042.lbm",
-	"MovieLF/KLF043.lbm",
-	"MovieLF/KLF044.lbm",
-	"MovieLF/KLF045.lbm",
-	"MovieLF/KLF046.lbm",
-	"MovieLF/KLF047.lbm",
-	"MovieLF/KLF048.lbm",
-	"MovieLF/KLF049.lbm",
-	"MovieLF/KLF050.lbm",
-	"MovieLF/KLF051.lbm",
-	"MovieLF/KLF052.lbm",
-	"MovieLF/KLF053.lbm",
-	"MovieLF/KLF054.lbm",
-	"MovieLF/KLF055.lbm",
-	"MovieLF/KLF056.lbm",
-	"MovieLF/KLF057.lbm",
-	"MovieLF/KLF058.lbm",
-	"MovieLF/KLF059.lbm",
-	"MovieLF/KLF060.lbm",
-	"MovieLF/KLF061.lbm",
-	"MovieLF/KLF062.lbm",
-	"MovieLF/KLF063.lbm",
-	"MovieLF/KLF064.lbm",
-	"MovieLF/KLF065.lbm",
-	"MovieLF/KLF066.lbm",
-	"MovieLF/KLF067.lbm",
-	"MovieLF/KLF068.lbm",
-	"MovieLF/KLF069.lbm",
-	"MovieLF/KLF070.lbm",
-	"MovieLF/KLF071.lbm",
-	"MovieLF/KLF072.lbm",
-	"MovieLF/KLF073.lbm",
-	"MovieLF/KLF074.lbm",
-	"MovieLF/KLF075.lbm",
-	"MovieLF/KLF076.lbm",
-	"MovieLF/KLF077.lbm",
-	"MovieLF/KLF078.lbm",
-	"MovieLF/KLF079.lbm",
-	"MovieLF/KLF080.lbm",
-	"MovieLF/KLF081.lbm",
-	"MovieLF/KLF082.lbm",
-	"MovieLF/KLF083.lbm",
-	"MovieLF/KLF084.lbm",
-	"MovieLF/KLF085.lbm",
-	"MovieLF/KLF086.lbm",
-	"MovieLF/KLF087.lbm",
-	"MovieLF/KLF088.lbm",
-	"MovieLF/KLF089.lbm",
-	"MovieLF/KLF090.lbm",
-	"MovieLF/KLF091.lbm",
-	"MovieLF/KLF092.lbm",
-	"MovieLF/KLF093.lbm",
-	"MovieLF/KLF094.lbm",
-	"MovieLF/KLF095.lbm",
-	"MovieLF/KLF096.lbm",
-	"MovieLF/KLF097.lbm",
-	"MovieLF/KLF098.lbm",
-	"MovieLF/KLF099.lbm",
-	"MovieLF/KLF100.lbm",
-	"MovieLF/KLF101.lbm",
-	"MovieLF/KLF102.lbm",
-	"MovieLF/KLF103.lbm",
-	"MovieLF/KLF104.lbm",
-	"MovieLF/KLF105.lbm",
-	"MovieLF/KLF106.lbm",
-	"MovieLF/KLF107.lbm",
-	"MovieLF/KLF108.lbm",
-	"MovieLF/KLF109.lbm",
-	"MovieLF/KLF110.lbm",
-	"MovieLF/KLF111.lbm",
-	"MovieLF/KLF112.lbm",
-	"MovieLF/KLF113.lbm",
-	"MovieLF/KLF114.lbm",
-	"MovieLF/KLF115.lbm",
-	"MovieLF/KLF116.lbm",
-	"MovieLF/KLF117.lbm",
-	"MovieLF/KLF118.lbm",
-	"MovieLF/KLF119.lbm",
-	"MovieLF/KLF120.lbm",
-	"MovieLF/KLF121.lbm",
-	"MovieLF/KLF122.lbm",
-	"MovieLF/KLF123.lbm",
-	"MovieLF/KLF124.lbm",
-	"MovieLF/KLF125.lbm",
-	"MovieLF/KLF126.lbm",
-	"MovieLF/KLF127.lbm",
-	"MovieLF/KLF128.lbm",
-	"MovieLF/KLF129.lbm",
-	"MovieLF/KLF130.lbm",
-	"MovieLF/KLF131.lbm",
-	"MovieLF/KLF132.lbm",
-	"MovieLF/KLF133.lbm",
-	"MovieLF/KLF134.lbm",
-	"MovieLF/KLF135.lbm",
-	"MovieLF/KLF136.lbm",
-	"MovieLF/KLF137.lbm",
-	"MovieLF/KLF138.lbm",
-	"MovieLF/KLF139.lbm",
-	"MovieLF/KLF140.lbm",
-	"MovieLF/KLF141.lbm",
-	"MovieLF/KLF142.lbm",
-	"MovieLF/KLF143.lbm",
-	"MovieLF/KLF144.lbm",
-	"MovieLF/KLF145.lbm",
-	"MovieLF/KLF146.lbm",
-	"MovieLF/KLF147.lbm",
-	"MovieLF/KLF148.lbm",
-	"MovieLF/KLF149.lbm",
-	"MovieLF/KLF150.lbm",
-	"MovieLF/KLF151.lbm",
-	"MovieLF/KLF152.lbm",
-	"MovieLF/KLF153.lbm",
-	"MovieLF/KLF154.lbm",
-	"MovieLF/KLF155.lbm",
-	"MovieLF/KLF156.lbm",
-	"MovieLF/KLF157.lbm",
-	"MovieLF/KLF158.lbm",
-	"MovieLF/KLF159.lbm",
-	"MovieLF/KLF160.lbm",
-	"MovieLF/KLF161.lbm",
-	"MovieLF/KLF162.lbm",
-	"MovieLF/KLF163.lbm",
-	"MovieLF/KLF164.lbm",
-	"MovieLF/KLF165.lbm",
-	"MovieLF/KLF166.lbm",
-	"MovieLF/KLF167.lbm",
-	"MovieLF/KLF168.lbm",
-	"MovieLF/KLF169.lbm",
-	"MovieLF/KLF170.lbm",
-	"MovieLF/KLF171.lbm",
-	"MovieLF/KLF172.lbm",
-	"MovieLF/KLF173.lbm",
-	"MovieLF/KLF174.lbm",
-	"MovieLF/KLF175.lbm",
-	"MovieLF/KLF176.lbm",
-	"MovieLF/KLF177.lbm",
-	"MovieLF/KLF178.lbm",
-	"MovieLF/KLF179.lbm",
-	"MovieLF/KLF180.lbm",
-	"MovieLF/KLF181.lbm",
-	"MovieLF/KLF182.lbm",
-	"MovieLF/KLF183.lbm",
-	"MovieLF/KLF184.lbm",
-	"MovieLF/KLF185.lbm",
-	"MovieLF/KLF186.lbm",
-	"MovieLF/KLF187.lbm",
-	"MovieLF/KLF188.lbm",
-	"MovieLF/KLF189.lbm",
-	"MovieLF/KLF190.lbm",
-	"MovieLF/KLF191.lbm",
-	"MovieLF/KLF192.lbm",
-	"MovieLF/KLF193.lbm",
-	"MovieLF/KLF194.lbm",
-	"MovieLF/KLF195.lbm",
-	"MovieLF/KLF196.lbm",
-	"MovieLF/KLF197.lbm",
-	"MovieLF/KLF198.lbm",
-	"MovieLF/KLF199.lbm",
-	"MovieLF/KLF200.lbm",
-	"MovieLF/KLF201.lbm",
-	"MovieLF/KLF202.lbm",
-	"MovieLF/KLF203.lbm",
-	"MovieLF/KLF204.lbm",
-	"MovieLF/KLF205.lbm",
-	"MovieLF/KLF206.lbm",
-	"MovieLF/KLF207.lbm",
-	"MovieLF/KLF208.lbm",
-	"MovieLF/KLF209.lbm",
+	"KMAP001.lbm",
+	"KMAP002.lbm",
+	"KMAP003.lbm",
+	"KMAP004.lbm",
+	"KMAP005.lbm",
+	"KMAP006.lbm",
+	"KMAP007.lbm",
+	"KMAP008.lbm",
+	"KMAP009.lbm",
+	"KMAP010.lbm",
+	"KMAP011.lbm",
+	"KMAP012.lbm",
+	"KMAP013.lbm",
+	"KMAP014.lbm",
+	"KMAP015.lbm",
+	"KMAP016.lbm",
+	"KMAP017.lbm",
+	"KMAP018.lbm",
+	"KMAP019.lbm",
+	"KMAP020.lbm",
+	"KMAP021.lbm",
+	"KMAP022.lbm",
+	"KMAP023.lbm",
+	"KMAP024.lbm",
+	"KMAP025.lbm",
+	"KMAP026.lbm",
+	"KMAP027.lbm",
+	"KMAP028.lbm",
+	"KMAP029.lbm",
+	"KMAP030.lbm",
+	"KMAP031.lbm",
+	"KMAP032.lbm",
+	"KMAP033.lbm",
+	"KMAP034.lbm",
+	"KMAP035.lbm",
+	"KMAP036.lbm",
+	"KMAP037.lbm",
+	"KMAP038.lbm",
+	"KMAP039.lbm",
+	"KMAP040.lbm",
+	"KMAP041.lbm",
+	"KMAP042.lbm",
+	"KMAP043.lbm",
+	"KMAP044.lbm",
+	"KMAP045.lbm",
+	"KMAP046.lbm",
+	"KMAP047.lbm",
+	"KMAP048.lbm",
+	"KMAP049.lbm",
+	"KMAP050.lbm",
+	"KMAP051.lbm",
+	"KMAP052.lbm",
+	"KMAP053.lbm",
+	"KMAP054.lbm",
+	"KMAP055.lbm",
+	"KMAP056.lbm",
+	"KMAP057.lbm",
+	"KMAP058.lbm",
+	"KMAP059.lbm",
+	"KMAP060.lbm",
+	"KMAP061.lbm",
+	"KMAP062.lbm",
+	"KMAP063.lbm",
+	"KMAP064.lbm",
+	"KMAP065.lbm",
+	"KMAP066.lbm",
+	"KMAP067.lbm",
+	"KMAP068.lbm",
+	"KMAP069.lbm",
+	"KMAP070.lbm",
+	"KMAP071.lbm",
+	"KMAP072.lbm",
+	"KMAP073.lbm",
+	"KMAP074.lbm",
+	"KMAP075.lbm",
+	"KMAP076.lbm",
+	"KMAP077.lbm",
+	"KMAP078.lbm",
+	"KMAP079.lbm",
+	"KMAP080.lbm",
+	"KMAP081.lbm",
+	"KMAP082.lbm",
+	"KMAP083.lbm",
+	"KMAP084.lbm",
+	"KMAP085.lbm",
+	"KMAP086.lbm",
+	"KMAP087.lbm",
+	"KMAP088.lbm",
+	"KMAP089.lbm",
+	"KMAP090.lbm",
+	"KMAP091.lbm",
+	"KMAP092.lbm",
+	"KMAP093.lbm",
+	"KMAP094.lbm",
+	"KMAP095.lbm",
+	"KMAP096.lbm",
+	"KMAP097.lbm",
+	"KMAP098.lbm",
+	"KMAP099.lbm",
+	"KMAP100.lbm",
+	"KMAP101.lbm",
+	"KMAP102.lbm",
+	"KMAP103.lbm",
+	"KSndCard.lbm",
+	"KBook.lbm",
+	"KInterF.lbm",
+	"KGamOver.lbm",
+	"KPouch.lbm",
+	"KForest.lbm",
+	"KArtist.lbm",
+	"K4.lbm",
+	"K5.lbm",
+	"K6.lbm",
+	"KRestore.lbm",
+	"KINIT.lbm",
+	"KASKS1.lbm",
+	"KASKS2.lbm",
+	"KASKS3.lbm",
+	"KIlleSgn.lbm",
+	"KTSMAP.lbm",
+	"KPORHELH.lbm",
+	"KGSaved.lbm",
+	"KDoor.lbm",
+	"KLogo.lbm",
+	"KEOG.lbm",
+	"K8.lbm",
+	"K9.lbm",
+	"KPalace3.lbm",
+	"KBKenter.lbm",
+	"KIUNDER.lbm",
+	"KISEEING.lbm",
+	"KIRELESE.lbm",
+	"KITRAVEL.lbm",
+	"KIXTAL.lbm",
+	"KICFIRE.lbm",
+	"KIOSEAL.lbm",
+	"KISTAFF.lbm",
+	"KISWORD.lbm",
+	"KISEPTER.lbm",
+	"KIBOW.lbm",
+	"KICOINS.lbm",
+	"KICHALIC.lbm",
+	"KIWHEAT.lbm",
+	"KIRUNES.lbm",
+	"KRMACE.lbm",
+	"KRHORN.lbm",
+	"KRORB.lbm",
+	"K10.lbm",
+	"K11.lbm",
+	"KEMACE.lbm",
+	"kingArt.art",
+	"K12.lbm",
+	"K13.lbm",
+	"K14.lbm",
+	"K15.lbm",
+	"K16.lbm",
+	"K17.lbm",
+	"K18.lbm",
+	"K19.lbm",
+	"K20.lbm",
+	"KHelp01.lbm",
+	"KHelp02.lbm",
+	"KHelp03.lbm",
+	"KHelp04.lbm",
+	"KHelp05.lbm",
+	"KHelp06.lbm",
+	"KHelp07.lbm",
+	"KHelp08.lbm",
+	"KHelp09.lbm",
+	"KHelp10.lbm",
+	"KHelp11.lbm",
+	"KHelp12.lbm",
+	"K21.lbm",
+	"K22.lbm",
+	"K23.lbm",
+	"K24.lbm",
+	"K25.lbm",
+	"KTideOn.lbm",
+	"KTideOff.lbm",
+	"K26.lbm",
+	"K27.lbm",
+	"K28.lbm",
+	"K29.lbm",
+	"K30.lbm",
+	"K31.lbm",
+	"K32.lbm",
+	"K33.lbm",
+	"K34.lbm",
+	"K35.lbm",
+	"K36.lbm",
+	"K37.lbm",
+	"K38.lbm",
+	"K39.lbm",
+	"K40.lbm",
+	"K41.lbm",
+	"K42.lbm",
+	"K43.lbm",
+	"StrtDemo.lbm",
+	"EndDemo.lbm",
+	"TST.lbm",
+	"L1.ssd",
+	"L2.ssd",
+	"L3.ssd",
+	"L4.ssd",
+	"L5.ssd",
+	"L6.ssd",
+	"L7.ssd",
+	"L8.ssd",
+	"L9.ssd",
+	"L10.ssd",
+	"L11.ssd",
+	"L12.ssd",
+	"L13.ssd",
+	"L14.ssd",
+	"L15.ssd",
+	"L16.ssd",
+	"L17.ssd",
+	"L18.ssd",
+	"L19.ssd",
+	"L20.ssd",
+	"L21.ssd",
+	"L22.ssd",
+	"L23.ssd",
+	"L24.ssd",
+	"L25.ssd",
+	"L26.ssd",
+	"L27.ssd",
+	"L28.ssd",
+	"L29.ssd",
+	"L30.ssd",
+	"L31.ssd",
+	"L32.ssd",
+	"L33.ssd",
+	"L34.ssd",
+	"L35.ssd",
+	"L36.ssd",
+	"L37.ssd",
+	"L38.ssd",
+	"L39.ssd",
+	"L40.ssd",
+	"L41.ssd",
+	"L42.ssd",
+	"L43.ssd",
+	"L44.ssd",
+	"L45.ssd",
+	"L46.ssd",
+	"L47.ssd",
+	"L48.ssd",
+	"L49.ssd",
+	"L50.ssd",
+	"L1.msd",
+	"L2.msd",
+	"L3.msd",
+	"L4.msd",
+	"L5.msd",
+	"L6.msd",
+	"L7.msd",
+	"L8.msd",
+	"L9.msd",
+	"L10.msd",
+	"L11.msd",
+	"L12.msd",
+	"L13.msd",
+	"L14.msd",
+	"L15.msd",
+	"L16.msd",
+	"L17.msd",
+	"L18.msd",
+	"L19.msd",
+	"L20.msd",
+	"L21.msd",
+	"L22.msd",
+	"L23.msd",
+	"L24.msd",
+	"L25.msd",
+	"L26.msd",
+	"L27.msd",
+	"L28.msd",
+	"L29.msd",
+	"L30.msd",
+	"L31.msd",
+	"L32.msd",
+	"L33.msd",
+	"L34.msd",
+	"L35.msd",
+	"L36.msd",
+	"L37.msd",
+	"L38.msd",
+	"L39.msd",
+	"L40.msd",
+	"L41.msd",
+	"L42.msd",
+	"L43.msd",
+	"L44.msd",
+	"L45.msd",
+	"L46.msd",
+	"L47.msd",
+	"L48.msd",
+	"L49.msd",
+	"L50.msd",
+	"KLF001.lbm",
+	"KLF002.lbm",
+	"KLF003.lbm",
+	"KLF004.lbm",
+	"KLF005.lbm",
+	"KLF006.lbm",
+	"KLF007.lbm",
+	"KLF008.lbm",
+	"KLF009.lbm",
+	"KLF010.lbm",
+	"KLF011.lbm",
+	"KLF012.lbm",
+	"KLF013.lbm",
+	"KLF014.lbm",
+	"KLF015.lbm",
+	"KLF016.lbm",
+	"KLF017.lbm",
+	"KLF018.lbm",
+	"KLF019.lbm",
+	"KLF020.lbm",
+	"KLF021.lbm",
+	"KLF022.lbm",
+	"KLF023.lbm",
+	"KLF024.lbm",
+	"KLF025.lbm",
+	"KLF026.lbm",
+	"KLF027.lbm",
+	"KLF028.lbm",
+	"KLF029.lbm",
+	"KLF030.lbm",
+	"KLF031.lbm",
+	"KLF032.lbm",
+	"KLF033.lbm",
+	"KLF034.lbm",
+	"KLF035.lbm",
+	"KLF036.lbm",
+	"KLF037.lbm",
+	"KLF038.lbm",
+	"KLF039.lbm",
+	"KLF040.lbm",
+	"KLF041.lbm",
+	"KLF042.lbm",
+	"KLF043.lbm",
+	"KLF044.lbm",
+	"KLF045.lbm",
+	"KLF046.lbm",
+	"KLF047.lbm",
+	"KLF048.lbm",
+	"KLF049.lbm",
+	"KLF050.lbm",
+	"KLF051.lbm",
+	"KLF052.lbm",
+	"KLF053.lbm",
+	"KLF054.lbm",
+	"KLF055.lbm",
+	"KLF056.lbm",
+	"KLF057.lbm",
+	"KLF058.lbm",
+	"KLF059.lbm",
+	"KLF060.lbm",
+	"KLF061.lbm",
+	"KLF062.lbm",
+	"KLF063.lbm",
+	"KLF064.lbm",
+	"KLF065.lbm",
+	"KLF066.lbm",
+	"KLF067.lbm",
+	"KLF068.lbm",
+	"KLF069.lbm",
+	"KLF070.lbm",
+	"KLF071.lbm",
+	"KLF072.lbm",
+	"KLF073.lbm",
+	"KLF074.lbm",
+	"KLF075.lbm",
+	"KLF076.lbm",
+	"KLF077.lbm",
+	"KLF078.lbm",
+	"KLF079.lbm",
+	"KLF080.lbm",
+	"KLF081.lbm",
+	"KLF082.lbm",
+	"KLF083.lbm",
+	"KLF084.lbm",
+	"KLF085.lbm",
+	"KLF086.lbm",
+	"KLF087.lbm",
+	"KLF088.lbm",
+	"KLF089.lbm",
+	"KLF090.lbm",
+	"KLF091.lbm",
+	"KLF092.lbm",
+	"KLF093.lbm",
+	"KLF094.lbm",
+	"KLF095.lbm",
+	"KLF096.lbm",
+	"KLF097.lbm",
+	"KLF098.lbm",
+	"KLF099.lbm",
+	"KLF100.lbm",
+	"KLF101.lbm",
+	"KLF102.lbm",
+	"KLF103.lbm",
+	"KLF104.lbm",
+	"KLF105.lbm",
+	"KLF106.lbm",
+	"KLF107.lbm",
+	"KLF108.lbm",
+	"KLF109.lbm",
+	"KLF110.lbm",
+	"KLF111.lbm",
+	"KLF112.lbm",
+	"KLF113.lbm",
+	"KLF114.lbm",
+	"KLF115.lbm",
+	"KLF116.lbm",
+	"KLF117.lbm",
+	"KLF118.lbm",
+	"KLF119.lbm",
+	"KLF120.lbm",
+	"KLF121.lbm",
+	"KLF122.lbm",
+	"KLF123.lbm",
+	"KLF124.lbm",
+	"KLF125.lbm",
+	"KLF126.lbm",
+	"KLF127.lbm",
+	"KLF128.lbm",
+	"KLF129.lbm",
+	"KLF130.lbm",
+	"KLF131.lbm",
+	"KLF132.lbm",
+	"KLF133.lbm",
+	"KLF134.lbm",
+	"KLF135.lbm",
+	"KLF136.lbm",
+	"KLF137.lbm",
+	"KLF138.lbm",
+	"KLF139.lbm",
+	"KLF140.lbm",
+	"KLF141.lbm",
+	"KLF142.lbm",
+	"KLF143.lbm",
+	"KLF144.lbm",
+	"KLF145.lbm",
+	"KLF146.lbm",
+	"KLF147.lbm",
+	"KLF148.lbm",
+	"KLF149.lbm",
+	"KLF150.lbm",
+	"KLF151.lbm",
+	"KLF152.lbm",
+	"KLF153.lbm",
+	"KLF154.lbm",
+	"KLF155.lbm",
+	"KLF156.lbm",
+	"KLF157.lbm",
+	"KLF158.lbm",
+	"KLF159.lbm",
+	"KLF160.lbm",
+	"KLF161.lbm",
+	"KLF162.lbm",
+	"KLF163.lbm",
+	"KLF164.lbm",
+	"KLF165.lbm",
+	"KLF166.lbm",
+	"KLF167.lbm",
+	"KLF168.lbm",
+	"KLF169.lbm",
+	"KLF170.lbm",
+	"KLF171.lbm",
+	"KLF172.lbm",
+	"KLF173.lbm",
+	"KLF174.lbm",
+	"KLF175.lbm",
+	"KLF176.lbm",
+	"KLF177.lbm",
+	"KLF178.lbm",
+	"KLF179.lbm",
+	"KLF180.lbm",
+	"KLF181.lbm",
+	"KLF182.lbm",
+	"KLF183.lbm",
+	"KLF184.lbm",
+	"KLF185.lbm",
+	"KLF186.lbm",
+	"KLF187.lbm",
+	"KLF188.lbm",
+	"KLF189.lbm",
+	"KLF190.lbm",
+	"KLF191.lbm",
+	"KLF192.lbm",
+	"KLF193.lbm",
+	"KLF194.lbm",
+	"KLF195.lbm",
+	"KLF196.lbm",
+	"KLF197.lbm",
+	"KLF198.lbm",
+	"KLF199.lbm",
+	"KLF200.lbm",
+	"KLF201.lbm",
+	"KLF202.lbm",
+	"KLF203.lbm",
+	"KLF204.lbm",
+	"KLF205.lbm",
+	"KLF206.lbm",
+	"KLF207.lbm",
+	"KLF208.lbm",
+	"KLF209.lbm",
 };
 
 const char *_movieNames[] = {
 	"",
-	"Movies/King001.mve",
-	"Movies/King002.mve",
-	"Movies/King003.mve",
-	"Movies/King004.mve",
-	"Movies/King005.mve",
-	"Movies/King006.mve",
-	"Movies/King007.mve",
-	"Movies/King008.mve",
-	"Movies/King009.mve",
-	"Movies/King010.mve",
-	"Movies/King011.mve",
-	"Movies/King012.mve",
-	"Movies/King013.mve",
-	"Movies/King014.mve",
-	"Movies/King015.mve",
-	"Movies/King016.mve",
-	"Movies/King017.mve",
-	"Movies/King018.mve",
-	"Movies/King019.mve",
-	"Movies/King020.mve",
-	"Movies/King021.mve",
-	"Movies/King022.mve",
-	"Movies/King023.mve",
-	"Movies/King024.mve",
-	"Movies/King025.mve",
-	"Movies/King026.mve",
-	"Movies/King027.mve",
-	"Movies/King028.mve",
-	"Movies/King029.mve",
-	"Movies/King030.mve",
-	"Movies/King031.mve",
-	"Movies/King032.mve",
-	"Movies/King033.mve",
-	"Movies/King034.mve",
-	"Movies/King035.mve",
-	"Movies/King036.mve",
-	"Movies/King037.mve",
-	"Movies/King038.mve",
-	"Movies/King039.mve",
-	"Movies/King040.mve",
-	"Movies/King041.mve",
-	"Movies/King042.mve",
-	"Movies/King043.mve",
-	"Movies/King044.mve",
-	"Movies/King045.mve",
-	"Movies/King046.mve",
-	"Movies/King047.mve",
-	"Movies/King048.mve",
-	"Movies/King049.mve",
-	"Movies/King050.mve",
-	"Movies/King051.mve",
-	"Movies/King052.mve",
-	"Movies/King053.mve",
-	"Movies/King054.mve",
-	"Movies/King055.mve",
-	"Movies/King056.mve",
-	"Movies/King057.mve",
-	"Movies/King058.mve",
-	"Movies/King059.mve",
-	"Movies/King060.mve",
-	"Movies/King061.mve",
-	"Movies/King062.mve",
-	"Movies/King063.mve",
-	"Movies/King064.mve",
-	"Movies/King065.mve",
-	"Movies/King066.mve",
-	"Movies/King067.mve",
-	"Movies/King068.mve",
-	"Movies/King069.mve",
-	"Movies/King070.mve",
-	"Movies/King071.mve",
-	"Movies/King072.mve",
-	"Movies/King073.mve",
-	"Movies/King074.mve",
-	"Movies/King075.mve",
-	"Movies/King076.mve",
-	"Movies/King077.mve",
-	"Movies/King078.mve",
-	"Movies/King079.mve",
-	"Movies/King080.mve",
-	"Movies/King081.mve",
-	"Movies/King082.mve",
-	"Movies/King083.mve",
-	"Movies/King084.mve",
-	"Movies/King085.mve",
-	"Movies/King086.mve",
-	"Movies/King087.mve",
-	"Movies/King088.mve",
-	"Movies/King089.mve",
-	"Movies/King090.mve",
-	"Movies/King091.mve",
-	"Movies/King092.mve",
-	"Movies/King093.mve",
-	"Movies/King094.mve",
-	"Movies/King095.mve",
-	"Movies/King096.mve",
-	"Movies/King097.mve",
-	"Movies/King098.mve",
-	"Movies/King099.mve",
-	"Movies/King100.mve",
-	"Movies/King101.mve",
-	"Movies/King102.mve",
-	"Movies/King103.mve",
-	"Movies/King104.mve",
-	"Movies/King105.mve",
-	"Movies/King106.mve",
-	"Movies/King107.mve",
-	"Movies/King108.mve",
-	"Movies/King109.mve",
-	"Movies/King110.mve",
-	"Movies/King111.mve",
-	"Movies/King112.mve",
-	"Movies/King113.mve",
-	"Movies/King114.mve",
-	"Movies/King115.mve",
-	"Movies/King116.mve",
-	"Movies/King117.mve",
-	"Movies/King118.mve",
-	"Movies/King119.mve",
-	"Movies/King120.mve",
-	"Movies/King121.mve",
-	"Movies/King122.mve",
-	"Movies/King123.mve",
-	"Movies/King124.mve",
-	"Movies/King125.mve",
-	"Movies/King126.mve",
-	"Movies/King127.mve",
-	"Movies/King128.mve",
-	"Movies/King129.mve",
-	"Movies/King130.mve",
-	"Movies/King131.mve",
-	"Movies/King132.mve",
-	"Movies/King133.mve",
-	"Movies/King134.mve",
-	"Movies/King135.mve",
-	"Movies/King136.mve",
-	"Movies/King137.mve",
-	"Movies/King138.mve",
-	"Movies/King139.mve",
-	"Movies/King140.mve",
-	"Movies/King141.mve",
-	"Movies/King142.mve",
-	"Movies/King143.mve",
-	"Movies/King144.mve",
-	"Movies/King145.mve",
-	"Movies/King146.mve",
-	"Movies/King147.mve",
-	"Movies/King148.mve",
-	"Movies/King149.mve",
-	"Movies/King150.mve",
-	"Movies/King151.mve",
-	"Movies/King152.mve",
-	"Movies/King153.mve",
-	"Movies/King154.mve",
-	"Movies/King155.mve",
-	"Movies/King156.mve",
-	"Movies/King157.mve",
-	"Movies/King158.mve",
-	"Movies/King159.mve",
-	"Movies/King160.mve",
-	"Movies/King161.mve",
-	"Movies/King162.mve",
-	"Movies/King163.mve",
-	"Movies/King164.mve",
-	"Movies/King165.mve",
-	"Movies/King166.mve",
-	"Movies/King167.mve",
-	"Movies/King168.mve",
-	"Movies/King169.mve",
-	"Movies/King170.mve",
-	"Movies/King171.mve",
-	"Movies/King172.mve",
-	"Movies/King173.mve",
-	"Movies/King174.mve",
-	"Movies/King175.mve",
-	"Movies/King176.mve",
-	"Movies/King177.mve",
-	"Movies/King178.mve",
-	"Movies/King179.mve",
-	"Movies/King180.mve",
-	"Movies/King181.mve",
-	"Movies/King182.mve",
-	"Movies/King183.mve",
-	"Movies/King184.mve",
-	"Movies/King185.mve",
-	"Movies/King186.mve",
-	"Movies/King187.mve",
-	"Movies/King188.mve",
-	"Movies/King189.mve",
-	"Movies/King190.mve",
-	"Movies/King191.mve",
-	"Movies/King192.mve",
-	"Movies/King193.mve",
-	"Movies/King194.mve",
-	"Movies/King195.mve",
-	"Movies/King196.mve",
-	"Movies/King197.mve",
-	"Movies/King198.mve",
-	"Movies/King199.mve",
-	"Movies/King200.mve",
-	"Movies/King201.mve",
-	"Movies/King202.mve",
-	"Movies/King203.mve",
-	"Movies/King204.mve",
-	"Movies/King205.mve",
-	"Movies/King206.mve",
-	"Movies/King207.mve",
-	"Movies/King208.mve",
-	"Movies/King209.mve"
+	"King001.mve",
+	"King002.mve",
+	"King003.mve",
+	"King004.mve",
+	"King005.mve",
+	"King006.mve",
+	"King007.mve",
+	"King008.mve",
+	"King009.mve",
+	"King010.mve",
+	"King011.mve",
+	"King012.mve",
+	"King013.mve",
+	"King014.mve",
+	"King015.mve",
+	"King016.mve",
+	"King017.mve",
+	"King018.mve",
+	"King019.mve",
+	"King020.mve",
+	"King021.mve",
+	"King022.mve",
+	"King023.mve",
+	"King024.mve",
+	"King025.mve",
+	"King026.mve",
+	"King027.mve",
+	"King028.mve",
+	"King029.mve",
+	"King030.mve",
+	"King031.mve",
+	"King032.mve",
+	"King033.mve",
+	"King034.mve",
+	"King035.mve",
+	"King036.mve",
+	"King037.mve",
+	"King038.mve",
+	"King039.mve",
+	"King040.mve",
+	"King041.mve",
+	"King042.mve",
+	"King043.mve",
+	"King044.mve",
+	"King045.mve",
+	"King046.mve",
+	"King047.mve",
+	"King048.mve",
+	"King049.mve",
+	"King050.mve",
+	"King051.mve",
+	"King052.mve",
+	"King053.mve",
+	"King054.mve",
+	"King055.mve",
+	"King056.mve",
+	"King057.mve",
+	"King058.mve",
+	"King059.mve",
+	"King060.mve",
+	"King061.mve",
+	"King062.mve",
+	"King063.mve",
+	"King064.mve",
+	"King065.mve",
+	"King066.mve",
+	"King067.mve",
+	"King068.mve",
+	"King069.mve",
+	"King070.mve",
+	"King071.mve",
+	"King072.mve",
+	"King073.mve",
+	"King074.mve",
+	"King075.mve",
+	"King076.mve",
+	"King077.mve",
+	"King078.mve",
+	"King079.mve",
+	"King080.mve",
+	"King081.mve",
+	"King082.mve",
+	"King083.mve",
+	"King084.mve",
+	"King085.mve",
+	"King086.mve",
+	"King087.mve",
+	"King088.mve",
+	"King089.mve",
+	"King090.mve",
+	"King091.mve",
+	"King092.mve",
+	"King093.mve",
+	"King094.mve",
+	"King095.mve",
+	"King096.mve",
+	"King097.mve",
+	"King098.mve",
+	"King099.mve",
+	"King100.mve",
+	"King101.mve",
+	"King102.mve",
+	"King103.mve",
+	"King104.mve",
+	"King105.mve",
+	"King106.mve",
+	"King107.mve",
+	"King108.mve",
+	"King109.mve",
+	"King110.mve",
+	"King111.mve",
+	"King112.mve",
+	"King113.mve",
+	"King114.mve",
+	"King115.mve",
+	"King116.mve",
+	"King117.mve",
+	"King118.mve",
+	"King119.mve",
+	"King120.mve",
+	"King121.mve",
+	"King122.mve",
+	"King123.mve",
+	"King124.mve",
+	"King125.mve",
+	"King126.mve",
+	"King127.mve",
+	"King128.mve",
+	"King129.mve",
+	"King130.mve",
+	"King131.mve",
+	"King132.mve",
+	"King133.mve",
+	"King134.mve",
+	"King135.mve",
+	"King136.mve",
+	"King137.mve",
+	"King138.mve",
+	"King139.mve",
+	"King140.mve",
+	"King141.mve",
+	"King142.mve",
+	"King143.mve",
+	"King144.mve",
+	"King145.mve",
+	"King146.mve",
+	"King147.mve",
+	"King148.mve",
+	"King149.mve",
+	"King150.mve",
+	"King151.mve",
+	"King152.mve",
+	"King153.mve",
+	"King154.mve",
+	"King155.mve",
+	"King156.mve",
+	"King157.mve",
+	"King158.mve",
+	"King159.mve",
+	"King160.mve",
+	"King161.mve",
+	"King162.mve",
+	"King163.mve",
+	"King164.mve",
+	"King165.mve",
+	"King166.mve",
+	"King167.mve",
+	"King168.mve",
+	"King169.mve",
+	"King170.mve",
+	"King171.mve",
+	"King172.mve",
+	"King173.mve",
+	"King174.mve",
+	"King175.mve",
+	"King176.mve",
+	"King177.mve",
+	"King178.mve",
+	"King179.mve",
+	"King180.mve",
+	"King181.mve",
+	"King182.mve",
+	"King183.mve",
+	"King184.mve",
+	"King185.mve",
+	"King186.mve",
+	"King187.mve",
+	"King188.mve",
+	"King189.mve",
+	"King190.mve",
+	"King191.mve",
+	"King192.mve",
+	"King193.mve",
+	"King194.mve",
+	"King195.mve",
+	"King196.mve",
+	"King197.mve",
+	"King198.mve",
+	"King199.mve",
+	"King200.mve",
+	"King201.mve",
+	"King202.mve",
+	"King203.mve",
+	"King204.mve",
+	"King205.mve",
+	"King206.mve",
+	"King207.mve",
+	"King208.mve",
+	"King209.mve"
 };
 
 int _mapExit[] = {
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index cc85b4ac30..d3d53f67ec 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -71,6 +71,14 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 
 	_tickCount = 0;
 	_oldTime = g_system->getMillis();
+
+	const Common::FSNode gameDataDir(ConfMan.get("path"));
+	SearchMan.addSubDirectoryMatching(gameDataDir, "MAPS");
+	SearchMan.addSubDirectoryMatching(gameDataDir, "PICS");
+	SearchMan.addSubDirectoryMatching(gameDataDir, "SOUNDS");
+	SearchMan.addSubDirectoryMatching(gameDataDir, "SOUNDM");
+	SearchMan.addSubDirectoryMatching(gameDataDir, "MOVIELF");
+	SearchMan.addSubDirectoryMatching(gameDataDir, "MOVIES");
 }
 
 KingdomGame::~KingdomGame() {


Commit: 6fb6ca9ac1f445911e985889afd035e87f2122bc
    https://github.com/scummvm/scummvm/commit/6fb6ca9ac1f445911e985889afd035e87f2122bc
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: More renaming, ensure some boolean variables don't use numeric values

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 6577f68d17..e8b913d371 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -37,21 +37,21 @@ void KingdomGame::GPLogic1() {
 		case 0x190:
 			_statPlay = 20;
 			_Wizard = false;
-			_ATimer = 0;
+			_aTimer = 0;
 			break;
 		case 0x191:
 			_statPlay = 20;
 			_Wizard = true;
-			_ATimer = 0;
+			_aTimer = 0;
 			break;
 		case 0x192:
-			_ATimer = 0;
+			_aTimer = 0;
 			FadeToBlack2();
 			PlayMovie(1);
 			GPLogic1_SubSP10();
 			break;
 		case 0x193:
-			_ATimer = 0;
+			_aTimer = 0;
 			_KeyActive = 0;
 			_noIFScreen = true;
 			PlaySound(0);
@@ -149,7 +149,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(62);
 		if (_Nodes[4] == 9) {
 			PlayMovie(8);
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 		}
 		_CurrMap = 10;
 		PlaySound(14);
@@ -164,7 +164,7 @@ void KingdomGame::GPLogic1() {
 			_CurrMap = 10;
 			_Nodes[4] = 9;
 			_statPlay = 41;
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 42;
@@ -189,7 +189,7 @@ void KingdomGame::GPLogic1() {
 		_NodeNum = 5;
 		DrawLocation();
 		if (_Nodes[5] != 0 && !_Resurrect) {
-			_FrameStop = 38;
+			_frameStop = 38;
 			PlayMovie(5);
 		}
 		
@@ -199,13 +199,13 @@ void KingdomGame::GPLogic1() {
 		_Resurrect = false;
 		PlaySound(1);
 		
-		if (_Spell1 && _Spell2 && _Spell3) {
+		if (_spell1 && _spell2 && _spell3) {
 			_sound = true;
 			PlayMovie(2);
 			_CurrMap = 10;
 			_statPlay = 51;
 			_loopFlag = true;
-		} else if (_DaelonCntr) {
+		} else if (_daelonCntr) {
 			PlayMovie(2);
 			_CurrMap = 10;
 			_statPlay = 51;
@@ -217,21 +217,21 @@ void KingdomGame::GPLogic1() {
 			case 1:
 				PlayMovie(60);
 				InventoryAdd(0);
-				_Spell1 = true;
+				_spell1 = true;
 				break;
 			case 2:
 				PlayMovie(59);
 				InventoryAdd(2);
-				_Spell2 = true;
+				_spell2 = true;
 				break;
 			case 3:
 				_sound = true;
 				PlayMovie(59);
 				InventoryAdd(3);
-				_Spell3 = true;
+				_spell3 = true;
 				break;
 			}
-			if (_Spell1 && _Spell2 && _Spell3) {
+			if (_spell1 && _spell2 && _spell3) {
 				PlayMovie(6);
 				_CurrMap = 7;
 				_statPlay = 51;
@@ -241,13 +241,13 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(61);
 				PlaySound(1);
 
-				if (!_Spell1)
+				if (!_spell1)
 					DrawPic(116);
 				
-				if (!_Spell2)
+				if (!_spell2)
 					DrawPic(117);
 				
-				if (!_Spell3)
+				if (!_spell3)
 					DrawPic(118);
 				
 				_CurrMap = 6;
@@ -293,7 +293,7 @@ void KingdomGame::GPLogic1() {
 		switch(_UserInput) {
 		case 0x428:
 			_Nodes[5] = 1;
-			_DaelonCntr = 5;
+			_daelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
 			_statPlay = 51;
@@ -301,7 +301,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42A:
 			_Nodes[5] = 2;
-			_DaelonCntr = 5;
+			_daelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
 			_statPlay = 51;
@@ -309,14 +309,14 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42B:
 			_Nodes[5] = 3;
-			_DaelonCntr = 5;
+			_daelonCntr = 5;
 			PlayMovie(6);
 			_CurrMap = 7;
 			_statPlay = 51;
 			_Eye = true;
 			break;
 		case 0x43E:
-			if (!_Spell1 && !_Spell2 && !_Spell3 && !_Wizard) {
+			if (!_spell1 && !_spell2 && !_spell3 && !_Wizard) {
 				PlayMovie(177);
 				DrawLocation();
 				PlayMovie(5);
@@ -326,13 +326,13 @@ void KingdomGame::GPLogic1() {
 			_Eye = false;
 			PlayMovie(61);
 
-			if (!_Spell1)
+			if (!_spell1)
 				DrawPic(116);
 
-			if (!_Spell2)
+			if (!_spell2)
 				DrawPic(117);
 
-			if (!_Spell3)
+			if (!_spell3)
 				DrawPic(118);
 			break;
 		default:
@@ -369,7 +369,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(13);
 			PlaySound(43);
 			_CurrMap = 10;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 		}
 		_statPlay = 71;
 		break;
@@ -414,7 +414,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(24);
 			PlaySound(3);
 			_CurrMap = 13;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 		} else {
 			_Nodes[8] = 0;
 			DsAll();
@@ -434,7 +434,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x429:
 			if (!_Nodes[8]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(18);
 				PlaySound(3);
@@ -446,7 +446,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42A:
 			if (!_Nodes[8]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(18);
 				PlaySound(3);
@@ -458,12 +458,12 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42C:
 			if (!_Nodes[8]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(16);
 				PlaySound(3);
 				_Nodes[8] = 9;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 				_CurrMap = 13;
 			}
 			break;
@@ -473,7 +473,7 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(17);
 				InventoryDel(5);
 				PlaySound(3);
-				_ATimer = 0;
+				_aTimer = 0;
 				_UserInput = 0;
 				_CurrMap = 13;
 				_Nodes[8] = 1;
@@ -488,7 +488,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_PMovie);
-			_ATimer = 0;
+			_aTimer = 0;
 			break;
 		case 0x453:
 			if (_Nodes[8] == 1) {
@@ -525,7 +525,7 @@ void KingdomGame::GPLogic1() {
 				_sound = true;
 			
 			if (!_Wizard)
-				_FrameStop = 90;
+				_frameStop = 90;
 
 			PlayMovie(19);
 			PlaySound(15);
@@ -548,7 +548,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			if (!_Wizard)
-				_FrameStop = 90;
+				_frameStop = 90;
 
 			_sound = _lastSound;
 			PlayMovie(_PMovie);
@@ -752,7 +752,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_PMovie);
-			_ATimer = 0;
+			_aTimer = 0;
 			break;
 		case 0x445:
 			_statPlay = 80;
@@ -784,7 +784,7 @@ void KingdomGame::GPLogic1() {
 			int oldPMovie = _PMovie;
 			PlayMovie(208);
 			_PMovie = oldPMovie;
-			_ASMode = false;
+			_asMode = false;
 			RestoreAS();
 			_Help = true;
 			_Eye = true;
@@ -799,7 +799,7 @@ void KingdomGame::GPLogic1() {
 			int oldPMovie = _PMovie;
 			PlayMovie(207);
 			_PMovie = oldPMovie;
-			_ASMode = false;
+			_asMode = false;
 			RestoreAS();
 			_Help = true;
 			_Eye = true;
@@ -809,9 +809,9 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x19A:
 			FShowPic(110);
-			_BTimer = 190;
+			_bTimer = 190;
 			ReadMouse();
-			while(_BTimer != 0 && _MouseButton == 0) {
+			while(_bTimer != 0 && _MouseButton == 0) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
@@ -861,10 +861,10 @@ void KingdomGame::GPLogic1() {
 		case 0x450:
 			SaveAS();
 			FShowPic(123);
-			_BTimer = 76;
+			_bTimer = 76;
 			ReadMouse();
 
-			while(_BTimer != 0 && _MouseButton == 0) {
+			while(_bTimer != 0 && _MouseButton == 0) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
@@ -903,7 +903,7 @@ void KingdomGame::GPLogic1() {
 		case 0x2F1:
 			EnAll();
 			if (Wound()) {
-				_ATimer = 0;
+				_aTimer = 0;
 				_Replay = false;
 				PlayMovie(31);
 				_statPlay = _NextNode;
@@ -916,7 +916,7 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x42C:
-			_ATimer = 0;
+			_aTimer = 0;
 			_Replay = false;
 			EnAll();
 			PlayMovie(34);
@@ -952,7 +952,7 @@ void KingdomGame::GPLogic1() {
 			if (_Nodes[18] == 9) {
 				PlayMovie(37);
 				_CurrMap = 19;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 			}
 			PlaySound(16);
 			_statPlay = 181;
@@ -1002,9 +1002,9 @@ void KingdomGame::GPLogic1() {
 				InventoryDel(7);
 				_Nodes[18] = 9;
 				_CurrMap = 19;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 			} else {
-				_FrameStop = 27;
+				_frameStop = 27;
 				_fstFwd = false;
 				PlayMovie(36);
 				_fstFwd = true;
@@ -1024,7 +1024,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			_sound = _lastSound;
 			if (_PMovie == 36 && _Nodes[18] != 9) {
-				_FrameStop = 27;
+				_frameStop = 27;
 				_fstFwd = false;
 				PlayMovie(36);
 				_fstFwd = true;
@@ -1058,7 +1058,7 @@ void KingdomGame::GPLogic1() {
 			IncreaseHealth();
 		} else {
 			PlayMovie(40);
-			_TideCntl = true;
+			_tideCntl = true;
 			DrawPic(178);
 		}
 		PlaySound(42);
@@ -1128,19 +1128,19 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42A:
 			if (!_Nodes[21]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(48);
 				InventoryDel(2);
 				_Nodes[21] = 1;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 				PlaySound(38);
 				_UserInput = 0;
 			}
 			break;
 		case 0x42D:
 			if (!_Nodes[21]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(47);
 				PlaySound(38);
@@ -1148,7 +1148,7 @@ void KingdomGame::GPLogic1() {
 				_Nodes[21] = 9;
 				_UserInput = 0;
 				_CurrMap = 81;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
@@ -1174,11 +1174,11 @@ void KingdomGame::GPLogic1() {
 			_UserInput = 0;
 			break;
 		case 0x442:
-			if (_TSIconOnly != 0) {
-				_ATimer = 0;
+			if (_tsIconOnly) {
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(49);
-				_TSIconOnly = 0;
+				_tsIconOnly = false;
 				PlaySound(38);
 				_UserInput = 0;
 			}
@@ -1197,7 +1197,7 @@ void KingdomGame::GPLogic1() {
 	case 212:
 		if (_UserInput == 0x2F1) {
 			_UserInput = 0;
-			_ATimer = 0;
+			_aTimer = 0;
 			_statPlay = 211;
 			_loopFlag = true;
 			SwitchAS();
@@ -1212,7 +1212,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(41);
 			_CurrMap = 82;
 		} else {
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			PlayMovie(44);
 			_CurrMap = 10;
 		}
@@ -1241,7 +1241,7 @@ void KingdomGame::GPLogic1() {
 			if (!_Nodes[22]) {
 				InventoryDel(2);
 				InventoryAdd(4);
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 			}
 			_UserInput = 0;
 			_CurrMap = 10;
@@ -1297,7 +1297,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(53);
 			ShowPic(119);
 			_CurrMap = 84;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 		}
 		PlaySound(4);
 		_statPlay = 241;
@@ -1312,7 +1312,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x429:
 			if (_Nodes[24] != 9) {
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 				PlayMovie(66);
 				InventoryDel(1);
 				_CurrMap = 84;
@@ -1379,17 +1379,17 @@ void KingdomGame::GPLogic1_SubSP10() {
 
 	_CurrMap = 4;
 	_UserInput = 0;
-	_ATimer = 595;
+	_aTimer = 595;
 	_statPlay = 11;
 }
 
 void KingdomGame::GPLogic1_SubSP121() {
 	PlayMovie(23);
 	PlaySound(30);
-	_BTimer = 190;
+	_bTimer = 190;
 	ReadMouse();
 	
-	while (_BTimer != 0 && _MouseButton == 0) {
+	while (_bTimer != 0 && _MouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 55f4e40383..e7b62fec39 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -35,14 +35,14 @@ void KingdomGame::GPLogic2() {
 		if (_Nodes[24] != 0 || highNode) {
 			_Eye = true;
 			PlayMovie(72);
-			_ATimerFlag = false;
-			_ATimer = 114;
+			_aTimerFlag = false;
+			_aTimer = 114;
 			PlaySound(34);
 			_UserInput = 0;
 			_CurrMap = 10;
 			_statPlay = 251;
 		} else {
-			_FrameStop = 67;
+			_frameStop = 67;
 			PlayMovie(72);
 			DsAll();
 			PlayMovie(73);
@@ -55,7 +55,7 @@ void KingdomGame::GPLogic2() {
 	case 251:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(73);
 			DsAll();
 			_statPlay = 992;
@@ -86,7 +86,7 @@ void KingdomGame::GPLogic2() {
 	case 261:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(75);
 			_statPlay = 992;
@@ -94,7 +94,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x428:
 			InventoryDel(0);
-			_ATimer = 0;
+			_aTimer = 0;
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
@@ -103,7 +103,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42A:
 			InventoryDel(2);
-			_ATimer = 0;
+			_aTimer = 0;
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
@@ -111,19 +111,19 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x42C:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(76);
 			_Nodes[26] = 1;
 			_UserInput = 0;
 			_statPlay = 290;
-			_LastObs = 1;
+			_lastObs = true;
 			_LastObstacle = 29;
 			_loopFlag = true;
 			break;
 		case 0x42D:
 			if (Wound()) {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(77);
 				PlaySound(34);
@@ -224,13 +224,13 @@ void KingdomGame::GPLogic2() {
 					PlayMovie(85);
 					_CurrMap = 10;
 					_Nodes[30] = 9;
-					_TSIconOnly = 1;
+					_tsIconOnly = true;
 					break;
 				default:
 					_sound = true;
 					PlayMovie(85);
 					_CurrMap = 10;
-					_TSIconOnly = 1;
+					_tsIconOnly = true;
 					break;
 				}
 				PlaySound(17);
@@ -242,7 +242,7 @@ void KingdomGame::GPLogic2() {
 	case 291:
 		switch(_UserInput) {
 		case 0x431:
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			PlayMovie(83);
 			PlaySound(30);
 			InventoryAdd(10);
@@ -317,7 +317,7 @@ void KingdomGame::GPLogic2() {
 			_CurrMap = 90;
 			_statPlay = 311;
 			_Nodes[32] = 1;
-			_ATimer = 0;
+			_aTimer = 0;
 			_UserInput = 0;
 		}
 		break;
@@ -334,7 +334,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x449:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(68);
 			_statPlay = 992;
@@ -433,7 +433,7 @@ void KingdomGame::GPLogic2() {
 					_CurrMap = 91;
 				}
 				if (_Nodes[35] == 9)
-					_TSIconOnly = 1;
+					_tsIconOnly = true;
 				PlaySound(26);
 				_statPlay = 341;
 			}
@@ -502,27 +502,27 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 			InventoryDel(_UserInput - 0x428);
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(178);
 			_UserInput = 0x2F1;
 			_loopFlag = true;
 		// No break on purpose
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(93);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
 		case 0x42A:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(179);
 			InventoryDel(2);
 			_Nodes[36] = 1;
 			_UserInput = 0;
 			_statPlay = _NextNode * 10;
-			_LastObs = 1;
+			_lastObs = true;
 			_LastObstacle = _NextNode;
 			_loopFlag = true;
 			break;
@@ -535,7 +535,7 @@ void KingdomGame::GPLogic2() {
 			_sound = false;
 		else
 			_sound = true;
-		_FrameStop = 185;
+		_frameStop = 185;
 		DsAll();
 		PlayMovie(94);
 		_CurrMap = 95;
@@ -546,14 +546,14 @@ void KingdomGame::GPLogic2() {
 	case 361:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(95);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
 		case 0x428:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(97);
 			InventoryDel(0);
@@ -567,11 +567,11 @@ void KingdomGame::GPLogic2() {
 				_NodeNum = 42;
 				GPLogic2_SubSP361();
 			} else {
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 			}
 			break;
 		case 0x42A:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(98);
 			InventoryDel(2);
@@ -579,10 +579,10 @@ void KingdomGame::GPLogic2() {
 			_Nodes[37] = 1;
 			_UserInput = 0;
 			_CurrMap = 10;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			break;
 		case 0x42E:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(100);
 			InventoryDel(6);
@@ -590,10 +590,10 @@ void KingdomGame::GPLogic2() {
 			_Nodes[37] = 1;
 			_UserInput = 0;
 			_CurrMap = 10;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			break;
 		case 0x431:
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(96);
 			PlaySound(5);
@@ -606,7 +606,7 @@ void KingdomGame::GPLogic2() {
 			GPLogic2_SubSP361();
 			break;
 		case 0x437:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(99);
 			_statPlay = 992;
@@ -709,7 +709,7 @@ void KingdomGame::GPLogic2() {
 				_Nodes[39] = 9;
 				_Nodes[59] = 0;
 				_UserInput = 0;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 				_CurrMap = 108;
 			}
 			break;
@@ -747,7 +747,7 @@ void KingdomGame::GPLogic2() {
 	case 390:
 		_NodeNum = 39;
 		DrawLocation();
-		_ATimer = 0;
+		_aTimer = 0;
 		DsAll();
 		PlayMovie(104);
 		PlaySound(34);
@@ -778,7 +778,7 @@ void KingdomGame::GPLogic2() {
 	case 401:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(106);
 			_statPlay = 992;
@@ -789,7 +789,7 @@ void KingdomGame::GPLogic2() {
 		case 0x42A:
 			if (!_Nodes[41]) {
 				InventoryDel(_UserInput - 0x428);
-				_ATimer = 0;
+				_aTimer = 0;
 				PlayMovie(178);
 				_UserInput = 753;
 				_loopFlag = true;
@@ -798,7 +798,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42C:
 			if (!_Nodes[41]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				DsAll();
 				PlayMovie(108);
 				_UserInput = 0;
@@ -808,17 +808,17 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42E:
 			if (!_Nodes[41]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				PlayMovie(109);
 				InventoryDel(6);
 				_Nodes[43] = 0;
 				_UserInput = 0;
-				_ATimer = 136;
+				_aTimer = 136;
 			}
 			break;
 		case 0x437:
 			if (!_Nodes[41]) {
-				_ATimer = 0;
+				_aTimer = 0;
 				_Help = 1;
 				_Replay = true;
 				_Pouch = 1;
@@ -828,12 +828,12 @@ void KingdomGame::GPLogic2() {
 				_Nodes[41] = 1;
 				_UserInput = 0;
 				_CurrMap = 96;
-				_TSIconOnly = 1;
+				_tsIconOnly = true;
 				_loopFlag = true;
 			}
 			break;
 		case 0x43E:
-			_ATimer = 0;
+			_aTimer = 0;
 			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
@@ -846,7 +846,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 402:
-		_ATimer = 0;
+		_aTimer = 0;
 		ProcessMapInput(40);
 		break;
 	case 410:
@@ -868,10 +868,10 @@ void KingdomGame::GPLogic2() {
 			_sound = _lastSound;
 			if (_PMovie == 120) {
 				SaveAS();
-				_FrameStop = 50;
+				_frameStop = 50;
 				PlayMovie(120);
-				_BTimer = 34;
-				while(_BTimer != 0) {
+				_bTimer = 34;
+				while(_bTimer != 0) {
 					checkTimers();
 					RefreshSound();
 					CheckMainScreen();
@@ -932,7 +932,7 @@ void KingdomGame::GPLogic2() {
 				_Nodes[43] = 9;
 				_CurrMap = 10;
 			}
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 422;
@@ -956,24 +956,24 @@ void KingdomGame::GPLogic2() {
 		_Eye = false;
 		_UserInput = 0;
 		if (_Nodes[44] == 9) {
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			PlayMovie(118);
 			_CurrMap = 80;
 		} else if (_Inventory[12] <= 0) {
 			PlayMovie(115);
 			ShowPic(415);
 			_CurrMap = 78;
-			if (!_SkylarTimer)
-				_SkylarTimer = 5400;
+			if (!_skylarTimer)
+				_skylarTimer = 5400;
 		} else {
-			_SkylarTimer = 0;
+			_skylarTimer = 0;
 			PlayMovie(116);
 			PlaySound(25);
 			InventoryDel(12);
 			InventoryAdd(16);
 			_Nodes[44] = 9;
 			_CurrMap = 79;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 		}
 		_statPlay = 431;
 		PlaySound(20);
@@ -1076,7 +1076,7 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 		} else {
 			_fstFwd = false;
-			_FrameStop = 50;
+			_frameStop = 50;
 			PlayMovie(120);
 			_CurrMap = 17;
 			_statPlay = 451;
@@ -1087,7 +1087,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43E:
 			_sound = _lastSound;
 			_fstFwd = false;
-			_FrameStop = 50;
+			_frameStop = 50;
 			PlayMovie(_PMovie);
 			_CurrMap = 17;
 			PlaySound(26);
@@ -1126,7 +1126,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			_loopFlag = true;
 			_CurrMap = 10;
-			_LastObs = 1;
+			_lastObs = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
@@ -1172,7 +1172,7 @@ void KingdomGame::GPLogic2() {
 		PlaySound(18);
 		_CurrMap = 101;
 		_statPlay = 491;
-		_ATimer = 0;
+		_aTimer = 0;
 		_UserInput = 0;
 		break;
 	case 491:
@@ -1181,7 +1181,7 @@ void KingdomGame::GPLogic2() {
 		case 0x42A:
 		case 0x42B:
 			InventoryDel(_UserInput - 0x428);
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(178);
 			_UserInput = 753;
 			_loopFlag = true;
@@ -1195,7 +1195,7 @@ void KingdomGame::GPLogic2() {
 		case 0x44A:
 			_CurrMap = 10;
 			_UserInput = 0;
-			_ATimer = 0;
+			_aTimer = 0;
 			EnAll();
 			PlayMovie(181);
 			_Nodes[29] = 9;
@@ -1226,7 +1226,7 @@ void KingdomGame::GPLogic2_SubSP361() {
 			}
 			PlayMovie(122);
 			_CurrMap = 10;
-			_TSIconOnly = 1;
+			_tsIconOnly = true;
 			_statPlay = 421;
 		} else {
 			PlayMovie(112);
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 21c4d485c3..639713956c 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -42,14 +42,14 @@ void KingdomGame::GPLogic3() {
 			_Nodes[51] = 2;
 			PlayMovie(126);
 			_CurrMap = 10;
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			break;
 		default:
 			_Nodes[51] = 1;
 			_sound = true;
 			PlayMovie(126);
 			_CurrMap = 10;
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			break;
 		}
 		PlaySound(29);
@@ -139,7 +139,7 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(_PMovie);
 			break;
 		case 0x457:
-			_TideCntl = false;
+			_tideCntl = false;
 			DrawPic(179);
 			PlayMovie(127);
 			_CurrMap = 103;
@@ -202,10 +202,10 @@ void KingdomGame::GPLogic3() {
 		_UserInput = 0;
 		_fstFwd = false;
 		if (_Inventory[7] <= 0 && _Wizard)
-			_TSIconOnly = false;
+			_tsIconOnly = false;
 		else {
-			_FrameStop = 24;
-			_TSIconOnly = true;
+			_frameStop = 24;
+			_tsIconOnly = true;
 		}
 		_Eye = false;
 		PlayMovie(70);
@@ -220,7 +220,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(71);
 				InventoryAdd(14);
 				InventoryDel(0);
-				_TSIconOnly = true;
+				_tsIconOnly = true;
 				PlaySound(25);
 			}
 			_UserInput = 0;
@@ -236,21 +236,21 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			_fstFwd = false;
 			if (_Inventory[7] > 0 && _PMovie == 70)
-				_FrameStop = 24;
+				_frameStop = 24;
 			if (!_Wizard && _PMovie == 70)
-				_FrameStop = 24;
+				_frameStop = 24;
 			PlayMovie(_PMovie);
 			break;
 		case 0x445:
 			_NodeNum = 56;
 			_UserInput = 0;
-			_FrameStop = 50;
+			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
 			_CurrMap = 106;
 			_Nodes[57] = 1;
 			PlaySound(8);
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			_statPlay = 561;
 			break;
 		case 0x452:
@@ -329,7 +329,7 @@ void KingdomGame::GPLogic3() {
 		PlayMovie(133);
 		if (_Nodes[56] != 9)
 			_Nodes[56] = 0;
-		_TSIconOnly = true;
+		_tsIconOnly = true;
 		_CurrMap = 104;
 		_statPlay = 551;
 		PlaySound(8);
@@ -337,21 +337,21 @@ void KingdomGame::GPLogic3() {
 	case 551:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(134);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x42C:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (_Nodes[56] == 1) {
 				EnAll();
 				PlayMovie(183);
 				FShowPic(433);
 				PlaySound(8);
 				_Nodes[56] = 9;
-				_TSIconOnly = true;
+				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
@@ -368,18 +368,18 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x43E:
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(_PMovie);
 			if (_PMovie == 183)
 				FShowPic(433);
 			break;
 		case 0x452:
-			_ATimer = 0;
+			_aTimer = 0;
 			switch(_Nodes[56]) {
 			case 0:
 				DsAll();
 				PlayMovie(69);
-				_TSIconOnly = false;
+				_tsIconOnly = false;
 				_Nodes[56] = 1;
 				SetATimer();
 				break;
@@ -414,7 +414,7 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_UserInput = 0;
 		if (_Wizard) {
-			_FrameStop = 50;
+			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
 			ShowPic(435);
@@ -422,7 +422,7 @@ void KingdomGame::GPLogic3() {
 			PlaySound(8);
 			_statPlay = 561;
 			_CurrMap = 106;
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 		} else {
 			DsAll();
 			PlayMovie(135);
@@ -435,7 +435,7 @@ void KingdomGame::GPLogic3() {
 	case 561:
 		switch(_UserInput) {
 		case 0x2F1:
-			_ATimer = 0;
+			_aTimer = 0;
 			DsAll();
 			PlayMovie(136);
 			_statPlay = 993;
@@ -444,7 +444,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (!_Nodes[57]) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
@@ -455,7 +455,7 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x42C:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (!_Nodes[57]) {
 				_fstFwd = false;
 				_Replay = true;
@@ -466,11 +466,11 @@ void KingdomGame::GPLogic3() {
 				InventoryDel(4);
 				_Nodes[22] = 0;
 				_CurrMap = 88;
-				_TSIconOnly = true;
+				_tsIconOnly = true;
 			}
 			break;
 		case 0x438:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (!_Nodes[57]) {
 				EnAll();
 				_fstFwd = false;
@@ -480,7 +480,7 @@ void KingdomGame::GPLogic3() {
 				PlaySound(8);
 				_Nodes[57] = 1;
 				_CurrMap = 106;
-				_TSIconOnly = true;
+				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
@@ -492,13 +492,13 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			_fstFwd = false;
 			if (_PMovie == 135 && _Nodes[57]) {
-				_FrameStop = 50;
+				_frameStop = 50;
 				PlayMovie(135);
 			} else if (_Nodes[57])
 				PlayMovie(_PMovie);
 			else {
 				_UserInput = 753;
-				_ATimer = 0;
+				_aTimer = 0;
 				_loopFlag = true;
 			}
 			break;
@@ -582,13 +582,13 @@ void KingdomGame::GPLogic3() {
 			_Nodes[59] = 0;
 			break;
 		case 8:
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			PlayMovie(143);
 			_CurrMap = 10;
 			_Nodes[59] = 9;
 			break;
 		case 9:
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			_sound = true;
 			PlayMovie(143);
 			_CurrMap = 10;
@@ -603,7 +603,7 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(141);
 			_Nodes[59] = 8;
 			InventoryAdd(13);
-			_TSIconOnly = true;
+			_tsIconOnly = true;
 			_CurrMap = 10;
 			PlaySound(30);
 		// No break on purpose
@@ -693,8 +693,8 @@ void KingdomGame::GPLogic3() {
 		EraseCursor();
 		FadeToBlack2();
 		ShowPic(106);
-		DrawIcon(4, 0, 12 - _HealthOld);
-		_ASMode = false;
+		DrawIcon(4, 0, 12 - _healthOld);
+		_asMode = false;
 		_NodeNum = 60;
 		DrawLocation();
 		_UserInput = 0;
@@ -716,8 +716,8 @@ void KingdomGame::GPLogic3() {
 
 		PlayMovie(146);
 		if (_Nodes[70] == 9) {
-			_ItemInhibit = true;
-			_TSIconOnly = true;
+			_itemInhibit = true;
+			_tsIconOnly = true;
 		}
 		
 		_CurrMap = 115;
@@ -750,7 +750,7 @@ void KingdomGame::GPLogic3() {
 			// Cascade on purpose
 		case 0x448:
 			_CurrMap = 10;
-			_ItemInhibit = true;
+			_itemInhibit = true;
 			_statPlay = 730;
 			_loopFlag = true;
 			break;
@@ -779,12 +779,12 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(149);
 			_CurrMap = 122;
 		} else {
-			_FrameStop = 24;
+			_frameStop = 24;
 			PlayMovie(202);
 			_CurrMap = 121;
 			_Nodes[63] = 9;
 		}
-		_TSIconOnly = true;
+		_tsIconOnly = true;
 		PlaySound(8);
 		_statPlay = 621;
 		break;
@@ -816,7 +816,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(150);
 				break;
 			case 9:
-				_FrameStop = 24;
+				_frameStop = 24;
 				PlayMovie(202);
 				_CurrMap = 121;
 				break;
@@ -825,7 +825,7 @@ void KingdomGame::GPLogic3() {
 		case 0x445:
 			_NodeNum = 56;
 			_UserInput = 0;
-			_FrameStop = 50;
+			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
 			_Nodes[57] = 1;
@@ -1044,7 +1044,7 @@ void KingdomGame::GPLogic3() {
 		_loopFlag = true;
 		break;
 	case 690:
-		_ItemInhibit = false;
+		_itemInhibit = false;
 		EnAll();
 		if (_Nodes[70] == 9) {
 			_statPlay = 640;
@@ -1056,7 +1056,7 @@ void KingdomGame::GPLogic3() {
 			DrawLocation();
 			_UserInput = 0;
 			_CurrMap = 119;
-			_FrameStop = 40;
+			_frameStop = 40;
 			PlayMovie(157);
 			PlaySound(12);
 			_statPlay = 691;
@@ -1077,9 +1077,9 @@ void KingdomGame::GPLogic3() {
 			if (_Nodes[70] == 9)
 				DisplayIcon(147);
 			else {
-				_FrameStop = 108;
+				_frameStop = 108;
 				PlayMovie(158);
-				_ItemInhibit = false;
+				_itemInhibit = false;
 				InventoryAdd(17);
 				_Nodes[70] = 9;
 				PlaySound(23);
@@ -1089,9 +1089,9 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			if (_PMovie == 157)
-				_FrameStop = 40;
+				_frameStop = 40;
 			else if (_PMovie == 158)
-				_FrameStop = 108;
+				_frameStop = 108;
 			
 			if (_PMovie == 178) {
 				SaveAS();
@@ -1102,7 +1102,7 @@ void KingdomGame::GPLogic3() {
 
 			break;
 		case 0x441:
-			_ItemInhibit = false;
+			_itemInhibit = false;
 			_statPlay = 640;
 			_Nodes[73] = 0;
 			_loopFlag = true;
@@ -1181,14 +1181,14 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
 			_Replay = false;
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x430:
-			_ATimer = 0;
+			_aTimer = 0;
 			_NodeNum = 0;
 			_IconsClosed = true;
 			_fstFwd = false;
@@ -1218,14 +1218,14 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
 			_Replay = false;
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x430:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (_Nodes[72] != 2) {
 				PlayMovie(57);
 				_statPlay = 993;
@@ -1242,7 +1242,7 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x432:
-			_ATimer = 0;
+			_aTimer = 0;
 			_Replay = false;
 			PlayMovie(168);
 			_statPlay = 993;
@@ -1254,7 +1254,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(166);
 				_statPlay = 993;
 			} else {
-				_ATimer = 0;
+				_aTimer = 0;
 				EnAll();
 				PlayMovie(169);
 				_statPlay = 580;
@@ -1264,7 +1264,7 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x436:
-			_ATimer = 0;
+			_aTimer = 0;
 			PlaySound(0);
 			PlayMovie(193);
 			ShowPic(128);
@@ -1274,7 +1274,7 @@ void KingdomGame::GPLogic3() {
 			break;
 
 		case 0x437:
-			_ATimer = 0;
+			_aTimer = 0;
 			if (_Nodes[72] == 2) {
 				_NodeNum = 0;
 				_IconsClosed = true;
@@ -1307,11 +1307,11 @@ void KingdomGame::GPLogic3() {
 			_Nodes[73] = 1;
 			break;
 		case 1:
-			_FrameStop = 24;
+			_frameStop = 24;
 			_Nodes[73] = 2;
 			break;
 		default:
-			_FrameStop = 24;
+			_frameStop = 24;
 			_Nodes[73] = 3;
 			break;
 		}
@@ -1324,12 +1324,12 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			if (_Nodes[73] > 1)
-				_FrameStop = 24;
+				_frameStop = 24;
 			PlayMovie(_PMovie);
 			break;
 		case 0x441:
 			if (_Nodes[73] == 1) {
-				_ItemInhibit = false;
+				_itemInhibit = false;
 				_statPlay = 640;
 			} else
 				_statPlay = 680;
@@ -1376,11 +1376,11 @@ void KingdomGame::GPLogic3() {
 			_Nodes[74] = 2;
 			break;
 		case 2:
-			_FrameStop = 23;
+			_frameStop = 23;
 			_Nodes[74] = 3;
 			break;
 		default:
-			_FrameStop = 23;
+			_frameStop = 23;
 			_Nodes[74] = 4;
 			break;
 		}
@@ -1393,7 +1393,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			if (_Nodes[74] > 2)
-				_FrameStop = 23;
+				_frameStop = 23;
 			_sound = _lastSound;
 			PlayMovie(_PMovie);
 			break;
@@ -1490,7 +1490,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
-			_ATimer = 0;
+			_aTimer = 0;
 			PlayMovie(178);
 			_loopFlag = true;
 			_UserInput = 753;
@@ -1505,12 +1505,12 @@ void KingdomGame::GPLogic3() {
 		case 0x437:
 			_loopFlag = true;
 			if (Wound()) {
-				_FrameStop = 88;
+				_frameStop = 88;
 				PlayMovie(187);
 				_statPlay = 570;
 				_Nodes[58] = 1;
 			} else {
-				_FrameStop = 78;
+				_frameStop = 78;
 				PlayMovie(187);
 				_statPlay = 993;
 			}
@@ -1577,18 +1577,18 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
-			_FrameStop = 64;
+			_frameStop = 64;
 			PlayMovie(173);
 			ShowPic(471);
 			_CurrMap = 124;
 			break;
 		case 0x429:
 			if (_Wizard) {
-				_FrameStop = 64;
+				_frameStop = 64;
 				PlayMovie(173);
 				InventoryDel(1);
 			} else {
-				_FrameStop = 66;
+				_frameStop = 66;
 				_fstFwd = false;
 				PlayMovie(172);
 				_fstFwd = true;
@@ -1599,7 +1599,7 @@ void KingdomGame::GPLogic3() {
 			_CurrMap = 124;
 			break;
 		case 0x439:
-			_FrameStop = 59;
+			_frameStop = 59;
 			_fstFwd = false;
 			PlayMovie(174);
 			_fstFwd = true;
@@ -1610,9 +1610,9 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			_sound = _lastSound;
 			if (_PMovie == 173)
-				_FrameStop = 64;
+				_frameStop = 64;
 			if (_PMovie == 201) {
-				_FrameStop = 59;
+				_frameStop = 59;
 				_fstFwd = false;
 				PlayMovie(174);
 				_fstFwd = true;
@@ -1680,10 +1680,10 @@ void KingdomGame::GPLogic3() {
 
 void KingdomGame::EndCredits() {
 	_NodeNum = 0;
-	_BTimer = 190;
+	_bTimer = 190;
 	ReadMouse();
 
-	while(_BTimer != 0 && _MouseButton == 0) {
+	while(_bTimer != 0 && _MouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 71666f86c8..7c3558f81e 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -27,38 +27,38 @@ namespace Kingdom {
 void KingdomGame::GPLogic4() {
 	switch(_statPlay) {
 	case 900:
-		if (_ATimer > 0) {
+		if (_aTimer > 0) {
 			PlaySound(0);
-			_ATimer = 133;
+			_aTimer = 133;
 		}
-		if (_ASMode) {
+		if (_asMode) {
 			SwitchMtoA();
 			_MapStat = 0;
 			_oldStatPlay--;
-			_ASMode = false;
+			_asMode = false;
 		}
 		SaveAS();
 		FadeToBlack2();
 
-		if (_Health == 10 || _Health == 6 || _Health == 2) {
+		if (_health == 10 || _health == 6 || _health == 2) {
 			ShowPic(121);
-			_BTimer = 38;
+			_bTimer = 38;
 			ReadMouse();
-			while (_BTimer && !_MouseButton) {
+			while (_bTimer && !_MouseButton) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
 			}
 			
-			if (_ATimer > 0)
+			if (_aTimer > 0)
 				SetATimer();
 			
 			_UserInput = 0;
 			GPLogic4_SP901();
 		} else {
-			if (_ATimer > 0) {
+			if (_aTimer > 0) {
 				SetATimer();
-				_ATimer = 133;
+				_aTimer = 133;
 			}
 			ShowPic(120);
 			_statPlay = 901;
@@ -71,12 +71,12 @@ void KingdomGame::GPLogic4() {
 		_CurrMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
-		if (_Health == 10 || _Health == 6 || _Health == 2)
-			_Health -= 2;
+		if (_health == 10 || _health == 6 || _health == 2)
+			_health -= 2;
 		else
-			_Health -= 4;
+			_health -= 4;
 		
-		if (_Health == 0) {
+		if (_health == 0) {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
@@ -87,8 +87,8 @@ void KingdomGame::GPLogic4() {
 			memset(_Inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_BTimer = 36;
-			while(_BTimer) {
+			_bTimer = 36;
+			while(_bTimer) {
 				checkTimers();
 				RefreshSound();
 			}
@@ -99,13 +99,13 @@ void KingdomGame::GPLogic4() {
 				_Nodes[49] = 0;
 			}
 
-			_ItemInhibit = false;
-			_TideCntl = false;
+			_itemInhibit = false;
+			_tideCntl = false;
 			DrawPic(179);
-			_SkylarTimer = 0;
-			_SkylarTimerFlag = false;
+			_skylarTimer = 0;
+			_skylarTimerFlag = false;
 			EnAll();
-			_MapEx = true;
+			_mapEx = true;
 			_NodeNum = 5;
 			DrawLocation();
 			PlaySound(0);
@@ -121,12 +121,12 @@ void KingdomGame::GPLogic4() {
 		_CurrMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
-		if (_Health == 10 || _Health == 6 || _Health == 2)
-			_Health -= 2;
+		if (_health == 10 || _health == 6 || _health == 2)
+			_health -= 2;
 		else
-			_Health -= 4;
+			_health -= 4;
 		
-		if (_Health == 0) {
+		if (_health == 0) {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
@@ -137,8 +137,8 @@ void KingdomGame::GPLogic4() {
 			memset(_Inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_BTimer = 36;
-			while(_BTimer != 0) {
+			_bTimer = 36;
+			while(_bTimer != 0) {
 				checkTimers();
 				RefreshSound();
 			}
@@ -149,13 +149,13 @@ void KingdomGame::GPLogic4() {
 				_Nodes[49] = 0;
 			}
 
-			_ItemInhibit = false;
-			_TideCntl = false;
+			_itemInhibit = false;
+			_tideCntl = false;
 			DrawPic(179);
-			_SkylarTimer = 0;
-			_SkylarTimerFlag = false;
+			_skylarTimer = 0;
+			_skylarTimerFlag = false;
 			EnAll();
-			_MapEx = true;
+			_mapEx = true;
 			_NodeNum = 27;
 			DrawLocation();
 			_Resurrect = 1;
@@ -169,12 +169,12 @@ void KingdomGame::GPLogic4() {
 		_CurrMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
-		if (_Health == 10 || _Health == 6 || _Health == 2)
-			_Health -= 2;
+		if (_health == 10 || _health == 6 || _health == 2)
+			_health -= 2;
 		else
-			_Health -= 4;
+			_health -= 4;
 		
-		if (_Health == 0) {
+		if (_health == 0) {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
@@ -185,8 +185,8 @@ void KingdomGame::GPLogic4() {
 			memset(_Inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_BTimer = 36;
-			while (_BTimer != 0) {
+			_bTimer = 36;
+			while (_bTimer != 0) {
 				checkTimers();
 				RefreshSound();
 			}
@@ -199,13 +199,13 @@ void KingdomGame::GPLogic4() {
 			if (_Nodes[68] == 1)
 				_Nodes[68] = 0;
 
-			_ItemInhibit = false;
-			_TideCntl = false;
+			_itemInhibit = false;
+			_tideCntl = false;
 			DrawPic(179);
-			_SkylarTimer = 0;
-			_SkylarTimerFlag = false;
+			_skylarTimer = 0;
+			_skylarTimerFlag = false;
 			EnAll();
-			_MapEx = true;
+			_mapEx = true;
 			_NodeNum = 52;
 			DrawLocation();
 			_Resurrect = 1;
@@ -236,21 +236,21 @@ void KingdomGame::GPLogic4_SP901() {
 	EraseCursor();
 	FadeToBlack2();
 	ShowPic(106);
-	DrawIcon(4, 0, 12 - _HealthOld);
-	if (_TideCntl)
+	DrawIcon(4, 0, 12 - _healthOld);
+	if (_tideCntl)
 		DrawPic(178);
 	else
 		DrawPic(179);
 	
 	_IconRedraw = true;
 	if (_UserInput == 0x2F1) {
-		_ASMode = false;
+		_asMode = false;
 		RestoreAS();
 		_statPlay = _oldStatPlay;
 		_loopFlag = true;
 	} else {
-		if (_Health == 10 || _Health == 6 || _Health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
-			_ASMode = false;
+		if (_health == 10 || _health == 6 || _health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
+			_asMode = false;
 			RestoreAS();
 			_statPlay = _oldStatPlay;
 		} else {
@@ -259,7 +259,7 @@ void KingdomGame::GPLogic4_SP901() {
 			Wound();
 			PlayMovie(10);
 			InventoryDel(3);
-			_TSIconOnly = 0;
+			_tsIconOnly = false;
 			EnAll();
 			SwitchAS();
 			_MapStat = 0;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index d3d53f67ec..a4a45e9677 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -139,31 +139,31 @@ void KingdomGame::checkTimers() {
 	} else
 		return;
 
-	if (_ATimer != 0) {
-		_ATimer--;
-		if (_ATimer == 0)
-			_ATimerFlag = true;
+	if (_aTimer != 0) {
+		_aTimer--;
+		if (_aTimer == 0)
+			_aTimerFlag = true;
 	}
 
-	if (_BTimer != 0) {
-		_BTimer--;
-		if (_BTimer == 0)
-			_BTimerFlag = true;
+	if (_bTimer != 0) {
+		_bTimer--;
+		if (_bTimer == 0)
+			_bTimerFlag = true;
 	}
 
-	if (_CTimer != 0) {
-		_CTimer--;
-		if (_CTimer == 0) {
-			_CTimerFlag = true;
-			_CTimer = 4;
+	if (_cTimer != 0) {
+		_cTimer--;
+		if (_cTimer == 0) {
+			_cTimerFlag = true;
+			_cTimer = 4;
 		}
 	} else
-		_CTimer = 4;
+		_cTimer = 4;
 
-	if (_SkylarTimer != 0) {
-		_SkylarTimer--;
-		if (_SkylarTimer == 0)
-			_SkylarTimerFlag = true;
+	if (_skylarTimer != 0) {
+		_skylarTimer--;
+		if (_skylarTimer == 0)
+			_skylarTimerFlag = true;
 	}
 
 	_PalStepFlag = false;
@@ -215,36 +215,36 @@ void KingdomGame::InitPlay() {
 	for (int i = 0; i < 7; i++)
 		_IconPic[i] = 89 + i;
 
-	_FrameStop = 0;
+	_frameStop = 0;
 	_gameMode = 0;
-	_DaelonCntr = 0;
+	_daelonCntr = 0;
 	_statPlay = 10;
-	_Spell1 = false;
-	_Spell2 = false;
-	_Spell3 = false;
-	_ItemInhibit = false;
-	_ASMode = false;
-	_ATimerFlag = false;
-	_BTimerFlag = false;
-	_CTimerFlag = false;
-	_SkylarTimerFlag = false;
-	_ATimer = 0;
-	_BTimer = 0;
-	_CTimer = 0;
-	_SkylarTimer = 0;
-	_TideCntl = false;
-	_MapEx = false;
-	_Health = 12;
-	_HealthOld = 1;
-	_HealthTmr = 0;
-	_TreeEyeTimer = 0;
-	_TreeHGTimer = 0;
-	_TreeHGUPic = 147;
-	_TreeLeftPic = 0;
-	_TreeRightPic = 0;
-	_TreeRightSta = 1;
-	_TSIconOnly = false;
-	_LastObs = false;
+	_spell1 = false;
+	_spell2 = false;
+	_spell3 = false;
+	_itemInhibit = false;
+	_asMode = false;
+	_aTimerFlag = false;
+	_bTimerFlag = false;
+	_cTimerFlag = false;
+	_skylarTimerFlag = false;
+	_aTimer = 0;
+	_bTimer = 0;
+	_cTimer = 0;
+	_skylarTimer = 0;
+	_tideCntl = false;
+	_mapEx = false;
+	_health = 12;
+	_healthOld = 1;
+	_healthTmr = 0;
+	_treeEyeTimer = 0;
+	_treeHGTimer = 0;
+	_treeHGUPic = 147;
+	_treeLeftPic = 0;
+	_treeRightPic = 0;
+	_treeRightSta = 1;
+	_tsIconOnly = false;
+	_lastObs = false;
 	EnAll();
 	_Pouch = true;
 	_noIFScreen = true;
@@ -317,7 +317,7 @@ void KingdomGame::GameHelp() {
 			DrawRect(4, 17, 228, 161, 0);
 			DrawInventory();
 
-			if (_Nodes[68] == 1 || _Nodes[29] == 1 || _ItemInhibit)
+			if (_Nodes[68] == 1 || _Nodes[29] == 1 || _itemInhibit)
 				_CurrMap = 10;
 			else
 				_CurrMap = 11;
@@ -527,14 +527,14 @@ void KingdomGame::PlayMovie(int movieNum) {
 
 	_mixer->stopAll();
 
-	_ATimer = 0;
-	_ASMode = 0;
+	_aTimer = 0;
+	_asMode = false;
 
 	EraseCursor();
 
 	if (!_fullScreen) {
 		_TreeLeftSta = (_fstFwd == 0) ? 0 : 1;
-		_TreeRightSta = 0;
+		_treeRightSta = 0;
 		_IconSel = _IconSelect;
 		_IconsClosed = true;
 		CheckMainScreen();
@@ -564,14 +564,14 @@ void KingdomGame::PlayMovie(int movieNum) {
 	*/
 
 	if (!_fullScreen) {
-		_TreeRightSta = 1;
+		_treeRightSta = 1;
 		_IconsClosed = false;
 		_IconSel = 9;
 		_TreeLeftSta = _Replay == 0 ? 0 : 2;
 		CheckMainScreen();
 		DrawCursor();
 		_fstFwd = true;
-		_FrameStop = 0;
+		_frameStop = 0;
 		_lastSound = _sound;
 		_sound = false;
 		_UserInput = 0;
@@ -637,10 +637,10 @@ void KingdomGame::RestoreAS() {
 }
 
 void KingdomGame::SwitchAS() {
-	_ASMode = false;
+	_asMode = false;
 	_CurrMap = _ASMap;
 	_TreeLeftSta = _OldTLS;
-	_TreeRightSta = _OldTRS;
+	_treeRightSta = _OldTRS;
 	_Pouch = _OldPouch;
 	_Help = _OldHelp;
 	_IconsClosed = _OldIconsClosed;
@@ -649,7 +649,7 @@ void KingdomGame::SwitchAS() {
 void KingdomGame::DrawHelpScreen() {
 	int picNum;
 
-	switch(_Health) {
+	switch(_health) {
 	case 2:
 		picNum = 166;
 		break;
@@ -691,7 +691,7 @@ void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 
 void KingdomGame::DrawInventory() {
 	FShowPic(108);
-	if (_Nodes[29] == 1 || _Nodes[68] == 1 || _ItemInhibit)
+	if (_Nodes[29] == 1 || _Nodes[68] == 1 || _itemInhibit)
 		return;
 
 	if (_Inventory[0] > 0)
@@ -836,20 +836,20 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	for (int i = 0; i < 7; i++)
 		_IconPic[i] = 89 + i;
 	
-	_FrameStop = 0;
+	_frameStop = 0;
 	_gameMode = 0;
-	_ASMode = false;
-	_HealthTmr = 0;
+	_asMode = false;
+	_healthTmr = 0;
 	_noIFScreen = false;
 	_IconRedraw = true;
-	_TreeRightSta = 1;
-	_ATimerFlag = false;
-	_ATimer = 0;
-	_BTimerFlag = false;
-	_BTimer = 0;
-	_TreeEyeTimer = 0;
-	_TreeEyePic = 0;
-	_TreeHGUPic = 0;
+	_treeRightSta = 1;
+	_aTimerFlag = false;
+	_aTimer = 0;
+	_bTimerFlag = false;
+	_bTimer = 0;
+	_treeEyeTimer = 0;
+	_treeEyePic = 0;
+	_treeHGUPic = 0;
 	_CursorDrawn = false;
 	ShowPic(106);
 	_gameMode = 0;
@@ -864,9 +864,9 @@ Common::Error KingdomGame::loadGameState(int slot) {
 void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_statPlay);
 	s.syncAsSint16LE(_ASMap);
-	s.syncAsSint16LE(_DaelonCntr);
-	s.syncAsSint16LE(_Health);
-	s.syncAsSint16LE(_HealthOld);
+	s.syncAsSint16LE(_daelonCntr);
+	s.syncAsSint16LE(_health);
+	s.syncAsSint16LE(_healthOld);
 	s.syncAsSint16LE(_LastObstacle);
 	s.syncAsSint16LE(_NextNode);
 	s.syncAsSint16LE(_NodeNum);
@@ -874,13 +874,13 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_RtnNode);
 	s.syncAsSint16LE(_RobberyNode);
 	s.syncAsSint16LE(_SoundNumber);
-	s.syncAsSint16LE(_TreeEyePic);
-	s.syncAsSint16LE(_TreeEyeSta);
-	s.syncAsSint16LE(_TreeHGPic);
-	s.syncAsSint16LE(_TreeHGSta);
+	s.syncAsSint16LE(_treeEyePic);
+	s.syncAsSint16LE(_treeEyeSta);
+	s.syncAsSint16LE(_treeHGPic);
+	s.syncAsSint16LE(_treeHGSta);
 	s.syncAsSint16LE(_OldTLS);
-	s.syncAsSint16LE(_CTimer);
-	s.syncAsSint16LE(_SkylarTimer);
+	s.syncAsSint16LE(_cTimer);
+	s.syncAsSint16LE(_skylarTimer);
 
 	for (int i = 0; i < 18; i++)
 		s.syncAsSint16LE(_Inventory[i]);
@@ -891,21 +891,21 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsByte(_OldEye);
 	s.syncAsByte(_fstFwd);
 	s.syncAsByte(_Help);
-	s.syncAsByte(_ItemInhibit);
-	s.syncAsByte(_LastObs);
+	s.syncAsByte(_itemInhibit);
+	s.syncAsByte(_lastObs);
 	s.syncAsByte(_lastSound);
-	s.syncAsByte(_MapEx);
+	s.syncAsByte(_mapEx);
 	s.syncAsByte(_NoMusic);
 	s.syncAsByte(_OldPouch);
 	s.syncAsByte(_Replay);
-	s.syncAsByte(_Spell1);
-	s.syncAsByte(_Spell2);
-	s.syncAsByte(_Spell3);
-	s.syncAsByte(_TideCntl);
+	s.syncAsByte(_spell1);
+	s.syncAsByte(_spell2);
+	s.syncAsByte(_spell3);
+	s.syncAsByte(_tideCntl);
 	s.syncAsByte(_Wizard);
-	s.syncAsByte(_TSIconOnly);
-	s.syncAsByte(_CTimerFlag);
-	s.syncAsByte(_SkylarTimerFlag);
+	s.syncAsByte(_tsIconOnly);
+	s.syncAsByte(_cTimerFlag);
+	s.syncAsByte(_skylarTimerFlag);
 
 	// Present in the original. Looks unused.
 	// s.syncAsSint16LE(_StatMap);
@@ -1035,7 +1035,7 @@ void KingdomGame::GetUserInput() {
 		return;
 
 	if (_UserInput == 2 && _Eye)
-		_UserInput = _ASMode ? 0x43B : 0x43A;
+		_UserInput = _asMode ? 0x43B : 0x43A;
 
 	if (_UserInput == 1)
 		_UserInput = _MouseValue;
@@ -1061,29 +1061,29 @@ void KingdomGame::EraseCursorAsm() {
 }
 
 void KingdomGame::DrawLocation() {
-	if (_DaelonCntr > 0)
-		_DaelonCntr--;
+	if (_daelonCntr > 0)
+		_daelonCntr--;
 
 	PlaySound(0);
 	_IconsClosed = true;
-	_TSIconOnly = false;
-	_ATimer = 0;
-	_ATimerFlag = false;
+	_tsIconOnly = false;
+	_aTimer = 0;
+	_aTimerFlag = false;
 
 	int emlValue = _emlTable[_NodeNum];
 	if (emlValue > 0)
 		EnAll();
 
-	if (!_MapEx || !emlValue || _Resurrect) {
+	if (!_mapEx || !emlValue || _Resurrect) {
 		if (_statPlay != 50)
 			_Resurrect = false;
 		_IconsClosed = false;
 	} else {
-		_MapEx = false;
+		_mapEx = false;
 		SaveAS();
 		FShowPic(emlValue);
-		_BTimer = 16;
-		while(_BTimer) {
+		_bTimer = 16;
+		while(_bTimer) {
 			checkTimers();
 			RefreshSound();
 			CheckMainScreen();
@@ -1091,13 +1091,13 @@ void KingdomGame::DrawLocation() {
 		FadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
 		_IconsClosed = false;
-		_TSIconOnly = false;
+		_tsIconOnly = false;
 	}
 }
 
 void KingdomGame::ProcessMap(int mapNum, int zoom) {
 	int var6 = _zoomTable[mapNum][zoom][0];
-	if (!_ASMode)
+	if (!_asMode)
 		SwitchAtoM();
 	FShowPic(var6);
 	_CurrMap = _zoomTable[mapNum][zoom][1];
@@ -1108,9 +1108,9 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 		_TreeLeftSta = 0;
 
 	if (zoom < 8)
-		_TreeRightSta = _zoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
+		_treeRightSta = _zoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
 	else
-		_TreeRightSta = 0;
+		_treeRightSta = 0;
 }
 
 void KingdomGame::ProcessMapInput(int mapNum) {
@@ -1129,7 +1129,7 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 			_UserInput = 0;
 		break;
 	case 0x440:
-		if (_TreeRightSta == 2) {
+		if (_treeRightSta == 2) {
 			_Zoom++;
 			ProcessMap(mapNum, _Zoom);
 		} else
@@ -1138,7 +1138,7 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 	default:
 		if (_UserInput > 0x3FF && _UserInput < 0x428) {
 			_statPlay = _mapExit[_UserInput - 0x400];
-			_MapEx = true;
+			_mapEx = true;
 			_loopFlag = true;
 			SwitchAS();
 		}
@@ -1196,10 +1196,10 @@ void KingdomGame::DisplayIcon(int reznum) {
 	PlaySound(30);
 	SaveAS();
 	FShowPic(reznum);
-	_BTimer = 76;
+	_bTimer = 76;
 	ReadMouse();
 	
-	while(_BTimer != 0 && _MouseButton == 0) {
+	while(_bTimer != 0 && _MouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		ReadMouse();
@@ -1211,13 +1211,13 @@ void KingdomGame::DisplayIcon(int reznum) {
 }
 
 void KingdomGame::SetATimer() {
-	_ATimerFlag = true;
-	_ATimer = 0;
+	_aTimerFlag = true;
+	_aTimer = 0;
 	int wrkNodeNum = _NodeNum;
 	if (_Nodes[29] == 1 || _Nodes[68] == 1)
 		return;
 
-	if (_TSIconOnly != 0)
+	if (_tsIconOnly)
 		wrkNodeNum = 79;
 
 	if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
@@ -1226,8 +1226,8 @@ void KingdomGame::SetATimer() {
 	for (int i = 0; i < 7; i++) {
 		int idx = _iconActTable[wrkNodeNum][i];
 		if (_Inventory[idx] > 0) {
-			_ATimerFlag = false;
-			_ATimer = _Wizard ? 114 : 133;
+			_aTimerFlag = false;
+			_aTimer = _Wizard ? 114 : 133;
 			PlaySound(0);
 			PlaySound(34);
 			break;
@@ -1237,8 +1237,8 @@ void KingdomGame::SetATimer() {
 
 bool KingdomGame::Wound() {
 	bool retval = false;
-	if (_Health == 12 || _Health == 8 || _Health == 4) {
-		_Health -= 2;
+	if (_health == 12 || _health == 8 || _health == 4) {
+		_health -= 2;
 		retval = true;
 	}
 	return retval;
@@ -1249,45 +1249,45 @@ void KingdomGame::RefreshSound() {
 }
 
 void KingdomGame::IncreaseHealth() {
-	if (_Health <= 3)
-		_Health = 4;
-	else if (_Health <= 7)
-		_Health = 8;
+	if (_health <= 3)
+		_health = 4;
+	else if (_health <= 7)
+		_health = 8;
 	else
-		_Health = 12;
+		_health = 12;
 }
 
 void KingdomGame::CheckMainScreen() {
-	if (_CTimerFlag || _statPlay == 900 || _statPlay == 901)
+	if (_cTimerFlag || _statPlay == 900 || _statPlay == 901)
 		return;
 
-	_CTimerFlag = false;
+	_cTimerFlag = false;
 	if (_noIFScreen)
 		return;
 
-	if (_HealthOld != _Health) {
-		if (_HealthTmr > 0)
-			_HealthTmr--;
+	if (_healthOld != _health) {
+		if (_healthTmr > 0)
+			_healthTmr--;
 		else {
-			if (_Health <= _HealthOld)
-				_HealthOld--;
+			if (_health <= _healthOld)
+				_healthOld--;
 			else
-				_HealthOld++;
+				_healthOld++;
 
 			int iconIndex;
-			if (_HealthOld == 0)
+			if (_healthOld == 0)
 				iconIndex = 12 - 1;
 			else
-				iconIndex = 12 - _HealthOld;
+				iconIndex = 12 - _healthOld;
 
 			DrawIcon(4, 0, iconIndex);
-			_HealthTmr = 1;
+			_healthTmr = 1;
 		}
 	}
 
 	if (_IconRedraw) {
 		_IconRedraw = false;
-		DrawIcon(4, 0, 12 - _HealthOld);
+		DrawIcon(4, 0, 12 - _healthOld);
 		DrawIcon(11, 178, _IconPic[0]);
 		DrawIcon(38, 178, _IconPic[1]);
 		DrawIcon(65, 178, _IconPic[2]);
@@ -1295,20 +1295,20 @@ void KingdomGame::CheckMainScreen() {
 		DrawIcon(119, 178, _IconPic[4]);
 		DrawIcon(146, 178, _IconPic[5]);
 		DrawIcon(173, 178, _IconPic[6]);
-		_TreeLeftPic = 0;
-		_TreeRightPic = 0;
-		_TreeEyeTimer = 0;
-		if (_SkylarTimer != 0 || _ATimer != 0) {
-			_TreeHGTimer = 0;
-			_TreeHGUPic = 0;
+		_treeLeftPic = 0;
+		_treeRightPic = 0;
+		_treeEyeTimer = 0;
+		if (_skylarTimer != 0 || _aTimer != 0) {
+			_treeHGTimer = 0;
+			_treeHGUPic = 0;
 		}
-		if (_TideCntl)
+		if (_tideCntl)
 			DrawPic(178);
 	}
 
 	for (int i = 0; i < 7; i++) {
 		int wrkNodeNum = _NodeNum;
-		if (_TSIconOnly)
+		if (_tsIconOnly)
 			wrkNodeNum = 79;
 		if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
 			wrkNodeNum = 80;
@@ -1316,7 +1316,7 @@ void KingdomGame::CheckMainScreen() {
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 
-		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_ItemInhibit && !_IconsClosed) {
+		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_itemInhibit && !_IconsClosed) {
 			if (_IconPic[i] != 12 + idx) {
 				if (_IconPic[i] == 89 + i)
 					_IconPic[i] = 96 + i;
@@ -1349,113 +1349,113 @@ void KingdomGame::CheckMainScreen() {
 
 	switch (_TreeLeftSta) {
 	case 0:
-		if (_TreeLeftPic != 33) {
+		if (_treeLeftPic != 33) {
 			DrawIcon(243, 141, 33);
-			_TreeLeftPic = 33;
+			_treeLeftPic = 33;
 		}
 		break;
 	case 1:
-		if (_TreeLeftPic != 34) {
+		if (_treeLeftPic != 34) {
 			DrawIcon(243, 141, 34);
-			_TreeLeftPic = 34;
+			_treeLeftPic = 34;
 		}
 		break;
 	case 2:
 		if (!_Replay) {
-			if (_TreeLeftPic != 33) {
+			if (_treeLeftPic != 33) {
 				DrawIcon(243, 141, 33);
-				_TreeLeftPic = 33;
+				_treeLeftPic = 33;
 			}
-		} else if (_TreeLeftPic != 35) {
+		} else if (_treeLeftPic != 35) {
 			DrawIcon(243, 141, 35);
-			_TreeLeftPic = 35;
+			_treeLeftPic = 35;
 		}
 		break;
 	case 3:
-		if (_TreeLeftPic != 36) {
+		if (_treeLeftPic != 36) {
 			DrawIcon(243, 141, 36);
-			_TreeLeftPic = 36;
+			_treeLeftPic = 36;
 		}
 		break;
 	default:
-		_TreeLeftPic = 33;
+		_treeLeftPic = 33;
 		_TreeLeftSta = 0;
 		DrawIcon(243, 141, 33);
 		break;
 	}
 
-	switch (_TreeRightSta) {
+	switch (_treeRightSta) {
 	case 0:
-		if (_TreeRightPic == 37) {
+		if (_treeRightPic == 37) {
 			DrawIcon(290, 143, 37);
-			_TreeRightPic = 37;
+			_treeRightPic = 37;
 		}
 		break;
 	case 1:
 		if (_Help) {
-			if (_TreeRightPic != 38) {
+			if (_treeRightPic != 38) {
 				DrawIcon(290, 143, 38);
-				_TreeRightPic = 38;
+				_treeRightPic = 38;
 			}
-		} else if (_TreeRightPic != 37) {
+		} else if (_treeRightPic != 37) {
 			DrawIcon(290, 143, 37);
-			_TreeRightPic = 37;
+			_treeRightPic = 37;
 		}
 		break;
 	case 2:
-		if (_TreeRightPic != 39) {
+		if (_treeRightPic != 39) {
 			DrawIcon(290, 143, 39);
-			_TreeRightPic = 39;
+			_treeRightPic = 39;
 		}
 		break;
 	default:
-		_TreeRightPic = 37;
-		_TreeRightSta = 0;
+		_treeRightPic = 37;
+		_treeRightSta = 0;
 		DrawIcon(290, 143, 37);
 		break;
 	}
 
 	if (_Eye) {
-		if (_TreeEyeTimer == 0) {
-			_TreeEyePic = _teaSeq[_TreeEyeSta][0];
-			DrawIcon(261, 51, _TreeEyePic);
-			_TreeEyeTimer = _teaSeq[_TreeEyeSta][1];
-			_TreeEyeSta++;
-			if (_TreeEyeSta == 5)
-				_TreeEyeSta = 0;
+		if (_treeEyeTimer == 0) {
+			_treeEyePic = _teaSeq[_treeEyeSta][0];
+			DrawIcon(261, 51, _treeEyePic);
+			_treeEyeTimer = _teaSeq[_treeEyeSta][1];
+			_treeEyeSta++;
+			if (_treeEyeSta == 5)
+				_treeEyeSta = 0;
 		} else
-			_TreeEyeTimer--;
-	} else if (_TreeEyePic != 37) {
+			_treeEyeTimer--;
+	} else if (_treeEyePic != 37) {
 		DrawIcon(261, 51, 146);
-		_TreeEyePic = 37;
-		_TreeEyeSta = 0;
-		_TreeEyeTimer = 0;
+		_treeEyePic = 37;
+		_treeEyeSta = 0;
+		_treeEyeTimer = 0;
 	}
 
 	int timer = 0;
 	int delta = 7; // CHECKME: the variable is the same than the one used for the first for(), and the value should therefore be 7  
-	if (_SkylarTimer != 0) {
+	if (_skylarTimer != 0) {
 		delta = 772;
-		timer = _SkylarTimer;
+		timer = _skylarTimer;
 	}
-	if (_ATimer != 0) {
+	if (_aTimer != 0) {
 		delta = 19;
-		timer = _ATimer;
+		timer = _aTimer;
 	}
 
 	if (timer == 0) {
-		if (_TreeHGUPic != 147) {
+		if (_treeHGUPic != 147) {
 			EraseCursor();
 			DrawIcon(249, 171, 147);
-			_TreeHGUPic = 147;
+			_treeHGUPic = 147;
 		}
-	} else if (_TreeHGTimer == 0) {
-		_TreeHGPic = _hgaSeq[_TreeHGSta][0];
-		DrawIcon(249, 185, _TreeHGPic);
-		_TreeHGTimer = _hgaSeq[_TreeHGSta][1];
-		_TreeHGSta++;
-		if (_TreeHGSta > 3)
-			_TreeHGSta = 0;
+	} else if (_treeHGTimer == 0) {
+		_treeHGPic = _hgaSeq[_treeHGSta][0];
+		DrawIcon(249, 185, _treeHGPic);
+		_treeHGTimer = _hgaSeq[_treeHGSta][1];
+		_treeHGSta++;
+		if (_treeHGSta > 3)
+			_treeHGSta = 0;
 
 		int var2 = 6;
 		while (true) {
@@ -1467,11 +1467,11 @@ void KingdomGame::CheckMainScreen() {
 				var2--;
 			else {
 				DrawIcon(249, 171, 40 + var2);
-				_TreeHGUPic = 40 + var2;
+				_treeHGUPic = 40 + var2;
 			}
 		}
 	} else
-		_TreeHGTimer--;
+		_treeHGTimer--;
 }
 
 bool KingdomGame::ChkDesertObstacles() {
@@ -1479,8 +1479,8 @@ bool KingdomGame::ChkDesertObstacles() {
 		return false;
 
 	_NextNode = _NodeNum;
-	if (_LastObs) {
-		_LastObs = false;
+	if (_lastObs) {
+		_lastObs = false;
 		return false;
 	}
 
@@ -1490,7 +1490,7 @@ bool KingdomGame::ChkDesertObstacles() {
 				if (_rnd->getRandomNumber(5) == 0) {
 					_statPlay = 250;
 					_LastObstacle = _NodeNum;
-					_LastObs = true;
+					_lastObs = true;
 					_loopFlag = true;
 					return true;
 				} else {
@@ -1508,24 +1508,24 @@ bool KingdomGame::ChkDesertObstacles() {
 		_statPlay = 280;
 		_RobberyNode = _NodeNum;
 		_LastObstacle = _NodeNum;
-		_LastObs = true;
+		_lastObs = true;
 		_loopFlag = true;
 		return true;
 	}
 }
 
 void KingdomGame::SwitchAtoM() {
-	_ASMode = true;
+	_asMode = true;
 	_ASMap = _CurrMap;
 	SaveAS();
 	_IconSel = 9;
 	_OldTLS = _TreeLeftSta;
-	_OldTRS = _TreeRightSta;
+	_OldTRS = _treeRightSta;
 	_OldPouch = _Pouch;
 	_OldHelp = _Help;
 	_OldIconsClosed = _IconsClosed;
 	_TreeLeftSta = 0;
-	_TreeRightSta = 0;
+	_treeRightSta = 0;
 	_Pouch = false;
 	_Help = false;
 	_IconsClosed = true;
@@ -1590,7 +1590,7 @@ int KingdomGame::GetAKey() {
 			break;
 		case Common::EVENT_LBUTTONUP: // retval == 2?
 			if (_Eye)
-				retval = !_ASMode ? 0x43A : 0x43B;
+				retval = !_asMode ? 0x43A : 0x43B;
 			break;
 		case Common::EVENT_RBUTTONUP: // retval == 1?
 			retval = _MouseValue;
@@ -1602,14 +1602,14 @@ int KingdomGame::GetAKey() {
 		default:
 			RefreshSound();
 			CheckMainScreen();
-			if (_ATimerFlag) {
-				_ATimerFlag = false;
+			if (_aTimerFlag) {
+				_aTimerFlag = false;
 				retval = 0x2F1;
-			} else if (_BTimerFlag) {
-				_BTimerFlag = false;
+			} else if (_bTimerFlag) {
+				_bTimerFlag = false;
 				retval = 0x2F2;
-			} else if (_SkylarTimerFlag) {
-				_SkylarTimerFlag = false;
+			} else if (_skylarTimerFlag) {
+				_skylarTimerFlag = false;
 				retval = 0x2F5;
 			} else
 				retval= 0;
@@ -1667,7 +1667,7 @@ void KingdomGame::CursorType() {
 	switch(_MouseValue) {
 	case 0x18A:
 		if (_Eye)
-			_MouseValue = !_ASMode ? 0x43A : 0x43B;
+			_MouseValue = !_asMode ? 0x43A : 0x43B;
 		else
 			_MouseValue = 0;
 		break;
@@ -1684,9 +1684,9 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0;
 		break;
 	case 0x18D:
-		if (_TreeRightSta == 1)
+		if (_treeRightSta == 1)
 			_MouseValue = _Help ? 0x43C : 0;
-		if (_TreeRightSta == 2)
+		if (_treeRightSta == 2)
 			_MouseValue = 0x440;
 		break;
 	case 0x24A:
@@ -1711,15 +1711,15 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0;
 		break;
 	case 0x428:
-		if (_NodeNum == 5 && _gameMode != 2 && _Spell1)
+		if (_NodeNum == 5 && _gameMode != 2 && _spell1)
 			_MouseValue = 0;
 		break;
 	case 0x42A:
-		if (_NodeNum == 5 && _gameMode != 2 && _Spell2)
+		if (_NodeNum == 5 && _gameMode != 2 && _spell2)
 			_MouseValue = 0;
 		break;
 	case 0x42B:
-		if (_NodeNum == 5 && _gameMode != 2 && _Spell3)
+		if (_NodeNum == 5 && _gameMode != 2 && _spell3)
 			_MouseValue = 0;
 		break;
 	case 0x445:
@@ -1731,7 +1731,7 @@ void KingdomGame::CursorType() {
 			_MouseValue = 0;
 		break;
 	case 0x457:
-		if (!_TideCntl)
+		if (!_tideCntl)
 			_MouseValue = 0;
 		break;
 	}
@@ -1740,12 +1740,12 @@ void KingdomGame::CursorType() {
 	for (int var6 = 0; var6 < 8; var6++) {
 		if (_MouseValue == 181 + var6) {
 			int var2 = _NodeNum;
-			if (_TSIconOnly!= 0)
+			if (_tsIconOnly)
 				var2 = 79;
 			if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
 				var2 = 80;
 			int indx = _iconActTable[var2][var6];
-			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_IconsClosed && !_ItemInhibit) {
+			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_IconsClosed && !_itemInhibit) {
 				_MouseValue = indx + 0x428;
 				_IconSelect = var6;
 				break;
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index f90755287b..90d56db6de 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -120,38 +120,38 @@ namespace Kingdom {
 		bool _sound;
 		bool _lastSound;
 		bool _fullScreen;
-		int _FrameStop;
-		int _DaelonCntr;
-		bool _Spell1;
-		bool _Spell2;
-		bool _Spell3;
-		bool _ItemInhibit;
-		bool _ASMode;
-		bool _ATimerFlag;
-		bool _BTimerFlag; // TODO: this flag is always false: to be refactored
-		bool _CTimerFlag; // TODO: this flag is always false: to be refactored
-		bool _SkylarTimerFlag; // TODO: this flag is always false: to be refactored
-		int _ATimer;
-		int _BTimer;
-		int _CTimer;
-		int _SkylarTimer;
-		bool _TideCntl;
-		bool _MapEx;
-		int _Health;
-		int _HealthOld;
-		int _HealthTmr;
-		int _TreeEyeTimer;
-		int _TreeEyePic;
-		int _TreeEyeSta;
-		int _TreeHGTimer;
-		int _TreeHGPic;
-		int _TreeHGUPic;
-		int _TreeLeftPic;
-		int _TreeRightPic;
-		int _TreeRightSta;
-		int _TreeHGSta;
-		bool _TSIconOnly;
-		bool _LastObs;
+		int _frameStop;
+		int _daelonCntr;
+		bool _spell1;
+		bool _spell2;
+		bool _spell3;
+		bool _itemInhibit;
+		bool _asMode;
+		bool _aTimerFlag;
+		bool _bTimerFlag;
+		bool _cTimerFlag;
+		bool _skylarTimerFlag;
+		int _aTimer;
+		int _bTimer;
+		int _cTimer;
+		int _skylarTimer;
+		bool _tideCntl;
+		bool _mapEx;
+		int _health;
+		int _healthOld;
+		int _healthTmr;
+		int _treeEyeTimer;
+		int _treeEyePic;
+		int _treeEyeSta;
+		int _treeHGTimer;
+		int _treeHGPic;
+		int _treeHGUPic;
+		int _treeLeftPic;
+		int _treeRightPic;
+		int _treeRightSta;
+		int _treeHGSta;
+		bool _tsIconOnly;
+		bool _lastObs;
 		bool _Pouch;
 		bool _NoMusic;
 		byte *_ASPtr;


Commit: c6b5280185907ed7b7c2ab79a7df3c6cdf58b995
    https://github.com/scummvm/scummvm/commit/c6b5280185907ed7b7c2ab79a7df3c6cdf58b995
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Some more renaming

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index e8b913d371..b801a9c5a0 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -27,21 +27,21 @@ namespace Kingdom {
 void KingdomGame::GPLogic1() {
 	switch(_statPlay) {
 	case 10:
-		_NodeNum = 1;
+		_nodeNum = 1;
 		InitPlay();
-		_Replay = false;
+		_replay = false;
 		GPLogic1_SubSP10();
 		break;
 	case 11:
 		switch(_UserInput) {
 		case 0x190:
 			_statPlay = 20;
-			_Wizard = false;
+			_wizard = false;
 			_aTimer = 0;
 			break;
 		case 0x191:
 			_statPlay = 20;
-			_Wizard = true;
+			_wizard = true;
 			_aTimer = 0;
 			break;
 		case 0x192:
@@ -52,10 +52,10 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x193:
 			_aTimer = 0;
-			_KeyActive = 0;
+			_keyActive = false;
 			_noIFScreen = true;
 			PlaySound(0);
-			while(!_KeyActive) {
+			while(!_keyActive) {
 				FadeToBlack2();
 				PlayMovie(54);
 			}
@@ -73,7 +73,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x2F1:
 			EraseCursorAsm();
-			_CursorDrawn = false;
+			_cursorDrawn = false;
 			FadeToBlack2();
 			PlaySound(0);
 			PlayMovie(54);
@@ -89,7 +89,7 @@ void KingdomGame::GPLogic1() {
 		InitPlay();
 		_noIFScreen = false;
 		EraseCursorAsm();
-		_CursorDrawn = false;
+		_cursorDrawn = false;
 		FadeToBlack2();
 		ShowPic(106);
 		_statPlay = 30;
@@ -97,12 +97,12 @@ void KingdomGame::GPLogic1() {
 		_loopFlag = true;
 		break;
 	case 30:
-		_NodeNum = 3;
+		_nodeNum = 3;
 		_UserInput = 0;
 		if (_Nodes[3] == 0) {
 			PlayMovie(177);
 			_Nodes[3] = 9;
-			if (!_Wizard) {
+			if (!_wizard) {
 				_statPlay = 50;
 				_loopFlag = true;
 				break;
@@ -116,7 +116,7 @@ void KingdomGame::GPLogic1() {
 		
 		PlayMovie(7);
 		_statPlay = 31;
-		_CurrMap = 10;
+		_currMap = 10;
 		PlaySound(24);
 		_UserInput = 0;
 		break;
@@ -124,13 +124,13 @@ void KingdomGame::GPLogic1() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 32;
-			_Zoom = 2;
-			ProcessMap(3, _Zoom);
+			_zoom = 2;
+			ProcessMap(3, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -142,7 +142,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(3);
 		break;
 	case 40:
-		_NodeNum = 4;
+		_nodeNum = 4;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[4] == 0)
@@ -151,7 +151,7 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(8);
 			_tsIconOnly = true;
 		}
-		_CurrMap = 10;
+		_currMap = 10;
 		PlaySound(14);
 		_statPlay = 41;
 		break;
@@ -161,20 +161,20 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(178);
 			PlayMovie(63);
 			InventoryDel(1);
-			_CurrMap = 10;
+			_currMap = 10;
 			_Nodes[4] = 9;
 			_statPlay = 41;
 			_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 42;
-			_Zoom = 2;
-			ProcessMap(4, _Zoom);
+			_zoom = 2;
+			ProcessMap(4, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -186,9 +186,9 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(4);
 		break;
 	case 50:
-		_NodeNum = 5;
+		_nodeNum = 5;
 		DrawLocation();
-		if (_Nodes[5] != 0 && !_Resurrect) {
+		if (_Nodes[5] != 0 && !_resurrect) {
 			_frameStop = 38;
 			PlayMovie(5);
 		}
@@ -196,18 +196,18 @@ void KingdomGame::GPLogic1() {
 		if (_Nodes[5] == 0)
 			PlayMovie(5);
 		
-		_Resurrect = false;
+		_resurrect = false;
 		PlaySound(1);
 		
 		if (_spell1 && _spell2 && _spell3) {
 			_sound = true;
 			PlayMovie(2);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 51;
 			_loopFlag = true;
 		} else if (_daelonCntr) {
 			PlayMovie(2);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 51;
 		} else {
 			switch(_Nodes[5]) {
@@ -233,11 +233,11 @@ void KingdomGame::GPLogic1() {
 			}
 			if (_spell1 && _spell2 && _spell3) {
 				PlayMovie(6);
-				_CurrMap = 7;
+				_currMap = 7;
 				_statPlay = 51;
 				_loopFlag = true;
 			} else {
-				_Eye = false;
+				_eye = false;
 				PlayMovie(61);
 				PlaySound(1);
 
@@ -250,7 +250,7 @@ void KingdomGame::GPLogic1() {
 				if (!_spell3)
 					DrawPic(118);
 				
-				_CurrMap = 6;
+				_currMap = 6;
 				_statPlay = 53;
 				_loopFlag = true;
 			}
@@ -272,13 +272,13 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43A:
 			_statPlay = 52;
-			_Zoom = 2;
-			ProcessMap(5, _Zoom);
+			_zoom = 2;
+			ProcessMap(5, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -295,35 +295,35 @@ void KingdomGame::GPLogic1() {
 			_Nodes[5] = 1;
 			_daelonCntr = 5;
 			PlayMovie(6);
-			_CurrMap = 7;
+			_currMap = 7;
 			_statPlay = 51;
-			_Eye = true;
+			_eye = true;
 			break;
 		case 0x42A:
 			_Nodes[5] = 2;
 			_daelonCntr = 5;
 			PlayMovie(6);
-			_CurrMap = 7;
+			_currMap = 7;
 			_statPlay = 51;
-			_Eye = true;
+			_eye = true;
 			break;
 		case 0x42B:
 			_Nodes[5] = 3;
 			_daelonCntr = 5;
 			PlayMovie(6);
-			_CurrMap = 7;
+			_currMap = 7;
 			_statPlay = 51;
-			_Eye = true;
+			_eye = true;
 			break;
 		case 0x43E:
-			if (!_spell1 && !_spell2 && !_spell3 && !_Wizard) {
+			if (!_spell1 && !_spell2 && !_spell3 && !_wizard) {
 				PlayMovie(177);
 				DrawLocation();
 				PlayMovie(5);
 			}
 
 			PlaySound(1);
-			_Eye = false;
+			_eye = false;
 			PlayMovie(61);
 
 			if (!_spell1)
@@ -342,7 +342,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 60:
-		_NodeNum = 6;
+		_nodeNum = 6;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[4] == 0) {
@@ -353,22 +353,22 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(64);
 			_statPlay = 200;
 		}
-		_CurrMap = 10;
+		_currMap = 10;
 		_loopFlag = true;
 		break;
 	case 70:
-		_NodeNum = 7;
+		_nodeNum = 7;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[7] == 0) {
 			PlayMovie(11);
 			PlaySound(2);
-			_CurrMap = 9;
+			_currMap = 9;
 		} else {
 			_sound = true;
 			PlayMovie(13);
 			PlaySound(43);
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 		}
 		_statPlay = 71;
@@ -383,19 +383,19 @@ void KingdomGame::GPLogic1() {
 				PlaySound(30);
 				InventoryAdd(7);
 				_Nodes[7] = 9;
-				_CurrMap = 10;
+				_currMap = 10;
 			}
 			_UserInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 72;
-			_Zoom = 2;
-			ProcessMap(7, _Zoom);
+			_zoom = 2;
+			ProcessMap(7, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -407,19 +407,19 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(7);
 		break;
 	case 80:
-		_NodeNum = 8;
+		_nodeNum = 8;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[8] == 9) {
 			PlayMovie(24);
 			PlaySound(3);
-			_CurrMap = 13;
+			_currMap = 13;
 			_tsIconOnly = true;
 		} else {
 			_Nodes[8] = 0;
 			DsAll();
 			PlayMovie(14);
-			_CurrMap = 10;
+			_currMap = 10;
 			SetATimer();
 		}
 		_statPlay = 81;
@@ -440,7 +440,7 @@ void KingdomGame::GPLogic1() {
 				PlaySound(3);
 				InventoryDel(1);
 				_UserInput = 0;
-				_CurrMap = 13;
+				_currMap = 13;
 				_Nodes[8] = 1;
 			}
 			break;
@@ -452,7 +452,7 @@ void KingdomGame::GPLogic1() {
 				PlaySound(3);
 				InventoryDel(2);
 				_UserInput = 0;
-				_CurrMap = 13;
+				_currMap = 13;
 				_Nodes[8] = 1;
 			}
 			break;
@@ -464,7 +464,7 @@ void KingdomGame::GPLogic1() {
 				PlaySound(3);
 				_Nodes[8] = 9;
 				_tsIconOnly = true;
-				_CurrMap = 13;
+				_currMap = 13;
 			}
 			break;
 		case 0x42D:
@@ -475,19 +475,19 @@ void KingdomGame::GPLogic1() {
 				PlaySound(3);
 				_aTimer = 0;
 				_UserInput = 0;
-				_CurrMap = 13;
+				_currMap = 13;
 				_Nodes[8] = 1;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 82;
-			_Zoom = 2;
-			ProcessMap(8, _Zoom);
+			_zoom = 2;
+			ProcessMap(8, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			_aTimer = 0;
 			break;
 		case 0x453:
@@ -510,12 +510,12 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(8);
 		break;
 	case 90:
-		if (_NodeNum == 18 && _Nodes[17] == 0) {
+		if (_nodeNum == 18 && _Nodes[17] == 0) {
 			_statPlay = 170;
 			_loopFlag = true;
-			_NextNode = 90;
+			_nextNode = 90;
 		} else {
-			_NodeNum = 9;
+			_nodeNum = 9;
 			DrawLocation();
 			_UserInput = 0;
 			if (_Nodes[9] == 0) {
@@ -524,17 +524,17 @@ void KingdomGame::GPLogic1() {
 			} else
 				_sound = true;
 			
-			if (!_Wizard)
+			if (!_wizard)
 				_frameStop = 90;
 
 			PlayMovie(19);
 			PlaySound(15);
-			if (!_Wizard)
+			if (!_wizard)
 				ShowPic(109);
 			else
 				ShowPic(319);
 
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 91;
 		}
 		break;
@@ -542,17 +542,17 @@ void KingdomGame::GPLogic1() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 92;
-			_Zoom = 2;
-			ProcessMap(9, _Zoom);
+			_zoom = 2;
+			ProcessMap(9, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			if (!_Wizard)
+			if (!_wizard)
 				_frameStop = 90;
 
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
-			if (!_Wizard)
+			PlayMovie(_pMovie);
+			if (!_wizard)
 				ShowPic(109);
 			else
 				ShowPic(319);
@@ -567,12 +567,12 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(9);
 		break;
 	case 100:
-		if (_NodeNum == 18 && _Nodes[17] == 0) {
+		if (_nodeNum == 18 && _Nodes[17] == 0) {
 			_statPlay = 170;
 			_loopFlag = true;
-			_NextNode = 100;
+			_nextNode = 100;
 		} else {
-			_NodeNum = 10;
+			_nodeNum = 10;
 			DrawLocation();
 			_UserInput = 0;
 			if (_Nodes[10] == 1)
@@ -581,12 +581,12 @@ void KingdomGame::GPLogic1() {
 			if (_Nodes[10] != 9) {
 				_sound = false;
 				_Nodes[10] = 1;
-			} else if (_Wizard)
+			} else if (_wizard)
 				_sound = true;
 
 			PlayMovie(20);
 			PlaySound(41);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 101;
 		}
 		break;
@@ -594,13 +594,13 @@ void KingdomGame::GPLogic1() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 102;
-			_Zoom = 2;
-			ProcessMap(10, _Zoom);
+			_zoom = 2;
+			ProcessMap(10, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -608,7 +608,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(10);
 		break;
 	case 110:
-		_NodeNum = 11;
+		_nodeNum = 11;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[22] == 0)
@@ -617,15 +617,15 @@ void KingdomGame::GPLogic1() {
 			_sound = true;
 		PlayMovie(21);
 		PlaySound(42);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 111;
 		break;
 	case 111:
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 112;
-			_Zoom = 1;
-			ProcessMap(11, _Zoom);
+			_zoom = 1;
+			ProcessMap(11, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
@@ -641,17 +641,17 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(11);
 		break;
 	case 120:
-		_NodeNum = 12;
+		_nodeNum = 12;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[12] == 0) {
 			PlayMovie(22);
-			_CurrMap = 14;
+			_currMap = 14;
 		} else {
 			PlayMovie(25);
-			_CurrMap = 15;
+			_currMap = 15;
 		}
-		_Eye = false;
+		_eye = false;
 		PlaySound(3);
 		_statPlay = 121;
 		break;
@@ -660,13 +660,13 @@ void KingdomGame::GPLogic1() {
 		case 0x445:
 			_statPlay = 150;
 			_loopFlag = true;
-			_Eye = true;
+			_eye = true;
 			_UserInput = 0;
 			break;
 		case 0x446:
 			_statPlay = 80;
 			_loopFlag = true;
-			_Eye = true;
+			_eye = true;
 			_UserInput = 0;
 			break;
 		case 0x437:
@@ -677,11 +677,11 @@ void KingdomGame::GPLogic1() {
 				GPLogic1_SubSP121();
 			break;
 		case 0x43E:
-			if (_PMovie == 023)
+			if (_pMovie == 023)
 				GPLogic1_SubSP121();
 			else {
 				_sound = _lastSound;
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 				PlaySound(3);
 			}
 			break;
@@ -692,7 +692,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 130:
-		_NodeNum = 13;
+		_nodeNum = 13;
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
@@ -701,13 +701,13 @@ void KingdomGame::GPLogic1() {
 		_loopFlag = true;
 		break;
 	case 140:
-		_NodeNum = 14;
+		_nodeNum = 14;
 		DrawLocation();
 		_UserInput = 0;
 		if (Wound()) {
 			PlayMovie(26);
 			PlaySound(35);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 141;
 		} else {
 			DsAll();
@@ -721,13 +721,13 @@ void KingdomGame::GPLogic1() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 142;
-			_Zoom = 2;
-			ProcessMap(14, _Zoom);
+			_zoom = 2;
+			ProcessMap(14, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -739,19 +739,19 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(14);
 		break;
 	case 150:
-		_NodeNum = 15;
+		_nodeNum = 15;
 		DrawLocation();
 		PlayMovie(28);
 		PlaySound(3);
-		_CurrMap = 16;
+		_currMap = 16;
 		_statPlay = 151;
-		_Eye = false;
+		_eye = false;
 		break;
 	case 151:
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			_aTimer = 0;
 			break;
 		case 0x445:
@@ -767,12 +767,12 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 160:
-		_NodeNum = 16;
+		_nodeNum = 16;
 		DrawLocation();
 		_UserInput = 0;
 		PlayMovie(29);
 		PlaySound(3);
-		_CurrMap = 85;
+		_currMap = 85;
 		_statPlay = 161;
 		break;
 	case 161:
@@ -780,31 +780,31 @@ void KingdomGame::GPLogic1() {
 		case 0x198: {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
-			_Replay = true;
-			int oldPMovie = _PMovie;
+			_replay = true;
+			int oldPMovie = _pMovie;
 			PlayMovie(208);
-			_PMovie = oldPMovie;
+			_pMovie = oldPMovie;
 			_asMode = false;
 			RestoreAS();
-			_Help = true;
-			_Eye = true;
+			_help = true;
+			_eye = true;
 			_Pouch = true;
-			_CurrMap = 85;
+			_currMap = 85;
 			}
 			break;
 		case 0x199: {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
-			_Replay = true;
-			int oldPMovie = _PMovie;
+			_replay = true;
+			int oldPMovie = _pMovie;
 			PlayMovie(207);
-			_PMovie = oldPMovie;
+			_pMovie = oldPMovie;
 			_asMode = false;
 			RestoreAS();
-			_Help = true;
-			_Eye = true;
+			_help = true;
+			_eye = true;
 			_Pouch = true;
-			_CurrMap = 85;
+			_currMap = 85;
 			}
 			break;
 		case 0x19A:
@@ -826,29 +826,29 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43A:
 			_statPlay = 162;
-			_Zoom = 2;
-			ProcessMap(16, _Zoom);
+			_zoom = 2;
+			ProcessMap(16, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			if (_PMovie > 206)
+			if (_pMovie > 206)
 				SaveAS();
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
-			if (_PMovie > 206)
+			PlayMovie(_pMovie);
+			if (_pMovie > 206)
 				RestoreAS();
 			break;
 		case 0x444:
 			SaveAS();
-			_Help = false;
-			_Eye = false;
+			_help = false;
+			_eye = false;
 			_Pouch = false;
-			_Replay = false;
+			_replay = false;
 			FShowPic(105);
-			_CurrMap = 86;
+			_currMap = 86;
 			break;
 		case 0x445:
-			if (_Nodes[16] || !_Wizard) {
+			if (_Nodes[16] || !_wizard) {
 				_statPlay = 120;
 				_loopFlag = true;
 			}
@@ -885,14 +885,14 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 170:
 		if (_Nodes[17] == 9) {
-			_statPlay = _NextNode;
+			_statPlay = _nextNode;
 			_loopFlag = true;
 		} else {
-			_NodeNum = 17;
+			_nodeNum = 17;
 			DrawLocation();
 			DsAll();
 			PlayMovie(30);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 171;
 			SetATimer();
 			_UserInput = 0;
@@ -904,9 +904,9 @@ void KingdomGame::GPLogic1() {
 			EnAll();
 			if (Wound()) {
 				_aTimer = 0;
-				_Replay = false;
+				_replay = false;
 				PlayMovie(31);
-				_statPlay = _NextNode;
+				_statPlay = _nextNode;
 				_loopFlag = true;
 			} else {
 				DsAll();
@@ -917,12 +917,12 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42C:
 			_aTimer = 0;
-			_Replay = false;
+			_replay = false;
 			EnAll();
 			PlayMovie(34);
 			_UserInput = 0;
 			_Nodes[17] = 9;
-			_statPlay = _NextNode;
+			_statPlay = _nextNode;
 			_loopFlag = true;
 			break;
 		default:
@@ -937,21 +937,21 @@ void KingdomGame::GPLogic1() {
 			_loopFlag= true;
 			SwitchAS();
 		} else
-			ProcessMapInput(_NodeNum);
+			ProcessMapInput(_nodeNum);
 		break;
 	case 180:
-		if ((_NodeNum != 9 && _NodeNum != 10) || (_Nodes[17] != 0)) {
-			_NodeNum = 18;
+		if ((_nodeNum != 9 && _nodeNum != 10) || (_Nodes[17] != 0)) {
+			_nodeNum = 18;
 			DrawLocation();
 			_UserInput = 0;
 			if (_Nodes[18] == 0 || _Nodes[18] == 1) {
 				_Nodes[18] = 0;
 				PlayMovie(33);
-				_CurrMap = 10;
+				_currMap = 10;
 			}
 			if (_Nodes[18] == 9) {
 				PlayMovie(37);
-				_CurrMap = 19;
+				_currMap = 19;
 				_tsIconOnly = true;
 			}
 			PlaySound(16);
@@ -959,7 +959,7 @@ void KingdomGame::GPLogic1() {
 		} else {
 			_statPlay = 170;
 			_loopFlag = true;
-			_NextNode = 180;
+			_nextNode = 180;
 		}
 		break;
 	case 181:
@@ -1001,7 +1001,7 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(36);
 				InventoryDel(7);
 				_Nodes[18] = 9;
-				_CurrMap = 19;
+				_currMap = 19;
 				_tsIconOnly = true;
 			} else {
 				_frameStop = 27;
@@ -1013,23 +1013,23 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43A:
 			_statPlay = 182;
-			_Zoom = 2;
+			_zoom = 2;
 			if (_Nodes[18] == 9)
-				ProcessMap(80, _Zoom);
+				ProcessMap(80, _zoom);
 			else
-				ProcessMap(18, _Zoom);
+				ProcessMap(18, _zoom);
 
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			if (_PMovie == 36 && _Nodes[18] != 9) {
+			if (_pMovie == 36 && _Nodes[18] != 9) {
 				_frameStop = 27;
 				_fstFwd = false;
 				PlayMovie(36);
 				_fstFwd = true;
 			} else
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -1041,7 +1041,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(18);
 		break;
 	case 190:
-		_NodeNum = 19;
+		_nodeNum = 19;
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
@@ -1050,7 +1050,7 @@ void KingdomGame::GPLogic1() {
 		_loopFlag = true;
 		break;
 	case 200:
-		_NodeNum = 20;
+		_nodeNum = 20;
 		DrawLocation();
 		_UserInput = 0;
 		if (!_Nodes[20]) {
@@ -1062,20 +1062,20 @@ void KingdomGame::GPLogic1() {
 			DrawPic(178);
 		}
 		PlaySound(42);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 201;
 		break;
 	case 201:
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 202;
-			_Zoom = 0;
-			ProcessMap(20, _Zoom);
+			_zoom = 0;
+			ProcessMap(20, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -1083,22 +1083,22 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(20);
 		break;
 	case 210:
-		_NodeNum = 21;
+		_nodeNum = 21;
 		DrawLocation();
 		_UserInput = 0;
-		if (!_Wizard)
+		if (!_wizard)
 			_Nodes[21] = 9;
 
 		if (_Nodes[21] == 9) {
 			_Nodes[21] = 9;
 			PlayMovie(209);
 			PlaySound(38);
-			_CurrMap = 81;
+			_currMap = 81;
 		} else {
 			DsAll();
 			PlayMovie(45);
 			_Nodes[21] = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			SetATimer();
 		}
 		_statPlay = 211;
@@ -1147,25 +1147,25 @@ void KingdomGame::GPLogic1() {
 				InventoryDel(5);
 				_Nodes[21] = 9;
 				_UserInput = 0;
-				_CurrMap = 81;
+				_currMap = 81;
 				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 212;
-			_Zoom = 2;
-			ProcessMap(21, _Zoom);
+			_zoom = 2;
+			ProcessMap(21, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			if (_PMovie == 65) {
+			if (_pMovie == 65) {
 				SaveAS();
 				PlayMovie(65);
 				RestoreAS();
 				_UserInput = 0;
 			} else {
 				_sound = _lastSound;
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 			}
 			break;
 		case 0x441:
@@ -1205,16 +1205,16 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(21);
 		break;
 	case 220:
-		_NodeNum = 22;
+		_nodeNum = 22;
 		DrawLocation();
 		_UserInput = 0;
 		if (!_Nodes[22]) {
 			PlayMovie(41);
-			_CurrMap = 82;
+			_currMap = 82;
 		} else {
 			_tsIconOnly = true;
 			PlayMovie(44);
-			_CurrMap = 10;
+			_currMap = 10;
 		}
 		PlaySound(38);
 		_statPlay = 221;
@@ -1244,7 +1244,7 @@ void KingdomGame::GPLogic1() {
 				_tsIconOnly = true;
 			}
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			break;
 		case 0x42C:
 			if (!_Nodes[22]) {
@@ -1260,13 +1260,13 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43A:
 			_statPlay = 222;
-			_Zoom = 2;
-			ProcessMap(22, _Zoom);
+			_zoom = 2;
+			ProcessMap(22, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -1278,7 +1278,7 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(22);
 		break;
 	case 230:
-		_NodeNum = 23;
+		_nodeNum = 23;
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
@@ -1287,16 +1287,16 @@ void KingdomGame::GPLogic1() {
 		_loopFlag = true;
 		break;
 	case 240:
-		_NodeNum = 24;
+		_nodeNum = 24;
 		DrawLocation();
 		_UserInput = 0;
 		if (!_Nodes[24]) {
 			PlayMovie(51);
-			_CurrMap = 83;
+			_currMap = 83;
 		} else {
 			PlayMovie(53);
 			ShowPic(119);
-			_CurrMap = 84;
+			_currMap = 84;
 			_tsIconOnly = true;
 		}
 		PlaySound(4);
@@ -1315,7 +1315,7 @@ void KingdomGame::GPLogic1() {
 				_tsIconOnly = true;
 				PlayMovie(66);
 				InventoryDel(1);
-				_CurrMap = 84;
+				_currMap = 84;
 				_Nodes[24] = 9;
 			}
 			break;
@@ -1339,21 +1339,21 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43A:
 			_statPlay = 242;
-			_Zoom = 2;
-			ProcessMap(24, _Zoom);
+			_zoom = 2;
+			ProcessMap(24, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			if (_PMovie == 53) {
+			if (_pMovie == 53) {
 				PlayMovie(53);
 				ShowPic(119);
-				_CurrMap = 84;
+				_currMap = 84;
 			} else
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 			break;
 		case 0x441:
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 300;
 			_loopFlag = true;
 			break;
@@ -1377,7 +1377,7 @@ void KingdomGame::GPLogic1_SubSP10() {
 	ShowPic(115);
 	ShowPic(114);
 
-	_CurrMap = 4;
+	_currMap = 4;
 	_UserInput = 0;
 	_aTimer = 595;
 	_statPlay = 11;
@@ -1398,11 +1398,11 @@ void KingdomGame::GPLogic1_SubSP121() {
 	
 	PlaySound(23);
 	InventoryAdd(15);
-	_CurrMap = 10;
+	_currMap = 10;
 	FShowPic(150);
 	_Nodes[12] = 9;
 	PlaySound(3);
-	_CurrMap = 15;
+	_currMap = 15;
 }
 
 } // NameSpace
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index e7b62fec39..40813a6d48 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -27,19 +27,19 @@ namespace Kingdom {
 void KingdomGame::GPLogic2() {
 	switch(_statPlay) {
 	case 250: {
-		bool highNode = (_NodeNum > 25);
-		_NodeNum = 25;
+		bool highNode = (_nodeNum > 25);
+		_nodeNum = 25;
 
 		DrawLocation();
 		DsAll();
 		if (_Nodes[24] != 0 || highNode) {
-			_Eye = true;
+			_eye = true;
 			PlayMovie(72);
 			_aTimerFlag = false;
 			_aTimer = 114;
 			PlaySound(34);
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 251;
 		} else {
 			_frameStop = 67;
@@ -63,8 +63,8 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43A:
 			_statPlay = 252;
-			_Zoom = 2;
-			ProcessMap(30, _Zoom);
+			_zoom = 2;
+			ProcessMap(30, _zoom);
 			SetATimer();
 			_UserInput = 0;
 			break;
@@ -74,11 +74,11 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(30);
 		break;
 	case 260:
-		_NodeNum = 26;
+		_nodeNum = 26;
 		DrawLocation();
 		DsAll();
 		PlayMovie(74);
-		_CurrMap = 10;
+		_currMap = 10;
 		SetATimer();
 		_statPlay = 261;
 		_UserInput = 0;
@@ -118,7 +118,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			_statPlay = 290;
 			_lastObs = true;
-			_LastObstacle = 29;
+			_lastObstacle = 29;
 			_loopFlag = true;
 			break;
 		case 0x42D:
@@ -140,12 +140,12 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 270:
-		_NodeNum = 27;
+		_nodeNum = 27;
 		DrawLocation();
 		if (_Nodes[28] == 1)
 			_Nodes[28] = 9;
 		if (_Nodes[28] == 9 || _Nodes[29] != 0) {
-			if (_Wizard)
+			if (_wizard)
 				_sound = true;
 		} else {
 			_sound = false;
@@ -153,7 +153,7 @@ void KingdomGame::GPLogic2() {
 		}
 		PlayMovie(80);
 		PlaySound(18);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 271;
 		_Nodes[28] = 1;
 		_UserInput = 0;
@@ -162,13 +162,13 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 272;
-			_Zoom = 2;
-			ProcessMap(27, _Zoom);
+			_zoom = 2;
+			ProcessMap(27, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -176,32 +176,32 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(27);
 		break;
 	case 280:
-		_NodeNum = 28;
+		_nodeNum = 28;
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
 		_fstFwd = false;
 		PlayMovie(81);
-		_CurrMap = 10;
+		_currMap = 10;
 		_Nodes[29] = _Nodes[39] = 1;
-		_statPlay = _RobberyNode * 10;
+		_statPlay = _robberyNode * 10;
 		EnAll();
 		_loopFlag = true;
 		break;
 	case 290:
-		_OldNode = _NodeNum;
-		if (!_Wizard) {
+		_oldNode = _nodeNum;
+		if (!_wizard) {
 			_Nodes[26] = 9;
 			_Nodes[30] = 8;
 		}
 		if (_Nodes[26] == 0) {
 			_statPlay = 260;
 			_loopFlag = true;
-			_NextNode = 29;
+			_nextNode = 29;
 		} else {
 			if (_Nodes[26] == 2)
 				PlayMovie(79);
-			_NodeNum = 29;
+			_nodeNum = 29;
 			if (_Nodes[26] <= 2 || !ChkDesertObstacles()) {
 				DrawLocation();
 				_Nodes[26]++;
@@ -210,26 +210,26 @@ void KingdomGame::GPLogic2() {
 				case 0:
 					_sound = false;
 					PlayMovie(82);
-					_CurrMap = 89;
+					_currMap = 89;
 					_Nodes[30] = 1;
 					break;
 				case 1:
 					_sound = true;
 					PlayMovie(82);
-					_CurrMap = 89;
+					_currMap = 89;
 					_Nodes[30] = 0;
 					break;
 				case 8:
 					_sound = false;
 					PlayMovie(85);
-					_CurrMap = 10;
+					_currMap = 10;
 					_Nodes[30] = 9;
 					_tsIconOnly = true;
 					break;
 				default:
 					_sound = true;
 					PlayMovie(85);
-					_CurrMap = 10;
+					_currMap = 10;
 					_tsIconOnly = true;
 					break;
 				}
@@ -248,7 +248,7 @@ void KingdomGame::GPLogic2() {
 			InventoryAdd(10);
 			_Nodes[30] = 8;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			break;
 		case 0x432:
 			if (_Nodes[30] >= 8)
@@ -262,13 +262,13 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43A:
 			_statPlay = 292;
-			_Zoom = 2;
-			ProcessMap(29, _Zoom);
+			_zoom = 2;
+			ProcessMap(29, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -280,12 +280,12 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 			_statPlay = 250;
 		} else {
-			_NodeNum = 30;
+			_nodeNum = 30;
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
 				PlayMovie(86);
 				PlaySound(18);
-				_CurrMap = 10;
+				_currMap = 10;
 				_statPlay = 301;
 			}
 		}
@@ -294,13 +294,13 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 302;
-			_Zoom = 2;
-			ProcessMap(30, _Zoom);
+			_zoom = 2;
+			ProcessMap(30, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		} 
 		break;
@@ -308,13 +308,13 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(30);
 		break;
 	case 310:
-		_OldNode = _NodeNum;
-		_NodeNum = 31;
+		_oldNode = _nodeNum;
+		_nodeNum = 31;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
 			PlayMovie(67);
 			PlaySound(18);
-			_CurrMap = 90;
+			_currMap = 90;
 			_statPlay = 311;
 			_Nodes[32] = 1;
 			_aTimer = 0;
@@ -325,13 +325,13 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 312;
-			_Zoom = 2;
-			ProcessMap(31, _Zoom);
+			_zoom = 2;
+			ProcessMap(31, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x449:
 			_aTimer = 0;
@@ -346,12 +346,12 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(31);
 		break;
 	case 320:
-		_OldNode = _NodeNum;
-		_NodeNum = 32;
+		_oldNode = _nodeNum;
+		_nodeNum = 32;
 		DrawLocation();
 		_UserInput = 0;
 		IncreaseHealth();
-		if (_Nodes[33] != 9 && _Wizard != 0) {
+		if (_Nodes[33] != 9 && _wizard) {
 			_sound = false;
 			_Nodes[33] = 9;
 		} else {
@@ -360,20 +360,20 @@ void KingdomGame::GPLogic2() {
 		}
 		PlayMovie(87);
 		PlaySound(18);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 321;
 		break;
 	case 321:
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 322;
-			_Zoom = 2;
-			ProcessMap(32, _Zoom);
+			_zoom = 2;
+			ProcessMap(32, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -381,8 +381,8 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(32);
 		break;
 	case 330:
-		_OldNode = _NodeNum;
-		_NodeNum = 33;
+		_oldNode = _nodeNum;
+		_nodeNum = 33;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
 			_UserInput = 0;
@@ -392,7 +392,7 @@ void KingdomGame::GPLogic2() {
 				_sound = true;
 			PlayMovie(88);
 			PlaySound(18);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 331;
 		}
 		break;
@@ -400,13 +400,13 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 332;
-			_Zoom = 2;
-			ProcessMap(33, _Zoom);
+			_zoom = 2;
+			ProcessMap(33, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -417,20 +417,20 @@ void KingdomGame::GPLogic2() {
 		if (_Nodes[36] == 0) {
 			_statPlay = 350;
 			_loopFlag = true;
-			_NextNode = 34;
+			_nextNode = 34;
 		} else {
-			_OldNode = _NodeNum;
-			_NodeNum = 34;
+			_oldNode = _nodeNum;
+			_nodeNum = 34;
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
 				_UserInput = 0;
-				if (_Nodes[35] == 9 || _Nodes[41] == 0 || _Wizard == 0) {
+				if (_Nodes[35] == 9 || _Nodes[41] == 0 || !_wizard) {
 					PlayMovie(91);
-					_CurrMap = 92;
+					_currMap = 92;
 				} else {
 					PlayMovie(89);
 					ShowPic(389);
-					_CurrMap = 91;
+					_currMap = 91;
 				}
 				if (_Nodes[35] == 9)
 					_tsIconOnly = true;
@@ -448,31 +448,31 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(90);
 				InventoryAdd(9);
 				_Nodes[35] = 9;
-				_CurrMap = 93;
+				_currMap = 93;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 342;
-			_Zoom = 2;
-			ProcessMap(34, _Zoom);
+			_zoom = 2;
+			ProcessMap(34, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
-			if (_PMovie == 89)
+			PlayMovie(_pMovie);
+			if (_pMovie == 89)
 				ShowPic(389);
 			break;
 		case 0x445:
 			_statPlay = 410;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		}
@@ -481,17 +481,17 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(34);
 		break;
 	case 350:
-		if (_Wizard == 0)
+		if (!_wizard)
 			_Nodes[36] = 1;
 		if (_Nodes[36] == 1) {
-			_statPlay = _NextNode * 10;
+			_statPlay = _nextNode * 10;
 			_loopFlag = true;
 		} else {
-			_NodeNum = 35;
+			_nodeNum = 35;
 			DrawLocation();
 			DsAll();
 			PlayMovie(92);
-			_CurrMap = 94;
+			_currMap = 94;
 			SetATimer();
 			_UserInput = 0;
 			_statPlay = 351;
@@ -521,15 +521,15 @@ void KingdomGame::GPLogic2() {
 			InventoryDel(2);
 			_Nodes[36] = 1;
 			_UserInput = 0;
-			_statPlay = _NextNode * 10;
+			_statPlay = _nextNode * 10;
 			_lastObs = true;
-			_LastObstacle = _NextNode;
+			_lastObstacle = _nextNode;
 			_loopFlag = true;
 			break;
 		}
 		break;
 	case 360:
-		_NodeNum = 36;
+		_nodeNum = 36;
 		DrawLocation();
 		if (_Nodes[37] == 0)
 			_sound = false;
@@ -538,7 +538,7 @@ void KingdomGame::GPLogic2() {
 		_frameStop = 185;
 		DsAll();
 		PlayMovie(94);
-		_CurrMap = 95;
+		_currMap = 95;
 		SetATimer();
 		_UserInput = 0;
 		_statPlay = 361;
@@ -560,11 +560,11 @@ void KingdomGame::GPLogic2() {
 			PlaySound(5);
 			_Nodes[37] = 1;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			if (_Nodes[43] == 0) {
 				_statPlay = 420;
-				_OldNode = _NodeNum;
-				_NodeNum = 42;
+				_oldNode = _nodeNum;
+				_nodeNum = 42;
 				GPLogic2_SubSP361();
 			} else {
 				_tsIconOnly = true;
@@ -578,7 +578,7 @@ void KingdomGame::GPLogic2() {
 			PlaySound(5);
 			_Nodes[37] = 1;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		case 0x42E:
@@ -589,7 +589,7 @@ void KingdomGame::GPLogic2() {
 			PlaySound(5);
 			_Nodes[37] = 1;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		case 0x431:
@@ -599,10 +599,10 @@ void KingdomGame::GPLogic2() {
 			PlaySound(5);
 			_Nodes[37] = 9;
 			_UserInput = 0;
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 420;
-			_OldNode = _NodeNum;
-			_NodeNum = 42;
+			_oldNode = _nodeNum;
+			_nodeNum = 42;
 			GPLogic2_SubSP361();
 			break;
 		case 0x437:
@@ -614,13 +614,13 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43A:
 			_statPlay = 362;
-			_Zoom = 2;
-			ProcessMap(36, _Zoom);
+			_zoom = 2;
+			ProcessMap(36, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -628,31 +628,31 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(36);
 		break;
 	case 370:
-		_NodeNum = 37;
+		_nodeNum = 37;
 		DrawLocation();
 		_UserInput = 0;
 		_Nodes[38] = 0;
 		PlayMovie(102);
 		PlaySound(20);
-		_CurrMap = 109;
+		_currMap = 109;
 		_statPlay = 371;
 		break;
 	case 371:
 		switch(_UserInput) {
 		case 0x413:
 			_statPlay = 440;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 372;
-			_Zoom = 2;
-			ProcessMap(37, _Zoom);
+			_zoom = 2;
+			ProcessMap(37, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -660,13 +660,13 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(37);
 		break;
 	case 380:
-		_OldNode = _NodeNum;
-		_NodeNum =38;
+		_oldNode = _nodeNum;
+		_nodeNum =38;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
 			_UserInput = 0;
 			PlayMovie(159);
-			_CurrMap = 10;
+			_currMap = 10;
 			PlaySound(7);
 			_Nodes[39] = 1;
 			_statPlay = 381;
@@ -677,7 +677,7 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (_Wizard && _Nodes[39] != 9) {
+			if (_wizard && _Nodes[39] != 9) {
 				InventoryDel(_UserInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
@@ -686,7 +686,7 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x430:
-			if (_Wizard && _Nodes[39] != 9) {
+			if (_wizard && _Nodes[39] != 9) {
 				DsAll();
 				PlayMovie(162);
 				_statPlay = 992;
@@ -694,7 +694,7 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x433:
-			if (_Wizard && _Nodes[39] != 9) {
+			if (_wizard && _Nodes[39] != 9) {
 				PlayMovie(161);
 				InventoryDel(11);
 				_Nodes[51] = 0;
@@ -703,18 +703,18 @@ void KingdomGame::GPLogic2() {
 			_UserInput = 0;
 			break;
 		case 0x435:
-			if (_Wizard && _Nodes[39] != 9) {
+			if (_wizard && _Nodes[39] != 9) {
 				PlayMovie(160);
 				InventoryDel(13);
 				_Nodes[39] = 9;
 				_Nodes[59] = 0;
 				_UserInput = 0;
 				_tsIconOnly = true;
-				_CurrMap = 108;
+				_currMap = 108;
 			}
 			break;
 		case 0x437:
-			if (_Wizard && _Nodes[39] != 9) {
+			if (_wizard && _Nodes[39] != 9) {
 				PlayMovie(163);
 				InventoryDel(15);
 				_Nodes[12] = 0;
@@ -723,29 +723,29 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43A:
 			_statPlay = 382;
-			_Zoom = 2;
-			ProcessMap(38, _Zoom);
+			_zoom = 2;
+			ProcessMap(38, _zoom);
 			_UserInput = 0;
 		break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x456:
 			_statPlay = 370;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		}
 		break;
 	case 382:
-		if (_Wizard && (_Nodes[39] != 9) && (_UserInput == 0x413))
+		if (_wizard && (_Nodes[39] != 9) && (_UserInput == 0x413))
 			_UserInput = 0;
 
 		ProcessMapInput(38);
 		break;
 	case 390:
-		_NodeNum = 39;
+		_nodeNum = 39;
 		DrawLocation();
 		_aTimer = 0;
 		DsAll();
@@ -755,8 +755,8 @@ void KingdomGame::GPLogic2() {
 		_loopFlag = true;
 		break;
 	case 400:
-		_NodeNum = 40;
-		if (!_Wizard)
+		_nodeNum = 40;
+		if (!_wizard)
 			_Nodes[41] = 2;
 		if (_Nodes[41]) {
 			if (_Nodes[41] == 1)
@@ -768,7 +768,7 @@ void KingdomGame::GPLogic2() {
 		} else {
 			DsAll();
 			PlayMovie(105);
-			_CurrMap = 10;
+			_currMap = 10;
 			SetATimer();
 		}
 		
@@ -793,7 +793,7 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(178);
 				_UserInput = 753;
 				_loopFlag = true;
-				_CurrMap = 10;
+				_currMap = 10;
 			}
 			break;
 		case 0x42C:
@@ -819,15 +819,15 @@ void KingdomGame::GPLogic2() {
 		case 0x437:
 			if (!_Nodes[41]) {
 				_aTimer = 0;
-				_Help = 1;
-				_Replay = true;
+				_help = true;
+				_replay = true;
 				_Pouch = 1;
 				_fstFwd = true;
 				PlayMovie(107);
 				PlaySound(26);
 				_Nodes[41] = 1;
 				_UserInput = 0;
-				_CurrMap = 96;
+				_currMap = 96;
 				_tsIconOnly = true;
 				_loopFlag = true;
 			}
@@ -835,11 +835,11 @@ void KingdomGame::GPLogic2() {
 		case 0x43E:
 			_aTimer = 0;
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x441:
 			_statPlay = 460;
-			_CurrMap = 10;
+			_currMap = 10;
 			_UserInput = 0;
 			_loopFlag = true;
 			break;
@@ -850,23 +850,23 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(40);
 		break;
 	case 410:
-		_NodeNum = 41;
+		_nodeNum = 41;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[41])
 			_sound = true;
 
-		_Eye = false;
+		_eye = false;
 		PlayMovie(111);
 		PlaySound(26);
-		_CurrMap = 97;
+		_currMap = 97;
 		_statPlay = 411;
 		break;
 	case 411:
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			if (_PMovie == 120) {
+			if (_pMovie == 120) {
 				SaveAS();
 				_frameStop = 50;
 				PlayMovie(120);
@@ -878,26 +878,26 @@ void KingdomGame::GPLogic2() {
 				}
 				RestoreAS();
 			}
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_UserInput = 0;
 			_loopFlag = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 450;
 			break;
 		case 0x446:
 			_UserInput = 0;
 			_loopFlag = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 460;
 			break;
 		}
 		break;
 	case 420:
-		if (_Nodes[37] == 9 || _Nodes[29] == 1 || !_Wizard) {
-			_OldNode = _NodeNum;
-			_NodeNum = 42;
+		if (_Nodes[37] == 9 || _Nodes[29] == 1 || !_wizard) {
+			_oldNode = _nodeNum;
+			_nodeNum = 42;
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
 				GPLogic2_SubSP361();
@@ -930,19 +930,19 @@ void KingdomGame::GPLogic2() {
 				PlayMovie(113);
 				InventoryAdd(6);
 				_Nodes[43] = 9;
-				_CurrMap = 10;
+				_currMap = 10;
 			}
 			_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 422;
-			_Zoom = 2;
-			ProcessMap(42, _Zoom);
+			_zoom = 2;
+			ProcessMap(42, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		
 		}
@@ -951,18 +951,18 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(42);
 		break;
 	case 430:
-		_NodeNum = 43;
+		_nodeNum = 43;
 		DrawLocation();
-		_Eye = false;
+		_eye = false;
 		_UserInput = 0;
 		if (_Nodes[44] == 9) {
 			_tsIconOnly = true;
 			PlayMovie(118);
-			_CurrMap = 80;
+			_currMap = 80;
 		} else if (_Inventory[12] <= 0) {
 			PlayMovie(115);
 			ShowPic(415);
-			_CurrMap = 78;
+			_currMap = 78;
 			if (!_skylarTimer)
 				_skylarTimer = 5400;
 		} else {
@@ -972,12 +972,12 @@ void KingdomGame::GPLogic2() {
 			InventoryDel(12);
 			InventoryAdd(16);
 			_Nodes[44] = 9;
-			_CurrMap = 79;
+			_currMap = 79;
 			_tsIconOnly = true;
 		}
 		_statPlay = 431;
 		PlaySound(20);
-		_Eye = false;
+		_eye = false;
 		break;
 	case 431:
 		switch(_UserInput) {
@@ -986,25 +986,25 @@ void KingdomGame::GPLogic2() {
 				_statPlay = 200;
 				if (_Nodes[44] != 9)
 					_Nodes[20] = 1;
-				_CurrMap = 10;
+				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x414:
 				PlayMovie(10);
 				_statPlay = 390;
-				_CurrMap = 10;
+				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x41D:
 				PlayMovie(10);
 				_statPlay = 500;
-				_CurrMap = 10;
+				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x422:
 				PlayMovie(10);
 				_statPlay = 380;
-				_CurrMap = 10;
+				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x428:
@@ -1032,7 +1032,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 440:
-		_NodeNum = 44;
+		_nodeNum = 44;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Inventory[12] > 0 || _Nodes[44] == 9)
@@ -1040,24 +1040,24 @@ void KingdomGame::GPLogic2() {
 
 		PlayMovie(119);
 		PlaySound(20);
-		_CurrMap = 100;
+		_currMap = 100;
 		_statPlay = 441;
 		break;
 	case 441:
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 442;
-			_Zoom = 2;
-			ProcessMap(44, _Zoom);
+			_zoom = 2;
+			ProcessMap(44, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x452:
 			_statPlay = 430;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		}
@@ -1066,19 +1066,19 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(44);
 		break;
 	case 450:
-		_NodeNum = 45;
+		_nodeNum = 45;
 		_UserInput = 0;
 		if (!_Nodes[41]) {
 			DsAll();
 			PlayMovie(120);
 			_statPlay = 992;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 		} else {
 			_fstFwd = false;
 			_frameStop = 50;
 			PlayMovie(120);
-			_CurrMap = 17;
+			_currMap = 17;
 			_statPlay = 451;
 		}
 		break;
@@ -1088,23 +1088,23 @@ void KingdomGame::GPLogic2() {
 			_sound = _lastSound;
 			_fstFwd = false;
 			_frameStop = 50;
-			PlayMovie(_PMovie);
-			_CurrMap = 17;
+			PlayMovie(_pMovie);
+			_currMap = 17;
 			PlaySound(26);
 			break;
 		case 0x441:
 			_statPlay = 410;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		}
 		break;
 	case 460:
-		_Eye = false;
-		_NodeNum = 46;
+		_eye = false;
+		_nodeNum = 46;
 		DrawLocation();
 		_UserInput = 0;
-		if (_Nodes[47] && _Wizard)
+		if (_Nodes[47] && _wizard)
 			_Nodes[47] = 1;
 		else {
 			_Nodes[47] = 0;
@@ -1112,27 +1112,27 @@ void KingdomGame::GPLogic2() {
 		}
 		PlayMovie(121);
 		PlaySound(26);
-		_CurrMap = 107;
+		_currMap = 107;
 		_statPlay = 461;
 		break;
 	case 461:
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 340;
 			_UserInput = 0;
 			_loopFlag = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			_lastObs = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
 			_UserInput = 0;
 			_loopFlag = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			break;
 		}
 		break;
@@ -1140,10 +1140,10 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(46);
 		break;
 	case 480:
-		_NodeNum = 48;
+		_nodeNum = 48;
 		_UserInput = 0;
 		PlayMovie(114);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 481;
 		_Nodes[49] = 1;
 		break;
@@ -1151,13 +1151,13 @@ void KingdomGame::GPLogic2() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 482;
-			_Zoom = 2;
-			ProcessMap(48, _Zoom);
+			_zoom = 2;
+			ProcessMap(48, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		}
 		break;
@@ -1165,12 +1165,12 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(48);
 		break;
 	case 490:
-		_NodeNum = 49;
+		_nodeNum = 49;
 		DrawLocation();
 		DsAll();
 		PlayMovie(180);
 		PlaySound(18);
-		_CurrMap = 101;
+		_currMap = 101;
 		_statPlay = 491;
 		_aTimer = 0;
 		_UserInput = 0;
@@ -1185,7 +1185,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(178);
 			_UserInput = 753;
 			_loopFlag = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			break;
 		case 0x442:
 			PlayMovie(182);
@@ -1193,14 +1193,14 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 			break;
 		case 0x44A:
-			_CurrMap = 10;
+			_currMap = 10;
 			_UserInput = 0;
 			_aTimer = 0;
 			EnAll();
 			PlayMovie(181);
 			_Nodes[29] = 9;
 			_Nodes[49] = 0;
-			_statPlay = _NextNode * 10;
+			_statPlay = _nextNode * 10;
 			_loopFlag = true;
 			break;
 		}
@@ -1215,22 +1215,22 @@ void KingdomGame::GPLogic2_SubSP361() {
 	if (_Nodes[29] == 1) {
 		_statPlay = 480;
 		_loopFlag = true;
-		_CurrMap = 10;
+		_currMap = 10;
 	} else {
-		if (_Inventory[6] == 1 || _Wizard == 0) {
-			if (_Nodes[43] != 1 || _Wizard != 0)
+		if (_Inventory[6] == 1 || !_wizard) {
+			if (_Nodes[43] != 1 || _wizard)
 				_Nodes[43] = 1;
 			else {
 				_sound = true;
 				_Nodes[43] = 2;
 			}
 			PlayMovie(122);
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 			_statPlay = 421;
 		} else {
 			PlayMovie(112);
-			_CurrMap = 98;
+			_currMap = 98;
 			_statPlay = 421;
 		}
 	}
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 639713956c..69d1c7d19a 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -27,28 +27,28 @@ namespace Kingdom {
 void KingdomGame::GPLogic3() {
 	switch(_statPlay) {
 	case 500:
-		_NodeNum = 50;
+		_nodeNum = 50;
 		DrawLocation();
 		_UserInput = 0;
-		_Resurrect = false;
-		if (!_Wizard)
+		_resurrect = false;
+		if (!_wizard)
 			_Nodes[51] = 1;
 		switch(_Nodes[51]) {
 		case 0:
 			PlayMovie(123);
-			_CurrMap = 102;
+			_currMap = 102;
 			break;
 		case 1:
 			_Nodes[51] = 2;
 			PlayMovie(126);
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		default:
 			_Nodes[51] = 1;
 			_sound = true;
 			PlayMovie(126);
-			_CurrMap = 10;
+			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		}
@@ -84,18 +84,18 @@ void KingdomGame::GPLogic3() {
 				_Nodes[51] = 1;
 				InventoryAdd(11);
 				_UserInput = 0;
-				_CurrMap = 10;
+				_currMap = 10;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 502;
-			_Zoom = 2;
-			ProcessMap(50, _Zoom);
+			_zoom = 2;
+			ProcessMap(50, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -107,11 +107,11 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(50);
 		break;
 	case 510:
-		_NodeNum = 51;
+		_nodeNum = 51;
 		DrawLocation();
 		_UserInput = 0;
 		PlayMovie(129);
-		_CurrMap = 10;
+		_currMap = 10;
 		PlaySound(6);
 		_statPlay = 511;
 		break;
@@ -125,24 +125,24 @@ void KingdomGame::GPLogic3() {
 				_Nodes[52] = 9;
 				InventoryAdd(12);
 				_UserInput = 0;
-				_CurrMap = 10;
+				_currMap = 10;
 				PlaySound(30);
 			}
 			break;
 		case 0x43A:
 			_statPlay = 512;
-			_Zoom = 2;
-			ProcessMap(51, _Zoom);
+			_zoom = 2;
+			ProcessMap(51, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x457:
 			_tideCntl = false;
 			DrawPic(179);
 			PlayMovie(127);
-			_CurrMap = 103;
+			_currMap = 103;
 			_UserInput = 0;
 			PlaySound(0);
 			PlaySound(6);
@@ -157,7 +157,7 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(51);
 		break;
 	case 520:
-		_NodeNum = 52;
+		_nodeNum = 52;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[53] == 0)
@@ -167,7 +167,7 @@ void KingdomGame::GPLogic3() {
 			_Nodes[53] = false;
 		}
 		PlayMovie(130);
-		_CurrMap = 111;
+		_currMap = 111;
 		_statPlay = 521;
 		PlaySound(31);
 		break;
@@ -179,13 +179,13 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43A:
 			_statPlay = 522;
-			_Zoom = 2;
-			ProcessMap(52, _Zoom);
+			_zoom = 2;
+			ProcessMap(52, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -197,19 +197,19 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(52);
 		break;
 	case 530:
-		_NodeNum = 53;
+		_nodeNum = 53;
 		DrawLocation();
 		_UserInput = 0;
 		_fstFwd = false;
-		if (_Inventory[7] <= 0 && _Wizard)
+		if (_Inventory[7] <= 0 && _wizard)
 			_tsIconOnly = false;
 		else {
 			_frameStop = 24;
 			_tsIconOnly = true;
 		}
-		_Eye = false;
+		_eye = false;
 		PlayMovie(70);
-		_CurrMap = 99;
+		_currMap = 99;
 		PlaySound(8);
 		_statPlay = 531;
 		break;
@@ -235,19 +235,19 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_fstFwd = false;
-			if (_Inventory[7] > 0 && _PMovie == 70)
+			if (_Inventory[7] > 0 && _pMovie == 70)
 				_frameStop = 24;
-			if (!_Wizard && _PMovie == 70)
+			if (!_wizard && _pMovie == 70)
 				_frameStop = 24;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
-			_NodeNum = 56;
+			_nodeNum = 56;
 			_UserInput = 0;
 			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
-			_CurrMap = 106;
+			_currMap = 106;
 			_Nodes[57] = 1;
 			PlaySound(8);
 			_tsIconOnly = true;
@@ -265,12 +265,12 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 540:
-		_NodeNum = 54;
+		_nodeNum = 54;
 		DrawLocation();
 		_UserInput = 0;
-		if (!_Wizard) {
+		if (!_wizard) {
 			_sound = true;
-			_CurrMap = 55;
+			_currMap = 55;
 		} else {
 			if (!_Nodes[55])
 				_Nodes[55] = 1;
@@ -278,7 +278,7 @@ void KingdomGame::GPLogic3() {
 				_sound = true;
 				_Nodes[55] = 0;
 			}
-			_CurrMap = 112;
+			_currMap = 112;
 		}
 
 		PlayMovie(132);
@@ -295,13 +295,13 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43A:
 			_statPlay = 542;
-			_Zoom = 2;
-			ProcessMap(54, _Zoom);
+			_zoom = 2;
+			ProcessMap(54, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			ShowPic(432);
 			break;
 		case 0x453:
@@ -311,7 +311,7 @@ void KingdomGame::GPLogic3() {
 			FShowPic(432);
 			// Useless, but present in the original
 			// _CurrMap = 10;
-			_CurrMap = 55;
+			_currMap = 55;
 			break;
 		default:
 			if (_UserInput)
@@ -323,14 +323,14 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(54);
 		break;
 	case 550:
-		_NodeNum = 55;
+		_nodeNum = 55;
 		DrawLocation();
 		_UserInput = 0;
 		PlayMovie(133);
 		if (_Nodes[56] != 9)
 			_Nodes[56] = 0;
 		_tsIconOnly = true;
-		_CurrMap = 104;
+		_currMap = 104;
 		_statPlay = 551;
 		PlaySound(8);
 		break;
@@ -362,15 +362,15 @@ void KingdomGame::GPLogic3() {
 				_loopFlag = true;
 			} else {
 				_statPlay = 552;
-				_Zoom = 2;
-				ProcessMap(55, _Zoom);
+				_zoom = 2;
+				ProcessMap(55, _zoom);
 				_UserInput = 0;
 			}
 			break;
 		case 0x43E:
 			_aTimer = 0;
-			PlayMovie(_PMovie);
-			if (_PMovie == 183)
+			PlayMovie(_pMovie);
+			if (_pMovie == 183)
 				FShowPic(433);
 			break;
 		case 0x452:
@@ -410,10 +410,10 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 560:
-		_NodeNum = 56;
+		_nodeNum = 56;
 		DrawLocation();
 		_UserInput = 0;
-		if (_Wizard) {
+		if (_wizard) {
 			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
@@ -421,12 +421,12 @@ void KingdomGame::GPLogic3() {
 			_Nodes[57] = 1;
 			PlaySound(8);
 			_statPlay = 561;
-			_CurrMap = 106;
+			_currMap = 106;
 			_tsIconOnly = true;
 		} else {
 			DsAll();
 			PlayMovie(135);
-			_CurrMap = 10;
+			_currMap = 10;
 			SetATimer();
 			_Nodes[57] = 0;
 			_statPlay = 561;
@@ -458,14 +458,14 @@ void KingdomGame::GPLogic3() {
 			_aTimer = 0;
 			if (!_Nodes[57]) {
 				_fstFwd = false;
-				_Replay = true;
+				_replay = true;
 				PlayMovie(138);
 				EnAll();
 				PlaySound(8);
 				_Nodes[57] = 1;
 				InventoryDel(4);
 				_Nodes[22] = 0;
-				_CurrMap = 88;
+				_currMap = 88;
 				_tsIconOnly = true;
 			}
 			break;
@@ -474,28 +474,28 @@ void KingdomGame::GPLogic3() {
 			if (!_Nodes[57]) {
 				EnAll();
 				_fstFwd = false;
-				_Replay = true;
+				_replay = true;
 				PlayMovie(137);
 				EnAll();
 				PlaySound(8);
 				_Nodes[57] = 1;
-				_CurrMap = 106;
+				_currMap = 106;
 				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 562;
-			_Zoom = 2;
-			ProcessMap(56, _Zoom);
+			_zoom = 2;
+			ProcessMap(56, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_fstFwd = false;
-			if (_PMovie == 135 && _Nodes[57]) {
+			if (_pMovie == 135 && _Nodes[57]) {
 				_frameStop = 50;
 				PlayMovie(135);
 			} else if (_Nodes[57])
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 			else {
 				_UserInput = 753;
 				_aTimer = 0;
@@ -530,13 +530,13 @@ void KingdomGame::GPLogic3() {
 		if (_Nodes[58]) {
 			if (_RtnNode != 34)
 				_sound = true;
-			_NodeNum = 57;
+			_nodeNum = 57;
 			DrawLocation();
 			_Nodes[58] = 0;
 			_UserInput = 0;
 			PlayMovie(139);
 			PlaySound(27);
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 571;
 		} else {
 			_statPlay = 740;
@@ -547,13 +547,13 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 572;
-			_Zoom = 2;
-			ProcessMap(57, _Zoom);
+			_zoom = 2;
+			ProcessMap(57, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -565,33 +565,33 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(57);
 		break;
 	case 580:
-		_NodeNum = 58;
+		_nodeNum = 58;
 		DrawLocation();
-		_IconsClosed = true;
+		_iconsClosed = true;
 		_UserInput = 0;
 		switch(_Nodes[59]) {
 		case 0:
 			_sound = true;
 			PlayMovie(140);
-			_CurrMap = 113;
+			_currMap = 113;
 			_Nodes[59] = 1;
 			break;
 		case 1:
 			PlayMovie(140);
-			_CurrMap = 113;
+			_currMap = 113;
 			_Nodes[59] = 0;
 			break;
 		case 8:
 			_tsIconOnly = true;
 			PlayMovie(143);
-			_CurrMap = 10;
+			_currMap = 10;
 			_Nodes[59] = 9;
 			break;
 		case 9:
 			_tsIconOnly = true;
 			_sound = true;
 			PlayMovie(143);
-			_CurrMap = 10;
+			_currMap = 10;
 			break;
 		}
 		PlaySound(27);
@@ -604,7 +604,7 @@ void KingdomGame::GPLogic3() {
 			_Nodes[59] = 8;
 			InventoryAdd(13);
 			_tsIconOnly = true;
-			_CurrMap = 10;
+			_currMap = 10;
 			PlaySound(30);
 		// No break on purpose
 		case 0x428:
@@ -629,13 +629,13 @@ void KingdomGame::GPLogic3() {
 			}
 		case 0x43A:
 			_statPlay = 582;
-			_Zoom = 2;
-			ProcessMap(58, _Zoom);
+			_zoom = 2;
+			ProcessMap(58, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -647,7 +647,7 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(58);
 		break;
 	case 590:
-		_NodeNum = 59;
+		_nodeNum = 59;
 		DrawLocation();
 		_UserInput = 0;
 		if (_Nodes[60] == 0)
@@ -658,7 +658,7 @@ void KingdomGame::GPLogic3() {
 		}
 		PlayMovie(144);
 		ShowPic(144);
-		_CurrMap = 114;
+		_currMap = 114;
 		PlaySound(21);
 		_statPlay = 591;
 		break;
@@ -666,13 +666,13 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 592;
-			_Zoom = 2;
-			ProcessMap(59, _Zoom);
+			_zoom = 2;
+			ProcessMap(59, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			ShowPic(444);
 			break;
 		case 0x445:
@@ -695,7 +695,7 @@ void KingdomGame::GPLogic3() {
 		ShowPic(106);
 		DrawIcon(4, 0, 12 - _healthOld);
 		_asMode = false;
-		_NodeNum = 60;
+		_nodeNum = 60;
 		DrawLocation();
 		_UserInput = 0;
 		DsAll();
@@ -704,7 +704,7 @@ void KingdomGame::GPLogic3() {
 		_loopFlag = true;
 		break;
 	case 610:
-		_NodeNum = 61;
+		_nodeNum = 61;
 		DrawLocation();
 		_UserInput = 0;
 		_Nodes[73] = 0;
@@ -720,10 +720,10 @@ void KingdomGame::GPLogic3() {
 			_tsIconOnly = true;
 		}
 		
-		_CurrMap = 115;
+		_currMap = 115;
 		PlaySound(36);
 		_statPlay = 611;
-		_Eye = false;
+		_eye = false;
 		break;
 	case 611:
 		switch(_UserInput) {
@@ -740,27 +740,27 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(147);
 			_Inventory[5] = -1;
 			_Nodes[30] = 0;
-			_CurrMap = 116;
+			_currMap = 116;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x441:
 			// Cascade on purpose
 		case 0x448:
-			_CurrMap = 10;
+			_currMap = 10;
 			_itemInhibit = true;
 			_statPlay = 730;
 			_loopFlag = true;
 			break;
 		case 0x44B:
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 680;
 			_loopFlag = true;
 			break;
 		case 0x451:
-			_CurrMap = 10;
+			_currMap = 10;
 			_statPlay = 690;
 			_loopFlag = true;
 			break;
@@ -771,17 +771,17 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 620:
-		_NodeNum = 62;
+		_nodeNum = 62;
 		DrawLocation();
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		if (_Nodes[63] == 0) {
 			PlayMovie(149);
-			_CurrMap = 122;
+			_currMap = 122;
 		} else {
 			_frameStop = 24;
 			PlayMovie(202);
-			_CurrMap = 121;
+			_currMap = 121;
 			_Nodes[63] = 9;
 		}
 		_tsIconOnly = true;
@@ -804,7 +804,7 @@ void KingdomGame::GPLogic3() {
 			InventoryAdd(8);
 			_Nodes[63] = 1;
 			PlaySound(25);
-			_CurrMap = 121;
+			_currMap = 121;
 			_UserInput = 0;
 			break;
 		case 0x43E:
@@ -818,12 +818,12 @@ void KingdomGame::GPLogic3() {
 			case 9:
 				_frameStop = 24;
 				PlayMovie(202);
-				_CurrMap = 121;
+				_currMap = 121;
 				break;
 			}
 			break;
 		case 0x445:
-			_NodeNum = 56;
+			_nodeNum = 56;
 			_UserInput = 0;
 			_frameStop = 50;
 			EnAll();
@@ -831,9 +831,9 @@ void KingdomGame::GPLogic3() {
 			_Nodes[57] = 1;
 			PlaySound(8);
 			_statPlay = 561;
-			_CurrMap = 106;
-			if (_Inventory[16] < 1 && _Wizard)
-				_CurrMap = 88;
+			_currMap = 106;
+			if (_Inventory[16] < 1 && _wizard)
+				_currMap = 88;
 			break;
 		case 0x452:
 			_statPlay = 630;
@@ -847,18 +847,18 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 630:
-		_NodeNum = 63;
+		_nodeNum = 63;
 		DrawLocation();
 		_UserInput = 0;
-		_Eye = false;
-		if (_Nodes[64] == 1 || !_Wizard) {
+		_eye = false;
+		if (_Nodes[64] == 1 || !_wizard) {
 			_Nodes[64] = 0;
 			_sound = true;
 		} else
 			_Nodes[64] = true;
 
 		PlayMovie(151);
-		_CurrMap = 72;
+		_currMap = 72;
 		PlaySound(40);
 		_statPlay = 631;
 		break;
@@ -866,7 +866,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			PlayMovie(10);
@@ -880,17 +880,17 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 640:
-		_NodeNum = 64;
+		_nodeNum = 64;
 		DrawLocation();
 		_UserInput = 0;
-		if (_Nodes[65] || _Wizard) {
+		if (_Nodes[65] || _wizard) {
 			_sound = true;
 			_Nodes[65] = 0;
 		} else
 			_Nodes[65] = 1;
 
 		PlayMovie(152);
-		_CurrMap = 10;
+		_currMap = 10;
 		_statPlay = 641;
 		PlaySound(28);
 		break;
@@ -898,13 +898,13 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43A:
 			_statPlay = 642;
-			_Zoom = 2;
-			ProcessMap(64, _Zoom);
+			_zoom = 2;
+			ProcessMap(64, _zoom);
 			_UserInput = 0;
 			break;
 		case 0x43E:
 			_sound= _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		default:
 			if (_UserInput)
@@ -916,8 +916,8 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(64);
 		break;
 	case 650:
-		_NodeNum = 65;
-		_Eye = false;
+		_nodeNum = 65;
+		_eye = false;
 		_UserInput = 0;
 		if (_Nodes[66] == 0)
 			_Nodes[66] = 1;
@@ -927,7 +927,7 @@ void KingdomGame::GPLogic3() {
 		}
 		PlayMovie(153);
 		ShowPic(453);
-		_CurrMap = 73;
+		_currMap = 73;
 		PlaySound(37);
 		_statPlay = 651;
 		break;
@@ -935,7 +935,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			ShowPic(453);
 			break;
 		case 0x445:
@@ -962,8 +962,8 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 660:
-		_NodeNum = 66;
-		_Eye = false;
+		_nodeNum = 66;
+		_eye = false;
 		_UserInput = 0;
 		if (_Nodes[67] == 0)
 			_Nodes[67] = 1;
@@ -972,7 +972,7 @@ void KingdomGame::GPLogic3() {
 			_Nodes[67] = 0;
 		}
 		PlayMovie(154);
-		_CurrMap = 70;
+		_currMap = 70;
 		PlaySound(40);
 		_statPlay = 661;
 		break;
@@ -980,7 +980,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 700;
@@ -991,7 +991,7 @@ void KingdomGame::GPLogic3() {
 			_statPlay = (_Nodes[68] == 1) ? 650 : 790;
 			break;
 		case 0x447:
-			if (!_Wizard || _Nodes[68])
+			if (!_wizard || _Nodes[68])
 				_statPlay = 650;
 			else
 				_statPlay = 670;
@@ -1005,13 +1005,13 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 670:
-		_NodeNum = 67;
+		_nodeNum = 67;
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		_Nodes[68] = 1;
 		_fstFwd = false;
 		PlayMovie(155);
-		_CurrMap = 127;
+		_currMap = 127;
 		_statPlay = 671;
 		break;
 	case 671:
@@ -1019,7 +1019,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			_sound = _lastSound;
 			_fstFwd = false;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
@@ -1036,7 +1036,7 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 680:
-		_NodeNum = 68;
+		_nodeNum = 68;
 		_UserInput = 0;
 		DsAll();
 		PlayMovie(156);
@@ -1052,10 +1052,10 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			_UserInput = 0;
 		} else {
-			_NodeNum = 69;
+			_nodeNum = 69;
 			DrawLocation();
 			_UserInput = 0;
-			_CurrMap = 119;
+			_currMap = 119;
 			_frameStop = 40;
 			PlayMovie(157);
 			PlaySound(12);
@@ -1084,21 +1084,21 @@ void KingdomGame::GPLogic3() {
 				_Nodes[70] = 9;
 				PlaySound(23);
 				_UserInput = 0;
-				_CurrMap = 120;
+				_currMap = 120;
 			}
 			break;
 		case 0x43E:
-			if (_PMovie == 157)
+			if (_pMovie == 157)
 				_frameStop = 40;
-			else if (_PMovie == 158)
+			else if (_pMovie == 158)
 				_frameStop = 108;
 			
-			if (_PMovie == 178) {
+			if (_pMovie == 178) {
 				SaveAS();
 				PlayMovie(178);
 				RestoreAS();
 			} else
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 
 			break;
 		case 0x441:
@@ -1118,17 +1118,17 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(69);
 		break;
 	case 700:
-		_NodeNum = 70;
+		_nodeNum = 70;
 		_UserInput = 0;
-		_Eye = false;
-		if (_Nodes[71] && _Wizard) {
+		_eye = false;
+		if (_Nodes[71] && _wizard) {
 			_Nodes[71] = 0;
 			_sound = false;
 		} else
 			_Nodes[71] = 1;
 
 		PlayMovie(164);
-		_CurrMap = 74;
+		_currMap = 74;
 		PlaySound(10);
 		_statPlay = 701;
 		break;
@@ -1136,7 +1136,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
@@ -1157,21 +1157,21 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 710:
-		_NodeNum = 71;
+		_nodeNum = 71;
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		if (_Inventory[8] && _Inventory[14])
 			_sound = true;
 		DsAll();
 		PlayMovie(165);
-		_CurrMap = 10;
+		_currMap = 10;
 		SetATimer();
-		_statPlay = _Wizard ? 712 : 711;
+		_statPlay = _wizard ? 712 : 711;
 		break;
 	case 711:
 		switch(_UserInput) {
 		case 0x2F1:
-			_Replay = false;
+			_replay = false;
 			PlayMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
@@ -1180,7 +1180,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
-			_Replay = false;
+			_replay = false;
 			_aTimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
@@ -1189,8 +1189,8 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x430:
 			_aTimer = 0;
-			_NodeNum = 0;
-			_IconsClosed = true;
+			_nodeNum = 0;
+			_iconsClosed = true;
 			_fstFwd = false;
 			PlayMovie(167);
 			_fstFwd = false;
@@ -1208,7 +1208,7 @@ void KingdomGame::GPLogic3() {
 	case 712:
 		switch(_UserInput) {
 		case 0x2F1:
-			_Replay = false;
+			_replay = false;
 			PlayMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
@@ -1217,7 +1217,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_UserInput - 0x428);
-			_Replay = false;
+			_replay = false;
 			_aTimer = 0;
 			PlayMovie(178);
 			PlayMovie(166);
@@ -1230,8 +1230,8 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(57);
 				_statPlay = 993;
 			} else {
-				_NodeNum = 0;
-				_IconsClosed = true;
+				_nodeNum = 0;
+				_iconsClosed = true;
 				_fstFwd = false;
 				PlayMovie(55);
 				_fstFwd = false;
@@ -1243,14 +1243,14 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x432:
 			_aTimer = 0;
-			_Replay = false;
+			_replay = false;
 			PlayMovie(168);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x433:
 			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || _Nodes[72] == 2) {
-				_Replay = false;
+				_replay = false;
 				PlayMovie(166);
 				_statPlay = 993;
 			} else {
@@ -1276,8 +1276,8 @@ void KingdomGame::GPLogic3() {
 		case 0x437:
 			_aTimer = 0;
 			if (_Nodes[72] == 2) {
-				_NodeNum = 0;
-				_IconsClosed = true;
+				_nodeNum = 0;
+				_iconsClosed = true;
 				_fstFwd = false;
 				PlayMovie(56);
 				_fstFwd = false;
@@ -1299,9 +1299,9 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 720:
-		_NodeNum = 72;
+		_nodeNum = 72;
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		switch (_Nodes[73]) {
 		case 0:
 			_Nodes[73] = 1;
@@ -1316,7 +1316,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		PlayMovie(175);
-		_CurrMap = 118;
+		_currMap = 118;
 		PlaySound(12);
 		_statPlay = 721;
 		break;
@@ -1325,7 +1325,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			if (_Nodes[73] > 1)
 				_frameStop = 24;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x441:
 			if (_Nodes[73] == 1) {
@@ -1334,17 +1334,17 @@ void KingdomGame::GPLogic3() {
 			} else
 				_statPlay = 680;
 
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x448:
 			_statPlay = (_Nodes[73] == 2) ? 730 : 680;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x44B:
 			_statPlay = (_Nodes[73] == 1) ? 730 : 680;
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x44C:
@@ -1354,7 +1354,7 @@ void KingdomGame::GPLogic3() {
 			} else
 				_statPlay = 680;
 
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		default:
@@ -1364,9 +1364,9 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 730:
-		_NodeNum = 73;
+		_nodeNum = 73;
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		switch(_Nodes[74]) {
 		case 0:
 			_Nodes[74] = 1;
@@ -1385,7 +1385,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		}
 		PlayMovie(176);
-		_CurrMap = 117;
+		_currMap = 117;
 		PlaySound(36);
 		_statPlay = 731;
 		break;
@@ -1395,7 +1395,7 @@ void KingdomGame::GPLogic3() {
 			if (_Nodes[74] > 2)
 				_frameStop = 23;
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x441:
 			switch (_Nodes[74]) {
@@ -1411,7 +1411,7 @@ void KingdomGame::GPLogic3() {
 				_statPlay = 680;
 				break;
 			}
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x448:
@@ -1443,7 +1443,7 @@ void KingdomGame::GPLogic3() {
 				break;
 			}
 
-			_CurrMap = 10;
+			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x44C:
@@ -1468,12 +1468,12 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 740:
-		_RtnNode = _NodeNum;
-		_NodeNum = 74;
+		_RtnNode = _nodeNum;
+		_nodeNum = 74;
 		DrawLocation();
 		DsAll();
 		PlayMovie(185);
-		_CurrMap = 10;
+		_currMap = 10;
 		SetATimer();
 		_statPlay = 741;
 		_UserInput = 0;
@@ -1522,11 +1522,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 760:
-		_NodeNum = 76;
-		_Eye = false;
+		_nodeNum = 76;
+		_eye = false;
 		_UserInput = 0;
 		PlayMovie(189);
-		_CurrMap = 126;
+		_currMap = 126;
 		PlaySound(21);
 		_statPlay = 761;
 		break;
@@ -1534,7 +1534,7 @@ void KingdomGame::GPLogic3() {
 		switch(_UserInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_PMovie);
+			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 660;
@@ -1563,12 +1563,12 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 780:
-		_NodeNum = 78;
+		_nodeNum = 78;
 		DrawLocation();
 		_UserInput = 0;
-		_Eye = false;
+		_eye = false;
 		PlayMovie(171);
-		_CurrMap = 124;
+		_currMap = 124;
 		PlaySound(40);
 		_statPlay = 781;
 		break;
@@ -1580,10 +1580,10 @@ void KingdomGame::GPLogic3() {
 			_frameStop = 64;
 			PlayMovie(173);
 			ShowPic(471);
-			_CurrMap = 124;
+			_currMap = 124;
 			break;
 		case 0x429:
-			if (_Wizard) {
+			if (_wizard) {
 				_frameStop = 64;
 				PlayMovie(173);
 				InventoryDel(1);
@@ -1596,7 +1596,7 @@ void KingdomGame::GPLogic3() {
 			}
 
 			FShowPic(471);
-			_CurrMap = 124;
+			_currMap = 124;
 			break;
 		case 0x439:
 			_frameStop = 59;
@@ -1605,24 +1605,24 @@ void KingdomGame::GPLogic3() {
 			_fstFwd = true;
 			PlayMovie(201);
 			FShowPic(471);
-			_CurrMap = 124;
+			_currMap = 124;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			if (_PMovie == 173)
+			if (_pMovie == 173)
 				_frameStop = 64;
-			if (_PMovie == 201) {
+			if (_pMovie == 201) {
 				_frameStop = 59;
 				_fstFwd = false;
 				PlayMovie(174);
 				_fstFwd = true;
 				PlayMovie(201);
 			} else {
-				PlayMovie(_PMovie);
+				PlayMovie(_pMovie);
 			}
-			if (_PMovie != 171) {
+			if (_pMovie != 171) {
 				FShowPic(471);
-				_CurrMap = 124;
+				_currMap = 124;
 			}
 			break;
 		case 0x445:
@@ -1640,11 +1640,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 790:
-		_NodeNum = 79;
+		_nodeNum = 79;
 		DrawLocation();
 		DsAll();
 		PlayMovie(4);
-		_CurrMap = 8;
+		_currMap = 8;
 		_statPlay = 791;
 		SetATimer();
 		_UserInput = 0;
@@ -1679,7 +1679,7 @@ void KingdomGame::GPLogic3() {
 }
 
 void KingdomGame::EndCredits() {
-	_NodeNum = 0;
+	_nodeNum = 0;
 	_bTimer = 190;
 	ReadMouse();
 
@@ -1694,7 +1694,7 @@ void KingdomGame::EndCredits() {
 	DrawRect(4, 17, 228, 161, 0);
 	PlaySound(0);
 	DsAll();
-	_IconsClosed = true;
+	_iconsClosed = true;
 	PlayMovie(199);
 	DsAll();
 	PlayMovie(205);
@@ -1703,7 +1703,7 @@ void KingdomGame::EndCredits() {
 	DrawRect(4, 17, 228, 161, 0);
 	PlayMovie(201);
 	FShowPic(125);
-	_CurrMap = 3;
+	_currMap = 3;
 	DsAll();
 	_Pouch = false;
 	memset(_Inventory, 0xFF, 19);
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 7c3558f81e..db2e6738d8 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -33,7 +33,7 @@ void KingdomGame::GPLogic4() {
 		}
 		if (_asMode) {
 			SwitchMtoA();
-			_MapStat = 0;
+			_mapStat = 0;
 			_oldStatPlay--;
 			_asMode = false;
 		}
@@ -68,7 +68,7 @@ void KingdomGame::GPLogic4() {
 		GPLogic4_SP901();
 		break;
 	case 991:
-		_CurrMap = 10;
+		_currMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
@@ -80,7 +80,7 @@ void KingdomGame::GPLogic4() {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
-			_CurrMap = 3;
+			_currMap = 3;
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
@@ -106,19 +106,19 @@ void KingdomGame::GPLogic4() {
 			_skylarTimerFlag = false;
 			EnAll();
 			_mapEx = true;
-			_NodeNum = 5;
+			_nodeNum = 5;
 			DrawLocation();
 			PlaySound(0);
 			if (_Nodes[5] > 0) {
 				PlayMovie(197);
-				_Resurrect = 1;
+				_resurrect = true;
 			}
 			InventoryDel(12);
 			_statPlay = 50;
 		}
 		break;
 	case 992:
-		_CurrMap = 10;
+		_currMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
@@ -130,7 +130,7 @@ void KingdomGame::GPLogic4() {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
-			_CurrMap = 3;
+			_currMap = 3;
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
@@ -156,9 +156,9 @@ void KingdomGame::GPLogic4() {
 			_skylarTimerFlag = false;
 			EnAll();
 			_mapEx = true;
-			_NodeNum = 27;
+			_nodeNum = 27;
 			DrawLocation();
-			_Resurrect = 1;
+			_resurrect = true;
 			PlaySound(0);
 			PlayMovie(195);
 			InventoryDel(12);
@@ -166,7 +166,7 @@ void KingdomGame::GPLogic4() {
 		}
 		break;
 	case 993:
-		_CurrMap = 10;
+		_currMap = 10;
 		_UserInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
@@ -178,7 +178,7 @@ void KingdomGame::GPLogic4() {
 			PlayMovie(194);
 			_noIFScreen = true;
 			FShowPic(107);
-			_CurrMap = 3;
+			_currMap = 3;
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
@@ -206,9 +206,9 @@ void KingdomGame::GPLogic4() {
 			_skylarTimerFlag = false;
 			EnAll();
 			_mapEx = true;
-			_NodeNum = 52;
+			_nodeNum = 52;
 			DrawLocation();
-			_Resurrect = 1;
+			_resurrect = true;
 			PlaySound(0);
 			PlayMovie(196);
 			InventoryDel(12);
@@ -242,7 +242,7 @@ void KingdomGame::GPLogic4_SP901() {
 	else
 		DrawPic(179);
 	
-	_IconRedraw = true;
+	_iconRedraw = true;
 	if (_UserInput == 0x2F1) {
 		_asMode = false;
 		RestoreAS();
@@ -262,7 +262,7 @@ void KingdomGame::GPLogic4_SP901() {
 			_tsIconOnly = false;
 			EnAll();
 			SwitchAS();
-			_MapStat = 0;
+			_mapStat = 0;
 		}
 		_UserInput = 0;
 		_loopFlag = true;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index a4a45e9677..8c0e6cc686 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -60,10 +60,10 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	for (int i = 0; i < 99; i++)
 		_Nodes[i] = 0;
 
-	_ASPtr = nullptr;
+	_asPtr = nullptr;
 	_quit = false;
 	_MouseValue = 0;
-	_CurrMap = 0;
+	_currMap = 0;
 	_statPlay = 0;
 	_SoundNumber = -1;
 
@@ -248,11 +248,11 @@ void KingdomGame::InitPlay() {
 	EnAll();
 	_Pouch = true;
 	_noIFScreen = true;
-	_NoMusic = false;
+	_noMusic = false;
 	_fstFwd = true;
 
-	delete[] _ASPtr;
-	_ASPtr = nullptr;
+	delete[] _asPtr;
+	_asPtr = nullptr;
 }
 
 void KingdomGame::InitHelp() {
@@ -269,58 +269,58 @@ void KingdomGame::FadeToBlack2() {
 
 void KingdomGame::GameHelp_Sub43C() {
 	FadeToBlack1();
-	_CurrMap = _ASMap;
+	_currMap = _asMap;
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
 	_UserInput = 0;
 	_gameMode = 0;
-	_IconsClosed = false;
-	_TreeLeftSta = _OldTLS;
-	_Eye = _OldEye;
-	_Help = _OldHelp;
-	_Pouch = _OldPouch;
+	_iconsClosed = false;
+	_treeLeftSta = _oldTLS;
+	_eye = _oldEye;
+	_help = _oldHelp;
+	_Pouch = _oldPouch;
 }
 
 void KingdomGame::GameHelp() {
 	if (!_gameMode) {
 		if (_UserInput == 0x43C) {
 			SaveAS();
-			_ASMap = _CurrMap;
-			_CurrMap = 0;
+			_asMap = _currMap;
+			_currMap = 0;
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			DrawHelpScreen();
 			_gameMode = 1;
-			_OldTLS = _TreeLeftSta;
-			_TreeLeftSta = 0;
-			_IconsClosed = true;
-			_OldEye = _Eye;
-			_Eye = false;
-			_OldHelp = _Help;
-			_OldPouch = _Pouch;
+			_oldTLS = _treeLeftSta;
+			_treeLeftSta = 0;
+			_iconsClosed = true;
+			_oldEye = _eye;
+			_eye = false;
+			_oldHelp = _help;
+			_oldPouch = _Pouch;
 			_Pouch = false;
 			_UserInput = 0;
 		}
 		if (_UserInput == 0x44F) {
 			SaveAS();
-			_ASMap = _CurrMap;
+			_asMap = _currMap;
 			_gameMode = 2;
-			_OldTLS = _TreeLeftSta;
-			_TreeLeftSta = 0;
-			_IconsClosed = true;
-			_OldEye = _Eye;
-			_Eye = false;
-			_OldHelp = _Help;
-			_Help = false;
-			_OldPouch = _Pouch;
+			_oldTLS = _treeLeftSta;
+			_treeLeftSta = 0;
+			_iconsClosed = true;
+			_oldEye = _eye;
+			_eye = false;
+			_oldHelp = _help;
+			_help = false;
+			_oldPouch = _Pouch;
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			DrawInventory();
 
 			if (_Nodes[68] == 1 || _Nodes[29] == 1 || _itemInhibit)
-				_CurrMap = 10;
+				_currMap = 10;
 			else
-				_CurrMap = 11;
+				_currMap = 11;
 
 			_UserInput = 0;
 		}
@@ -338,30 +338,30 @@ void KingdomGame::GameHelp() {
 		return;
 		break;
 	case 0x242:
-		if (_NoMusic) {
-			_NoMusic = false;
+		if (_noMusic) {
+			_noMusic = false;
 			PlaySound(1);
 		} else {
-			_NoMusic = true;
+			_noMusic = true;
 			PlaySound(0);
 		}
 		DrawHelpScreen();
 		break;
 	case 0x243: {
 		FadeToBlack2();
-		_KeyActive = false;
+		_keyActive = false;
 		_noIFScreen = true;
 		PlaySound(0);
-		int var = _PMovie;
-		while(!_KeyActive) {
+		int var = _pMovie;
+		while(!_keyActive) {
 			PlayMovie(54);
 			FadeToBlack2();
 		}
-		_PMovie = var;
+		_pMovie = var;
 		_noIFScreen = false;
 		ShowPic(106);
 		DrawHelpScreen();
-		_IconRedraw = true;
+		_iconRedraw = true;
 		PlaySound(1);
 		}
 		break;
@@ -371,7 +371,7 @@ void KingdomGame::GameHelp() {
 		break;
 	case 0x245: {
 		FadeToBlack1();
-		int var = _PMovie;
+		int var = _pMovie;
 		DrawRect(4, 17, 228, 161, 0);
 		PlayMovie(205);
 		FadeToBlack1();
@@ -380,7 +380,7 @@ void KingdomGame::GameHelp() {
 		FadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
 		DrawHelpScreen();
-		_PMovie = var;
+		_pMovie = var;
 		}
 		break;
 	case 0x246:
@@ -399,9 +399,9 @@ void KingdomGame::GameHelp() {
 	if (_UserInput == 0x260) {
 		DrawInventory();
 		if (_Nodes[68] == 1 || _Nodes[29] == 1)
-			_CurrMap = 10;
+			_currMap = 10;
 		else
-			_CurrMap = 11;
+			_currMap = 11;
 
 		_UserInput = 0;
 	}
@@ -499,7 +499,7 @@ void KingdomGame::FShowPic(int reznum) {
 void KingdomGame::InitCursor() {
 	InitMouse();
 	SetCursor(0x19C / 4);
-	_CursorDrawn = false;
+	_cursorDrawn = false;
 	DrawCursor();
 }
 
@@ -533,20 +533,20 @@ void KingdomGame::PlayMovie(int movieNum) {
 	EraseCursor();
 
 	if (!_fullScreen) {
-		_TreeLeftSta = (_fstFwd == 0) ? 0 : 1;
+		_treeLeftSta = (_fstFwd == 0) ? 0 : 1;
 		_treeRightSta = 0;
 		_IconSel = _IconSelect;
-		_IconsClosed = true;
+		_iconsClosed = true;
 		CheckMainScreen();
 		SetMouse();
 		_OldCursorX = _CursorX;
 		_OldCursorY = _CursorY;
 	}
 
-	_PMovie = movieNum;
+	_pMovie = movieNum;
 	ReadMouse();
 	_MouseButton = 0;
-	_KeyActive = false;
+	_keyActive = false;
 	const char *path = _movieNames[movieNum];
 	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
 	// That can be replaced by an error()
@@ -565,9 +565,9 @@ void KingdomGame::PlayMovie(int movieNum) {
 
 	if (!_fullScreen) {
 		_treeRightSta = 1;
-		_IconsClosed = false;
+		_iconsClosed = false;
 		_IconSel = 9;
-		_TreeLeftSta = _Replay == 0 ? 0 : 2;
+		_treeLeftSta = _replay ? 2 : 0;
 		CheckMainScreen();
 		DrawCursor();
 		_fstFwd = true;
@@ -579,37 +579,37 @@ void KingdomGame::PlayMovie(int movieNum) {
 }
 
 void KingdomGame::EnAll() {
-	_Help = true;
-	_Eye = true;
-	_Replay = true;
+	_help = true;
+	_eye = true;
+	_replay = true;
 	_Pouch = true;
 	_fstFwd = true;
 }
 
 void KingdomGame::DsAll() {
-	_Help = false;
-	_Eye = false;
-	_Replay = false;
+	_help = false;
+	_eye = false;
+	_replay = false;
 	_Pouch = false;
 	_fstFwd = false;
 }
 
 void KingdomGame::SaveAS() {
 	byte palette[256 * 3];
-	delete[] _ASPtr;
-	_ASPtr = new byte[224 * 146 + 768];
+	delete[] _asPtr;
+	_asPtr = new byte[224 * 146 + 768];
 	g_system->getPaletteManager()->grabPalette(palette, 0, 256);
 
 	::Graphics::Surface *screen = g_system->lockScreen();
 	for (uint curX = 0; curX < 224; curX++) {
 		for (uint curY = 0; curY < 146; curY++) {
 			byte *ptr = (byte *)screen->getBasePtr(curX + 4, curY + 15);
-			_ASPtr[curY * 224 + curX] = *ptr;
+			_asPtr[curY * 224 + curX] = *ptr;
 		}
 	}
 
 	for (uint i = 0; i < 768; i++)
-		_ASPtr[224 * 146 + i] = palette[i];
+		_asPtr[224 * 146 + i] = palette[i];
 
 	g_system->unlockScreen();
 	g_system->updateScreen();
@@ -618,7 +618,7 @@ void KingdomGame::SaveAS() {
 void KingdomGame::RestoreAS() {
 	byte palette[256 * 3];
 	for (uint i = 0; i < 768; i++)
-		palette[i] = _ASPtr[224 * 146 + i];
+		palette[i] = _asPtr[224 * 146 + i];
 
 	g_system->getPaletteManager()->setPalette(palette, 0, 256);
 
@@ -626,24 +626,24 @@ void KingdomGame::RestoreAS() {
 	for (uint curX = 0; curX < 224; curX++) {
 		for (uint curY = 0; curY < 146; curY++) {
 			byte *ptr = (byte *)screen->getBasePtr(curX + 4, curY + 15);
-			*ptr = _ASPtr[curY * 224 + curX];
+			*ptr = _asPtr[curY * 224 + curX];
 		}
 	}
 
 	g_system->unlockScreen();
 	g_system->updateScreen();
-	delete[] _ASPtr;
-	_ASPtr = nullptr;
+	delete[] _asPtr;
+	_asPtr = nullptr;
 }
 
 void KingdomGame::SwitchAS() {
 	_asMode = false;
-	_CurrMap = _ASMap;
-	_TreeLeftSta = _OldTLS;
-	_treeRightSta = _OldTRS;
-	_Pouch = _OldPouch;
-	_Help = _OldHelp;
-	_IconsClosed = _OldIconsClosed;
+	_currMap = _asMap;
+	_treeLeftSta = _oldTLS;
+	_treeRightSta = _oldTRS;
+	_Pouch = _oldPouch;
+	_help = _oldHelp;
+	_iconsClosed = _oldIconsClosed;
 }
 
 void KingdomGame::DrawHelpScreen() {
@@ -671,7 +671,7 @@ void KingdomGame::DrawHelpScreen() {
 		break;
 	}
 
-	if (_NoMusic)
+	if (_noMusic)
 		picNum += 6;
 
 	ShowPic(picNum);
@@ -829,8 +829,8 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	synchronize(s);
 	delete inFile;
 
-	delete[] _ASPtr;
-	_ASPtr = nullptr;
+	delete[] _asPtr;
+	_asPtr = nullptr;
 
 	PlaySound(_SoundNumber);
 	for (int i = 0; i < 7; i++)
@@ -841,7 +841,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_asMode = false;
 	_healthTmr = 0;
 	_noIFScreen = false;
-	_IconRedraw = true;
+	_iconRedraw = true;
 	_treeRightSta = 1;
 	_aTimerFlag = false;
 	_aTimer = 0;
@@ -850,10 +850,10 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_treeEyeTimer = 0;
 	_treeEyePic = 0;
 	_treeHGUPic = 0;
-	_CursorDrawn = false;
+	_cursorDrawn = false;
 	ShowPic(106);
 	_gameMode = 0;
-	_IconsClosed = false;
+	_iconsClosed = false;
 	DrawRect(4, 17, 228, 161, 0);
 	_UserInput = 0x43E;
 	_loopFlag = true;
@@ -863,22 +863,22 @@ Common::Error KingdomGame::loadGameState(int slot) {
 
 void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_statPlay);
-	s.syncAsSint16LE(_ASMap);
+	s.syncAsSint16LE(_asMap);
 	s.syncAsSint16LE(_daelonCntr);
 	s.syncAsSint16LE(_health);
 	s.syncAsSint16LE(_healthOld);
-	s.syncAsSint16LE(_LastObstacle);
-	s.syncAsSint16LE(_NextNode);
-	s.syncAsSint16LE(_NodeNum);
-	s.syncAsSint16LE(_PMovie);
+	s.syncAsSint16LE(_lastObstacle);
+	s.syncAsSint16LE(_nextNode);
+	s.syncAsSint16LE(_nodeNum);
+	s.syncAsSint16LE(_pMovie);
 	s.syncAsSint16LE(_RtnNode);
-	s.syncAsSint16LE(_RobberyNode);
+	s.syncAsSint16LE(_robberyNode);
 	s.syncAsSint16LE(_SoundNumber);
 	s.syncAsSint16LE(_treeEyePic);
 	s.syncAsSint16LE(_treeEyeSta);
 	s.syncAsSint16LE(_treeHGPic);
 	s.syncAsSint16LE(_treeHGSta);
-	s.syncAsSint16LE(_OldTLS);
+	s.syncAsSint16LE(_oldTLS);
 	s.syncAsSint16LE(_cTimer);
 	s.syncAsSint16LE(_skylarTimer);
 
@@ -888,21 +888,21 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	for (int i = 0; i < 99; i++)
 		s.syncAsSint16LE(_Nodes[i]);
 
-	s.syncAsByte(_OldEye);
+	s.syncAsByte(_oldEye);
 	s.syncAsByte(_fstFwd);
-	s.syncAsByte(_Help);
+	s.syncAsByte(_help);
 	s.syncAsByte(_itemInhibit);
 	s.syncAsByte(_lastObs);
 	s.syncAsByte(_lastSound);
 	s.syncAsByte(_mapEx);
-	s.syncAsByte(_NoMusic);
-	s.syncAsByte(_OldPouch);
-	s.syncAsByte(_Replay);
+	s.syncAsByte(_noMusic);
+	s.syncAsByte(_oldPouch);
+	s.syncAsByte(_replay);
 	s.syncAsByte(_spell1);
 	s.syncAsByte(_spell2);
 	s.syncAsByte(_spell3);
 	s.syncAsByte(_tideCntl);
-	s.syncAsByte(_Wizard);
+	s.syncAsByte(_wizard);
 	s.syncAsByte(_tsIconOnly);
 	s.syncAsByte(_cTimerFlag);
 	s.syncAsByte(_skylarTimerFlag);
@@ -985,7 +985,7 @@ void KingdomGame::PlaySound(int idx) {
 	}
 
 	_SoundNumber = idx;
-	if (_SoundNumber == 0 || _NoMusic)
+	if (_SoundNumber == 0 || _noMusic)
 		return;
 
 	int realIdx = _SoundNumber + 200; // Or +250, depending in the original on the sound card
@@ -1034,7 +1034,7 @@ void KingdomGame::GetUserInput() {
 	if (_quit)
 		return;
 
-	if (_UserInput == 2 && _Eye)
+	if (_UserInput == 2 && _eye)
 		_UserInput = _asMode ? 0x43B : 0x43A;
 
 	if (_UserInput == 1)
@@ -1051,7 +1051,7 @@ void KingdomGame::GetUserInput() {
 		_loopFlag = true;
 	}
 
-	if (_UserInput == 0x12D && _CurrMap == 1)
+	if (_UserInput == 0x12D && _currMap == 1)
 		// CHECKME: _quitFlag = 2;
 		_quit = true;
 }
@@ -1065,19 +1065,19 @@ void KingdomGame::DrawLocation() {
 		_daelonCntr--;
 
 	PlaySound(0);
-	_IconsClosed = true;
+	_iconsClosed = true;
 	_tsIconOnly = false;
 	_aTimer = 0;
 	_aTimerFlag = false;
 
-	int emlValue = _emlTable[_NodeNum];
+	int emlValue = _emlTable[_nodeNum];
 	if (emlValue > 0)
 		EnAll();
 
-	if (!_mapEx || !emlValue || _Resurrect) {
+	if (!_mapEx || !emlValue || _resurrect) {
 		if (_statPlay != 50)
-			_Resurrect = false;
-		_IconsClosed = false;
+			_resurrect = false;
+		_iconsClosed = false;
 	} else {
 		_mapEx = false;
 		SaveAS();
@@ -1090,7 +1090,7 @@ void KingdomGame::DrawLocation() {
 		}
 		FadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
-		_IconsClosed = false;
+		_iconsClosed = false;
 		_tsIconOnly = false;
 	}
 }
@@ -1100,12 +1100,12 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 	if (!_asMode)
 		SwitchAtoM();
 	FShowPic(var6);
-	_CurrMap = _zoomTable[mapNum][zoom][1];
+	_currMap = _zoomTable[mapNum][zoom][1];
 
 	if (zoom > 0)
-		_TreeLeftSta = _zoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
+		_treeLeftSta = _zoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
 	else
-		_TreeLeftSta = 0;
+		_treeLeftSta = 0;
 
 	if (zoom < 8)
 		_treeRightSta = _zoomTable[mapNum][zoom + 1][0] == 0 ? 0 : 2;
@@ -1118,20 +1118,20 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 	case 0x43B:
 	case 0x443:
 		SwitchMtoA();
-		_MapStat = 0;
+		_mapStat = 0;
 		_statPlay--;
 		break;
 	case 0x43F:
-		if (_TreeLeftSta == 3) {
-			_Zoom--;
-			ProcessMap(mapNum, _Zoom);
+		if (_treeLeftSta == 3) {
+			_zoom--;
+			ProcessMap(mapNum, _zoom);
 		} else
 			_UserInput = 0;
 		break;
 	case 0x440:
 		if (_treeRightSta == 2) {
-			_Zoom++;
-			ProcessMap(mapNum, _Zoom);
+			_zoom++;
+			ProcessMap(mapNum, _zoom);
 		} else
 			_UserInput = 0;
 		break;
@@ -1145,7 +1145,7 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 
 		if (_UserInput > 0x440) {
 			SwitchMtoA();
-			_MapStat = false;
+			_mapStat = false;
 			_statPlay--;
 			_loopFlag = true;
 		}
@@ -1213,21 +1213,21 @@ void KingdomGame::DisplayIcon(int reznum) {
 void KingdomGame::SetATimer() {
 	_aTimerFlag = true;
 	_aTimer = 0;
-	int wrkNodeNum = _NodeNum;
+	int wrkNodeNum = _nodeNum;
 	if (_Nodes[29] == 1 || _Nodes[68] == 1)
 		return;
 
 	if (_tsIconOnly)
 		wrkNodeNum = 79;
 
-	if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+	if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
 		wrkNodeNum = 80;
 	
 	for (int i = 0; i < 7; i++) {
 		int idx = _iconActTable[wrkNodeNum][i];
 		if (_Inventory[idx] > 0) {
 			_aTimerFlag = false;
-			_aTimer = _Wizard ? 114 : 133;
+			_aTimer = _wizard ? 114 : 133;
 			PlaySound(0);
 			PlaySound(34);
 			break;
@@ -1285,8 +1285,8 @@ void KingdomGame::CheckMainScreen() {
 		}
 	}
 
-	if (_IconRedraw) {
-		_IconRedraw = false;
+	if (_iconRedraw) {
+		_iconRedraw = false;
 		DrawIcon(4, 0, 12 - _healthOld);
 		DrawIcon(11, 178, _IconPic[0]);
 		DrawIcon(38, 178, _IconPic[1]);
@@ -1307,16 +1307,16 @@ void KingdomGame::CheckMainScreen() {
 	}
 
 	for (int i = 0; i < 7; i++) {
-		int wrkNodeNum = _NodeNum;
+		int wrkNodeNum = _nodeNum;
 		if (_tsIconOnly)
 			wrkNodeNum = 79;
-		if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+		if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
 			wrkNodeNum = 80;
-		if (_NodeNum == 21 && _Nodes[21] == 9)
+		if (_nodeNum == 21 && _Nodes[21] == 9)
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 
-		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_itemInhibit && !_IconsClosed) {
+		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
 			if (_IconPic[i] != 12 + idx) {
 				if (_IconPic[i] == 89 + i)
 					_IconPic[i] = 96 + i;
@@ -1347,7 +1347,7 @@ void KingdomGame::CheckMainScreen() {
 		DrawIcon(posX, 178, _IconPic[i]);
 	}
 
-	switch (_TreeLeftSta) {
+	switch (_treeLeftSta) {
 	case 0:
 		if (_treeLeftPic != 33) {
 			DrawIcon(243, 141, 33);
@@ -1361,7 +1361,7 @@ void KingdomGame::CheckMainScreen() {
 		}
 		break;
 	case 2:
-		if (!_Replay) {
+		if (!_replay) {
 			if (_treeLeftPic != 33) {
 				DrawIcon(243, 141, 33);
 				_treeLeftPic = 33;
@@ -1379,7 +1379,7 @@ void KingdomGame::CheckMainScreen() {
 		break;
 	default:
 		_treeLeftPic = 33;
-		_TreeLeftSta = 0;
+		_treeLeftSta = 0;
 		DrawIcon(243, 141, 33);
 		break;
 	}
@@ -1392,7 +1392,7 @@ void KingdomGame::CheckMainScreen() {
 		}
 		break;
 	case 1:
-		if (_Help) {
+		if (_help) {
 			if (_treeRightPic != 38) {
 				DrawIcon(290, 143, 38);
 				_treeRightPic = 38;
@@ -1415,7 +1415,7 @@ void KingdomGame::CheckMainScreen() {
 		break;
 	}
 
-	if (_Eye) {
+	if (_eye) {
 		if (_treeEyeTimer == 0) {
 			_treeEyePic = _teaSeq[_treeEyeSta][0];
 			DrawIcon(261, 51, _treeEyePic);
@@ -1475,21 +1475,21 @@ void KingdomGame::CheckMainScreen() {
 }
 
 bool KingdomGame::ChkDesertObstacles() {
-	if (!_Wizard)
+	if (!_wizard)
 		return false;
 
-	_NextNode = _NodeNum;
+	_nextNode = _nodeNum;
 	if (_lastObs) {
 		_lastObs = false;
 		return false;
 	}
 
 	if (_Nodes[29] || _rnd->getRandomNumber(6) == 0) {
-		if (!_Nodes[49] || _RobberyNode != _NodeNum) {
-			if (_LastObstacle != _NodeNum) {
+		if (!_Nodes[49] || _robberyNode != _nodeNum) {
+			if (_lastObstacle != _nodeNum) {
 				if (_rnd->getRandomNumber(5) == 0) {
 					_statPlay = 250;
-					_LastObstacle = _NodeNum;
+					_lastObstacle = _nodeNum;
 					_lastObs = true;
 					_loopFlag = true;
 					return true;
@@ -1506,8 +1506,8 @@ bool KingdomGame::ChkDesertObstacles() {
 		}
 	} else {
 		_statPlay = 280;
-		_RobberyNode = _NodeNum;
-		_LastObstacle = _NodeNum;
+		_robberyNode = _nodeNum;
+		_lastObstacle = _nodeNum;
 		_lastObs = true;
 		_loopFlag = true;
 		return true;
@@ -1516,19 +1516,19 @@ bool KingdomGame::ChkDesertObstacles() {
 
 void KingdomGame::SwitchAtoM() {
 	_asMode = true;
-	_ASMap = _CurrMap;
+	_asMap = _currMap;
 	SaveAS();
 	_IconSel = 9;
-	_OldTLS = _TreeLeftSta;
-	_OldTRS = _treeRightSta;
-	_OldPouch = _Pouch;
-	_OldHelp = _Help;
-	_OldIconsClosed = _IconsClosed;
-	_TreeLeftSta = 0;
+	_oldTLS = _treeLeftSta;
+	_oldTRS = _treeRightSta;
+	_oldPouch = _Pouch;
+	_oldHelp = _help;
+	_oldIconsClosed = _iconsClosed;
+	_treeLeftSta = 0;
 	_treeRightSta = 0;
 	_Pouch = false;
-	_Help = false;
-	_IconsClosed = true;
+	_help = false;
+	_iconsClosed = true;
 }
 
 void KingdomGame::SwitchMtoA() {
@@ -1589,7 +1589,7 @@ int KingdomGame::GetAKey() {
 			}
 			break;
 		case Common::EVENT_LBUTTONUP: // retval == 2?
-			if (_Eye)
+			if (_eye)
 				retval = !_asMode ? 0x43A : 0x43B;
 			break;
 		case Common::EVENT_RBUTTONUP: // retval == 1?
@@ -1633,12 +1633,12 @@ void KingdomGame::DrawCursor() {
 	_OldCursorDef = _CursorDef;
 
 	CursorMan.showMouse(true);
-	_CursorDrawn = true;
+	_cursorDrawn = true;
 }
 
 void KingdomGame::CursorType() {
 	_MouseValue = 0;
-	if (_CurrMap != 1 && _statPlay >= 30) {
+	if (_currMap != 1 && _statPlay >= 30) {
 		int var2 = _statPlay == 901 ? 16 : 0;
 		int var6 = _statPlay == 901 ? 35 : 16;
 		for (int i = 0; i < var6 + 1; i++) {
@@ -1666,26 +1666,26 @@ void KingdomGame::CursorType() {
 
 	switch(_MouseValue) {
 	case 0x18A:
-		if (_Eye)
+		if (_eye)
 			_MouseValue = !_asMode ? 0x43A : 0x43B;
 		else
 			_MouseValue = 0;
 		break;
 	case 0x18C:
-		if (_TreeLeftSta == 1)
+		if (_treeLeftSta == 1)
 			_MouseValue = 0x43D;
-		else if (_TreeLeftSta == 3)
+		else if (_treeLeftSta == 3)
 			_MouseValue = 0x43F;
-		else if (_TreeLeftSta == 0)
+		else if (_treeLeftSta == 0)
 			_MouseValue = 0;
-		else if (_TreeLeftSta == 2 && _Replay)
+		else if (_treeLeftSta == 2 && _replay)
 			_MouseValue = 0x43E;
 		else
 			_MouseValue = 0;
 		break;
 	case 0x18D:
 		if (_treeRightSta == 1)
-			_MouseValue = _Help ? 0x43C : 0;
+			_MouseValue = _help ? 0x43C : 0;
 		if (_treeRightSta == 2)
 			_MouseValue = 0x440;
 		break;
@@ -1707,23 +1707,23 @@ void KingdomGame::CursorType() {
 		break;
 	case 0x422:
 	case 0x425:
-		if (!_Wizard)
+		if (!_wizard)
 			_MouseValue = 0;
 		break;
 	case 0x428:
-		if (_NodeNum == 5 && _gameMode != 2 && _spell1)
+		if (_nodeNum == 5 && _gameMode != 2 && _spell1)
 			_MouseValue = 0;
 		break;
 	case 0x42A:
-		if (_NodeNum == 5 && _gameMode != 2 && _spell2)
+		if (_nodeNum == 5 && _gameMode != 2 && _spell2)
 			_MouseValue = 0;
 		break;
 	case 0x42B:
-		if (_NodeNum == 5 && _gameMode != 2 && _spell3)
+		if (_nodeNum == 5 && _gameMode != 2 && _spell3)
 			_MouseValue = 0;
 		break;
 	case 0x445:
-		if (_statPlay == 161 && _Nodes[16] == 0 && _Wizard)
+		if (_statPlay == 161 && _Nodes[16] == 0 && _wizard)
 			_MouseValue = 0x450;
 		break;
 	case 0x44F:
@@ -1739,13 +1739,13 @@ void KingdomGame::CursorType() {
 	_IconSelect = 9;
 	for (int var6 = 0; var6 < 8; var6++) {
 		if (_MouseValue == 181 + var6) {
-			int var2 = _NodeNum;
+			int var2 = _nodeNum;
 			if (_tsIconOnly)
 				var2 = 79;
-			if (_NodeNum == 56 && _Inventory[8] < 1 && _Wizard)
+			if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
 				var2 = 80;
 			int indx = _iconActTable[var2][var6];
-			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_IconsClosed && !_itemInhibit) {
+			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
 				_MouseValue = indx + 0x428;
 				_IconSelect = var6;
 				break;
@@ -1754,7 +1754,7 @@ void KingdomGame::CursorType() {
 		}
 	}
 
-	if (_CurrMap == 11) {
+	if (_currMap == 11) {
 		if (_MouseValue > 0x427 && _MouseValue < 0x43A) {
 			if (_Inventory[_MouseValue - 0x428] < 1)
 				_MouseValue = 0x241;
@@ -1772,11 +1772,11 @@ void KingdomGame::CursorTypeExit() {
 
 int KingdomGame::checkMouseMapAS() {
 	for (int i = 0; i < 16; i++) {
-		if (_CursorX >= _mouseMapAS[_CurrMap][i]._minX && _CursorX < _mouseMapAS[_CurrMap][i]._maxX
-			&& _CursorY >= _mouseMapAS[_CurrMap][i]._minY && _CursorY < _mouseMapAS[_CurrMap][i]._maxY)
-			return _mouseMapAS[_CurrMap][i]._mouseValue;
+		if (_CursorX >= _mouseMapAS[_currMap][i]._minX && _CursorX < _mouseMapAS[_currMap][i]._maxX
+			&& _CursorY >= _mouseMapAS[_currMap][i]._minY && _CursorY < _mouseMapAS[_currMap][i]._maxY)
+			return _mouseMapAS[_currMap][i]._mouseValue;
 	}
-	if (_CurrMap == 11) {
+	if (_currMap == 11) {
 		for (int i = 0; i < 16; i++) {
 			if (_CursorX >= _mouseMapAS[12][i]._minX && _CursorX < _mouseMapAS[12][i]._maxX
 				&& _CursorY >= _mouseMapAS[12][i]._minY && _CursorY < _mouseMapAS[12][i]._maxY)
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 90d56db6de..08482dc656 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -153,35 +153,35 @@ namespace Kingdom {
 		bool _tsIconOnly;
 		bool _lastObs;
 		bool _Pouch;
-		bool _NoMusic;
-		byte *_ASPtr;
-		int _ASMap;
-		int _CurrMap;
-		int _OldTLS;
-		int _OldTRS;
-		int _TreeLeftSta;
-		bool _IconsClosed;
-		bool _OldIconsClosed;
-		bool _OldEye;
-		bool _Eye;
-		bool _OldHelp;
-		bool _Help;
-		bool _OldPouch;
-		int _PMovie;
-		bool _KeyActive;
-		bool _IconRedraw;
-		bool _Replay;
+		bool _noMusic; // TODO: Synchronize this flag with the launcher
+		byte *_asPtr;
+		int _asMap;
+		int _currMap;
+		int _oldTLS;
+		int _oldTRS;
+		int _treeLeftSta;
+		bool _iconsClosed;
+		bool _oldIconsClosed;
+		bool _oldEye;
+		bool _eye;
+		bool _oldHelp;
+		bool _help;
+		bool _oldPouch;
+		int _pMovie;
+		bool _keyActive;
+		bool _iconRedraw;
+		bool _replay;
 		bool _quit;
-		int _NodeNum;
-		int _OldNode;
-		int _NextNode;
-		int _RobberyNode;
-		bool _CursorDrawn; // CHECKME: Useless
-		bool _Wizard;
-		int _Zoom;
-		bool _Resurrect;
-		int _LastObstacle;
-		int _MapStat;
+		int _nodeNum;
+		int _oldNode; // CHECKME: Useless? If so, to be removed
+		int _nextNode;
+		int _robberyNode;
+		bool _cursorDrawn; // CHECKME: Useless
+		bool _wizard;
+		int _zoom;
+		bool _resurrect;
+		int _lastObstacle;
+		int _mapStat; // CHECKME: Useless? If so, to be removed
 		int _MouseValue;
 		int _CursorDef;
 		int _OldCursorDef;


Commit: fb1ba7ea4d8ea9f9701d80960c9b1dd4ee2fe125
    https://github.com/scummvm/scummvm/commit/fb1ba7ea4d8ea9f9701d80960c9b1dd4ee2fe125
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Last renaming of class variables

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index b801a9c5a0..af1ecaad05 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -33,7 +33,7 @@ void KingdomGame::GPLogic1() {
 		GPLogic1_SubSP10();
 		break;
 	case 11:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x190:
 			_statPlay = 20;
 			_wizard = false;
@@ -80,8 +80,8 @@ void KingdomGame::GPLogic1() {
 			GPLogic1_SubSP10();
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -93,15 +93,15 @@ void KingdomGame::GPLogic1() {
 		FadeToBlack2();
 		ShowPic(106);
 		_statPlay = 30;
-		_UserInput = 0;
+		_userInput = 0;
 		_loopFlag = true;
 		break;
 	case 30:
 		_nodeNum = 3;
-		_UserInput = 0;
-		if (_Nodes[3] == 0) {
+		_userInput = 0;
+		if (_nodes[3] == 0) {
 			PlayMovie(177);
-			_Nodes[3] = 9;
+			_nodes[3] = 9;
 			if (!_wizard) {
 				_statPlay = 50;
 				_loopFlag = true;
@@ -109,7 +109,7 @@ void KingdomGame::GPLogic1() {
 			}
 		}
 		DrawLocation();
-		if (_Nodes[4] != 0 && _Nodes[6] != 1)
+		if (_nodes[4] != 0 && _nodes[6] != 1)
 			_sound = true;
 		else
 			_sound = false;
@@ -118,23 +118,23 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 31;
 		_currMap = 10;
 		PlaySound(24);
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 31:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 32;
 			_zoom = 2;
 			ProcessMap(3, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -144,10 +144,10 @@ void KingdomGame::GPLogic1() {
 	case 40:
 		_nodeNum = 4;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[4] == 0)
+		_userInput = 0;
+		if (_nodes[4] == 0)
 			PlayMovie(62);
-		if (_Nodes[4] == 9) {
+		if (_nodes[4] == 9) {
 			PlayMovie(8);
 			_tsIconOnly = true;
 		}
@@ -156,13 +156,13 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 41;
 		break;
 	case 41:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x429:
 			PlayMovie(178);
 			PlayMovie(63);
 			InventoryDel(1);
 			_currMap = 10;
-			_Nodes[4] = 9;
+			_nodes[4] = 9;
 			_statPlay = 41;
 			_tsIconOnly = true;
 			break;
@@ -170,15 +170,15 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 42;
 			_zoom = 2;
 			ProcessMap(4, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -188,12 +188,12 @@ void KingdomGame::GPLogic1() {
 	case 50:
 		_nodeNum = 5;
 		DrawLocation();
-		if (_Nodes[5] != 0 && !_resurrect) {
+		if (_nodes[5] != 0 && !_resurrect) {
 			_frameStop = 38;
 			PlayMovie(5);
 		}
 		
-		if (_Nodes[5] == 0)
+		if (_nodes[5] == 0)
 			PlayMovie(5);
 		
 		_resurrect = false;
@@ -210,7 +210,7 @@ void KingdomGame::GPLogic1() {
 			_currMap = 10;
 			_statPlay = 51;
 		} else {
-			switch(_Nodes[5]) {
+			switch(_nodes[5]) {
 			case 0:
 				InventoryAdd(1);
 				break;
@@ -257,7 +257,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 51:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x406:
 			_statPlay = 70;
 			_loopFlag = true;
@@ -274,15 +274,15 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 52;
 			_zoom = 2;
 			ProcessMap(5, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -290,9 +290,9 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(5);
 		break;
 	case 53:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
-			_Nodes[5] = 1;
+			_nodes[5] = 1;
 			_daelonCntr = 5;
 			PlayMovie(6);
 			_currMap = 7;
@@ -300,7 +300,7 @@ void KingdomGame::GPLogic1() {
 			_eye = true;
 			break;
 		case 0x42A:
-			_Nodes[5] = 2;
+			_nodes[5] = 2;
 			_daelonCntr = 5;
 			PlayMovie(6);
 			_currMap = 7;
@@ -308,7 +308,7 @@ void KingdomGame::GPLogic1() {
 			_eye = true;
 			break;
 		case 0x42B:
-			_Nodes[5] = 3;
+			_nodes[5] = 3;
 			_daelonCntr = 5;
 			PlayMovie(6);
 			_currMap = 7;
@@ -336,16 +336,16 @@ void KingdomGame::GPLogic1() {
 				DrawPic(118);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 60:
 		_nodeNum = 6;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[4] == 0) {
+		_userInput = 0;
+		if (_nodes[4] == 0) {
 			DsAll();
 			PlayMovie(9);
 			_statPlay = 991;
@@ -359,8 +359,8 @@ void KingdomGame::GPLogic1() {
 	case 70:
 		_nodeNum = 7;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[7] == 0) {
+		_userInput = 0;
+		if (_nodes[7] == 0) {
 			PlayMovie(11);
 			PlaySound(2);
 			_currMap = 9;
@@ -374,32 +374,32 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 71;
 		break;
 	case 71:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x42F:
-			if (_Nodes[7] == 9) {
+			if (_nodes[7] == 9) {
 				DisplayIcon(137);
 			} else {
 				PlayMovie(12);
 				PlaySound(30);
 				InventoryAdd(7);
-				_Nodes[7] = 9;
+				_nodes[7] = 9;
 				_currMap = 10;
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 72;
 			_zoom = 2;
 			ProcessMap(7, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -409,14 +409,14 @@ void KingdomGame::GPLogic1() {
 	case 80:
 		_nodeNum = 8;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[8] == 9) {
+		_userInput = 0;
+		if (_nodes[8] == 9) {
 			PlayMovie(24);
 			PlaySound(3);
 			_currMap = 13;
 			_tsIconOnly = true;
 		} else {
-			_Nodes[8] = 0;
+			_nodes[8] = 0;
 			DsAll();
 			PlayMovie(14);
 			_currMap = 10;
@@ -425,7 +425,7 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 81;
 		break;
 	case 81:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(15);
@@ -433,57 +433,57 @@ void KingdomGame::GPLogic1() {
 			_loopFlag = true;
 			break;
 		case 0x429:
-			if (!_Nodes[8]) {
+			if (!_nodes[8]) {
 				_aTimer = 0;
 				EnAll();
 				PlayMovie(18);
 				PlaySound(3);
 				InventoryDel(1);
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 13;
-				_Nodes[8] = 1;
+				_nodes[8] = 1;
 			}
 			break;
 		case 0x42A:
-			if (!_Nodes[8]) {
+			if (!_nodes[8]) {
 				_aTimer = 0;
 				EnAll();
 				PlayMovie(18);
 				PlaySound(3);
 				InventoryDel(2);
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 13;
-				_Nodes[8] = 1;
+				_nodes[8] = 1;
 			}
 			break;
 		case 0x42C:
-			if (!_Nodes[8]) {
+			if (!_nodes[8]) {
 				_aTimer = 0;
 				EnAll();
 				PlayMovie(16);
 				PlaySound(3);
-				_Nodes[8] = 9;
+				_nodes[8] = 9;
 				_tsIconOnly = true;
 				_currMap = 13;
 			}
 			break;
 		case 0x42D:
-			if (!_Nodes[8]) {
+			if (!_nodes[8]) {
 				EnAll();
 				PlayMovie(17);
 				InventoryDel(5);
 				PlaySound(3);
 				_aTimer = 0;
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 13;
-				_Nodes[8] = 1;
+				_nodes[8] = 1;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 82;
 			_zoom = 2;
 			ProcessMap(8, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -491,18 +491,18 @@ void KingdomGame::GPLogic1() {
 			_aTimer = 0;
 			break;
 		case 0x453:
-			if (_Nodes[8] == 1) {
+			if (_nodes[8] == 1) {
 				_statPlay = 80;
 				_loopFlag = true;
 			} else {
 				_statPlay = 160;
 				_loopFlag = true;
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -510,17 +510,17 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(8);
 		break;
 	case 90:
-		if (_nodeNum == 18 && _Nodes[17] == 0) {
+		if (_nodeNum == 18 && _nodes[17] == 0) {
 			_statPlay = 170;
 			_loopFlag = true;
 			_nextNode = 90;
 		} else {
 			_nodeNum = 9;
 			DrawLocation();
-			_UserInput = 0;
-			if (_Nodes[9] == 0) {
+			_userInput = 0;
+			if (_nodes[9] == 0) {
 				_sound = false;
-				_Nodes[9] = 9;
+				_nodes[9] = 9;
 			} else
 				_sound = true;
 			
@@ -539,12 +539,12 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 91:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 92;
 			_zoom = 2;
 			ProcessMap(9, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			if (!_wizard)
@@ -558,8 +558,8 @@ void KingdomGame::GPLogic1() {
 				ShowPic(319);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -567,20 +567,20 @@ void KingdomGame::GPLogic1() {
 		ProcessMapInput(9);
 		break;
 	case 100:
-		if (_nodeNum == 18 && _Nodes[17] == 0) {
+		if (_nodeNum == 18 && _nodes[17] == 0) {
 			_statPlay = 170;
 			_loopFlag = true;
 			_nextNode = 100;
 		} else {
 			_nodeNum = 10;
 			DrawLocation();
-			_UserInput = 0;
-			if (_Nodes[10] == 1)
-				_Nodes[10] = 9;
+			_userInput = 0;
+			if (_nodes[10] == 1)
+				_nodes[10] = 9;
 
-			if (_Nodes[10] != 9) {
+			if (_nodes[10] != 9) {
 				_sound = false;
-				_Nodes[10] = 1;
+				_nodes[10] = 1;
 			} else if (_wizard)
 				_sound = true;
 
@@ -591,12 +591,12 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 101:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 102;
 			_zoom = 2;
 			ProcessMap(10, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -610,8 +610,8 @@ void KingdomGame::GPLogic1() {
 	case 110:
 		_nodeNum = 11;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[22] == 0)
+		_userInput = 0;
+		if (_nodes[22] == 0)
 			_sound = false;
 		else
 			_sound = true;
@@ -621,19 +621,19 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 111;
 		break;
 	case 111:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 112;
 			_zoom = 1;
 			ProcessMap(11, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			PlayMovie(21);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -643,8 +643,8 @@ void KingdomGame::GPLogic1() {
 	case 120:
 		_nodeNum = 12;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[12] == 0) {
+		_userInput = 0;
+		if (_nodes[12] == 0) {
 			PlayMovie(22);
 			_currMap = 14;
 		} else {
@@ -656,23 +656,23 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 121;
 		break;
 	case 121:
-		switch (_UserInput) {
+		switch (_userInput) {
 		case 0x445:
 			_statPlay = 150;
 			_loopFlag = true;
 			_eye = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x446:
 			_statPlay = 80;
 			_loopFlag = true;
 			_eye = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x437:
-			if (_Nodes[12] == 9) {
+			if (_nodes[12] == 9) {
 				DisplayIcon(145);
-				_UserInput = 0;
+				_userInput = 0;
 			} else
 				GPLogic1_SubSP121();
 			break;
@@ -686,15 +686,15 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 130:
 		_nodeNum = 13;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		PlayMovie(4);
 		_statPlay = 991;
@@ -703,7 +703,7 @@ void KingdomGame::GPLogic1() {
 	case 140:
 		_nodeNum = 14;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		if (Wound()) {
 			PlayMovie(26);
 			PlaySound(35);
@@ -714,24 +714,24 @@ void KingdomGame::GPLogic1() {
 			PlayMovie(27);
 			_statPlay = 991;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 		}
 		break;
 	case 141:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 142;
 			_zoom = 2;
 			ProcessMap(14, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -748,7 +748,7 @@ void KingdomGame::GPLogic1() {
 		_eye = false;
 		break;
 	case 151:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -758,25 +758,25 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 80;
 			EnAll();
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 160:
 		_nodeNum = 16;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		PlayMovie(29);
 		PlaySound(3);
 		_currMap = 85;
 		_statPlay = 161;
 		break;
 	case 161:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x198: {
 			FadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
@@ -811,7 +811,7 @@ void KingdomGame::GPLogic1() {
 			FShowPic(110);
 			_bTimer = 190;
 			ReadMouse();
-			while(_bTimer != 0 && _MouseButton == 0) {
+			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
@@ -819,8 +819,8 @@ void KingdomGame::GPLogic1() {
 			FShowPic(105);
 			break;
 		case 0x42E:
-			_Nodes[15] = 1;
-			_Nodes[16] = 1;
+			_nodes[15] = 1;
+			_nodes[16] = 1;
 			_statPlay = 120;
 			_loopFlag = true;
 			break;
@@ -828,7 +828,7 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 162;
 			_zoom = 2;
 			ProcessMap(16, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			if (_pMovie > 206)
@@ -848,7 +848,7 @@ void KingdomGame::GPLogic1() {
 			_currMap = 86;
 			break;
 		case 0x445:
-			if (_Nodes[16] || !_wizard) {
+			if (_nodes[16] || !_wizard) {
 				_statPlay = 120;
 				_loopFlag = true;
 			}
@@ -856,7 +856,7 @@ void KingdomGame::GPLogic1() {
 		case 0x446:
 			_statPlay = 80;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x450:
 			SaveAS();
@@ -864,7 +864,7 @@ void KingdomGame::GPLogic1() {
 			_bTimer = 76;
 			ReadMouse();
 
-			while(_bTimer != 0 && _MouseButton == 0) {
+			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
@@ -875,8 +875,8 @@ void KingdomGame::GPLogic1() {
 			RestoreAS();
 			break;	
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -884,7 +884,7 @@ void KingdomGame::GPLogic1() {
 			ProcessMapInput(16);
 		break;
 	case 170:
-		if (_Nodes[17] == 9) {
+		if (_nodes[17] == 9) {
 			_statPlay = _nextNode;
 			_loopFlag = true;
 		} else {
@@ -895,11 +895,11 @@ void KingdomGame::GPLogic1() {
 			_currMap = 10;
 			_statPlay = 171;
 			SetATimer();
-			_UserInput = 0;
+			_userInput = 0;
 		}
 		break;
 	case 171:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			EnAll();
 			if (Wound()) {
@@ -920,19 +920,19 @@ void KingdomGame::GPLogic1() {
 			_replay = false;
 			EnAll();
 			PlayMovie(34);
-			_UserInput = 0;
-			_Nodes[17] = 9;
+			_userInput = 0;
+			_nodes[17] = 9;
 			_statPlay = _nextNode;
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 172:
-		if (_UserInput == 0x2F1) {
+		if (_userInput == 0x2F1) {
 			_statPlay = 171;
 			_loopFlag= true;
 			SwitchAS();
@@ -940,16 +940,16 @@ void KingdomGame::GPLogic1() {
 			ProcessMapInput(_nodeNum);
 		break;
 	case 180:
-		if ((_nodeNum != 9 && _nodeNum != 10) || (_Nodes[17] != 0)) {
+		if ((_nodeNum != 9 && _nodeNum != 10) || (_nodes[17] != 0)) {
 			_nodeNum = 18;
 			DrawLocation();
-			_UserInput = 0;
-			if (_Nodes[18] == 0 || _Nodes[18] == 1) {
-				_Nodes[18] = 0;
+			_userInput = 0;
+			if (_nodes[18] == 0 || _nodes[18] == 1) {
+				_nodes[18] = 0;
 				PlayMovie(33);
 				_currMap = 10;
 			}
-			if (_Nodes[18] == 9) {
+			if (_nodes[18] == 9) {
 				PlayMovie(37);
 				_currMap = 19;
 				_tsIconOnly = true;
@@ -963,33 +963,33 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 181:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x407:
 			_statPlay = 80;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x428:
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
 			InventoryDel(0);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x429:
-			if (!_Nodes[18]) {
+			if (!_nodes[18]) {
 				InventoryDel(1);
-				_Nodes[18] = true;
+				_nodes[18] = true;
 			}
 			PlayMovie(35);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42A:
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
 			InventoryDel(2);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42C:
 			SaveAS();
@@ -997,10 +997,10 @@ void KingdomGame::GPLogic1() {
 			RestoreAS();
 			break;
 		case 0x42F:
-			if (_Nodes[18] == 1) {
+			if (_nodes[18] == 1) {
 				PlayMovie(36);
 				InventoryDel(7);
-				_Nodes[18] = 9;
+				_nodes[18] = 9;
 				_currMap = 19;
 				_tsIconOnly = true;
 			} else {
@@ -1009,21 +1009,21 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(36);
 				_fstFwd = true;
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 182;
 			_zoom = 2;
-			if (_Nodes[18] == 9)
+			if (_nodes[18] == 9)
 				ProcessMap(80, _zoom);
 			else
 				ProcessMap(18, _zoom);
 
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			if (_pMovie == 36 && _Nodes[18] != 9) {
+			if (_pMovie == 36 && _nodes[18] != 9) {
 				_frameStop = 27;
 				_fstFwd = false;
 				PlayMovie(36);
@@ -1032,8 +1032,8 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -1043,7 +1043,7 @@ void KingdomGame::GPLogic1() {
 	case 190:
 		_nodeNum = 19;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		PlayMovie(38);
 		_statPlay = 991;
@@ -1052,8 +1052,8 @@ void KingdomGame::GPLogic1() {
 	case 200:
 		_nodeNum = 20;
 		DrawLocation();
-		_UserInput = 0;
-		if (!_Nodes[20]) {
+		_userInput = 0;
+		if (!_nodes[20]) {
 			PlayMovie(39);
 			IncreaseHealth();
 		} else {
@@ -1066,12 +1066,12 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 201;
 		break;
 	case 201:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 202;
 			_zoom = 0;
 			ProcessMap(20, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -1085,26 +1085,26 @@ void KingdomGame::GPLogic1() {
 	case 210:
 		_nodeNum = 21;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		if (!_wizard)
-			_Nodes[21] = 9;
+			_nodes[21] = 9;
 
-		if (_Nodes[21] == 9) {
-			_Nodes[21] = 9;
+		if (_nodes[21] == 9) {
+			_nodes[21] = 9;
 			PlayMovie(209);
 			PlaySound(38);
 			_currMap = 81;
 		} else {
 			DsAll();
 			PlayMovie(45);
-			_Nodes[21] = 0;
+			_nodes[21] = 0;
 			_currMap = 10;
 			SetATimer();
 		}
 		_statPlay = 211;
 		break;
 	case 211:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(46);
@@ -1113,11 +1113,11 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x428:
 			InventoryDel(0);
-			if (_Nodes[21] == 9) {
+			if (_nodes[21] == 9) {
 				SaveAS();
 				PlayMovie(65);
 				RestoreAS();
-				_UserInput = 0;
+				_userInput = 0;
 			} else {
 				PlayMovie(178);
 				DsAll();
@@ -1127,26 +1127,26 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x42A:
-			if (!_Nodes[21]) {
+			if (!_nodes[21]) {
 				_aTimer = 0;
 				EnAll();
 				PlayMovie(48);
 				InventoryDel(2);
-				_Nodes[21] = 1;
+				_nodes[21] = 1;
 				_tsIconOnly = true;
 				PlaySound(38);
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		case 0x42D:
-			if (!_Nodes[21]) {
+			if (!_nodes[21]) {
 				_aTimer = 0;
 				EnAll();
 				PlayMovie(47);
 				PlaySound(38);
 				InventoryDel(5);
-				_Nodes[21] = 9;
-				_UserInput = 0;
+				_nodes[21] = 9;
+				_userInput = 0;
 				_currMap = 81;
 				_tsIconOnly = true;
 			}
@@ -1155,14 +1155,14 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 212;
 			_zoom = 2;
 			ProcessMap(21, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			if (_pMovie == 65) {
 				SaveAS();
 				PlayMovie(65);
 				RestoreAS();
-				_UserInput = 0;
+				_userInput = 0;
 			} else {
 				_sound = _lastSound;
 				PlayMovie(_pMovie);
@@ -1171,7 +1171,7 @@ void KingdomGame::GPLogic1() {
 		case 0x441:
 			_statPlay = 220;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x442:
 			if (_tsIconOnly) {
@@ -1180,23 +1180,23 @@ void KingdomGame::GPLogic1() {
 				PlayMovie(49);
 				_tsIconOnly = false;
 				PlaySound(38);
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		case 0x448:
 			_statPlay = 140;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 212:
-		if (_UserInput == 0x2F1) {
-			_UserInput = 0;
+		if (_userInput == 0x2F1) {
+			_userInput = 0;
 			_aTimer = 0;
 			_statPlay = 211;
 			_loopFlag = true;
@@ -1207,8 +1207,8 @@ void KingdomGame::GPLogic1() {
 	case 220:
 		_nodeNum = 22;
 		DrawLocation();
-		_UserInput = 0;
-		if (!_Nodes[22]) {
+		_userInput = 0;
+		if (!_nodes[22]) {
 			PlayMovie(41);
 			_currMap = 82;
 		} else {
@@ -1220,34 +1220,34 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 221;
 		break;
 	case 221:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
 			InventoryDel(0);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x429:
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
 			InventoryDel(1);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42A:
 			PlayMovie(42);
 			PlaySound(30);
-			if (!_Nodes[22]) {
+			if (!_nodes[22]) {
 				InventoryDel(2);
 				InventoryAdd(4);
 				_tsIconOnly = true;
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			_currMap = 10;
 			break;
 		case 0x42C:
-			if (!_Nodes[22]) {
+			if (!_nodes[22]) {
 				DsAll();
 				PlayMovie(43);
 				PlaySound(34);
@@ -1262,15 +1262,15 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 222;
 			_zoom = 2;
 			ProcessMap(22, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -1280,7 +1280,7 @@ void KingdomGame::GPLogic1() {
 	case 230:
 		_nodeNum = 23;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		PlayMovie(50);
 		_statPlay = 991;
@@ -1289,8 +1289,8 @@ void KingdomGame::GPLogic1() {
 	case 240:
 		_nodeNum = 24;
 		DrawLocation();
-		_UserInput = 0;
-		if (!_Nodes[24]) {
+		_userInput = 0;
+		if (!_nodes[24]) {
 			PlayMovie(51);
 			_currMap = 83;
 		} else {
@@ -1303,7 +1303,7 @@ void KingdomGame::GPLogic1() {
 		_statPlay = 241;
 		break;
 	case 241:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 			SaveAS();
 			PlayMovie(178);
@@ -1311,12 +1311,12 @@ void KingdomGame::GPLogic1() {
 			InventoryDel(0);
 			break;
 		case 0x429:
-			if (_Nodes[24] != 9) {
+			if (_nodes[24] != 9) {
 				_tsIconOnly = true;
 				PlayMovie(66);
 				InventoryDel(1);
 				_currMap = 84;
-				_Nodes[24] = 9;
+				_nodes[24] = 9;
 			}
 			break;
 		case 0x42A:
@@ -1326,7 +1326,7 @@ void KingdomGame::GPLogic1() {
 			InventoryDel(2);
 			break;
 		case 0x42D:
-			if (_Inventory[5] >= 1)
+			if (_inventory[5] >= 1)
 				DisplayIcon(135);
 			else {
 				SaveAS();
@@ -1334,14 +1334,14 @@ void KingdomGame::GPLogic1() {
 				PlaySound(30);
 				RestoreAS();
 				InventoryAdd(5);
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 242;
 			_zoom = 2;
 			ProcessMap(24, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -1358,11 +1358,11 @@ void KingdomGame::GPLogic1() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 242:
 		ProcessMapInput(24);
@@ -1378,7 +1378,7 @@ void KingdomGame::GPLogic1_SubSP10() {
 	ShowPic(114);
 
 	_currMap = 4;
-	_UserInput = 0;
+	_userInput = 0;
 	_aTimer = 595;
 	_statPlay = 11;
 }
@@ -1389,7 +1389,7 @@ void KingdomGame::GPLogic1_SubSP121() {
 	_bTimer = 190;
 	ReadMouse();
 	
-	while (_bTimer != 0 && _MouseButton == 0) {
+	while (_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
@@ -1400,7 +1400,7 @@ void KingdomGame::GPLogic1_SubSP121() {
 	InventoryAdd(15);
 	_currMap = 10;
 	FShowPic(150);
-	_Nodes[12] = 9;
+	_nodes[12] = 9;
 	PlaySound(3);
 	_currMap = 15;
 }
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 40813a6d48..aaa3cb2cc6 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -32,13 +32,13 @@ void KingdomGame::GPLogic2() {
 
 		DrawLocation();
 		DsAll();
-		if (_Nodes[24] != 0 || highNode) {
+		if (_nodes[24] != 0 || highNode) {
 			_eye = true;
 			PlayMovie(72);
 			_aTimerFlag = false;
 			_aTimer = 114;
 			PlaySound(34);
-			_UserInput = 0;
+			_userInput = 0;
 			_currMap = 10;
 			_statPlay = 251;
 		} else {
@@ -53,7 +53,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 251:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			PlayMovie(73);
@@ -66,7 +66,7 @@ void KingdomGame::GPLogic2() {
 			_zoom = 2;
 			ProcessMap(30, _zoom);
 			SetATimer();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		}
 		break;
@@ -81,10 +81,10 @@ void KingdomGame::GPLogic2() {
 		_currMap = 10;
 		SetATimer();
 		_statPlay = 261;
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 261:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			DsAll();
@@ -99,7 +99,7 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(178);
 			RestoreAS();
 			SetATimer();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42A:
 			InventoryDel(2);
@@ -108,14 +108,14 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(178);
 			RestoreAS();
 			SetATimer();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42C:
 			_aTimer = 0;
 			EnAll();
 			PlayMovie(76);
-			_Nodes[26] = 1;
-			_UserInput = 0;
+			_nodes[26] = 1;
+			_userInput = 0;
 			_statPlay = 290;
 			_lastObs = true;
 			_lastObstacle = 29;
@@ -142,29 +142,29 @@ void KingdomGame::GPLogic2() {
 	case 270:
 		_nodeNum = 27;
 		DrawLocation();
-		if (_Nodes[28] == 1)
-			_Nodes[28] = 9;
-		if (_Nodes[28] == 9 || _Nodes[29] != 0) {
+		if (_nodes[28] == 1)
+			_nodes[28] = 9;
+		if (_nodes[28] == 9 || _nodes[29] != 0) {
 			if (_wizard)
 				_sound = true;
 		} else {
 			_sound = false;
-			_Nodes[28] = 1;
+			_nodes[28] = 1;
 		}
 		PlayMovie(80);
 		PlaySound(18);
 		_currMap = 10;
 		_statPlay = 271;
-		_Nodes[28] = 1;
-		_UserInput = 0;
+		_nodes[28] = 1;
+		_userInput = 0;
 		break;
 	case 271:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 272;
 			_zoom = 2;
 			ProcessMap(27, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -178,12 +178,12 @@ void KingdomGame::GPLogic2() {
 	case 280:
 		_nodeNum = 28;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		_fstFwd = false;
 		PlayMovie(81);
 		_currMap = 10;
-		_Nodes[29] = _Nodes[39] = 1;
+		_nodes[29] = _nodes[39] = 1;
 		_statPlay = _robberyNode * 10;
 		EnAll();
 		_loopFlag = true;
@@ -191,39 +191,39 @@ void KingdomGame::GPLogic2() {
 	case 290:
 		_oldNode = _nodeNum;
 		if (!_wizard) {
-			_Nodes[26] = 9;
-			_Nodes[30] = 8;
+			_nodes[26] = 9;
+			_nodes[30] = 8;
 		}
-		if (_Nodes[26] == 0) {
+		if (_nodes[26] == 0) {
 			_statPlay = 260;
 			_loopFlag = true;
 			_nextNode = 29;
 		} else {
-			if (_Nodes[26] == 2)
+			if (_nodes[26] == 2)
 				PlayMovie(79);
 			_nodeNum = 29;
-			if (_Nodes[26] <= 2 || !ChkDesertObstacles()) {
+			if (_nodes[26] <= 2 || !ChkDesertObstacles()) {
 				DrawLocation();
-				_Nodes[26]++;
-				_UserInput = 0;
-				switch (_Nodes[30]) {
+				_nodes[26]++;
+				_userInput = 0;
+				switch (_nodes[30]) {
 				case 0:
 					_sound = false;
 					PlayMovie(82);
 					_currMap = 89;
-					_Nodes[30] = 1;
+					_nodes[30] = 1;
 					break;
 				case 1:
 					_sound = true;
 					PlayMovie(82);
 					_currMap = 89;
-					_Nodes[30] = 0;
+					_nodes[30] = 0;
 					break;
 				case 8:
 					_sound = false;
 					PlayMovie(85);
 					_currMap = 10;
-					_Nodes[30] = 9;
+					_nodes[30] = 9;
 					_tsIconOnly = true;
 					break;
 				default:
@@ -240,18 +240,18 @@ void KingdomGame::GPLogic2() {
 			
 		break;
 	case 291:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x431:
 			_tsIconOnly = true;
 			PlayMovie(83);
 			PlaySound(30);
 			InventoryAdd(10);
-			_Nodes[30] = 8;
-			_UserInput = 0;
+			_nodes[30] = 8;
+			_userInput = 0;
 			_currMap = 10;
 			break;
 		case 0x432:
-			if (_Nodes[30] >= 8)
+			if (_nodes[30] >= 8)
 				DisplayIcon(140);
 			else {
 				DsAll();
@@ -264,7 +264,7 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 292;
 			_zoom = 2;
 			ProcessMap(29, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -276,7 +276,7 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(29);
 		break;
 	case 300:
-		if (_Nodes[24] == 0) {
+		if (_nodes[24] == 0) {
 			_loopFlag = true;
 			_statPlay = 250;
 		} else {
@@ -291,12 +291,12 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 301:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 302;
 			_zoom = 2;
 			ProcessMap(30, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -316,18 +316,18 @@ void KingdomGame::GPLogic2() {
 			PlaySound(18);
 			_currMap = 90;
 			_statPlay = 311;
-			_Nodes[32] = 1;
+			_nodes[32] = 1;
 			_aTimer = 0;
-			_UserInput = 0;
+			_userInput = 0;
 		}
 		break;
 	case 311:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 312;
 			_zoom = 2;
 			ProcessMap(31, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -349,14 +349,14 @@ void KingdomGame::GPLogic2() {
 		_oldNode = _nodeNum;
 		_nodeNum = 32;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		IncreaseHealth();
-		if (_Nodes[33] != 9 && _wizard) {
+		if (_nodes[33] != 9 && _wizard) {
 			_sound = false;
-			_Nodes[33] = 9;
+			_nodes[33] = 9;
 		} else {
 			_sound = true;
-			_Nodes[33] = 1;
+			_nodes[33] = 1;
 		}
 		PlayMovie(87);
 		PlaySound(18);
@@ -364,12 +364,12 @@ void KingdomGame::GPLogic2() {
 		_statPlay = 321;
 		break;
 	case 321:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 322;
 			_zoom = 2;
 			ProcessMap(32, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -385,8 +385,8 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 33;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
-			_UserInput = 0;
-			if (_Nodes[32] == 0)
+			_userInput = 0;
+			if (_nodes[32] == 0)
 				_sound = false;
 			else
 				_sound = true;
@@ -397,12 +397,12 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 331:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 332;
 			_zoom = 2;
 			ProcessMap(33, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -414,7 +414,7 @@ void KingdomGame::GPLogic2() {
 		ProcessMapInput(33);
 		break;
 	case 340:
-		if (_Nodes[36] == 0) {
+		if (_nodes[36] == 0) {
 			_statPlay = 350;
 			_loopFlag = true;
 			_nextNode = 34;
@@ -423,8 +423,8 @@ void KingdomGame::GPLogic2() {
 			_nodeNum = 34;
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
-				_UserInput = 0;
-				if (_Nodes[35] == 9 || _Nodes[41] == 0 || !_wizard) {
+				_userInput = 0;
+				if (_nodes[35] == 9 || _nodes[41] == 0 || !_wizard) {
 					PlayMovie(91);
 					_currMap = 92;
 				} else {
@@ -432,7 +432,7 @@ void KingdomGame::GPLogic2() {
 					ShowPic(389);
 					_currMap = 91;
 				}
-				if (_Nodes[35] == 9)
+				if (_nodes[35] == 9)
 					_tsIconOnly = true;
 				PlaySound(26);
 				_statPlay = 341;
@@ -440,14 +440,14 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 341:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x431:
-			if (_Nodes[35] == 9)
+			if (_nodes[35] == 9)
 				DisplayIcon(139);
 			else {
 				PlayMovie(90);
 				InventoryAdd(9);
-				_Nodes[35] = 9;
+				_nodes[35] = 9;
 				_currMap = 93;
 			}
 			break;
@@ -455,7 +455,7 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 342;
 			_zoom = 2;
 			ProcessMap(34, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -465,13 +465,13 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x445:
 			_statPlay = 410;
-			_UserInput = 0;
+			_userInput = 0;
 			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
-			_UserInput = 0;
+			_userInput = 0;
 			_currMap = 10;
 			_loopFlag = true;
 			break;
@@ -482,8 +482,8 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 350:
 		if (!_wizard)
-			_Nodes[36] = 1;
-		if (_Nodes[36] == 1) {
+			_nodes[36] = 1;
+		if (_nodes[36] == 1) {
 			_statPlay = _nextNode * 10;
 			_loopFlag = true;
 		} else {
@@ -493,18 +493,18 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(92);
 			_currMap = 94;
 			SetATimer();
-			_UserInput = 0;
+			_userInput = 0;
 			_statPlay = 351;
 		}
 		break;
 	case 351:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			PlayMovie(178);
-			_UserInput = 0x2F1;
+			_userInput = 0x2F1;
 			_loopFlag = true;
 		// No break on purpose
 		case 0x2F1:
@@ -519,8 +519,8 @@ void KingdomGame::GPLogic2() {
 			EnAll();
 			PlayMovie(179);
 			InventoryDel(2);
-			_Nodes[36] = 1;
-			_UserInput = 0;
+			_nodes[36] = 1;
+			_userInput = 0;
 			_statPlay = _nextNode * 10;
 			_lastObs = true;
 			_lastObstacle = _nextNode;
@@ -531,7 +531,7 @@ void KingdomGame::GPLogic2() {
 	case 360:
 		_nodeNum = 36;
 		DrawLocation();
-		if (_Nodes[37] == 0)
+		if (_nodes[37] == 0)
 			_sound = false;
 		else
 			_sound = true;
@@ -540,11 +540,11 @@ void KingdomGame::GPLogic2() {
 		PlayMovie(94);
 		_currMap = 95;
 		SetATimer();
-		_UserInput = 0;
+		_userInput = 0;
 		_statPlay = 361;
 		break;
 	case 361:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			DsAll();
@@ -558,10 +558,10 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(97);
 			InventoryDel(0);
 			PlaySound(5);
-			_Nodes[37] = 1;
-			_UserInput = 0;
+			_nodes[37] = 1;
+			_userInput = 0;
 			_currMap = 10;
-			if (_Nodes[43] == 0) {
+			if (_nodes[43] == 0) {
 				_statPlay = 420;
 				_oldNode = _nodeNum;
 				_nodeNum = 42;
@@ -576,8 +576,8 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(98);
 			InventoryDel(2);
 			PlaySound(5);
-			_Nodes[37] = 1;
-			_UserInput = 0;
+			_nodes[37] = 1;
+			_userInput = 0;
 			_currMap = 10;
 			_tsIconOnly = true;
 			break;
@@ -587,8 +587,8 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(100);
 			InventoryDel(6);
 			PlaySound(5);
-			_Nodes[37] = 1;
-			_UserInput = 0;
+			_nodes[37] = 1;
+			_userInput = 0;
 			_currMap = 10;
 			_tsIconOnly = true;
 			break;
@@ -597,8 +597,8 @@ void KingdomGame::GPLogic2() {
 			EnAll();
 			PlayMovie(96);
 			PlaySound(5);
-			_Nodes[37] = 9;
-			_UserInput = 0;
+			_nodes[37] = 9;
+			_userInput = 0;
 			_currMap = 10;
 			_statPlay = 420;
 			_oldNode = _nodeNum;
@@ -616,7 +616,7 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 362;
 			_zoom = 2;
 			ProcessMap(36, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -630,15 +630,15 @@ void KingdomGame::GPLogic2() {
 	case 370:
 		_nodeNum = 37;
 		DrawLocation();
-		_UserInput = 0;
-		_Nodes[38] = 0;
+		_userInput = 0;
+		_nodes[38] = 0;
 		PlayMovie(102);
 		PlaySound(20);
 		_currMap = 109;
 		_statPlay = 371;
 		break;
 	case 371:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x413:
 			_statPlay = 440;
 			_currMap = 10;
@@ -648,7 +648,7 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 372;
 			_zoom = 2;
 			ProcessMap(37, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -664,29 +664,29 @@ void KingdomGame::GPLogic2() {
 		_nodeNum =38;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
-			_UserInput = 0;
+			_userInput = 0;
 			PlayMovie(159);
 			_currMap = 10;
 			PlaySound(7);
-			_Nodes[39] = 1;
+			_nodes[39] = 1;
 			_statPlay = 381;
 		}
 		break;
 	case 381:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (_wizard && _Nodes[39] != 9) {
-				InventoryDel(_UserInput - 0x428);
+			if (_wizard && _nodes[39] != 9) {
+				InventoryDel(_userInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
 				RestoreAS();
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x430:
-			if (_wizard && _Nodes[39] != 9) {
+			if (_wizard && _nodes[39] != 9) {
 				DsAll();
 				PlayMovie(162);
 				_statPlay = 992;
@@ -694,38 +694,38 @@ void KingdomGame::GPLogic2() {
 			}
 			break;
 		case 0x433:
-			if (_wizard && _Nodes[39] != 9) {
+			if (_wizard && _nodes[39] != 9) {
 				PlayMovie(161);
 				InventoryDel(11);
-				_Nodes[51] = 0;
-				_UserInput = 0;
+				_nodes[51] = 0;
+				_userInput = 0;
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x435:
-			if (_wizard && _Nodes[39] != 9) {
+			if (_wizard && _nodes[39] != 9) {
 				PlayMovie(160);
 				InventoryDel(13);
-				_Nodes[39] = 9;
-				_Nodes[59] = 0;
-				_UserInput = 0;
+				_nodes[39] = 9;
+				_nodes[59] = 0;
+				_userInput = 0;
 				_tsIconOnly = true;
 				_currMap = 108;
 			}
 			break;
 		case 0x437:
-			if (_wizard && _Nodes[39] != 9) {
+			if (_wizard && _nodes[39] != 9) {
 				PlayMovie(163);
 				InventoryDel(15);
-				_Nodes[12] = 0;
+				_nodes[12] = 0;
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 382;
 			_zoom = 2;
 			ProcessMap(38, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 		break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -739,8 +739,8 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 382:
-		if (_wizard && (_Nodes[39] != 9) && (_UserInput == 0x413))
-			_UserInput = 0;
+		if (_wizard && (_nodes[39] != 9) && (_userInput == 0x413))
+			_userInput = 0;
 
 		ProcessMapInput(38);
 		break;
@@ -757,12 +757,12 @@ void KingdomGame::GPLogic2() {
 	case 400:
 		_nodeNum = 40;
 		if (!_wizard)
-			_Nodes[41] = 2;
-		if (_Nodes[41]) {
-			if (_Nodes[41] == 1)
-				_Nodes[41] = 2;
+			_nodes[41] = 2;
+		if (_nodes[41]) {
+			if (_nodes[41] == 1)
+				_nodes[41] = 2;
 			else {
-				_Nodes[41] = 1;
+				_nodes[41] = 1;
 				_sound = true;
 			}
 		} else {
@@ -772,11 +772,11 @@ void KingdomGame::GPLogic2() {
 			SetATimer();
 		}
 		
-		_UserInput = 0;
+		_userInput = 0;
 		_statPlay = 401;
 		break;
 	case 401:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			DsAll();
@@ -787,37 +787,37 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (!_Nodes[41]) {
-				InventoryDel(_UserInput - 0x428);
+			if (!_nodes[41]) {
+				InventoryDel(_userInput - 0x428);
 				_aTimer = 0;
 				PlayMovie(178);
-				_UserInput = 753;
+				_userInput = 753;
 				_loopFlag = true;
 				_currMap = 10;
 			}
 			break;
 		case 0x42C:
-			if (!_Nodes[41]) {
+			if (!_nodes[41]) {
 				_aTimer = 0;
 				DsAll();
 				PlayMovie(108);
-				_UserInput = 0;
+				_userInput = 0;
 				_statPlay = 992;
 				_loopFlag = true;
 			}
 			break;
 		case 0x42E:
-			if (!_Nodes[41]) {
+			if (!_nodes[41]) {
 				_aTimer = 0;
 				PlayMovie(109);
 				InventoryDel(6);
-				_Nodes[43] = 0;
-				_UserInput = 0;
+				_nodes[43] = 0;
+				_userInput = 0;
 				_aTimer = 136;
 			}
 			break;
 		case 0x437:
-			if (!_Nodes[41]) {
+			if (!_nodes[41]) {
 				_aTimer = 0;
 				_help = true;
 				_replay = true;
@@ -825,8 +825,8 @@ void KingdomGame::GPLogic2() {
 				_fstFwd = true;
 				PlayMovie(107);
 				PlaySound(26);
-				_Nodes[41] = 1;
-				_UserInput = 0;
+				_nodes[41] = 1;
+				_userInput = 0;
 				_currMap = 96;
 				_tsIconOnly = true;
 				_loopFlag = true;
@@ -840,7 +840,7 @@ void KingdomGame::GPLogic2() {
 		case 0x441:
 			_statPlay = 460;
 			_currMap = 10;
-			_UserInput = 0;
+			_userInput = 0;
 			_loopFlag = true;
 			break;
 		}
@@ -852,8 +852,8 @@ void KingdomGame::GPLogic2() {
 	case 410:
 		_nodeNum = 41;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[41])
+		_userInput = 0;
+		if (_nodes[41])
 			_sound = true;
 
 		_eye = false;
@@ -863,7 +863,7 @@ void KingdomGame::GPLogic2() {
 		_statPlay = 411;
 		break;
 	case 411:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			if (_pMovie == 120) {
@@ -881,13 +881,13 @@ void KingdomGame::GPLogic2() {
 			PlayMovie(_pMovie);
 			break;
 		case 0x445:
-			_UserInput = 0;
+			_userInput = 0;
 			_loopFlag = true;
 			_currMap = 10;
 			_statPlay = 450;
 			break;
 		case 0x446:
-			_UserInput = 0;
+			_userInput = 0;
 			_loopFlag = true;
 			_currMap = 10;
 			_statPlay = 460;
@@ -895,7 +895,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 420:
-		if (_Nodes[37] == 9 || _Nodes[29] == 1 || !_wizard) {
+		if (_nodes[37] == 9 || _nodes[29] == 1 || !_wizard) {
 			_oldNode = _nodeNum;
 			_nodeNum = 42;
 			if (!ChkDesertObstacles()) {
@@ -908,28 +908,28 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 421:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x42E:
-			if (_Nodes[43])
+			if (_nodes[43])
 				DisplayIcon(136);
 			else {
-				if (_Nodes[35] == 9) {
+				if (_nodes[35] == 9) {
 					_sound = false;
 				} else {
 					_sound = true;
 				}
 				PlayMovie(113);
 				InventoryAdd(6);
-				_Nodes[43] = 9;
+				_nodes[43] = 9;
 				_currMap = 10;
 			}
 			_tsIconOnly = true;
@@ -938,7 +938,7 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 422;
 			_zoom = 2;
 			ProcessMap(42, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -954,12 +954,12 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 43;
 		DrawLocation();
 		_eye = false;
-		_UserInput = 0;
-		if (_Nodes[44] == 9) {
+		_userInput = 0;
+		if (_nodes[44] == 9) {
 			_tsIconOnly = true;
 			PlayMovie(118);
 			_currMap = 80;
-		} else if (_Inventory[12] <= 0) {
+		} else if (_inventory[12] <= 0) {
 			PlayMovie(115);
 			ShowPic(415);
 			_currMap = 78;
@@ -971,7 +971,7 @@ void KingdomGame::GPLogic2() {
 			PlaySound(25);
 			InventoryDel(12);
 			InventoryAdd(16);
-			_Nodes[44] = 9;
+			_nodes[44] = 9;
 			_currMap = 79;
 			_tsIconOnly = true;
 		}
@@ -980,12 +980,12 @@ void KingdomGame::GPLogic2() {
 		_eye = false;
 		break;
 	case 431:
-		switch(_UserInput) {
+		switch(_userInput) {
 			case 0x40A:
 				PlayMovie(10);
 				_statPlay = 200;
-				if (_Nodes[44] != 9)
-					_Nodes[20] = 1;
+				if (_nodes[44] != 9)
+					_nodes[20] = 1;
 				_currMap = 10;
 				_loopFlag = true;
 				break;
@@ -1010,15 +1010,15 @@ void KingdomGame::GPLogic2() {
 			case 0x428:
 			case 0x429:
 			case 0x42A:
-				if (_Nodes[44] != 9) {
-					InventoryDel(_UserInput - 0x428);
+				if (_nodes[44] != 9) {
+					InventoryDel(_userInput - 0x428);
 					SaveAS();
 					PlayMovie(178);
 					RestoreAS();
 				}
 				break;
 			case 0x438:
-				if (_Nodes[44] == 9) {
+				if (_nodes[44] == 9) {
 					DisplayIcon(146);
 				} else {
 					DsAll();
@@ -1034,8 +1034,8 @@ void KingdomGame::GPLogic2() {
 	case 440:
 		_nodeNum = 44;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Inventory[12] > 0 || _Nodes[44] == 9)
+		_userInput = 0;
+		if (_inventory[12] > 0 || _nodes[44] == 9)
 			_sound = true;
 
 		PlayMovie(119);
@@ -1044,12 +1044,12 @@ void KingdomGame::GPLogic2() {
 		_statPlay = 441;
 		break;
 	case 441:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 442;
 			_zoom = 2;
 			ProcessMap(44, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -1067,8 +1067,8 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 450:
 		_nodeNum = 45;
-		_UserInput = 0;
-		if (!_Nodes[41]) {
+		_userInput = 0;
+		if (!_nodes[41]) {
 			DsAll();
 			PlayMovie(120);
 			_statPlay = 992;
@@ -1083,7 +1083,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 451:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			_fstFwd = false;
@@ -1103,11 +1103,11 @@ void KingdomGame::GPLogic2() {
 		_eye = false;
 		_nodeNum = 46;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[47] && _wizard)
-			_Nodes[47] = 1;
+		_userInput = 0;
+		if (_nodes[47] && _wizard)
+			_nodes[47] = 1;
 		else {
-			_Nodes[47] = 0;
+			_nodes[47] = 0;
 			_sound = true;
 		}
 		PlayMovie(121);
@@ -1116,21 +1116,21 @@ void KingdomGame::GPLogic2() {
 		_statPlay = 461;
 		break;
 	case 461:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 340;
-			_UserInput = 0;
+			_userInput = 0;
 			_loopFlag = true;
 			_currMap = 10;
 			_lastObs = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
-			_UserInput = 0;
+			_userInput = 0;
 			_loopFlag = true;
 			_currMap = 10;
 			break;
@@ -1141,19 +1141,19 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 480:
 		_nodeNum = 48;
-		_UserInput = 0;
+		_userInput = 0;
 		PlayMovie(114);
 		_currMap = 10;
 		_statPlay = 481;
-		_Nodes[49] = 1;
+		_nodes[49] = 1;
 		break;
 	case 481:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 482;
 			_zoom = 2;
 			ProcessMap(48, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -1173,17 +1173,17 @@ void KingdomGame::GPLogic2() {
 		_currMap = 101;
 		_statPlay = 491;
 		_aTimer = 0;
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 491:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x42A:
 		case 0x42B:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			PlayMovie(178);
-			_UserInput = 753;
+			_userInput = 753;
 			_loopFlag = true;
 			_currMap = 10;
 			break;
@@ -1194,12 +1194,12 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x44A:
 			_currMap = 10;
-			_UserInput = 0;
+			_userInput = 0;
 			_aTimer = 0;
 			EnAll();
 			PlayMovie(181);
-			_Nodes[29] = 9;
-			_Nodes[49] = 0;
+			_nodes[29] = 9;
+			_nodes[49] = 0;
 			_statPlay = _nextNode * 10;
 			_loopFlag = true;
 			break;
@@ -1210,19 +1210,19 @@ void KingdomGame::GPLogic2() {
 
 void KingdomGame::GPLogic2_SubSP361() {
 	EnAll();
-	_UserInput = 0;
+	_userInput = 0;
 	PlaySound(19);
-	if (_Nodes[29] == 1) {
+	if (_nodes[29] == 1) {
 		_statPlay = 480;
 		_loopFlag = true;
 		_currMap = 10;
 	} else {
-		if (_Inventory[6] == 1 || !_wizard) {
-			if (_Nodes[43] != 1 || _wizard)
-				_Nodes[43] = 1;
+		if (_inventory[6] == 1 || !_wizard) {
+			if (_nodes[43] != 1 || _wizard)
+				_nodes[43] = 1;
 			else {
 				_sound = true;
-				_Nodes[43] = 2;
+				_nodes[43] = 2;
 			}
 			PlayMovie(122);
 			_currMap = 10;
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 69d1c7d19a..b2ed5bc66d 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -29,23 +29,23 @@ void KingdomGame::GPLogic3() {
 	case 500:
 		_nodeNum = 50;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		_resurrect = false;
 		if (!_wizard)
-			_Nodes[51] = 1;
-		switch(_Nodes[51]) {
+			_nodes[51] = 1;
+		switch(_nodes[51]) {
 		case 0:
 			PlayMovie(123);
 			_currMap = 102;
 			break;
 		case 1:
-			_Nodes[51] = 2;
+			_nodes[51] = 2;
 			PlayMovie(126);
 			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		default:
-			_Nodes[51] = 1;
+			_nodes[51] = 1;
 			_sound = true;
 			PlayMovie(126);
 			_currMap = 10;
@@ -56,20 +56,20 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 501;
 		break;
 	case 501:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (!_Nodes[51]) {
-				InventoryDel(_UserInput - 0x428);
+			if (!_nodes[51]) {
+				InventoryDel(_userInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
 				RestoreAS();
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		case 0x433:
-			if (!_Nodes[51]) {
+			if (!_nodes[51]) {
 				DsAll();
 				PlayMovie(125);
 				_statPlay = 993;
@@ -79,11 +79,11 @@ void KingdomGame::GPLogic3() {
 
 			break;
 		case 0x439:
-			if (!_Nodes[51]) {
+			if (!_nodes[51]) {
 				PlayMovie(124);
-				_Nodes[51] = 1;
+				_nodes[51] = 1;
 				InventoryAdd(11);
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 10;
 			}
 			break;
@@ -91,15 +91,15 @@ void KingdomGame::GPLogic3() {
 			_statPlay = 502;
 			_zoom = 2;
 			ProcessMap(50, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -109,22 +109,22 @@ void KingdomGame::GPLogic3() {
 	case 510:
 		_nodeNum = 51;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		PlayMovie(129);
 		_currMap = 10;
 		PlaySound(6);
 		_statPlay = 511;
 		break;
 	case 511:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x434:
-			if (_Inventory[6] >= 1)
+			if (_inventory[6] >= 1)
 				DisplayIcon(142);
 			else {
 				PlayMovie(128);
-				_Nodes[52] = 9;
+				_nodes[52] = 9;
 				InventoryAdd(12);
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 10;
 				PlaySound(30);
 			}
@@ -133,7 +133,7 @@ void KingdomGame::GPLogic3() {
 			_statPlay = 512;
 			_zoom = 2;
 			ProcessMap(51, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			PlayMovie(_pMovie);
@@ -143,13 +143,13 @@ void KingdomGame::GPLogic3() {
 			DrawPic(179);
 			PlayMovie(127);
 			_currMap = 103;
-			_UserInput = 0;
+			_userInput = 0;
 			PlaySound(0);
 			PlaySound(6);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -159,12 +159,12 @@ void KingdomGame::GPLogic3() {
 	case 520:
 		_nodeNum = 52;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[53] == 0)
-			_Nodes[53] = 1;
+		_userInput = 0;
+		if (_nodes[53] == 0)
+			_nodes[53] = 1;
 		else {
 			_sound = true;
-			_Nodes[53] = false;
+			_nodes[53] = false;
 		}
 		PlayMovie(130);
 		_currMap = 111;
@@ -172,7 +172,7 @@ void KingdomGame::GPLogic3() {
 		PlaySound(31);
 		break;
 	case 521:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x404:
 			_statPlay = 550;
 			_loopFlag = true;
@@ -181,15 +181,15 @@ void KingdomGame::GPLogic3() {
 			_statPlay = 522;
 			_zoom = 2;
 			ProcessMap(52, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -199,9 +199,9 @@ void KingdomGame::GPLogic3() {
 	case 530:
 		_nodeNum = 53;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		_fstFwd = false;
-		if (_Inventory[7] <= 0 && _wizard)
+		if (_inventory[7] <= 0 && _wizard)
 			_tsIconOnly = false;
 		else {
 			_frameStop = 24;
@@ -214,28 +214,28 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 531;
 		break;
 	case 531:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
-			if (_Nodes[54] == 0) {
+			if (_nodes[54] == 0) {
 				PlayMovie(71);
 				InventoryAdd(14);
 				InventoryDel(0);
 				_tsIconOnly = true;
 				PlaySound(25);
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_fstFwd = false;
-			if (_Inventory[7] > 0 && _pMovie == 70)
+			if (_inventory[7] > 0 && _pMovie == 70)
 				_frameStop = 24;
 			if (!_wizard && _pMovie == 70)
 				_frameStop = 24;
@@ -243,12 +243,12 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x445:
 			_nodeNum = 56;
-			_UserInput = 0;
+			_userInput = 0;
 			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
 			_currMap = 106;
-			_Nodes[57] = 1;
+			_nodes[57] = 1;
 			PlaySound(8);
 			_tsIconOnly = true;
 			_statPlay = 561;
@@ -256,27 +256,27 @@ void KingdomGame::GPLogic3() {
 		case 0x452:
 			_statPlay = 630;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 540:
 		_nodeNum = 54;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		if (!_wizard) {
 			_sound = true;
 			_currMap = 55;
 		} else {
-			if (!_Nodes[55])
-				_Nodes[55] = 1;
+			if (!_nodes[55])
+				_nodes[55] = 1;
 			else {
 				_sound = true;
-				_Nodes[55] = 0;
+				_nodes[55] = 0;
 			}
 			_currMap = 112;
 		}
@@ -287,17 +287,17 @@ void KingdomGame::GPLogic3() {
 		PlaySound(22);
 		break;
 	case 541:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x404:
 			_statPlay = 550;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 542;
 			_zoom = 2;
 			ProcessMap(54, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -314,8 +314,8 @@ void KingdomGame::GPLogic3() {
 			_currMap = 55;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -325,17 +325,17 @@ void KingdomGame::GPLogic3() {
 	case 550:
 		_nodeNum = 55;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		PlayMovie(133);
-		if (_Nodes[56] != 9)
-			_Nodes[56] = 0;
+		if (_nodes[56] != 9)
+			_nodes[56] = 0;
 		_tsIconOnly = true;
 		_currMap = 104;
 		_statPlay = 551;
 		PlaySound(8);
 		break;
 	case 551:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			DsAll();
@@ -345,17 +345,17 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x42C:
 			_aTimer = 0;
-			if (_Nodes[56] == 1) {
+			if (_nodes[56] == 1) {
 				EnAll();
 				PlayMovie(183);
 				FShowPic(433);
 				PlaySound(8);
-				_Nodes[56] = 9;
+				_nodes[56] = 9;
 				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
-			if (_Nodes[56] == 1) {
+			if (_nodes[56] == 1) {
 				DsAll();
 				PlayMovie(134);
 				_statPlay = 993;
@@ -364,7 +364,7 @@ void KingdomGame::GPLogic3() {
 				_statPlay = 552;
 				_zoom = 2;
 				ProcessMap(55, _zoom);
-				_UserInput = 0;
+				_userInput = 0;
 			}
 			break;
 		case 0x43E:
@@ -375,12 +375,12 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x452:
 			_aTimer = 0;
-			switch(_Nodes[56]) {
+			switch(_nodes[56]) {
 			case 0:
 				DsAll();
 				PlayMovie(69);
 				_tsIconOnly = false;
-				_Nodes[56] = 1;
+				_nodes[56] = 1;
 				SetATimer();
 				break;
 			case 1:
@@ -396,29 +396,29 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 552:
 		ProcessMapInput(55);
-		if (!_Nodes[56] && _statPlay == 560) {
+		if (!_nodes[56] && _statPlay == 560) {
 			_statPlay = 551;
-			_UserInput = 0x190;
+			_userInput = 0x190;
 			_loopFlag = true;
 		}
 		break;
 	case 560:
 		_nodeNum = 56;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		if (_wizard) {
 			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
 			ShowPic(435);
-			_Nodes[57] = 1;
+			_nodes[57] = 1;
 			PlaySound(8);
 			_statPlay = 561;
 			_currMap = 106;
@@ -428,12 +428,12 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(135);
 			_currMap = 10;
 			SetATimer();
-			_Nodes[57] = 0;
+			_nodes[57] = 0;
 			_statPlay = 561;
 		}
 		break;
 	case 561:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
 			DsAll();
@@ -445,40 +445,40 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			_aTimer = 0;
-			if (!_Nodes[57]) {
-				InventoryDel(_UserInput - 0x428);
+			if (!_nodes[57]) {
+				InventoryDel(_userInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
 				RestoreAS();
-				_UserInput = 753;
+				_userInput = 753;
 				_loopFlag = true;
 			}
 			break;
 		case 0x42C:
 			_aTimer = 0;
-			if (!_Nodes[57]) {
+			if (!_nodes[57]) {
 				_fstFwd = false;
 				_replay = true;
 				PlayMovie(138);
 				EnAll();
 				PlaySound(8);
-				_Nodes[57] = 1;
+				_nodes[57] = 1;
 				InventoryDel(4);
-				_Nodes[22] = 0;
+				_nodes[22] = 0;
 				_currMap = 88;
 				_tsIconOnly = true;
 			}
 			break;
 		case 0x438:
 			_aTimer = 0;
-			if (!_Nodes[57]) {
+			if (!_nodes[57]) {
 				EnAll();
 				_fstFwd = false;
 				_replay = true;
 				PlayMovie(137);
 				EnAll();
 				PlaySound(8);
-				_Nodes[57] = 1;
+				_nodes[57] = 1;
 				_currMap = 106;
 				_tsIconOnly = true;
 			}
@@ -487,17 +487,17 @@ void KingdomGame::GPLogic3() {
 			_statPlay = 562;
 			_zoom = 2;
 			ProcessMap(56, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_fstFwd = false;
-			if (_pMovie == 135 && _Nodes[57]) {
+			if (_pMovie == 135 && _nodes[57]) {
 				_frameStop = 50;
 				PlayMovie(135);
-			} else if (_Nodes[57])
+			} else if (_nodes[57])
 				PlayMovie(_pMovie);
 			else {
-				_UserInput = 753;
+				_userInput = 753;
 				_aTimer = 0;
 				_loopFlag = true;
 			}
@@ -505,21 +505,21 @@ void KingdomGame::GPLogic3() {
 		case 0x445:
 			_statPlay = 530;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x446:
 			_statPlay = 620;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x452:
 			_statPlay = 550;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -527,13 +527,13 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(56);
 		break;
 	case 570:
-		if (_Nodes[58]) {
-			if (_RtnNode != 34)
+		if (_nodes[58]) {
+			if (_rtnNode != 34)
 				_sound = true;
 			_nodeNum = 57;
 			DrawLocation();
-			_Nodes[58] = 0;
-			_UserInput = 0;
+			_nodes[58] = 0;
+			_userInput = 0;
 			PlayMovie(139);
 			PlaySound(27);
 			_currMap = 10;
@@ -544,20 +544,20 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 571:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 572;
 			_zoom = 2;
 			ProcessMap(57, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -568,24 +568,24 @@ void KingdomGame::GPLogic3() {
 		_nodeNum = 58;
 		DrawLocation();
 		_iconsClosed = true;
-		_UserInput = 0;
-		switch(_Nodes[59]) {
+		_userInput = 0;
+		switch(_nodes[59]) {
 		case 0:
 			_sound = true;
 			PlayMovie(140);
 			_currMap = 113;
-			_Nodes[59] = 1;
+			_nodes[59] = 1;
 			break;
 		case 1:
 			PlayMovie(140);
 			_currMap = 113;
-			_Nodes[59] = 0;
+			_nodes[59] = 0;
 			break;
 		case 8:
 			_tsIconOnly = true;
 			PlayMovie(143);
 			_currMap = 10;
-			_Nodes[59] = 9;
+			_nodes[59] = 9;
 			break;
 		case 9:
 			_tsIconOnly = true;
@@ -598,10 +598,10 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 581;
 		break;
 	case 581:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x430:
 			PlayMovie(141);
-			_Nodes[59] = 8;
+			_nodes[59] = 8;
 			InventoryAdd(13);
 			_tsIconOnly = true;
 			_currMap = 10;
@@ -610,16 +610,16 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (_Nodes[59] < 8) {
-				InventoryDel(_UserInput - 0x428);
+			if (_nodes[59] < 8) {
+				InventoryDel(_userInput - 0x428);
 				SaveAS();
 				PlayMovie(178);
 				RestoreAS();
 			}
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x435:
-			if (_Nodes[59] >= 8)
+			if (_nodes[59] >= 8)
 				DisplayIcon(143);
 			else {
 				DsAll();
@@ -631,15 +631,15 @@ void KingdomGame::GPLogic3() {
 			_statPlay = 582;
 			_zoom = 2;
 			ProcessMap(58, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -649,12 +649,12 @@ void KingdomGame::GPLogic3() {
 	case 590:
 		_nodeNum = 59;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[60] == 0)
-			_Nodes[60] = 1;
+		_userInput = 0;
+		if (_nodes[60] == 0)
+			_nodes[60] = 1;
 		else {
 			_sound = true;
-			_Nodes[60] = 0;
+			_nodes[60] = 0;
 		}
 		PlayMovie(144);
 		ShowPic(144);
@@ -663,12 +663,12 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 591;
 		break;
 	case 591:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 592;
 			_zoom = 2;
 			ProcessMap(59, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
@@ -680,8 +680,8 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -697,7 +697,7 @@ void KingdomGame::GPLogic3() {
 		_asMode = false;
 		_nodeNum = 60;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		PlayMovie(145);
 		_statPlay = 992;
@@ -706,16 +706,16 @@ void KingdomGame::GPLogic3() {
 	case 610:
 		_nodeNum = 61;
 		DrawLocation();
-		_UserInput = 0;
-		_Nodes[73] = 0;
-		_Nodes[74] = 0;
-		if (_Nodes[62] == 0)
-			_Nodes[62] = 1;
+		_userInput = 0;
+		_nodes[73] = 0;
+		_nodes[74] = 0;
+		if (_nodes[62] == 0)
+			_nodes[62] = 1;
 		else
 			_sound = true;
 
 		PlayMovie(146);
-		if (_Nodes[70] == 9) {
+		if (_nodes[70] == 9) {
 			_itemInhibit = true;
 			_tsIconOnly = true;
 		}
@@ -726,11 +726,11 @@ void KingdomGame::GPLogic3() {
 		_eye = false;
 		break;
 	case 611:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			DsAll();
 			PlayMovie(148);
 			_statPlay = 993;
@@ -738,8 +738,8 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x432:
 			PlayMovie(147);
-			_Inventory[5] = -1;
-			_Nodes[30] = 0;
+			_inventory[5] = -1;
+			_nodes[30] = 0;
 			_currMap = 116;
 			break;
 		case 0x43E:
@@ -765,50 +765,50 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 620:
 		_nodeNum = 62;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		if (_Nodes[63] == 0) {
+		if (_nodes[63] == 0) {
 			PlayMovie(149);
 			_currMap = 122;
 		} else {
 			_frameStop = 24;
 			PlayMovie(202);
 			_currMap = 121;
-			_Nodes[63] = 9;
+			_nodes[63] = 9;
 		}
 		_tsIconOnly = true;
 		PlaySound(8);
 		_statPlay = 621;
 		break;
 	case 621:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x430:
 			PlayMovie(150);
 			InventoryAdd(8);
-			_Nodes[63] = 1;
+			_nodes[63] = 1;
 			PlaySound(25);
 			_currMap = 121;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
-			switch (_Nodes[63]) {
+			switch (_nodes[63]) {
 			case 0:
 				PlayMovie(149);
 				break;
@@ -824,38 +824,38 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x445:
 			_nodeNum = 56;
-			_UserInput = 0;
+			_userInput = 0;
 			_frameStop = 50;
 			EnAll();
 			PlayMovie(135);
-			_Nodes[57] = 1;
+			_nodes[57] = 1;
 			PlaySound(8);
 			_statPlay = 561;
 			_currMap = 106;
-			if (_Inventory[16] < 1 && _wizard)
+			if (_inventory[16] < 1 && _wizard)
 				_currMap = 88;
 			break;
 		case 0x452:
 			_statPlay = 630;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 630:
 		_nodeNum = 63;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		if (_Nodes[64] == 1 || !_wizard) {
-			_Nodes[64] = 0;
+		if (_nodes[64] == 1 || !_wizard) {
+			_nodes[64] = 0;
 			_sound = true;
 		} else
-			_Nodes[64] = true;
+			_nodes[64] = true;
 
 		PlayMovie(151);
 		_currMap = 72;
@@ -863,7 +863,7 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 631;
 		break;
 	case 631:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -874,20 +874,20 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 640:
 		_nodeNum = 64;
 		DrawLocation();
-		_UserInput = 0;
-		if (_Nodes[65] || _wizard) {
+		_userInput = 0;
+		if (_nodes[65] || _wizard) {
 			_sound = true;
-			_Nodes[65] = 0;
+			_nodes[65] = 0;
 		} else
-			_Nodes[65] = 1;
+			_nodes[65] = 1;
 
 		PlayMovie(152);
 		_currMap = 10;
@@ -895,20 +895,20 @@ void KingdomGame::GPLogic3() {
 		PlaySound(28);
 		break;
 	case 641:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43A:
 			_statPlay = 642;
 			_zoom = 2;
 			ProcessMap(64, _zoom);
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x43E:
 			_sound= _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -918,12 +918,12 @@ void KingdomGame::GPLogic3() {
 	case 650:
 		_nodeNum = 65;
 		_eye = false;
-		_UserInput = 0;
-		if (_Nodes[66] == 0)
-			_Nodes[66] = 1;
+		_userInput = 0;
+		if (_nodes[66] == 0)
+			_nodes[66] = 1;
 		else {
 			_sound = true;
-			_Nodes[66] = 0;
+			_nodes[66] = 0;
 		}
 		PlayMovie(153);
 		ShowPic(453);
@@ -932,7 +932,7 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 651;
 		break;
 	case 651:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -943,7 +943,7 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x446:
-			if (_Nodes[68] == 1) {
+			if (_nodes[68] == 1) {
 				_statPlay = 660;
 				_loopFlag = true;
 			} else {
@@ -956,20 +956,20 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 660:
 		_nodeNum = 66;
 		_eye = false;
-		_UserInput = 0;
-		if (_Nodes[67] == 0)
-			_Nodes[67] = 1;
+		_userInput = 0;
+		if (_nodes[67] == 0)
+			_nodes[67] = 1;
 		else {
 			_sound = true;
-			_Nodes[67] = 0;
+			_nodes[67] = 0;
 		}
 		PlayMovie(154);
 		_currMap = 70;
@@ -977,7 +977,7 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 661;
 		break;
 	case 661:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -988,10 +988,10 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x446:
 			_loopFlag = true;
-			_statPlay = (_Nodes[68] == 1) ? 650 : 790;
+			_statPlay = (_nodes[68] == 1) ? 650 : 790;
 			break;
 		case 0x447:
-			if (!_wizard || _Nodes[68])
+			if (!_wizard || _nodes[68])
 				_statPlay = 650;
 			else
 				_statPlay = 670;
@@ -999,23 +999,23 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 670:
 		_nodeNum = 67;
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		_Nodes[68] = 1;
+		_nodes[68] = 1;
 		_fstFwd = false;
 		PlayMovie(155);
 		_currMap = 127;
 		_statPlay = 671;
 		break;
 	case 671:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			_fstFwd = false;
@@ -1030,14 +1030,14 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 680:
 		_nodeNum = 68;
-		_UserInput = 0;
+		_userInput = 0;
 		DsAll();
 		PlayMovie(156);
 		_statPlay = 993;
@@ -1046,15 +1046,15 @@ void KingdomGame::GPLogic3() {
 	case 690:
 		_itemInhibit = false;
 		EnAll();
-		if (_Nodes[70] == 9) {
+		if (_nodes[70] == 9) {
 			_statPlay = 640;
-			_Nodes[73] = 0;
+			_nodes[73] = 0;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 		} else {
 			_nodeNum = 69;
 			DrawLocation();
-			_UserInput = 0;
+			_userInput = 0;
 			_currMap = 119;
 			_frameStop = 40;
 			PlayMovie(157);
@@ -1063,27 +1063,27 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 691:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			SaveAS();
 			PlayMovie(178);
 			RestoreAS();
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		case 0x439:
-			if (_Nodes[70] == 9)
+			if (_nodes[70] == 9)
 				DisplayIcon(147);
 			else {
 				_frameStop = 108;
 				PlayMovie(158);
 				_itemInhibit = false;
 				InventoryAdd(17);
-				_Nodes[70] = 9;
+				_nodes[70] = 9;
 				PlaySound(23);
-				_UserInput = 0;
+				_userInput = 0;
 				_currMap = 120;
 			}
 			break;
@@ -1104,13 +1104,13 @@ void KingdomGame::GPLogic3() {
 		case 0x441:
 			_itemInhibit = false;
 			_statPlay = 640;
-			_Nodes[73] = 0;
+			_nodes[73] = 0;
 			_loopFlag = true;
-			_UserInput = 0;
+			_userInput = 0;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -1119,13 +1119,13 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 700:
 		_nodeNum = 70;
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		if (_Nodes[71] && _wizard) {
-			_Nodes[71] = 0;
+		if (_nodes[71] && _wizard) {
+			_nodes[71] = 0;
 			_sound = false;
 		} else
-			_Nodes[71] = 1;
+			_nodes[71] = 1;
 
 		PlayMovie(164);
 		_currMap = 74;
@@ -1133,7 +1133,7 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 701;
 		break;
 	case 701:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -1151,16 +1151,16 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 710:
 		_nodeNum = 71;
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		if (_Inventory[8] && _Inventory[14])
+		if (_inventory[8] && _inventory[14])
 			_sound = true;
 		DsAll();
 		PlayMovie(165);
@@ -1169,7 +1169,7 @@ void KingdomGame::GPLogic3() {
 		_statPlay = _wizard ? 712 : 711;
 		break;
 	case 711:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_replay = false;
 			PlayMovie(166);
@@ -1179,7 +1179,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
 			PlayMovie(178);
@@ -1200,13 +1200,13 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 712:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			_replay = false;
 			PlayMovie(166);
@@ -1216,7 +1216,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
 			PlayMovie(178);
@@ -1226,7 +1226,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x430:
 			_aTimer = 0;
-			if (_Nodes[72] != 2) {
+			if (_nodes[72] != 2) {
 				PlayMovie(57);
 				_statPlay = 993;
 			} else {
@@ -1249,7 +1249,7 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x433:
-			if ((_Inventory[8] > 0 && _Inventory[14] > 0) || _Nodes[72] == 2) {
+			if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
 				_replay = false;
 				PlayMovie(166);
 				_statPlay = 993;
@@ -1259,7 +1259,7 @@ void KingdomGame::GPLogic3() {
 				PlayMovie(169);
 				_statPlay = 580;
 				InventoryDel(11);
-				_Nodes[51] = 0;
+				_nodes[51] = 0;
 			}
 			_loopFlag = true;
 			break;
@@ -1269,13 +1269,13 @@ void KingdomGame::GPLogic3() {
 			PlayMovie(193);
 			ShowPic(128);
 			InventoryDel(14);
-			_Nodes[72] = 2;
+			_nodes[72] = 2;
 			SetATimer();
 			break;
 
 		case 0x437:
 			_aTimer = 0;
-			if (_Nodes[72] == 2) {
+			if (_nodes[72] == 2) {
 				_nodeNum = 0;
 				_iconsClosed = true;
 				_fstFwd = false;
@@ -1293,26 +1293,26 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 720:
 		_nodeNum = 72;
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		switch (_Nodes[73]) {
+		switch (_nodes[73]) {
 		case 0:
-			_Nodes[73] = 1;
+			_nodes[73] = 1;
 			break;
 		case 1:
 			_frameStop = 24;
-			_Nodes[73] = 2;
+			_nodes[73] = 2;
 			break;
 		default:
 			_frameStop = 24;
-			_Nodes[73] = 3;
+			_nodes[73] = 3;
 			break;
 		}
 		PlayMovie(175);
@@ -1321,14 +1321,14 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 721;
 		break;
 	case 721:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
-			if (_Nodes[73] > 1)
+			if (_nodes[73] > 1)
 				_frameStop = 24;
 			PlayMovie(_pMovie);
 			break;
 		case 0x441:
-			if (_Nodes[73] == 1) {
+			if (_nodes[73] == 1) {
 				_itemInhibit = false;
 				_statPlay = 640;
 			} else
@@ -1338,19 +1338,19 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x448:
-			_statPlay = (_Nodes[73] == 2) ? 730 : 680;
+			_statPlay = (_nodes[73] == 2) ? 730 : 680;
 			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x44B:
-			_statPlay = (_Nodes[73] == 1) ? 730 : 680;
+			_statPlay = (_nodes[73] == 1) ? 730 : 680;
 			_currMap = 10;
 			_loopFlag = true;
 			break;
 		case 0x44C:
-			if (_Nodes[73] == 1) {
+			if (_nodes[73] == 1) {
 				_statPlay = 730;
-				_Nodes[74] = 3;
+				_nodes[74] = 3;
 			} else
 				_statPlay = 680;
 
@@ -1358,30 +1358,30 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 730:
 		_nodeNum = 73;
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
-		switch(_Nodes[74]) {
+		switch(_nodes[74]) {
 		case 0:
-			_Nodes[74] = 1;
+			_nodes[74] = 1;
 			break;
 		case 1:
 			_sound = true;
-			_Nodes[74] = 2;
+			_nodes[74] = 2;
 			break;
 		case 2:
 			_frameStop = 23;
-			_Nodes[74] = 3;
+			_nodes[74] = 3;
 			break;
 		default:
 			_frameStop = 23;
-			_Nodes[74] = 4;
+			_nodes[74] = 4;
 			break;
 		}
 		PlayMovie(176);
@@ -1390,22 +1390,22 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 731;
 		break;
 	case 731:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
-			if (_Nodes[74] > 2)
+			if (_nodes[74] > 2)
 				_frameStop = 23;
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
 			break;
 		case 0x441:
-			switch (_Nodes[74]) {
+			switch (_nodes[74]) {
 			case 1:
 			case 2:
 				_statPlay = 720;
 				break;
 			case 3:
 				_statPlay = 720;
-				_Nodes[73] = 1;
+				_nodes[73] = 1;
 				break;
 			default:
 				_statPlay = 680;
@@ -1415,13 +1415,13 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x448:
-			switch(_Nodes[74]) {
+			switch(_nodes[74]) {
 			case 3:
 				_statPlay = 690;
 				break;
 			case 4:
 				_statPlay = 720;
-				_Nodes[73] = 1;
+				_nodes[73] = 1;
 				break;
 			default:
 				_statPlay = 680;
@@ -1429,14 +1429,14 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		case 0x44B:
-			switch(_Nodes[74]) {
+			switch(_nodes[74]) {
 			case 1:
 				_statPlay = 720;
 				break;
 			case 3:
 			case 4:
 				_statPlay = 720;
-				_Nodes[73] = 1;
+				_nodes[73] = 1;
 				break;
 			default:
 				_statPlay= 680;
@@ -1447,14 +1447,14 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x44C:
-			switch(_Nodes[74]) {
+			switch(_nodes[74]) {
 			case 1:
 			case 2:
 				_statPlay = 720;
 				break;
 			case 4:
 				_statPlay = 720;
-				_Nodes[73] = 1;
+				_nodes[73] = 1;
 				break;
 			default:
 				_statPlay = 680;
@@ -1462,13 +1462,13 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 740:
-		_RtnNode = _nodeNum;
+		_rtnNode = _nodeNum;
 		_nodeNum = 74;
 		DrawLocation();
 		DsAll();
@@ -1476,10 +1476,10 @@ void KingdomGame::GPLogic3() {
 		_currMap = 10;
 		SetATimer();
 		_statPlay = 741;
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 741:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(188);
@@ -1489,18 +1489,18 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			PlayMovie(178);
 			_loopFlag = true;
-			_UserInput = 753;
+			_userInput = 753;
 			break;
 		case 0x432:
-			if (_Nodes[75]) {
+			if (_nodes[75]) {
 				_sound = false;
-				_Nodes[75] = false;
+				_nodes[75] = false;
 			} else
-				_Nodes[75] = true;
+				_nodes[75] = true;
 			break;
 		case 0x437:
 			_loopFlag = true;
@@ -1508,7 +1508,7 @@ void KingdomGame::GPLogic3() {
 				_frameStop = 88;
 				PlayMovie(187);
 				_statPlay = 570;
-				_Nodes[58] = 1;
+				_nodes[58] = 1;
 			} else {
 				_frameStop = 78;
 				PlayMovie(187);
@@ -1516,22 +1516,22 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 760:
 		_nodeNum = 76;
 		_eye = false;
-		_UserInput = 0;
+		_userInput = 0;
 		PlayMovie(189);
 		_currMap = 126;
 		PlaySound(21);
 		_statPlay = 761;
 		break;
 	case 761:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
 			PlayMovie(_pMovie);
@@ -1542,7 +1542,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x44D:
 			PlayMovie(191);
-			_Nodes[68] = 2;
+			_nodes[68] = 2;
 			_statPlay = 660;
 			_loopFlag = true;
 			break;
@@ -1557,15 +1557,15 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
 	case 780:
 		_nodeNum = 78;
 		DrawLocation();
-		_UserInput = 0;
+		_userInput = 0;
 		_eye = false;
 		PlayMovie(171);
 		_currMap = 124;
@@ -1573,10 +1573,10 @@ void KingdomGame::GPLogic3() {
 		_statPlay = 781;
 		break;
 	case 781:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x428:
 		case 0x42A:
-			InventoryDel(_UserInput - 0x428);
+			InventoryDel(_userInput - 0x428);
 			_frameStop = 64;
 			PlayMovie(173);
 			ShowPic(471);
@@ -1630,12 +1630,12 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		case 0x446:
-			_statPlay = (_Nodes[68] == 1) ? 760 : 660;
+			_statPlay = (_nodes[68] == 1) ? 760 : 660;
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -1647,10 +1647,10 @@ void KingdomGame::GPLogic3() {
 		_currMap = 8;
 		_statPlay = 791;
 		SetATimer();
-		_UserInput = 0;
+		_userInput = 0;
 		break;
 	case 791:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x2F1:
 			DsAll();
 			PlayMovie(204);
@@ -1670,8 +1670,8 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			break;
 		default:
-			if (_UserInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _UserInput, _UserInput, _statPlay);
+			if (_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
 			break;
 		}
 		break;
@@ -1683,7 +1683,7 @@ void KingdomGame::EndCredits() {
 	_bTimer = 190;
 	ReadMouse();
 
-	while(_bTimer != 0 && _MouseButton == 0) {
+	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
@@ -1706,7 +1706,7 @@ void KingdomGame::EndCredits() {
 	_currMap = 3;
 	DsAll();
 	_Pouch = false;
-	memset(_Inventory, 0xFF, 19);
+	memset(_inventory, 0xFF, 19);
 	_statPlay = 994;
 	_loopFlag = true;
 }
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index db2e6738d8..f58b191fb7 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -44,7 +44,7 @@ void KingdomGame::GPLogic4() {
 			ShowPic(121);
 			_bTimer = 38;
 			ReadMouse();
-			while (_bTimer && !_MouseButton) {
+			while (_bTimer && !_mouseButton) {
 				checkTimers();
 				RefreshSound();
 				ReadMouse();
@@ -53,7 +53,7 @@ void KingdomGame::GPLogic4() {
 			if (_aTimer > 0)
 				SetATimer();
 			
-			_UserInput = 0;
+			_userInput = 0;
 			GPLogic4_SP901();
 		} else {
 			if (_aTimer > 0) {
@@ -69,7 +69,7 @@ void KingdomGame::GPLogic4() {
 		break;
 	case 991:
 		_currMap = 10;
-		_UserInput = 0;
+		_userInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
@@ -84,7 +84,7 @@ void KingdomGame::GPLogic4() {
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
-			memset(_Inventory, -1, 19);
+			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
 			_bTimer = 36;
@@ -94,9 +94,9 @@ void KingdomGame::GPLogic4() {
 			}
 			
 			_loopFlag = true;
-			if (_Nodes[29] == 1) {
-				_Nodes[29] = 0;
-				_Nodes[49] = 0;
+			if (_nodes[29] == 1) {
+				_nodes[29] = 0;
+				_nodes[49] = 0;
 			}
 
 			_itemInhibit = false;
@@ -109,7 +109,7 @@ void KingdomGame::GPLogic4() {
 			_nodeNum = 5;
 			DrawLocation();
 			PlaySound(0);
-			if (_Nodes[5] > 0) {
+			if (_nodes[5] > 0) {
 				PlayMovie(197);
 				_resurrect = true;
 			}
@@ -119,7 +119,7 @@ void KingdomGame::GPLogic4() {
 		break;
 	case 992:
 		_currMap = 10;
-		_UserInput = 0;
+		_userInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
@@ -134,7 +134,7 @@ void KingdomGame::GPLogic4() {
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
-			memset(_Inventory, -1, 19);
+			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
 			_bTimer = 36;
@@ -144,9 +144,9 @@ void KingdomGame::GPLogic4() {
 			}
 
 			_loopFlag = true;
-			if (_Nodes[29] == 1) {
-				_Nodes[29] = 0;
-				_Nodes[49] = 0;
+			if (_nodes[29] == 1) {
+				_nodes[29] = 0;
+				_nodes[49] = 0;
 			}
 
 			_itemInhibit = false;
@@ -167,7 +167,7 @@ void KingdomGame::GPLogic4() {
 		break;
 	case 993:
 		_currMap = 10;
-		_UserInput = 0;
+		_userInput = 0;
 		PlaySound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
@@ -182,7 +182,7 @@ void KingdomGame::GPLogic4() {
 			DsAll();
 			_Pouch = 0;
 			PlaySound(1);
-			memset(_Inventory, -1, 19);
+			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
 			_bTimer = 36;
@@ -192,12 +192,12 @@ void KingdomGame::GPLogic4() {
 			}
 			
 			_loopFlag = true;
-			if (_Nodes[29] == 1) {
-				_Nodes[29] = 0;
-				_Nodes[49] = 0;
+			if (_nodes[29] == 1) {
+				_nodes[29] = 0;
+				_nodes[49] = 0;
 			}
-			if (_Nodes[68] == 1)
-				_Nodes[68] = 0;
+			if (_nodes[68] == 1)
+				_nodes[68] = 0;
 
 			_itemInhibit = false;
 			_tideCntl = false;
@@ -216,7 +216,7 @@ void KingdomGame::GPLogic4() {
 		}
 		break;
 	case 994:
-		switch(_UserInput) {
+		switch(_userInput) {
 		case 0x190:
 			InitPlay();
 			// TODO _QuitFlag = 1;
@@ -243,19 +243,19 @@ void KingdomGame::GPLogic4_SP901() {
 		DrawPic(179);
 	
 	_iconRedraw = true;
-	if (_UserInput == 0x2F1) {
+	if (_userInput == 0x2F1) {
 		_asMode = false;
 		RestoreAS();
 		_statPlay = _oldStatPlay;
 		_loopFlag = true;
 	} else {
-		if (_health == 10 || _health == 6 || _health == 2 || _UserInput < 0x400 || _UserInput > 0x427) {
+		if (_health == 10 || _health == 6 || _health == 2 || _userInput < 0x400 || _userInput > 0x427) {
 			_asMode = false;
 			RestoreAS();
 			_statPlay = _oldStatPlay;
 		} else {
-			_statPlay = _mapExit[_UserInput - 0x400];
-			_UserInput = 0;
+			_statPlay = _mapExit[_userInput - 0x400];
+			_userInput = 0;
 			Wound();
 			PlayMovie(10);
 			InventoryDel(3);
@@ -264,7 +264,7 @@ void KingdomGame::GPLogic4_SP901() {
 			SwitchAS();
 			_mapStat = 0;
 		}
-		_UserInput = 0;
+		_userInput = 0;
 		_loopFlag = true;
 	}
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 8c0e6cc686..8235ea2332 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -53,19 +53,19 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
 	for (int i = 0; i < 510; i++) {
-		_RezPointers[i] = nullptr;
-		_RezSize[i] = 0;
+		_rezPointers[i] = nullptr;
+		_rezSize[i] = 0;
 	}
 
 	for (int i = 0; i < 99; i++)
-		_Nodes[i] = 0;
+		_nodes[i] = 0;
 
 	_asPtr = nullptr;
 	_quit = false;
-	_MouseValue = 0;
+	_mouseValue = 0;
 	_currMap = 0;
 	_statPlay = 0;
-	_SoundNumber = -1;
+	_soundNumber = -1;
 
 	_kingartEntries = nullptr;
 
@@ -166,7 +166,7 @@ void KingdomGame::checkTimers() {
 			_skylarTimerFlag = true;
 	}
 
-	_PalStepFlag = false;
+	_palStepFlag = false;
 }
 
 void KingdomGame::drawScreen() {
@@ -207,13 +207,13 @@ void KingdomGame::TitlePage() {
 }
 
 void KingdomGame::InitPlay() {
-	memset(_Inventory, 0xFF, 19);
+	memset(_inventory, 0xFF, 19);
 
 	for (int i = 0; i < 99; i++)
-		_Nodes[i] = 0;
+		_nodes[i] = 0;
 
 	for (int i = 0; i < 7; i++)
-		_IconPic[i] = 89 + i;
+		_iconPic[i] = 89 + i;
 
 	_frameStop = 0;
 	_gameMode = 0;
@@ -272,7 +272,7 @@ void KingdomGame::GameHelp_Sub43C() {
 	_currMap = _asMap;
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
-	_UserInput = 0;
+	_userInput = 0;
 	_gameMode = 0;
 	_iconsClosed = false;
 	_treeLeftSta = _oldTLS;
@@ -283,7 +283,7 @@ void KingdomGame::GameHelp_Sub43C() {
 
 void KingdomGame::GameHelp() {
 	if (!_gameMode) {
-		if (_UserInput == 0x43C) {
+		if (_userInput == 0x43C) {
 			SaveAS();
 			_asMap = _currMap;
 			_currMap = 0;
@@ -299,9 +299,9 @@ void KingdomGame::GameHelp() {
 			_oldHelp = _help;
 			_oldPouch = _Pouch;
 			_Pouch = false;
-			_UserInput = 0;
+			_userInput = 0;
 		}
-		if (_UserInput == 0x44F) {
+		if (_userInput == 0x44F) {
 			SaveAS();
 			_asMap = _currMap;
 			_gameMode = 2;
@@ -317,18 +317,18 @@ void KingdomGame::GameHelp() {
 			DrawRect(4, 17, 228, 161, 0);
 			DrawInventory();
 
-			if (_Nodes[68] == 1 || _Nodes[29] == 1 || _itemInhibit)
+			if (_nodes[68] == 1 || _nodes[29] == 1 || _itemInhibit)
 				_currMap = 10;
 			else
 				_currMap = 11;
 
-			_UserInput = 0;
+			_userInput = 0;
 		}
 	}
 	if (_gameMode == 0)
 		return;
 
-	switch(_UserInput) {
+	switch(_userInput) {
 	case 0x240:
 		FadeToBlack2();
 		//TODO: Set _quitFlag to 1
@@ -393,23 +393,23 @@ void KingdomGame::GameHelp() {
 		return;
 	}
 
-	if (_UserInput > 0x427 && _UserInput < 0x43A)
-		FShowPic(130 + _UserInput - 0x428);
+	if (_userInput > 0x427 && _userInput < 0x43A)
+		FShowPic(130 + _userInput - 0x428);
 
-	if (_UserInput == 0x260) {
+	if (_userInput == 0x260) {
 		DrawInventory();
-		if (_Nodes[68] == 1 || _Nodes[29] == 1)
+		if (_nodes[68] == 1 || _nodes[29] == 1)
 			_currMap = 10;
 		else
 			_currMap = 11;
 
-		_UserInput = 0;
+		_userInput = 0;
 	}
 }
 
 void KingdomGame::LoadKingArt() {
 	LoadAResource(0x97);
-	Common::SeekableReadStream *kingartStream = _RezPointers[0x97];
+	Common::SeekableReadStream *kingartStream = _rezPointers[0x97];
 	int val = kingartStream->readUint32LE();
 	int size = val / 4;
 	uint32 *kingartIdx = new uint32[size + 1];
@@ -439,23 +439,23 @@ void KingdomGame::LoadAResource(int reznum) {
 
 	debug("Loading resource: %i (%s)\n", reznum, path.c_str());
 
-	if(!_RezSize[reznum]) {
+	if(!_rezSize[reznum]) {
 		Common::File *file = new Common::File();
 		if(!file->open(path))
 			error("Failed to open %s", path.c_str());
 
-		_RezSize[reznum] = file->size();
+		_rezSize[reznum] = file->size();
 		file->seek(0, SEEK_SET);
-		_RezPointers[reznum] = file->readStream(_RezSize[reznum]);
+		_rezPointers[reznum] = file->readStream(_rezSize[reznum]);
 		file->close();
 		delete file;
 	}
 }
 
 void KingdomGame::ReleaseAResource(int reznum) {
-	if (_RezSize[reznum]) {
-		delete _RezPointers[reznum];
-		_RezSize[reznum] = 0;
+	if (_rezSize[reznum]) {
+		delete _rezPointers[reznum];
+		_rezSize[reznum] = 0;
 	}
 }
 
@@ -464,7 +464,7 @@ void KingdomGame::ShowPic(int reznum) {
 
 	LoadAResource(reznum);
 	Image::IFFDecoder decoder;
-	if (!decoder.loadStream(*_RezPointers[reznum]))
+	if (!decoder.loadStream(*_rezPointers[reznum]))
 		return;
 
 	const byte *palette = decoder.getPalette();
@@ -509,8 +509,8 @@ void KingdomGame::InitMouse() {
 
 void KingdomGame::SetMouse() {
 	g_system->warpMouse(272, 157);
-	_CursorX = 272;
-	_CursorY = 157;
+	_cursorX = 272;
+	_cursorY = 157;
 }
 
 void KingdomGame::InitMPlayer() {
@@ -535,17 +535,17 @@ void KingdomGame::PlayMovie(int movieNum) {
 	if (!_fullScreen) {
 		_treeLeftSta = (_fstFwd == 0) ? 0 : 1;
 		_treeRightSta = 0;
-		_IconSel = _IconSelect;
+		_iconSel = _iconSelect;
 		_iconsClosed = true;
 		CheckMainScreen();
 		SetMouse();
-		_OldCursorX = _CursorX;
-		_OldCursorY = _CursorY;
+		_oldCursorX = _cursorX;
+		_oldCursorY = _cursorY;
 	}
 
 	_pMovie = movieNum;
 	ReadMouse();
-	_MouseButton = 0;
+	_mouseButton = 0;
 	_keyActive = false;
 	const char *path = _movieNames[movieNum];
 	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
@@ -566,7 +566,7 @@ void KingdomGame::PlayMovie(int movieNum) {
 	if (!_fullScreen) {
 		_treeRightSta = 1;
 		_iconsClosed = false;
-		_IconSel = 9;
+		_iconSel = 9;
 		_treeLeftSta = _replay ? 2 : 0;
 		CheckMainScreen();
 		DrawCursor();
@@ -574,7 +574,7 @@ void KingdomGame::PlayMovie(int movieNum) {
 		_frameStop = 0;
 		_lastSound = _sound;
 		_sound = false;
-		_UserInput = 0;
+		_userInput = 0;
 	}
 }
 
@@ -691,74 +691,74 @@ void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 
 void KingdomGame::DrawInventory() {
 	FShowPic(108);
-	if (_Nodes[29] == 1 || _Nodes[68] == 1 || _itemInhibit)
+	if (_nodes[29] == 1 || _nodes[68] == 1 || _itemInhibit)
 		return;
 
-	if (_Inventory[0] > 0)
+	if (_inventory[0] > 0)
 		DrawIcon(136, 102, 180);
 
-	if (_Inventory[1] > 0)
+	if (_inventory[1] > 0)
 		DrawIcon(73, 65, 175);
 
-	if (_Inventory[2] > 0)
+	if (_inventory[2] > 0)
 		DrawIcon(171, 96, 179);
 
-	if (_Inventory[3] > 0)
+	if (_inventory[3] > 0)
 		DrawIcon(120, 34, 174);
 
-	if (_Inventory[4] > 0)
+	if (_inventory[4] > 0)
 		DrawIcon(160, 41, 177);
 
-	if (_Inventory[5] > 0)
+	if (_inventory[5] > 0)
 		DrawIcon(21, 124, 184);
 
-	if (_Inventory[6] > 0)
+	if (_inventory[6] > 0)
 		DrawIcon(201, 42, 178);
 
-	if (_Inventory[7] > 0)
+	if (_inventory[7] > 0)
 		DrawIcon(76, 119, 186);
 
-	if (_Inventory[8] > 0)
+	if (_inventory[8] > 0)
 		DrawIcon(18, 31, 170);
 
-	if (_Inventory[9] > 0)
+	if (_inventory[9] > 0)
 		DrawIcon(57, 88, 185);
 
-	if (_Inventory[10] > 0)
+	if (_inventory[10] > 0)
 		DrawIcon(182, 124, 181);
 
-	if (_Inventory[11] > 0)
+	if (_inventory[11] > 0)
 		DrawIcon(176, 26, 183);
 
-	if (_Inventory[12] > 0)
+	if (_inventory[12] > 0)
 		DrawIcon(54, 23, 171);
 
-	if (_Inventory[13] > 0)
+	if (_inventory[13] > 0)
 		DrawIcon(120, 133, 182);
 
-	if (_Inventory[14] > 0)
+	if (_inventory[14] > 0)
 		DrawIcon(94, 92, 187);
 
-	if (_Inventory[15] > 0)
+	if (_inventory[15] > 0)
 		DrawIcon(135, 67, 176);
 
-	if (_Inventory[16] > 0)
+	if (_inventory[16] > 0)
 		DrawIcon(84, 30, 173);
 
-	if (_Inventory[17] > 0)
+	if (_inventory[17] > 0)
 		DrawIcon(20, 78, 172);
 
-	if (_Inventory[0] > 0)
-		DrawIcon(158, 117, 134 + _Inventory[0]);
+	if (_inventory[0] > 0)
+		DrawIcon(158, 117, 134 + _inventory[0]);
 
-	if (_Inventory[1] > 0)
-		DrawIcon(94, 67, 134 + _Inventory[1]);
+	if (_inventory[1] > 0)
+		DrawIcon(94, 67, 134 + _inventory[1]);
 
-	if (_Inventory[2] > 0)
-		DrawIcon(193, 105, 134 + _Inventory[2]);
+	if (_inventory[2] > 0)
+		DrawIcon(193, 105, 134 + _inventory[2]);
 
-	if (_Inventory[3] > 0)
-		DrawIcon(131, 39, 134 + _Inventory[3]);
+	if (_inventory[3] > 0)
+		DrawIcon(131, 39, 134 + _inventory[3]);
 }
 
 Common::String KingdomGame::getSavegameFilename(int slot) {
@@ -832,9 +832,9 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	delete[] _asPtr;
 	_asPtr = nullptr;
 
-	PlaySound(_SoundNumber);
+	PlaySound(_soundNumber);
 	for (int i = 0; i < 7; i++)
-		_IconPic[i] = 89 + i;
+		_iconPic[i] = 89 + i;
 	
 	_frameStop = 0;
 	_gameMode = 0;
@@ -855,7 +855,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_gameMode = 0;
 	_iconsClosed = false;
 	DrawRect(4, 17, 228, 161, 0);
-	_UserInput = 0x43E;
+	_userInput = 0x43E;
 	_loopFlag = true;
 
 	return Common::kNoError;
@@ -871,9 +871,9 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_nextNode);
 	s.syncAsSint16LE(_nodeNum);
 	s.syncAsSint16LE(_pMovie);
-	s.syncAsSint16LE(_RtnNode);
+	s.syncAsSint16LE(_rtnNode);
 	s.syncAsSint16LE(_robberyNode);
-	s.syncAsSint16LE(_SoundNumber);
+	s.syncAsSint16LE(_soundNumber);
 	s.syncAsSint16LE(_treeEyePic);
 	s.syncAsSint16LE(_treeEyeSta);
 	s.syncAsSint16LE(_treeHGPic);
@@ -883,10 +883,10 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_skylarTimer);
 
 	for (int i = 0; i < 18; i++)
-		s.syncAsSint16LE(_Inventory[i]);
+		s.syncAsSint16LE(_inventory[i]);
 
 	for (int i = 0; i < 99; i++)
-		s.syncAsSint16LE(_Nodes[i]);
+		s.syncAsSint16LE(_nodes[i]);
 
 	s.syncAsByte(_oldEye);
 	s.syncAsByte(_fstFwd);
@@ -975,7 +975,7 @@ bool KingdomGame::readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHead
 }
 
 void KingdomGame::PlaySound(int idx) {
-	if (idx > 43 || _SoundNumber == idx)
+	if (idx > 43 || _soundNumber == idx)
 		return;
 
 	// Stop Sound
@@ -984,15 +984,15 @@ void KingdomGame::PlaySound(int idx) {
 		ReleaseAResource(idx);
 	}
 
-	_SoundNumber = idx;
-	if (_SoundNumber == 0 || _noMusic)
+	_soundNumber = idx;
+	if (_soundNumber == 0 || _noMusic)
 		return;
 
-	int realIdx = _SoundNumber + 200; // Or +250, depending in the original on the sound card
+	int realIdx = _soundNumber + 200; // Or +250, depending in the original on the sound card
 	debug("PlaySound %d : %s", idx, _rezNames[realIdx]);
 	LoadAResource(realIdx);
 
-	Common::SeekableReadStream *soundStream = _RezPointers[realIdx];
+	Common::SeekableReadStream *soundStream = _rezPointers[realIdx];
 	Audio::RewindableAudioStream *rewindableStream = Audio::makeRawStream(soundStream, 22050, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN, DisposeAfterUse::NO);
 	_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, Audio::Mixer::kMaxMixerVolume);
 	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, rewindableStream);
@@ -1008,18 +1008,18 @@ void KingdomGame::EraseCursor() {
 }
 
 void KingdomGame::ReadMouse() {
-	_MouseButton = 0;
+	_mouseButton = 0;
 
 	Common::Event event;
 	g_system->getEventManager()->pollEvent(event);
 	if (event.type == Common::EVENT_MOUSEMOVE) {
-	_CursorX = event.mouse.x;
-	_CursorY = event.mouse.y;
+	_cursorX = event.mouse.x;
+	_cursorY = event.mouse.y;
 	}
 	if (event.type == Common::EVENT_LBUTTONUP)
-		_MouseButton |= 1;
+		_mouseButton |= 1;
 	if (event.type == Common::EVENT_RBUTTONUP)
-		_MouseButton |= 2;
+		_mouseButton |= 2;
 
 	g_system->getEventManager()->pushEvent(event);
 }
@@ -1029,29 +1029,29 @@ void KingdomGame::GetUserInput() {
 	if (_quit)
 		return;
 
-	_UserInput = WaitKey();
+	_userInput = WaitKey();
 
 	if (_quit)
 		return;
 
-	if (_UserInput == 2 && _eye)
-		_UserInput = _asMode ? 0x43B : 0x43A;
+	if (_userInput == 2 && _eye)
+		_userInput = _asMode ? 0x43B : 0x43A;
 
-	if (_UserInput == 1)
-		_UserInput = _MouseValue;
+	if (_userInput == 1)
+		_userInput = _mouseValue;
 
-	if (_UserInput == 0x2F5) {
+	if (_userInput == 0x2F5) {
 		_statPlay = 600;
 		_loopFlag = true;
 	}
 
-	if (_UserInput == 0x42B && _statPlay == 53 && _gameMode == 0) {
+	if (_userInput == 0x42B && _statPlay == 53 && _gameMode == 0) {
 		_oldStatPlay = _statPlay;
 		_statPlay = 900;
 		_loopFlag = true;
 	}
 
-	if (_UserInput == 0x12D && _currMap == 1)
+	if (_userInput == 0x12D && _currMap == 1)
 		// CHECKME: _quitFlag = 2;
 		_quit = true;
 }
@@ -1114,7 +1114,7 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 }
 
 void KingdomGame::ProcessMapInput(int mapNum) {
-	switch(_UserInput) {
+	switch(_userInput) {
 	case 0x43B:
 	case 0x443:
 		SwitchMtoA();
@@ -1126,24 +1126,24 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 			_zoom--;
 			ProcessMap(mapNum, _zoom);
 		} else
-			_UserInput = 0;
+			_userInput = 0;
 		break;
 	case 0x440:
 		if (_treeRightSta == 2) {
 			_zoom++;
 			ProcessMap(mapNum, _zoom);
 		} else
-			_UserInput = 0;
+			_userInput = 0;
 		break;
 	default:
-		if (_UserInput > 0x3FF && _UserInput < 0x428) {
-			_statPlay = _mapExit[_UserInput - 0x400];
+		if (_userInput > 0x3FF && _userInput < 0x428) {
+			_statPlay = _mapExit[_userInput - 0x400];
 			_mapEx = true;
 			_loopFlag = true;
 			SwitchAS();
 		}
 
-		if (_UserInput > 0x440) {
+		if (_userInput > 0x440) {
 			SwitchMtoA();
 			_mapStat = false;
 			_statPlay--;
@@ -1154,15 +1154,15 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 }
 
 void KingdomGame::InventoryDel(int item) {
-	if (_Inventory[item] > 0)
-		_Inventory[item]--;
+	if (_inventory[item] > 0)
+		_inventory[item]--;
 }
 
 void KingdomGame::InventoryAdd(int item) {
 	if (item >= 4)
-		_Inventory[item] = 1;
+		_inventory[item] = 1;
 	else
-		_Inventory[item] = 3;
+		_inventory[item] = 3;
 }
 
 void KingdomGame::DrawPic(int reznum) {
@@ -1170,7 +1170,7 @@ void KingdomGame::DrawPic(int reznum) {
 	LoadAResource(reznum);
 
 	Image::IFFDecoder decoder;
-	if (!decoder.loadStream(*_RezPointers[reznum]))
+	if (!decoder.loadStream(*_rezPointers[reznum]))
 		return;
 
 	const Graphics::Surface *surface = decoder.getSurface();
@@ -1199,7 +1199,7 @@ void KingdomGame::DisplayIcon(int reznum) {
 	_bTimer = 76;
 	ReadMouse();
 	
-	while(_bTimer != 0 && _MouseButton == 0) {
+	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		ReadMouse();
@@ -1214,18 +1214,18 @@ void KingdomGame::SetATimer() {
 	_aTimerFlag = true;
 	_aTimer = 0;
 	int wrkNodeNum = _nodeNum;
-	if (_Nodes[29] == 1 || _Nodes[68] == 1)
+	if (_nodes[29] == 1 || _nodes[68] == 1)
 		return;
 
 	if (_tsIconOnly)
 		wrkNodeNum = 79;
 
-	if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
+	if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
 		wrkNodeNum = 80;
 	
 	for (int i = 0; i < 7; i++) {
 		int idx = _iconActTable[wrkNodeNum][i];
-		if (_Inventory[idx] > 0) {
+		if (_inventory[idx] > 0) {
 			_aTimerFlag = false;
 			_aTimer = _wizard ? 114 : 133;
 			PlaySound(0);
@@ -1288,13 +1288,13 @@ void KingdomGame::CheckMainScreen() {
 	if (_iconRedraw) {
 		_iconRedraw = false;
 		DrawIcon(4, 0, 12 - _healthOld);
-		DrawIcon(11, 178, _IconPic[0]);
-		DrawIcon(38, 178, _IconPic[1]);
-		DrawIcon(65, 178, _IconPic[2]);
-		DrawIcon(92, 178, _IconPic[3]);
-		DrawIcon(119, 178, _IconPic[4]);
-		DrawIcon(146, 178, _IconPic[5]);
-		DrawIcon(173, 178, _IconPic[6]);
+		DrawIcon(11, 178, _iconPic[0]);
+		DrawIcon(38, 178, _iconPic[1]);
+		DrawIcon(65, 178, _iconPic[2]);
+		DrawIcon(92, 178, _iconPic[3]);
+		DrawIcon(119, 178, _iconPic[4]);
+		DrawIcon(146, 178, _iconPic[5]);
+		DrawIcon(173, 178, _iconPic[6]);
 		_treeLeftPic = 0;
 		_treeRightPic = 0;
 		_treeEyeTimer = 0;
@@ -1310,41 +1310,41 @@ void KingdomGame::CheckMainScreen() {
 		int wrkNodeNum = _nodeNum;
 		if (_tsIconOnly)
 			wrkNodeNum = 79;
-		if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
+		if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
 			wrkNodeNum = 80;
-		if (_nodeNum == 21 && _Nodes[21] == 9)
+		if (_nodeNum == 21 && _nodes[21] == 9)
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 
-		if (_Inventory[idx] >= 1 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
-			if (_IconPic[i] != 12 + idx) {
-				if (_IconPic[i] == 89 + i)
-					_IconPic[i] = 96 + i;
-				else if (_IconPic[i] == 96 + i)
-					_IconPic[i] = 31;
-				else if (_IconPic[i] == 31)
-					_IconPic[i] = 32;
-				else if (_IconPic[i] == 32)
-					_IconPic[i] = 12 + idx;
+		if (_inventory[idx] >= 1 && _nodes[29] != 1 && _nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
+			if (_iconPic[i] != 12 + idx) {
+				if (_iconPic[i] == 89 + i)
+					_iconPic[i] = 96 + i;
+				else if (_iconPic[i] == 96 + i)
+					_iconPic[i] = 31;
+				else if (_iconPic[i] == 31)
+					_iconPic[i] = 32;
+				else if (_iconPic[i] == 32)
+					_iconPic[i] = 12 + idx;
 				else
-					_IconPic[i] = 89 + i;
+					_iconPic[i] = 89 + i;
 			} 
-		} else if (_IconSel != i && _IconPic[i] != 89 + i) {
-			if (_IconPic[i] != 12 + idx)
-				_IconPic[i] = 32;
-			else if (_IconPic[i] == 32)
-				_IconPic[i] = 31;
-			else if (_IconPic[i] == 31)
-				_IconPic[i] = 96 + i;
-			else if (_IconPic[i] == 96 + i)
-				_IconPic[i] = 32;
+		} else if (_iconSel != i && _iconPic[i] != 89 + i) {
+			if (_iconPic[i] != 12 + idx)
+				_iconPic[i] = 32;
+			else if (_iconPic[i] == 32)
+				_iconPic[i] = 31;
+			else if (_iconPic[i] == 31)
+				_iconPic[i] = 96 + i;
+			else if (_iconPic[i] == 96 + i)
+				_iconPic[i] = 32;
 			else
-				_IconPic[i] = 89 + i;
+				_iconPic[i] = 89 + i;
 		} else
 			continue;
 
 		int posX = (27 * i) + 11;
-		DrawIcon(posX, 178, _IconPic[i]);
+		DrawIcon(posX, 178, _iconPic[i]);
 	}
 
 	switch (_treeLeftSta) {
@@ -1484,8 +1484,8 @@ bool KingdomGame::ChkDesertObstacles() {
 		return false;
 	}
 
-	if (_Nodes[29] || _rnd->getRandomNumber(6) == 0) {
-		if (!_Nodes[49] || _robberyNode != _nodeNum) {
+	if (_nodes[29] || _rnd->getRandomNumber(6) == 0) {
+		if (!_nodes[49] || _robberyNode != _nodeNum) {
 			if (_lastObstacle != _nodeNum) {
 				if (_rnd->getRandomNumber(5) == 0) {
 					_statPlay = 250;
@@ -1518,7 +1518,7 @@ void KingdomGame::SwitchAtoM() {
 	_asMode = true;
 	_asMap = _currMap;
 	SaveAS();
-	_IconSel = 9;
+	_iconSel = 9;
 	_oldTLS = _treeLeftSta;
 	_oldTRS = _treeRightSta;
 	_oldPouch = _Pouch;
@@ -1559,13 +1559,13 @@ void KingdomGame::DrawIcon(int x, int y, int index) {
 
 int KingdomGame::GetAKey() {
 	DrawCursor();
-	if (_MouseButton != 0 && _MouseDebound == false) {
-		_MouseDebound = true;
-		return (_MouseButton & 2) ? 2 : 1;
+	if (_mouseButton != 0 && _mouseDebound == false) {
+		_mouseDebound = true;
+		return (_mouseButton & 2) ? 2 : 1;
 	}
 
 	int retval = 0;
-	_MouseDebound = false;
+	_mouseDebound = false;
 	Common::Event event;
 	while (g_system->getEventManager()->pollEvent(event)) {
 		switch (event.type) {
@@ -1583,7 +1583,7 @@ int KingdomGame::GetAKey() {
 			else if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
 				_console->attach();
 			else if (event.kbd.keycode == Common::KEYCODE_c && event.kbd.hasFlags(Common::KBD_CTRL)) {
-				_UserInput = 0x12D;
+				_userInput = 0x12D;
 				// _QuitFlag = 2;
 				_quit = true; 
 			}
@@ -1593,11 +1593,11 @@ int KingdomGame::GetAKey() {
 				retval = !_asMode ? 0x43A : 0x43B;
 			break;
 		case Common::EVENT_RBUTTONUP: // retval == 1?
-			retval = _MouseValue;
+			retval = _mouseValue;
 			break;
 		case Common::EVENT_MOUSEMOVE:
-			_CursorX = event.mouse.x;
-			_CursorY = event.mouse.y;
+			_cursorX = event.mouse.x;
+			_cursorY = event.mouse.y;
 
 		default:
 			RefreshSound();
@@ -1627,17 +1627,17 @@ void KingdomGame::DrawCursor() {
 	ReadMouse();
 
 	CursorType();
-	SetCursor(_CursorDef);
-	_OldCursorX = _CursorX;
-	_OldCursorY = _CursorY;
-	_OldCursorDef = _CursorDef;
+	SetCursor(_cursorDef);
+	_oldCursorX = _cursorX;
+	_oldCursorY = _cursorY;
+	_oldCursorDef = _cursorDef;
 
 	CursorMan.showMouse(true);
 	_cursorDrawn = true;
 }
 
 void KingdomGame::CursorType() {
-	_MouseValue = 0;
+	_mouseValue = 0;
 	if (_currMap != 1 && _statPlay >= 30) {
 		int var2 = _statPlay == 901 ? 16 : 0;
 		int var6 = _statPlay == 901 ? 35 : 16;
@@ -1648,9 +1648,9 @@ void KingdomGame::CursorType() {
 					CursorTypeExit();
 					return;
 				} else
-					_MouseValue = tmpVal;
-			} else if (_CursorX >= _mouseMapMS[var2 + i]._minX && _CursorX < _mouseMapMS[var2 + i]._maxX && _CursorY >= _mouseMapMS[var2 + i]._minY && _CursorY < _mouseMapMS[var2 + i]._maxY) {
-				_MouseValue = _mouseMapMS[var2 + i]._mouseValue;
+					_mouseValue = tmpVal;
+			} else if (_cursorX >= _mouseMapMS[var2 + i]._minX && _cursorX < _mouseMapMS[var2 + i]._maxX && _cursorY >= _mouseMapMS[var2 + i]._minY && _cursorY < _mouseMapMS[var2 + i]._maxY) {
+				_mouseValue = _mouseMapMS[var2 + i]._mouseValue;
 				break;
 			}
 		}
@@ -1660,126 +1660,126 @@ void KingdomGame::CursorType() {
 			CursorTypeExit();
 			return;
 		} else {
-			_MouseValue = tmpVal;
+			_mouseValue = tmpVal;
 		}
 	}
 
-	switch(_MouseValue) {
+	switch(_mouseValue) {
 	case 0x18A:
 		if (_eye)
-			_MouseValue = !_asMode ? 0x43A : 0x43B;
+			_mouseValue = !_asMode ? 0x43A : 0x43B;
 		else
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x18C:
 		if (_treeLeftSta == 1)
-			_MouseValue = 0x43D;
+			_mouseValue = 0x43D;
 		else if (_treeLeftSta == 3)
-			_MouseValue = 0x43F;
+			_mouseValue = 0x43F;
 		else if (_treeLeftSta == 0)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		else if (_treeLeftSta == 2 && _replay)
-			_MouseValue = 0x43E;
+			_mouseValue = 0x43E;
 		else
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x18D:
 		if (_treeRightSta == 1)
-			_MouseValue = _help ? 0x43C : 0;
+			_mouseValue = _help ? 0x43C : 0;
 		if (_treeRightSta == 2)
-			_MouseValue = 0x440;
+			_mouseValue = 0x440;
 		break;
 	case 0x24A:
 		// Restore game.
 		// No more check in ScummVM, we display the load screen
 		break;
 	case 0x407:
-		if (_statPlay == 182 && _Nodes[18] < 9)
-			_MouseValue = 0;
+		if (_statPlay == 182 && _nodes[18] < 9)
+			_mouseValue = 0;
 		break;
 	case 0x40D:
-		if (_Nodes[29] == 1)
-			_MouseValue = 0;
+		if (_nodes[29] == 1)
+			_mouseValue = 0;
 		break;
 	case 0x41F:
-		if (_Nodes[32] == 0)
-			_MouseValue = 0;
+		if (_nodes[32] == 0)
+			_mouseValue = 0;
 		break;
 	case 0x422:
 	case 0x425:
 		if (!_wizard)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x428:
 		if (_nodeNum == 5 && _gameMode != 2 && _spell1)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x42A:
 		if (_nodeNum == 5 && _gameMode != 2 && _spell2)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x42B:
 		if (_nodeNum == 5 && _gameMode != 2 && _spell3)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x445:
-		if (_statPlay == 161 && _Nodes[16] == 0 && _wizard)
-			_MouseValue = 0x450;
+		if (_statPlay == 161 && _nodes[16] == 0 && _wizard)
+			_mouseValue = 0x450;
 		break;
 	case 0x44F:
 		if (!_Pouch)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	case 0x457:
 		if (!_tideCntl)
-			_MouseValue = 0;
+			_mouseValue = 0;
 		break;
 	}
 
-	_IconSelect = 9;
+	_iconSelect = 9;
 	for (int var6 = 0; var6 < 8; var6++) {
-		if (_MouseValue == 181 + var6) {
+		if (_mouseValue == 181 + var6) {
 			int var2 = _nodeNum;
 			if (_tsIconOnly)
 				var2 = 79;
-			if (_nodeNum == 56 && _Inventory[8] < 1 && _wizard)
+			if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
 				var2 = 80;
 			int indx = _iconActTable[var2][var6];
-			if (_Inventory[indx] != 0 && _Nodes[29] != 1 && _Nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
-				_MouseValue = indx + 0x428;
-				_IconSelect = var6;
+			if (_inventory[indx] != 0 && _nodes[29] != 1 && _nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
+				_mouseValue = indx + 0x428;
+				_iconSelect = var6;
 				break;
 			}
-			_MouseValue = 0;
+			_mouseValue = 0;
 		}
 	}
 
 	if (_currMap == 11) {
-		if (_MouseValue > 0x427 && _MouseValue < 0x43A) {
-			if (_Inventory[_MouseValue - 0x428] < 1)
-				_MouseValue = 0x241;
+		if (_mouseValue > 0x427 && _mouseValue < 0x43A) {
+			if (_inventory[_mouseValue - 0x428] < 1)
+				_mouseValue = 0x241;
 		}
 	}
 	CursorTypeExit();
 }
 
 void KingdomGame::CursorTypeExit() {
-	if (_MouseValue >= 0x400)
-		_CursorDef = _cursorTable[_MouseValue - 0x400];
+	if (_mouseValue >= 0x400)
+		_cursorDef = _cursorTable[_mouseValue - 0x400];
 	else 
-		_CursorDef = (_MouseValue != 0) ? 0x68 : 0x67;
+		_cursorDef = (_mouseValue != 0) ? 0x68 : 0x67;
 }
 
 int KingdomGame::checkMouseMapAS() {
 	for (int i = 0; i < 16; i++) {
-		if (_CursorX >= _mouseMapAS[_currMap][i]._minX && _CursorX < _mouseMapAS[_currMap][i]._maxX
-			&& _CursorY >= _mouseMapAS[_currMap][i]._minY && _CursorY < _mouseMapAS[_currMap][i]._maxY)
+		if (_cursorX >= _mouseMapAS[_currMap][i]._minX && _cursorX < _mouseMapAS[_currMap][i]._maxX
+			&& _cursorY >= _mouseMapAS[_currMap][i]._minY && _cursorY < _mouseMapAS[_currMap][i]._maxY)
 			return _mouseMapAS[_currMap][i]._mouseValue;
 	}
 	if (_currMap == 11) {
 		for (int i = 0; i < 16; i++) {
-			if (_CursorX >= _mouseMapAS[12][i]._minX && _CursorX < _mouseMapAS[12][i]._maxX
-				&& _CursorY >= _mouseMapAS[12][i]._minY && _CursorY < _mouseMapAS[12][i]._maxY)
+			if (_cursorX >= _mouseMapAS[12][i]._minX && _cursorX < _mouseMapAS[12][i]._maxX
+				&& _cursorY >= _mouseMapAS[12][i]._minY && _cursorY < _mouseMapAS[12][i]._maxY)
 				return _mouseMapAS[12][i]._mouseValue;
 		}
 	}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 08482dc656..5128a08bb4 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -182,32 +182,31 @@ namespace Kingdom {
 		bool _resurrect;
 		int _lastObstacle;
 		int _mapStat; // CHECKME: Useless? If so, to be removed
-		int _MouseValue;
-		int _CursorDef;
-		int _OldCursorDef;
-		int _CursorX;
-		int _CursorY;
-		int _OldCursorX;
-		int _OldCursorY;
-		int _IconSel;
-		int _IconSelect;
-		bool _MouseDebound;
-		int _RtnNode;
-		int _SoundNumber;
-		bool _PalStepFlag;
+		int _mouseValue;
+		int _cursorDef; // TODO: Could be removed by using the return value of CursorTypeExit()
+		int _oldCursorDef; // CHECKME: Unused in our implementation?
+		int _cursorX;
+		int _cursorY;
+		int _oldCursorX; // CHECKME: Unused in out implementation?
+		int _oldCursorY; // CHECKME: Unused in out implementation?
+		int _iconSel;
+		int _iconSelect;
+		bool _mouseDebound;
+		int _rtnNode;
+		int _soundNumber;
+		bool _palStepFlag;
 		Audio::SoundHandle _soundHandle;
 		int _tickCount;
 		uint32 _oldTime;
 
-		// Game Flags - Will be renames later into _Nodes[]
-		int16 _Nodes[99];
+		int16 _nodes[99];
 
-		Common::SeekableReadStream *_RezPointers[510];
-		int _RezSize[510];
-		int _Inventory[19];
-		int _IconPic[7];
-		uint16 _UserInput;
-		uint16 _MouseButton;
+		Common::SeekableReadStream *_rezPointers[510];
+		int _rezSize[510];
+		int _inventory[19];
+		int _iconPic[7];
+		uint16 _userInput;
+		uint16 _mouseButton;
 
 		void drawScreen();
 		void SetupPics();


Commit: 99974e1b3d2fec2e1ce67c33ebcd92fc23970f57
    https://github.com/scummvm/scummvm/commit/99974e1b3d2fec2e1ce67c33ebcd92fc23970f57
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Initial all variables like in the original

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 8235ea2332..86c3f7ac98 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -52,21 +52,9 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_rnd = new Common::RandomSource("kingdom");
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
-	for (int i = 0; i < 510; i++) {
-		_rezPointers[i] = nullptr;
-		_rezSize[i] = 0;
-	}
-
-	for (int i = 0; i < 99; i++)
-		_nodes[i] = 0;
 
 	_asPtr = nullptr;
 	_quit = false;
-	_mouseValue = 0;
-	_currMap = 0;
-	_statPlay = 0;
-	_soundNumber = -1;
-
 	_kingartEntries = nullptr;
 
 	_tickCount = 0;
@@ -79,6 +67,111 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	SearchMan.addSubDirectoryMatching(gameDataDir, "SOUNDM");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "MOVIELF");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "MOVIES");
+
+	initVariables();
+}
+
+void KingdomGame::initVariables() {
+	_tsIconOnly = false;
+	_treeRightSta = 0;
+	_treeRightPic = 0;
+	_treeLeftSta = 0;
+	_treeLeftPic = 0;
+	_treeHGUPic = 0;
+	_treeHGTimer = 0;
+	_treeHGSta = 0;
+	_treeHGPic = 0;
+	_treeEyeTimer = 0;
+	_treeEyeSta = 0;
+	_treeEyePic = 0;
+	_noIFScreen = false;
+	_iconSel = 0;
+	_iconSelect = 0;
+	_iconsClosed = false;
+	for (int i = 0; i < 7; i++)
+		_iconPic[i] = 0;
+
+	_iconRedraw = 0;
+	_healthTmr = 0;
+	_healthOld = 0;
+	_health = 0;
+	_palStepFlag = 0;
+	_skylarTimerFlag = 0;
+	_skylarTimer = 0;
+	_cTimerFlag = 0;
+	_cTimer = 0;
+	_bTimerFlag = 0;
+	_bTimer = 0;
+	_aTimerFlag = 0;
+	_aTimer = 0;
+	_zoom = 0;
+	_wizard = 0; 
+	_userInput = 0;
+	_tideCntl = 0;
+//	_track = 0;
+//	_statMap = 0;
+	_statPlay = 0;
+	_spell3 = 0;
+	_spell2 = 0;
+	_spell1 = 0;
+	_soundNumber = 0;
+	_robberyNode = 0;
+	_rtnNode = 0;
+	_replay = false;
+	_resurrect = false;
+//	_quitFlag = 0;
+	_Pouch = false;
+	_pMovie = 0;
+//	_options = 0;
+	_oldPouch = false;
+	_oldHelp = false;
+	_oldEye = false;
+	_oldTRS = 0;
+	_oldTLS = 0;
+	_oldStatPlay = 0;
+	_oldNode = 0;
+	_oldIconsClosed = false;
+	_fstFwd = false;
+	_noMusic = false;
+	_nodeNum = 0;
+	_nextNode = 0;
+	_mouseValue = 0;
+	_mapEx = 0;
+	_mapStat = 0;
+	_loopFlag = false;
+	_lastSound = 0;
+	_lastObs = 0;
+	_lastObstacle = 0;
+	_keyActive = false;
+	_help = false;
+	_itemInhibit = false;
+//	_iconW = 0;
+	_gameMode = 0;
+	_fullScreen = false;
+	_frameStop = 0;
+	_eye = false;
+	_daelonCntr = 0;
+	_sound = 0;
+	_asMode = false;
+	for (int i = 0; i < 99; i++)
+		_nodes[i] = 0;
+	for (int i = 0; i < 510; i++) {
+		_rezPointers[i] = nullptr;
+		_rezSize[i] = 0;
+	}
+	_mouseDebound = false;
+	_mouseButton = 0;
+//	_cursorActive = false;
+	_cursorDrawn = false;
+	_oldCursorY = 0;
+	_oldCursorX = 0;
+//	_cursorShape = nullptr;
+	_oldCursorDef = 0;
+	_cursorDef = 0;
+	_cursorY = 0;
+	_cursorX = 0;
+	_currMap = 0;
+	_asMap = 0;
 }
 
 KingdomGame::~KingdomGame() {
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 5128a08bb4..523293d36d 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -282,6 +282,7 @@ namespace Kingdom {
 		void synchronize(Common::Serializer &s);
 		void refreshScreen();
 		void checkTimers();
+		void initVariables();
 	};
 } // End of namespace Kingdom
 


Commit: 2e925fb50c213375ac03d6b69c0c6781fb2e87e5
    https://github.com/scummvm/scummvm/commit/2e925fb50c213375ac03d6b69c0c6781fb2e87e5
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Some renaming, consistently use boolean values for _pouch

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index af1ecaad05..13a5280e33 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -28,7 +28,7 @@ void KingdomGame::GPLogic1() {
 	switch(_statPlay) {
 	case 10:
 		_nodeNum = 1;
-		InitPlay();
+		initPlay();
 		_replay = false;
 		GPLogic1_SubSP10();
 		break;
@@ -46,7 +46,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x192:
 			_aTimer = 0;
-			FadeToBlack2();
+			fadeToBlack2();
 			PlayMovie(1);
 			GPLogic1_SubSP10();
 			break;
@@ -56,7 +56,7 @@ void KingdomGame::GPLogic1() {
 			_noIFScreen = true;
 			PlaySound(0);
 			while(!_keyActive) {
-				FadeToBlack2();
+				fadeToBlack2();
 				PlayMovie(54);
 			}
 			GPLogic1_SubSP10();
@@ -66,7 +66,7 @@ void KingdomGame::GPLogic1() {
 			_quit = true;
 			break;
 		case 0x24A:
-			FadeToBlack2();
+			fadeToBlack2();
 			SetMouse();
 			EraseCursor();
 			restoreGame();
@@ -74,7 +74,7 @@ void KingdomGame::GPLogic1() {
 		case 0x2F1:
 			EraseCursorAsm();
 			_cursorDrawn = false;
-			FadeToBlack2();
+			fadeToBlack2();
 			PlaySound(0);
 			PlayMovie(54);
 			GPLogic1_SubSP10();
@@ -86,11 +86,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 20:
-		InitPlay();
+		initPlay();
 		_noIFScreen = false;
 		EraseCursorAsm();
 		_cursorDrawn = false;
-		FadeToBlack2();
+		fadeToBlack2();
 		ShowPic(106);
 		_statPlay = 30;
 		_userInput = 0;
@@ -778,7 +778,7 @@ void KingdomGame::GPLogic1() {
 	case 161:
 		switch(_userInput) {
 		case 0x198: {
-			FadeToBlack1();
+			fadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			_replay = true;
 			int oldPMovie = _pMovie;
@@ -788,12 +788,12 @@ void KingdomGame::GPLogic1() {
 			RestoreAS();
 			_help = true;
 			_eye = true;
-			_Pouch = true;
+			_pouch = true;
 			_currMap = 85;
 			}
 			break;
 		case 0x199: {
-			FadeToBlack1();
+			fadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			_replay = true;
 			int oldPMovie = _pMovie;
@@ -803,7 +803,7 @@ void KingdomGame::GPLogic1() {
 			RestoreAS();
 			_help = true;
 			_eye = true;
-			_Pouch = true;
+			_pouch = true;
 			_currMap = 85;
 			}
 			break;
@@ -842,7 +842,7 @@ void KingdomGame::GPLogic1() {
 			SaveAS();
 			_help = false;
 			_eye = false;
-			_Pouch = false;
+			_pouch = false;
 			_replay = false;
 			FShowPic(105);
 			_currMap = 86;
@@ -870,7 +870,7 @@ void KingdomGame::GPLogic1() {
 				ReadMouse();
 			}
 
-			FadeToBlack1();
+			fadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			RestoreAS();
 			break;	
@@ -1373,7 +1373,7 @@ void KingdomGame::GPLogic1() {
 void KingdomGame::GPLogic1_SubSP10() {
 	PlaySound(0);
 	PlaySound(18);
-	FadeToBlack2();
+	fadeToBlack2();
 	ShowPic(115);
 	ShowPic(114);
 
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index aaa3cb2cc6..39310c337e 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -821,7 +821,7 @@ void KingdomGame::GPLogic2() {
 				_aTimer = 0;
 				_help = true;
 				_replay = true;
-				_Pouch = 1;
+				_pouch = true;
 				_fstFwd = true;
 				PlayMovie(107);
 				PlaySound(26);
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index b2ed5bc66d..19b76ebffb 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -691,7 +691,7 @@ void KingdomGame::GPLogic3() {
 	case 600:
 		SetMouse();
 		EraseCursor();
-		FadeToBlack2();
+		fadeToBlack2();
 		ShowPic(106);
 		DrawIcon(4, 0, 12 - _healthOld);
 		_asMode = false;
@@ -1690,7 +1690,7 @@ void KingdomGame::EndCredits() {
 		ReadMouse();
 	}
 
-	FadeToBlack1();
+	fadeToBlack1();
 	DrawRect(4, 17, 228, 161, 0);
 	PlaySound(0);
 	DsAll();
@@ -1699,13 +1699,13 @@ void KingdomGame::EndCredits() {
 	DsAll();
 	PlayMovie(205);
 	DsAll();
-	FadeToBlack1();
+	fadeToBlack1();
 	DrawRect(4, 17, 228, 161, 0);
 	PlayMovie(201);
 	FShowPic(125);
 	_currMap = 3;
 	DsAll();
-	_Pouch = false;
+	_pouch = false;
 	memset(_inventory, 0xFF, 19);
 	_statPlay = 994;
 	_loopFlag = true;
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index f58b191fb7..37bb3f3b50 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -38,7 +38,7 @@ void KingdomGame::GPLogic4() {
 			_asMode = false;
 		}
 		SaveAS();
-		FadeToBlack2();
+		fadeToBlack2();
 
 		if (_health == 10 || _health == 6 || _health == 2) {
 			ShowPic(121);
@@ -82,7 +82,7 @@ void KingdomGame::GPLogic4() {
 			FShowPic(107);
 			_currMap = 3;
 			DsAll();
-			_Pouch = 0;
+			_pouch = false;
 			PlaySound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
@@ -132,7 +132,7 @@ void KingdomGame::GPLogic4() {
 			FShowPic(107);
 			_currMap = 3;
 			DsAll();
-			_Pouch = 0;
+			_pouch = false;
 			PlaySound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
@@ -180,7 +180,7 @@ void KingdomGame::GPLogic4() {
 			FShowPic(107);
 			_currMap = 3;
 			DsAll();
-			_Pouch = 0;
+			_pouch = false;
 			PlaySound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
@@ -218,7 +218,7 @@ void KingdomGame::GPLogic4() {
 	case 994:
 		switch(_userInput) {
 		case 0x190:
-			InitPlay();
+			initPlay();
 			// TODO _QuitFlag = 1;
 			_quit = true;
 			break;
@@ -234,7 +234,7 @@ void KingdomGame::GPLogic4() {
 void KingdomGame::GPLogic4_SP901() {
 	SetMouse();
 	EraseCursor();
-	FadeToBlack2();
+	fadeToBlack2();
 	ShowPic(106);
 	DrawIcon(4, 0, 12 - _healthOld);
 	if (_tideCntl)
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 86c3f7ac98..4294413b8d 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -120,7 +120,7 @@ void KingdomGame::initVariables() {
 	_replay = false;
 	_resurrect = false;
 //	_quitFlag = 0;
-	_Pouch = false;
+	_pouch = false;
 	_pMovie = 0;
 //	_options = 0;
 	_oldPouch = false;
@@ -183,16 +183,16 @@ Common::Error KingdomGame::run() {
 	initGraphics(320, 200, false);
 	_console = new Console(this);
 
-	SetupPics();
-	InitTools();
-	TitlePage();
+	setupPics();
+	initTools();
+	titlePage();
 
-	InitPlay();
-	InitHelp();
+	initPlay();
+	initHelp();
 
 	while (!_quit) {
 		_loopFlag = false;
-		GameHelp();
+		gameHelp();
 		if (_gameMode == 0) {
 			if (_statPlay < 250)
 				GPLogic1();
@@ -210,7 +210,7 @@ Common::Error KingdomGame::run() {
 		refreshScreen();
 	}
 
-	FadeToBlack2();
+	fadeToBlack2();
 	return Common::kNoError;
 }
 
@@ -268,21 +268,21 @@ void KingdomGame::drawScreen() {
 	_console->onFrame();
 }
 
-void KingdomGame::SetupPics() {
+void KingdomGame::setupPics() {
 	LoadKingArt();
 }
 
-void KingdomGame::InitTools() {
+void KingdomGame::initTools() {
 	InitMouse();
 	//CHECKME: InitTimers?
 	ShowPic(124);
 	InitCursor();
 	SetMouse();
-	FadeToBlack2();
+	fadeToBlack2();
 	InitMPlayer();
 }
 
-void KingdomGame::TitlePage() {
+void KingdomGame::titlePage() {
 	// TODO: Check on QuitFlag == 2
 	if (shouldQuit())
 		return;
@@ -290,16 +290,16 @@ void KingdomGame::TitlePage() {
 	_fstFwd = true;
 	_noIFScreen = true;
 	_sound = false;
-	FadeToBlack2();
+	fadeToBlack2();
 	PlayMovie(200);
-	FadeToBlack2();
+	fadeToBlack2();
 	PlayMovie(206);
-	FadeToBlack2();
+	fadeToBlack2();
 	PlayMovie(198);
-	FadeToBlack2();
+	fadeToBlack2();
 }
 
-void KingdomGame::InitPlay() {
+void KingdomGame::initPlay() {
 	memset(_inventory, 0xFF, 19);
 
 	for (int i = 0; i < 99; i++)
@@ -339,7 +339,7 @@ void KingdomGame::InitPlay() {
 	_tsIconOnly = false;
 	_lastObs = false;
 	EnAll();
-	_Pouch = true;
+	_pouch = true;
 	_noIFScreen = true;
 	_noMusic = false;
 	_fstFwd = true;
@@ -348,20 +348,20 @@ void KingdomGame::InitPlay() {
 	_asPtr = nullptr;
 }
 
-void KingdomGame::InitHelp() {
+void KingdomGame::initHelp() {
 	_gameMode = 0;
 }
 
-void KingdomGame::FadeToBlack1() {
+void KingdomGame::fadeToBlack1() {
 	debug("STUB: FadeToBlack1");
 }
 
-void KingdomGame::FadeToBlack2() {
+void KingdomGame::fadeToBlack2() {
 	debug("STUB: FadeToBlack2");
 }
 
 void KingdomGame::GameHelp_Sub43C() {
-	FadeToBlack1();
+	fadeToBlack1();
 	_currMap = _asMap;
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
@@ -371,16 +371,16 @@ void KingdomGame::GameHelp_Sub43C() {
 	_treeLeftSta = _oldTLS;
 	_eye = _oldEye;
 	_help = _oldHelp;
-	_Pouch = _oldPouch;
+	_pouch = _oldPouch;
 }
 
-void KingdomGame::GameHelp() {
+void KingdomGame::gameHelp() {
 	if (!_gameMode) {
 		if (_userInput == 0x43C) {
 			SaveAS();
 			_asMap = _currMap;
 			_currMap = 0;
-			FadeToBlack1();
+			fadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			DrawHelpScreen();
 			_gameMode = 1;
@@ -390,8 +390,8 @@ void KingdomGame::GameHelp() {
 			_oldEye = _eye;
 			_eye = false;
 			_oldHelp = _help;
-			_oldPouch = _Pouch;
-			_Pouch = false;
+			_oldPouch = _pouch;
+			_pouch = false;
 			_userInput = 0;
 		}
 		if (_userInput == 0x44F) {
@@ -405,8 +405,8 @@ void KingdomGame::GameHelp() {
 			_eye = false;
 			_oldHelp = _help;
 			_help = false;
-			_oldPouch = _Pouch;
-			FadeToBlack1();
+			_oldPouch = _pouch;
+			fadeToBlack1();
 			DrawRect(4, 17, 228, 161, 0);
 			DrawInventory();
 
@@ -423,7 +423,7 @@ void KingdomGame::GameHelp() {
 
 	switch(_userInput) {
 	case 0x240:
-		FadeToBlack2();
+		fadeToBlack2();
 		//TODO: Set _quitFlag to 1
 		break;
 	case 0x241:
@@ -441,14 +441,14 @@ void KingdomGame::GameHelp() {
 		DrawHelpScreen();
 		break;
 	case 0x243: {
-		FadeToBlack2();
+		fadeToBlack2();
 		_keyActive = false;
 		_noIFScreen = true;
 		PlaySound(0);
 		int var = _pMovie;
 		while(!_keyActive) {
 			PlayMovie(54);
-			FadeToBlack2();
+			fadeToBlack2();
 		}
 		_pMovie = var;
 		_noIFScreen = false;
@@ -463,14 +463,14 @@ void KingdomGame::GameHelp() {
 		_quit = true;
 		break;
 	case 0x245: {
-		FadeToBlack1();
+		fadeToBlack1();
 		int var = _pMovie;
 		DrawRect(4, 17, 228, 161, 0);
 		PlayMovie(205);
-		FadeToBlack1();
+		fadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
 		PlayMovie(199);
-		FadeToBlack1();
+		fadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
 		DrawHelpScreen();
 		_pMovie = var;
@@ -584,7 +584,7 @@ void KingdomGame::ShowPic(int reznum) {
 
 void KingdomGame::FShowPic(int reznum) {
 	EraseCursor();
-	FadeToBlack1();
+	fadeToBlack1();
 	DrawRect(4, 17, 228, 161, 0);
 	ShowPic(reznum);
 }
@@ -675,7 +675,7 @@ void KingdomGame::EnAll() {
 	_help = true;
 	_eye = true;
 	_replay = true;
-	_Pouch = true;
+	_pouch = true;
 	_fstFwd = true;
 }
 
@@ -683,7 +683,7 @@ void KingdomGame::DsAll() {
 	_help = false;
 	_eye = false;
 	_replay = false;
-	_Pouch = false;
+	_pouch = false;
 	_fstFwd = false;
 }
 
@@ -734,7 +734,7 @@ void KingdomGame::SwitchAS() {
 	_currMap = _asMap;
 	_treeLeftSta = _oldTLS;
 	_treeRightSta = _oldTRS;
-	_Pouch = _oldPouch;
+	_pouch = _oldPouch;
 	_help = _oldHelp;
 	_iconsClosed = _oldIconsClosed;
 }
@@ -1181,7 +1181,7 @@ void KingdomGame::DrawLocation() {
 			RefreshSound();
 			CheckMainScreen();
 		}
-		FadeToBlack1();
+		fadeToBlack1();
 		DrawRect(4, 17, 228, 161, 0);
 		_iconsClosed = false;
 		_tsIconOnly = false;
@@ -1298,7 +1298,7 @@ void KingdomGame::DisplayIcon(int reznum) {
 		ReadMouse();
 	}
 
-	FadeToBlack1();
+	fadeToBlack1();
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
 }
@@ -1614,19 +1614,19 @@ void KingdomGame::SwitchAtoM() {
 	_iconSel = 9;
 	_oldTLS = _treeLeftSta;
 	_oldTRS = _treeRightSta;
-	_oldPouch = _Pouch;
+	_oldPouch = _pouch;
 	_oldHelp = _help;
 	_oldIconsClosed = _iconsClosed;
 	_treeLeftSta = 0;
 	_treeRightSta = 0;
-	_Pouch = false;
+	_pouch = false;
 	_help = false;
 	_iconsClosed = true;
 }
 
 void KingdomGame::SwitchMtoA() {
 	SwitchAS();
-	FadeToBlack1();
+	fadeToBlack1();
 	DrawRect(4, 17, 228, 161, 0);
 	RestoreAS();
 }
@@ -1820,7 +1820,7 @@ void KingdomGame::CursorType() {
 			_mouseValue = 0x450;
 		break;
 	case 0x44F:
-		if (!_Pouch)
+		if (!_pouch)
 			_mouseValue = 0;
 		break;
 	case 0x457:
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 523293d36d..d28c303530 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -152,7 +152,7 @@ namespace Kingdom {
 		int _treeHGSta;
 		bool _tsIconOnly;
 		bool _lastObs;
-		bool _Pouch;
+		bool _pouch;
 		bool _noMusic; // TODO: Synchronize this flag with the launcher
 		byte *_asPtr;
 		int _asMap;
@@ -209,14 +209,14 @@ namespace Kingdom {
 		uint16 _mouseButton;
 
 		void drawScreen();
-		void SetupPics();
-		void InitTools();
-		void TitlePage();
-		void InitPlay();
-		void InitHelp();
-		void FadeToBlack1();
-		void FadeToBlack2();
-		void GameHelp();
+		void setupPics();
+		void initTools();
+		void titlePage();
+		void initPlay();
+		void initHelp();
+		void fadeToBlack1();
+		void fadeToBlack2();
+		void gameHelp();
 		void GPLogic1();
 		void GPLogic1_SubSP10();
 		void GPLogic1_SubSP121();


Commit: 3aeb4fb80bc46f46bb7091e9dab4750775bbfced
    https://github.com/scummvm/scummvm/commit/3aeb4fb80bc46f46bb7091e9dab4750775bbfced
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Function renaming

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 13a5280e33..645ad4987a 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -47,17 +47,17 @@ void KingdomGame::GPLogic1() {
 		case 0x192:
 			_aTimer = 0;
 			fadeToBlack2();
-			PlayMovie(1);
+			playMovie(1);
 			GPLogic1_SubSP10();
 			break;
 		case 0x193:
 			_aTimer = 0;
 			_keyActive = false;
 			_noIFScreen = true;
-			PlaySound(0);
+			playSound(0);
 			while(!_keyActive) {
 				fadeToBlack2();
-				PlayMovie(54);
+				playMovie(54);
 			}
 			GPLogic1_SubSP10();
 			break;
@@ -67,7 +67,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x24A:
 			fadeToBlack2();
-			SetMouse();
+			setMouse();
 			EraseCursor();
 			restoreGame();
 			break;
@@ -75,8 +75,8 @@ void KingdomGame::GPLogic1() {
 			EraseCursorAsm();
 			_cursorDrawn = false;
 			fadeToBlack2();
-			PlaySound(0);
-			PlayMovie(54);
+			playSound(0);
+			playMovie(54);
 			GPLogic1_SubSP10();
 			break;
 		default:
@@ -91,7 +91,7 @@ void KingdomGame::GPLogic1() {
 		EraseCursorAsm();
 		_cursorDrawn = false;
 		fadeToBlack2();
-		ShowPic(106);
+		showPic(106);
 		_statPlay = 30;
 		_userInput = 0;
 		_loopFlag = true;
@@ -100,7 +100,7 @@ void KingdomGame::GPLogic1() {
 		_nodeNum = 3;
 		_userInput = 0;
 		if (_nodes[3] == 0) {
-			PlayMovie(177);
+			playMovie(177);
 			_nodes[3] = 9;
 			if (!_wizard) {
 				_statPlay = 50;
@@ -114,10 +114,10 @@ void KingdomGame::GPLogic1() {
 		else
 			_sound = false;
 		
-		PlayMovie(7);
+		playMovie(7);
 		_statPlay = 31;
 		_currMap = 10;
-		PlaySound(24);
+		playSound(24);
 		_userInput = 0;
 		break;
 	case 31:
@@ -130,7 +130,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -146,20 +146,20 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (_nodes[4] == 0)
-			PlayMovie(62);
+			playMovie(62);
 		if (_nodes[4] == 9) {
-			PlayMovie(8);
+			playMovie(8);
 			_tsIconOnly = true;
 		}
 		_currMap = 10;
-		PlaySound(14);
+		playSound(14);
 		_statPlay = 41;
 		break;
 	case 41:
 		switch(_userInput) {
 		case 0x429:
-			PlayMovie(178);
-			PlayMovie(63);
+			playMovie(178);
+			playMovie(63);
 			InventoryDel(1);
 			_currMap = 10;
 			_nodes[4] = 9;
@@ -174,7 +174,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -190,23 +190,23 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		if (_nodes[5] != 0 && !_resurrect) {
 			_frameStop = 38;
-			PlayMovie(5);
+			playMovie(5);
 		}
 		
 		if (_nodes[5] == 0)
-			PlayMovie(5);
+			playMovie(5);
 		
 		_resurrect = false;
-		PlaySound(1);
+		playSound(1);
 		
 		if (_spell1 && _spell2 && _spell3) {
 			_sound = true;
-			PlayMovie(2);
+			playMovie(2);
 			_currMap = 10;
 			_statPlay = 51;
 			_loopFlag = true;
 		} else if (_daelonCntr) {
-			PlayMovie(2);
+			playMovie(2);
 			_currMap = 10;
 			_statPlay = 51;
 		} else {
@@ -215,31 +215,31 @@ void KingdomGame::GPLogic1() {
 				InventoryAdd(1);
 				break;
 			case 1:
-				PlayMovie(60);
+				playMovie(60);
 				InventoryAdd(0);
 				_spell1 = true;
 				break;
 			case 2:
-				PlayMovie(59);
+				playMovie(59);
 				InventoryAdd(2);
 				_spell2 = true;
 				break;
 			case 3:
 				_sound = true;
-				PlayMovie(59);
+				playMovie(59);
 				InventoryAdd(3);
 				_spell3 = true;
 				break;
 			}
 			if (_spell1 && _spell2 && _spell3) {
-				PlayMovie(6);
+				playMovie(6);
 				_currMap = 7;
 				_statPlay = 51;
 				_loopFlag = true;
 			} else {
 				_eye = false;
-				PlayMovie(61);
-				PlaySound(1);
+				playMovie(61);
+				playSound(1);
 
 				if (!_spell1)
 					DrawPic(116);
@@ -278,7 +278,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -294,7 +294,7 @@ void KingdomGame::GPLogic1() {
 		case 0x428:
 			_nodes[5] = 1;
 			_daelonCntr = 5;
-			PlayMovie(6);
+			playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
@@ -302,7 +302,7 @@ void KingdomGame::GPLogic1() {
 		case 0x42A:
 			_nodes[5] = 2;
 			_daelonCntr = 5;
-			PlayMovie(6);
+			playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
@@ -310,21 +310,21 @@ void KingdomGame::GPLogic1() {
 		case 0x42B:
 			_nodes[5] = 3;
 			_daelonCntr = 5;
-			PlayMovie(6);
+			playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
 			break;
 		case 0x43E:
 			if (!_spell1 && !_spell2 && !_spell3 && !_wizard) {
-				PlayMovie(177);
+				playMovie(177);
 				DrawLocation();
-				PlayMovie(5);
+				playMovie(5);
 			}
 
-			PlaySound(1);
+			playSound(1);
 			_eye = false;
-			PlayMovie(61);
+			playMovie(61);
 
 			if (!_spell1)
 				DrawPic(116);
@@ -346,11 +346,11 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (_nodes[4] == 0) {
-			DsAll();
-			PlayMovie(9);
+			dsAll();
+			playMovie(9);
 			_statPlay = 991;
 		} else {
-			PlayMovie(64);
+			playMovie(64);
 			_statPlay = 200;
 		}
 		_currMap = 10;
@@ -361,13 +361,13 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (_nodes[7] == 0) {
-			PlayMovie(11);
-			PlaySound(2);
+			playMovie(11);
+			playSound(2);
 			_currMap = 9;
 		} else {
 			_sound = true;
-			PlayMovie(13);
-			PlaySound(43);
+			playMovie(13);
+			playSound(43);
 			_currMap = 10;
 			_tsIconOnly = true;
 		}
@@ -379,8 +379,8 @@ void KingdomGame::GPLogic1() {
 			if (_nodes[7] == 9) {
 				DisplayIcon(137);
 			} else {
-				PlayMovie(12);
-				PlaySound(30);
+				playMovie(12);
+				playSound(30);
 				InventoryAdd(7);
 				_nodes[7] = 9;
 				_currMap = 10;
@@ -395,7 +395,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -411,14 +411,14 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (_nodes[8] == 9) {
-			PlayMovie(24);
-			PlaySound(3);
+			playMovie(24);
+			playSound(3);
 			_currMap = 13;
 			_tsIconOnly = true;
 		} else {
 			_nodes[8] = 0;
-			DsAll();
-			PlayMovie(14);
+			dsAll();
+			playMovie(14);
 			_currMap = 10;
 			SetATimer();
 		}
@@ -427,17 +427,17 @@ void KingdomGame::GPLogic1() {
 	case 81:
 		switch(_userInput) {
 		case 0x2F1:
-			DsAll();
-			PlayMovie(15);
+			dsAll();
+			playMovie(15);
 			_statPlay = 991;
 			_loopFlag = true;
 			break;
 		case 0x429:
 			if (!_nodes[8]) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(18);
-				PlaySound(3);
+				enAll();
+				playMovie(18);
+				playSound(3);
 				InventoryDel(1);
 				_userInput = 0;
 				_currMap = 13;
@@ -447,9 +447,9 @@ void KingdomGame::GPLogic1() {
 		case 0x42A:
 			if (!_nodes[8]) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(18);
-				PlaySound(3);
+				enAll();
+				playMovie(18);
+				playSound(3);
 				InventoryDel(2);
 				_userInput = 0;
 				_currMap = 13;
@@ -459,9 +459,9 @@ void KingdomGame::GPLogic1() {
 		case 0x42C:
 			if (!_nodes[8]) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(16);
-				PlaySound(3);
+				enAll();
+				playMovie(16);
+				playSound(3);
 				_nodes[8] = 9;
 				_tsIconOnly = true;
 				_currMap = 13;
@@ -469,10 +469,10 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42D:
 			if (!_nodes[8]) {
-				EnAll();
-				PlayMovie(17);
+				enAll();
+				playMovie(17);
 				InventoryDel(5);
-				PlaySound(3);
+				playSound(3);
 				_aTimer = 0;
 				_userInput = 0;
 				_currMap = 13;
@@ -487,7 +487,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			_aTimer = 0;
 			break;
 		case 0x453:
@@ -527,12 +527,12 @@ void KingdomGame::GPLogic1() {
 			if (!_wizard)
 				_frameStop = 90;
 
-			PlayMovie(19);
-			PlaySound(15);
+			playMovie(19);
+			playSound(15);
 			if (!_wizard)
-				ShowPic(109);
+				showPic(109);
 			else
-				ShowPic(319);
+				showPic(319);
 
 			_currMap = 10;
 			_statPlay = 91;
@@ -551,11 +551,11 @@ void KingdomGame::GPLogic1() {
 				_frameStop = 90;
 
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			if (!_wizard)
-				ShowPic(109);
+				showPic(109);
 			else
-				ShowPic(319);
+				showPic(319);
 			break;
 		default:
 			if (_userInput)
@@ -584,8 +584,8 @@ void KingdomGame::GPLogic1() {
 			} else if (_wizard)
 				_sound = true;
 
-			PlayMovie(20);
-			PlaySound(41);
+			playMovie(20);
+			playSound(41);
 			_currMap = 10;
 			_statPlay = 101;
 		}
@@ -600,7 +600,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -615,8 +615,8 @@ void KingdomGame::GPLogic1() {
 			_sound = false;
 		else
 			_sound = true;
-		PlayMovie(21);
-		PlaySound(42);
+		playMovie(21);
+		playSound(42);
 		_currMap = 10;
 		_statPlay = 111;
 		break;
@@ -629,7 +629,7 @@ void KingdomGame::GPLogic1() {
 			_userInput = 0;
 			break;
 		case 0x43E:
-			PlayMovie(21);
+			playMovie(21);
 			break;
 		default:
 			if (_userInput)
@@ -645,14 +645,14 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (_nodes[12] == 0) {
-			PlayMovie(22);
+			playMovie(22);
 			_currMap = 14;
 		} else {
-			PlayMovie(25);
+			playMovie(25);
 			_currMap = 15;
 		}
 		_eye = false;
-		PlaySound(3);
+		playSound(3);
 		_statPlay = 121;
 		break;
 	case 121:
@@ -681,8 +681,8 @@ void KingdomGame::GPLogic1() {
 				GPLogic1_SubSP121();
 			else {
 				_sound = _lastSound;
-				PlayMovie(_pMovie);
-				PlaySound(3);
+				playMovie(_pMovie);
+				playSound(3);
 			}
 			break;
 		default:
@@ -695,8 +695,8 @@ void KingdomGame::GPLogic1() {
 		_nodeNum = 13;
 		DrawLocation();
 		_userInput = 0;
-		DsAll();
-		PlayMovie(4);
+		dsAll();
+		playMovie(4);
 		_statPlay = 991;
 		_loopFlag = true;
 		break;
@@ -705,13 +705,13 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (Wound()) {
-			PlayMovie(26);
-			PlaySound(35);
+			playMovie(26);
+			playSound(35);
 			_currMap = 10;
 			_statPlay = 141;
 		} else {
-			DsAll();
-			PlayMovie(27);
+			dsAll();
+			playMovie(27);
 			_statPlay = 991;
 			_loopFlag = true;
 			_userInput = 0;
@@ -727,7 +727,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -741,8 +741,8 @@ void KingdomGame::GPLogic1() {
 	case 150:
 		_nodeNum = 15;
 		DrawLocation();
-		PlayMovie(28);
-		PlaySound(3);
+		playMovie(28);
+		playSound(3);
 		_currMap = 16;
 		_statPlay = 151;
 		_eye = false;
@@ -751,12 +751,12 @@ void KingdomGame::GPLogic1() {
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			_aTimer = 0;
 			break;
 		case 0x445:
 			_statPlay = 80;
-			EnAll();
+			enAll();
 			_loopFlag = true;
 			_userInput = 0;
 			break;
@@ -770,8 +770,8 @@ void KingdomGame::GPLogic1() {
 		_nodeNum = 16;
 		DrawLocation();
 		_userInput = 0;
-		PlayMovie(29);
-		PlaySound(3);
+		playMovie(29);
+		playSound(3);
 		_currMap = 85;
 		_statPlay = 161;
 		break;
@@ -779,13 +779,13 @@ void KingdomGame::GPLogic1() {
 		switch(_userInput) {
 		case 0x198: {
 			fadeToBlack1();
-			DrawRect(4, 17, 228, 161, 0);
+			drawRect(4, 17, 228, 161, 0);
 			_replay = true;
 			int oldPMovie = _pMovie;
-			PlayMovie(208);
+			playMovie(208);
 			_pMovie = oldPMovie;
 			_asMode = false;
-			RestoreAS();
+			restoreAS();
 			_help = true;
 			_eye = true;
 			_pouch = true;
@@ -794,13 +794,13 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x199: {
 			fadeToBlack1();
-			DrawRect(4, 17, 228, 161, 0);
+			drawRect(4, 17, 228, 161, 0);
 			_replay = true;
 			int oldPMovie = _pMovie;
-			PlayMovie(207);
+			playMovie(207);
 			_pMovie = oldPMovie;
 			_asMode = false;
-			RestoreAS();
+			restoreAS();
 			_help = true;
 			_eye = true;
 			_pouch = true;
@@ -808,15 +808,15 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x19A:
-			FShowPic(110);
+			fShowPic(110);
 			_bTimer = 190;
-			ReadMouse();
+			readMouse();
 			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
 				RefreshSound();
-				ReadMouse();
+				readMouse();
 			}
-			FShowPic(105);
+			fShowPic(105);
 			break;
 		case 0x42E:
 			_nodes[15] = 1;
@@ -832,19 +832,19 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			if (_pMovie > 206)
-				SaveAS();
+				saveAS();
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			if (_pMovie > 206)
-				RestoreAS();
+				restoreAS();
 			break;
 		case 0x444:
-			SaveAS();
+			saveAS();
 			_help = false;
 			_eye = false;
 			_pouch = false;
 			_replay = false;
-			FShowPic(105);
+			fShowPic(105);
 			_currMap = 86;
 			break;
 		case 0x445:
@@ -859,20 +859,20 @@ void KingdomGame::GPLogic1() {
 			_userInput = 0;
 			break;
 		case 0x450:
-			SaveAS();
-			FShowPic(123);
+			saveAS();
+			fShowPic(123);
 			_bTimer = 76;
-			ReadMouse();
+			readMouse();
 
 			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
 				RefreshSound();
-				ReadMouse();
+				readMouse();
 			}
 
 			fadeToBlack1();
-			DrawRect(4, 17, 228, 161, 0);
-			RestoreAS();
+			drawRect(4, 17, 228, 161, 0);
+			restoreAS();
 			break;	
 		default:
 			if (_userInput)
@@ -890,8 +890,8 @@ void KingdomGame::GPLogic1() {
 		} else {
 			_nodeNum = 17;
 			DrawLocation();
-			DsAll();
-			PlayMovie(30);
+			dsAll();
+			playMovie(30);
 			_currMap = 10;
 			_statPlay = 171;
 			SetATimer();
@@ -901,16 +901,16 @@ void KingdomGame::GPLogic1() {
 	case 171:
 		switch(_userInput) {
 		case 0x2F1:
-			EnAll();
+			enAll();
 			if (Wound()) {
 				_aTimer = 0;
 				_replay = false;
-				PlayMovie(31);
+				playMovie(31);
 				_statPlay = _nextNode;
 				_loopFlag = true;
 			} else {
-				DsAll();
-				PlayMovie(32);
+				dsAll();
+				playMovie(32);
 				_statPlay = 991;
 				_loopFlag = true;
 			}
@@ -918,8 +918,8 @@ void KingdomGame::GPLogic1() {
 		case 0x42C:
 			_aTimer = 0;
 			_replay = false;
-			EnAll();
-			PlayMovie(34);
+			enAll();
+			playMovie(34);
 			_userInput = 0;
 			_nodes[17] = 9;
 			_statPlay = _nextNode;
@@ -946,15 +946,15 @@ void KingdomGame::GPLogic1() {
 			_userInput = 0;
 			if (_nodes[18] == 0 || _nodes[18] == 1) {
 				_nodes[18] = 0;
-				PlayMovie(33);
+				playMovie(33);
 				_currMap = 10;
 			}
 			if (_nodes[18] == 9) {
-				PlayMovie(37);
+				playMovie(37);
 				_currMap = 19;
 				_tsIconOnly = true;
 			}
-			PlaySound(16);
+			playSound(16);
 			_statPlay = 181;
 		} else {
 			_statPlay = 170;
@@ -970,9 +970,9 @@ void KingdomGame::GPLogic1() {
 			_userInput = 0;
 			break;
 		case 0x428:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(0);
 			_userInput = 0;
 			break;
@@ -981,24 +981,24 @@ void KingdomGame::GPLogic1() {
 				InventoryDel(1);
 				_nodes[18] = true;
 			}
-			PlayMovie(35);
+			playMovie(35);
 			_userInput = 0;
 			break;
 		case 0x42A:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(2);
 			_userInput = 0;
 			break;
 		case 0x42C:
-			SaveAS();
-			PlayMovie(34);
-			RestoreAS();
+			saveAS();
+			playMovie(34);
+			restoreAS();
 			break;
 		case 0x42F:
 			if (_nodes[18] == 1) {
-				PlayMovie(36);
+				playMovie(36);
 				InventoryDel(7);
 				_nodes[18] = 9;
 				_currMap = 19;
@@ -1006,7 +1006,7 @@ void KingdomGame::GPLogic1() {
 			} else {
 				_frameStop = 27;
 				_fstFwd = false;
-				PlayMovie(36);
+				playMovie(36);
 				_fstFwd = true;
 			}
 			_userInput = 0;
@@ -1026,10 +1026,10 @@ void KingdomGame::GPLogic1() {
 			if (_pMovie == 36 && _nodes[18] != 9) {
 				_frameStop = 27;
 				_fstFwd = false;
-				PlayMovie(36);
+				playMovie(36);
 				_fstFwd = true;
 			} else
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -1044,8 +1044,8 @@ void KingdomGame::GPLogic1() {
 		_nodeNum = 19;
 		DrawLocation();
 		_userInput = 0;
-		DsAll();
-		PlayMovie(38);
+		dsAll();
+		playMovie(38);
 		_statPlay = 991;
 		_loopFlag = true;
 		break;
@@ -1054,14 +1054,14 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (!_nodes[20]) {
-			PlayMovie(39);
+			playMovie(39);
 			IncreaseHealth();
 		} else {
-			PlayMovie(40);
+			playMovie(40);
 			_tideCntl = true;
 			DrawPic(178);
 		}
-		PlaySound(42);
+		playSound(42);
 		_currMap = 10;
 		_statPlay = 201;
 		break;
@@ -1075,7 +1075,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -1091,12 +1091,12 @@ void KingdomGame::GPLogic1() {
 
 		if (_nodes[21] == 9) {
 			_nodes[21] = 9;
-			PlayMovie(209);
-			PlaySound(38);
+			playMovie(209);
+			playSound(38);
 			_currMap = 81;
 		} else {
-			DsAll();
-			PlayMovie(45);
+			dsAll();
+			playMovie(45);
 			_nodes[21] = 0;
 			_currMap = 10;
 			SetATimer();
@@ -1106,22 +1106,22 @@ void KingdomGame::GPLogic1() {
 	case 211:
 		switch(_userInput) {
 		case 0x2F1:
-			DsAll();
-			PlayMovie(46);
+			dsAll();
+			playMovie(46);
 			_statPlay = 991;
 			_loopFlag = true;
 			break;
 		case 0x428:
 			InventoryDel(0);
 			if (_nodes[21] == 9) {
-				SaveAS();
-				PlayMovie(65);
-				RestoreAS();
+				saveAS();
+				playMovie(65);
+				restoreAS();
 				_userInput = 0;
 			} else {
-				PlayMovie(178);
-				DsAll();
-				PlayMovie(46);
+				playMovie(178);
+				dsAll();
+				playMovie(46);
 				_statPlay = 991;
 				_loopFlag = true;
 			}
@@ -1129,21 +1129,21 @@ void KingdomGame::GPLogic1() {
 		case 0x42A:
 			if (!_nodes[21]) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(48);
+				enAll();
+				playMovie(48);
 				InventoryDel(2);
 				_nodes[21] = 1;
 				_tsIconOnly = true;
-				PlaySound(38);
+				playSound(38);
 				_userInput = 0;
 			}
 			break;
 		case 0x42D:
 			if (!_nodes[21]) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(47);
-				PlaySound(38);
+				enAll();
+				playMovie(47);
+				playSound(38);
 				InventoryDel(5);
 				_nodes[21] = 9;
 				_userInput = 0;
@@ -1159,13 +1159,13 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			if (_pMovie == 65) {
-				SaveAS();
-				PlayMovie(65);
-				RestoreAS();
+				saveAS();
+				playMovie(65);
+				restoreAS();
 				_userInput = 0;
 			} else {
 				_sound = _lastSound;
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 			}
 			break;
 		case 0x441:
@@ -1176,10 +1176,10 @@ void KingdomGame::GPLogic1() {
 		case 0x442:
 			if (_tsIconOnly) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(49);
+				enAll();
+				playMovie(49);
 				_tsIconOnly = false;
-				PlaySound(38);
+				playSound(38);
 				_userInput = 0;
 			}
 			break;
@@ -1209,35 +1209,35 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (!_nodes[22]) {
-			PlayMovie(41);
+			playMovie(41);
 			_currMap = 82;
 		} else {
 			_tsIconOnly = true;
-			PlayMovie(44);
+			playMovie(44);
 			_currMap = 10;
 		}
-		PlaySound(38);
+		playSound(38);
 		_statPlay = 221;
 		break;
 	case 221:
 		switch(_userInput) {
 		case 0x428:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(0);
 			_userInput = 0;
 			break;
 		case 0x429:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(1);
 			_userInput = 0;
 			break;
 		case 0x42A:
-			PlayMovie(42);
-			PlaySound(30);
+			playMovie(42);
+			playSound(30);
 			if (!_nodes[22]) {
 				InventoryDel(2);
 				InventoryAdd(4);
@@ -1248,14 +1248,14 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x42C:
 			if (!_nodes[22]) {
-				DsAll();
-				PlayMovie(43);
-				PlaySound(34);
+				dsAll();
+				playMovie(43);
+				playSound(34);
 				_statPlay = 991;
 				_loopFlag = true;
 			} else {
-				PlayMovie(42);
-				PlaySound(30);
+				playMovie(42);
+				playSound(30);
 			}
 			break;
 		case 0x43A:
@@ -1266,7 +1266,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -1281,8 +1281,8 @@ void KingdomGame::GPLogic1() {
 		_nodeNum = 23;
 		DrawLocation();
 		_userInput = 0;
-		DsAll();
-		PlayMovie(50);
+		dsAll();
+		playMovie(50);
 		_statPlay = 991;
 		_loopFlag = true;
 		break;
@@ -1291,48 +1291,48 @@ void KingdomGame::GPLogic1() {
 		DrawLocation();
 		_userInput = 0;
 		if (!_nodes[24]) {
-			PlayMovie(51);
+			playMovie(51);
 			_currMap = 83;
 		} else {
-			PlayMovie(53);
-			ShowPic(119);
+			playMovie(53);
+			showPic(119);
 			_currMap = 84;
 			_tsIconOnly = true;
 		}
-		PlaySound(4);
+		playSound(4);
 		_statPlay = 241;
 		break;
 	case 241:
 		switch(_userInput) {
 		case 0x428:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(0);
 			break;
 		case 0x429:
 			if (_nodes[24] != 9) {
 				_tsIconOnly = true;
-				PlayMovie(66);
+				playMovie(66);
 				InventoryDel(1);
 				_currMap = 84;
 				_nodes[24] = 9;
 			}
 			break;
 		case 0x42A:
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			InventoryDel(2);
 			break;
 		case 0x42D:
 			if (_inventory[5] >= 1)
 				DisplayIcon(135);
 			else {
-				SaveAS();
-				PlayMovie(52);
-				PlaySound(30);
-				RestoreAS();
+				saveAS();
+				playMovie(52);
+				playSound(30);
+				restoreAS();
 				InventoryAdd(5);
 				_userInput = 0;
 			}
@@ -1346,11 +1346,11 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			_sound = _lastSound;
 			if (_pMovie == 53) {
-				PlayMovie(53);
-				ShowPic(119);
+				playMovie(53);
+				showPic(119);
 				_currMap = 84;
 			} else
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 			break;
 		case 0x441:
 			_currMap = 10;
@@ -1371,11 +1371,11 @@ void KingdomGame::GPLogic1() {
 }
 
 void KingdomGame::GPLogic1_SubSP10() {
-	PlaySound(0);
-	PlaySound(18);
+	playSound(0);
+	playSound(18);
 	fadeToBlack2();
-	ShowPic(115);
-	ShowPic(114);
+	showPic(115);
+	showPic(114);
 
 	_currMap = 4;
 	_userInput = 0;
@@ -1384,24 +1384,24 @@ void KingdomGame::GPLogic1_SubSP10() {
 }
 
 void KingdomGame::GPLogic1_SubSP121() {
-	PlayMovie(23);
-	PlaySound(30);
+	playMovie(23);
+	playSound(30);
 	_bTimer = 190;
-	ReadMouse();
+	readMouse();
 	
 	while (_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
-		ReadMouse();
+		readMouse();
 	}
 	
-	PlaySound(23);
+	playSound(23);
 	InventoryAdd(15);
 	_currMap = 10;
-	FShowPic(150);
+	fShowPic(150);
 	_nodes[12] = 9;
-	PlaySound(3);
+	playSound(3);
 	_currMap = 15;
 }
 
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 39310c337e..3072a94d74 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -31,22 +31,22 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 25;
 
 		DrawLocation();
-		DsAll();
+		dsAll();
 		if (_nodes[24] != 0 || highNode) {
 			_eye = true;
-			PlayMovie(72);
+			playMovie(72);
 			_aTimerFlag = false;
 			_aTimer = 114;
-			PlaySound(34);
+			playSound(34);
 			_userInput = 0;
 			_currMap = 10;
 			_statPlay = 251;
 		} else {
 			_frameStop = 67;
-			PlayMovie(72);
-			DsAll();
-			PlayMovie(73);
-			DsAll();
+			playMovie(72);
+			dsAll();
+			playMovie(73);
+			dsAll();
 			_statPlay = 991;
 			_loopFlag = true;
 		}
@@ -56,8 +56,8 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			PlayMovie(73);
-			DsAll();
+			playMovie(73);
+			dsAll();
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
@@ -76,8 +76,8 @@ void KingdomGame::GPLogic2() {
 	case 260:
 		_nodeNum = 26;
 		DrawLocation();
-		DsAll();
-		PlayMovie(74);
+		dsAll();
+		playMovie(74);
 		_currMap = 10;
 		SetATimer();
 		_statPlay = 261;
@@ -87,33 +87,33 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(75);
+			dsAll();
+			playMovie(75);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
 		case 0x428:
 			InventoryDel(0);
 			_aTimer = 0;
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			SetATimer();
 			_userInput = 0;
 			break;
 		case 0x42A:
 			InventoryDel(2);
 			_aTimer = 0;
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			SetATimer();
 			_userInput = 0;
 			break;
 		case 0x42C:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(76);
+			enAll();
+			playMovie(76);
 			_nodes[26] = 1;
 			_userInput = 0;
 			_statPlay = 290;
@@ -124,15 +124,15 @@ void KingdomGame::GPLogic2() {
 		case 0x42D:
 			if (Wound()) {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(77);
-				PlaySound(34);
+				enAll();
+				playMovie(77);
+				playSound(34);
 				InventoryDel(5);
 				_statPlay = 300;
 				_loopFlag = true;
 			} else {
-				DsAll();
-				PlayMovie(78);
+				dsAll();
+				playMovie(78);
 				_statPlay = 992;
 				_loopFlag = true;
 			}
@@ -151,8 +151,8 @@ void KingdomGame::GPLogic2() {
 			_sound = false;
 			_nodes[28] = 1;
 		}
-		PlayMovie(80);
-		PlaySound(18);
+		playMovie(80);
+		playSound(18);
 		_currMap = 10;
 		_statPlay = 271;
 		_nodes[28] = 1;
@@ -168,7 +168,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -179,13 +179,13 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 28;
 		DrawLocation();
 		_userInput = 0;
-		DsAll();
+		dsAll();
 		_fstFwd = false;
-		PlayMovie(81);
+		playMovie(81);
 		_currMap = 10;
 		_nodes[29] = _nodes[39] = 1;
 		_statPlay = _robberyNode * 10;
-		EnAll();
+		enAll();
 		_loopFlag = true;
 		break;
 	case 290:
@@ -200,7 +200,7 @@ void KingdomGame::GPLogic2() {
 			_nextNode = 29;
 		} else {
 			if (_nodes[26] == 2)
-				PlayMovie(79);
+				playMovie(79);
 			_nodeNum = 29;
 			if (_nodes[26] <= 2 || !ChkDesertObstacles()) {
 				DrawLocation();
@@ -209,31 +209,31 @@ void KingdomGame::GPLogic2() {
 				switch (_nodes[30]) {
 				case 0:
 					_sound = false;
-					PlayMovie(82);
+					playMovie(82);
 					_currMap = 89;
 					_nodes[30] = 1;
 					break;
 				case 1:
 					_sound = true;
-					PlayMovie(82);
+					playMovie(82);
 					_currMap = 89;
 					_nodes[30] = 0;
 					break;
 				case 8:
 					_sound = false;
-					PlayMovie(85);
+					playMovie(85);
 					_currMap = 10;
 					_nodes[30] = 9;
 					_tsIconOnly = true;
 					break;
 				default:
 					_sound = true;
-					PlayMovie(85);
+					playMovie(85);
 					_currMap = 10;
 					_tsIconOnly = true;
 					break;
 				}
-				PlaySound(17);
+				playSound(17);
 				_statPlay = 291;
 			}
 		}
@@ -243,8 +243,8 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x431:
 			_tsIconOnly = true;
-			PlayMovie(83);
-			PlaySound(30);
+			playMovie(83);
+			playSound(30);
 			InventoryAdd(10);
 			_nodes[30] = 8;
 			_userInput = 0;
@@ -254,8 +254,8 @@ void KingdomGame::GPLogic2() {
 			if (_nodes[30] >= 8)
 				DisplayIcon(140);
 			else {
-				DsAll();
-				PlayMovie(84);
+				dsAll();
+				playMovie(84);
 				_statPlay = 992;
 				_loopFlag = true;
 			}
@@ -268,7 +268,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -283,8 +283,8 @@ void KingdomGame::GPLogic2() {
 			_nodeNum = 30;
 			if (!ChkDesertObstacles()) {
 				DrawLocation();
-				PlayMovie(86);
-				PlaySound(18);
+				playMovie(86);
+				playSound(18);
 				_currMap = 10;
 				_statPlay = 301;
 			}
@@ -300,7 +300,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		} 
 		break;
@@ -312,8 +312,8 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 31;
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
-			PlayMovie(67);
-			PlaySound(18);
+			playMovie(67);
+			playSound(18);
 			_currMap = 90;
 			_statPlay = 311;
 			_nodes[32] = 1;
@@ -331,12 +331,12 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x449:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(68);
+			dsAll();
+			playMovie(68);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;			
@@ -358,8 +358,8 @@ void KingdomGame::GPLogic2() {
 			_sound = true;
 			_nodes[33] = 1;
 		}
-		PlayMovie(87);
-		PlaySound(18);
+		playMovie(87);
+		playSound(18);
 		_currMap = 10;
 		_statPlay = 321;
 		break;
@@ -373,7 +373,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -390,8 +390,8 @@ void KingdomGame::GPLogic2() {
 				_sound = false;
 			else
 				_sound = true;
-			PlayMovie(88);
-			PlaySound(18);
+			playMovie(88);
+			playSound(18);
 			_currMap = 10;
 			_statPlay = 331;
 		}
@@ -406,7 +406,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -425,16 +425,16 @@ void KingdomGame::GPLogic2() {
 				DrawLocation();
 				_userInput = 0;
 				if (_nodes[35] == 9 || _nodes[41] == 0 || !_wizard) {
-					PlayMovie(91);
+					playMovie(91);
 					_currMap = 92;
 				} else {
-					PlayMovie(89);
-					ShowPic(389);
+					playMovie(89);
+					showPic(389);
 					_currMap = 91;
 				}
 				if (_nodes[35] == 9)
 					_tsIconOnly = true;
-				PlaySound(26);
+				playSound(26);
 				_statPlay = 341;
 			}
 		}
@@ -445,7 +445,7 @@ void KingdomGame::GPLogic2() {
 			if (_nodes[35] == 9)
 				DisplayIcon(139);
 			else {
-				PlayMovie(90);
+				playMovie(90);
 				InventoryAdd(9);
 				_nodes[35] = 9;
 				_currMap = 93;
@@ -459,9 +459,9 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			if (_pMovie == 89)
-				ShowPic(389);
+				showPic(389);
 			break;
 		case 0x445:
 			_statPlay = 410;
@@ -489,8 +489,8 @@ void KingdomGame::GPLogic2() {
 		} else {
 			_nodeNum = 35;
 			DrawLocation();
-			DsAll();
-			PlayMovie(92);
+			dsAll();
+			playMovie(92);
 			_currMap = 94;
 			SetATimer();
 			_userInput = 0;
@@ -503,21 +503,21 @@ void KingdomGame::GPLogic2() {
 		case 0x429:
 			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
-			PlayMovie(178);
+			playMovie(178);
 			_userInput = 0x2F1;
 			_loopFlag = true;
 		// No break on purpose
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(93);
+			dsAll();
+			playMovie(93);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
 		case 0x42A:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(179);
+			enAll();
+			playMovie(179);
 			InventoryDel(2);
 			_nodes[36] = 1;
 			_userInput = 0;
@@ -536,8 +536,8 @@ void KingdomGame::GPLogic2() {
 		else
 			_sound = true;
 		_frameStop = 185;
-		DsAll();
-		PlayMovie(94);
+		dsAll();
+		playMovie(94);
 		_currMap = 95;
 		SetATimer();
 		_userInput = 0;
@@ -547,17 +547,17 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(95);
+			dsAll();
+			playMovie(95);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
 		case 0x428:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(97);
+			enAll();
+			playMovie(97);
 			InventoryDel(0);
-			PlaySound(5);
+			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
 			_currMap = 10;
@@ -572,10 +572,10 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42A:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(98);
+			enAll();
+			playMovie(98);
 			InventoryDel(2);
-			PlaySound(5);
+			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
 			_currMap = 10;
@@ -583,10 +583,10 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42E:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(100);
+			enAll();
+			playMovie(100);
 			InventoryDel(6);
-			PlaySound(5);
+			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
 			_currMap = 10;
@@ -594,9 +594,9 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x431:
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(96);
-			PlaySound(5);
+			enAll();
+			playMovie(96);
+			playSound(5);
 			_nodes[37] = 9;
 			_userInput = 0;
 			_currMap = 10;
@@ -607,8 +607,8 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x437:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(99);
+			dsAll();
+			playMovie(99);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
@@ -620,7 +620,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -632,8 +632,8 @@ void KingdomGame::GPLogic2() {
 		DrawLocation();
 		_userInput = 0;
 		_nodes[38] = 0;
-		PlayMovie(102);
-		PlaySound(20);
+		playMovie(102);
+		playSound(20);
 		_currMap = 109;
 		_statPlay = 371;
 		break;
@@ -652,7 +652,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -665,9 +665,9 @@ void KingdomGame::GPLogic2() {
 		if (!ChkDesertObstacles()) {
 			DrawLocation();
 			_userInput = 0;
-			PlayMovie(159);
+			playMovie(159);
 			_currMap = 10;
-			PlaySound(7);
+			playSound(7);
 			_nodes[39] = 1;
 			_statPlay = 381;
 		}
@@ -679,23 +679,23 @@ void KingdomGame::GPLogic2() {
 		case 0x42A:
 			if (_wizard && _nodes[39] != 9) {
 				InventoryDel(_userInput - 0x428);
-				SaveAS();
-				PlayMovie(178);
-				RestoreAS();
+				saveAS();
+				playMovie(178);
+				restoreAS();
 			}
 			_userInput = 0;
 			break;
 		case 0x430:
 			if (_wizard && _nodes[39] != 9) {
-				DsAll();
-				PlayMovie(162);
+				dsAll();
+				playMovie(162);
 				_statPlay = 992;
 				_loopFlag = true;
 			}
 			break;
 		case 0x433:
 			if (_wizard && _nodes[39] != 9) {
-				PlayMovie(161);
+				playMovie(161);
 				InventoryDel(11);
 				_nodes[51] = 0;
 				_userInput = 0;
@@ -704,7 +704,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x435:
 			if (_wizard && _nodes[39] != 9) {
-				PlayMovie(160);
+				playMovie(160);
 				InventoryDel(13);
 				_nodes[39] = 9;
 				_nodes[59] = 0;
@@ -715,7 +715,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x437:
 			if (_wizard && _nodes[39] != 9) {
-				PlayMovie(163);
+				playMovie(163);
 				InventoryDel(15);
 				_nodes[12] = 0;
 			}
@@ -729,7 +729,7 @@ void KingdomGame::GPLogic2() {
 		break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x456:
 			_statPlay = 370;
@@ -748,9 +748,9 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 39;
 		DrawLocation();
 		_aTimer = 0;
-		DsAll();
-		PlayMovie(104);
-		PlaySound(34);
+		dsAll();
+		playMovie(104);
+		playSound(34);
 		_statPlay = 992;
 		_loopFlag = true;
 		break;
@@ -766,8 +766,8 @@ void KingdomGame::GPLogic2() {
 				_sound = true;
 			}
 		} else {
-			DsAll();
-			PlayMovie(105);
+			dsAll();
+			playMovie(105);
 			_currMap = 10;
 			SetATimer();
 		}
@@ -779,8 +779,8 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(106);
+			dsAll();
+			playMovie(106);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
@@ -790,7 +790,7 @@ void KingdomGame::GPLogic2() {
 			if (!_nodes[41]) {
 				InventoryDel(_userInput - 0x428);
 				_aTimer = 0;
-				PlayMovie(178);
+				playMovie(178);
 				_userInput = 753;
 				_loopFlag = true;
 				_currMap = 10;
@@ -799,8 +799,8 @@ void KingdomGame::GPLogic2() {
 		case 0x42C:
 			if (!_nodes[41]) {
 				_aTimer = 0;
-				DsAll();
-				PlayMovie(108);
+				dsAll();
+				playMovie(108);
 				_userInput = 0;
 				_statPlay = 992;
 				_loopFlag = true;
@@ -809,7 +809,7 @@ void KingdomGame::GPLogic2() {
 		case 0x42E:
 			if (!_nodes[41]) {
 				_aTimer = 0;
-				PlayMovie(109);
+				playMovie(109);
 				InventoryDel(6);
 				_nodes[43] = 0;
 				_userInput = 0;
@@ -823,8 +823,8 @@ void KingdomGame::GPLogic2() {
 				_replay = true;
 				_pouch = true;
 				_fstFwd = true;
-				PlayMovie(107);
-				PlaySound(26);
+				playMovie(107);
+				playSound(26);
 				_nodes[41] = 1;
 				_userInput = 0;
 				_currMap = 96;
@@ -835,7 +835,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43E:
 			_aTimer = 0;
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x441:
 			_statPlay = 460;
@@ -857,8 +857,8 @@ void KingdomGame::GPLogic2() {
 			_sound = true;
 
 		_eye = false;
-		PlayMovie(111);
-		PlaySound(26);
+		playMovie(111);
+		playSound(26);
 		_currMap = 97;
 		_statPlay = 411;
 		break;
@@ -867,18 +867,18 @@ void KingdomGame::GPLogic2() {
 		case 0x43E:
 			_sound = _lastSound;
 			if (_pMovie == 120) {
-				SaveAS();
+				saveAS();
 				_frameStop = 50;
-				PlayMovie(120);
+				playMovie(120);
 				_bTimer = 34;
 				while(_bTimer != 0) {
 					checkTimers();
 					RefreshSound();
 					CheckMainScreen();
 				}
-				RestoreAS();
+				restoreAS();
 			}
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_userInput = 0;
@@ -913,9 +913,9 @@ void KingdomGame::GPLogic2() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			_userInput = 0;
 			break;
 		case 0x42E:
@@ -927,7 +927,7 @@ void KingdomGame::GPLogic2() {
 				} else {
 					_sound = true;
 				}
-				PlayMovie(113);
+				playMovie(113);
 				InventoryAdd(6);
 				_nodes[43] = 9;
 				_currMap = 10;
@@ -942,7 +942,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		
 		}
@@ -957,18 +957,18 @@ void KingdomGame::GPLogic2() {
 		_userInput = 0;
 		if (_nodes[44] == 9) {
 			_tsIconOnly = true;
-			PlayMovie(118);
+			playMovie(118);
 			_currMap = 80;
 		} else if (_inventory[12] <= 0) {
-			PlayMovie(115);
-			ShowPic(415);
+			playMovie(115);
+			showPic(415);
 			_currMap = 78;
 			if (!_skylarTimer)
 				_skylarTimer = 5400;
 		} else {
 			_skylarTimer = 0;
-			PlayMovie(116);
-			PlaySound(25);
+			playMovie(116);
+			playSound(25);
 			InventoryDel(12);
 			InventoryAdd(16);
 			_nodes[44] = 9;
@@ -976,13 +976,13 @@ void KingdomGame::GPLogic2() {
 			_tsIconOnly = true;
 		}
 		_statPlay = 431;
-		PlaySound(20);
+		playSound(20);
 		_eye = false;
 		break;
 	case 431:
 		switch(_userInput) {
 			case 0x40A:
-				PlayMovie(10);
+				playMovie(10);
 				_statPlay = 200;
 				if (_nodes[44] != 9)
 					_nodes[20] = 1;
@@ -990,19 +990,19 @@ void KingdomGame::GPLogic2() {
 				_loopFlag = true;
 				break;
 			case 0x414:
-				PlayMovie(10);
+				playMovie(10);
 				_statPlay = 390;
 				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x41D:
-				PlayMovie(10);
+				playMovie(10);
 				_statPlay = 500;
 				_currMap = 10;
 				_loopFlag = true;
 				break;
 			case 0x422:
-				PlayMovie(10);
+				playMovie(10);
 				_statPlay = 380;
 				_currMap = 10;
 				_loopFlag = true;
@@ -1012,17 +1012,17 @@ void KingdomGame::GPLogic2() {
 			case 0x42A:
 				if (_nodes[44] != 9) {
 					InventoryDel(_userInput - 0x428);
-					SaveAS();
-					PlayMovie(178);
-					RestoreAS();
+					saveAS();
+					playMovie(178);
+					restoreAS();
 				}
 				break;
 			case 0x438:
 				if (_nodes[44] == 9) {
 					DisplayIcon(146);
 				} else {
-					DsAll();
-					PlayMovie(117);
+					dsAll();
+					playMovie(117);
 					_statPlay = 992;
 					_loopFlag = true;
 				}
@@ -1038,8 +1038,8 @@ void KingdomGame::GPLogic2() {
 		if (_inventory[12] > 0 || _nodes[44] == 9)
 			_sound = true;
 
-		PlayMovie(119);
-		PlaySound(20);
+		playMovie(119);
+		playSound(20);
 		_currMap = 100;
 		_statPlay = 441;
 		break;
@@ -1053,7 +1053,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x452:
 			_statPlay = 430;
@@ -1069,15 +1069,15 @@ void KingdomGame::GPLogic2() {
 		_nodeNum = 45;
 		_userInput = 0;
 		if (!_nodes[41]) {
-			DsAll();
-			PlayMovie(120);
+			dsAll();
+			playMovie(120);
 			_statPlay = 992;
 			_currMap = 10;
 			_loopFlag = true;
 		} else {
 			_fstFwd = false;
 			_frameStop = 50;
-			PlayMovie(120);
+			playMovie(120);
 			_currMap = 17;
 			_statPlay = 451;
 		}
@@ -1088,9 +1088,9 @@ void KingdomGame::GPLogic2() {
 			_sound = _lastSound;
 			_fstFwd = false;
 			_frameStop = 50;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			_currMap = 17;
-			PlaySound(26);
+			playSound(26);
 			break;
 		case 0x441:
 			_statPlay = 410;
@@ -1110,8 +1110,8 @@ void KingdomGame::GPLogic2() {
 			_nodes[47] = 0;
 			_sound = true;
 		}
-		PlayMovie(121);
-		PlaySound(26);
+		playMovie(121);
+		playSound(26);
 		_currMap = 107;
 		_statPlay = 461;
 		break;
@@ -1119,7 +1119,7 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 340;
@@ -1142,7 +1142,7 @@ void KingdomGame::GPLogic2() {
 	case 480:
 		_nodeNum = 48;
 		_userInput = 0;
-		PlayMovie(114);
+		playMovie(114);
 		_currMap = 10;
 		_statPlay = 481;
 		_nodes[49] = 1;
@@ -1157,7 +1157,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		}
 		break;
@@ -1167,9 +1167,9 @@ void KingdomGame::GPLogic2() {
 	case 490:
 		_nodeNum = 49;
 		DrawLocation();
-		DsAll();
-		PlayMovie(180);
-		PlaySound(18);
+		dsAll();
+		playMovie(180);
+		playSound(18);
 		_currMap = 101;
 		_statPlay = 491;
 		_aTimer = 0;
@@ -1182,13 +1182,13 @@ void KingdomGame::GPLogic2() {
 		case 0x42B:
 			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
-			PlayMovie(178);
+			playMovie(178);
 			_userInput = 753;
 			_loopFlag = true;
 			_currMap = 10;
 			break;
 		case 0x442:
-			PlayMovie(182);
+			playMovie(182);
 			_statPlay = 992;
 			_loopFlag = true;
 			break;
@@ -1196,8 +1196,8 @@ void KingdomGame::GPLogic2() {
 			_currMap = 10;
 			_userInput = 0;
 			_aTimer = 0;
-			EnAll();
-			PlayMovie(181);
+			enAll();
+			playMovie(181);
 			_nodes[29] = 9;
 			_nodes[49] = 0;
 			_statPlay = _nextNode * 10;
@@ -1209,9 +1209,9 @@ void KingdomGame::GPLogic2() {
 }
 
 void KingdomGame::GPLogic2_SubSP361() {
-	EnAll();
+	enAll();
 	_userInput = 0;
-	PlaySound(19);
+	playSound(19);
 	if (_nodes[29] == 1) {
 		_statPlay = 480;
 		_loopFlag = true;
@@ -1224,12 +1224,12 @@ void KingdomGame::GPLogic2_SubSP361() {
 				_sound = true;
 				_nodes[43] = 2;
 			}
-			PlayMovie(122);
+			playMovie(122);
 			_currMap = 10;
 			_tsIconOnly = true;
 			_statPlay = 421;
 		} else {
-			PlayMovie(112);
+			playMovie(112);
 			_currMap = 98;
 			_statPlay = 421;
 		}
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 19b76ebffb..356fb7a43e 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -35,24 +35,24 @@ void KingdomGame::GPLogic3() {
 			_nodes[51] = 1;
 		switch(_nodes[51]) {
 		case 0:
-			PlayMovie(123);
+			playMovie(123);
 			_currMap = 102;
 			break;
 		case 1:
 			_nodes[51] = 2;
-			PlayMovie(126);
+			playMovie(126);
 			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		default:
 			_nodes[51] = 1;
 			_sound = true;
-			PlayMovie(126);
+			playMovie(126);
 			_currMap = 10;
 			_tsIconOnly = true;
 			break;
 		}
-		PlaySound(29);
+		playSound(29);
 		_statPlay = 501;
 		break;
 	case 501:
@@ -62,16 +62,16 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			if (!_nodes[51]) {
 				InventoryDel(_userInput - 0x428);
-				SaveAS();
-				PlayMovie(178);
-				RestoreAS();
+				saveAS();
+				playMovie(178);
+				restoreAS();
 				_userInput = 0;
 			}
 			break;
 		case 0x433:
 			if (!_nodes[51]) {
-				DsAll();
-				PlayMovie(125);
+				dsAll();
+				playMovie(125);
 				_statPlay = 993;
 				_loopFlag = true;
 			} else
@@ -80,7 +80,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x439:
 			if (!_nodes[51]) {
-				PlayMovie(124);
+				playMovie(124);
 				_nodes[51] = 1;
 				InventoryAdd(11);
 				_userInput = 0;
@@ -95,7 +95,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -110,9 +110,9 @@ void KingdomGame::GPLogic3() {
 		_nodeNum = 51;
 		DrawLocation();
 		_userInput = 0;
-		PlayMovie(129);
+		playMovie(129);
 		_currMap = 10;
-		PlaySound(6);
+		playSound(6);
 		_statPlay = 511;
 		break;
 	case 511:
@@ -121,12 +121,12 @@ void KingdomGame::GPLogic3() {
 			if (_inventory[6] >= 1)
 				DisplayIcon(142);
 			else {
-				PlayMovie(128);
+				playMovie(128);
 				_nodes[52] = 9;
 				InventoryAdd(12);
 				_userInput = 0;
 				_currMap = 10;
-				PlaySound(30);
+				playSound(30);
 			}
 			break;
 		case 0x43A:
@@ -136,16 +136,16 @@ void KingdomGame::GPLogic3() {
 			_userInput = 0;
 			break;
 		case 0x43E:
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x457:
 			_tideCntl = false;
 			DrawPic(179);
-			PlayMovie(127);
+			playMovie(127);
 			_currMap = 103;
 			_userInput = 0;
-			PlaySound(0);
-			PlaySound(6);
+			playSound(0);
+			playSound(6);
 			break;
 		default:
 			if (_userInput)
@@ -166,10 +166,10 @@ void KingdomGame::GPLogic3() {
 			_sound = true;
 			_nodes[53] = false;
 		}
-		PlayMovie(130);
+		playMovie(130);
 		_currMap = 111;
 		_statPlay = 521;
-		PlaySound(31);
+		playSound(31);
 		break;
 	case 521:
 		switch(_userInput) {
@@ -185,7 +185,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -208,29 +208,29 @@ void KingdomGame::GPLogic3() {
 			_tsIconOnly = true;
 		}
 		_eye = false;
-		PlayMovie(70);
+		playMovie(70);
 		_currMap = 99;
-		PlaySound(8);
+		playSound(8);
 		_statPlay = 531;
 		break;
 	case 531:
 		switch(_userInput) {
 		case 0x428:
 			if (_nodes[54] == 0) {
-				PlayMovie(71);
+				playMovie(71);
 				InventoryAdd(14);
 				InventoryDel(0);
 				_tsIconOnly = true;
-				PlaySound(25);
+				playSound(25);
 			}
 			_userInput = 0;
 			break;
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -239,17 +239,17 @@ void KingdomGame::GPLogic3() {
 				_frameStop = 24;
 			if (!_wizard && _pMovie == 70)
 				_frameStop = 24;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_nodeNum = 56;
 			_userInput = 0;
 			_frameStop = 50;
-			EnAll();
-			PlayMovie(135);
+			enAll();
+			playMovie(135);
 			_currMap = 106;
 			_nodes[57] = 1;
-			PlaySound(8);
+			playSound(8);
 			_tsIconOnly = true;
 			_statPlay = 561;
 			break;
@@ -281,10 +281,10 @@ void KingdomGame::GPLogic3() {
 			_currMap = 112;
 		}
 
-		PlayMovie(132);
-		ShowPic(432);
+		playMovie(132);
+		showPic(432);
 		_statPlay = 541;
-		PlaySound(22);
+		playSound(22);
 		break;
 	case 541:
 		switch(_userInput) {
@@ -301,14 +301,14 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
-			ShowPic(432);
+			playMovie(_pMovie);
+			showPic(432);
 			break;
 		case 0x453:
 			_sound = _lastSound;
-			PlayMovie(131);
-			PlaySound(32);
-			FShowPic(432);
+			playMovie(131);
+			playSound(32);
+			fShowPic(432);
 			// Useless, but present in the original
 			// _CurrMap = 10;
 			_currMap = 55;
@@ -326,38 +326,38 @@ void KingdomGame::GPLogic3() {
 		_nodeNum = 55;
 		DrawLocation();
 		_userInput = 0;
-		PlayMovie(133);
+		playMovie(133);
 		if (_nodes[56] != 9)
 			_nodes[56] = 0;
 		_tsIconOnly = true;
 		_currMap = 104;
 		_statPlay = 551;
-		PlaySound(8);
+		playSound(8);
 		break;
 	case 551:
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(134);
+			dsAll();
+			playMovie(134);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x42C:
 			_aTimer = 0;
 			if (_nodes[56] == 1) {
-				EnAll();
-				PlayMovie(183);
-				FShowPic(433);
-				PlaySound(8);
+				enAll();
+				playMovie(183);
+				fShowPic(433);
+				playSound(8);
 				_nodes[56] = 9;
 				_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			if (_nodes[56] == 1) {
-				DsAll();
-				PlayMovie(134);
+				dsAll();
+				playMovie(134);
 				_statPlay = 993;
 				_loopFlag = true;
 			} else {
@@ -369,23 +369,23 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_aTimer = 0;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			if (_pMovie == 183)
-				FShowPic(433);
+				fShowPic(433);
 			break;
 		case 0x452:
 			_aTimer = 0;
 			switch(_nodes[56]) {
 			case 0:
-				DsAll();
-				PlayMovie(69);
+				dsAll();
+				playMovie(69);
 				_tsIconOnly = false;
 				_nodes[56] = 1;
 				SetATimer();
 				break;
 			case 1:
-				DsAll();
-				PlayMovie(134);
+				dsAll();
+				playMovie(134);
 				_statPlay = 993;
 				_loopFlag = true;
 				break;
@@ -415,17 +415,17 @@ void KingdomGame::GPLogic3() {
 		_userInput = 0;
 		if (_wizard) {
 			_frameStop = 50;
-			EnAll();
-			PlayMovie(135);
-			ShowPic(435);
+			enAll();
+			playMovie(135);
+			showPic(435);
 			_nodes[57] = 1;
-			PlaySound(8);
+			playSound(8);
 			_statPlay = 561;
 			_currMap = 106;
 			_tsIconOnly = true;
 		} else {
-			DsAll();
-			PlayMovie(135);
+			dsAll();
+			playMovie(135);
 			_currMap = 10;
 			SetATimer();
 			_nodes[57] = 0;
@@ -436,8 +436,8 @@ void KingdomGame::GPLogic3() {
 		switch(_userInput) {
 		case 0x2F1:
 			_aTimer = 0;
-			DsAll();
-			PlayMovie(136);
+			dsAll();
+			playMovie(136);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
@@ -447,9 +447,9 @@ void KingdomGame::GPLogic3() {
 			_aTimer = 0;
 			if (!_nodes[57]) {
 				InventoryDel(_userInput - 0x428);
-				SaveAS();
-				PlayMovie(178);
-				RestoreAS();
+				saveAS();
+				playMovie(178);
+				restoreAS();
 				_userInput = 753;
 				_loopFlag = true;
 			}
@@ -459,9 +459,9 @@ void KingdomGame::GPLogic3() {
 			if (!_nodes[57]) {
 				_fstFwd = false;
 				_replay = true;
-				PlayMovie(138);
-				EnAll();
-				PlaySound(8);
+				playMovie(138);
+				enAll();
+				playSound(8);
 				_nodes[57] = 1;
 				InventoryDel(4);
 				_nodes[22] = 0;
@@ -472,12 +472,12 @@ void KingdomGame::GPLogic3() {
 		case 0x438:
 			_aTimer = 0;
 			if (!_nodes[57]) {
-				EnAll();
+				enAll();
 				_fstFwd = false;
 				_replay = true;
-				PlayMovie(137);
-				EnAll();
-				PlaySound(8);
+				playMovie(137);
+				enAll();
+				playSound(8);
 				_nodes[57] = 1;
 				_currMap = 106;
 				_tsIconOnly = true;
@@ -493,9 +493,9 @@ void KingdomGame::GPLogic3() {
 			_fstFwd = false;
 			if (_pMovie == 135 && _nodes[57]) {
 				_frameStop = 50;
-				PlayMovie(135);
+				playMovie(135);
 			} else if (_nodes[57])
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 			else {
 				_userInput = 753;
 				_aTimer = 0;
@@ -534,8 +534,8 @@ void KingdomGame::GPLogic3() {
 			DrawLocation();
 			_nodes[58] = 0;
 			_userInput = 0;
-			PlayMovie(139);
-			PlaySound(27);
+			playMovie(139);
+			playSound(27);
 			_currMap = 10;
 			_statPlay = 571;
 		} else {
@@ -553,7 +553,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -572,49 +572,49 @@ void KingdomGame::GPLogic3() {
 		switch(_nodes[59]) {
 		case 0:
 			_sound = true;
-			PlayMovie(140);
+			playMovie(140);
 			_currMap = 113;
 			_nodes[59] = 1;
 			break;
 		case 1:
-			PlayMovie(140);
+			playMovie(140);
 			_currMap = 113;
 			_nodes[59] = 0;
 			break;
 		case 8:
 			_tsIconOnly = true;
-			PlayMovie(143);
+			playMovie(143);
 			_currMap = 10;
 			_nodes[59] = 9;
 			break;
 		case 9:
 			_tsIconOnly = true;
 			_sound = true;
-			PlayMovie(143);
+			playMovie(143);
 			_currMap = 10;
 			break;
 		}
-		PlaySound(27);
+		playSound(27);
 		_statPlay = 581;
 		break;
 	case 581:
 		switch(_userInput) {
 		case 0x430:
-			PlayMovie(141);
+			playMovie(141);
 			_nodes[59] = 8;
 			InventoryAdd(13);
 			_tsIconOnly = true;
 			_currMap = 10;
-			PlaySound(30);
+			playSound(30);
 		// No break on purpose
 		case 0x428:
 		case 0x429:
 		case 0x42A:
 			if (_nodes[59] < 8) {
 				InventoryDel(_userInput - 0x428);
-				SaveAS();
-				PlayMovie(178);
-				RestoreAS();
+				saveAS();
+				playMovie(178);
+				restoreAS();
 			}
 			_userInput = 0;
 			break;
@@ -622,8 +622,8 @@ void KingdomGame::GPLogic3() {
 			if (_nodes[59] >= 8)
 				DisplayIcon(143);
 			else {
-				DsAll();
-				PlayMovie(142);
+				dsAll();
+				playMovie(142);
 				_statPlay = 993;
 				_loopFlag = true;
 			}
@@ -635,7 +635,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -656,10 +656,10 @@ void KingdomGame::GPLogic3() {
 			_sound = true;
 			_nodes[60] = 0;
 		}
-		PlayMovie(144);
-		ShowPic(144);
+		playMovie(144);
+		showPic(144);
 		_currMap = 114;
-		PlaySound(21);
+		playSound(21);
 		_statPlay = 591;
 		break;
 	case 591:
@@ -672,8 +672,8 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
-			ShowPic(444);
+			playMovie(_pMovie);
+			showPic(444);
 			break;
 		case 0x445:
 			_statPlay = 660;
@@ -689,17 +689,17 @@ void KingdomGame::GPLogic3() {
 		ProcessMapInput(59);
 		break;
 	case 600:
-		SetMouse();
+		setMouse();
 		EraseCursor();
 		fadeToBlack2();
-		ShowPic(106);
+		showPic(106);
 		DrawIcon(4, 0, 12 - _healthOld);
 		_asMode = false;
 		_nodeNum = 60;
 		DrawLocation();
 		_userInput = 0;
-		DsAll();
-		PlayMovie(145);
+		dsAll();
+		playMovie(145);
 		_statPlay = 992;
 		_loopFlag = true;
 		break;
@@ -714,14 +714,14 @@ void KingdomGame::GPLogic3() {
 		else
 			_sound = true;
 
-		PlayMovie(146);
+		playMovie(146);
 		if (_nodes[70] == 9) {
 			_itemInhibit = true;
 			_tsIconOnly = true;
 		}
 		
 		_currMap = 115;
-		PlaySound(36);
+		playSound(36);
 		_statPlay = 611;
 		_eye = false;
 		break;
@@ -731,20 +731,20 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
-			DsAll();
-			PlayMovie(148);
+			dsAll();
+			playMovie(148);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x432:
-			PlayMovie(147);
+			playMovie(147);
 			_inventory[5] = -1;
 			_nodes[30] = 0;
 			_currMap = 116;
 			break;
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x441:
 			// Cascade on purpose
@@ -776,16 +776,16 @@ void KingdomGame::GPLogic3() {
 		_userInput = 0;
 		_eye = false;
 		if (_nodes[63] == 0) {
-			PlayMovie(149);
+			playMovie(149);
 			_currMap = 122;
 		} else {
 			_frameStop = 24;
-			PlayMovie(202);
+			playMovie(202);
 			_currMap = 121;
 			_nodes[63] = 9;
 		}
 		_tsIconOnly = true;
-		PlaySound(8);
+		playSound(8);
 		_statPlay = 621;
 		break;
 	case 621:
@@ -794,30 +794,30 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			_userInput = 0;
 			break;
 		case 0x430:
-			PlayMovie(150);
+			playMovie(150);
 			InventoryAdd(8);
 			_nodes[63] = 1;
-			PlaySound(25);
+			playSound(25);
 			_currMap = 121;
 			_userInput = 0;
 			break;
 		case 0x43E:
 			switch (_nodes[63]) {
 			case 0:
-				PlayMovie(149);
+				playMovie(149);
 				break;
 			case 1:
-				PlayMovie(150);
+				playMovie(150);
 				break;
 			case 9:
 				_frameStop = 24;
-				PlayMovie(202);
+				playMovie(202);
 				_currMap = 121;
 				break;
 			}
@@ -826,10 +826,10 @@ void KingdomGame::GPLogic3() {
 			_nodeNum = 56;
 			_userInput = 0;
 			_frameStop = 50;
-			EnAll();
-			PlayMovie(135);
+			enAll();
+			playMovie(135);
 			_nodes[57] = 1;
-			PlaySound(8);
+			playSound(8);
 			_statPlay = 561;
 			_currMap = 106;
 			if (_inventory[16] < 1 && _wizard)
@@ -857,19 +857,19 @@ void KingdomGame::GPLogic3() {
 		} else
 			_nodes[64] = true;
 
-		PlayMovie(151);
+		playMovie(151);
 		_currMap = 72;
-		PlaySound(40);
+		playSound(40);
 		_statPlay = 631;
 		break;
 	case 631:
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
-			PlayMovie(10);
+			playMovie(10);
 			_statPlay = 50;
 			_loopFlag = true;
 			break;
@@ -889,10 +889,10 @@ void KingdomGame::GPLogic3() {
 		} else
 			_nodes[65] = 1;
 
-		PlayMovie(152);
+		playMovie(152);
 		_currMap = 10;
 		_statPlay = 641;
-		PlaySound(28);
+		playSound(28);
 		break;
 	case 641:
 		switch(_userInput) {
@@ -904,7 +904,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x43E:
 			_sound= _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		default:
 			if (_userInput)
@@ -925,18 +925,18 @@ void KingdomGame::GPLogic3() {
 			_sound = true;
 			_nodes[66] = 0;
 		}
-		PlayMovie(153);
-		ShowPic(453);
+		playMovie(153);
+		showPic(453);
 		_currMap = 73;
-		PlaySound(37);
+		playSound(37);
 		_statPlay = 651;
 		break;
 	case 651:
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
-			ShowPic(453);
+			playMovie(_pMovie);
+			showPic(453);
 			break;
 		case 0x445:
 			_statPlay = 700;
@@ -971,16 +971,16 @@ void KingdomGame::GPLogic3() {
 			_sound = true;
 			_nodes[67] = 0;
 		}
-		PlayMovie(154);
+		playMovie(154);
 		_currMap = 70;
-		PlaySound(40);
+		playSound(40);
 		_statPlay = 661;
 		break;
 	case 661:
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 700;
@@ -1010,7 +1010,7 @@ void KingdomGame::GPLogic3() {
 		_eye = false;
 		_nodes[68] = 1;
 		_fstFwd = false;
-		PlayMovie(155);
+		playMovie(155);
 		_currMap = 127;
 		_statPlay = 671;
 		break;
@@ -1019,7 +1019,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			_sound = _lastSound;
 			_fstFwd = false;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
@@ -1038,14 +1038,14 @@ void KingdomGame::GPLogic3() {
 	case 680:
 		_nodeNum = 68;
 		_userInput = 0;
-		DsAll();
-		PlayMovie(156);
+		dsAll();
+		playMovie(156);
 		_statPlay = 993;
 		_loopFlag = true;
 		break;
 	case 690:
 		_itemInhibit = false;
-		EnAll();
+		enAll();
 		if (_nodes[70] == 9) {
 			_statPlay = 640;
 			_nodes[73] = 0;
@@ -1057,8 +1057,8 @@ void KingdomGame::GPLogic3() {
 			_userInput = 0;
 			_currMap = 119;
 			_frameStop = 40;
-			PlayMovie(157);
-			PlaySound(12);
+			playMovie(157);
+			playSound(12);
 			_statPlay = 691;
 		}
 		break;
@@ -1068,9 +1068,9 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
-			SaveAS();
-			PlayMovie(178);
-			RestoreAS();
+			saveAS();
+			playMovie(178);
+			restoreAS();
 			_userInput = 0;
 			break;
 		case 0x439:
@@ -1078,11 +1078,11 @@ void KingdomGame::GPLogic3() {
 				DisplayIcon(147);
 			else {
 				_frameStop = 108;
-				PlayMovie(158);
+				playMovie(158);
 				_itemInhibit = false;
 				InventoryAdd(17);
 				_nodes[70] = 9;
-				PlaySound(23);
+				playSound(23);
 				_userInput = 0;
 				_currMap = 120;
 			}
@@ -1094,11 +1094,11 @@ void KingdomGame::GPLogic3() {
 				_frameStop = 108;
 			
 			if (_pMovie == 178) {
-				SaveAS();
-				PlayMovie(178);
-				RestoreAS();
+				saveAS();
+				playMovie(178);
+				restoreAS();
 			} else
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 
 			break;
 		case 0x441:
@@ -1127,16 +1127,16 @@ void KingdomGame::GPLogic3() {
 		} else
 			_nodes[71] = 1;
 
-		PlayMovie(164);
+		playMovie(164);
 		_currMap = 74;
-		PlaySound(10);
+		playSound(10);
 		_statPlay = 701;
 		break;
 	case 701:
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
@@ -1162,8 +1162,8 @@ void KingdomGame::GPLogic3() {
 		_eye = false;
 		if (_inventory[8] && _inventory[14])
 			_sound = true;
-		DsAll();
-		PlayMovie(165);
+		dsAll();
+		playMovie(165);
 		_currMap = 10;
 		SetATimer();
 		_statPlay = _wizard ? 712 : 711;
@@ -1172,7 +1172,7 @@ void KingdomGame::GPLogic3() {
 		switch(_userInput) {
 		case 0x2F1:
 			_replay = false;
-			PlayMovie(166);
+			playMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
@@ -1182,8 +1182,8 @@ void KingdomGame::GPLogic3() {
 			InventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
-			PlayMovie(178);
-			PlayMovie(166);
+			playMovie(178);
+			playMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
@@ -1192,10 +1192,10 @@ void KingdomGame::GPLogic3() {
 			_nodeNum = 0;
 			_iconsClosed = true;
 			_fstFwd = false;
-			PlayMovie(167);
+			playMovie(167);
 			_fstFwd = false;
-			PlayMovie(170);
-			PlaySound(25);
+			playMovie(170);
+			playSound(25);
 			EndCredits();
 			_loopFlag = true;
 			break;
@@ -1209,7 +1209,7 @@ void KingdomGame::GPLogic3() {
 		switch(_userInput) {
 		case 0x2F1:
 			_replay = false;
-			PlayMovie(166);
+			playMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
@@ -1219,24 +1219,24 @@ void KingdomGame::GPLogic3() {
 			InventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
-			PlayMovie(178);
-			PlayMovie(166);
+			playMovie(178);
+			playMovie(166);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x430:
 			_aTimer = 0;
 			if (_nodes[72] != 2) {
-				PlayMovie(57);
+				playMovie(57);
 				_statPlay = 993;
 			} else {
 				_nodeNum = 0;
 				_iconsClosed = true;
 				_fstFwd = false;
-				PlayMovie(55);
+				playMovie(55);
 				_fstFwd = false;
-				PlayMovie(184);
-				PlaySound(25);
+				playMovie(184);
+				playSound(25);
 				EndCredits();
 			}
 			_loopFlag = true;
@@ -1244,19 +1244,19 @@ void KingdomGame::GPLogic3() {
 		case 0x432:
 			_aTimer = 0;
 			_replay = false;
-			PlayMovie(168);
+			playMovie(168);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x433:
 			if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
 				_replay = false;
-				PlayMovie(166);
+				playMovie(166);
 				_statPlay = 993;
 			} else {
 				_aTimer = 0;
-				EnAll();
-				PlayMovie(169);
+				enAll();
+				playMovie(169);
 				_statPlay = 580;
 				InventoryDel(11);
 				_nodes[51] = 0;
@@ -1265,9 +1265,9 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x436:
 			_aTimer = 0;
-			PlaySound(0);
-			PlayMovie(193);
-			ShowPic(128);
+			playSound(0);
+			playMovie(193);
+			showPic(128);
 			InventoryDel(14);
 			_nodes[72] = 2;
 			SetATimer();
@@ -1279,15 +1279,15 @@ void KingdomGame::GPLogic3() {
 				_nodeNum = 0;
 				_iconsClosed = true;
 				_fstFwd = false;
-				PlayMovie(56);
+				playMovie(56);
 				_fstFwd = false;
-				PlayMovie(184);
-				PlaySound(25);
+				playMovie(184);
+				playSound(25);
 				EndCredits();
 				_quit = true;
 //--				_QuitFlag = true;
 			} else {
-				PlayMovie(58);
+				playMovie(58);
 				_statPlay = 993;
 			}
 			_loopFlag = true;
@@ -1315,9 +1315,9 @@ void KingdomGame::GPLogic3() {
 			_nodes[73] = 3;
 			break;
 		}
-		PlayMovie(175);
+		playMovie(175);
 		_currMap = 118;
-		PlaySound(12);
+		playSound(12);
 		_statPlay = 721;
 		break;
 	case 721:
@@ -1325,7 +1325,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43E:
 			if (_nodes[73] > 1)
 				_frameStop = 24;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x441:
 			if (_nodes[73] == 1) {
@@ -1384,9 +1384,9 @@ void KingdomGame::GPLogic3() {
 			_nodes[74] = 4;
 			break;
 		}
-		PlayMovie(176);
+		playMovie(176);
 		_currMap = 117;
-		PlaySound(36);
+		playSound(36);
 		_statPlay = 731;
 		break;
 	case 731:
@@ -1395,7 +1395,7 @@ void KingdomGame::GPLogic3() {
 			if (_nodes[74] > 2)
 				_frameStop = 23;
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x441:
 			switch (_nodes[74]) {
@@ -1471,8 +1471,8 @@ void KingdomGame::GPLogic3() {
 		_rtnNode = _nodeNum;
 		_nodeNum = 74;
 		DrawLocation();
-		DsAll();
-		PlayMovie(185);
+		dsAll();
+		playMovie(185);
 		_currMap = 10;
 		SetATimer();
 		_statPlay = 741;
@@ -1481,8 +1481,8 @@ void KingdomGame::GPLogic3() {
 	case 741:
 		switch(_userInput) {
 		case 0x2F1:
-			DsAll();
-			PlayMovie(188);
+			dsAll();
+			playMovie(188);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
@@ -1491,7 +1491,7 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
 			_aTimer = 0;
-			PlayMovie(178);
+			playMovie(178);
 			_loopFlag = true;
 			_userInput = 753;
 			break;
@@ -1506,12 +1506,12 @@ void KingdomGame::GPLogic3() {
 			_loopFlag = true;
 			if (Wound()) {
 				_frameStop = 88;
-				PlayMovie(187);
+				playMovie(187);
 				_statPlay = 570;
 				_nodes[58] = 1;
 			} else {
 				_frameStop = 78;
-				PlayMovie(187);
+				playMovie(187);
 				_statPlay = 993;
 			}
 			break;
@@ -1525,34 +1525,34 @@ void KingdomGame::GPLogic3() {
 		_nodeNum = 76;
 		_eye = false;
 		_userInput = 0;
-		PlayMovie(189);
+		playMovie(189);
 		_currMap = 126;
-		PlaySound(21);
+		playSound(21);
 		_statPlay = 761;
 		break;
 	case 761:
 		switch(_userInput) {
 		case 0x43E:
 			_sound = _lastSound;
-			PlayMovie(_pMovie);
+			playMovie(_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 660;
 			_loopFlag = true;
 			break;
 		case 0x44D:
-			PlayMovie(191);
+			playMovie(191);
 			_nodes[68] = 2;
 			_statPlay = 660;
 			_loopFlag = true;
 			break;
 		case 0x44E:
-			PlayMovie(192);
+			playMovie(192);
 			_statPlay = 660;
 			_loopFlag = true;
 			break;
 		case 0x458:
-			PlayMovie(190);
+			playMovie(190);
 			_statPlay = 660;
 			_loopFlag = true;
 			break;
@@ -1567,9 +1567,9 @@ void KingdomGame::GPLogic3() {
 		DrawLocation();
 		_userInput = 0;
 		_eye = false;
-		PlayMovie(171);
+		playMovie(171);
 		_currMap = 124;
-		PlaySound(40);
+		playSound(40);
 		_statPlay = 781;
 		break;
 	case 781:
@@ -1578,33 +1578,33 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			InventoryDel(_userInput - 0x428);
 			_frameStop = 64;
-			PlayMovie(173);
-			ShowPic(471);
+			playMovie(173);
+			showPic(471);
 			_currMap = 124;
 			break;
 		case 0x429:
 			if (_wizard) {
 				_frameStop = 64;
-				PlayMovie(173);
+				playMovie(173);
 				InventoryDel(1);
 			} else {
 				_frameStop = 66;
 				_fstFwd = false;
-				PlayMovie(172);
+				playMovie(172);
 				_fstFwd = true;
-				PlayMovie(201);
+				playMovie(201);
 			}
 
-			FShowPic(471);
+			fShowPic(471);
 			_currMap = 124;
 			break;
 		case 0x439:
 			_frameStop = 59;
 			_fstFwd = false;
-			PlayMovie(174);
+			playMovie(174);
 			_fstFwd = true;
-			PlayMovie(201);
-			FShowPic(471);
+			playMovie(201);
+			fShowPic(471);
 			_currMap = 124;
 			break;
 		case 0x43E:
@@ -1614,14 +1614,14 @@ void KingdomGame::GPLogic3() {
 			if (_pMovie == 201) {
 				_frameStop = 59;
 				_fstFwd = false;
-				PlayMovie(174);
+				playMovie(174);
 				_fstFwd = true;
-				PlayMovie(201);
+				playMovie(201);
 			} else {
-				PlayMovie(_pMovie);
+				playMovie(_pMovie);
 			}
 			if (_pMovie != 171) {
-				FShowPic(471);
+				fShowPic(471);
 				_currMap = 124;
 			}
 			break;
@@ -1642,8 +1642,8 @@ void KingdomGame::GPLogic3() {
 	case 790:
 		_nodeNum = 79;
 		DrawLocation();
-		DsAll();
-		PlayMovie(4);
+		dsAll();
+		playMovie(4);
 		_currMap = 8;
 		_statPlay = 791;
 		SetATimer();
@@ -1652,20 +1652,20 @@ void KingdomGame::GPLogic3() {
 	case 791:
 		switch(_userInput) {
 		case 0x2F1:
-			DsAll();
-			PlayMovie(204);
+			dsAll();
+			playMovie(204);
 			_statPlay = 993;
 			_loopFlag = true;
 			break;
 		case 0x445:
-			EnAll();
-			PlayMovie(10);
+			enAll();
+			playMovie(10);
 			_statPlay = 50;
 			_loopFlag = true;
 			break;
 		case 0x446:
-			EnAll();
-			PlayMovie(10);
+			enAll();
+			playMovie(10);
 			_statPlay = 520;
 			_loopFlag = true;
 			break;
@@ -1681,30 +1681,30 @@ void KingdomGame::GPLogic3() {
 void KingdomGame::EndCredits() {
 	_nodeNum = 0;
 	_bTimer = 190;
-	ReadMouse();
+	readMouse();
 
 	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
 		CheckMainScreen();
-		ReadMouse();
+		readMouse();
 	}
 
 	fadeToBlack1();
-	DrawRect(4, 17, 228, 161, 0);
-	PlaySound(0);
-	DsAll();
+	drawRect(4, 17, 228, 161, 0);
+	playSound(0);
+	dsAll();
 	_iconsClosed = true;
-	PlayMovie(199);
-	DsAll();
-	PlayMovie(205);
-	DsAll();
+	playMovie(199);
+	dsAll();
+	playMovie(205);
+	dsAll();
 	fadeToBlack1();
-	DrawRect(4, 17, 228, 161, 0);
-	PlayMovie(201);
-	FShowPic(125);
+	drawRect(4, 17, 228, 161, 0);
+	playMovie(201);
+	fShowPic(125);
 	_currMap = 3;
-	DsAll();
+	dsAll();
 	_pouch = false;
 	memset(_inventory, 0xFF, 19);
 	_statPlay = 994;
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 37bb3f3b50..c61d3937aa 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -28,7 +28,7 @@ void KingdomGame::GPLogic4() {
 	switch(_statPlay) {
 	case 900:
 		if (_aTimer > 0) {
-			PlaySound(0);
+			playSound(0);
 			_aTimer = 133;
 		}
 		if (_asMode) {
@@ -37,17 +37,17 @@ void KingdomGame::GPLogic4() {
 			_oldStatPlay--;
 			_asMode = false;
 		}
-		SaveAS();
+		saveAS();
 		fadeToBlack2();
 
 		if (_health == 10 || _health == 6 || _health == 2) {
-			ShowPic(121);
+			showPic(121);
 			_bTimer = 38;
-			ReadMouse();
+			readMouse();
 			while (_bTimer && !_mouseButton) {
 				checkTimers();
 				RefreshSound();
-				ReadMouse();
+				readMouse();
 			}
 			
 			if (_aTimer > 0)
@@ -60,7 +60,7 @@ void KingdomGame::GPLogic4() {
 				SetATimer();
 				_aTimer = 133;
 			}
-			ShowPic(120);
+			showPic(120);
 			_statPlay = 901;
 		}
 		break;
@@ -70,20 +70,20 @@ void KingdomGame::GPLogic4() {
 	case 991:
 		_currMap = 10;
 		_userInput = 0;
-		PlaySound(0);
+		playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			PlayMovie(194);
+			playMovie(194);
 			_noIFScreen = true;
-			FShowPic(107);
+			fShowPic(107);
 			_currMap = 3;
-			DsAll();
+			dsAll();
 			_pouch = false;
-			PlaySound(1);
+			playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
@@ -104,13 +104,13 @@ void KingdomGame::GPLogic4() {
 			DrawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
-			EnAll();
+			enAll();
 			_mapEx = true;
 			_nodeNum = 5;
 			DrawLocation();
-			PlaySound(0);
+			playSound(0);
 			if (_nodes[5] > 0) {
-				PlayMovie(197);
+				playMovie(197);
 				_resurrect = true;
 			}
 			InventoryDel(12);
@@ -120,20 +120,20 @@ void KingdomGame::GPLogic4() {
 	case 992:
 		_currMap = 10;
 		_userInput = 0;
-		PlaySound(0);
+		playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			PlayMovie(194);
+			playMovie(194);
 			_noIFScreen = true;
-			FShowPic(107);
+			fShowPic(107);
 			_currMap = 3;
-			DsAll();
+			dsAll();
 			_pouch = false;
-			PlaySound(1);
+			playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
@@ -154,13 +154,13 @@ void KingdomGame::GPLogic4() {
 			DrawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
-			EnAll();
+			enAll();
 			_mapEx = true;
 			_nodeNum = 27;
 			DrawLocation();
 			_resurrect = true;
-			PlaySound(0);
-			PlayMovie(195);
+			playSound(0);
+			playMovie(195);
 			InventoryDel(12);
 			_statPlay = 270;
 		}
@@ -168,20 +168,20 @@ void KingdomGame::GPLogic4() {
 	case 993:
 		_currMap = 10;
 		_userInput = 0;
-		PlaySound(0);
+		playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			PlayMovie(194);
+			playMovie(194);
 			_noIFScreen = true;
-			FShowPic(107);
+			fShowPic(107);
 			_currMap = 3;
-			DsAll();
+			dsAll();
 			_pouch = false;
-			PlaySound(1);
+			playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
@@ -204,13 +204,13 @@ void KingdomGame::GPLogic4() {
 			DrawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
-			EnAll();
+			enAll();
 			_mapEx = true;
 			_nodeNum = 52;
 			DrawLocation();
 			_resurrect = true;
-			PlaySound(0);
-			PlayMovie(196);
+			playSound(0);
+			playMovie(196);
 			InventoryDel(12);
 			_statPlay = 520;
 		}
@@ -232,10 +232,10 @@ void KingdomGame::GPLogic4() {
 }
 
 void KingdomGame::GPLogic4_SP901() {
-	SetMouse();
+	setMouse();
 	EraseCursor();
 	fadeToBlack2();
-	ShowPic(106);
+	showPic(106);
 	DrawIcon(4, 0, 12 - _healthOld);
 	if (_tideCntl)
 		DrawPic(178);
@@ -245,22 +245,22 @@ void KingdomGame::GPLogic4_SP901() {
 	_iconRedraw = true;
 	if (_userInput == 0x2F1) {
 		_asMode = false;
-		RestoreAS();
+		restoreAS();
 		_statPlay = _oldStatPlay;
 		_loopFlag = true;
 	} else {
 		if (_health == 10 || _health == 6 || _health == 2 || _userInput < 0x400 || _userInput > 0x427) {
 			_asMode = false;
-			RestoreAS();
+			restoreAS();
 			_statPlay = _oldStatPlay;
 		} else {
 			_statPlay = _mapExit[_userInput - 0x400];
 			_userInput = 0;
 			Wound();
-			PlayMovie(10);
+			playMovie(10);
 			InventoryDel(3);
 			_tsIconOnly = false;
-			EnAll();
+			enAll();
 			SwitchAS();
 			_mapStat = 0;
 		}
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 4294413b8d..9f84747e9f 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -273,13 +273,13 @@ void KingdomGame::setupPics() {
 }
 
 void KingdomGame::initTools() {
-	InitMouse();
+	initMouse();
 	//CHECKME: InitTimers?
-	ShowPic(124);
-	InitCursor();
-	SetMouse();
+	showPic(124);
+	initCursor();
+	setMouse();
 	fadeToBlack2();
-	InitMPlayer();
+	initMPlayer();
 }
 
 void KingdomGame::titlePage() {
@@ -291,11 +291,11 @@ void KingdomGame::titlePage() {
 	_noIFScreen = true;
 	_sound = false;
 	fadeToBlack2();
-	PlayMovie(200);
+	playMovie(200);
 	fadeToBlack2();
-	PlayMovie(206);
+	playMovie(206);
 	fadeToBlack2();
-	PlayMovie(198);
+	playMovie(198);
 	fadeToBlack2();
 }
 
@@ -338,7 +338,7 @@ void KingdomGame::initPlay() {
 	_treeRightSta = 1;
 	_tsIconOnly = false;
 	_lastObs = false;
-	EnAll();
+	enAll();
 	_pouch = true;
 	_noIFScreen = true;
 	_noMusic = false;
@@ -360,11 +360,11 @@ void KingdomGame::fadeToBlack2() {
 	debug("STUB: FadeToBlack2");
 }
 
-void KingdomGame::GameHelp_Sub43C() {
+void KingdomGame::gameHelp_Sub43C() {
 	fadeToBlack1();
 	_currMap = _asMap;
-	DrawRect(4, 17, 228, 161, 0);
-	RestoreAS();
+	drawRect(4, 17, 228, 161, 0);
+	restoreAS();
 	_userInput = 0;
 	_gameMode = 0;
 	_iconsClosed = false;
@@ -377,12 +377,12 @@ void KingdomGame::GameHelp_Sub43C() {
 void KingdomGame::gameHelp() {
 	if (!_gameMode) {
 		if (_userInput == 0x43C) {
-			SaveAS();
+			saveAS();
 			_asMap = _currMap;
 			_currMap = 0;
 			fadeToBlack1();
-			DrawRect(4, 17, 228, 161, 0);
-			DrawHelpScreen();
+			drawRect(4, 17, 228, 161, 0);
+			drawHelpScreen();
 			_gameMode = 1;
 			_oldTLS = _treeLeftSta;
 			_treeLeftSta = 0;
@@ -395,7 +395,7 @@ void KingdomGame::gameHelp() {
 			_userInput = 0;
 		}
 		if (_userInput == 0x44F) {
-			SaveAS();
+			saveAS();
 			_asMap = _currMap;
 			_gameMode = 2;
 			_oldTLS = _treeLeftSta;
@@ -407,8 +407,8 @@ void KingdomGame::gameHelp() {
 			_help = false;
 			_oldPouch = _pouch;
 			fadeToBlack1();
-			DrawRect(4, 17, 228, 161, 0);
-			DrawInventory();
+			drawRect(4, 17, 228, 161, 0);
+			drawInventory();
 
 			if (_nodes[68] == 1 || _nodes[29] == 1 || _itemInhibit)
 				_currMap = 10;
@@ -427,35 +427,35 @@ void KingdomGame::gameHelp() {
 		//TODO: Set _quitFlag to 1
 		break;
 	case 0x241:
-		GameHelp_Sub43C();
+		gameHelp_Sub43C();
 		return;
 		break;
 	case 0x242:
 		if (_noMusic) {
 			_noMusic = false;
-			PlaySound(1);
+			playSound(1);
 		} else {
 			_noMusic = true;
-			PlaySound(0);
+			playSound(0);
 		}
-		DrawHelpScreen();
+		drawHelpScreen();
 		break;
 	case 0x243: {
 		fadeToBlack2();
 		_keyActive = false;
 		_noIFScreen = true;
-		PlaySound(0);
+		playSound(0);
 		int var = _pMovie;
 		while(!_keyActive) {
-			PlayMovie(54);
+			playMovie(54);
 			fadeToBlack2();
 		}
 		_pMovie = var;
 		_noIFScreen = false;
-		ShowPic(106);
-		DrawHelpScreen();
+		showPic(106);
+		drawHelpScreen();
 		_iconRedraw = true;
-		PlaySound(1);
+		playSound(1);
 		}
 		break;
 	case 0x244:
@@ -465,14 +465,14 @@ void KingdomGame::gameHelp() {
 	case 0x245: {
 		fadeToBlack1();
 		int var = _pMovie;
-		DrawRect(4, 17, 228, 161, 0);
-		PlayMovie(205);
+		drawRect(4, 17, 228, 161, 0);
+		playMovie(205);
 		fadeToBlack1();
-		DrawRect(4, 17, 228, 161, 0);
-		PlayMovie(199);
+		drawRect(4, 17, 228, 161, 0);
+		playMovie(199);
 		fadeToBlack1();
-		DrawRect(4, 17, 228, 161, 0);
-		DrawHelpScreen();
+		drawRect(4, 17, 228, 161, 0);
+		drawHelpScreen();
 		_pMovie = var;
 		}
 		break;
@@ -482,15 +482,15 @@ void KingdomGame::gameHelp() {
 	case 0x43B:
 	case 0x43C:
 	case 0x44F:
-		GameHelp_Sub43C();
+		gameHelp_Sub43C();
 		return;
 	}
 
 	if (_userInput > 0x427 && _userInput < 0x43A)
-		FShowPic(130 + _userInput - 0x428);
+		fShowPic(130 + _userInput - 0x428);
 
 	if (_userInput == 0x260) {
-		DrawInventory();
+		drawInventory();
 		if (_nodes[68] == 1 || _nodes[29] == 1)
 			_currMap = 10;
 		else
@@ -501,7 +501,7 @@ void KingdomGame::gameHelp() {
 }
 
 void KingdomGame::LoadKingArt() {
-	LoadAResource(0x97);
+	loadAResource(0x97);
 	Common::SeekableReadStream *kingartStream = _rezPointers[0x97];
 	int val = kingartStream->readUint32LE();
 	int size = val / 4;
@@ -526,7 +526,7 @@ void KingdomGame::LoadKingArt() {
 	delete[] kingartIdx;
 }
 
-void KingdomGame::LoadAResource(int reznum) {
+void KingdomGame::loadAResource(int reznum) {
 	Common::String path = Common::String(_rezNames[reznum]);
 	path.toUppercase();
 
@@ -545,17 +545,17 @@ void KingdomGame::LoadAResource(int reznum) {
 	}
 }
 
-void KingdomGame::ReleaseAResource(int reznum) {
+void KingdomGame::releaseAResource(int reznum) {
 	if (_rezSize[reznum]) {
 		delete _rezPointers[reznum];
 		_rezSize[reznum] = 0;
 	}
 }
 
-void KingdomGame::ShowPic(int reznum) {
+void KingdomGame::showPic(int reznum) {
 	EraseCursor();
 
-	LoadAResource(reznum);
+	loadAResource(reznum);
 	Image::IFFDecoder decoder;
 	if (!decoder.loadStream(*_rezPointers[reznum]))
 		return;
@@ -579,38 +579,38 @@ void KingdomGame::ShowPic(int reznum) {
 	g_system->unlockScreen();
 	g_system->updateScreen();
 
-	ReleaseAResource(reznum);
+	releaseAResource(reznum);
 }
 
-void KingdomGame::FShowPic(int reznum) {
+void KingdomGame::fShowPic(int reznum) {
 	EraseCursor();
 	fadeToBlack1();
-	DrawRect(4, 17, 228, 161, 0);
-	ShowPic(reznum);
+	drawRect(4, 17, 228, 161, 0);
+	showPic(reznum);
 }
 
-void KingdomGame::InitCursor() {
-	InitMouse();
+void KingdomGame::initCursor() {
+	initMouse();
 	SetCursor(0x19C / 4);
 	_cursorDrawn = false;
 	DrawCursor();
 }
 
-void KingdomGame::InitMouse() {
+void KingdomGame::initMouse() {
 	// No implementation required
 }
 
-void KingdomGame::SetMouse() {
+void KingdomGame::setMouse() {
 	g_system->warpMouse(272, 157);
 	_cursorX = 272;
 	_cursorY = 157;
 }
 
-void KingdomGame::InitMPlayer() {
+void KingdomGame::initMPlayer() {
 	debug("STUB: InitMPlayer");
 }
 
-void KingdomGame::PlayMovie(int movieNum) {
+void KingdomGame::playMovie(int movieNum) {
 	debug("STUB: PlayMovie");
 
 	if (movieNum == 1 || movieNum == 3 || movieNum == 54 || movieNum == 198 || movieNum == 200 || movieNum == 206)
@@ -631,13 +631,13 @@ void KingdomGame::PlayMovie(int movieNum) {
 		_iconSel = _iconSelect;
 		_iconsClosed = true;
 		CheckMainScreen();
-		SetMouse();
+		setMouse();
 		_oldCursorX = _cursorX;
 		_oldCursorY = _cursorY;
 	}
 
 	_pMovie = movieNum;
-	ReadMouse();
+	readMouse();
 	_mouseButton = 0;
 	_keyActive = false;
 	const char *path = _movieNames[movieNum];
@@ -671,7 +671,7 @@ void KingdomGame::PlayMovie(int movieNum) {
 	}
 }
 
-void KingdomGame::EnAll() {
+void KingdomGame::enAll() {
 	_help = true;
 	_eye = true;
 	_replay = true;
@@ -679,7 +679,7 @@ void KingdomGame::EnAll() {
 	_fstFwd = true;
 }
 
-void KingdomGame::DsAll() {
+void KingdomGame::dsAll() {
 	_help = false;
 	_eye = false;
 	_replay = false;
@@ -687,7 +687,7 @@ void KingdomGame::DsAll() {
 	_fstFwd = false;
 }
 
-void KingdomGame::SaveAS() {
+void KingdomGame::saveAS() {
 	byte palette[256 * 3];
 	delete[] _asPtr;
 	_asPtr = new byte[224 * 146 + 768];
@@ -708,7 +708,7 @@ void KingdomGame::SaveAS() {
 	g_system->updateScreen();
 }
 
-void KingdomGame::RestoreAS() {
+void KingdomGame::restoreAS() {
 	byte palette[256 * 3];
 	for (uint i = 0; i < 768; i++)
 		palette[i] = _asPtr[224 * 146 + i];
@@ -739,7 +739,7 @@ void KingdomGame::SwitchAS() {
 	_iconsClosed = _oldIconsClosed;
 }
 
-void KingdomGame::DrawHelpScreen() {
+void KingdomGame::drawHelpScreen() {
 	int picNum;
 
 	switch(_health) {
@@ -767,10 +767,10 @@ void KingdomGame::DrawHelpScreen() {
 	if (_noMusic)
 		picNum += 6;
 
-	ShowPic(picNum);
+	showPic(picNum);
 }
 
-void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color) {
+void KingdomGame::drawRect(uint minX, uint minY, uint maxX, uint maxY, int color) {
 	::Graphics::Surface *screen = g_system->lockScreen();
 	for (uint curX = minX; curX < maxX; curX++) {
 		for (uint curY = minY; curY < maxY; curY++) {
@@ -782,8 +782,8 @@ void KingdomGame::DrawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 	g_system->updateScreen();
 }
 
-void KingdomGame::DrawInventory() {
-	FShowPic(108);
+void KingdomGame::drawInventory() {
+	fShowPic(108);
 	if (_nodes[29] == 1 || _nodes[68] == 1 || _itemInhibit)
 		return;
 
@@ -925,7 +925,7 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	delete[] _asPtr;
 	_asPtr = nullptr;
 
-	PlaySound(_soundNumber);
+	playSound(_soundNumber);
 	for (int i = 0; i < 7; i++)
 		_iconPic[i] = 89 + i;
 	
@@ -944,10 +944,10 @@ Common::Error KingdomGame::loadGameState(int slot) {
 	_treeEyePic = 0;
 	_treeHGUPic = 0;
 	_cursorDrawn = false;
-	ShowPic(106);
+	showPic(106);
 	_gameMode = 0;
 	_iconsClosed = false;
-	DrawRect(4, 17, 228, 161, 0);
+	drawRect(4, 17, 228, 161, 0);
 	_userInput = 0x43E;
 	_loopFlag = true;
 
@@ -1067,14 +1067,14 @@ bool KingdomGame::readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHead
 	return true;
 }
 
-void KingdomGame::PlaySound(int idx) {
+void KingdomGame::playSound(int idx) {
 	if (idx > 43 || _soundNumber == idx)
 		return;
 
 	// Stop Sound
 	if (_mixer->isSoundHandleActive(_soundHandle)) {
 		_mixer->stopHandle(_soundHandle);
-		ReleaseAResource(idx);
+		releaseAResource(idx);
 	}
 
 	_soundNumber = idx;
@@ -1083,7 +1083,7 @@ void KingdomGame::PlaySound(int idx) {
 
 	int realIdx = _soundNumber + 200; // Or +250, depending in the original on the sound card
 	debug("PlaySound %d : %s", idx, _rezNames[realIdx]);
-	LoadAResource(realIdx);
+	loadAResource(realIdx);
 
 	Common::SeekableReadStream *soundStream = _rezPointers[realIdx];
 	Audio::RewindableAudioStream *rewindableStream = Audio::makeRawStream(soundStream, 22050, Audio::FLAG_UNSIGNED | Audio::FLAG_LITTLE_ENDIAN, DisposeAfterUse::NO);
@@ -1100,7 +1100,7 @@ void KingdomGame::EraseCursor() {
 	CursorMan.showMouse(false);
 }
 
-void KingdomGame::ReadMouse() {
+void KingdomGame::readMouse() {
 	_mouseButton = 0;
 
 	Common::Event event;
@@ -1157,7 +1157,7 @@ void KingdomGame::DrawLocation() {
 	if (_daelonCntr > 0)
 		_daelonCntr--;
 
-	PlaySound(0);
+	playSound(0);
 	_iconsClosed = true;
 	_tsIconOnly = false;
 	_aTimer = 0;
@@ -1165,7 +1165,7 @@ void KingdomGame::DrawLocation() {
 
 	int emlValue = _emlTable[_nodeNum];
 	if (emlValue > 0)
-		EnAll();
+		enAll();
 
 	if (!_mapEx || !emlValue || _resurrect) {
 		if (_statPlay != 50)
@@ -1173,8 +1173,8 @@ void KingdomGame::DrawLocation() {
 		_iconsClosed = false;
 	} else {
 		_mapEx = false;
-		SaveAS();
-		FShowPic(emlValue);
+		saveAS();
+		fShowPic(emlValue);
 		_bTimer = 16;
 		while(_bTimer) {
 			checkTimers();
@@ -1182,7 +1182,7 @@ void KingdomGame::DrawLocation() {
 			CheckMainScreen();
 		}
 		fadeToBlack1();
-		DrawRect(4, 17, 228, 161, 0);
+		drawRect(4, 17, 228, 161, 0);
 		_iconsClosed = false;
 		_tsIconOnly = false;
 	}
@@ -1192,7 +1192,7 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 	int var6 = _zoomTable[mapNum][zoom][0];
 	if (!_asMode)
 		SwitchAtoM();
-	FShowPic(var6);
+	fShowPic(var6);
 	_currMap = _zoomTable[mapNum][zoom][1];
 
 	if (zoom > 0)
@@ -1260,7 +1260,7 @@ void KingdomGame::InventoryAdd(int item) {
 
 void KingdomGame::DrawPic(int reznum) {
 	EraseCursor();
-	LoadAResource(reznum);
+	loadAResource(reznum);
 
 	Image::IFFDecoder decoder;
 	if (!decoder.loadStream(*_rezPointers[reznum]))
@@ -1281,26 +1281,26 @@ void KingdomGame::DrawPic(int reznum) {
 	g_system->unlockScreen();
 	g_system->updateScreen();
 
-	ReleaseAResource(reznum);
+	releaseAResource(reznum);
 }
 
 void KingdomGame::DisplayIcon(int reznum) {
-	PlaySound(0);
-	PlaySound(30);
-	SaveAS();
-	FShowPic(reznum);
+	playSound(0);
+	playSound(30);
+	saveAS();
+	fShowPic(reznum);
 	_bTimer = 76;
-	ReadMouse();
+	readMouse();
 	
 	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
 		RefreshSound();
-		ReadMouse();
+		readMouse();
 	}
 
 	fadeToBlack1();
-	DrawRect(4, 17, 228, 161, 0);
-	RestoreAS();
+	drawRect(4, 17, 228, 161, 0);
+	restoreAS();
 }
 
 void KingdomGame::SetATimer() {
@@ -1321,8 +1321,8 @@ void KingdomGame::SetATimer() {
 		if (_inventory[idx] > 0) {
 			_aTimerFlag = false;
 			_aTimer = _wizard ? 114 : 133;
-			PlaySound(0);
-			PlaySound(34);
+			playSound(0);
+			playSound(34);
 			break;
 		}
 	}
@@ -1610,7 +1610,7 @@ bool KingdomGame::ChkDesertObstacles() {
 void KingdomGame::SwitchAtoM() {
 	_asMode = true;
 	_asMap = _currMap;
-	SaveAS();
+	saveAS();
 	_iconSel = 9;
 	_oldTLS = _treeLeftSta;
 	_oldTRS = _treeRightSta;
@@ -1627,8 +1627,8 @@ void KingdomGame::SwitchAtoM() {
 void KingdomGame::SwitchMtoA() {
 	SwitchAS();
 	fadeToBlack1();
-	DrawRect(4, 17, 228, 161, 0);
-	RestoreAS();
+	drawRect(4, 17, 228, 161, 0);
+	restoreAS();
 }
 
 void KingdomGame::DrawIcon(int x, int y, int index) {
@@ -1717,7 +1717,7 @@ int KingdomGame::WaitKey() {
 }
 
 void KingdomGame::DrawCursor() {
-	ReadMouse();
+	readMouse();
 
 	CursorType();
 	SetCursor(_cursorDef);
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index d28c303530..11915ae39a 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -225,25 +225,25 @@ namespace Kingdom {
 		void GPLogic3();
 		void GPLogic4();
 		void GPLogic4_SP901();
-		void LoadAResource(int reznum);
-		void ReleaseAResource(int reznum);
-		void ShowPic(int reznum);
-		void FShowPic(int reznum);
-		void InitCursor();
-		void InitMouse();
-		void SetMouse();
-		void ReadMouse();
-		void InitMPlayer();
-		void PlayMovie(int movieNum);
-		void EnAll();
-		void DsAll();
-		void SaveAS();
-		void RestoreAS();
-		void DrawHelpScreen();
-		void DrawRect(uint v1, uint v2, uint v3, uint v4, int v5);
-		void DrawInventory();
-		void GameHelp_Sub43C();
-		void PlaySound(int v1);
+		void loadAResource(int reznum);
+		void releaseAResource(int reznum);
+		void showPic(int reznum);
+		void fShowPic(int reznum);
+		void initCursor();
+		void initMouse();
+		void setMouse();
+		void readMouse();
+		void initMPlayer();
+		void playMovie(int movieNum);
+		void enAll(); // TODO: Rename later as enableAll
+		void dsAll(); // TODO: Rename later as disableAll
+		void saveAS(); // TODO: Rename later as saveVideoBackground
+		void restoreAS(); // TODO: Rename later as restoreVideoBackground
+		void drawHelpScreen();
+		void drawRect(uint minX, uint minY, uint maxX, uint maxY, int color);
+		void drawInventory();
+		void gameHelp_Sub43C();
+		void playSound(int idx);
 		void EraseCursor();
 		void GetUserInput();
 		void EraseCursorAsm();


Commit: ecacfbda0c74ffea92847cd07203e2e58d5972e1
    https://github.com/scummvm/scummvm/commit/ecacfbda0c74ffea92847cd07203e2e58d5972e1
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Finish the renaming of functions

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 645ad4987a..326b45dfbe 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -68,11 +68,11 @@ void KingdomGame::GPLogic1() {
 		case 0x24A:
 			fadeToBlack2();
 			setMouse();
-			EraseCursor();
+			eraseCursor();
 			restoreGame();
 			break;
 		case 0x2F1:
-			EraseCursorAsm();
+			eraseCursorAsm();
 			_cursorDrawn = false;
 			fadeToBlack2();
 			playSound(0);
@@ -88,7 +88,7 @@ void KingdomGame::GPLogic1() {
 	case 20:
 		initPlay();
 		_noIFScreen = false;
-		EraseCursorAsm();
+		eraseCursorAsm();
 		_cursorDrawn = false;
 		fadeToBlack2();
 		showPic(106);
@@ -108,7 +108,7 @@ void KingdomGame::GPLogic1() {
 				break;
 			}
 		}
-		DrawLocation();
+		drawLocation();
 		if (_nodes[4] != 0 && _nodes[6] != 1)
 			_sound = true;
 		else
@@ -125,7 +125,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 32;
 			_zoom = 2;
-			ProcessMap(3, _zoom);
+			processMap(3, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -139,11 +139,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 32:
-		ProcessMapInput(3);
+		processMapInput(3);
 		break;
 	case 40:
 		_nodeNum = 4;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[4] == 0)
 			playMovie(62);
@@ -160,7 +160,7 @@ void KingdomGame::GPLogic1() {
 		case 0x429:
 			playMovie(178);
 			playMovie(63);
-			InventoryDel(1);
+			inventoryDel(1);
 			_currMap = 10;
 			_nodes[4] = 9;
 			_statPlay = 41;
@@ -169,7 +169,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 42;
 			_zoom = 2;
-			ProcessMap(4, _zoom);
+			processMap(4, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -183,11 +183,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 42:
-		ProcessMapInput(4);
+		processMapInput(4);
 		break;
 	case 50:
 		_nodeNum = 5;
-		DrawLocation();
+		drawLocation();
 		if (_nodes[5] != 0 && !_resurrect) {
 			_frameStop = 38;
 			playMovie(5);
@@ -212,22 +212,22 @@ void KingdomGame::GPLogic1() {
 		} else {
 			switch(_nodes[5]) {
 			case 0:
-				InventoryAdd(1);
+				inventoryAdd(1);
 				break;
 			case 1:
 				playMovie(60);
-				InventoryAdd(0);
+				inventoryAdd(0);
 				_spell1 = true;
 				break;
 			case 2:
 				playMovie(59);
-				InventoryAdd(2);
+				inventoryAdd(2);
 				_spell2 = true;
 				break;
 			case 3:
 				_sound = true;
 				playMovie(59);
-				InventoryAdd(3);
+				inventoryAdd(3);
 				_spell3 = true;
 				break;
 			}
@@ -242,13 +242,13 @@ void KingdomGame::GPLogic1() {
 				playSound(1);
 
 				if (!_spell1)
-					DrawPic(116);
+					drawPic(116);
 				
 				if (!_spell2)
-					DrawPic(117);
+					drawPic(117);
 				
 				if (!_spell3)
-					DrawPic(118);
+					drawPic(118);
 				
 				_currMap = 6;
 				_statPlay = 53;
@@ -273,7 +273,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 52;
 			_zoom = 2;
-			ProcessMap(5, _zoom);
+			processMap(5, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -287,7 +287,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 52:
-		ProcessMapInput(5);
+		processMapInput(5);
 		break;
 	case 53:
 		switch(_userInput) {
@@ -318,7 +318,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43E:
 			if (!_spell1 && !_spell2 && !_spell3 && !_wizard) {
 				playMovie(177);
-				DrawLocation();
+				drawLocation();
 				playMovie(5);
 			}
 
@@ -327,13 +327,13 @@ void KingdomGame::GPLogic1() {
 			playMovie(61);
 
 			if (!_spell1)
-				DrawPic(116);
+				drawPic(116);
 
 			if (!_spell2)
-				DrawPic(117);
+				drawPic(117);
 
 			if (!_spell3)
-				DrawPic(118);
+				drawPic(118);
 			break;
 		default:
 			if (_userInput)
@@ -343,7 +343,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 60:
 		_nodeNum = 6;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[4] == 0) {
 			dsAll();
@@ -358,7 +358,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 70:
 		_nodeNum = 7;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[7] == 0) {
 			playMovie(11);
@@ -377,11 +377,11 @@ void KingdomGame::GPLogic1() {
 		switch(_userInput) {
 		case 0x42F:
 			if (_nodes[7] == 9) {
-				DisplayIcon(137);
+				displayIcon(137);
 			} else {
 				playMovie(12);
 				playSound(30);
-				InventoryAdd(7);
+				inventoryAdd(7);
 				_nodes[7] = 9;
 				_currMap = 10;
 			}
@@ -390,7 +390,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 72;
 			_zoom = 2;
-			ProcessMap(7, _zoom);
+			processMap(7, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -404,11 +404,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 72:
-		ProcessMapInput(7);
+		processMapInput(7);
 		break;
 	case 80:
 		_nodeNum = 8;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[8] == 9) {
 			playMovie(24);
@@ -420,7 +420,7 @@ void KingdomGame::GPLogic1() {
 			dsAll();
 			playMovie(14);
 			_currMap = 10;
-			SetATimer();
+			setATimer();
 		}
 		_statPlay = 81;
 		break;
@@ -438,7 +438,7 @@ void KingdomGame::GPLogic1() {
 				enAll();
 				playMovie(18);
 				playSound(3);
-				InventoryDel(1);
+				inventoryDel(1);
 				_userInput = 0;
 				_currMap = 13;
 				_nodes[8] = 1;
@@ -450,7 +450,7 @@ void KingdomGame::GPLogic1() {
 				enAll();
 				playMovie(18);
 				playSound(3);
-				InventoryDel(2);
+				inventoryDel(2);
 				_userInput = 0;
 				_currMap = 13;
 				_nodes[8] = 1;
@@ -471,7 +471,7 @@ void KingdomGame::GPLogic1() {
 			if (!_nodes[8]) {
 				enAll();
 				playMovie(17);
-				InventoryDel(5);
+				inventoryDel(5);
 				playSound(3);
 				_aTimer = 0;
 				_userInput = 0;
@@ -482,7 +482,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 82;
 			_zoom = 2;
-			ProcessMap(8, _zoom);
+			processMap(8, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -507,7 +507,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 82:
-		ProcessMapInput(8);
+		processMapInput(8);
 		break;
 	case 90:
 		if (_nodeNum == 18 && _nodes[17] == 0) {
@@ -516,7 +516,7 @@ void KingdomGame::GPLogic1() {
 			_nextNode = 90;
 		} else {
 			_nodeNum = 9;
-			DrawLocation();
+			drawLocation();
 			_userInput = 0;
 			if (_nodes[9] == 0) {
 				_sound = false;
@@ -543,7 +543,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 92;
 			_zoom = 2;
-			ProcessMap(9, _zoom);
+			processMap(9, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -564,7 +564,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 92:
-		ProcessMapInput(9);
+		processMapInput(9);
 		break;
 	case 100:
 		if (_nodeNum == 18 && _nodes[17] == 0) {
@@ -573,7 +573,7 @@ void KingdomGame::GPLogic1() {
 			_nextNode = 100;
 		} else {
 			_nodeNum = 10;
-			DrawLocation();
+			drawLocation();
 			_userInput = 0;
 			if (_nodes[10] == 1)
 				_nodes[10] = 9;
@@ -595,7 +595,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 102;
 			_zoom = 2;
-			ProcessMap(10, _zoom);
+			processMap(10, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -605,11 +605,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 102:
-		ProcessMapInput(10);
+		processMapInput(10);
 		break;
 	case 110:
 		_nodeNum = 11;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[22] == 0)
 			_sound = false;
@@ -625,7 +625,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 112;
 			_zoom = 1;
-			ProcessMap(11, _zoom);
+			processMap(11, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -638,11 +638,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 112:
-		ProcessMapInput(11);
+		processMapInput(11);
 		break;
 	case 120:
 		_nodeNum = 12;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[12] == 0) {
 			playMovie(22);
@@ -671,7 +671,7 @@ void KingdomGame::GPLogic1() {
 			break;
 		case 0x437:
 			if (_nodes[12] == 9) {
-				DisplayIcon(145);
+				displayIcon(145);
 				_userInput = 0;
 			} else
 				GPLogic1_SubSP121();
@@ -693,7 +693,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 130:
 		_nodeNum = 13;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		dsAll();
 		playMovie(4);
@@ -702,9 +702,9 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 140:
 		_nodeNum = 14;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
-		if (Wound()) {
+		if (wound()) {
 			playMovie(26);
 			playSound(35);
 			_currMap = 10;
@@ -722,7 +722,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 142;
 			_zoom = 2;
-			ProcessMap(14, _zoom);
+			processMap(14, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -736,11 +736,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 142:
-		ProcessMapInput(14);
+		processMapInput(14);
 		break;
 	case 150:
 		_nodeNum = 15;
-		DrawLocation();
+		drawLocation();
 		playMovie(28);
 		playSound(3);
 		_currMap = 16;
@@ -768,7 +768,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 160:
 		_nodeNum = 16;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		playMovie(29);
 		playSound(3);
@@ -813,7 +813,7 @@ void KingdomGame::GPLogic1() {
 			readMouse();
 			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 				readMouse();
 			}
 			fShowPic(105);
@@ -827,7 +827,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 162;
 			_zoom = 2;
-			ProcessMap(16, _zoom);
+			processMap(16, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -866,7 +866,7 @@ void KingdomGame::GPLogic1() {
 
 			while(_bTimer != 0 && _mouseButton == 0) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 				readMouse();
 			}
 
@@ -881,7 +881,7 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 162:
-			ProcessMapInput(16);
+			processMapInput(16);
 		break;
 	case 170:
 		if (_nodes[17] == 9) {
@@ -889,12 +889,12 @@ void KingdomGame::GPLogic1() {
 			_loopFlag = true;
 		} else {
 			_nodeNum = 17;
-			DrawLocation();
+			drawLocation();
 			dsAll();
 			playMovie(30);
 			_currMap = 10;
 			_statPlay = 171;
-			SetATimer();
+			setATimer();
 			_userInput = 0;
 		}
 		break;
@@ -902,7 +902,7 @@ void KingdomGame::GPLogic1() {
 		switch(_userInput) {
 		case 0x2F1:
 			enAll();
-			if (Wound()) {
+			if (wound()) {
 				_aTimer = 0;
 				_replay = false;
 				playMovie(31);
@@ -935,14 +935,14 @@ void KingdomGame::GPLogic1() {
 		if (_userInput == 0x2F1) {
 			_statPlay = 171;
 			_loopFlag= true;
-			SwitchAS();
+			switchAS();
 		} else
-			ProcessMapInput(_nodeNum);
+			processMapInput(_nodeNum);
 		break;
 	case 180:
 		if ((_nodeNum != 9 && _nodeNum != 10) || (_nodes[17] != 0)) {
 			_nodeNum = 18;
-			DrawLocation();
+			drawLocation();
 			_userInput = 0;
 			if (_nodes[18] == 0 || _nodes[18] == 1) {
 				_nodes[18] = 0;
@@ -973,12 +973,12 @@ void KingdomGame::GPLogic1() {
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(0);
+			inventoryDel(0);
 			_userInput = 0;
 			break;
 		case 0x429:
 			if (!_nodes[18]) {
-				InventoryDel(1);
+				inventoryDel(1);
 				_nodes[18] = true;
 			}
 			playMovie(35);
@@ -988,7 +988,7 @@ void KingdomGame::GPLogic1() {
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(2);
+			inventoryDel(2);
 			_userInput = 0;
 			break;
 		case 0x42C:
@@ -999,7 +999,7 @@ void KingdomGame::GPLogic1() {
 		case 0x42F:
 			if (_nodes[18] == 1) {
 				playMovie(36);
-				InventoryDel(7);
+				inventoryDel(7);
 				_nodes[18] = 9;
 				_currMap = 19;
 				_tsIconOnly = true;
@@ -1015,9 +1015,9 @@ void KingdomGame::GPLogic1() {
 			_statPlay = 182;
 			_zoom = 2;
 			if (_nodes[18] == 9)
-				ProcessMap(80, _zoom);
+				processMap(80, _zoom);
 			else
-				ProcessMap(18, _zoom);
+				processMap(18, _zoom);
 
 			_userInput = 0;
 			break;
@@ -1038,11 +1038,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 182:
-		ProcessMapInput(18);
+		processMapInput(18);
 		break;
 	case 190:
 		_nodeNum = 19;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		dsAll();
 		playMovie(38);
@@ -1051,15 +1051,15 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 200:
 		_nodeNum = 20;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (!_nodes[20]) {
 			playMovie(39);
-			IncreaseHealth();
+			increaseHealth();
 		} else {
 			playMovie(40);
 			_tideCntl = true;
-			DrawPic(178);
+			drawPic(178);
 		}
 		playSound(42);
 		_currMap = 10;
@@ -1070,7 +1070,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 202;
 			_zoom = 0;
-			ProcessMap(20, _zoom);
+			processMap(20, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1080,11 +1080,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 202:
-		ProcessMapInput(20);
+		processMapInput(20);
 		break;
 	case 210:
 		_nodeNum = 21;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (!_wizard)
 			_nodes[21] = 9;
@@ -1099,7 +1099,7 @@ void KingdomGame::GPLogic1() {
 			playMovie(45);
 			_nodes[21] = 0;
 			_currMap = 10;
-			SetATimer();
+			setATimer();
 		}
 		_statPlay = 211;
 		break;
@@ -1112,7 +1112,7 @@ void KingdomGame::GPLogic1() {
 			_loopFlag = true;
 			break;
 		case 0x428:
-			InventoryDel(0);
+			inventoryDel(0);
 			if (_nodes[21] == 9) {
 				saveAS();
 				playMovie(65);
@@ -1131,7 +1131,7 @@ void KingdomGame::GPLogic1() {
 				_aTimer = 0;
 				enAll();
 				playMovie(48);
-				InventoryDel(2);
+				inventoryDel(2);
 				_nodes[21] = 1;
 				_tsIconOnly = true;
 				playSound(38);
@@ -1144,7 +1144,7 @@ void KingdomGame::GPLogic1() {
 				enAll();
 				playMovie(47);
 				playSound(38);
-				InventoryDel(5);
+				inventoryDel(5);
 				_nodes[21] = 9;
 				_userInput = 0;
 				_currMap = 81;
@@ -1154,7 +1154,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 212;
 			_zoom = 2;
-			ProcessMap(21, _zoom);
+			processMap(21, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1200,13 +1200,13 @@ void KingdomGame::GPLogic1() {
 			_aTimer = 0;
 			_statPlay = 211;
 			_loopFlag = true;
-			SwitchAS();
+			switchAS();
 		}
-		ProcessMapInput(21);
+		processMapInput(21);
 		break;
 	case 220:
 		_nodeNum = 22;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (!_nodes[22]) {
 			playMovie(41);
@@ -1225,22 +1225,22 @@ void KingdomGame::GPLogic1() {
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(0);
+			inventoryDel(0);
 			_userInput = 0;
 			break;
 		case 0x429:
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(1);
+			inventoryDel(1);
 			_userInput = 0;
 			break;
 		case 0x42A:
 			playMovie(42);
 			playSound(30);
 			if (!_nodes[22]) {
-				InventoryDel(2);
-				InventoryAdd(4);
+				inventoryDel(2);
+				inventoryAdd(4);
 				_tsIconOnly = true;
 			}
 			_userInput = 0;
@@ -1261,7 +1261,7 @@ void KingdomGame::GPLogic1() {
 		case 0x43A:
 			_statPlay = 222;
 			_zoom = 2;
-			ProcessMap(22, _zoom);
+			processMap(22, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1275,11 +1275,11 @@ void KingdomGame::GPLogic1() {
 		}
 		break;
 	case 222:
-		ProcessMapInput(22);
+		processMapInput(22);
 		break;
 	case 230:
 		_nodeNum = 23;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		dsAll();
 		playMovie(50);
@@ -1288,7 +1288,7 @@ void KingdomGame::GPLogic1() {
 		break;
 	case 240:
 		_nodeNum = 24;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (!_nodes[24]) {
 			playMovie(51);
@@ -1308,13 +1308,13 @@ void KingdomGame::GPLogic1() {
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(0);
+			inventoryDel(0);
 			break;
 		case 0x429:
 			if (_nodes[24] != 9) {
 				_tsIconOnly = true;
 				playMovie(66);
-				InventoryDel(1);
+				inventoryDel(1);
 				_currMap = 84;
 				_nodes[24] = 9;
 			}
@@ -1323,24 +1323,24 @@ void KingdomGame::GPLogic1() {
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			InventoryDel(2);
+			inventoryDel(2);
 			break;
 		case 0x42D:
 			if (_inventory[5] >= 1)
-				DisplayIcon(135);
+				displayIcon(135);
 			else {
 				saveAS();
 				playMovie(52);
 				playSound(30);
 				restoreAS();
-				InventoryAdd(5);
+				inventoryAdd(5);
 				_userInput = 0;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 242;
 			_zoom = 2;
-			ProcessMap(24, _zoom);
+			processMap(24, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1365,7 +1365,7 @@ void KingdomGame::GPLogic1() {
 		_userInput = 0;
 		break;
 	case 242:
-		ProcessMapInput(24);
+		processMapInput(24);
 		break;
 	}
 }
@@ -1391,13 +1391,13 @@ void KingdomGame::GPLogic1_SubSP121() {
 	
 	while (_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
-		RefreshSound();
-		CheckMainScreen();
+		refreshSound();
+		checkMainScreen();
 		readMouse();
 	}
 	
 	playSound(23);
-	InventoryAdd(15);
+	inventoryAdd(15);
 	_currMap = 10;
 	fShowPic(150);
 	_nodes[12] = 9;
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 3072a94d74..73a39617fe 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -30,7 +30,7 @@ void KingdomGame::GPLogic2() {
 		bool highNode = (_nodeNum > 25);
 		_nodeNum = 25;
 
-		DrawLocation();
+		drawLocation();
 		dsAll();
 		if (_nodes[24] != 0 || highNode) {
 			_eye = true;
@@ -64,22 +64,22 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 252;
 			_zoom = 2;
-			ProcessMap(30, _zoom);
-			SetATimer();
+			processMap(30, _zoom);
+			setATimer();
 			_userInput = 0;
 			break;
 		}
 		break;
 	case 252:
-		ProcessMapInput(30);
+		processMapInput(30);
 		break;
 	case 260:
 		_nodeNum = 26;
-		DrawLocation();
+		drawLocation();
 		dsAll();
 		playMovie(74);
 		_currMap = 10;
-		SetATimer();
+		setATimer();
 		_statPlay = 261;
 		_userInput = 0;
 		break;
@@ -93,21 +93,21 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 			break;
 		case 0x428:
-			InventoryDel(0);
+			inventoryDel(0);
 			_aTimer = 0;
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			SetATimer();
+			setATimer();
 			_userInput = 0;
 			break;
 		case 0x42A:
-			InventoryDel(2);
+			inventoryDel(2);
 			_aTimer = 0;
 			saveAS();
 			playMovie(178);
 			restoreAS();
-			SetATimer();
+			setATimer();
 			_userInput = 0;
 			break;
 		case 0x42C:
@@ -122,12 +122,12 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 			break;
 		case 0x42D:
-			if (Wound()) {
+			if (wound()) {
 				_aTimer = 0;
 				enAll();
 				playMovie(77);
 				playSound(34);
-				InventoryDel(5);
+				inventoryDel(5);
 				_statPlay = 300;
 				_loopFlag = true;
 			} else {
@@ -141,7 +141,7 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 270:
 		_nodeNum = 27;
-		DrawLocation();
+		drawLocation();
 		if (_nodes[28] == 1)
 			_nodes[28] = 9;
 		if (_nodes[28] == 9 || _nodes[29] != 0) {
@@ -163,7 +163,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 272;
 			_zoom = 2;
-			ProcessMap(27, _zoom);
+			processMap(27, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -173,11 +173,11 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 272:
-		ProcessMapInput(27);
+		processMapInput(27);
 		break;
 	case 280:
 		_nodeNum = 28;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		dsAll();
 		_fstFwd = false;
@@ -202,8 +202,8 @@ void KingdomGame::GPLogic2() {
 			if (_nodes[26] == 2)
 				playMovie(79);
 			_nodeNum = 29;
-			if (_nodes[26] <= 2 || !ChkDesertObstacles()) {
-				DrawLocation();
+			if (_nodes[26] <= 2 || !chkDesertObstacles()) {
+				drawLocation();
 				_nodes[26]++;
 				_userInput = 0;
 				switch (_nodes[30]) {
@@ -245,14 +245,14 @@ void KingdomGame::GPLogic2() {
 			_tsIconOnly = true;
 			playMovie(83);
 			playSound(30);
-			InventoryAdd(10);
+			inventoryAdd(10);
 			_nodes[30] = 8;
 			_userInput = 0;
 			_currMap = 10;
 			break;
 		case 0x432:
 			if (_nodes[30] >= 8)
-				DisplayIcon(140);
+				displayIcon(140);
 			else {
 				dsAll();
 				playMovie(84);
@@ -263,7 +263,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 292;
 			_zoom = 2;
-			ProcessMap(29, _zoom);
+			processMap(29, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -273,7 +273,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 292:
-		ProcessMapInput(29);
+		processMapInput(29);
 		break;
 	case 300:
 		if (_nodes[24] == 0) {
@@ -281,8 +281,8 @@ void KingdomGame::GPLogic2() {
 			_statPlay = 250;
 		} else {
 			_nodeNum = 30;
-			if (!ChkDesertObstacles()) {
-				DrawLocation();
+			if (!chkDesertObstacles()) {
+				drawLocation();
 				playMovie(86);
 				playSound(18);
 				_currMap = 10;
@@ -295,7 +295,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 302;
 			_zoom = 2;
-			ProcessMap(30, _zoom);
+			processMap(30, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -305,13 +305,13 @@ void KingdomGame::GPLogic2() {
 		} 
 		break;
 	case 302:
-		ProcessMapInput(30);
+		processMapInput(30);
 		break;
 	case 310:
 		_oldNode = _nodeNum;
 		_nodeNum = 31;
-		if (!ChkDesertObstacles()) {
-			DrawLocation();
+		if (!chkDesertObstacles()) {
+			drawLocation();
 			playMovie(67);
 			playSound(18);
 			_currMap = 90;
@@ -326,7 +326,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 312;
 			_zoom = 2;
-			ProcessMap(31, _zoom);
+			processMap(31, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -343,14 +343,14 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 312:
-		ProcessMapInput(31);
+		processMapInput(31);
 		break;
 	case 320:
 		_oldNode = _nodeNum;
 		_nodeNum = 32;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
-		IncreaseHealth();
+		increaseHealth();
 		if (_nodes[33] != 9 && _wizard) {
 			_sound = false;
 			_nodes[33] = 9;
@@ -368,7 +368,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 322;
 			_zoom = 2;
-			ProcessMap(32, _zoom);
+			processMap(32, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -378,13 +378,13 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 322:
-		ProcessMapInput(32);
+		processMapInput(32);
 		break;
 	case 330:
 		_oldNode = _nodeNum;
 		_nodeNum = 33;
-		if (!ChkDesertObstacles()) {
-			DrawLocation();
+		if (!chkDesertObstacles()) {
+			drawLocation();
 			_userInput = 0;
 			if (_nodes[32] == 0)
 				_sound = false;
@@ -401,7 +401,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 332;
 			_zoom = 2;
-			ProcessMap(33, _zoom);
+			processMap(33, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -411,7 +411,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 332:
-		ProcessMapInput(33);
+		processMapInput(33);
 		break;
 	case 340:
 		if (_nodes[36] == 0) {
@@ -421,8 +421,8 @@ void KingdomGame::GPLogic2() {
 		} else {
 			_oldNode = _nodeNum;
 			_nodeNum = 34;
-			if (!ChkDesertObstacles()) {
-				DrawLocation();
+			if (!chkDesertObstacles()) {
+				drawLocation();
 				_userInput = 0;
 				if (_nodes[35] == 9 || _nodes[41] == 0 || !_wizard) {
 					playMovie(91);
@@ -443,10 +443,10 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x431:
 			if (_nodes[35] == 9)
-				DisplayIcon(139);
+				displayIcon(139);
 			else {
 				playMovie(90);
-				InventoryAdd(9);
+				inventoryAdd(9);
 				_nodes[35] = 9;
 				_currMap = 93;
 			}
@@ -454,7 +454,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 342;
 			_zoom = 2;
-			ProcessMap(34, _zoom);
+			processMap(34, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -478,7 +478,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 342:
-		ProcessMapInput(34);
+		processMapInput(34);
 		break;
 	case 350:
 		if (!_wizard)
@@ -488,11 +488,11 @@ void KingdomGame::GPLogic2() {
 			_loopFlag = true;
 		} else {
 			_nodeNum = 35;
-			DrawLocation();
+			drawLocation();
 			dsAll();
 			playMovie(92);
 			_currMap = 94;
-			SetATimer();
+			setATimer();
 			_userInput = 0;
 			_statPlay = 351;
 		}
@@ -501,7 +501,7 @@ void KingdomGame::GPLogic2() {
 		switch(_userInput) {
 		case 0x428:
 		case 0x429:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			playMovie(178);
 			_userInput = 0x2F1;
@@ -518,7 +518,7 @@ void KingdomGame::GPLogic2() {
 			_aTimer = 0;
 			enAll();
 			playMovie(179);
-			InventoryDel(2);
+			inventoryDel(2);
 			_nodes[36] = 1;
 			_userInput = 0;
 			_statPlay = _nextNode * 10;
@@ -530,7 +530,7 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 360:
 		_nodeNum = 36;
-		DrawLocation();
+		drawLocation();
 		if (_nodes[37] == 0)
 			_sound = false;
 		else
@@ -539,7 +539,7 @@ void KingdomGame::GPLogic2() {
 		dsAll();
 		playMovie(94);
 		_currMap = 95;
-		SetATimer();
+		setATimer();
 		_userInput = 0;
 		_statPlay = 361;
 		break;
@@ -556,7 +556,7 @@ void KingdomGame::GPLogic2() {
 			_aTimer = 0;
 			enAll();
 			playMovie(97);
-			InventoryDel(0);
+			inventoryDel(0);
 			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
@@ -574,7 +574,7 @@ void KingdomGame::GPLogic2() {
 			_aTimer = 0;
 			enAll();
 			playMovie(98);
-			InventoryDel(2);
+			inventoryDel(2);
 			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
@@ -585,7 +585,7 @@ void KingdomGame::GPLogic2() {
 			_aTimer = 0;
 			enAll();
 			playMovie(100);
-			InventoryDel(6);
+			inventoryDel(6);
 			playSound(5);
 			_nodes[37] = 1;
 			_userInput = 0;
@@ -615,7 +615,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 362;
 			_zoom = 2;
-			ProcessMap(36, _zoom);
+			processMap(36, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -625,11 +625,11 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 362:
-		ProcessMapInput(36);
+		processMapInput(36);
 		break;
 	case 370:
 		_nodeNum = 37;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_nodes[38] = 0;
 		playMovie(102);
@@ -647,7 +647,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 372;
 			_zoom = 2;
-			ProcessMap(37, _zoom);
+			processMap(37, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -657,13 +657,13 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 372:
-		ProcessMapInput(37);
+		processMapInput(37);
 		break;
 	case 380:
 		_oldNode = _nodeNum;
 		_nodeNum =38;
-		if (!ChkDesertObstacles()) {
-			DrawLocation();
+		if (!chkDesertObstacles()) {
+			drawLocation();
 			_userInput = 0;
 			playMovie(159);
 			_currMap = 10;
@@ -678,7 +678,7 @@ void KingdomGame::GPLogic2() {
 		case 0x429:
 		case 0x42A:
 			if (_wizard && _nodes[39] != 9) {
-				InventoryDel(_userInput - 0x428);
+				inventoryDel(_userInput - 0x428);
 				saveAS();
 				playMovie(178);
 				restoreAS();
@@ -696,7 +696,7 @@ void KingdomGame::GPLogic2() {
 		case 0x433:
 			if (_wizard && _nodes[39] != 9) {
 				playMovie(161);
-				InventoryDel(11);
+				inventoryDel(11);
 				_nodes[51] = 0;
 				_userInput = 0;
 			}
@@ -705,7 +705,7 @@ void KingdomGame::GPLogic2() {
 		case 0x435:
 			if (_wizard && _nodes[39] != 9) {
 				playMovie(160);
-				InventoryDel(13);
+				inventoryDel(13);
 				_nodes[39] = 9;
 				_nodes[59] = 0;
 				_userInput = 0;
@@ -716,7 +716,7 @@ void KingdomGame::GPLogic2() {
 		case 0x437:
 			if (_wizard && _nodes[39] != 9) {
 				playMovie(163);
-				InventoryDel(15);
+				inventoryDel(15);
 				_nodes[12] = 0;
 			}
 			_userInput = 0;
@@ -724,7 +724,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 382;
 			_zoom = 2;
-			ProcessMap(38, _zoom);
+			processMap(38, _zoom);
 			_userInput = 0;
 		break;
 		case 0x43E:
@@ -742,11 +742,11 @@ void KingdomGame::GPLogic2() {
 		if (_wizard && (_nodes[39] != 9) && (_userInput == 0x413))
 			_userInput = 0;
 
-		ProcessMapInput(38);
+		processMapInput(38);
 		break;
 	case 390:
 		_nodeNum = 39;
-		DrawLocation();
+		drawLocation();
 		_aTimer = 0;
 		dsAll();
 		playMovie(104);
@@ -769,7 +769,7 @@ void KingdomGame::GPLogic2() {
 			dsAll();
 			playMovie(105);
 			_currMap = 10;
-			SetATimer();
+			setATimer();
 		}
 		
 		_userInput = 0;
@@ -788,7 +788,7 @@ void KingdomGame::GPLogic2() {
 		case 0x429:
 		case 0x42A:
 			if (!_nodes[41]) {
-				InventoryDel(_userInput - 0x428);
+				inventoryDel(_userInput - 0x428);
 				_aTimer = 0;
 				playMovie(178);
 				_userInput = 753;
@@ -810,7 +810,7 @@ void KingdomGame::GPLogic2() {
 			if (!_nodes[41]) {
 				_aTimer = 0;
 				playMovie(109);
-				InventoryDel(6);
+				inventoryDel(6);
 				_nodes[43] = 0;
 				_userInput = 0;
 				_aTimer = 136;
@@ -847,11 +847,11 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 402:
 		_aTimer = 0;
-		ProcessMapInput(40);
+		processMapInput(40);
 		break;
 	case 410:
 		_nodeNum = 41;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[41])
 			_sound = true;
@@ -873,8 +873,8 @@ void KingdomGame::GPLogic2() {
 				_bTimer = 34;
 				while(_bTimer != 0) {
 					checkTimers();
-					RefreshSound();
-					CheckMainScreen();
+					refreshSound();
+					checkMainScreen();
 				}
 				restoreAS();
 			}
@@ -898,8 +898,8 @@ void KingdomGame::GPLogic2() {
 		if (_nodes[37] == 9 || _nodes[29] == 1 || !_wizard) {
 			_oldNode = _nodeNum;
 			_nodeNum = 42;
-			if (!ChkDesertObstacles()) {
-				DrawLocation();
+			if (!chkDesertObstacles()) {
+				drawLocation();
 				GPLogic2_SubSP361();
 			}
 		} else {
@@ -912,7 +912,7 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			saveAS();
 			playMovie(178);
 			restoreAS();
@@ -920,7 +920,7 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x42E:
 			if (_nodes[43])
-				DisplayIcon(136);
+				displayIcon(136);
 			else {
 				if (_nodes[35] == 9) {
 					_sound = false;
@@ -928,7 +928,7 @@ void KingdomGame::GPLogic2() {
 					_sound = true;
 				}
 				playMovie(113);
-				InventoryAdd(6);
+				inventoryAdd(6);
 				_nodes[43] = 9;
 				_currMap = 10;
 			}
@@ -937,7 +937,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 422;
 			_zoom = 2;
-			ProcessMap(42, _zoom);
+			processMap(42, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -948,11 +948,11 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 422:
-		ProcessMapInput(42);
+		processMapInput(42);
 		break;
 	case 430:
 		_nodeNum = 43;
-		DrawLocation();
+		drawLocation();
 		_eye = false;
 		_userInput = 0;
 		if (_nodes[44] == 9) {
@@ -969,8 +969,8 @@ void KingdomGame::GPLogic2() {
 			_skylarTimer = 0;
 			playMovie(116);
 			playSound(25);
-			InventoryDel(12);
-			InventoryAdd(16);
+			inventoryDel(12);
+			inventoryAdd(16);
 			_nodes[44] = 9;
 			_currMap = 79;
 			_tsIconOnly = true;
@@ -1011,7 +1011,7 @@ void KingdomGame::GPLogic2() {
 			case 0x429:
 			case 0x42A:
 				if (_nodes[44] != 9) {
-					InventoryDel(_userInput - 0x428);
+					inventoryDel(_userInput - 0x428);
 					saveAS();
 					playMovie(178);
 					restoreAS();
@@ -1019,7 +1019,7 @@ void KingdomGame::GPLogic2() {
 				break;
 			case 0x438:
 				if (_nodes[44] == 9) {
-					DisplayIcon(146);
+					displayIcon(146);
 				} else {
 					dsAll();
 					playMovie(117);
@@ -1033,7 +1033,7 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 440:
 		_nodeNum = 44;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_inventory[12] > 0 || _nodes[44] == 9)
 			_sound = true;
@@ -1048,7 +1048,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 442;
 			_zoom = 2;
-			ProcessMap(44, _zoom);
+			processMap(44, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1063,7 +1063,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 442:
-		ProcessMapInput(44);
+		processMapInput(44);
 		break;
 	case 450:
 		_nodeNum = 45;
@@ -1102,7 +1102,7 @@ void KingdomGame::GPLogic2() {
 	case 460:
 		_eye = false;
 		_nodeNum = 46;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[47] && _wizard)
 			_nodes[47] = 1;
@@ -1137,7 +1137,7 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 462:
-		ProcessMapInput(46);
+		processMapInput(46);
 		break;
 	case 480:
 		_nodeNum = 48;
@@ -1152,7 +1152,7 @@ void KingdomGame::GPLogic2() {
 		case 0x43A:
 			_statPlay = 482;
 			_zoom = 2;
-			ProcessMap(48, _zoom);
+			processMap(48, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -1162,11 +1162,11 @@ void KingdomGame::GPLogic2() {
 		}
 		break;
 	case 482:
-		ProcessMapInput(48);
+		processMapInput(48);
 		break;
 	case 490:
 		_nodeNum = 49;
-		DrawLocation();
+		drawLocation();
 		dsAll();
 		playMovie(180);
 		playSound(18);
@@ -1180,7 +1180,7 @@ void KingdomGame::GPLogic2() {
 		case 0x428:
 		case 0x42A:
 		case 0x42B:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			playMovie(178);
 			_userInput = 753;
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 356fb7a43e..b42569a471 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -28,7 +28,7 @@ void KingdomGame::GPLogic3() {
 	switch(_statPlay) {
 	case 500:
 		_nodeNum = 50;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_resurrect = false;
 		if (!_wizard)
@@ -61,7 +61,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			if (!_nodes[51]) {
-				InventoryDel(_userInput - 0x428);
+				inventoryDel(_userInput - 0x428);
 				saveAS();
 				playMovie(178);
 				restoreAS();
@@ -75,14 +75,14 @@ void KingdomGame::GPLogic3() {
 				_statPlay = 993;
 				_loopFlag = true;
 			} else
-				DisplayIcon(141);
+				displayIcon(141);
 
 			break;
 		case 0x439:
 			if (!_nodes[51]) {
 				playMovie(124);
 				_nodes[51] = 1;
-				InventoryAdd(11);
+				inventoryAdd(11);
 				_userInput = 0;
 				_currMap = 10;
 			}
@@ -90,7 +90,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 502;
 			_zoom = 2;
-			ProcessMap(50, _zoom);
+			processMap(50, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -104,11 +104,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 502:
-		ProcessMapInput(50);
+		processMapInput(50);
 		break;
 	case 510:
 		_nodeNum = 51;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		playMovie(129);
 		_currMap = 10;
@@ -119,11 +119,11 @@ void KingdomGame::GPLogic3() {
 		switch(_userInput) {
 		case 0x434:
 			if (_inventory[6] >= 1)
-				DisplayIcon(142);
+				displayIcon(142);
 			else {
 				playMovie(128);
 				_nodes[52] = 9;
-				InventoryAdd(12);
+				inventoryAdd(12);
 				_userInput = 0;
 				_currMap = 10;
 				playSound(30);
@@ -132,7 +132,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 512;
 			_zoom = 2;
-			ProcessMap(51, _zoom);
+			processMap(51, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -140,7 +140,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x457:
 			_tideCntl = false;
-			DrawPic(179);
+			drawPic(179);
 			playMovie(127);
 			_currMap = 103;
 			_userInput = 0;
@@ -154,11 +154,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 512:
-		ProcessMapInput(51);
+		processMapInput(51);
 		break;
 	case 520:
 		_nodeNum = 52;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[53] == 0)
 			_nodes[53] = 1;
@@ -180,7 +180,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 522;
 			_zoom = 2;
-			ProcessMap(52, _zoom);
+			processMap(52, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -194,11 +194,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 522:
-		ProcessMapInput(52);
+		processMapInput(52);
 		break;
 	case 530:
 		_nodeNum = 53;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_fstFwd = false;
 		if (_inventory[7] <= 0 && _wizard)
@@ -218,8 +218,8 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 			if (_nodes[54] == 0) {
 				playMovie(71);
-				InventoryAdd(14);
-				InventoryDel(0);
+				inventoryAdd(14);
+				inventoryDel(0);
 				_tsIconOnly = true;
 				playSound(25);
 			}
@@ -227,7 +227,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			saveAS();
 			playMovie(178);
 			restoreAS();
@@ -266,7 +266,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 540:
 		_nodeNum = 54;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (!_wizard) {
 			_sound = true;
@@ -296,7 +296,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 542;
 			_zoom = 2;
-			ProcessMap(54, _zoom);
+			processMap(54, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -320,11 +320,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 542:
-		ProcessMapInput(54);
+		processMapInput(54);
 		break;
 	case 550:
 		_nodeNum = 55;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		playMovie(133);
 		if (_nodes[56] != 9)
@@ -363,7 +363,7 @@ void KingdomGame::GPLogic3() {
 			} else {
 				_statPlay = 552;
 				_zoom = 2;
-				ProcessMap(55, _zoom);
+				processMap(55, _zoom);
 				_userInput = 0;
 			}
 			break;
@@ -381,7 +381,7 @@ void KingdomGame::GPLogic3() {
 				playMovie(69);
 				_tsIconOnly = false;
 				_nodes[56] = 1;
-				SetATimer();
+				setATimer();
 				break;
 			case 1:
 				dsAll();
@@ -402,7 +402,7 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 552:
-		ProcessMapInput(55);
+		processMapInput(55);
 		if (!_nodes[56] && _statPlay == 560) {
 			_statPlay = 551;
 			_userInput = 0x190;
@@ -411,7 +411,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 560:
 		_nodeNum = 56;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_wizard) {
 			_frameStop = 50;
@@ -427,7 +427,7 @@ void KingdomGame::GPLogic3() {
 			dsAll();
 			playMovie(135);
 			_currMap = 10;
-			SetATimer();
+			setATimer();
 			_nodes[57] = 0;
 			_statPlay = 561;
 		}
@@ -446,7 +446,7 @@ void KingdomGame::GPLogic3() {
 		case 0x42A:
 			_aTimer = 0;
 			if (!_nodes[57]) {
-				InventoryDel(_userInput - 0x428);
+				inventoryDel(_userInput - 0x428);
 				saveAS();
 				playMovie(178);
 				restoreAS();
@@ -463,7 +463,7 @@ void KingdomGame::GPLogic3() {
 				enAll();
 				playSound(8);
 				_nodes[57] = 1;
-				InventoryDel(4);
+				inventoryDel(4);
 				_nodes[22] = 0;
 				_currMap = 88;
 				_tsIconOnly = true;
@@ -486,7 +486,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 562;
 			_zoom = 2;
-			ProcessMap(56, _zoom);
+			processMap(56, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -524,14 +524,14 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 562:
-		ProcessMapInput(56);
+		processMapInput(56);
 		break;
 	case 570:
 		if (_nodes[58]) {
 			if (_rtnNode != 34)
 				_sound = true;
 			_nodeNum = 57;
-			DrawLocation();
+			drawLocation();
 			_nodes[58] = 0;
 			_userInput = 0;
 			playMovie(139);
@@ -548,7 +548,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 572;
 			_zoom = 2;
-			ProcessMap(57, _zoom);
+			processMap(57, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -562,11 +562,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 572:
-		ProcessMapInput(57);
+		processMapInput(57);
 		break;
 	case 580:
 		_nodeNum = 58;
-		DrawLocation();
+		drawLocation();
 		_iconsClosed = true;
 		_userInput = 0;
 		switch(_nodes[59]) {
@@ -602,7 +602,7 @@ void KingdomGame::GPLogic3() {
 		case 0x430:
 			playMovie(141);
 			_nodes[59] = 8;
-			InventoryAdd(13);
+			inventoryAdd(13);
 			_tsIconOnly = true;
 			_currMap = 10;
 			playSound(30);
@@ -611,7 +611,7 @@ void KingdomGame::GPLogic3() {
 		case 0x429:
 		case 0x42A:
 			if (_nodes[59] < 8) {
-				InventoryDel(_userInput - 0x428);
+				inventoryDel(_userInput - 0x428);
 				saveAS();
 				playMovie(178);
 				restoreAS();
@@ -620,7 +620,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x435:
 			if (_nodes[59] >= 8)
-				DisplayIcon(143);
+				displayIcon(143);
 			else {
 				dsAll();
 				playMovie(142);
@@ -630,7 +630,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 582;
 			_zoom = 2;
-			ProcessMap(58, _zoom);
+			processMap(58, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -644,11 +644,11 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 582:
-		ProcessMapInput(58);
+		processMapInput(58);
 		break;
 	case 590:
 		_nodeNum = 59;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[60] == 0)
 			_nodes[60] = 1;
@@ -667,7 +667,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 592;
 			_zoom = 2;
-			ProcessMap(59, _zoom);
+			processMap(59, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -686,17 +686,17 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 592:
-		ProcessMapInput(59);
+		processMapInput(59);
 		break;
 	case 600:
 		setMouse();
-		EraseCursor();
+		eraseCursor();
 		fadeToBlack2();
 		showPic(106);
-		DrawIcon(4, 0, 12 - _healthOld);
+		drawIcon(4, 0, 12 - _healthOld);
 		_asMode = false;
 		_nodeNum = 60;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		dsAll();
 		playMovie(145);
@@ -705,7 +705,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 610:
 		_nodeNum = 61;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_nodes[73] = 0;
 		_nodes[74] = 0;
@@ -730,7 +730,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			dsAll();
 			playMovie(148);
 			_statPlay = 993;
@@ -772,7 +772,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 620:
 		_nodeNum = 62;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_eye = false;
 		if (_nodes[63] == 0) {
@@ -793,7 +793,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			saveAS();
 			playMovie(178);
 			restoreAS();
@@ -801,7 +801,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x430:
 			playMovie(150);
-			InventoryAdd(8);
+			inventoryAdd(8);
 			_nodes[63] = 1;
 			playSound(25);
 			_currMap = 121;
@@ -848,7 +848,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 630:
 		_nodeNum = 63;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_eye = false;
 		if (_nodes[64] == 1 || !_wizard) {
@@ -881,7 +881,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 640:
 		_nodeNum = 64;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		if (_nodes[65] || _wizard) {
 			_sound = true;
@@ -899,7 +899,7 @@ void KingdomGame::GPLogic3() {
 		case 0x43A:
 			_statPlay = 642;
 			_zoom = 2;
-			ProcessMap(64, _zoom);
+			processMap(64, _zoom);
 			_userInput = 0;
 			break;
 		case 0x43E:
@@ -913,7 +913,7 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 642:
-		ProcessMapInput(64);
+		processMapInput(64);
 		break;
 	case 650:
 		_nodeNum = 65;
@@ -1053,7 +1053,7 @@ void KingdomGame::GPLogic3() {
 			_userInput = 0;
 		} else {
 			_nodeNum = 69;
-			DrawLocation();
+			drawLocation();
 			_userInput = 0;
 			_currMap = 119;
 			_frameStop = 40;
@@ -1067,7 +1067,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			saveAS();
 			playMovie(178);
 			restoreAS();
@@ -1075,12 +1075,12 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x439:
 			if (_nodes[70] == 9)
-				DisplayIcon(147);
+				displayIcon(147);
 			else {
 				_frameStop = 108;
 				playMovie(158);
 				_itemInhibit = false;
-				InventoryAdd(17);
+				inventoryAdd(17);
 				_nodes[70] = 9;
 				playSound(23);
 				_userInput = 0;
@@ -1115,7 +1115,7 @@ void KingdomGame::GPLogic3() {
 		}
 		break;
 	case 692:
-		ProcessMapInput(69);
+		processMapInput(69);
 		break;
 	case 700:
 		_nodeNum = 70;
@@ -1165,7 +1165,7 @@ void KingdomGame::GPLogic3() {
 		dsAll();
 		playMovie(165);
 		_currMap = 10;
-		SetATimer();
+		setATimer();
 		_statPlay = _wizard ? 712 : 711;
 		break;
 	case 711:
@@ -1179,7 +1179,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
 			playMovie(178);
@@ -1196,7 +1196,7 @@ void KingdomGame::GPLogic3() {
 			_fstFwd = false;
 			playMovie(170);
 			playSound(25);
-			EndCredits();
+			endCredits();
 			_loopFlag = true;
 			break;
 		default:
@@ -1216,7 +1216,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_replay = false;
 			_aTimer = 0;
 			playMovie(178);
@@ -1237,7 +1237,7 @@ void KingdomGame::GPLogic3() {
 				_fstFwd = false;
 				playMovie(184);
 				playSound(25);
-				EndCredits();
+				endCredits();
 			}
 			_loopFlag = true;
 			break;
@@ -1258,7 +1258,7 @@ void KingdomGame::GPLogic3() {
 				enAll();
 				playMovie(169);
 				_statPlay = 580;
-				InventoryDel(11);
+				inventoryDel(11);
 				_nodes[51] = 0;
 			}
 			_loopFlag = true;
@@ -1268,9 +1268,9 @@ void KingdomGame::GPLogic3() {
 			playSound(0);
 			playMovie(193);
 			showPic(128);
-			InventoryDel(14);
+			inventoryDel(14);
 			_nodes[72] = 2;
-			SetATimer();
+			setATimer();
 			break;
 
 		case 0x437:
@@ -1283,7 +1283,7 @@ void KingdomGame::GPLogic3() {
 				_fstFwd = false;
 				playMovie(184);
 				playSound(25);
-				EndCredits();
+				endCredits();
 				_quit = true;
 //--				_QuitFlag = true;
 			} else {
@@ -1470,11 +1470,11 @@ void KingdomGame::GPLogic3() {
 	case 740:
 		_rtnNode = _nodeNum;
 		_nodeNum = 74;
-		DrawLocation();
+		drawLocation();
 		dsAll();
 		playMovie(185);
 		_currMap = 10;
-		SetATimer();
+		setATimer();
 		_statPlay = 741;
 		_userInput = 0;
 		break;
@@ -1489,7 +1489,7 @@ void KingdomGame::GPLogic3() {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_aTimer = 0;
 			playMovie(178);
 			_loopFlag = true;
@@ -1504,7 +1504,7 @@ void KingdomGame::GPLogic3() {
 			break;
 		case 0x437:
 			_loopFlag = true;
-			if (Wound()) {
+			if (wound()) {
 				_frameStop = 88;
 				playMovie(187);
 				_statPlay = 570;
@@ -1564,7 +1564,7 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 780:
 		_nodeNum = 78;
-		DrawLocation();
+		drawLocation();
 		_userInput = 0;
 		_eye = false;
 		playMovie(171);
@@ -1576,7 +1576,7 @@ void KingdomGame::GPLogic3() {
 		switch(_userInput) {
 		case 0x428:
 		case 0x42A:
-			InventoryDel(_userInput - 0x428);
+			inventoryDel(_userInput - 0x428);
 			_frameStop = 64;
 			playMovie(173);
 			showPic(471);
@@ -1586,7 +1586,7 @@ void KingdomGame::GPLogic3() {
 			if (_wizard) {
 				_frameStop = 64;
 				playMovie(173);
-				InventoryDel(1);
+				inventoryDel(1);
 			} else {
 				_frameStop = 66;
 				_fstFwd = false;
@@ -1641,12 +1641,12 @@ void KingdomGame::GPLogic3() {
 		break;
 	case 790:
 		_nodeNum = 79;
-		DrawLocation();
+		drawLocation();
 		dsAll();
 		playMovie(4);
 		_currMap = 8;
 		_statPlay = 791;
-		SetATimer();
+		setATimer();
 		_userInput = 0;
 		break;
 	case 791:
@@ -1678,15 +1678,15 @@ void KingdomGame::GPLogic3() {
 	}
 }
 
-void KingdomGame::EndCredits() {
+void KingdomGame::endCredits() {
 	_nodeNum = 0;
 	_bTimer = 190;
 	readMouse();
 
 	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
-		RefreshSound();
-		CheckMainScreen();
+		refreshSound();
+		checkMainScreen();
 		readMouse();
 	}
 
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index c61d3937aa..5a492bb1f7 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -32,7 +32,7 @@ void KingdomGame::GPLogic4() {
 			_aTimer = 133;
 		}
 		if (_asMode) {
-			SwitchMtoA();
+			switchMtoA();
 			_mapStat = 0;
 			_oldStatPlay--;
 			_asMode = false;
@@ -46,18 +46,18 @@ void KingdomGame::GPLogic4() {
 			readMouse();
 			while (_bTimer && !_mouseButton) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 				readMouse();
 			}
 			
 			if (_aTimer > 0)
-				SetATimer();
+				setATimer();
 			
 			_userInput = 0;
 			GPLogic4_SP901();
 		} else {
 			if (_aTimer > 0) {
-				SetATimer();
+				setATimer();
 				_aTimer = 133;
 			}
 			showPic(120);
@@ -90,7 +90,7 @@ void KingdomGame::GPLogic4() {
 			_bTimer = 36;
 			while(_bTimer) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 			}
 			
 			_loopFlag = true;
@@ -101,19 +101,19 @@ void KingdomGame::GPLogic4() {
 
 			_itemInhibit = false;
 			_tideCntl = false;
-			DrawPic(179);
+			drawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
 			enAll();
 			_mapEx = true;
 			_nodeNum = 5;
-			DrawLocation();
+			drawLocation();
 			playSound(0);
 			if (_nodes[5] > 0) {
 				playMovie(197);
 				_resurrect = true;
 			}
-			InventoryDel(12);
+			inventoryDel(12);
 			_statPlay = 50;
 		}
 		break;
@@ -140,7 +140,7 @@ void KingdomGame::GPLogic4() {
 			_bTimer = 36;
 			while(_bTimer != 0) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 			}
 
 			_loopFlag = true;
@@ -151,17 +151,17 @@ void KingdomGame::GPLogic4() {
 
 			_itemInhibit = false;
 			_tideCntl = false;
-			DrawPic(179);
+			drawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
 			enAll();
 			_mapEx = true;
 			_nodeNum = 27;
-			DrawLocation();
+			drawLocation();
 			_resurrect = true;
 			playSound(0);
 			playMovie(195);
-			InventoryDel(12);
+			inventoryDel(12);
 			_statPlay = 270;
 		}
 		break;
@@ -188,7 +188,7 @@ void KingdomGame::GPLogic4() {
 			_bTimer = 36;
 			while (_bTimer != 0) {
 				checkTimers();
-				RefreshSound();
+				refreshSound();
 			}
 			
 			_loopFlag = true;
@@ -201,17 +201,17 @@ void KingdomGame::GPLogic4() {
 
 			_itemInhibit = false;
 			_tideCntl = false;
-			DrawPic(179);
+			drawPic(179);
 			_skylarTimer = 0;
 			_skylarTimerFlag = false;
 			enAll();
 			_mapEx = true;
 			_nodeNum = 52;
-			DrawLocation();
+			drawLocation();
 			_resurrect = true;
 			playSound(0);
 			playMovie(196);
-			InventoryDel(12);
+			inventoryDel(12);
 			_statPlay = 520;
 		}
 		break;
@@ -233,14 +233,14 @@ void KingdomGame::GPLogic4() {
 
 void KingdomGame::GPLogic4_SP901() {
 	setMouse();
-	EraseCursor();
+	eraseCursor();
 	fadeToBlack2();
 	showPic(106);
-	DrawIcon(4, 0, 12 - _healthOld);
+	drawIcon(4, 0, 12 - _healthOld);
 	if (_tideCntl)
-		DrawPic(178);
+		drawPic(178);
 	else
-		DrawPic(179);
+		drawPic(179);
 	
 	_iconRedraw = true;
 	if (_userInput == 0x2F1) {
@@ -256,12 +256,12 @@ void KingdomGame::GPLogic4_SP901() {
 		} else {
 			_statPlay = _mapExit[_userInput - 0x400];
 			_userInput = 0;
-			Wound();
+			wound();
 			playMovie(10);
-			InventoryDel(3);
+			inventoryDel(3);
 			_tsIconOnly = false;
 			enAll();
-			SwitchAS();
+			switchAS();
 			_mapStat = 0;
 		}
 		_userInput = 0;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 9f84747e9f..dd4dbaf69a 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -205,7 +205,7 @@ Common::Error KingdomGame::run() {
 		}
 
 		if (!_loopFlag)
-			GetUserInput();
+			getUserInput();
 
 		refreshScreen();
 	}
@@ -269,7 +269,7 @@ void KingdomGame::drawScreen() {
 }
 
 void KingdomGame::setupPics() {
-	LoadKingArt();
+	loadKingArt();
 }
 
 void KingdomGame::initTools() {
@@ -500,7 +500,7 @@ void KingdomGame::gameHelp() {
 	}
 }
 
-void KingdomGame::LoadKingArt() {
+void KingdomGame::loadKingArt() {
 	loadAResource(0x97);
 	Common::SeekableReadStream *kingartStream = _rezPointers[0x97];
 	int val = kingartStream->readUint32LE();
@@ -553,7 +553,7 @@ void KingdomGame::releaseAResource(int reznum) {
 }
 
 void KingdomGame::showPic(int reznum) {
-	EraseCursor();
+	eraseCursor();
 
 	loadAResource(reznum);
 	Image::IFFDecoder decoder;
@@ -583,7 +583,7 @@ void KingdomGame::showPic(int reznum) {
 }
 
 void KingdomGame::fShowPic(int reznum) {
-	EraseCursor();
+	eraseCursor();
 	fadeToBlack1();
 	drawRect(4, 17, 228, 161, 0);
 	showPic(reznum);
@@ -591,9 +591,9 @@ void KingdomGame::fShowPic(int reznum) {
 
 void KingdomGame::initCursor() {
 	initMouse();
-	SetCursor(0x19C / 4);
+	setCursor(0x19C / 4);
 	_cursorDrawn = false;
-	DrawCursor();
+	drawCursor();
 }
 
 void KingdomGame::initMouse() {
@@ -623,14 +623,14 @@ void KingdomGame::playMovie(int movieNum) {
 	_aTimer = 0;
 	_asMode = false;
 
-	EraseCursor();
+	eraseCursor();
 
 	if (!_fullScreen) {
 		_treeLeftSta = (_fstFwd == 0) ? 0 : 1;
 		_treeRightSta = 0;
 		_iconSel = _iconSelect;
 		_iconsClosed = true;
-		CheckMainScreen();
+		checkMainScreen();
 		setMouse();
 		_oldCursorX = _cursorX;
 		_oldCursorY = _cursorY;
@@ -661,8 +661,8 @@ void KingdomGame::playMovie(int movieNum) {
 		_iconsClosed = false;
 		_iconSel = 9;
 		_treeLeftSta = _replay ? 2 : 0;
-		CheckMainScreen();
-		DrawCursor();
+		checkMainScreen();
+		drawCursor();
 		_fstFwd = true;
 		_frameStop = 0;
 		_lastSound = _sound;
@@ -729,7 +729,7 @@ void KingdomGame::restoreAS() {
 	_asPtr = nullptr;
 }
 
-void KingdomGame::SwitchAS() {
+void KingdomGame::switchAS() {
 	_asMode = false;
 	_currMap = _asMap;
 	_treeLeftSta = _oldTLS;
@@ -788,70 +788,70 @@ void KingdomGame::drawInventory() {
 		return;
 
 	if (_inventory[0] > 0)
-		DrawIcon(136, 102, 180);
+		drawIcon(136, 102, 180);
 
 	if (_inventory[1] > 0)
-		DrawIcon(73, 65, 175);
+		drawIcon(73, 65, 175);
 
 	if (_inventory[2] > 0)
-		DrawIcon(171, 96, 179);
+		drawIcon(171, 96, 179);
 
 	if (_inventory[3] > 0)
-		DrawIcon(120, 34, 174);
+		drawIcon(120, 34, 174);
 
 	if (_inventory[4] > 0)
-		DrawIcon(160, 41, 177);
+		drawIcon(160, 41, 177);
 
 	if (_inventory[5] > 0)
-		DrawIcon(21, 124, 184);
+		drawIcon(21, 124, 184);
 
 	if (_inventory[6] > 0)
-		DrawIcon(201, 42, 178);
+		drawIcon(201, 42, 178);
 
 	if (_inventory[7] > 0)
-		DrawIcon(76, 119, 186);
+		drawIcon(76, 119, 186);
 
 	if (_inventory[8] > 0)
-		DrawIcon(18, 31, 170);
+		drawIcon(18, 31, 170);
 
 	if (_inventory[9] > 0)
-		DrawIcon(57, 88, 185);
+		drawIcon(57, 88, 185);
 
 	if (_inventory[10] > 0)
-		DrawIcon(182, 124, 181);
+		drawIcon(182, 124, 181);
 
 	if (_inventory[11] > 0)
-		DrawIcon(176, 26, 183);
+		drawIcon(176, 26, 183);
 
 	if (_inventory[12] > 0)
-		DrawIcon(54, 23, 171);
+		drawIcon(54, 23, 171);
 
 	if (_inventory[13] > 0)
-		DrawIcon(120, 133, 182);
+		drawIcon(120, 133, 182);
 
 	if (_inventory[14] > 0)
-		DrawIcon(94, 92, 187);
+		drawIcon(94, 92, 187);
 
 	if (_inventory[15] > 0)
-		DrawIcon(135, 67, 176);
+		drawIcon(135, 67, 176);
 
 	if (_inventory[16] > 0)
-		DrawIcon(84, 30, 173);
+		drawIcon(84, 30, 173);
 
 	if (_inventory[17] > 0)
-		DrawIcon(20, 78, 172);
+		drawIcon(20, 78, 172);
 
 	if (_inventory[0] > 0)
-		DrawIcon(158, 117, 134 + _inventory[0]);
+		drawIcon(158, 117, 134 + _inventory[0]);
 
 	if (_inventory[1] > 0)
-		DrawIcon(94, 67, 134 + _inventory[1]);
+		drawIcon(94, 67, 134 + _inventory[1]);
 
 	if (_inventory[2] > 0)
-		DrawIcon(193, 105, 134 + _inventory[2]);
+		drawIcon(193, 105, 134 + _inventory[2]);
 
 	if (_inventory[3] > 0)
-		DrawIcon(131, 39, 134 + _inventory[3]);
+		drawIcon(131, 39, 134 + _inventory[3]);
 }
 
 Common::String KingdomGame::getSavegameFilename(int slot) {
@@ -1096,7 +1096,7 @@ void KingdomGame::playSound(int idx) {
 //	_mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, stream);
 }
 
-void KingdomGame::EraseCursor() {
+void KingdomGame::eraseCursor() {
 	CursorMan.showMouse(false);
 }
 
@@ -1117,12 +1117,12 @@ void KingdomGame::readMouse() {
 	g_system->getEventManager()->pushEvent(event);
 }
 
-void KingdomGame::GetUserInput() {
+void KingdomGame::getUserInput() {
 	// CHECKME: _QuitFlag != 0
 	if (_quit)
 		return;
 
-	_userInput = WaitKey();
+	_userInput = waitKey();
 
 	if (_quit)
 		return;
@@ -1149,11 +1149,11 @@ void KingdomGame::GetUserInput() {
 		_quit = true;
 }
 
-void KingdomGame::EraseCursorAsm() {
+void KingdomGame::eraseCursorAsm() {
 	CursorMan.showMouse(false);
 }
 
-void KingdomGame::DrawLocation() {
+void KingdomGame::drawLocation() {
 	if (_daelonCntr > 0)
 		_daelonCntr--;
 
@@ -1178,8 +1178,8 @@ void KingdomGame::DrawLocation() {
 		_bTimer = 16;
 		while(_bTimer) {
 			checkTimers();
-			RefreshSound();
-			CheckMainScreen();
+			refreshSound();
+			checkMainScreen();
 		}
 		fadeToBlack1();
 		drawRect(4, 17, 228, 161, 0);
@@ -1188,10 +1188,10 @@ void KingdomGame::DrawLocation() {
 	}
 }
 
-void KingdomGame::ProcessMap(int mapNum, int zoom) {
+void KingdomGame::processMap(int mapNum, int zoom) {
 	int var6 = _zoomTable[mapNum][zoom][0];
 	if (!_asMode)
-		SwitchAtoM();
+		switchAtoM();
 	fShowPic(var6);
 	_currMap = _zoomTable[mapNum][zoom][1];
 
@@ -1206,25 +1206,25 @@ void KingdomGame::ProcessMap(int mapNum, int zoom) {
 		_treeRightSta = 0;
 }
 
-void KingdomGame::ProcessMapInput(int mapNum) {
+void KingdomGame::processMapInput(int mapNum) {
 	switch(_userInput) {
 	case 0x43B:
 	case 0x443:
-		SwitchMtoA();
+		switchMtoA();
 		_mapStat = 0;
 		_statPlay--;
 		break;
 	case 0x43F:
 		if (_treeLeftSta == 3) {
 			_zoom--;
-			ProcessMap(mapNum, _zoom);
+			processMap(mapNum, _zoom);
 		} else
 			_userInput = 0;
 		break;
 	case 0x440:
 		if (_treeRightSta == 2) {
 			_zoom++;
-			ProcessMap(mapNum, _zoom);
+			processMap(mapNum, _zoom);
 		} else
 			_userInput = 0;
 		break;
@@ -1233,11 +1233,11 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 			_statPlay = _mapExit[_userInput - 0x400];
 			_mapEx = true;
 			_loopFlag = true;
-			SwitchAS();
+			switchAS();
 		}
 
 		if (_userInput > 0x440) {
-			SwitchMtoA();
+			switchMtoA();
 			_mapStat = false;
 			_statPlay--;
 			_loopFlag = true;
@@ -1246,20 +1246,20 @@ void KingdomGame::ProcessMapInput(int mapNum) {
 	}
 }
 
-void KingdomGame::InventoryDel(int item) {
+void KingdomGame::inventoryDel(int item) {
 	if (_inventory[item] > 0)
 		_inventory[item]--;
 }
 
-void KingdomGame::InventoryAdd(int item) {
+void KingdomGame::inventoryAdd(int item) {
 	if (item >= 4)
 		_inventory[item] = 1;
 	else
 		_inventory[item] = 3;
 }
 
-void KingdomGame::DrawPic(int reznum) {
-	EraseCursor();
+void KingdomGame::drawPic(int reznum) {
+	eraseCursor();
 	loadAResource(reznum);
 
 	Image::IFFDecoder decoder;
@@ -1284,7 +1284,7 @@ void KingdomGame::DrawPic(int reznum) {
 	releaseAResource(reznum);
 }
 
-void KingdomGame::DisplayIcon(int reznum) {
+void KingdomGame::displayIcon(int reznum) {
 	playSound(0);
 	playSound(30);
 	saveAS();
@@ -1294,7 +1294,7 @@ void KingdomGame::DisplayIcon(int reznum) {
 	
 	while(_bTimer != 0 && _mouseButton == 0) {
 		checkTimers();
-		RefreshSound();
+		refreshSound();
 		readMouse();
 	}
 
@@ -1303,7 +1303,7 @@ void KingdomGame::DisplayIcon(int reznum) {
 	restoreAS();
 }
 
-void KingdomGame::SetATimer() {
+void KingdomGame::setATimer() {
 	_aTimerFlag = true;
 	_aTimer = 0;
 	int wrkNodeNum = _nodeNum;
@@ -1328,7 +1328,7 @@ void KingdomGame::SetATimer() {
 	}
 }
 
-bool KingdomGame::Wound() {
+bool KingdomGame::wound() {
 	bool retval = false;
 	if (_health == 12 || _health == 8 || _health == 4) {
 		_health -= 2;
@@ -1337,11 +1337,13 @@ bool KingdomGame::Wound() {
 	return retval;
 }
 
-void KingdomGame::RefreshSound() {
-//	No implementation needed in ScummVM
+void KingdomGame::refreshSound() {
+// No implementation needed in ScummVM
+// The only useful check is against _sndReplayTbl, which determines
+// which sound should be replayed. But this array contains only false
 }
 
-void KingdomGame::IncreaseHealth() {
+void KingdomGame::increaseHealth() {
 	if (_health <= 3)
 		_health = 4;
 	else if (_health <= 7)
@@ -1350,7 +1352,7 @@ void KingdomGame::IncreaseHealth() {
 		_health = 12;
 }
 
-void KingdomGame::CheckMainScreen() {
+void KingdomGame::checkMainScreen() {
 	if (_cTimerFlag || _statPlay == 900 || _statPlay == 901)
 		return;
 
@@ -1373,21 +1375,21 @@ void KingdomGame::CheckMainScreen() {
 			else
 				iconIndex = 12 - _healthOld;
 
-			DrawIcon(4, 0, iconIndex);
+			drawIcon(4, 0, iconIndex);
 			_healthTmr = 1;
 		}
 	}
 
 	if (_iconRedraw) {
 		_iconRedraw = false;
-		DrawIcon(4, 0, 12 - _healthOld);
-		DrawIcon(11, 178, _iconPic[0]);
-		DrawIcon(38, 178, _iconPic[1]);
-		DrawIcon(65, 178, _iconPic[2]);
-		DrawIcon(92, 178, _iconPic[3]);
-		DrawIcon(119, 178, _iconPic[4]);
-		DrawIcon(146, 178, _iconPic[5]);
-		DrawIcon(173, 178, _iconPic[6]);
+		drawIcon(4, 0, 12 - _healthOld);
+		drawIcon(11, 178, _iconPic[0]);
+		drawIcon(38, 178, _iconPic[1]);
+		drawIcon(65, 178, _iconPic[2]);
+		drawIcon(92, 178, _iconPic[3]);
+		drawIcon(119, 178, _iconPic[4]);
+		drawIcon(146, 178, _iconPic[5]);
+		drawIcon(173, 178, _iconPic[6]);
 		_treeLeftPic = 0;
 		_treeRightPic = 0;
 		_treeEyeTimer = 0;
@@ -1396,7 +1398,7 @@ void KingdomGame::CheckMainScreen() {
 			_treeHGUPic = 0;
 		}
 		if (_tideCntl)
-			DrawPic(178);
+			drawPic(178);
 	}
 
 	for (int i = 0; i < 7; i++) {
@@ -1437,81 +1439,81 @@ void KingdomGame::CheckMainScreen() {
 			continue;
 
 		int posX = (27 * i) + 11;
-		DrawIcon(posX, 178, _iconPic[i]);
+		drawIcon(posX, 178, _iconPic[i]);
 	}
 
 	switch (_treeLeftSta) {
 	case 0:
 		if (_treeLeftPic != 33) {
-			DrawIcon(243, 141, 33);
+			drawIcon(243, 141, 33);
 			_treeLeftPic = 33;
 		}
 		break;
 	case 1:
 		if (_treeLeftPic != 34) {
-			DrawIcon(243, 141, 34);
+			drawIcon(243, 141, 34);
 			_treeLeftPic = 34;
 		}
 		break;
 	case 2:
 		if (!_replay) {
 			if (_treeLeftPic != 33) {
-				DrawIcon(243, 141, 33);
+				drawIcon(243, 141, 33);
 				_treeLeftPic = 33;
 			}
 		} else if (_treeLeftPic != 35) {
-			DrawIcon(243, 141, 35);
+			drawIcon(243, 141, 35);
 			_treeLeftPic = 35;
 		}
 		break;
 	case 3:
 		if (_treeLeftPic != 36) {
-			DrawIcon(243, 141, 36);
+			drawIcon(243, 141, 36);
 			_treeLeftPic = 36;
 		}
 		break;
 	default:
 		_treeLeftPic = 33;
 		_treeLeftSta = 0;
-		DrawIcon(243, 141, 33);
+		drawIcon(243, 141, 33);
 		break;
 	}
 
 	switch (_treeRightSta) {
 	case 0:
 		if (_treeRightPic == 37) {
-			DrawIcon(290, 143, 37);
+			drawIcon(290, 143, 37);
 			_treeRightPic = 37;
 		}
 		break;
 	case 1:
 		if (_help) {
 			if (_treeRightPic != 38) {
-				DrawIcon(290, 143, 38);
+				drawIcon(290, 143, 38);
 				_treeRightPic = 38;
 			}
 		} else if (_treeRightPic != 37) {
-			DrawIcon(290, 143, 37);
+			drawIcon(290, 143, 37);
 			_treeRightPic = 37;
 		}
 		break;
 	case 2:
 		if (_treeRightPic != 39) {
-			DrawIcon(290, 143, 39);
+			drawIcon(290, 143, 39);
 			_treeRightPic = 39;
 		}
 		break;
 	default:
 		_treeRightPic = 37;
 		_treeRightSta = 0;
-		DrawIcon(290, 143, 37);
+		drawIcon(290, 143, 37);
 		break;
 	}
 
 	if (_eye) {
 		if (_treeEyeTimer == 0) {
 			_treeEyePic = _teaSeq[_treeEyeSta][0];
-			DrawIcon(261, 51, _treeEyePic);
+			drawIcon(261, 51, _treeEyePic);
 			_treeEyeTimer = _teaSeq[_treeEyeSta][1];
 			_treeEyeSta++;
 			if (_treeEyeSta == 5)
@@ -1519,7 +1521,7 @@ void KingdomGame::CheckMainScreen() {
 		} else
 			_treeEyeTimer--;
 	} else if (_treeEyePic != 37) {
-		DrawIcon(261, 51, 146);
+		drawIcon(261, 51, 146);
 		_treeEyePic = 37;
 		_treeEyeSta = 0;
 		_treeEyeTimer = 0;
@@ -1538,13 +1540,13 @@ void KingdomGame::CheckMainScreen() {
 
 	if (timer == 0) {
 		if (_treeHGUPic != 147) {
-			EraseCursor();
-			DrawIcon(249, 171, 147);
+			eraseCursor();
+			drawIcon(249, 171, 147);
 			_treeHGUPic = 147;
 		}
 	} else if (_treeHGTimer == 0) {
 		_treeHGPic = _hgaSeq[_treeHGSta][0];
-		DrawIcon(249, 185, _treeHGPic);
+		drawIcon(249, 185, _treeHGPic);
 		_treeHGTimer = _hgaSeq[_treeHGSta][1];
 		_treeHGSta++;
 		if (_treeHGSta > 3)
@@ -1559,7 +1561,7 @@ void KingdomGame::CheckMainScreen() {
 			if (timer > 1)
 				var2--;
 			else {
-				DrawIcon(249, 171, 40 + var2);
+				drawIcon(249, 171, 40 + var2);
 				_treeHGUPic = 40 + var2;
 			}
 		}
@@ -1567,7 +1569,7 @@ void KingdomGame::CheckMainScreen() {
 		_treeHGTimer--;
 }
 
-bool KingdomGame::ChkDesertObstacles() {
+bool KingdomGame::chkDesertObstacles() {
 	if (!_wizard)
 		return false;
 
@@ -1607,7 +1609,7 @@ bool KingdomGame::ChkDesertObstacles() {
 	}
 }
 
-void KingdomGame::SwitchAtoM() {
+void KingdomGame::switchAtoM() {
 	_asMode = true;
 	_asMap = _currMap;
 	saveAS();
@@ -1624,14 +1626,14 @@ void KingdomGame::SwitchAtoM() {
 	_iconsClosed = true;
 }
 
-void KingdomGame::SwitchMtoA() {
-	SwitchAS();
+void KingdomGame::switchMtoA() {
+	switchAS();
 	fadeToBlack1();
 	drawRect(4, 17, 228, 161, 0);
 	restoreAS();
 }
 
-void KingdomGame::DrawIcon(int x, int y, int index) {
+void KingdomGame::drawIcon(int x, int y, int index) {
 	const byte *data = _kingartEntries[index]._data;
 	int width = _kingartEntries[index]._width;
 	int height = _kingartEntries[index]._height;
@@ -1650,8 +1652,8 @@ void KingdomGame::DrawIcon(int x, int y, int index) {
 
 }
 
-int KingdomGame::GetAKey() {
-	DrawCursor();
+int KingdomGame::getAKey() {
+	drawCursor();
 	if (_mouseButton != 0 && _mouseDebound == false) {
 		_mouseDebound = true;
 		return (_mouseButton & 2) ? 2 : 1;
@@ -1693,8 +1695,8 @@ int KingdomGame::GetAKey() {
 			_cursorY = event.mouse.y;
 
 		default:
-			RefreshSound();
-			CheckMainScreen();
+			refreshSound();
+			checkMainScreen();
 			if (_aTimerFlag) {
 				_aTimerFlag = false;
 				retval = 0x2F1;
@@ -1712,15 +1714,15 @@ int KingdomGame::GetAKey() {
 	return retval;
 }
 
-int KingdomGame::WaitKey() {
-	return GetAKey();
+int KingdomGame::waitKey() {
+	return getAKey();
 }
 
-void KingdomGame::DrawCursor() {
+void KingdomGame::drawCursor() {
 	readMouse();
 
-	CursorType();
-	SetCursor(_cursorDef);
+	cursorType();
+	setCursor(_cursorDef);
 	_oldCursorX = _cursorX;
 	_oldCursorY = _cursorY;
 	_oldCursorDef = _cursorDef;
@@ -1729,7 +1731,7 @@ void KingdomGame::DrawCursor() {
 	_cursorDrawn = true;
 }
 
-void KingdomGame::CursorType() {
+void KingdomGame::cursorType() {
 	_mouseValue = 0;
 	if (_currMap != 1 && _statPlay >= 30) {
 		int var2 = _statPlay == 901 ? 16 : 0;
@@ -1738,7 +1740,7 @@ void KingdomGame::CursorType() {
 			if (i == var6) {
 				int tmpVal = checkMouseMapAS();
 				if (tmpVal == -1) {
-					CursorTypeExit();
+					cursorTypeExit();
 					return;
 				} else
 					_mouseValue = tmpVal;
@@ -1750,7 +1752,7 @@ void KingdomGame::CursorType() {
 	} else {
 		int tmpVal = checkMouseMapAS();
 		if (tmpVal == -1) {
-			CursorTypeExit();
+			cursorTypeExit();
 			return;
 		} else {
 			_mouseValue = tmpVal;
@@ -1853,10 +1855,10 @@ void KingdomGame::CursorType() {
 				_mouseValue = 0x241;
 		}
 	}
-	CursorTypeExit();
+	cursorTypeExit();
 }
 
-void KingdomGame::CursorTypeExit() {
+void KingdomGame::cursorTypeExit() {
 	if (_mouseValue >= 0x400)
 		_cursorDef = _cursorTable[_mouseValue - 0x400];
 	else 
@@ -1878,7 +1880,7 @@ int KingdomGame::checkMouseMapAS() {
 	}
 	return -1;
 }
-void KingdomGame::SetCursor(int cursor) {
+void KingdomGame::setCursor(int cursor) {
 	KingArtEntry Cursor = _kingartEntries[cursor];
 	CursorMan.replaceCursor(Cursor._data, Cursor._width, Cursor._height, 0, 0, 255);
 }
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 11915ae39a..a262508ec9 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -244,35 +244,35 @@ namespace Kingdom {
 		void drawInventory();
 		void gameHelp_Sub43C();
 		void playSound(int idx);
-		void EraseCursor();
-		void GetUserInput();
-		void EraseCursorAsm();
-		void DrawLocation();
-		void ProcessMap(int mapNum, int zoom);
-		void ProcessMapInput(int mapNum);
-		void InventoryDel(int item);
-		void InventoryAdd(int item);
-		void DrawPic(int reznum);
-		void DisplayIcon(int reznum);
-		void SetATimer();
-		bool Wound();
-		void RefreshSound();
-		void SwitchAS();
-		void IncreaseHealth();
-		void CheckMainScreen();
-		bool ChkDesertObstacles();
-		void SwitchAtoM();
-		void SwitchMtoA();
-		void DrawIcon(int x, int y, int index);
-		int WaitKey();
-		void DrawCursor();
-		void CursorType();
-		void LoadKingArt();
-		void SetCursor(int cursor);
-		int GetAKey();
+		void eraseCursor();
+		void getUserInput();
+		void eraseCursorAsm();
+		void drawLocation();
+		void processMap(int mapNum, int zoom);
+		void processMapInput(int mapNum);
+		void inventoryDel(int item);
+		void inventoryAdd(int item);
+		void drawPic(int reznum);
+		void displayIcon(int reznum);
+		void setATimer();
+		bool wound();
+		void refreshSound();
+		void switchAS();
+		void increaseHealth();
+		void checkMainScreen();
+		bool chkDesertObstacles();
+		void switchAtoM();
+		void switchMtoA();
+		void drawIcon(int x, int y, int index);
+		int waitKey();
+		void drawCursor();
+		void cursorType();
+		void loadKingArt();
+		void setCursor(int cursor);
+		int getAKey();
 		int checkMouseMapAS();
-		void CursorTypeExit();
-		void EndCredits();
+		void cursorTypeExit();
+		void endCredits();
 		void saveGame();
 		void restoreGame();
 		virtual Common::Error loadGameState(int slot);


Commit: c4cc901c632af2a941c8c058929fa5124b268b35
    https://github.com/scummvm/scummvm/commit/c4cc901c632af2a941c8c058929fa5124b268b35
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: add change in setATimer for the demo

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index dd4dbaf69a..01abe1c3c3 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -179,6 +179,10 @@ KingdomGame::~KingdomGame() {
 	delete _rnd;
 }
 
+bool KingdomGame::isDemo() const {
+	return (bool)(_gameDescription->flags & ADGF_DEMO);
+}
+
 Common::Error KingdomGame::run() {
 	initGraphics(320, 200, false);
 	_console = new Console(this);
@@ -1322,7 +1326,8 @@ void KingdomGame::setATimer() {
 			_aTimerFlag = false;
 			_aTimer = _wizard ? 114 : 133;
 			playSound(0);
-			playSound(34);
+			if (!isDemo())
+				playSound(34);
 			break;
 		}
 	}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index a262508ec9..f062468025 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -104,6 +104,7 @@ namespace Kingdom {
 		const char *getGameId() const;
 		Common::Platform getPlatform() const;
 		static bool readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHeader &header);
+		bool isDemo() const;
 
 	private:
 		Console *_console;


Commit: 317c2970a173c8edc98074724ae7169493e05767
    https://github.com/scummvm/scummvm/commit/317c2970a173c8edc98074724ae7169493e05767
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add comments related to a difference in the demo version

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 01abe1c3c3..533f0c6d33 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -449,12 +449,14 @@ void KingdomGame::gameHelp() {
 		_keyActive = false;
 		_noIFScreen = true;
 		playSound(0);
-		int var = _pMovie;
+		// The demo isn't saving pMovie.
+		// It's obviously a bug and this behavior wasn't kept in ScummVM
+		int oldPMovie = _pMovie;
 		while(!_keyActive) {
 			playMovie(54);
 			fadeToBlack2();
 		}
-		_pMovie = var;
+		_pMovie = oldPMovie;
 		_noIFScreen = false;
 		showPic(106);
 		drawHelpScreen();
@@ -468,7 +470,9 @@ void KingdomGame::gameHelp() {
 		break;
 	case 0x245: {
 		fadeToBlack1();
-		int var = _pMovie;
+		// The demo isn't saving pMovie.
+		// It's obviously a bug and this behavior wasn't kept in ScummVM
+		int oldPMovie = _pMovie;
 		drawRect(4, 17, 228, 161, 0);
 		playMovie(205);
 		fadeToBlack1();
@@ -477,7 +481,7 @@ void KingdomGame::gameHelp() {
 		fadeToBlack1();
 		drawRect(4, 17, 228, 161, 0);
 		drawHelpScreen();
-		_pMovie = var;
+		_pMovie = oldPMovie;
 		}
 		break;
 	case 0x246:


Commit: ce6c1a22552f5770f799f40cd4be153703756dd0
    https://github.com/scummvm/scummvm/commit/ce6c1a22552f5770f799f40cd4be153703756dd0
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add a comment about a change in the demo, in displayIcon

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 533f0c6d33..f6e55c55bd 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1293,6 +1293,8 @@ void KingdomGame::drawPic(int reznum) {
 }
 
 void KingdomGame::displayIcon(int reznum) {
+	// The demo isn't calling playsound(0).
+	// We keep the call because it stops properly the previous sound, if any.
 	playSound(0);
 	playSound(30);
 	saveAS();


Commit: 33ef3352cedb497240adf5108526d5e39dc8821f
    https://github.com/scummvm/scummvm/commit/33ef3352cedb497240adf5108526d5e39dc8821f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM; Fix a bug in checkMainScreen(), implement a difference of the demo

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index f6e55c55bd..8b89956167 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1416,9 +1416,9 @@ void KingdomGame::checkMainScreen() {
 		int wrkNodeNum = _nodeNum;
 		if (_tsIconOnly)
 			wrkNodeNum = 79;
-		if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
+		if (_nodeNum == 56 && _inventory[16] < 1 && _wizard)
 			wrkNodeNum = 80;
-		if (_nodeNum == 21 && _nodes[21] == 9)
+		if (_nodeNum == 21 && _nodes[21] == 9 && !isDemo())
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 


Commit: 45cafdc8aad117e046e68e1ebfce11de3edd5fac
    https://github.com/scummvm/scummvm/commit/45cafdc8aad117e046e68e1ebfce11de3edd5fac
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add check in main loop to avoid GPL3 opcodes in demo

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 8b89956167..9424ee436c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -202,8 +202,13 @@ Common::Error KingdomGame::run() {
 				GPLogic1();
 			if (_statPlay > 249 && _statPlay < 500)
 				GPLogic2();
-			if (_statPlay > 499 && _statPlay < 900)
-				GPLogic3();
+			if (_statPlay > 499 && _statPlay < 900) {
+				if (!isDemo())
+					GPLogic3();
+				else
+					warning("Unexpected GPL3 opcode found in demo: %d", _statPlay);
+			}
+
 			if (_statPlay > 899)
 				GPLogic4();
 		}


Commit: 7153dd6d06e65f4ec581172238a99ee17e5d705c
    https://github.com/scummvm/scummvm/commit/7153dd6d06e65f4ec581172238a99ee17e5d705c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Move the hardcoded logic to a separate class

Changed paths:
  A engines/kingdom/logic.cpp
  A engines/kingdom/logic.h
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 326b45dfbe..45a21ca4c1 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -21,192 +21,193 @@
  */
 
 #include "kingdom/kingdom.h"
+#include "kingdom/logic.h"
 
 namespace Kingdom {
 
-void KingdomGame::GPLogic1() {
+void Logic::GPLogic1() {
 	switch(_statPlay) {
 	case 10:
 		_nodeNum = 1;
-		initPlay();
+		_vm->initPlay();
 		_replay = false;
 		GPLogic1_SubSP10();
 		break;
 	case 11:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x190:
 			_statPlay = 20;
-			_wizard = false;
-			_aTimer = 0;
+			_vm->_wizard = false;
+			_vm->_aTimer = 0;
 			break;
 		case 0x191:
 			_statPlay = 20;
-			_wizard = true;
-			_aTimer = 0;
+			_vm->_wizard = true;
+			_vm->_aTimer = 0;
 			break;
 		case 0x192:
-			_aTimer = 0;
-			fadeToBlack2();
-			playMovie(1);
+			_vm->_aTimer = 0;
+			_vm->fadeToBlack2();
+			_vm->playMovie(1);
 			GPLogic1_SubSP10();
 			break;
 		case 0x193:
-			_aTimer = 0;
-			_keyActive = false;
-			_noIFScreen = true;
-			playSound(0);
-			while(!_keyActive) {
-				fadeToBlack2();
-				playMovie(54);
+			_vm->_aTimer = 0;
+			_vm->_keyActive = false;
+			_vm->_noIFScreen = true;
+			_vm->playSound(0);
+			while(!_vm->_keyActive) {
+				_vm->fadeToBlack2();
+				_vm->playMovie(54);
 			}
 			GPLogic1_SubSP10();
 			break;
 		case 0x194:
 			// CHECKME	_QuitFlag = 2;
-			_quit = true;
+			_vm->_quit = true;
 			break;
 		case 0x24A:
-			fadeToBlack2();
-			setMouse();
-			eraseCursor();
-			restoreGame();
+			_vm->fadeToBlack2();
+			_vm->setMouse();
+			_vm->eraseCursor();
+			_vm->restoreGame();
 			break;
 		case 0x2F1:
-			eraseCursorAsm();
-			_cursorDrawn = false;
-			fadeToBlack2();
-			playSound(0);
-			playMovie(54);
+			_vm->eraseCursorAsm();
+			_vm->_cursorDrawn = false;
+			_vm->fadeToBlack2();
+			_vm->playSound(0);
+			_vm->playMovie(54);
 			GPLogic1_SubSP10();
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 20:
-		initPlay();
-		_noIFScreen = false;
-		eraseCursorAsm();
-		_cursorDrawn = false;
-		fadeToBlack2();
-		showPic(106);
+		_vm->initPlay();
+		_vm->_noIFScreen = false;
+		_vm->eraseCursorAsm();
+		_vm->_cursorDrawn = false;
+		_vm->fadeToBlack2();
+		_vm->showPic(106);
 		_statPlay = 30;
-		_userInput = 0;
-		_loopFlag = true;
+		_vm->_userInput = 0;
+		_vm->_loopFlag = true;
 		break;
 	case 30:
 		_nodeNum = 3;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		if (_nodes[3] == 0) {
-			playMovie(177);
+			_vm->playMovie(177);
 			_nodes[3] = 9;
-			if (!_wizard) {
+			if (!_vm->_wizard) {
 				_statPlay = 50;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			}
 		}
-		drawLocation();
+		_vm->drawLocation();
 		if (_nodes[4] != 0 && _nodes[6] != 1)
-			_sound = true;
+			_vm->_sound = true;
 		else
-			_sound = false;
+			_vm->_sound = false;
 		
-		playMovie(7);
+		_vm->playMovie(7);
 		_statPlay = 31;
 		_currMap = 10;
-		playSound(24);
-		_userInput = 0;
+		_vm->playSound(24);
+		_vm->_userInput = 0;
 		break;
 	case 31:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 32;
-			_zoom = 2;
-			processMap(3, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(3, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 32:
-		processMapInput(3);
+		_vm->processMapInput(3);
 		break;
 	case 40:
 		_nodeNum = 4;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[4] == 0)
-			playMovie(62);
+			_vm->playMovie(62);
 		if (_nodes[4] == 9) {
-			playMovie(8);
-			_tsIconOnly = true;
+			_vm->playMovie(8);
+			_vm->_tsIconOnly = true;
 		}
 		_currMap = 10;
-		playSound(14);
+		_vm->playSound(14);
 		_statPlay = 41;
 		break;
 	case 41:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x429:
-			playMovie(178);
-			playMovie(63);
+			_vm->playMovie(178);
+			_vm->playMovie(63);
 			inventoryDel(1);
 			_currMap = 10;
 			_nodes[4] = 9;
 			_statPlay = 41;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 42;
-			_zoom = 2;
-			processMap(4, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(4, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 42:
-		processMapInput(4);
+		_vm->processMapInput(4);
 		break;
 	case 50:
 		_nodeNum = 5;
-		drawLocation();
+		_vm->drawLocation();
 		if (_nodes[5] != 0 && !_resurrect) {
-			_frameStop = 38;
-			playMovie(5);
+			_vm->_frameStop = 38;
+			_vm->playMovie(5);
 		}
 		
 		if (_nodes[5] == 0)
-			playMovie(5);
+			_vm->playMovie(5);
 		
 		_resurrect = false;
-		playSound(1);
+		_vm->playSound(1);
 		
 		if (_spell1 && _spell2 && _spell3) {
-			_sound = true;
-			playMovie(2);
+			_vm->_sound = true;
+			_vm->playMovie(2);
 			_currMap = 10;
 			_statPlay = 51;
-			_loopFlag = true;
-		} else if (_daelonCntr) {
-			playMovie(2);
+			_vm->_loopFlag = true;
+		} else if (_vm->_daelonCntr) {
+			_vm->playMovie(2);
 			_currMap = 10;
 			_statPlay = 51;
 		} else {
@@ -215,577 +216,577 @@ void KingdomGame::GPLogic1() {
 				inventoryAdd(1);
 				break;
 			case 1:
-				playMovie(60);
+				_vm->playMovie(60);
 				inventoryAdd(0);
 				_spell1 = true;
 				break;
 			case 2:
-				playMovie(59);
+				_vm->playMovie(59);
 				inventoryAdd(2);
 				_spell2 = true;
 				break;
 			case 3:
-				_sound = true;
-				playMovie(59);
+				_vm->_sound = true;
+				_vm->playMovie(59);
 				inventoryAdd(3);
 				_spell3 = true;
 				break;
 			}
 			if (_spell1 && _spell2 && _spell3) {
-				playMovie(6);
+				_vm->playMovie(6);
 				_currMap = 7;
 				_statPlay = 51;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				_eye = false;
-				playMovie(61);
-				playSound(1);
+				_vm->playMovie(61);
+				_vm->playSound(1);
 
 				if (!_spell1)
-					drawPic(116);
+					_vm->drawPic(116);
 				
 				if (!_spell2)
-					drawPic(117);
+					_vm->drawPic(117);
 				
 				if (!_spell3)
-					drawPic(118);
+					_vm->drawPic(118);
 				
 				_currMap = 6;
 				_statPlay = 53;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 		}
 		break;
 	case 51:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x406:
 			_statPlay = 70;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x40A:
 			_statPlay = 110;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x417:
 			_statPlay = 30;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 52;
-			_zoom = 2;
-			processMap(5, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(5, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 52:
-		processMapInput(5);
+		_vm->processMapInput(5);
 		break;
 	case 53:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 			_nodes[5] = 1;
-			_daelonCntr = 5;
-			playMovie(6);
+			_vm->_daelonCntr = 5;
+			_vm->playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
 			break;
 		case 0x42A:
 			_nodes[5] = 2;
-			_daelonCntr = 5;
-			playMovie(6);
+			_vm->_daelonCntr = 5;
+			_vm->playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
 			break;
 		case 0x42B:
 			_nodes[5] = 3;
-			_daelonCntr = 5;
-			playMovie(6);
+			_vm->_daelonCntr = 5;
+			_vm->playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
 			_eye = true;
 			break;
 		case 0x43E:
-			if (!_spell1 && !_spell2 && !_spell3 && !_wizard) {
-				playMovie(177);
-				drawLocation();
-				playMovie(5);
+			if (!_spell1 && !_spell2 && !_spell3 && !_vm->_wizard) {
+				_vm->playMovie(177);
+				_vm->drawLocation();
+				_vm->playMovie(5);
 			}
 
-			playSound(1);
+			_vm->playSound(1);
 			_eye = false;
-			playMovie(61);
+			_vm->playMovie(61);
 
 			if (!_spell1)
-				drawPic(116);
+				_vm->drawPic(116);
 
 			if (!_spell2)
-				drawPic(117);
+				_vm->drawPic(117);
 
 			if (!_spell3)
-				drawPic(118);
+				_vm->drawPic(118);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 60:
 		_nodeNum = 6;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[4] == 0) {
 			dsAll();
-			playMovie(9);
+			_vm->playMovie(9);
 			_statPlay = 991;
 		} else {
-			playMovie(64);
+			_vm->playMovie(64);
 			_statPlay = 200;
 		}
 		_currMap = 10;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 70:
 		_nodeNum = 7;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[7] == 0) {
-			playMovie(11);
-			playSound(2);
+			_vm->playMovie(11);
+			_vm->playSound(2);
 			_currMap = 9;
 		} else {
-			_sound = true;
-			playMovie(13);
-			playSound(43);
+			_vm->_sound = true;
+			_vm->playMovie(13);
+			_vm->playSound(43);
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 		}
 		_statPlay = 71;
 		break;
 	case 71:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x42F:
 			if (_nodes[7] == 9) {
-				displayIcon(137);
+				_vm->displayIcon(137);
 			} else {
-				playMovie(12);
-				playSound(30);
+				_vm->playMovie(12);
+				_vm->playSound(30);
 				inventoryAdd(7);
 				_nodes[7] = 9;
 				_currMap = 10;
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 72;
-			_zoom = 2;
-			processMap(7, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(7, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 72:
-		processMapInput(7);
+		_vm->processMapInput(7);
 		break;
 	case 80:
 		_nodeNum = 8;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[8] == 9) {
-			playMovie(24);
-			playSound(3);
+			_vm->playMovie(24);
+			_vm->playSound(3);
 			_currMap = 13;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 		} else {
 			_nodes[8] = 0;
 			dsAll();
-			playMovie(14);
+			_vm->playMovie(14);
 			_currMap = 10;
-			setATimer();
+			_vm->setATimer();
 		}
 		_statPlay = 81;
 		break;
 	case 81:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			dsAll();
-			playMovie(15);
+			_vm->playMovie(15);
 			_statPlay = 991;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x429:
 			if (!_nodes[8]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(18);
-				playSound(3);
+				_vm->playMovie(18);
+				_vm->playSound(3);
 				inventoryDel(1);
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 13;
 				_nodes[8] = 1;
 			}
 			break;
 		case 0x42A:
 			if (!_nodes[8]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(18);
-				playSound(3);
+				_vm->playMovie(18);
+				_vm->playSound(3);
 				inventoryDel(2);
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 13;
 				_nodes[8] = 1;
 			}
 			break;
 		case 0x42C:
 			if (!_nodes[8]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(16);
-				playSound(3);
+				_vm->playMovie(16);
+				_vm->playSound(3);
 				_nodes[8] = 9;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 				_currMap = 13;
 			}
 			break;
 		case 0x42D:
 			if (!_nodes[8]) {
 				enAll();
-				playMovie(17);
+				_vm->playMovie(17);
 				inventoryDel(5);
-				playSound(3);
-				_aTimer = 0;
-				_userInput = 0;
+				_vm->playSound(3);
+				_vm->_aTimer = 0;
+				_vm->_userInput = 0;
 				_currMap = 13;
 				_nodes[8] = 1;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 82;
-			_zoom = 2;
-			processMap(8, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(8, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			_aTimer = 0;
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			_vm->_aTimer = 0;
 			break;
 		case 0x453:
 			if (_nodes[8] == 1) {
 				_statPlay = 80;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				_statPlay = 160;
-				_loopFlag = true;
-				_userInput = 0;
+				_vm->_loopFlag = true;
+				_vm->_userInput = 0;
 			}
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 82:
-		processMapInput(8);
+		_vm->processMapInput(8);
 		break;
 	case 90:
 		if (_nodeNum == 18 && _nodes[17] == 0) {
 			_statPlay = 170;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_nextNode = 90;
 		} else {
 			_nodeNum = 9;
-			drawLocation();
-			_userInput = 0;
+			_vm->drawLocation();
+			_vm->_userInput = 0;
 			if (_nodes[9] == 0) {
-				_sound = false;
+				_vm->_sound = false;
 				_nodes[9] = 9;
 			} else
-				_sound = true;
+				_vm->_sound = true;
 			
-			if (!_wizard)
-				_frameStop = 90;
+			if (!_vm->_wizard)
+				_vm->_frameStop = 90;
 
-			playMovie(19);
-			playSound(15);
-			if (!_wizard)
-				showPic(109);
+			_vm->playMovie(19);
+			_vm->playSound(15);
+			if (!_vm->_wizard)
+				_vm->showPic(109);
 			else
-				showPic(319);
+				_vm->showPic(319);
 
 			_currMap = 10;
 			_statPlay = 91;
 		}
 		break;
 	case 91:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 92;
-			_zoom = 2;
-			processMap(9, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(9, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			if (!_wizard)
-				_frameStop = 90;
+			if (!_vm->_wizard)
+				_vm->_frameStop = 90;
 
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			if (!_wizard)
-				showPic(109);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			if (!_vm->_wizard)
+				_vm->showPic(109);
 			else
-				showPic(319);
+				_vm->showPic(319);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 92:
-		processMapInput(9);
+		_vm->processMapInput(9);
 		break;
 	case 100:
 		if (_nodeNum == 18 && _nodes[17] == 0) {
 			_statPlay = 170;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_nextNode = 100;
 		} else {
 			_nodeNum = 10;
-			drawLocation();
-			_userInput = 0;
+			_vm->drawLocation();
+			_vm->_userInput = 0;
 			if (_nodes[10] == 1)
 				_nodes[10] = 9;
 
 			if (_nodes[10] != 9) {
-				_sound = false;
+				_vm->_sound = false;
 				_nodes[10] = 1;
-			} else if (_wizard)
-				_sound = true;
+			} else if (_vm->_wizard)
+				_vm->_sound = true;
 
-			playMovie(20);
-			playSound(41);
+			_vm->playMovie(20);
+			_vm->playSound(41);
 			_currMap = 10;
 			_statPlay = 101;
 		}
 		break;
 	case 101:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 102;
-			_zoom = 2;
-			processMap(10, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(10, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 102:
-		processMapInput(10);
+		_vm->processMapInput(10);
 		break;
 	case 110:
 		_nodeNum = 11;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[22] == 0)
-			_sound = false;
+			_vm->_sound = false;
 		else
-			_sound = true;
-		playMovie(21);
-		playSound(42);
+			_vm->_sound = true;
+		_vm->playMovie(21);
+		_vm->playSound(42);
 		_currMap = 10;
 		_statPlay = 111;
 		break;
 	case 111:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 112;
-			_zoom = 1;
-			processMap(11, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 1;
+			_vm->processMap(11, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			playMovie(21);
+			_vm->playMovie(21);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 112:
-		processMapInput(11);
+		_vm->processMapInput(11);
 		break;
 	case 120:
 		_nodeNum = 12;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[12] == 0) {
-			playMovie(22);
+			_vm->playMovie(22);
 			_currMap = 14;
 		} else {
-			playMovie(25);
+			_vm->playMovie(25);
 			_currMap = 15;
 		}
 		_eye = false;
-		playSound(3);
+		_vm->playSound(3);
 		_statPlay = 121;
 		break;
 	case 121:
-		switch (_userInput) {
+		switch (_vm->_userInput) {
 		case 0x445:
 			_statPlay = 150;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_eye = true;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x446:
 			_statPlay = 80;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_eye = true;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x437:
 			if (_nodes[12] == 9) {
-				displayIcon(145);
-				_userInput = 0;
+				_vm->displayIcon(145);
+				_vm->_userInput = 0;
 			} else
 				GPLogic1_SubSP121();
 			break;
 		case 0x43E:
-			if (_pMovie == 023)
+			if (_vm->_pMovie == 023)
 				GPLogic1_SubSP121();
 			else {
-				_sound = _lastSound;
-				playMovie(_pMovie);
-				playSound(3);
+				_vm->_sound = _vm->_lastSound;
+				_vm->playMovie(_vm->_pMovie);
+				_vm->playSound(3);
 			}
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 130:
 		_nodeNum = 13;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		dsAll();
-		playMovie(4);
+		_vm->playMovie(4);
 		_statPlay = 991;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 140:
 		_nodeNum = 14;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (wound()) {
-			playMovie(26);
-			playSound(35);
+			_vm->playMovie(26);
+			_vm->playSound(35);
 			_currMap = 10;
 			_statPlay = 141;
 		} else {
 			dsAll();
-			playMovie(27);
+			_vm->playMovie(27);
 			_statPlay = 991;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 		}
 		break;
 	case 141:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 142;
-			_zoom = 2;
-			processMap(14, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(14, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 142:
-		processMapInput(14);
+		_vm->processMapInput(14);
 		break;
 	case 150:
 		_nodeNum = 15;
-		drawLocation();
-		playMovie(28);
-		playSound(3);
+		_vm->drawLocation();
+		_vm->playMovie(28);
+		_vm->playSound(3);
 		_currMap = 16;
 		_statPlay = 151;
 		_eye = false;
 		break;
 	case 151:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			_aTimer = 0;
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			_vm->_aTimer = 0;
 			break;
 		case 0x445:
 			_statPlay = 80;
 			enAll();
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 160:
 		_nodeNum = 16;
-		drawLocation();
-		_userInput = 0;
-		playMovie(29);
-		playSound(3);
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		_vm->playMovie(29);
+		_vm->playSound(3);
 		_currMap = 85;
 		_statPlay = 161;
 		break;
 	case 161:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x198: {
-			fadeToBlack1();
-			drawRect(4, 17, 228, 161, 0);
+			_vm->fadeToBlack1();
+			_vm->drawRect(4, 17, 228, 161, 0);
 			_replay = true;
-			int oldPMovie = _pMovie;
-			playMovie(208);
-			_pMovie = oldPMovie;
-			_asMode = false;
-			restoreAS();
+			int oldPMovie = _vm->_pMovie;
+			_vm->playMovie(208);
+			_vm->_pMovie = oldPMovie;
+			_vm->_asMode = false;
+			_vm->restoreAS();
 			_help = true;
 			_eye = true;
 			_pouch = true;
@@ -793,14 +794,14 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x199: {
-			fadeToBlack1();
-			drawRect(4, 17, 228, 161, 0);
+			_vm->fadeToBlack1();
+			_vm->drawRect(4, 17, 228, 161, 0);
 			_replay = true;
-			int oldPMovie = _pMovie;
-			playMovie(207);
-			_pMovie = oldPMovie;
-			_asMode = false;
-			restoreAS();
+			int oldPMovie = _vm->_pMovie;
+			_vm->playMovie(207);
+			_vm->_pMovie = oldPMovie;
+			_vm->_asMode = false;
+			_vm->restoreAS();
 			_help = true;
 			_eye = true;
 			_pouch = true;
@@ -808,600 +809,600 @@ void KingdomGame::GPLogic1() {
 			}
 			break;
 		case 0x19A:
-			fShowPic(110);
-			_bTimer = 190;
-			readMouse();
-			while(_bTimer != 0 && _mouseButton == 0) {
-				checkTimers();
-				refreshSound();
-				readMouse();
+			_vm->fShowPic(110);
+			_vm->_bTimer = 190;
+			_vm->readMouse();
+			while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+				_vm->checkTimers();
+				_vm->refreshSound();
+				_vm->readMouse();
 			}
-			fShowPic(105);
+			_vm->fShowPic(105);
 			break;
 		case 0x42E:
 			_nodes[15] = 1;
 			_nodes[16] = 1;
 			_statPlay = 120;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 162;
-			_zoom = 2;
-			processMap(16, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(16, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			if (_pMovie > 206)
-				saveAS();
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			if (_pMovie > 206)
-				restoreAS();
+			if (_vm->_pMovie > 206)
+				_vm->saveAS();
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			if (_vm->_pMovie > 206)
+				_vm->restoreAS();
 			break;
 		case 0x444:
-			saveAS();
+			_vm->saveAS();
 			_help = false;
 			_eye = false;
 			_pouch = false;
 			_replay = false;
-			fShowPic(105);
+			_vm->fShowPic(105);
 			_currMap = 86;
 			break;
 		case 0x445:
-			if (_nodes[16] || !_wizard) {
+			if (_nodes[16] || !_vm->_wizard) {
 				_statPlay = 120;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x446:
 			_statPlay = 80;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x450:
-			saveAS();
-			fShowPic(123);
-			_bTimer = 76;
-			readMouse();
+			_vm->saveAS();
+			_vm->fShowPic(123);
+			_vm->_bTimer = 76;
+			_vm->readMouse();
 
-			while(_bTimer != 0 && _mouseButton == 0) {
-				checkTimers();
-				refreshSound();
-				readMouse();
+			while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+				_vm->checkTimers();
+				_vm->refreshSound();
+				_vm->readMouse();
 			}
 
-			fadeToBlack1();
-			drawRect(4, 17, 228, 161, 0);
-			restoreAS();
+			_vm->fadeToBlack1();
+			_vm->drawRect(4, 17, 228, 161, 0);
+			_vm->restoreAS();
 			break;	
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 162:
-			processMapInput(16);
+			_vm->processMapInput(16);
 		break;
 	case 170:
 		if (_nodes[17] == 9) {
 			_statPlay = _nextNode;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		} else {
 			_nodeNum = 17;
-			drawLocation();
+			_vm->drawLocation();
 			dsAll();
-			playMovie(30);
+			_vm->playMovie(30);
 			_currMap = 10;
 			_statPlay = 171;
-			setATimer();
-			_userInput = 0;
+			_vm->setATimer();
+			_vm->_userInput = 0;
 		}
 		break;
 	case 171:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			enAll();
 			if (wound()) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				_replay = false;
-				playMovie(31);
+				_vm->playMovie(31);
 				_statPlay = _nextNode;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				dsAll();
-				playMovie(32);
+				_vm->playMovie(32);
 				_statPlay = 991;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x42C:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			_replay = false;
 			enAll();
-			playMovie(34);
-			_userInput = 0;
+			_vm->playMovie(34);
+			_vm->_userInput = 0;
 			_nodes[17] = 9;
 			_statPlay = _nextNode;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 172:
-		if (_userInput == 0x2F1) {
+		if (_vm->_userInput == 0x2F1) {
 			_statPlay = 171;
-			_loopFlag= true;
+			_vm->_loopFlag= true;
 			switchAS();
 		} else
-			processMapInput(_nodeNum);
+			_vm->processMapInput(_nodeNum);
 		break;
 	case 180:
 		if ((_nodeNum != 9 && _nodeNum != 10) || (_nodes[17] != 0)) {
 			_nodeNum = 18;
-			drawLocation();
-			_userInput = 0;
+			_vm->drawLocation();
+			_vm->_userInput = 0;
 			if (_nodes[18] == 0 || _nodes[18] == 1) {
 				_nodes[18] = 0;
-				playMovie(33);
+				_vm->playMovie(33);
 				_currMap = 10;
 			}
 			if (_nodes[18] == 9) {
-				playMovie(37);
+				_vm->playMovie(37);
 				_currMap = 19;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
-			playSound(16);
+			_vm->playSound(16);
 			_statPlay = 181;
 		} else {
 			_statPlay = 170;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_nextNode = 180;
 		}
 		break;
 	case 181:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x407:
 			_statPlay = 80;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x428:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(0);
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x429:
 			if (!_nodes[18]) {
 				inventoryDel(1);
 				_nodes[18] = true;
 			}
-			playMovie(35);
-			_userInput = 0;
+			_vm->playMovie(35);
+			_vm->_userInput = 0;
 			break;
 		case 0x42A:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(2);
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x42C:
-			saveAS();
-			playMovie(34);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(34);
+			_vm->restoreAS();
 			break;
 		case 0x42F:
 			if (_nodes[18] == 1) {
-				playMovie(36);
+				_vm->playMovie(36);
 				inventoryDel(7);
 				_nodes[18] = 9;
 				_currMap = 19;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			} else {
-				_frameStop = 27;
+				_vm->_frameStop = 27;
 				_fstFwd = false;
-				playMovie(36);
+				_vm->playMovie(36);
 				_fstFwd = true;
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 182;
-			_zoom = 2;
+			_vm->_zoom = 2;
 			if (_nodes[18] == 9)
-				processMap(80, _zoom);
+				_vm->processMap(80, _vm->_zoom);
 			else
-				processMap(18, _zoom);
+				_vm->processMap(18, _vm->_zoom);
 
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			if (_pMovie == 36 && _nodes[18] != 9) {
-				_frameStop = 27;
+			_vm->_sound = _vm->_lastSound;
+			if (_vm->_pMovie == 36 && _nodes[18] != 9) {
+				_vm->_frameStop = 27;
 				_fstFwd = false;
-				playMovie(36);
+				_vm->playMovie(36);
 				_fstFwd = true;
 			} else
-				playMovie(_pMovie);
+				_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 182:
-		processMapInput(18);
+		_vm->processMapInput(18);
 		break;
 	case 190:
 		_nodeNum = 19;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		dsAll();
-		playMovie(38);
+		_vm->playMovie(38);
 		_statPlay = 991;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 200:
 		_nodeNum = 20;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (!_nodes[20]) {
-			playMovie(39);
+			_vm->playMovie(39);
 			increaseHealth();
 		} else {
-			playMovie(40);
+			_vm->playMovie(40);
 			_tideCntl = true;
-			drawPic(178);
+			_vm->drawPic(178);
 		}
-		playSound(42);
+		_vm->playSound(42);
 		_currMap = 10;
 		_statPlay = 201;
 		break;
 	case 201:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 202;
-			_zoom = 0;
-			processMap(20, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 0;
+			_vm->processMap(20, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 202:
-		processMapInput(20);
+		_vm->processMapInput(20);
 		break;
 	case 210:
 		_nodeNum = 21;
-		drawLocation();
-		_userInput = 0;
-		if (!_wizard)
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (!_vm->_wizard)
 			_nodes[21] = 9;
 
 		if (_nodes[21] == 9) {
 			_nodes[21] = 9;
-			playMovie(209);
-			playSound(38);
+			_vm->playMovie(209);
+			_vm->playSound(38);
 			_currMap = 81;
 		} else {
 			dsAll();
-			playMovie(45);
+			_vm->playMovie(45);
 			_nodes[21] = 0;
 			_currMap = 10;
-			setATimer();
+			_vm->setATimer();
 		}
 		_statPlay = 211;
 		break;
 	case 211:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			dsAll();
-			playMovie(46);
+			_vm->playMovie(46);
 			_statPlay = 991;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 			inventoryDel(0);
 			if (_nodes[21] == 9) {
-				saveAS();
-				playMovie(65);
-				restoreAS();
-				_userInput = 0;
+				_vm->saveAS();
+				_vm->playMovie(65);
+				_vm->restoreAS();
+				_vm->_userInput = 0;
 			} else {
-				playMovie(178);
+				_vm->playMovie(178);
 				dsAll();
-				playMovie(46);
+				_vm->playMovie(46);
 				_statPlay = 991;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x42A:
 			if (!_nodes[21]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(48);
+				_vm->playMovie(48);
 				inventoryDel(2);
 				_nodes[21] = 1;
-				_tsIconOnly = true;
-				playSound(38);
-				_userInput = 0;
+				_vm->_tsIconOnly = true;
+				_vm->playSound(38);
+				_vm->_userInput = 0;
 			}
 			break;
 		case 0x42D:
 			if (!_nodes[21]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(47);
-				playSound(38);
+				_vm->playMovie(47);
+				_vm->playSound(38);
 				inventoryDel(5);
 				_nodes[21] = 9;
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 81;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 212;
-			_zoom = 2;
-			processMap(21, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(21, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			if (_pMovie == 65) {
-				saveAS();
-				playMovie(65);
-				restoreAS();
-				_userInput = 0;
+			if (_vm->_pMovie == 65) {
+				_vm->saveAS();
+				_vm->playMovie(65);
+				_vm->restoreAS();
+				_vm->_userInput = 0;
 			} else {
-				_sound = _lastSound;
-				playMovie(_pMovie);
+				_vm->_sound = _vm->_lastSound;
+				_vm->playMovie(_vm->_pMovie);
 			}
 			break;
 		case 0x441:
 			_statPlay = 220;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x442:
-			if (_tsIconOnly) {
-				_aTimer = 0;
+			if (_vm->_tsIconOnly) {
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(49);
-				_tsIconOnly = false;
-				playSound(38);
-				_userInput = 0;
+				_vm->playMovie(49);
+				_vm->_tsIconOnly = false;
+				_vm->playSound(38);
+				_vm->_userInput = 0;
 			}
 			break;
 		case 0x448:
 			_statPlay = 140;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 212:
-		if (_userInput == 0x2F1) {
-			_userInput = 0;
-			_aTimer = 0;
+		if (_vm->_userInput == 0x2F1) {
+			_vm->_userInput = 0;
+			_vm->_aTimer = 0;
 			_statPlay = 211;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			switchAS();
 		}
-		processMapInput(21);
+		_vm->processMapInput(21);
 		break;
 	case 220:
 		_nodeNum = 22;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (!_nodes[22]) {
-			playMovie(41);
+			_vm->playMovie(41);
 			_currMap = 82;
 		} else {
-			_tsIconOnly = true;
-			playMovie(44);
+			_vm->_tsIconOnly = true;
+			_vm->playMovie(44);
 			_currMap = 10;
 		}
-		playSound(38);
+		_vm->playSound(38);
 		_statPlay = 221;
 		break;
 	case 221:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(0);
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x429:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(1);
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x42A:
-			playMovie(42);
-			playSound(30);
+			_vm->playMovie(42);
+			_vm->playSound(30);
 			if (!_nodes[22]) {
 				inventoryDel(2);
 				inventoryAdd(4);
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
 			break;
 		case 0x42C:
 			if (!_nodes[22]) {
 				dsAll();
-				playMovie(43);
-				playSound(34);
+				_vm->playMovie(43);
+				_vm->playSound(34);
 				_statPlay = 991;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
-				playMovie(42);
-				playSound(30);
+				_vm->playMovie(42);
+				_vm->playSound(30);
 			}
 			break;
 		case 0x43A:
 			_statPlay = 222;
-			_zoom = 2;
-			processMap(22, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(22, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 222:
-		processMapInput(22);
+		_vm->processMapInput(22);
 		break;
 	case 230:
 		_nodeNum = 23;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		dsAll();
-		playMovie(50);
+		_vm->playMovie(50);
 		_statPlay = 991;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 240:
 		_nodeNum = 24;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (!_nodes[24]) {
-			playMovie(51);
+			_vm->playMovie(51);
 			_currMap = 83;
 		} else {
-			playMovie(53);
-			showPic(119);
+			_vm->playMovie(53);
+			_vm->showPic(119);
 			_currMap = 84;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 		}
-		playSound(4);
+		_vm->playSound(4);
 		_statPlay = 241;
 		break;
 	case 241:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(0);
 			break;
 		case 0x429:
 			if (_nodes[24] != 9) {
-				_tsIconOnly = true;
-				playMovie(66);
+				_vm->_tsIconOnly = true;
+				_vm->playMovie(66);
 				inventoryDel(1);
 				_currMap = 84;
 				_nodes[24] = 9;
 			}
 			break;
 		case 0x42A:
-			saveAS();
-			playMovie(178);
-			restoreAS();
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 			inventoryDel(2);
 			break;
 		case 0x42D:
 			if (_inventory[5] >= 1)
-				displayIcon(135);
+				_vm->displayIcon(135);
 			else {
-				saveAS();
-				playMovie(52);
-				playSound(30);
-				restoreAS();
+				_vm->saveAS();
+				_vm->playMovie(52);
+				_vm->playSound(30);
+				_vm->restoreAS();
 				inventoryAdd(5);
-				_userInput = 0;
+				_vm->_userInput = 0;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 242;
-			_zoom = 2;
-			processMap(24, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(24, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			if (_pMovie == 53) {
-				playMovie(53);
-				showPic(119);
+			_vm->_sound = _vm->_lastSound;
+			if (_vm->_pMovie == 53) {
+				_vm->playMovie(53);
+				_vm->showPic(119);
 				_currMap = 84;
 			} else
-				playMovie(_pMovie);
+				_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x441:
 			_currMap = 10;
 			_statPlay = 300;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
-		_userInput = 0;
+		_vm->_userInput = 0;
 		break;
 	case 242:
-		processMapInput(24);
+		_vm->processMapInput(24);
 		break;
 	}
 }
 
-void KingdomGame::GPLogic1_SubSP10() {
-	playSound(0);
-	playSound(18);
-	fadeToBlack2();
-	showPic(115);
-	showPic(114);
+void Logic::GPLogic1_SubSP10() {
+	_vm->playSound(0);
+	_vm->playSound(18);
+	_vm->fadeToBlack2();
+	_vm->showPic(115);
+	_vm->showPic(114);
 
 	_currMap = 4;
-	_userInput = 0;
-	_aTimer = 595;
+	_vm->_userInput = 0;
+	_vm->_aTimer = 595;
 	_statPlay = 11;
 }
 
-void KingdomGame::GPLogic1_SubSP121() {
-	playMovie(23);
-	playSound(30);
-	_bTimer = 190;
-	readMouse();
+void Logic::GPLogic1_SubSP121() {
+	_vm->playMovie(23);
+	_vm->playSound(30);
+	_vm->_bTimer = 190;
+	_vm->readMouse();
 	
-	while (_bTimer != 0 && _mouseButton == 0) {
-		checkTimers();
-		refreshSound();
-		checkMainScreen();
-		readMouse();
+	while (_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+		_vm->checkTimers();
+		_vm->refreshSound();
+		_vm->checkMainScreen();
+		_vm->readMouse();
 	}
 	
-	playSound(23);
+	_vm->playSound(23);
 	inventoryAdd(15);
 	_currMap = 10;
-	fShowPic(150);
+	_vm->fShowPic(150);
 	_nodes[12] = 9;
-	playSound(3);
+	_vm->playSound(3);
 	_currMap = 15;
 }
 
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 73a39617fe..8fb2f8f655 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -21,431 +21,432 @@
  */
 
 #include "kingdom/kingdom.h"
+#include "kingdom/logic.h"
 
 namespace Kingdom {
 
-void KingdomGame::GPLogic2() {
+void Logic::GPLogic2() {
 	switch(_statPlay) {
 	case 250: {
 		bool highNode = (_nodeNum > 25);
 		_nodeNum = 25;
 
-		drawLocation();
+		_vm->drawLocation();
 		dsAll();
 		if (_nodes[24] != 0 || highNode) {
 			_eye = true;
-			playMovie(72);
-			_aTimerFlag = false;
-			_aTimer = 114;
-			playSound(34);
-			_userInput = 0;
+			_vm->playMovie(72);
+			_vm->_aTimerFlag = false;
+			_vm->_aTimer = 114;
+			_vm->playSound(34);
+			_vm->_userInput = 0;
 			_currMap = 10;
 			_statPlay = 251;
 		} else {
-			_frameStop = 67;
-			playMovie(72);
+			_vm->_frameStop = 67;
+			_vm->playMovie(72);
 			dsAll();
-			playMovie(73);
+			_vm->playMovie(73);
 			dsAll();
 			_statPlay = 991;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		}
 		}
 		break;
 	case 251:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
-			playMovie(73);
+			_vm->_aTimer = 0;
+			_vm->playMovie(73);
 			dsAll();
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 252;
-			_zoom = 2;
-			processMap(30, _zoom);
-			setATimer();
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(30, _vm->_zoom);
+			_vm->setATimer();
+			_vm->_userInput = 0;
 			break;
 		}
 		break;
 	case 252:
-		processMapInput(30);
+		_vm->processMapInput(30);
 		break;
 	case 260:
 		_nodeNum = 26;
-		drawLocation();
+		_vm->drawLocation();
 		dsAll();
-		playMovie(74);
+		_vm->playMovie(74);
 		_currMap = 10;
-		setATimer();
+		_vm->setATimer();
 		_statPlay = 261;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		break;
 	case 261:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(75);
+			_vm->playMovie(75);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 			inventoryDel(0);
-			_aTimer = 0;
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			setATimer();
-			_userInput = 0;
+			_vm->_aTimer = 0;
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->setATimer();
+			_vm->_userInput = 0;
 			break;
 		case 0x42A:
 			inventoryDel(2);
-			_aTimer = 0;
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			setATimer();
-			_userInput = 0;
+			_vm->_aTimer = 0;
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->setATimer();
+			_vm->_userInput = 0;
 			break;
 		case 0x42C:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(76);
+			_vm->playMovie(76);
 			_nodes[26] = 1;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_statPlay = 290;
 			_lastObs = true;
 			_lastObstacle = 29;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x42D:
 			if (wound()) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(77);
-				playSound(34);
+				_vm->playMovie(77);
+				_vm->playSound(34);
 				inventoryDel(5);
 				_statPlay = 300;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				dsAll();
-				playMovie(78);
+				_vm->playMovie(78);
 				_statPlay = 992;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		}
 		break;
 	case 270:
 		_nodeNum = 27;
-		drawLocation();
+		_vm->drawLocation();
 		if (_nodes[28] == 1)
 			_nodes[28] = 9;
 		if (_nodes[28] == 9 || _nodes[29] != 0) {
-			if (_wizard)
-				_sound = true;
+			if (_vm->_wizard)
+				_vm->_sound = true;
 		} else {
-			_sound = false;
+			_vm->_sound = false;
 			_nodes[28] = 1;
 		}
-		playMovie(80);
-		playSound(18);
+		_vm->playMovie(80);
+		_vm->playSound(18);
 		_currMap = 10;
 		_statPlay = 271;
 		_nodes[28] = 1;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		break;
 	case 271:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 272;
-			_zoom = 2;
-			processMap(27, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(27, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 272:
-		processMapInput(27);
+		_vm->processMapInput(27);
 		break;
 	case 280:
 		_nodeNum = 28;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		dsAll();
-		_fstFwd = false;
-		playMovie(81);
+		_vm->_fstFwd = false;
+		_vm->playMovie(81);
 		_currMap = 10;
 		_nodes[29] = _nodes[39] = 1;
 		_statPlay = _robberyNode * 10;
 		enAll();
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 290:
 		_oldNode = _nodeNum;
-		if (!_wizard) {
+		if (!_vm->_wizard) {
 			_nodes[26] = 9;
 			_nodes[30] = 8;
 		}
 		if (_nodes[26] == 0) {
 			_statPlay = 260;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_nextNode = 29;
 		} else {
 			if (_nodes[26] == 2)
-				playMovie(79);
+				_vm->playMovie(79);
 			_nodeNum = 29;
 			if (_nodes[26] <= 2 || !chkDesertObstacles()) {
-				drawLocation();
+				_vm->drawLocation();
 				_nodes[26]++;
-				_userInput = 0;
+				_vm->_userInput = 0;
 				switch (_nodes[30]) {
 				case 0:
-					_sound = false;
-					playMovie(82);
+					_vm->_sound = false;
+					_vm->playMovie(82);
 					_currMap = 89;
 					_nodes[30] = 1;
 					break;
 				case 1:
-					_sound = true;
-					playMovie(82);
+					_vm->_sound = true;
+					_vm->playMovie(82);
 					_currMap = 89;
 					_nodes[30] = 0;
 					break;
 				case 8:
-					_sound = false;
-					playMovie(85);
+					_vm->_sound = false;
+					_vm->playMovie(85);
 					_currMap = 10;
 					_nodes[30] = 9;
-					_tsIconOnly = true;
+					_vm->_tsIconOnly = true;
 					break;
 				default:
-					_sound = true;
-					playMovie(85);
+					_vm->_sound = true;
+					_vm->playMovie(85);
 					_currMap = 10;
-					_tsIconOnly = true;
+					_vm->_tsIconOnly = true;
 					break;
 				}
-				playSound(17);
+				_vm->playSound(17);
 				_statPlay = 291;
 			}
 		}
 			
 		break;
 	case 291:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x431:
-			_tsIconOnly = true;
-			playMovie(83);
-			playSound(30);
+			_vm->_tsIconOnly = true;
+			_vm->playMovie(83);
+			_vm->playSound(30);
 			inventoryAdd(10);
 			_nodes[30] = 8;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
 			break;
 		case 0x432:
 			if (_nodes[30] >= 8)
-				displayIcon(140);
+				_vm->displayIcon(140);
 			else {
 				dsAll();
-				playMovie(84);
+				_vm->playMovie(84);
 				_statPlay = 992;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 292;
-			_zoom = 2;
-			processMap(29, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(29, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 292:
-		processMapInput(29);
+		_vm->processMapInput(29);
 		break;
 	case 300:
 		if (_nodes[24] == 0) {
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_statPlay = 250;
 		} else {
 			_nodeNum = 30;
 			if (!chkDesertObstacles()) {
-				drawLocation();
-				playMovie(86);
-				playSound(18);
+				_vm->drawLocation();
+				_vm->playMovie(86);
+				_vm->playSound(18);
 				_currMap = 10;
 				_statPlay = 301;
 			}
 		}
 		break;
 	case 301:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 302;
-			_zoom = 2;
-			processMap(30, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(30, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		} 
 		break;
 	case 302:
-		processMapInput(30);
+		_vm->processMapInput(30);
 		break;
 	case 310:
 		_oldNode = _nodeNum;
 		_nodeNum = 31;
 		if (!chkDesertObstacles()) {
-			drawLocation();
-			playMovie(67);
-			playSound(18);
+			_vm->drawLocation();
+			_vm->playMovie(67);
+			_vm->playSound(18);
 			_currMap = 90;
 			_statPlay = 311;
 			_nodes[32] = 1;
-			_aTimer = 0;
-			_userInput = 0;
+			_vm->_aTimer = 0;
+			_vm->_userInput = 0;
 		}
 		break;
 	case 311:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 312;
-			_zoom = 2;
-			processMap(31, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(31, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x449:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(68);
+			_vm->playMovie(68);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;			
 		}
 		break;
 	case 312:
-		processMapInput(31);
+		_vm->processMapInput(31);
 		break;
 	case 320:
 		_oldNode = _nodeNum;
 		_nodeNum = 32;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		increaseHealth();
-		if (_nodes[33] != 9 && _wizard) {
-			_sound = false;
+		if (_nodes[33] != 9 && _vm->_wizard) {
+			_vm->_sound = false;
 			_nodes[33] = 9;
 		} else {
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[33] = 1;
 		}
-		playMovie(87);
-		playSound(18);
+		_vm->playMovie(87);
+		_vm->playSound(18);
 		_currMap = 10;
 		_statPlay = 321;
 		break;
 	case 321:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 322;
-			_zoom = 2;
-			processMap(32, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(32, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 322:
-		processMapInput(32);
+		_vm->processMapInput(32);
 		break;
 	case 330:
 		_oldNode = _nodeNum;
 		_nodeNum = 33;
 		if (!chkDesertObstacles()) {
-			drawLocation();
-			_userInput = 0;
+			_vm->drawLocation();
+			_vm->_userInput = 0;
 			if (_nodes[32] == 0)
-				_sound = false;
+				_vm->_sound = false;
 			else
-				_sound = true;
-			playMovie(88);
-			playSound(18);
+				_vm->_sound = true;
+			_vm->playMovie(88);
+			_vm->playSound(18);
 			_currMap = 10;
 			_statPlay = 331;
 		}
 		break;
 	case 331:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 332;
-			_zoom = 2;
-			processMap(33, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(33, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 332:
-		processMapInput(33);
+		_vm->processMapInput(33);
 		break;
 	case 340:
 		if (_nodes[36] == 0) {
 			_statPlay = 350;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_nextNode = 34;
 		} else {
 			_oldNode = _nodeNum;
 			_nodeNum = 34;
 			if (!chkDesertObstacles()) {
-				drawLocation();
-				_userInput = 0;
-				if (_nodes[35] == 9 || _nodes[41] == 0 || !_wizard) {
-					playMovie(91);
+				_vm->drawLocation();
+				_vm->_userInput = 0;
+				if (_nodes[35] == 9 || _nodes[41] == 0 || !_vm->_wizard) {
+					_vm->playMovie(91);
 					_currMap = 92;
 				} else {
-					playMovie(89);
-					showPic(389);
+					_vm->playMovie(89);
+					_vm->showPic(389);
 					_currMap = 91;
 				}
 				if (_nodes[35] == 9)
-					_tsIconOnly = true;
-				playSound(26);
+					_vm->_tsIconOnly = true;
+				_vm->playSound(26);
 				_statPlay = 341;
 			}
 		}
 		break;
 	case 341:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x431:
 			if (_nodes[35] == 9)
-				displayIcon(139);
+				_vm->displayIcon(139);
 			else {
-				playMovie(90);
+				_vm->playMovie(90);
 				inventoryAdd(9);
 				_nodes[35] = 9;
 				_currMap = 93;
@@ -453,113 +454,113 @@ void KingdomGame::GPLogic2() {
 			break;
 		case 0x43A:
 			_statPlay = 342;
-			_zoom = 2;
-			processMap(34, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(34, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			if (_pMovie == 89)
-				showPic(389);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			if (_vm->_pMovie == 89)
+				_vm->showPic(389);
 			break;
 		case 0x445:
 			_statPlay = 410;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 342:
-		processMapInput(34);
+		_vm->processMapInput(34);
 		break;
 	case 350:
-		if (!_wizard)
+		if (!_vm->_wizard)
 			_nodes[36] = 1;
 		if (_nodes[36] == 1) {
 			_statPlay = _nextNode * 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		} else {
 			_nodeNum = 35;
-			drawLocation();
+			_vm->drawLocation();
 			dsAll();
-			playMovie(92);
+			_vm->playMovie(92);
 			_currMap = 94;
-			setATimer();
-			_userInput = 0;
+			_vm->setATimer();
+			_vm->_userInput = 0;
 			_statPlay = 351;
 		}
 		break;
 	case 351:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
-			inventoryDel(_userInput - 0x428);
-			_aTimer = 0;
-			playMovie(178);
-			_userInput = 0x2F1;
-			_loopFlag = true;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->_userInput = 0x2F1;
+			_vm->_loopFlag = true;
 		// No break on purpose
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(93);
+			_vm->playMovie(93);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x42A:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(179);
+			_vm->playMovie(179);
 			inventoryDel(2);
 			_nodes[36] = 1;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_statPlay = _nextNode * 10;
 			_lastObs = true;
 			_lastObstacle = _nextNode;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 360:
 		_nodeNum = 36;
-		drawLocation();
+		_vm->drawLocation();
 		if (_nodes[37] == 0)
-			_sound = false;
+			_vm->_sound = false;
 		else
-			_sound = true;
-		_frameStop = 185;
+			_vm->_sound = true;
+		_vm->_frameStop = 185;
 		dsAll();
-		playMovie(94);
+		_vm->playMovie(94);
 		_currMap = 95;
-		setATimer();
-		_userInput = 0;
+		_vm->setATimer();
+		_vm->_userInput = 0;
 		_statPlay = 361;
 		break;
 	case 361:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(95);
+			_vm->playMovie(95);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(97);
+			_vm->playMovie(97);
 			inventoryDel(0);
-			playSound(5);
+			_vm->playSound(5);
 			_nodes[37] = 1;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
 			if (_nodes[43] == 0) {
 				_statPlay = 420;
@@ -567,38 +568,38 @@ void KingdomGame::GPLogic2() {
 				_nodeNum = 42;
 				GPLogic2_SubSP361();
 			} else {
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
 			break;
 		case 0x42A:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(98);
+			_vm->playMovie(98);
 			inventoryDel(2);
-			playSound(5);
+			_vm->playSound(5);
 			_nodes[37] = 1;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		case 0x42E:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(100);
+			_vm->playMovie(100);
 			inventoryDel(6);
-			playSound(5);
+			_vm->playSound(5);
 			_nodes[37] = 1;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		case 0x431:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(96);
-			playSound(5);
+			_vm->playMovie(96);
+			_vm->playSound(5);
 			_nodes[37] = 9;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			_currMap = 10;
 			_statPlay = 420;
 			_oldNode = _nodeNum;
@@ -606,425 +607,425 @@ void KingdomGame::GPLogic2() {
 			GPLogic2_SubSP361();
 			break;
 		case 0x437:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(99);
+			_vm->playMovie(99);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 362;
-			_zoom = 2;
-			processMap(36, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(36, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 362:
-		processMapInput(36);
+		_vm->processMapInput(36);
 		break;
 	case 370:
 		_nodeNum = 37;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_nodes[38] = 0;
-		playMovie(102);
-		playSound(20);
+		_vm->playMovie(102);
+		_vm->playSound(20);
 		_currMap = 109;
 		_statPlay = 371;
 		break;
 	case 371:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x413:
 			_statPlay = 440;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 372;
-			_zoom = 2;
-			processMap(37, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(37, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 372:
-		processMapInput(37);
+		_vm->processMapInput(37);
 		break;
 	case 380:
 		_oldNode = _nodeNum;
 		_nodeNum =38;
 		if (!chkDesertObstacles()) {
-			drawLocation();
-			_userInput = 0;
-			playMovie(159);
+			_vm->drawLocation();
+			_vm->_userInput = 0;
+			_vm->playMovie(159);
 			_currMap = 10;
-			playSound(7);
+			_vm->playSound(7);
 			_nodes[39] = 1;
 			_statPlay = 381;
 		}
 		break;
 	case 381:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			if (_wizard && _nodes[39] != 9) {
-				inventoryDel(_userInput - 0x428);
-				saveAS();
-				playMovie(178);
-				restoreAS();
+			if (_vm->_wizard && _nodes[39] != 9) {
+				inventoryDel(_vm->_userInput - 0x428);
+				_vm->saveAS();
+				_vm->playMovie(178);
+				_vm->restoreAS();
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x430:
-			if (_wizard && _nodes[39] != 9) {
+			if (_vm->_wizard && _nodes[39] != 9) {
 				dsAll();
-				playMovie(162);
+				_vm->playMovie(162);
 				_statPlay = 992;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x433:
-			if (_wizard && _nodes[39] != 9) {
-				playMovie(161);
+			if (_vm->_wizard && _nodes[39] != 9) {
+				_vm->playMovie(161);
 				inventoryDel(11);
 				_nodes[51] = 0;
-				_userInput = 0;
+				_vm->_userInput = 0;
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x435:
-			if (_wizard && _nodes[39] != 9) {
-				playMovie(160);
+			if (_vm->_wizard && _nodes[39] != 9) {
+				_vm->playMovie(160);
 				inventoryDel(13);
 				_nodes[39] = 9;
 				_nodes[59] = 0;
-				_userInput = 0;
-				_tsIconOnly = true;
+				_vm->_userInput = 0;
+				_vm->_tsIconOnly = true;
 				_currMap = 108;
 			}
 			break;
 		case 0x437:
-			if (_wizard && _nodes[39] != 9) {
-				playMovie(163);
+			if (_vm->_wizard && _nodes[39] != 9) {
+				_vm->playMovie(163);
 				inventoryDel(15);
 				_nodes[12] = 0;
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 382;
-			_zoom = 2;
-			processMap(38, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(38, _vm->_zoom);
+			_vm->_userInput = 0;
 		break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x456:
 			_statPlay = 370;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 382:
-		if (_wizard && (_nodes[39] != 9) && (_userInput == 0x413))
-			_userInput = 0;
+		if (_vm->_wizard && (_nodes[39] != 9) && (_vm->_userInput == 0x413))
+			_vm->_userInput = 0;
 
-		processMapInput(38);
+		_vm->processMapInput(38);
 		break;
 	case 390:
 		_nodeNum = 39;
-		drawLocation();
-		_aTimer = 0;
+		_vm->drawLocation();
+		_vm->_aTimer = 0;
 		dsAll();
-		playMovie(104);
-		playSound(34);
+		_vm->playMovie(104);
+		_vm->playSound(34);
 		_statPlay = 992;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 400:
 		_nodeNum = 40;
-		if (!_wizard)
+		if (!_vm->_wizard)
 			_nodes[41] = 2;
 		if (_nodes[41]) {
 			if (_nodes[41] == 1)
 				_nodes[41] = 2;
 			else {
 				_nodes[41] = 1;
-				_sound = true;
+				_vm->_sound = true;
 			}
 		} else {
 			dsAll();
-			playMovie(105);
+			_vm->playMovie(105);
 			_currMap = 10;
-			setATimer();
+			_vm->setATimer();
 		}
 		
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_statPlay = 401;
 		break;
 	case 401:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(106);
+			_vm->playMovie(106);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
 		case 0x42A:
 			if (!_nodes[41]) {
-				inventoryDel(_userInput - 0x428);
-				_aTimer = 0;
-				playMovie(178);
-				_userInput = 753;
-				_loopFlag = true;
+				inventoryDel(_vm->_userInput - 0x428);
+				_vm->_aTimer = 0;
+				_vm->playMovie(178);
+				_vm->_userInput = 753;
+				_vm->_loopFlag = true;
 				_currMap = 10;
 			}
 			break;
 		case 0x42C:
 			if (!_nodes[41]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				dsAll();
-				playMovie(108);
-				_userInput = 0;
+				_vm->playMovie(108);
+				_vm->_userInput = 0;
 				_statPlay = 992;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x42E:
 			if (!_nodes[41]) {
-				_aTimer = 0;
-				playMovie(109);
+				_vm->_aTimer = 0;
+				_vm->playMovie(109);
 				inventoryDel(6);
 				_nodes[43] = 0;
-				_userInput = 0;
-				_aTimer = 136;
+				_vm->_userInput = 0;
+				_vm->_aTimer = 136;
 			}
 			break;
 		case 0x437:
 			if (!_nodes[41]) {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				_help = true;
 				_replay = true;
 				_pouch = true;
-				_fstFwd = true;
-				playMovie(107);
-				playSound(26);
+				_vm->_fstFwd = true;
+				_vm->playMovie(107);
+				_vm->playSound(26);
 				_nodes[41] = 1;
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 96;
-				_tsIconOnly = true;
-				_loopFlag = true;
+				_vm->_tsIconOnly = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x43E:
-			_aTimer = 0;
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_aTimer = 0;
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x441:
 			_statPlay = 460;
 			_currMap = 10;
-			_userInput = 0;
-			_loopFlag = true;
+			_vm->_userInput = 0;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 402:
-		_aTimer = 0;
-		processMapInput(40);
+		_vm->_aTimer = 0;
+		_vm->processMapInput(40);
 		break;
 	case 410:
 		_nodeNum = 41;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[41])
-			_sound = true;
+			_vm->_sound = true;
 
 		_eye = false;
-		playMovie(111);
-		playSound(26);
+		_vm->playMovie(111);
+		_vm->playSound(26);
 		_currMap = 97;
 		_statPlay = 411;
 		break;
 	case 411:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			if (_pMovie == 120) {
-				saveAS();
-				_frameStop = 50;
-				playMovie(120);
-				_bTimer = 34;
-				while(_bTimer != 0) {
-					checkTimers();
-					refreshSound();
-					checkMainScreen();
+			_vm->_sound = _vm->_lastSound;
+			if (_vm->_pMovie == 120) {
+				_vm->saveAS();
+				_vm->_frameStop = 50;
+				_vm->playMovie(120);
+				_vm->_bTimer = 34;
+				while(_vm->_bTimer != 0) {
+					_vm->checkTimers();
+					_vm->refreshSound();
+					_vm->checkMainScreen();
 				}
-				restoreAS();
+				_vm->restoreAS();
 			}
-			playMovie(_pMovie);
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
-			_userInput = 0;
-			_loopFlag = true;
+			_vm->_userInput = 0;
+			_vm->_loopFlag = true;
 			_currMap = 10;
 			_statPlay = 450;
 			break;
 		case 0x446:
-			_userInput = 0;
-			_loopFlag = true;
+			_vm->_userInput = 0;
+			_vm->_loopFlag = true;
 			_currMap = 10;
 			_statPlay = 460;
 			break;
 		}
 		break;
 	case 420:
-		if (_nodes[37] == 9 || _nodes[29] == 1 || !_wizard) {
+		if (_nodes[37] == 9 || _nodes[29] == 1 || !_vm->_wizard) {
 			_oldNode = _nodeNum;
 			_nodeNum = 42;
 			if (!chkDesertObstacles()) {
-				drawLocation();
+				_vm->drawLocation();
 				GPLogic2_SubSP361();
 			}
 		} else {
 			_statPlay = 360;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		}
 		break;
 	case 421:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			_userInput = 0;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
 			break;
 		case 0x42E:
 			if (_nodes[43])
-				displayIcon(136);
+				_vm->displayIcon(136);
 			else {
 				if (_nodes[35] == 9) {
-					_sound = false;
+					_vm->_sound = false;
 				} else {
-					_sound = true;
+					_vm->_sound = true;
 				}
-				playMovie(113);
+				_vm->playMovie(113);
 				inventoryAdd(6);
 				_nodes[43] = 9;
 				_currMap = 10;
 			}
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		case 0x43A:
 			_statPlay = 422;
-			_zoom = 2;
-			processMap(42, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(42, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		
 		}
 		break;
 	case 422:
-		processMapInput(42);
+		_vm->processMapInput(42);
 		break;
 	case 430:
 		_nodeNum = 43;
-		drawLocation();
+		_vm->drawLocation();
 		_eye = false;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		if (_nodes[44] == 9) {
-			_tsIconOnly = true;
-			playMovie(118);
+			_vm->_tsIconOnly = true;
+			_vm->playMovie(118);
 			_currMap = 80;
 		} else if (_inventory[12] <= 0) {
-			playMovie(115);
-			showPic(415);
+			_vm->playMovie(115);
+			_vm->showPic(415);
 			_currMap = 78;
-			if (!_skylarTimer)
-				_skylarTimer = 5400;
+			if (!_vm->_skylarTimer)
+				_vm->_skylarTimer = 5400;
 		} else {
-			_skylarTimer = 0;
-			playMovie(116);
-			playSound(25);
+			_vm->_skylarTimer = 0;
+			_vm->playMovie(116);
+			_vm->playSound(25);
 			inventoryDel(12);
 			inventoryAdd(16);
 			_nodes[44] = 9;
 			_currMap = 79;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 		}
 		_statPlay = 431;
-		playSound(20);
+		_vm->playSound(20);
 		_eye = false;
 		break;
 	case 431:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 			case 0x40A:
-				playMovie(10);
+				_vm->playMovie(10);
 				_statPlay = 200;
 				if (_nodes[44] != 9)
 					_nodes[20] = 1;
 				_currMap = 10;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			case 0x414:
-				playMovie(10);
+				_vm->playMovie(10);
 				_statPlay = 390;
 				_currMap = 10;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			case 0x41D:
-				playMovie(10);
+				_vm->playMovie(10);
 				_statPlay = 500;
 				_currMap = 10;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			case 0x422:
-				playMovie(10);
+				_vm->playMovie(10);
 				_statPlay = 380;
 				_currMap = 10;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			case 0x428:
 			case 0x429:
 			case 0x42A:
 				if (_nodes[44] != 9) {
-					inventoryDel(_userInput - 0x428);
-					saveAS();
-					playMovie(178);
-					restoreAS();
+					inventoryDel(_vm->_userInput - 0x428);
+					_vm->saveAS();
+					_vm->playMovie(178);
+					_vm->restoreAS();
 				}
 				break;
 			case 0x438:
 				if (_nodes[44] == 9) {
-					displayIcon(146);
+					_vm->displayIcon(146);
 				} else {
 					dsAll();
-					playMovie(117);
+					_vm->playMovie(117);
 					_statPlay = 992;
-					_loopFlag = true;
+					_vm->_loopFlag = true;
 				}
 				break;
 			case 0x43E:
@@ -1033,203 +1034,203 @@ void KingdomGame::GPLogic2() {
 		break;
 	case 440:
 		_nodeNum = 44;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_inventory[12] > 0 || _nodes[44] == 9)
-			_sound = true;
+			_vm->_sound = true;
 
-		playMovie(119);
-		playSound(20);
+		_vm->playMovie(119);
+		_vm->playSound(20);
 		_currMap = 100;
 		_statPlay = 441;
 		break;
 	case 441:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 442;
-			_zoom = 2;
-			processMap(44, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(44, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x452:
 			_statPlay = 430;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 442:
-		processMapInput(44);
+		_vm->processMapInput(44);
 		break;
 	case 450:
 		_nodeNum = 45;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		if (!_nodes[41]) {
 			dsAll();
-			playMovie(120);
+			_vm->playMovie(120);
 			_statPlay = 992;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		} else {
-			_fstFwd = false;
-			_frameStop = 50;
-			playMovie(120);
+			_vm->_fstFwd = false;
+			_vm->_frameStop = 50;
+			_vm->playMovie(120);
 			_currMap = 17;
 			_statPlay = 451;
 		}
 		break;
 	case 451:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			_fstFwd = false;
-			_frameStop = 50;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->_fstFwd = false;
+			_vm->_frameStop = 50;
+			_vm->playMovie(_vm->_pMovie);
 			_currMap = 17;
-			playSound(26);
+			_vm->playSound(26);
 			break;
 		case 0x441:
 			_statPlay = 410;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	case 460:
 		_eye = false;
 		_nodeNum = 46;
-		drawLocation();
-		_userInput = 0;
-		if (_nodes[47] && _wizard)
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (_nodes[47] && _vm->_wizard)
 			_nodes[47] = 1;
 		else {
 			_nodes[47] = 0;
-			_sound = true;
+			_vm->_sound = true;
 		}
-		playMovie(121);
-		playSound(26);
+		_vm->playMovie(121);
+		_vm->playSound(26);
 		_currMap = 107;
 		_statPlay = 461;
 		break;
 	case 461:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 340;
-			_userInput = 0;
-			_loopFlag = true;
+			_vm->_userInput = 0;
+			_vm->_loopFlag = true;
 			_currMap = 10;
 			_lastObs = true;
 			break;
 		case 0x446:
 			_statPlay = 400;
-			_userInput = 0;
-			_loopFlag = true;
+			_vm->_userInput = 0;
+			_vm->_loopFlag = true;
 			_currMap = 10;
 			break;
 		}
 		break;
 	case 462:
-		processMapInput(46);
+		_vm->processMapInput(46);
 		break;
 	case 480:
 		_nodeNum = 48;
-		_userInput = 0;
-		playMovie(114);
+		_vm->_userInput = 0;
+		_vm->playMovie(114);
 		_currMap = 10;
 		_statPlay = 481;
 		_nodes[49] = 1;
 		break;
 	case 481:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 482;
-			_zoom = 2;
-			processMap(48, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(48, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		}
 		break;
 	case 482:
-		processMapInput(48);
+		_vm->processMapInput(48);
 		break;
 	case 490:
 		_nodeNum = 49;
-		drawLocation();
+		_vm->drawLocation();
 		dsAll();
-		playMovie(180);
-		playSound(18);
+		_vm->playMovie(180);
+		_vm->playSound(18);
 		_currMap = 101;
 		_statPlay = 491;
-		_aTimer = 0;
-		_userInput = 0;
+		_vm->_aTimer = 0;
+		_vm->_userInput = 0;
 		break;
 	case 491:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x42A:
 		case 0x42B:
-			inventoryDel(_userInput - 0x428);
-			_aTimer = 0;
-			playMovie(178);
-			_userInput = 753;
-			_loopFlag = true;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->_userInput = 753;
+			_vm->_loopFlag = true;
 			_currMap = 10;
 			break;
 		case 0x442:
-			playMovie(182);
+			_vm->playMovie(182);
 			_statPlay = 992;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44A:
 			_currMap = 10;
-			_userInput = 0;
-			_aTimer = 0;
+			_vm->_userInput = 0;
+			_vm->_aTimer = 0;
 			enAll();
-			playMovie(181);
+			_vm->playMovie(181);
 			_nodes[29] = 9;
 			_nodes[49] = 0;
 			_statPlay = _nextNode * 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		}
 		break;
 	}
 }
 
-void KingdomGame::GPLogic2_SubSP361() {
+void Logic::GPLogic2_SubSP361() {
 	enAll();
-	_userInput = 0;
-	playSound(19);
+	_vm->_userInput = 0;
+	_vm->playSound(19);
 	if (_nodes[29] == 1) {
 		_statPlay = 480;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		_currMap = 10;
 	} else {
-		if (_inventory[6] == 1 || !_wizard) {
-			if (_nodes[43] != 1 || _wizard)
+		if (_inventory[6] == 1 || !_vm->_wizard) {
+			if (_nodes[43] != 1 || _vm->_wizard)
 				_nodes[43] = 1;
 			else {
-				_sound = true;
+				_vm->_sound = true;
 				_nodes[43] = 2;
 			}
-			playMovie(122);
+			_vm->playMovie(122);
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			_statPlay = 421;
 		} else {
-			playMovie(112);
+			_vm->playMovie(112);
 			_currMap = 98;
 			_statPlay = 421;
 		}
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index b42569a471..cb3270492b 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -21,1331 +21,1332 @@
  */
 
 #include "kingdom/kingdom.h"
+#include "kingdom/logic.h"
 
 namespace Kingdom {
 
-void KingdomGame::GPLogic3() {
+void Logic::GPLogic3() {
 	switch(_statPlay) {
 	case 500:
 		_nodeNum = 50;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_resurrect = false;
-		if (!_wizard)
+		if (!_vm->_wizard)
 			_nodes[51] = 1;
 		switch(_nodes[51]) {
 		case 0:
-			playMovie(123);
+			_vm->playMovie(123);
 			_currMap = 102;
 			break;
 		case 1:
 			_nodes[51] = 2;
-			playMovie(126);
+			_vm->playMovie(126);
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		default:
 			_nodes[51] = 1;
-			_sound = true;
-			playMovie(126);
+			_vm->_sound = true;
+			_vm->playMovie(126);
 			_currMap = 10;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			break;
 		}
-		playSound(29);
+		_vm->playSound(29);
 		_statPlay = 501;
 		break;
 	case 501:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
 			if (!_nodes[51]) {
-				inventoryDel(_userInput - 0x428);
-				saveAS();
-				playMovie(178);
-				restoreAS();
-				_userInput = 0;
+				inventoryDel(_vm->_userInput - 0x428);
+				_vm->saveAS();
+				_vm->playMovie(178);
+				_vm->restoreAS();
+				_vm->_userInput = 0;
 			}
 			break;
 		case 0x433:
 			if (!_nodes[51]) {
 				dsAll();
-				playMovie(125);
+				_vm->playMovie(125);
 				_statPlay = 993;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else
-				displayIcon(141);
+				_vm->displayIcon(141);
 
 			break;
 		case 0x439:
 			if (!_nodes[51]) {
-				playMovie(124);
+				_vm->playMovie(124);
 				_nodes[51] = 1;
 				inventoryAdd(11);
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 10;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 502;
-			_zoom = 2;
-			processMap(50, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(50, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 502:
-		processMapInput(50);
+		_vm->processMapInput(50);
 		break;
 	case 510:
 		_nodeNum = 51;
-		drawLocation();
-		_userInput = 0;
-		playMovie(129);
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		_vm->playMovie(129);
 		_currMap = 10;
-		playSound(6);
+		_vm->playSound(6);
 		_statPlay = 511;
 		break;
 	case 511:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x434:
 			if (_inventory[6] >= 1)
-				displayIcon(142);
+				_vm->displayIcon(142);
 			else {
-				playMovie(128);
+				_vm->playMovie(128);
 				_nodes[52] = 9;
 				inventoryAdd(12);
-				_userInput = 0;
+				_vm->_userInput = 0;
 				_currMap = 10;
-				playSound(30);
+				_vm->playSound(30);
 			}
 			break;
 		case 0x43A:
 			_statPlay = 512;
-			_zoom = 2;
-			processMap(51, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(51, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			playMovie(_pMovie);
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x457:
 			_tideCntl = false;
-			drawPic(179);
-			playMovie(127);
+			_vm->drawPic(179);
+			_vm->playMovie(127);
 			_currMap = 103;
-			_userInput = 0;
-			playSound(0);
-			playSound(6);
+			_vm->_userInput = 0;
+			_vm->playSound(0);
+			_vm->playSound(6);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 512:
-		processMapInput(51);
+		_vm->processMapInput(51);
 		break;
 	case 520:
 		_nodeNum = 52;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[53] == 0)
 			_nodes[53] = 1;
 		else {
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[53] = false;
 		}
-		playMovie(130);
+		_vm->playMovie(130);
 		_currMap = 111;
 		_statPlay = 521;
-		playSound(31);
+		_vm->playSound(31);
 		break;
 	case 521:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x404:
 			_statPlay = 550;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x43A:
 			_statPlay = 522;
-			_zoom = 2;
-			processMap(52, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(52, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 522:
-		processMapInput(52);
+		_vm->processMapInput(52);
 		break;
 	case 530:
 		_nodeNum = 53;
-		drawLocation();
-		_userInput = 0;
-		_fstFwd = false;
-		if (_inventory[7] <= 0 && _wizard)
-			_tsIconOnly = false;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		_vm->_fstFwd = false;
+		if (_inventory[7] <= 0 && _vm->_wizard)
+			_vm->_tsIconOnly = false;
 		else {
-			_frameStop = 24;
-			_tsIconOnly = true;
+			_vm->_frameStop = 24;
+			_vm->_tsIconOnly = true;
 		}
 		_eye = false;
-		playMovie(70);
+		_vm->playMovie(70);
 		_currMap = 99;
-		playSound(8);
+		_vm->playSound(8);
 		_statPlay = 531;
 		break;
 	case 531:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 			if (_nodes[54] == 0) {
-				playMovie(71);
+				_vm->playMovie(71);
 				inventoryAdd(14);
 				inventoryDel(0);
-				_tsIconOnly = true;
-				playSound(25);
+				_vm->_tsIconOnly = true;
+				_vm->playSound(25);
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			_userInput = 0;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_fstFwd = false;
-			if (_inventory[7] > 0 && _pMovie == 70)
-				_frameStop = 24;
-			if (!_wizard && _pMovie == 70)
-				_frameStop = 24;
-			playMovie(_pMovie);
+			_vm->_fstFwd = false;
+			if (_inventory[7] > 0 && _vm->_pMovie == 70)
+				_vm->_frameStop = 24;
+			if (!_vm->_wizard && _vm->_pMovie == 70)
+				_vm->_frameStop = 24;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_nodeNum = 56;
-			_userInput = 0;
-			_frameStop = 50;
+			_vm->_userInput = 0;
+			_vm->_frameStop = 50;
 			enAll();
-			playMovie(135);
+			_vm->playMovie(135);
 			_currMap = 106;
 			_nodes[57] = 1;
-			playSound(8);
-			_tsIconOnly = true;
+			_vm->playSound(8);
+			_vm->_tsIconOnly = true;
 			_statPlay = 561;
 			break;
 		case 0x452:
 			_statPlay = 630;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 540:
 		_nodeNum = 54;
-		drawLocation();
-		_userInput = 0;
-		if (!_wizard) {
-			_sound = true;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (!_vm->_wizard) {
+			_vm->_sound = true;
 			_currMap = 55;
 		} else {
 			if (!_nodes[55])
 				_nodes[55] = 1;
 			else {
-				_sound = true;
+				_vm->_sound = true;
 				_nodes[55] = 0;
 			}
 			_currMap = 112;
 		}
 
-		playMovie(132);
-		showPic(432);
+		_vm->playMovie(132);
+		_vm->showPic(432);
 		_statPlay = 541;
-		playSound(22);
+		_vm->playSound(22);
 		break;
 	case 541:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x404:
 			_statPlay = 550;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x43A:
 			_statPlay = 542;
-			_zoom = 2;
-			processMap(54, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(54, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			showPic(432);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			_vm->showPic(432);
 			break;
 		case 0x453:
-			_sound = _lastSound;
-			playMovie(131);
-			playSound(32);
-			fShowPic(432);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(131);
+			_vm->playSound(32);
+			_vm->fShowPic(432);
 			// Useless, but present in the original
 			// _CurrMap = 10;
 			_currMap = 55;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 542:
-		processMapInput(54);
+		_vm->processMapInput(54);
 		break;
 	case 550:
 		_nodeNum = 55;
-		drawLocation();
-		_userInput = 0;
-		playMovie(133);
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		_vm->playMovie(133);
 		if (_nodes[56] != 9)
 			_nodes[56] = 0;
-		_tsIconOnly = true;
+		_vm->_tsIconOnly = true;
 		_currMap = 104;
 		_statPlay = 551;
-		playSound(8);
+		_vm->playSound(8);
 		break;
 	case 551:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(134);
+			_vm->playMovie(134);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x42C:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (_nodes[56] == 1) {
 				enAll();
-				playMovie(183);
-				fShowPic(433);
-				playSound(8);
+				_vm->playMovie(183);
+				_vm->fShowPic(433);
+				_vm->playSound(8);
 				_nodes[56] = 9;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			if (_nodes[56] == 1) {
 				dsAll();
-				playMovie(134);
+				_vm->playMovie(134);
 				_statPlay = 993;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				_statPlay = 552;
-				_zoom = 2;
-				processMap(55, _zoom);
-				_userInput = 0;
+				_vm->_zoom = 2;
+				_vm->processMap(55, _vm->_zoom);
+				_vm->_userInput = 0;
 			}
 			break;
 		case 0x43E:
-			_aTimer = 0;
-			playMovie(_pMovie);
-			if (_pMovie == 183)
-				fShowPic(433);
+			_vm->_aTimer = 0;
+			_vm->playMovie(_vm->_pMovie);
+			if (_vm->_pMovie == 183)
+				_vm->fShowPic(433);
 			break;
 		case 0x452:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			switch(_nodes[56]) {
 			case 0:
 				dsAll();
-				playMovie(69);
-				_tsIconOnly = false;
+				_vm->playMovie(69);
+				_vm->_tsIconOnly = false;
 				_nodes[56] = 1;
-				setATimer();
+				_vm->setATimer();
 				break;
 			case 1:
 				dsAll();
-				playMovie(134);
+				_vm->playMovie(134);
 				_statPlay = 993;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			case 9:
 				_statPlay = 560;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 				break;
 			}
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 552:
-		processMapInput(55);
+		_vm->processMapInput(55);
 		if (!_nodes[56] && _statPlay == 560) {
 			_statPlay = 551;
-			_userInput = 0x190;
-			_loopFlag = true;
+			_vm->_userInput = 0x190;
+			_vm->_loopFlag = true;
 		}
 		break;
 	case 560:
 		_nodeNum = 56;
-		drawLocation();
-		_userInput = 0;
-		if (_wizard) {
-			_frameStop = 50;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (_vm->_wizard) {
+			_vm->_frameStop = 50;
 			enAll();
-			playMovie(135);
-			showPic(435);
+			_vm->playMovie(135);
+			_vm->showPic(435);
 			_nodes[57] = 1;
-			playSound(8);
+			_vm->playSound(8);
 			_statPlay = 561;
 			_currMap = 106;
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 		} else {
 			dsAll();
-			playMovie(135);
+			_vm->playMovie(135);
 			_currMap = 10;
-			setATimer();
+			_vm->setATimer();
 			_nodes[57] = 0;
 			_statPlay = 561;
 		}
 		break;
 	case 561:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			dsAll();
-			playMovie(136);
+			_vm->playMovie(136);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (!_nodes[57]) {
-				inventoryDel(_userInput - 0x428);
-				saveAS();
-				playMovie(178);
-				restoreAS();
-				_userInput = 753;
-				_loopFlag = true;
+				inventoryDel(_vm->_userInput - 0x428);
+				_vm->saveAS();
+				_vm->playMovie(178);
+				_vm->restoreAS();
+				_vm->_userInput = 753;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x42C:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (!_nodes[57]) {
-				_fstFwd = false;
+				_vm->_fstFwd = false;
 				_replay = true;
-				playMovie(138);
+				_vm->playMovie(138);
 				enAll();
-				playSound(8);
+				_vm->playSound(8);
 				_nodes[57] = 1;
 				inventoryDel(4);
 				_nodes[22] = 0;
 				_currMap = 88;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
 			break;
 		case 0x438:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (!_nodes[57]) {
 				enAll();
-				_fstFwd = false;
+				_vm->_fstFwd = false;
 				_replay = true;
-				playMovie(137);
+				_vm->playMovie(137);
 				enAll();
-				playSound(8);
+				_vm->playSound(8);
 				_nodes[57] = 1;
 				_currMap = 106;
-				_tsIconOnly = true;
+				_vm->_tsIconOnly = true;
 			}
 			break;
 		case 0x43A:
 			_statPlay = 562;
-			_zoom = 2;
-			processMap(56, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(56, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_fstFwd = false;
-			if (_pMovie == 135 && _nodes[57]) {
-				_frameStop = 50;
-				playMovie(135);
+			_vm->_fstFwd = false;
+			if (_vm->_pMovie == 135 && _nodes[57]) {
+				_vm->_frameStop = 50;
+				_vm->playMovie(135);
 			} else if (_nodes[57])
-				playMovie(_pMovie);
+				_vm->playMovie(_vm->_pMovie);
 			else {
-				_userInput = 753;
-				_aTimer = 0;
-				_loopFlag = true;
+				_vm->_userInput = 753;
+				_vm->_aTimer = 0;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x445:
 			_statPlay = 530;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x446:
 			_statPlay = 620;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		case 0x452:
 			_statPlay = 550;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 562:
-		processMapInput(56);
+		_vm->processMapInput(56);
 		break;
 	case 570:
 		if (_nodes[58]) {
 			if (_rtnNode != 34)
-				_sound = true;
+				_vm->_sound = true;
 			_nodeNum = 57;
-			drawLocation();
+			_vm->drawLocation();
 			_nodes[58] = 0;
-			_userInput = 0;
-			playMovie(139);
-			playSound(27);
+			_vm->_userInput = 0;
+			_vm->playMovie(139);
+			_vm->playSound(27);
 			_currMap = 10;
 			_statPlay = 571;
 		} else {
 			_statPlay = 740;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 		}
 		break;
 	case 571:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 572;
-			_zoom = 2;
-			processMap(57, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(57, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 572:
-		processMapInput(57);
+		_vm->processMapInput(57);
 		break;
 	case 580:
 		_nodeNum = 58;
-		drawLocation();
-		_iconsClosed = true;
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_iconsClosed = true;
+		_vm->_userInput = 0;
 		switch(_nodes[59]) {
 		case 0:
-			_sound = true;
-			playMovie(140);
+			_vm->_sound = true;
+			_vm->playMovie(140);
 			_currMap = 113;
 			_nodes[59] = 1;
 			break;
 		case 1:
-			playMovie(140);
+			_vm->playMovie(140);
 			_currMap = 113;
 			_nodes[59] = 0;
 			break;
 		case 8:
-			_tsIconOnly = true;
-			playMovie(143);
+			_vm->_tsIconOnly = true;
+			_vm->playMovie(143);
 			_currMap = 10;
 			_nodes[59] = 9;
 			break;
 		case 9:
-			_tsIconOnly = true;
-			_sound = true;
-			playMovie(143);
+			_vm->_tsIconOnly = true;
+			_vm->_sound = true;
+			_vm->playMovie(143);
 			_currMap = 10;
 			break;
 		}
-		playSound(27);
+		_vm->playSound(27);
 		_statPlay = 581;
 		break;
 	case 581:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x430:
-			playMovie(141);
+			_vm->playMovie(141);
 			_nodes[59] = 8;
 			inventoryAdd(13);
-			_tsIconOnly = true;
+			_vm->_tsIconOnly = true;
 			_currMap = 10;
-			playSound(30);
+			_vm->playSound(30);
 		// No break on purpose
 		case 0x428:
 		case 0x429:
 		case 0x42A:
 			if (_nodes[59] < 8) {
-				inventoryDel(_userInput - 0x428);
-				saveAS();
-				playMovie(178);
-				restoreAS();
+				inventoryDel(_vm->_userInput - 0x428);
+				_vm->saveAS();
+				_vm->playMovie(178);
+				_vm->restoreAS();
 			}
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x435:
 			if (_nodes[59] >= 8)
-				displayIcon(143);
+				_vm->displayIcon(143);
 			else {
 				dsAll();
-				playMovie(142);
+				_vm->playMovie(142);
 				_statPlay = 993;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 		case 0x43A:
 			_statPlay = 582;
-			_zoom = 2;
-			processMap(58, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(58, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 582:
-		processMapInput(58);
+		_vm->processMapInput(58);
 		break;
 	case 590:
 		_nodeNum = 59;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		if (_nodes[60] == 0)
 			_nodes[60] = 1;
 		else {
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[60] = 0;
 		}
-		playMovie(144);
-		showPic(144);
+		_vm->playMovie(144);
+		_vm->showPic(144);
 		_currMap = 114;
-		playSound(21);
+		_vm->playSound(21);
 		_statPlay = 591;
 		break;
 	case 591:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 592;
-			_zoom = 2;
-			processMap(59, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(59, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			showPic(444);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			_vm->showPic(444);
 			break;
 		case 0x445:
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 592:
-		processMapInput(59);
+		_vm->processMapInput(59);
 		break;
 	case 600:
-		setMouse();
-		eraseCursor();
-		fadeToBlack2();
-		showPic(106);
-		drawIcon(4, 0, 12 - _healthOld);
-		_asMode = false;
+		_vm->setMouse();
+		_vm->eraseCursor();
+		_vm->fadeToBlack2();
+		_vm->showPic(106);
+		_vm->drawIcon(4, 0, 12 - _healthOld);
+		_vm->_asMode = false;
 		_nodeNum = 60;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		dsAll();
-		playMovie(145);
+		_vm->playMovie(145);
 		_statPlay = 992;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 610:
 		_nodeNum = 61;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_nodes[73] = 0;
 		_nodes[74] = 0;
 		if (_nodes[62] == 0)
 			_nodes[62] = 1;
 		else
-			_sound = true;
+			_vm->_sound = true;
 
-		playMovie(146);
+		_vm->playMovie(146);
 		if (_nodes[70] == 9) {
-			_itemInhibit = true;
-			_tsIconOnly = true;
+			_vm->_itemInhibit = true;
+			_vm->_tsIconOnly = true;
 		}
 		
 		_currMap = 115;
-		playSound(36);
+		_vm->playSound(36);
 		_statPlay = 611;
 		_eye = false;
 		break;
 	case 611:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
+			inventoryDel(_vm->_userInput - 0x428);
 			dsAll();
-			playMovie(148);
+			_vm->playMovie(148);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x432:
-			playMovie(147);
+			_vm->playMovie(147);
 			_inventory[5] = -1;
 			_nodes[30] = 0;
 			_currMap = 116;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x441:
 			// Cascade on purpose
 		case 0x448:
 			_currMap = 10;
-			_itemInhibit = true;
+			_vm->_itemInhibit = true;
 			_statPlay = 730;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44B:
 			_currMap = 10;
 			_statPlay = 680;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x451:
 			_currMap = 10;
 			_statPlay = 690;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 620:
 		_nodeNum = 62;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_eye = false;
 		if (_nodes[63] == 0) {
-			playMovie(149);
+			_vm->playMovie(149);
 			_currMap = 122;
 		} else {
-			_frameStop = 24;
-			playMovie(202);
+			_vm->_frameStop = 24;
+			_vm->playMovie(202);
 			_currMap = 121;
 			_nodes[63] = 9;
 		}
-		_tsIconOnly = true;
-		playSound(8);
+		_vm->_tsIconOnly = true;
+		_vm->playSound(8);
 		_statPlay = 621;
 		break;
 	case 621:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			_userInput = 0;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
 			break;
 		case 0x430:
-			playMovie(150);
+			_vm->playMovie(150);
 			inventoryAdd(8);
 			_nodes[63] = 1;
-			playSound(25);
+			_vm->playSound(25);
 			_currMap = 121;
-			_userInput = 0;
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
 			switch (_nodes[63]) {
 			case 0:
-				playMovie(149);
+				_vm->playMovie(149);
 				break;
 			case 1:
-				playMovie(150);
+				_vm->playMovie(150);
 				break;
 			case 9:
-				_frameStop = 24;
-				playMovie(202);
+				_vm->_frameStop = 24;
+				_vm->playMovie(202);
 				_currMap = 121;
 				break;
 			}
 			break;
 		case 0x445:
 			_nodeNum = 56;
-			_userInput = 0;
-			_frameStop = 50;
+			_vm->_userInput = 0;
+			_vm->_frameStop = 50;
 			enAll();
-			playMovie(135);
+			_vm->playMovie(135);
 			_nodes[57] = 1;
-			playSound(8);
+			_vm->playSound(8);
 			_statPlay = 561;
 			_currMap = 106;
-			if (_inventory[16] < 1 && _wizard)
+			if (_inventory[16] < 1 && _vm->_wizard)
 				_currMap = 88;
 			break;
 		case 0x452:
 			_statPlay = 630;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 630:
 		_nodeNum = 63;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_eye = false;
-		if (_nodes[64] == 1 || !_wizard) {
+		if (_nodes[64] == 1 || !_vm->_wizard) {
 			_nodes[64] = 0;
-			_sound = true;
+			_vm->_sound = true;
 		} else
 			_nodes[64] = true;
 
-		playMovie(151);
+		_vm->playMovie(151);
 		_currMap = 72;
-		playSound(40);
+		_vm->playSound(40);
 		_statPlay = 631;
 		break;
 	case 631:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
-			playMovie(10);
+			_vm->playMovie(10);
 			_statPlay = 50;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 640:
 		_nodeNum = 64;
-		drawLocation();
-		_userInput = 0;
-		if (_nodes[65] || _wizard) {
-			_sound = true;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (_nodes[65] || _vm->_wizard) {
+			_vm->_sound = true;
 			_nodes[65] = 0;
 		} else
 			_nodes[65] = 1;
 
-		playMovie(152);
+		_vm->playMovie(152);
 		_currMap = 10;
 		_statPlay = 641;
-		playSound(28);
+		_vm->playSound(28);
 		break;
 	case 641:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43A:
 			_statPlay = 642;
-			_zoom = 2;
-			processMap(64, _zoom);
-			_userInput = 0;
+			_vm->_zoom = 2;
+			_vm->processMap(64, _vm->_zoom);
+			_vm->_userInput = 0;
 			break;
 		case 0x43E:
-			_sound= _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound= _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 642:
-		processMapInput(64);
+		_vm->processMapInput(64);
 		break;
 	case 650:
 		_nodeNum = 65;
 		_eye = false;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		if (_nodes[66] == 0)
 			_nodes[66] = 1;
 		else {
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[66] = 0;
 		}
-		playMovie(153);
-		showPic(453);
+		_vm->playMovie(153);
+		_vm->showPic(453);
 		_currMap = 73;
-		playSound(37);
+		_vm->playSound(37);
 		_statPlay = 651;
 		break;
 	case 651:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
-			showPic(453);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
+			_vm->showPic(453);
 			break;
 		case 0x445:
 			_statPlay = 700;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			if (_nodes[68] == 1) {
 				_statPlay = 660;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			} else {
 				_statPlay = 790;
-				_loopFlag = true;
+				_vm->_loopFlag = true;
 			}
 			break;
 		case 0x447:
 			_statPlay = 710;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 660:
 		_nodeNum = 66;
 		_eye = false;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		if (_nodes[67] == 0)
 			_nodes[67] = 1;
 		else {
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[67] = 0;
 		}
-		playMovie(154);
+		_vm->playMovie(154);
 		_currMap = 70;
-		playSound(40);
+		_vm->playSound(40);
 		_statPlay = 661;
 		break;
 	case 661:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 700;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			_statPlay = (_nodes[68] == 1) ? 650 : 790;
 			break;
 		case 0x447:
-			if (!_wizard || _nodes[68])
+			if (!_vm->_wizard || _nodes[68])
 				_statPlay = 650;
 			else
 				_statPlay = 670;
 
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 670:
 		_nodeNum = 67;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_eye = false;
 		_nodes[68] = 1;
-		_fstFwd = false;
-		playMovie(155);
+		_vm->_fstFwd = false;
+		_vm->playMovie(155);
 		_currMap = 127;
 		_statPlay = 671;
 		break;
 	case 671:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			_fstFwd = false;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->_fstFwd = false;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 680:
 		_nodeNum = 68;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		dsAll();
-		playMovie(156);
+		_vm->playMovie(156);
 		_statPlay = 993;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 		break;
 	case 690:
-		_itemInhibit = false;
+		_vm->_itemInhibit = false;
 		enAll();
 		if (_nodes[70] == 9) {
 			_statPlay = 640;
 			_nodes[73] = 0;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 		} else {
 			_nodeNum = 69;
-			drawLocation();
-			_userInput = 0;
+			_vm->drawLocation();
+			_vm->_userInput = 0;
 			_currMap = 119;
-			_frameStop = 40;
-			playMovie(157);
-			playSound(12);
+			_vm->_frameStop = 40;
+			_vm->playMovie(157);
+			_vm->playSound(12);
 			_statPlay = 691;
 		}
 		break;
 	case 691:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			saveAS();
-			playMovie(178);
-			restoreAS();
-			_userInput = 0;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
 			break;
 		case 0x439:
 			if (_nodes[70] == 9)
-				displayIcon(147);
+				_vm->displayIcon(147);
 			else {
-				_frameStop = 108;
-				playMovie(158);
-				_itemInhibit = false;
+				_vm->_frameStop = 108;
+				_vm->playMovie(158);
+				_vm->_itemInhibit = false;
 				inventoryAdd(17);
 				_nodes[70] = 9;
-				playSound(23);
-				_userInput = 0;
+				_vm->playSound(23);
+				_vm->_userInput = 0;
 				_currMap = 120;
 			}
 			break;
 		case 0x43E:
-			if (_pMovie == 157)
-				_frameStop = 40;
-			else if (_pMovie == 158)
-				_frameStop = 108;
+			if (_vm->_pMovie == 157)
+				_vm->_frameStop = 40;
+			else if (_vm->_pMovie == 158)
+				_vm->_frameStop = 108;
 			
-			if (_pMovie == 178) {
-				saveAS();
-				playMovie(178);
-				restoreAS();
+			if (_vm->_pMovie == 178) {
+				_vm->saveAS();
+				_vm->playMovie(178);
+				_vm->restoreAS();
 			} else
-				playMovie(_pMovie);
+				_vm->playMovie(_vm->_pMovie);
 
 			break;
 		case 0x441:
-			_itemInhibit = false;
+			_vm->_itemInhibit = false;
 			_statPlay = 640;
 			_nodes[73] = 0;
-			_loopFlag = true;
-			_userInput = 0;
+			_vm->_loopFlag = true;
+			_vm->_userInput = 0;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 692:
-		processMapInput(69);
+		_vm->processMapInput(69);
 		break;
 	case 700:
 		_nodeNum = 70;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_eye = false;
-		if (_nodes[71] && _wizard) {
+		if (_nodes[71] && _vm->_wizard) {
 			_nodes[71] = 0;
-			_sound = false;
+			_vm->_sound = false;
 		} else
 			_nodes[71] = 1;
 
-		playMovie(164);
+		_vm->playMovie(164);
 		_currMap = 74;
-		playSound(10);
+		_vm->playSound(10);
 		_statPlay = 701;
 		break;
 	case 701:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 650;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = 780;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x447:
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 710:
 		_nodeNum = 71;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_eye = false;
 		if (_inventory[8] && _inventory[14])
-			_sound = true;
+			_vm->_sound = true;
 		dsAll();
-		playMovie(165);
+		_vm->playMovie(165);
 		_currMap = 10;
-		setATimer();
-		_statPlay = _wizard ? 712 : 711;
+		_vm->setATimer();
+		_statPlay = _vm->_wizard ? 712 : 711;
 		break;
 	case 711:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			_replay = false;
-			playMovie(166);
+			_vm->playMovie(166);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
+			inventoryDel(_vm->_userInput - 0x428);
 			_replay = false;
-			_aTimer = 0;
-			playMovie(178);
-			playMovie(166);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->playMovie(166);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x430:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			_nodeNum = 0;
-			_iconsClosed = true;
-			_fstFwd = false;
-			playMovie(167);
-			_fstFwd = false;
-			playMovie(170);
-			playSound(25);
+			_vm->_iconsClosed = true;
+			_vm->_fstFwd = false;
+			_vm->playMovie(167);
+			_vm->_fstFwd = false;
+			_vm->playMovie(170);
+			_vm->playSound(25);
 			endCredits();
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 712:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			_replay = false;
-			playMovie(166);
+			_vm->playMovie(166);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
+			inventoryDel(_vm->_userInput - 0x428);
 			_replay = false;
-			_aTimer = 0;
-			playMovie(178);
-			playMovie(166);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->playMovie(166);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x430:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (_nodes[72] != 2) {
-				playMovie(57);
+				_vm->playMovie(57);
 				_statPlay = 993;
 			} else {
 				_nodeNum = 0;
-				_iconsClosed = true;
-				_fstFwd = false;
-				playMovie(55);
-				_fstFwd = false;
-				playMovie(184);
-				playSound(25);
+				_vm->_iconsClosed = true;
+				_vm->_fstFwd = false;
+				_vm->playMovie(55);
+				_vm->_fstFwd = false;
+				_vm->playMovie(184);
+				_vm->playSound(25);
 				endCredits();
 			}
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x432:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			_replay = false;
-			playMovie(168);
+			_vm->playMovie(168);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x433:
 			if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
 				_replay = false;
-				playMovie(166);
+				_vm->playMovie(166);
 				_statPlay = 993;
 			} else {
-				_aTimer = 0;
+				_vm->_aTimer = 0;
 				enAll();
-				playMovie(169);
+				_vm->playMovie(169);
 				_statPlay = 580;
 				inventoryDel(11);
 				_nodes[51] = 0;
 			}
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x436:
-			_aTimer = 0;
-			playSound(0);
-			playMovie(193);
-			showPic(128);
+			_vm->_aTimer = 0;
+			_vm->playSound(0);
+			_vm->playMovie(193);
+			_vm->showPic(128);
 			inventoryDel(14);
 			_nodes[72] = 2;
-			setATimer();
+			_vm->setATimer();
 			break;
 
 		case 0x437:
-			_aTimer = 0;
+			_vm->_aTimer = 0;
 			if (_nodes[72] == 2) {
 				_nodeNum = 0;
-				_iconsClosed = true;
-				_fstFwd = false;
-				playMovie(56);
-				_fstFwd = false;
-				playMovie(184);
-				playSound(25);
+				_vm->_iconsClosed = true;
+				_vm->_fstFwd = false;
+				_vm->playMovie(56);
+				_vm->_fstFwd = false;
+				_vm->playMovie(184);
+				_vm->playSound(25);
 				endCredits();
-				_quit = true;
-//--				_QuitFlag = true;
+				_vm->_quit = true;
+//--				_vm->_quitFlag = true;
 			} else {
-				playMovie(58);
+				_vm->playMovie(58);
 				_statPlay = 993;
 			}
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 720:
 		_nodeNum = 72;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_eye = false;
 		switch (_nodes[73]) {
 		case 0:
 			_nodes[73] = 1;
 			break;
 		case 1:
-			_frameStop = 24;
+			_vm->_frameStop = 24;
 			_nodes[73] = 2;
 			break;
 		default:
-			_frameStop = 24;
+			_vm->_frameStop = 24;
 			_nodes[73] = 3;
 			break;
 		}
-		playMovie(175);
+		_vm->playMovie(175);
 		_currMap = 118;
-		playSound(12);
+		_vm->playSound(12);
 		_statPlay = 721;
 		break;
 	case 721:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
 			if (_nodes[73] > 1)
-				_frameStop = 24;
-			playMovie(_pMovie);
+				_vm->_frameStop = 24;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x441:
 			if (_nodes[73] == 1) {
-				_itemInhibit = false;
+				_vm->_itemInhibit = false;
 				_statPlay = 640;
 			} else
 				_statPlay = 680;
 
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x448:
 			_statPlay = (_nodes[73] == 2) ? 730 : 680;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44B:
 			_statPlay = (_nodes[73] == 1) ? 730 : 680;
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44C:
 			if (_nodes[73] == 1) {
@@ -1355,47 +1356,47 @@ void KingdomGame::GPLogic3() {
 				_statPlay = 680;
 
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 730:
 		_nodeNum = 73;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		_eye = false;
 		switch(_nodes[74]) {
 		case 0:
 			_nodes[74] = 1;
 			break;
 		case 1:
-			_sound = true;
+			_vm->_sound = true;
 			_nodes[74] = 2;
 			break;
 		case 2:
-			_frameStop = 23;
+			_vm->_frameStop = 23;
 			_nodes[74] = 3;
 			break;
 		default:
-			_frameStop = 23;
+			_vm->_frameStop = 23;
 			_nodes[74] = 4;
 			break;
 		}
-		playMovie(176);
+		_vm->playMovie(176);
 		_currMap = 117;
-		playSound(36);
+		_vm->playSound(36);
 		_statPlay = 731;
 		break;
 	case 731:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
 			if (_nodes[74] > 2)
-				_frameStop = 23;
-			_sound = _lastSound;
-			playMovie(_pMovie);
+				_vm->_frameStop = 23;
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x441:
 			switch (_nodes[74]) {
@@ -1412,7 +1413,7 @@ void KingdomGame::GPLogic3() {
 				break;
 			}
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x448:
 			switch(_nodes[74]) {
@@ -1444,7 +1445,7 @@ void KingdomGame::GPLogic3() {
 			}
 
 			_currMap = 10;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44C:
 			switch(_nodes[74]) {
@@ -1462,252 +1463,220 @@ void KingdomGame::GPLogic3() {
 			}
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 740:
 		_rtnNode = _nodeNum;
 		_nodeNum = 74;
-		drawLocation();
+		_vm->drawLocation();
 		dsAll();
-		playMovie(185);
+		_vm->playMovie(185);
 		_currMap = 10;
-		setATimer();
+		_vm->setATimer();
 		_statPlay = 741;
-		_userInput = 0;
+		_vm->_userInput = 0;
 		break;
 	case 741:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			dsAll();
-			playMovie(188);
+			_vm->playMovie(188);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x428:
 		case 0x429:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			_aTimer = 0;
-			playMovie(178);
-			_loopFlag = true;
-			_userInput = 753;
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->_loopFlag = true;
+			_vm->_userInput = 753;
 			break;
 		case 0x432:
 			if (_nodes[75]) {
-				_sound = false;
+				_vm->_sound = false;
 				_nodes[75] = false;
 			} else
 				_nodes[75] = true;
 			break;
 		case 0x437:
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			if (wound()) {
-				_frameStop = 88;
-				playMovie(187);
+				_vm->_frameStop = 88;
+				_vm->playMovie(187);
 				_statPlay = 570;
 				_nodes[58] = 1;
 			} else {
-				_frameStop = 78;
-				playMovie(187);
+				_vm->_frameStop = 78;
+				_vm->playMovie(187);
 				_statPlay = 993;
 			}
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 760:
 		_nodeNum = 76;
 		_eye = false;
-		_userInput = 0;
-		playMovie(189);
+		_vm->_userInput = 0;
+		_vm->playMovie(189);
 		_currMap = 126;
-		playSound(21);
+		_vm->playSound(21);
 		_statPlay = 761;
 		break;
 	case 761:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x43E:
-			_sound = _lastSound;
-			playMovie(_pMovie);
+			_vm->_sound = _vm->_lastSound;
+			_vm->playMovie(_vm->_pMovie);
 			break;
 		case 0x445:
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44D:
-			playMovie(191);
+			_vm->playMovie(191);
 			_nodes[68] = 2;
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x44E:
-			playMovie(192);
+			_vm->playMovie(192);
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x458:
-			playMovie(190);
+			_vm->playMovie(190);
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 780:
 		_nodeNum = 78;
-		drawLocation();
-		_userInput = 0;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
 		_eye = false;
-		playMovie(171);
+		_vm->playMovie(171);
 		_currMap = 124;
-		playSound(40);
+		_vm->playSound(40);
 		_statPlay = 781;
 		break;
 	case 781:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x428:
 		case 0x42A:
-			inventoryDel(_userInput - 0x428);
-			_frameStop = 64;
-			playMovie(173);
-			showPic(471);
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->_frameStop = 64;
+			_vm->playMovie(173);
+			_vm->showPic(471);
 			_currMap = 124;
 			break;
 		case 0x429:
-			if (_wizard) {
-				_frameStop = 64;
-				playMovie(173);
+			if (_vm->_wizard) {
+				_vm->_frameStop = 64;
+				_vm->playMovie(173);
 				inventoryDel(1);
 			} else {
-				_frameStop = 66;
-				_fstFwd = false;
-				playMovie(172);
-				_fstFwd = true;
-				playMovie(201);
+				_vm->_frameStop = 66;
+				_vm->_fstFwd = false;
+				_vm->playMovie(172);
+				_vm->_fstFwd = true;
+				_vm->playMovie(201);
 			}
 
-			fShowPic(471);
+			_vm->fShowPic(471);
 			_currMap = 124;
 			break;
 		case 0x439:
-			_frameStop = 59;
-			_fstFwd = false;
-			playMovie(174);
-			_fstFwd = true;
-			playMovie(201);
-			fShowPic(471);
+			_vm->_frameStop = 59;
+			_vm->_fstFwd = false;
+			_vm->playMovie(174);
+			_vm->_fstFwd = true;
+			_vm->playMovie(201);
+			_vm->fShowPic(471);
 			_currMap = 124;
 			break;
 		case 0x43E:
-			_sound = _lastSound;
-			if (_pMovie == 173)
-				_frameStop = 64;
-			if (_pMovie == 201) {
-				_frameStop = 59;
-				_fstFwd = false;
-				playMovie(174);
-				_fstFwd = true;
-				playMovie(201);
+			_vm->_sound = _vm->_lastSound;
+			if (_vm->_pMovie == 173)
+				_vm->_frameStop = 64;
+			if (_vm->_pMovie == 201) {
+				_vm->_frameStop = 59;
+				_vm->_fstFwd = false;
+				_vm->playMovie(174);
+				_vm->_fstFwd = true;
+				_vm->playMovie(201);
 			} else {
-				playMovie(_pMovie);
+				_vm->playMovie(_vm->_pMovie);
 			}
-			if (_pMovie != 171) {
-				fShowPic(471);
+			if (_vm->_pMovie != 171) {
+				_vm->fShowPic(471);
 				_currMap = 124;
 			}
 			break;
 		case 0x445:
 			_statPlay = 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			_statPlay = (_nodes[68] == 1) ? 760 : 660;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	case 790:
 		_nodeNum = 79;
-		drawLocation();
+		_vm->drawLocation();
 		dsAll();
-		playMovie(4);
+		_vm->playMovie(4);
 		_currMap = 8;
 		_statPlay = 791;
-		setATimer();
-		_userInput = 0;
+		_vm->setATimer();
+		_vm->_userInput = 0;
 		break;
 	case 791:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x2F1:
 			dsAll();
-			playMovie(204);
+			_vm->playMovie(204);
 			_statPlay = 993;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x445:
 			enAll();
-			playMovie(10);
+			_vm->playMovie(10);
 			_statPlay = 50;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		case 0x446:
 			enAll();
-			playMovie(10);
+			_vm->playMovie(10);
 			_statPlay = 520;
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			break;
 		default:
-			if (_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _userInput, _userInput, _statPlay);
+			if (_vm->_userInput)
+				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 			break;
 		}
 		break;
 	}
 }
 
-void KingdomGame::endCredits() {
-	_nodeNum = 0;
-	_bTimer = 190;
-	readMouse();
-
-	while(_bTimer != 0 && _mouseButton == 0) {
-		checkTimers();
-		refreshSound();
-		checkMainScreen();
-		readMouse();
-	}
-
-	fadeToBlack1();
-	drawRect(4, 17, 228, 161, 0);
-	playSound(0);
-	dsAll();
-	_iconsClosed = true;
-	playMovie(199);
-	dsAll();
-	playMovie(205);
-	dsAll();
-	fadeToBlack1();
-	drawRect(4, 17, 228, 161, 0);
-	playMovie(201);
-	fShowPic(125);
-	_currMap = 3;
-	dsAll();
-	_pouch = false;
-	memset(_inventory, 0xFF, 19);
-	_statPlay = 994;
-	_loopFlag = true;
-}
 } // NameSpace
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 5a492bb1f7..f6984d3ed6 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -21,46 +21,47 @@
  */
 
 #include "kingdom/kingdom.h"
+#include "kingdom/logic.h"
 
 namespace Kingdom {
 
-void KingdomGame::GPLogic4() {
+void Logic::GPLogic4() {
 	switch(_statPlay) {
 	case 900:
-		if (_aTimer > 0) {
-			playSound(0);
-			_aTimer = 133;
+		if (_vm->_aTimer > 0) {
+			_vm->playSound(0);
+			_vm->_aTimer = 133;
 		}
-		if (_asMode) {
-			switchMtoA();
+		if (_vm->_asMode) {
+			_vm->switchMtoA();
 			_mapStat = 0;
 			_oldStatPlay--;
-			_asMode = false;
+			_vm->_asMode = false;
 		}
-		saveAS();
-		fadeToBlack2();
+		_vm->saveAS();
+		_vm->fadeToBlack2();
 
 		if (_health == 10 || _health == 6 || _health == 2) {
-			showPic(121);
-			_bTimer = 38;
-			readMouse();
-			while (_bTimer && !_mouseButton) {
-				checkTimers();
-				refreshSound();
-				readMouse();
+			_vm->showPic(121);
+			_vm->_bTimer = 38;
+			_vm->readMouse();
+			while (_vm->_bTimer && !_vm->_mouseButton) {
+				_vm->checkTimers();
+				_vm->refreshSound();
+				_vm->readMouse();
 			}
 			
-			if (_aTimer > 0)
-				setATimer();
+			if (_vm->_aTimer > 0)
+				_vm->setATimer();
 			
-			_userInput = 0;
+			_vm->_userInput = 0;
 			GPLogic4_SP901();
 		} else {
-			if (_aTimer > 0) {
-				setATimer();
-				_aTimer = 133;
+			if (_vm->_aTimer > 0) {
+				_vm->setATimer();
+				_vm->_aTimer = 133;
 			}
-			showPic(120);
+			_vm->showPic(120);
 			_statPlay = 901;
 		}
 		break;
@@ -69,48 +70,48 @@ void KingdomGame::GPLogic4() {
 		break;
 	case 991:
 		_currMap = 10;
-		_userInput = 0;
-		playSound(0);
+		_vm->_userInput = 0;
+		_vm->playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			playMovie(194);
-			_noIFScreen = true;
-			fShowPic(107);
+			_vm->playMovie(194);
+			_vm->_noIFScreen = true;
+			_vm->fShowPic(107);
 			_currMap = 3;
 			dsAll();
 			_pouch = false;
-			playSound(1);
+			_vm->playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_bTimer = 36;
-			while(_bTimer) {
-				checkTimers();
-				refreshSound();
+			_vm->_bTimer = 36;
+			while(_vm->_bTimer) {
+				_vm->checkTimers();
+				_vm->refreshSound();
 			}
 			
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			if (_nodes[29] == 1) {
 				_nodes[29] = 0;
 				_nodes[49] = 0;
 			}
 
-			_itemInhibit = false;
+			_vm->_itemInhibit = false;
 			_tideCntl = false;
-			drawPic(179);
-			_skylarTimer = 0;
-			_skylarTimerFlag = false;
+			_vm->drawPic(179);
+			_vm->_skylarTimer = 0;
+			_vm->_skylarTimerFlag = false;
 			enAll();
-			_mapEx = true;
+			_vm->_mapEx = true;
 			_nodeNum = 5;
-			drawLocation();
-			playSound(0);
+			_vm->drawLocation();
+			_vm->playSound(0);
 			if (_nodes[5] > 0) {
-				playMovie(197);
+				_vm->playMovie(197);
 				_resurrect = true;
 			}
 			inventoryDel(12);
@@ -119,79 +120,79 @@ void KingdomGame::GPLogic4() {
 		break;
 	case 992:
 		_currMap = 10;
-		_userInput = 0;
-		playSound(0);
+		_vm->_userInput = 0;
+		_vm->playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			playMovie(194);
-			_noIFScreen = true;
-			fShowPic(107);
+			_vm->playMovie(194);
+			_vm->_noIFScreen = true;
+			_vm->fShowPic(107);
 			_currMap = 3;
 			dsAll();
 			_pouch = false;
-			playSound(1);
+			_vm->playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_bTimer = 36;
-			while(_bTimer != 0) {
-				checkTimers();
-				refreshSound();
+			_vm->_bTimer = 36;
+			while(_vm->_bTimer != 0) {
+				_vm->checkTimers();
+				_vm->refreshSound();
 			}
 
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			if (_nodes[29] == 1) {
 				_nodes[29] = 0;
 				_nodes[49] = 0;
 			}
 
-			_itemInhibit = false;
+			_vm->_itemInhibit = false;
 			_tideCntl = false;
-			drawPic(179);
-			_skylarTimer = 0;
-			_skylarTimerFlag = false;
+			_vm->drawPic(179);
+			_vm->_skylarTimer = 0;
+			_vm->_skylarTimerFlag = false;
 			enAll();
-			_mapEx = true;
+			_vm->_mapEx = true;
 			_nodeNum = 27;
-			drawLocation();
+			_vm->drawLocation();
 			_resurrect = true;
-			playSound(0);
-			playMovie(195);
+			_vm->playSound(0);
+			_vm->playMovie(195);
 			inventoryDel(12);
 			_statPlay = 270;
 		}
 		break;
 	case 993:
 		_currMap = 10;
-		_userInput = 0;
-		playSound(0);
+		_vm->_userInput = 0;
+		_vm->playSound(0);
 		if (_health == 10 || _health == 6 || _health == 2)
 			_health -= 2;
 		else
 			_health -= 4;
 		
 		if (_health == 0) {
-			playMovie(194);
-			_noIFScreen = true;
-			fShowPic(107);
+			_vm->playMovie(194);
+			_vm->_noIFScreen = true;
+			_vm->fShowPic(107);
 			_currMap = 3;
 			dsAll();
 			_pouch = false;
-			playSound(1);
+			_vm->playSound(1);
 			memset(_inventory, -1, 19);
 			_statPlay = 994;
 		} else {
-			_bTimer = 36;
-			while (_bTimer != 0) {
-				checkTimers();
-				refreshSound();
+			_vm->_bTimer = 36;
+			while (_vm->_bTimer != 0) {
+				_vm->checkTimers();
+				_vm->refreshSound();
 			}
 			
-			_loopFlag = true;
+			_vm->_loopFlag = true;
 			if (_nodes[29] == 1) {
 				_nodes[29] = 0;
 				_nodes[49] = 0;
@@ -199,73 +200,73 @@ void KingdomGame::GPLogic4() {
 			if (_nodes[68] == 1)
 				_nodes[68] = 0;
 
-			_itemInhibit = false;
+			_vm->_itemInhibit = false;
 			_tideCntl = false;
-			drawPic(179);
-			_skylarTimer = 0;
-			_skylarTimerFlag = false;
+			_vm->drawPic(179);
+			_vm->_skylarTimer = 0;
+			_vm->_skylarTimerFlag = false;
 			enAll();
-			_mapEx = true;
+			_vm->_mapEx = true;
 			_nodeNum = 52;
-			drawLocation();
+			_vm->drawLocation();
 			_resurrect = true;
-			playSound(0);
-			playMovie(196);
+			_vm->playSound(0);
+			_vm->playMovie(196);
 			inventoryDel(12);
 			_statPlay = 520;
 		}
 		break;
 	case 994:
-		switch(_userInput) {
+		switch(_vm->_userInput) {
 		case 0x190:
-			initPlay();
+			_vm->initPlay();
 			// TODO _QuitFlag = 1;
-			_quit = true;
+			_vm->_quit = true;
 			break;
 		case 0x191:
 			// TODO _QuitFlag = 2;
-			_quit = true;
+			_vm->_quit = true;
 			break;
 		}
 		break;
 	}
 }
 
-void KingdomGame::GPLogic4_SP901() {
-	setMouse();
-	eraseCursor();
-	fadeToBlack2();
-	showPic(106);
-	drawIcon(4, 0, 12 - _healthOld);
+void Logic::GPLogic4_SP901() {
+	_vm->setMouse();
+	_vm->eraseCursor();
+	_vm->fadeToBlack2();
+	_vm->showPic(106);
+	_vm->drawIcon(4, 0, 12 - _healthOld);
 	if (_tideCntl)
-		drawPic(178);
+		_vm->drawPic(178);
 	else
-		drawPic(179);
+		_vm->drawPic(179);
 	
-	_iconRedraw = true;
-	if (_userInput == 0x2F1) {
-		_asMode = false;
-		restoreAS();
+	_vm->_iconRedraw = true;
+	if (_vm->_userInput == 0x2F1) {
+		_vm->_asMode = false;
+		_vm->restoreAS();
 		_statPlay = _oldStatPlay;
-		_loopFlag = true;
+		_vm->_loopFlag = true;
 	} else {
-		if (_health == 10 || _health == 6 || _health == 2 || _userInput < 0x400 || _userInput > 0x427) {
-			_asMode = false;
-			restoreAS();
+		if (_health == 10 || _health == 6 || _health == 2 || _vm->_userInput < 0x400 || _vm->_userInput > 0x427) {
+			_vm->_asMode = false;
+			_vm->restoreAS();
 			_statPlay = _oldStatPlay;
 		} else {
-			_statPlay = _mapExit[_userInput - 0x400];
-			_userInput = 0;
+			_statPlay = _mapExit[_vm->_userInput - 0x400];
+			_vm->_userInput = 0;
 			wound();
-			playMovie(10);
+			_vm->playMovie(10);
 			inventoryDel(3);
-			_tsIconOnly = false;
+			_vm->_tsIconOnly = false;
 			enAll();
 			switchAS();
 			_mapStat = 0;
 		}
-		_userInput = 0;
-		_loopFlag = true;
+		_vm->_userInput = 0;
+		_vm->_loopFlag = true;
 	}
 }
 
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 9424ee436c..992773496b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -53,6 +53,8 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 
 	DebugMan.addDebugChannel(kDebugGeneral, "general", "General debug level");
 
+	_logic = nullptr;
+
 	_asPtr = nullptr;
 	_quit = false;
 	_kingartEntries = nullptr;
@@ -93,8 +95,6 @@ void KingdomGame::initVariables() {
 
 	_iconRedraw = 0;
 	_healthTmr = 0;
-	_healthOld = 0;
-	_health = 0;
 	_palStepFlag = 0;
 	_skylarTimerFlag = 0;
 	_skylarTimer = 0;
@@ -107,54 +107,30 @@ void KingdomGame::initVariables() {
 	_zoom = 0;
 	_wizard = 0; 
 	_userInput = 0;
-	_tideCntl = 0;
 //	_track = 0;
 //	_statMap = 0;
-	_statPlay = 0;
-	_spell3 = 0;
-	_spell2 = 0;
-	_spell1 = 0;
-	_soundNumber = 0;
-	_robberyNode = 0;
-	_rtnNode = 0;
-	_replay = false;
-	_resurrect = false;
 //	_quitFlag = 0;
-	_pouch = false;
+	_soundNumber = 0;
 	_pMovie = 0;
 //	_options = 0;
-	_oldPouch = false;
-	_oldHelp = false;
-	_oldEye = false;
 	_oldTRS = 0;
 	_oldTLS = 0;
-	_oldStatPlay = 0;
-	_oldNode = 0;
 	_oldIconsClosed = false;
 	_fstFwd = false;
 	_noMusic = false;
-	_nodeNum = 0;
-	_nextNode = 0;
 	_mouseValue = 0;
 	_mapEx = 0;
-	_mapStat = 0;
 	_loopFlag = false;
 	_lastSound = 0;
-	_lastObs = 0;
-	_lastObstacle = 0;
 	_keyActive = false;
-	_help = false;
 	_itemInhibit = false;
 //	_iconW = 0;
 	_gameMode = 0;
 	_fullScreen = false;
 	_frameStop = 0;
-	_eye = false;
 	_daelonCntr = 0;
 	_sound = 0;
 	_asMode = false;
-	for (int i = 0; i < 99; i++)
-		_nodes[i] = 0;
 	for (int i = 0; i < 510; i++) {
 		_rezPointers[i] = nullptr;
 		_rezSize[i] = 0;
@@ -170,12 +146,12 @@ void KingdomGame::initVariables() {
 	_cursorDef = 0;
 	_cursorY = 0;
 	_cursorX = 0;
-	_currMap = 0;
 	_asMap = 0;
 }
 
 KingdomGame::~KingdomGame() {
 	delete _console;
+	delete _logic;
 	delete _rnd;
 }
 
@@ -187,6 +163,9 @@ Common::Error KingdomGame::run() {
 	initGraphics(320, 200, false);
 	_console = new Console(this);
 
+	_logic = new Logic(this);
+	_logic->initVariables();
+
 	setupPics();
 	initTools();
 	titlePage();
@@ -196,21 +175,21 @@ Common::Error KingdomGame::run() {
 
 	while (!_quit) {
 		_loopFlag = false;
-		gameHelp();
+		_logic->gameHelp();
 		if (_gameMode == 0) {
-			if (_statPlay < 250)
-				GPLogic1();
-			if (_statPlay > 249 && _statPlay < 500)
-				GPLogic2();
-			if (_statPlay > 499 && _statPlay < 900) {
+			if (_logic->_statPlay < 250)
+				_logic->GPLogic1();
+			if (_logic->_statPlay > 249 && _logic->_statPlay < 500)
+				_logic->GPLogic2();
+			if (_logic->_statPlay > 499 && _logic->_statPlay < 900) {
 				if (!isDemo())
-					GPLogic3();
+					_logic->GPLogic3();
 				else
-					warning("Unexpected GPL3 opcode found in demo: %d", _statPlay);
+					warning("Unexpected GPL3 opcode found in demo: %d", _logic->_statPlay);
 			}
 
-			if (_statPlay > 899)
-				GPLogic4();
+			if (_logic->_statPlay > 899)
+				_logic->GPLogic4();
 		}
 
 		if (!_loopFlag)
@@ -309,21 +288,12 @@ void KingdomGame::titlePage() {
 }
 
 void KingdomGame::initPlay() {
-	memset(_inventory, 0xFF, 19);
-
-	for (int i = 0; i < 99; i++)
-		_nodes[i] = 0;
-
 	for (int i = 0; i < 7; i++)
 		_iconPic[i] = 89 + i;
 
 	_frameStop = 0;
 	_gameMode = 0;
 	_daelonCntr = 0;
-	_statPlay = 10;
-	_spell1 = false;
-	_spell2 = false;
-	_spell3 = false;
 	_itemInhibit = false;
 	_asMode = false;
 	_aTimerFlag = false;
@@ -334,10 +304,7 @@ void KingdomGame::initPlay() {
 	_bTimer = 0;
 	_cTimer = 0;
 	_skylarTimer = 0;
-	_tideCntl = false;
 	_mapEx = false;
-	_health = 12;
-	_healthOld = 1;
 	_healthTmr = 0;
 	_treeEyeTimer = 0;
 	_treeHGTimer = 0;
@@ -346,15 +313,14 @@ void KingdomGame::initPlay() {
 	_treeRightPic = 0;
 	_treeRightSta = 1;
 	_tsIconOnly = false;
-	_lastObs = false;
-	enAll();
-	_pouch = true;
 	_noIFScreen = true;
 	_noMusic = false;
 	_fstFwd = true;
 
 	delete[] _asPtr;
 	_asPtr = nullptr;
+
+	_logic->initPlay();
 }
 
 void KingdomGame::initHelp() {
@@ -369,150 +335,6 @@ void KingdomGame::fadeToBlack2() {
 	debug("STUB: FadeToBlack2");
 }
 
-void KingdomGame::gameHelp_Sub43C() {
-	fadeToBlack1();
-	_currMap = _asMap;
-	drawRect(4, 17, 228, 161, 0);
-	restoreAS();
-	_userInput = 0;
-	_gameMode = 0;
-	_iconsClosed = false;
-	_treeLeftSta = _oldTLS;
-	_eye = _oldEye;
-	_help = _oldHelp;
-	_pouch = _oldPouch;
-}
-
-void KingdomGame::gameHelp() {
-	if (!_gameMode) {
-		if (_userInput == 0x43C) {
-			saveAS();
-			_asMap = _currMap;
-			_currMap = 0;
-			fadeToBlack1();
-			drawRect(4, 17, 228, 161, 0);
-			drawHelpScreen();
-			_gameMode = 1;
-			_oldTLS = _treeLeftSta;
-			_treeLeftSta = 0;
-			_iconsClosed = true;
-			_oldEye = _eye;
-			_eye = false;
-			_oldHelp = _help;
-			_oldPouch = _pouch;
-			_pouch = false;
-			_userInput = 0;
-		}
-		if (_userInput == 0x44F) {
-			saveAS();
-			_asMap = _currMap;
-			_gameMode = 2;
-			_oldTLS = _treeLeftSta;
-			_treeLeftSta = 0;
-			_iconsClosed = true;
-			_oldEye = _eye;
-			_eye = false;
-			_oldHelp = _help;
-			_help = false;
-			_oldPouch = _pouch;
-			fadeToBlack1();
-			drawRect(4, 17, 228, 161, 0);
-			drawInventory();
-
-			if (_nodes[68] == 1 || _nodes[29] == 1 || _itemInhibit)
-				_currMap = 10;
-			else
-				_currMap = 11;
-
-			_userInput = 0;
-		}
-	}
-	if (_gameMode == 0)
-		return;
-
-	switch(_userInput) {
-	case 0x240:
-		fadeToBlack2();
-		//TODO: Set _quitFlag to 1
-		break;
-	case 0x241:
-		gameHelp_Sub43C();
-		return;
-		break;
-	case 0x242:
-		if (_noMusic) {
-			_noMusic = false;
-			playSound(1);
-		} else {
-			_noMusic = true;
-			playSound(0);
-		}
-		drawHelpScreen();
-		break;
-	case 0x243: {
-		fadeToBlack2();
-		_keyActive = false;
-		_noIFScreen = true;
-		playSound(0);
-		// The demo isn't saving pMovie.
-		// It's obviously a bug and this behavior wasn't kept in ScummVM
-		int oldPMovie = _pMovie;
-		while(!_keyActive) {
-			playMovie(54);
-			fadeToBlack2();
-		}
-		_pMovie = oldPMovie;
-		_noIFScreen = false;
-		showPic(106);
-		drawHelpScreen();
-		_iconRedraw = true;
-		playSound(1);
-		}
-		break;
-	case 0x244:
-		//TODO: Set _quitFlag to 2
-		_quit = true;
-		break;
-	case 0x245: {
-		fadeToBlack1();
-		// The demo isn't saving pMovie.
-		// It's obviously a bug and this behavior wasn't kept in ScummVM
-		int oldPMovie = _pMovie;
-		drawRect(4, 17, 228, 161, 0);
-		playMovie(205);
-		fadeToBlack1();
-		drawRect(4, 17, 228, 161, 0);
-		playMovie(199);
-		fadeToBlack1();
-		drawRect(4, 17, 228, 161, 0);
-		drawHelpScreen();
-		_pMovie = oldPMovie;
-		}
-		break;
-	case 0x246:
-		saveGame();
-		break;
-	case 0x43B:
-	case 0x43C:
-	case 0x44F:
-		gameHelp_Sub43C();
-		return;
-	}
-
-	if (_userInput > 0x427 && _userInput < 0x43A)
-		fShowPic(130 + _userInput - 0x428);
-
-	if (_userInput == 0x260) {
-		drawInventory();
-		if (_nodes[68] == 1 || _nodes[29] == 1)
-			_currMap = 10;
-		else
-			_currMap = 11;
-
-		_userInput = 0;
-	}
-}
-
 void KingdomGame::loadKingArt() {
 	loadAResource(0x97);
 	Common::SeekableReadStream *kingartStream = _rezPointers[0x97];
@@ -673,7 +495,7 @@ void KingdomGame::playMovie(int movieNum) {
 		_treeRightSta = 1;
 		_iconsClosed = false;
 		_iconSel = 9;
-		_treeLeftSta = _replay ? 2 : 0;
+		_treeLeftSta = _logic->_replay ? 2 : 0;
 		checkMainScreen();
 		drawCursor();
 		_fstFwd = true;
@@ -684,22 +506,6 @@ void KingdomGame::playMovie(int movieNum) {
 	}
 }
 
-void KingdomGame::enAll() {
-	_help = true;
-	_eye = true;
-	_replay = true;
-	_pouch = true;
-	_fstFwd = true;
-}
-
-void KingdomGame::dsAll() {
-	_help = false;
-	_eye = false;
-	_replay = false;
-	_pouch = false;
-	_fstFwd = false;
-}
-
 void KingdomGame::saveAS() {
 	byte palette[256 * 3];
 	delete[] _asPtr;
@@ -742,20 +548,10 @@ void KingdomGame::restoreAS() {
 	_asPtr = nullptr;
 }
 
-void KingdomGame::switchAS() {
-	_asMode = false;
-	_currMap = _asMap;
-	_treeLeftSta = _oldTLS;
-	_treeRightSta = _oldTRS;
-	_pouch = _oldPouch;
-	_help = _oldHelp;
-	_iconsClosed = _oldIconsClosed;
-}
-
 void KingdomGame::drawHelpScreen() {
 	int picNum;
 
-	switch(_health) {
+	switch(_logic->_health) {
 	case 2:
 		picNum = 166;
 		break;
@@ -797,74 +593,74 @@ void KingdomGame::drawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 
 void KingdomGame::drawInventory() {
 	fShowPic(108);
-	if (_nodes[29] == 1 || _nodes[68] == 1 || _itemInhibit)
+	if (_logic->_nodes[29] == 1 || _logic->_nodes[68] == 1 || _itemInhibit)
 		return;
 
-	if (_inventory[0] > 0)
+	if (_logic->_inventory[0] > 0)
 		drawIcon(136, 102, 180);
 
-	if (_inventory[1] > 0)
+	if (_logic->_inventory[1] > 0)
 		drawIcon(73, 65, 175);
 
-	if (_inventory[2] > 0)
+	if (_logic->_inventory[2] > 0)
 		drawIcon(171, 96, 179);
 
-	if (_inventory[3] > 0)
+	if (_logic->_inventory[3] > 0)
 		drawIcon(120, 34, 174);
 
-	if (_inventory[4] > 0)
+	if (_logic->_inventory[4] > 0)
 		drawIcon(160, 41, 177);
 
-	if (_inventory[5] > 0)
+	if (_logic->_inventory[5] > 0)
 		drawIcon(21, 124, 184);
 
-	if (_inventory[6] > 0)
+	if (_logic->_inventory[6] > 0)
 		drawIcon(201, 42, 178);
 
-	if (_inventory[7] > 0)
+	if (_logic->_inventory[7] > 0)
 		drawIcon(76, 119, 186);
 
-	if (_inventory[8] > 0)
+	if (_logic->_inventory[8] > 0)
 		drawIcon(18, 31, 170);
 
-	if (_inventory[9] > 0)
+	if (_logic->_inventory[9] > 0)
 		drawIcon(57, 88, 185);
 
-	if (_inventory[10] > 0)
+	if (_logic->_inventory[10] > 0)
 		drawIcon(182, 124, 181);
 
-	if (_inventory[11] > 0)
+	if (_logic->_inventory[11] > 0)
 		drawIcon(176, 26, 183);
 
-	if (_inventory[12] > 0)
+	if (_logic->_inventory[12] > 0)
 		drawIcon(54, 23, 171);
 
-	if (_inventory[13] > 0)
+	if (_logic->_inventory[13] > 0)
 		drawIcon(120, 133, 182);
 
-	if (_inventory[14] > 0)
+	if (_logic->_inventory[14] > 0)
 		drawIcon(94, 92, 187);
 
-	if (_inventory[15] > 0)
+	if (_logic->_inventory[15] > 0)
 		drawIcon(135, 67, 176);
 
-	if (_inventory[16] > 0)
+	if (_logic->_inventory[16] > 0)
 		drawIcon(84, 30, 173);
 
-	if (_inventory[17] > 0)
+	if (_logic->_inventory[17] > 0)
 		drawIcon(20, 78, 172);
 
-	if (_inventory[0] > 0)
-		drawIcon(158, 117, 134 + _inventory[0]);
+	if (_logic->_inventory[0] > 0)
+		drawIcon(158, 117, 134 + _logic->_inventory[0]);
 
-	if (_inventory[1] > 0)
-		drawIcon(94, 67, 134 + _inventory[1]);
+	if (_logic->_inventory[1] > 0)
+		drawIcon(94, 67, 134 + _logic->_inventory[1]);
 
-	if (_inventory[2] > 0)
-		drawIcon(193, 105, 134 + _inventory[2]);
+	if (_logic->_inventory[2] > 0)
+		drawIcon(193, 105, 134 + _logic->_inventory[2]);
 
-	if (_inventory[3] > 0)
-		drawIcon(131, 39, 134 + _inventory[3]);
+	if (_logic->_inventory[3] > 0)
+		drawIcon(131, 39, 134 + _logic->_inventory[3]);
 }
 
 Common::String KingdomGame::getSavegameFilename(int slot) {
@@ -968,17 +764,9 @@ Common::Error KingdomGame::loadGameState(int slot) {
 }
 
 void KingdomGame::synchronize(Common::Serializer &s) {
-	s.syncAsSint16LE(_statPlay);
 	s.syncAsSint16LE(_asMap);
 	s.syncAsSint16LE(_daelonCntr);
-	s.syncAsSint16LE(_health);
-	s.syncAsSint16LE(_healthOld);
-	s.syncAsSint16LE(_lastObstacle);
-	s.syncAsSint16LE(_nextNode);
-	s.syncAsSint16LE(_nodeNum);
 	s.syncAsSint16LE(_pMovie);
-	s.syncAsSint16LE(_rtnNode);
-	s.syncAsSint16LE(_robberyNode);
 	s.syncAsSint16LE(_soundNumber);
 	s.syncAsSint16LE(_treeEyePic);
 	s.syncAsSint16LE(_treeEyeSta);
@@ -987,32 +775,18 @@ void KingdomGame::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_oldTLS);
 	s.syncAsSint16LE(_cTimer);
 	s.syncAsSint16LE(_skylarTimer);
-
-	for (int i = 0; i < 18; i++)
-		s.syncAsSint16LE(_inventory[i]);
-
-	for (int i = 0; i < 99; i++)
-		s.syncAsSint16LE(_nodes[i]);
-
-	s.syncAsByte(_oldEye);
 	s.syncAsByte(_fstFwd);
-	s.syncAsByte(_help);
 	s.syncAsByte(_itemInhibit);
-	s.syncAsByte(_lastObs);
 	s.syncAsByte(_lastSound);
 	s.syncAsByte(_mapEx);
 	s.syncAsByte(_noMusic);
-	s.syncAsByte(_oldPouch);
-	s.syncAsByte(_replay);
-	s.syncAsByte(_spell1);
-	s.syncAsByte(_spell2);
-	s.syncAsByte(_spell3);
-	s.syncAsByte(_tideCntl);
 	s.syncAsByte(_wizard);
 	s.syncAsByte(_tsIconOnly);
 	s.syncAsByte(_cTimerFlag);
 	s.syncAsByte(_skylarTimerFlag);
 
+	_logic->synchronize(s);
+
 	// Present in the original. Looks unused.
 	// s.syncAsSint16LE(_StatMap);
 }
@@ -1140,24 +914,24 @@ void KingdomGame::getUserInput() {
 	if (_quit)
 		return;
 
-	if (_userInput == 2 && _eye)
+	if (_userInput == 2 && _logic->_eye)
 		_userInput = _asMode ? 0x43B : 0x43A;
 
 	if (_userInput == 1)
 		_userInput = _mouseValue;
 
 	if (_userInput == 0x2F5) {
-		_statPlay = 600;
+		_logic->_statPlay = 600;
 		_loopFlag = true;
 	}
 
-	if (_userInput == 0x42B && _statPlay == 53 && _gameMode == 0) {
-		_oldStatPlay = _statPlay;
-		_statPlay = 900;
+	if (_userInput == 0x42B && _logic->_statPlay == 53 && _gameMode == 0) {
+		_logic->_oldStatPlay = _logic->_statPlay;
+		_logic->_statPlay = 900;
 		_loopFlag = true;
 	}
 
-	if (_userInput == 0x12D && _currMap == 1)
+	if (_userInput == 0x12D && _logic->_currMap == 1)
 		// CHECKME: _quitFlag = 2;
 		_quit = true;
 }
@@ -1176,13 +950,13 @@ void KingdomGame::drawLocation() {
 	_aTimer = 0;
 	_aTimerFlag = false;
 
-	int emlValue = _emlTable[_nodeNum];
+	int emlValue = _emlTable[_logic->_nodeNum];
 	if (emlValue > 0)
-		enAll();
+		_logic->enAll();
 
-	if (!_mapEx || !emlValue || _resurrect) {
-		if (_statPlay != 50)
-			_resurrect = false;
+	if (!_mapEx || !emlValue || _logic->_resurrect) {
+		if (_logic->_statPlay != 50)
+			_logic->_resurrect = false;
 		_iconsClosed = false;
 	} else {
 		_mapEx = false;
@@ -1206,7 +980,7 @@ void KingdomGame::processMap(int mapNum, int zoom) {
 	if (!_asMode)
 		switchAtoM();
 	fShowPic(var6);
-	_currMap = _zoomTable[mapNum][zoom][1];
+	_logic->_currMap = _zoomTable[mapNum][zoom][1];
 
 	if (zoom > 0)
 		_treeLeftSta = _zoomTable[mapNum][zoom - 1][0] == 0 ? 0 : 3;
@@ -1224,8 +998,8 @@ void KingdomGame::processMapInput(int mapNum) {
 	case 0x43B:
 	case 0x443:
 		switchMtoA();
-		_mapStat = 0;
-		_statPlay--;
+		_logic->_mapStat = 0;
+		_logic->_statPlay--;
 		break;
 	case 0x43F:
 		if (_treeLeftSta == 3) {
@@ -1243,34 +1017,22 @@ void KingdomGame::processMapInput(int mapNum) {
 		break;
 	default:
 		if (_userInput > 0x3FF && _userInput < 0x428) {
-			_statPlay = _mapExit[_userInput - 0x400];
+			_logic->_statPlay = _mapExit[_userInput - 0x400];
 			_mapEx = true;
 			_loopFlag = true;
-			switchAS();
+			_logic->switchAS();
 		}
 
 		if (_userInput > 0x440) {
 			switchMtoA();
-			_mapStat = false;
-			_statPlay--;
+			_logic->_mapStat = false;
+			_logic->_statPlay--;
 			_loopFlag = true;
 		}
 		break;
 	}
 }
 
-void KingdomGame::inventoryDel(int item) {
-	if (_inventory[item] > 0)
-		_inventory[item]--;
-}
-
-void KingdomGame::inventoryAdd(int item) {
-	if (item >= 4)
-		_inventory[item] = 1;
-	else
-		_inventory[item] = 3;
-}
-
 void KingdomGame::drawPic(int reznum) {
 	eraseCursor();
 	loadAResource(reznum);
@@ -1321,19 +1083,19 @@ void KingdomGame::displayIcon(int reznum) {
 void KingdomGame::setATimer() {
 	_aTimerFlag = true;
 	_aTimer = 0;
-	int wrkNodeNum = _nodeNum;
-	if (_nodes[29] == 1 || _nodes[68] == 1)
+	int wrkNodeNum = _logic->_nodeNum;
+	if (_logic->_nodes[29] == 1 || _logic->_nodes[68] == 1)
 		return;
 
 	if (_tsIconOnly)
 		wrkNodeNum = 79;
 
-	if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
+	if (_logic->_nodeNum == 56 && _logic->_inventory[8] < 1 && _wizard)
 		wrkNodeNum = 80;
 	
 	for (int i = 0; i < 7; i++) {
 		int idx = _iconActTable[wrkNodeNum][i];
-		if (_inventory[idx] > 0) {
+		if (_logic->_inventory[idx] > 0) {
 			_aTimerFlag = false;
 			_aTimer = _wizard ? 114 : 133;
 			playSound(0);
@@ -1344,52 +1106,34 @@ void KingdomGame::setATimer() {
 	}
 }
 
-bool KingdomGame::wound() {
-	bool retval = false;
-	if (_health == 12 || _health == 8 || _health == 4) {
-		_health -= 2;
-		retval = true;
-	}
-	return retval;
-}
-
 void KingdomGame::refreshSound() {
 // No implementation needed in ScummVM
 // The only useful check is against _sndReplayTbl, which determines
 // which sound should be replayed. But this array contains only false
 }
 
-void KingdomGame::increaseHealth() {
-	if (_health <= 3)
-		_health = 4;
-	else if (_health <= 7)
-		_health = 8;
-	else
-		_health = 12;
-}
-
 void KingdomGame::checkMainScreen() {
-	if (_cTimerFlag || _statPlay == 900 || _statPlay == 901)
+	if (_cTimerFlag || _logic->_statPlay == 900 || _logic->_statPlay == 901)
 		return;
 
 	_cTimerFlag = false;
 	if (_noIFScreen)
 		return;
 
-	if (_healthOld != _health) {
+	if (_logic->_healthOld != _logic->_health) {
 		if (_healthTmr > 0)
 			_healthTmr--;
 		else {
-			if (_health <= _healthOld)
-				_healthOld--;
+			if (_logic->_health <= _logic->_healthOld)
+				_logic->_healthOld--;
 			else
-				_healthOld++;
+				_logic->_healthOld++;
 
 			int iconIndex;
-			if (_healthOld == 0)
+			if (_logic->_healthOld == 0)
 				iconIndex = 12 - 1;
 			else
-				iconIndex = 12 - _healthOld;
+				iconIndex = 12 - _logic->_healthOld;
 
 			drawIcon(4, 0, iconIndex);
 			_healthTmr = 1;
@@ -1398,7 +1142,7 @@ void KingdomGame::checkMainScreen() {
 
 	if (_iconRedraw) {
 		_iconRedraw = false;
-		drawIcon(4, 0, 12 - _healthOld);
+		drawIcon(4, 0, 12 - _logic->_healthOld);
 		drawIcon(11, 178, _iconPic[0]);
 		drawIcon(38, 178, _iconPic[1]);
 		drawIcon(65, 178, _iconPic[2]);
@@ -1413,21 +1157,21 @@ void KingdomGame::checkMainScreen() {
 			_treeHGTimer = 0;
 			_treeHGUPic = 0;
 		}
-		if (_tideCntl)
+		if (_logic->_tideCntl)
 			drawPic(178);
 	}
 
 	for (int i = 0; i < 7; i++) {
-		int wrkNodeNum = _nodeNum;
+		int wrkNodeNum = _logic->_nodeNum;
 		if (_tsIconOnly)
 			wrkNodeNum = 79;
-		if (_nodeNum == 56 && _inventory[16] < 1 && _wizard)
+		if (_logic->_nodeNum == 56 && _logic->_inventory[16] < 1 && _wizard)
 			wrkNodeNum = 80;
-		if (_nodeNum == 21 && _nodes[21] == 9 && !isDemo())
+		if (_logic->_nodeNum == 21 && _logic->_nodes[21] == 9 && !isDemo())
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 
-		if (_inventory[idx] >= 1 && _nodes[29] != 1 && _nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
+		if (_logic->_inventory[idx] >= 1 && _logic->_nodes[29] != 1 && _logic->_nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
 			if (_iconPic[i] != 12 + idx) {
 				if (_iconPic[i] == 89 + i)
 					_iconPic[i] = 96 + i;
@@ -1472,7 +1216,7 @@ void KingdomGame::checkMainScreen() {
 		}
 		break;
 	case 2:
-		if (!_replay) {
+		if (!_logic->_replay) {
 			if (_treeLeftPic != 33) {
 				drawIcon(243, 141, 33);
 				_treeLeftPic = 33;
@@ -1503,7 +1247,7 @@ void KingdomGame::checkMainScreen() {
 		}
 		break;
 	case 1:
-		if (_help) {
+		if (_logic->_help) {
 			if (_treeRightPic != 38) {
 				drawIcon(290, 143, 38);
 				_treeRightPic = 38;
@@ -1526,7 +1270,7 @@ void KingdomGame::checkMainScreen() {
 		break;
 	}
 
-	if (_eye) {
+	if (_logic->_eye) {
 		if (_treeEyeTimer == 0) {
 			_treeEyePic = _teaSeq[_treeEyeSta][0];
 			drawIcon(261, 51, _treeEyePic);
@@ -1585,65 +1329,25 @@ void KingdomGame::checkMainScreen() {
 		_treeHGTimer--;
 }
 
-bool KingdomGame::chkDesertObstacles() {
-	if (!_wizard)
-		return false;
-
-	_nextNode = _nodeNum;
-	if (_lastObs) {
-		_lastObs = false;
-		return false;
-	}
-
-	if (_nodes[29] || _rnd->getRandomNumber(6) == 0) {
-		if (!_nodes[49] || _robberyNode != _nodeNum) {
-			if (_lastObstacle != _nodeNum) {
-				if (_rnd->getRandomNumber(5) == 0) {
-					_statPlay = 250;
-					_lastObstacle = _nodeNum;
-					_lastObs = true;
-					_loopFlag = true;
-					return true;
-				} else {
-					return false;
-				}
-			} else {
-				return false;
-			}
-		} else {
-			_statPlay = 490;
-			_loopFlag = true;
-			return true;
-		}
-	} else {
-		_statPlay = 280;
-		_robberyNode = _nodeNum;
-		_lastObstacle = _nodeNum;
-		_lastObs = true;
-		_loopFlag = true;
-		return true;
-	}
-}
-
 void KingdomGame::switchAtoM() {
 	_asMode = true;
-	_asMap = _currMap;
+	_asMap = _logic->_currMap;
 	saveAS();
 	_iconSel = 9;
 	_oldTLS = _treeLeftSta;
 	_oldTRS = _treeRightSta;
-	_oldPouch = _pouch;
-	_oldHelp = _help;
+	_logic->_oldPouch = _logic->_pouch;
+	_logic->_oldHelp = _logic->_help;
 	_oldIconsClosed = _iconsClosed;
 	_treeLeftSta = 0;
 	_treeRightSta = 0;
-	_pouch = false;
-	_help = false;
+	_logic->_pouch = false;
+	_logic->_help = false;
 	_iconsClosed = true;
 }
 
 void KingdomGame::switchMtoA() {
-	switchAS();
+	_logic->switchAS();
 	fadeToBlack1();
 	drawRect(4, 17, 228, 161, 0);
 	restoreAS();
@@ -1700,7 +1404,7 @@ int KingdomGame::getAKey() {
 			}
 			break;
 		case Common::EVENT_LBUTTONUP: // retval == 2?
-			if (_eye)
+			if (_logic->_eye)
 				retval = !_asMode ? 0x43A : 0x43B;
 			break;
 		case Common::EVENT_RBUTTONUP: // retval == 1?
@@ -1749,9 +1453,9 @@ void KingdomGame::drawCursor() {
 
 void KingdomGame::cursorType() {
 	_mouseValue = 0;
-	if (_currMap != 1 && _statPlay >= 30) {
-		int var2 = _statPlay == 901 ? 16 : 0;
-		int var6 = _statPlay == 901 ? 35 : 16;
+	if (_logic->_currMap != 1 && _logic->_statPlay >= 30) {
+		int var2 = _logic->_statPlay == 901 ? 16 : 0;
+		int var6 = _logic->_statPlay == 901 ? 35 : 16;
 		for (int i = 0; i < var6 + 1; i++) {
 			if (i == var6) {
 				int tmpVal = checkMouseMapAS();
@@ -1777,7 +1481,7 @@ void KingdomGame::cursorType() {
 
 	switch(_mouseValue) {
 	case 0x18A:
-		if (_eye)
+		if (_logic->_eye)
 			_mouseValue = !_asMode ? 0x43A : 0x43B;
 		else
 			_mouseValue = 0;
@@ -1789,14 +1493,14 @@ void KingdomGame::cursorType() {
 			_mouseValue = 0x43F;
 		else if (_treeLeftSta == 0)
 			_mouseValue = 0;
-		else if (_treeLeftSta == 2 && _replay)
+		else if (_treeLeftSta == 2 && _logic->_replay)
 			_mouseValue = 0x43E;
 		else
 			_mouseValue = 0;
 		break;
 	case 0x18D:
 		if (_treeRightSta == 1)
-			_mouseValue = _help ? 0x43C : 0;
+			_mouseValue = _logic->_help ? 0x43C : 0;
 		if (_treeRightSta == 2)
 			_mouseValue = 0x440;
 		break;
@@ -1805,15 +1509,15 @@ void KingdomGame::cursorType() {
 		// No more check in ScummVM, we display the load screen
 		break;
 	case 0x407:
-		if (_statPlay == 182 && _nodes[18] < 9)
+		if (_logic->_statPlay == 182 && _logic->_nodes[18] < 9)
 			_mouseValue = 0;
 		break;
 	case 0x40D:
-		if (_nodes[29] == 1)
+		if (_logic->_nodes[29] == 1)
 			_mouseValue = 0;
 		break;
 	case 0x41F:
-		if (_nodes[32] == 0)
+		if (_logic->_nodes[32] == 0)
 			_mouseValue = 0;
 		break;
 	case 0x422:
@@ -1822,27 +1526,27 @@ void KingdomGame::cursorType() {
 			_mouseValue = 0;
 		break;
 	case 0x428:
-		if (_nodeNum == 5 && _gameMode != 2 && _spell1)
+		if (_logic->_nodeNum == 5 && _gameMode != 2 && _logic->_spell1)
 			_mouseValue = 0;
 		break;
 	case 0x42A:
-		if (_nodeNum == 5 && _gameMode != 2 && _spell2)
+		if (_logic->_nodeNum == 5 && _gameMode != 2 && _logic->_spell2)
 			_mouseValue = 0;
 		break;
 	case 0x42B:
-		if (_nodeNum == 5 && _gameMode != 2 && _spell3)
+		if (_logic->_nodeNum == 5 && _gameMode != 2 && _logic->_spell3)
 			_mouseValue = 0;
 		break;
 	case 0x445:
-		if (_statPlay == 161 && _nodes[16] == 0 && _wizard)
+		if (_logic->_statPlay == 161 && _logic->_nodes[16] == 0 && _wizard)
 			_mouseValue = 0x450;
 		break;
 	case 0x44F:
-		if (!_pouch)
+		if (!_logic->_pouch)
 			_mouseValue = 0;
 		break;
 	case 0x457:
-		if (!_tideCntl)
+		if (!_logic->_tideCntl)
 			_mouseValue = 0;
 		break;
 	}
@@ -1850,13 +1554,13 @@ void KingdomGame::cursorType() {
 	_iconSelect = 9;
 	for (int var6 = 0; var6 < 8; var6++) {
 		if (_mouseValue == 181 + var6) {
-			int var2 = _nodeNum;
+			int var2 = _logic->_nodeNum;
 			if (_tsIconOnly)
 				var2 = 79;
-			if (_nodeNum == 56 && _inventory[8] < 1 && _wizard)
+			if (_logic->_nodeNum == 56 && _logic->_inventory[8] < 1 && _wizard)
 				var2 = 80;
 			int indx = _iconActTable[var2][var6];
-			if (_inventory[indx] != 0 && _nodes[29] != 1 && _nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
+			if (_logic->_inventory[indx] != 0 && _logic->_nodes[29] != 1 && _logic->_nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
 				_mouseValue = indx + 0x428;
 				_iconSelect = var6;
 				break;
@@ -1865,9 +1569,9 @@ void KingdomGame::cursorType() {
 		}
 	}
 
-	if (_currMap == 11) {
+	if (_logic->_currMap == 11) {
 		if (_mouseValue > 0x427 && _mouseValue < 0x43A) {
-			if (_inventory[_mouseValue - 0x428] < 1)
+			if (_logic->_inventory[_mouseValue - 0x428] < 1)
 				_mouseValue = 0x241;
 		}
 	}
@@ -1883,11 +1587,11 @@ void KingdomGame::cursorTypeExit() {
 
 int KingdomGame::checkMouseMapAS() {
 	for (int i = 0; i < 16; i++) {
-		if (_cursorX >= _mouseMapAS[_currMap][i]._minX && _cursorX < _mouseMapAS[_currMap][i]._maxX
-			&& _cursorY >= _mouseMapAS[_currMap][i]._minY && _cursorY < _mouseMapAS[_currMap][i]._maxY)
-			return _mouseMapAS[_currMap][i]._mouseValue;
+		if (_cursorX >= _mouseMapAS[_logic->_currMap][i]._minX && _cursorX < _mouseMapAS[_logic->_currMap][i]._maxX
+			&& _cursorY >= _mouseMapAS[_logic->_currMap][i]._minY && _cursorY < _mouseMapAS[_logic->_currMap][i]._maxY)
+			return _mouseMapAS[_logic->_currMap][i]._mouseValue;
 	}
-	if (_currMap == 11) {
+	if (_logic->_currMap == 11) {
 		for (int i = 0; i < 16; i++) {
 			if (_cursorX >= _mouseMapAS[12][i]._minX && _cursorX < _mouseMapAS[12][i]._maxX
 				&& _cursorY >= _mouseMapAS[12][i]._minY && _cursorY < _mouseMapAS[12][i]._maxY)
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index f062468025..44c79b8b26 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -51,6 +51,7 @@
 #include "common/serializer.h"
 
 #include "kingdom/console.h"
+#include "kingdom/logic.h"
 
 namespace Kingdom {
 	enum KingdomDebugChannels {
@@ -108,14 +109,15 @@ namespace Kingdom {
 
 	private:
 		Console *_console;
-		Common::RandomSource *_rnd;
+		Logic *_logic;
 
 		KingArtEntry *_kingartEntries;
 
+	public:
+		Common::RandomSource *_rnd;
+
 		bool _loopFlag;
 		int _gameMode;
-		int _statPlay;
-		int _oldStatPlay;
 		bool _fstFwd;
 		bool _noIFScreen;
 		bool _sound;
@@ -123,9 +125,6 @@ namespace Kingdom {
 		bool _fullScreen;
 		int _frameStop;
 		int _daelonCntr;
-		bool _spell1;
-		bool _spell2;
-		bool _spell3;
 		bool _itemInhibit;
 		bool _asMode;
 		bool _aTimerFlag;
@@ -136,10 +135,7 @@ namespace Kingdom {
 		int _bTimer;
 		int _cTimer;
 		int _skylarTimer;
-		bool _tideCntl;
 		bool _mapEx;
-		int _health;
-		int _healthOld;
 		int _healthTmr;
 		int _treeEyeTimer;
 		int _treeEyePic;
@@ -152,37 +148,21 @@ namespace Kingdom {
 		int _treeRightSta;
 		int _treeHGSta;
 		bool _tsIconOnly;
-		bool _lastObs;
-		bool _pouch;
 		bool _noMusic; // TODO: Synchronize this flag with the launcher
 		byte *_asPtr;
 		int _asMap;
-		int _currMap;
 		int _oldTLS;
 		int _oldTRS;
 		int _treeLeftSta;
 		bool _iconsClosed;
 		bool _oldIconsClosed;
-		bool _oldEye;
-		bool _eye;
-		bool _oldHelp;
-		bool _help;
-		bool _oldPouch;
 		int _pMovie;
 		bool _keyActive;
 		bool _iconRedraw;
-		bool _replay;
 		bool _quit;
-		int _nodeNum;
-		int _oldNode; // CHECKME: Useless? If so, to be removed
-		int _nextNode;
-		int _robberyNode;
 		bool _cursorDrawn; // CHECKME: Useless
 		bool _wizard;
 		int _zoom;
-		bool _resurrect;
-		int _lastObstacle;
-		int _mapStat; // CHECKME: Useless? If so, to be removed
 		int _mouseValue;
 		int _cursorDef; // TODO: Could be removed by using the return value of CursorTypeExit()
 		int _oldCursorDef; // CHECKME: Unused in our implementation?
@@ -193,18 +173,14 @@ namespace Kingdom {
 		int _iconSel;
 		int _iconSelect;
 		bool _mouseDebound;
-		int _rtnNode;
 		int _soundNumber;
 		bool _palStepFlag;
 		Audio::SoundHandle _soundHandle;
 		int _tickCount;
 		uint32 _oldTime;
 
-		int16 _nodes[99];
-
 		Common::SeekableReadStream *_rezPointers[510];
 		int _rezSize[510];
-		int _inventory[19];
 		int _iconPic[7];
 		uint16 _userInput;
 		uint16 _mouseButton;
@@ -217,15 +193,6 @@ namespace Kingdom {
 		void initHelp();
 		void fadeToBlack1();
 		void fadeToBlack2();
-		void gameHelp();
-		void GPLogic1();
-		void GPLogic1_SubSP10();
-		void GPLogic1_SubSP121();
-		void GPLogic2();
-		void GPLogic2_SubSP361();
-		void GPLogic3();
-		void GPLogic4();
-		void GPLogic4_SP901();
 		void loadAResource(int reznum);
 		void releaseAResource(int reznum);
 		void showPic(int reznum);
@@ -236,14 +203,11 @@ namespace Kingdom {
 		void readMouse();
 		void initMPlayer();
 		void playMovie(int movieNum);
-		void enAll(); // TODO: Rename later as enableAll
-		void dsAll(); // TODO: Rename later as disableAll
 		void saveAS(); // TODO: Rename later as saveVideoBackground
 		void restoreAS(); // TODO: Rename later as restoreVideoBackground
 		void drawHelpScreen();
 		void drawRect(uint minX, uint minY, uint maxX, uint maxY, int color);
 		void drawInventory();
-		void gameHelp_Sub43C();
 		void playSound(int idx);
 		void eraseCursor();
 		void getUserInput();
@@ -251,17 +215,11 @@ namespace Kingdom {
 		void drawLocation();
 		void processMap(int mapNum, int zoom);
 		void processMapInput(int mapNum);
-		void inventoryDel(int item);
-		void inventoryAdd(int item);
 		void drawPic(int reznum);
 		void displayIcon(int reznum);
 		void setATimer();
-		bool wound();
 		void refreshSound();
-		void switchAS();
-		void increaseHealth();
 		void checkMainScreen();
-		bool chkDesertObstacles();
 		void switchAtoM();
 		void switchMtoA();
 		void drawIcon(int x, int y, int index);
@@ -273,7 +231,6 @@ namespace Kingdom {
 		int getAKey();
 		int checkMouseMapAS();
 		void cursorTypeExit();
-		void endCredits();
 		void saveGame();
 		void restoreGame();
 		virtual Common::Error loadGameState(int slot);
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
new file mode 100644
index 0000000000..9e621a87ce
--- /dev/null
+++ b/engines/kingdom/logic.cpp
@@ -0,0 +1,380 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#include "kingdom/kingdom.h"
+#include "kingdom/logic.h"
+
+namespace Kingdom {
+
+Logic::Logic(KingdomGame* vm) : _vm(vm) {
+}
+
+void Logic::initVariables() {
+	_healthOld = 0;
+	_health = 0;
+	_tideCntl = 0;
+	_statPlay = 0;
+	_spell3 = 0;
+	_spell2 = 0;
+	_spell1 = 0;
+	_robberyNode = 0;
+	_rtnNode = 0;
+	_replay = false;
+	_resurrect = false;
+	_pouch = false;
+	_oldPouch = false;
+	_oldHelp = false;
+	_oldEye = false;
+	_oldStatPlay = 0;
+	_oldNode = 0;
+	_nodeNum = 0;
+	_nextNode = 0;
+	_mapStat = 0;
+	_lastObs = 0;
+	_lastObstacle = 0;
+	_help = false;
+	_eye = false;
+	for (int i = 0; i < 99; i++)
+		_nodes[i] = 0;
+	_currMap = 0;
+}
+
+void Logic::initPlay() {
+	memset(_inventory, 0xFF, 19);
+
+	for (int i = 0; i < 99; i++)
+		_nodes[i] = 0;
+
+	_statPlay = 10;
+	_spell1 = false;
+	_spell2 = false;
+	_spell3 = false;
+	_tideCntl = false;
+	_health = 12;
+	_healthOld = 1;
+	_lastObs = false;
+	enAll();
+	_pouch = true;
+}
+
+void Logic::enAll() {
+	_help = true;
+	_eye = true;
+	_replay = true;
+	_pouch = true;
+	_fstFwd = true;
+}
+
+void Logic::dsAll() {
+	_help = false;
+	_eye = false;
+	_replay = false;
+	_pouch = false;
+	_fstFwd = false;
+}
+
+void Logic::inventoryDel(int item) {
+	if (_inventory[item] > 0)
+		_inventory[item]--;
+}
+
+void Logic::inventoryAdd(int item) {
+	if (item >= 4)
+		_inventory[item] = 1;
+	else
+		_inventory[item] = 3;
+}
+
+bool Logic::wound() {
+	bool retval = false;
+	if (_health == 12 || _health == 8 || _health == 4) {
+		_health -= 2;
+		retval = true;
+	}
+	return retval;
+}
+
+bool Logic::chkDesertObstacles() {
+	if (!_vm->_wizard)
+		return false;
+
+	_nextNode = _nodeNum;
+	if (_lastObs) {
+		_lastObs = false;
+		return false;
+	}
+
+	if (_nodes[29] || _vm->_rnd->getRandomNumber(6) == 0) {
+		if (!_nodes[49] || _robberyNode != _nodeNum) {
+			if (_lastObstacle != _nodeNum) {
+				if (_vm->_rnd->getRandomNumber(5) == 0) {
+					_statPlay = 250;
+					_lastObstacle = _nodeNum;
+					_lastObs = true;
+					_vm->_loopFlag = true;
+					return true;
+				} else {
+					return false;
+				}
+			} else {
+				return false;
+			}
+		} else {
+			_statPlay = 490;
+			_vm->_loopFlag = true;
+			return true;
+		}
+	} else {
+		_statPlay = 280;
+		_robberyNode = _nodeNum;
+		_lastObstacle = _nodeNum;
+		_lastObs = true;
+		_vm->_loopFlag = true;
+		return true;
+	}
+}
+
+void Logic::increaseHealth() {
+	if (_health <= 3)
+		_health = 4;
+	else if (_health <= 7)
+		_health = 8;
+	else
+		_health = 12;
+}
+
+void Logic::endCredits() {
+	_nodeNum = 0;
+	_vm->_bTimer = 190;
+	_vm->readMouse();
+
+	while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+		_vm->checkTimers();
+		_vm->refreshSound();
+		_vm->checkMainScreen();
+		_vm->readMouse();
+	}
+
+	_vm->fadeToBlack1();
+	_vm->drawRect(4, 17, 228, 161, 0);
+	_vm->playSound(0);
+	dsAll();
+	_vm->_iconsClosed = true;
+	_vm->playMovie(199);
+	dsAll();
+	_vm->playMovie(205);
+	dsAll();
+	_vm->fadeToBlack1();
+	_vm->drawRect(4, 17, 228, 161, 0);
+	_vm->playMovie(201);
+	_vm->fShowPic(125);
+	_currMap = 3;
+	dsAll();
+	_pouch = false;
+	memset(_inventory, 0xFF, 19);
+	_statPlay = 994;
+	_vm->_loopFlag = true;
+}
+
+void Logic::gameHelp_Sub43C() {
+	_vm->fadeToBlack1();
+	_currMap = _vm->_asMap;
+	_vm->drawRect(4, 17, 228, 161, 0);
+	_vm->restoreAS();
+	_vm->_userInput = 0;
+	_vm->_gameMode = 0;
+	_vm->_iconsClosed = false;
+	_vm->_treeLeftSta = _vm->_oldTLS;
+	_eye = _oldEye;
+	_help = _oldHelp;
+	_pouch = _oldPouch;
+}
+
+void Logic::gameHelp() {
+	if (!_vm->_gameMode) {
+		if (_vm->_userInput == 0x43C) {
+			_vm->saveAS();
+			_vm->_asMap = _currMap;
+			_currMap = 0;
+			_vm->fadeToBlack1();
+			_vm->drawRect(4, 17, 228, 161, 0);
+			_vm->drawHelpScreen();
+			_vm->_gameMode = 1;
+			_vm->_oldTLS = _vm->_treeLeftSta;
+			_vm->_treeLeftSta = 0;
+			_vm->_iconsClosed = true;
+			_oldEye = _eye;
+			_eye = false;
+			_oldHelp = _help;
+			_oldPouch = _pouch;
+			_pouch = false;
+			_vm->_userInput = 0;
+		}
+		if (_vm->_userInput == 0x44F) {
+			_vm->saveAS();
+			_vm->_asMap = _currMap;
+			_vm->_gameMode = 2;
+			_vm->_oldTLS = _vm->_treeLeftSta;
+			_vm->_treeLeftSta = 0;
+			_vm->_iconsClosed = true;
+			_oldEye = _eye;
+			_eye = false;
+			_oldHelp = _help;
+			_help = false;
+			_oldPouch = _pouch;
+			_vm->fadeToBlack1();
+			_vm->drawRect(4, 17, 228, 161, 0);
+			_vm->drawInventory();
+
+			if (_nodes[68] == 1 || _nodes[29] == 1 || _vm->_itemInhibit)
+				_currMap = 10;
+			else
+				_currMap = 11;
+
+			_vm->_userInput = 0;
+		}
+	}
+	if (_vm->_gameMode == 0)
+		return;
+
+	switch(_vm->_userInput) {
+	case 0x240:
+		_vm->fadeToBlack2();
+		//TODO: Set _quitFlag to 1
+		break;
+	case 0x241:
+		gameHelp_Sub43C();
+		return;
+		break;
+	case 0x242:
+		if (_vm->_noMusic) {
+			_vm->_noMusic = false;
+			_vm->playSound(1);
+		} else {
+			_vm->_noMusic = true;
+			_vm->playSound(0);
+		}
+		_vm->drawHelpScreen();
+		break;
+	case 0x243: {
+		_vm->fadeToBlack2();
+		_vm->_keyActive = false;
+		_vm->_noIFScreen = true;
+		_vm->playSound(0);
+		// The demo isn't saving pMovie.
+		// It's obviously a bug and this behavior wasn't kept in ScummVM
+		int oldPMovie = _vm->_pMovie;
+		while(!_vm->_keyActive) {
+			_vm->playMovie(54);
+			_vm->fadeToBlack2();
+		}
+		_vm->_pMovie = oldPMovie;
+		_vm->_noIFScreen = false;
+		_vm->showPic(106);
+		_vm->drawHelpScreen();
+		_vm->_iconRedraw = true;
+		_vm->playSound(1);
+				}
+				break;
+	case 0x244:
+		//TODO: Set _quitFlag to 2
+		_vm->_quit = true;
+		break;
+	case 0x245: {
+		_vm->fadeToBlack1();
+		// The demo isn't saving pMovie.
+		// It's obviously a bug and this behavior wasn't kept in ScummVM
+		int oldPMovie = _vm->_pMovie;
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_vm->playMovie(205);
+		_vm->fadeToBlack1();
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_vm->playMovie(199);
+		_vm->fadeToBlack1();
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_vm->drawHelpScreen();
+		_vm->_pMovie = oldPMovie;
+		}
+		break;
+	case 0x246:
+		_vm->saveGame();
+		break;
+	case 0x43B:
+	case 0x43C:
+	case 0x44F:
+		gameHelp_Sub43C();
+		return;
+	}
+
+	if (_vm->_userInput > 0x427 && _vm->_userInput < 0x43A)
+		_vm->fShowPic(130 + _vm->_userInput - 0x428);
+
+	if (_vm->_userInput == 0x260) {
+		_vm->drawInventory();
+		if (_nodes[68] == 1 || _nodes[29] == 1)
+			_currMap = 10;
+		else
+			_currMap = 11;
+
+		_vm->_userInput = 0;
+	}
+}
+
+void Logic::switchAS() {
+	_vm->_asMode = false;
+	_currMap = _vm->_asMap;
+	_vm->_treeLeftSta = _vm->_oldTLS;
+	_vm->_treeRightSta = _vm->_oldTRS;
+	_pouch = _oldPouch;
+	_help = _oldHelp;
+	_vm->_iconsClosed = _vm->_oldIconsClosed;
+}
+
+void Logic::synchronize(Common::Serializer &s) {
+	s.syncAsSint16LE(_statPlay);
+	s.syncAsSint16LE(_health);
+	s.syncAsSint16LE(_healthOld);
+	s.syncAsSint16LE(_lastObstacle);
+	s.syncAsSint16LE(_nextNode);
+	s.syncAsSint16LE(_nodeNum);
+	s.syncAsSint16LE(_rtnNode);
+	s.syncAsSint16LE(_robberyNode);
+
+	for (int i = 0; i < 18; i++)
+		s.syncAsSint16LE(_inventory[i]);
+
+	for (int i = 0; i < 99; i++)
+		s.syncAsSint16LE(_nodes[i]);
+
+	s.syncAsByte(_oldEye);
+	s.syncAsByte(_fstFwd);
+	s.syncAsByte(_help);
+	s.syncAsByte(_lastObs);
+	s.syncAsByte(_oldPouch);
+	s.syncAsByte(_replay);
+	s.syncAsByte(_spell1);
+	s.syncAsByte(_spell2);
+	s.syncAsByte(_spell3);
+	s.syncAsByte(_tideCntl);
+}
+
+} // NameSpace
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
new file mode 100644
index 0000000000..ca278a344b
--- /dev/null
+++ b/engines/kingdom/logic.h
@@ -0,0 +1,97 @@
+/* ScummVM - Graphic Adventure Engine
+*
+* ScummVM is the legal property of its developers, whose names
+* are too numerous to list here. Please refer to the COPYRIGHT
+* file distributed with this source distribution.
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License
+* as published by the Free Software Foundation; either version 2
+* of the License, or (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*
+*/
+
+#ifndef KINGDOM_LOGIC_H
+#define KINGDOM_LOGIC_H
+
+#include "gui/debugger.h"
+
+namespace Kingdom {
+
+class KingdomGame;
+
+class Logic {
+private:
+	KingdomGame *_vm;
+
+public:
+	int _statPlay;
+	int _oldStatPlay;
+	int _nodeNum;
+	int _oldNode; // CHECKME: Useless? If so, to be removed
+	int _nextNode;
+	int _robberyNode;
+	int16 _nodes[99];
+	int _currMap;
+	bool _oldEye;
+	bool _eye;
+	bool _oldHelp;
+	bool _help;
+	int _lastObstacle;
+	bool _lastObs;
+	int _inventory[19];
+	bool _replay;
+	bool _pouch;
+	bool _oldPouch;
+	bool _resurrect;
+	bool _tideCntl;
+	int _rtnNode;
+	int _health;
+	int _healthOld;
+	bool _fstFwd;
+	bool _spell1;
+	bool _spell2;
+	bool _spell3;
+
+	int _mapStat; // CHECKME: Useless? If so, to be removed
+
+	void enAll(); // TODO: Rename later as enableAll
+	void dsAll(); // TODO: Rename later as disableAll
+	bool wound();
+	void GPLogic1_SubSP10();
+	void GPLogic1_SubSP121();
+	void GPLogic2_SubSP361();
+	void GPLogic4_SP901();
+	bool chkDesertObstacles();
+	void increaseHealth();
+	void endCredits();
+	void gameHelp_Sub43C();
+
+public:
+	explicit Logic(Kingdom::KingdomGame *vm);
+	virtual ~Logic(void) {}
+
+	void GPLogic1();
+	void GPLogic2();
+	void GPLogic3();
+	void GPLogic4();
+	void gameHelp();
+	void inventoryDel(int item);
+	void inventoryAdd(int item);
+	void initVariables();
+	void initPlay();
+	void switchAS();
+	void synchronize(Common::Serializer &s);
+};
+}
+
+#endif
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index d3e2d53a6a..bb5a91fa65 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -7,6 +7,7 @@ MODULE_OBJS = \
 	GPLogic2.o \
 	GPLogic3.o \
 	GPLogic4.o \
+	logic.o \
 	console.o \
 	detection.o
 


Commit: 9b5e4860b41b32a86d3c53adcee6284458eb5661
    https://github.com/scummvm/scummvm/commit/9b5e4860b41b32a86d3c53adcee6284458eb5661
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Refactor hardcoded logic (WIP)

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 45a21ca4c1..8345f32af1 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -25,193 +25,200 @@
 
 namespace Kingdom {
 
-void Logic::GPLogic1() {
-	switch(_statPlay) {
-	case 10:
-		_nodeNum = 1;
-		_vm->initPlay();
-		_replay = false;
+void Logic::GPL1_10() {
+	_nodeNum = 1;
+	_vm->initPlay();
+	_replay = false;
+	GPLogic1_SubSP10();
+}
+
+void Logic::GPL1_11() {
+	switch(_vm->_userInput) {
+	case 0x190:
+		_statPlay = 20;
+		_vm->_wizard = false;
+		_vm->_aTimer = 0;
+		break;
+	case 0x191:
+		_statPlay = 20;
+		_vm->_wizard = true;
+		_vm->_aTimer = 0;
+		break;
+	case 0x192:
+		_vm->_aTimer = 0;
+		_vm->fadeToBlack2();
+		_vm->playMovie(1);
 		GPLogic1_SubSP10();
 		break;
-	case 11:
-		switch(_vm->_userInput) {
-		case 0x190:
-			_statPlay = 20;
-			_vm->_wizard = false;
-			_vm->_aTimer = 0;
-			break;
-		case 0x191:
-			_statPlay = 20;
-			_vm->_wizard = true;
-			_vm->_aTimer = 0;
-			break;
-		case 0x192:
-			_vm->_aTimer = 0;
-			_vm->fadeToBlack2();
-			_vm->playMovie(1);
-			GPLogic1_SubSP10();
-			break;
-		case 0x193:
-			_vm->_aTimer = 0;
-			_vm->_keyActive = false;
-			_vm->_noIFScreen = true;
-			_vm->playSound(0);
-			while(!_vm->_keyActive) {
-				_vm->fadeToBlack2();
-				_vm->playMovie(54);
-			}
-			GPLogic1_SubSP10();
-			break;
-		case 0x194:
-			// CHECKME	_QuitFlag = 2;
-			_vm->_quit = true;
-			break;
-		case 0x24A:
+	case 0x193:
+		_vm->_aTimer = 0;
+		_vm->_keyActive = false;
+		_vm->_noIFScreen = true;
+		_vm->playSound(0);
+		while(!_vm->_keyActive) {
 			_vm->fadeToBlack2();
-			_vm->setMouse();
-			_vm->eraseCursor();
-			_vm->restoreGame();
-			break;
-		case 0x2F1:
-			_vm->eraseCursorAsm();
-			_vm->_cursorDrawn = false;
-			_vm->fadeToBlack2();
-			_vm->playSound(0);
 			_vm->playMovie(54);
-			GPLogic1_SubSP10();
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
+		GPLogic1_SubSP10();
+		break;
+	case 0x194:
+		// CHECKME	_QuitFlag = 2;
+		_vm->_quit = true;
+		break;
+	case 0x24A:
+		_vm->fadeToBlack2();
+		_vm->setMouse();
+		_vm->eraseCursor();
+		_vm->restoreGame();
 		break;
-	case 20:
-		_vm->initPlay();
-		_vm->_noIFScreen = false;
+	case 0x2F1:
 		_vm->eraseCursorAsm();
 		_vm->_cursorDrawn = false;
 		_vm->fadeToBlack2();
-		_vm->showPic(106);
-		_statPlay = 30;
-		_vm->_userInput = 0;
-		_vm->_loopFlag = true;
+		_vm->playSound(0);
+		_vm->playMovie(54);
+		GPLogic1_SubSP10();
 		break;
-	case 30:
-		_nodeNum = 3;
-		_vm->_userInput = 0;
-		if (_nodes[3] == 0) {
-			_vm->playMovie(177);
-			_nodes[3] = 9;
-			if (!_vm->_wizard) {
-				_statPlay = 50;
-				_vm->_loopFlag = true;
-				break;
-			}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_20() {
+	_vm->initPlay();
+	_vm->_noIFScreen = false;
+	_vm->eraseCursorAsm();
+	_vm->_cursorDrawn = false;
+	_vm->fadeToBlack2();
+	_vm->showPic(106);
+	_statPlay = 30;
+	_vm->_userInput = 0;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL1_30() {
+	_nodeNum = 3;
+	_vm->_userInput = 0;
+	if (_nodes[3] == 0) {
+		_vm->playMovie(177);
+		_nodes[3] = 9;
+		if (!_vm->_wizard) {
+			_statPlay = 50;
+			_vm->_loopFlag = true;
+			return;
 		}
-		_vm->drawLocation();
-		if (_nodes[4] != 0 && _nodes[6] != 1)
-			_vm->_sound = true;
-		else
-			_vm->_sound = false;
-		
-		_vm->playMovie(7);
-		_statPlay = 31;
-		_currMap = 10;
-		_vm->playSound(24);
+	}
+	_vm->drawLocation();
+	if (_nodes[4] != 0 && _nodes[6] != 1)
+		_vm->_sound = true;
+	else
+		_vm->_sound = false;
+
+	_vm->playMovie(7);
+	_statPlay = 31;
+	_currMap = 10;
+	_vm->playSound(24);
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL1_31() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 32;
+		_vm->_zoom = 2;
+		_vm->processMap(3, _vm->_zoom);
 		_vm->_userInput = 0;
 		break;
-	case 31:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 32;
-			_vm->_zoom = 2;
-			_vm->processMap(3, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 32:
-		_vm->processMapInput(3);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 40:
-		_nodeNum = 4;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[4] == 0)
-			_vm->playMovie(62);
-		if (_nodes[4] == 9) {
-			_vm->playMovie(8);
-			_vm->_tsIconOnly = true;
-		}
+	}
+}
+
+void Logic::GPL1_32() {
+	_vm->processMapInput(3);
+}
+
+void Logic::GPL1_40() {
+	_nodeNum = 4;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[4] == 0)
+		_vm->playMovie(62);
+	if (_nodes[4] == 9) {
+		_vm->playMovie(8);
+		_vm->_tsIconOnly = true;
+	}
+	_currMap = 10;
+	_vm->playSound(14);
+	_statPlay = 41;
+}
+
+void Logic::GPL1_41() {
+	switch(_vm->_userInput) {
+	case 0x429:
+		_vm->playMovie(178);
+		_vm->playMovie(63);
+		inventoryDel(1);
 		_currMap = 10;
-		_vm->playSound(14);
+		_nodes[4] = 9;
 		_statPlay = 41;
+		_vm->_tsIconOnly = true;
 		break;
-	case 41:
-		switch(_vm->_userInput) {
-		case 0x429:
-			_vm->playMovie(178);
-			_vm->playMovie(63);
-			inventoryDel(1);
-			_currMap = 10;
-			_nodes[4] = 9;
-			_statPlay = 41;
-			_vm->_tsIconOnly = true;
-			break;
-		case 0x43A:
-			_statPlay = 42;
-			_vm->_zoom = 2;
-			_vm->processMap(4, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43A:
+		_statPlay = 42;
+		_vm->_zoom = 2;
+		_vm->processMap(4, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 42:
-		_vm->processMapInput(4);
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 50:
-		_nodeNum = 5;
-		_vm->drawLocation();
-		if (_nodes[5] != 0 && !_resurrect) {
-			_vm->_frameStop = 38;
-			_vm->playMovie(5);
-		}
-		
-		if (_nodes[5] == 0)
-			_vm->playMovie(5);
-		
-		_resurrect = false;
-		_vm->playSound(1);
-		
-		if (_spell1 && _spell2 && _spell3) {
-			_vm->_sound = true;
-			_vm->playMovie(2);
-			_currMap = 10;
-			_statPlay = 51;
-			_vm->_loopFlag = true;
-		} else if (_vm->_daelonCntr) {
-			_vm->playMovie(2);
-			_currMap = 10;
-			_statPlay = 51;
-		} else {
-			switch(_nodes[5]) {
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_42() {
+	_vm->processMapInput(4);
+}
+
+void Logic::GPL1_50() {
+	_nodeNum = 5;
+	_vm->drawLocation();
+	if (_nodes[5] != 0 && !_resurrect) {
+		_vm->_frameStop = 38;
+		_vm->playMovie(5);
+	}
+
+	if (_nodes[5] == 0)
+		_vm->playMovie(5);
+
+	_resurrect = false;
+	_vm->playSound(1);
+
+	if (_spell1 && _spell2 && _spell3) {
+		_vm->_sound = true;
+		_vm->playMovie(2);
+		_currMap = 10;
+		_statPlay = 51;
+		_vm->_loopFlag = true;
+	} else if (_vm->_daelonCntr) {
+		_vm->playMovie(2);
+		_currMap = 10;
+		_statPlay = 51;
+	} else {
+		switch(_nodes[5]) {
 			case 0:
 				inventoryAdd(1);
 				break;
@@ -231,101 +238,16 @@ void Logic::GPLogic1() {
 				inventoryAdd(3);
 				_spell3 = true;
 				break;
-			}
-			if (_spell1 && _spell2 && _spell3) {
-				_vm->playMovie(6);
-				_currMap = 7;
-				_statPlay = 51;
-				_vm->_loopFlag = true;
-			} else {
-				_eye = false;
-				_vm->playMovie(61);
-				_vm->playSound(1);
-
-				if (!_spell1)
-					_vm->drawPic(116);
-				
-				if (!_spell2)
-					_vm->drawPic(117);
-				
-				if (!_spell3)
-					_vm->drawPic(118);
-				
-				_currMap = 6;
-				_statPlay = 53;
-				_vm->_loopFlag = true;
-			}
-		}
-		break;
-	case 51:
-		switch(_vm->_userInput) {
-		case 0x406:
-			_statPlay = 70;
-			_vm->_loopFlag = true;
-			break;
-		case 0x40A:
-			_statPlay = 110;
-			_vm->_loopFlag = true;
-			break;
-		case 0x417:
-			_statPlay = 30;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 52;
-			_vm->_zoom = 2;
-			_vm->processMap(5, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
-		break;
-	case 52:
-		_vm->processMapInput(5);
-		break;
-	case 53:
-		switch(_vm->_userInput) {
-		case 0x428:
-			_nodes[5] = 1;
-			_vm->_daelonCntr = 5;
-			_vm->playMovie(6);
-			_currMap = 7;
-			_statPlay = 51;
-			_eye = true;
-			break;
-		case 0x42A:
-			_nodes[5] = 2;
-			_vm->_daelonCntr = 5;
-			_vm->playMovie(6);
-			_currMap = 7;
-			_statPlay = 51;
-			_eye = true;
-			break;
-		case 0x42B:
-			_nodes[5] = 3;
-			_vm->_daelonCntr = 5;
+		if (_spell1 && _spell2 && _spell3) {
 			_vm->playMovie(6);
 			_currMap = 7;
 			_statPlay = 51;
-			_eye = true;
-			break;
-		case 0x43E:
-			if (!_spell1 && !_spell2 && !_spell3 && !_vm->_wizard) {
-				_vm->playMovie(177);
-				_vm->drawLocation();
-				_vm->playMovie(5);
-			}
-
-			_vm->playSound(1);
+			_vm->_loopFlag = true;
+		} else {
 			_eye = false;
 			_vm->playMovie(61);
+			_vm->playSound(1);
 
 			if (!_spell1)
 				_vm->drawPic(116);
@@ -335,1040 +257,1190 @@ void Logic::GPLogic1() {
 
 			if (!_spell3)
 				_vm->drawPic(118);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
-		break;
-	case 60:
-		_nodeNum = 6;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[4] == 0) {
-			dsAll();
-			_vm->playMovie(9);
-			_statPlay = 991;
-		} else {
-			_vm->playMovie(64);
-			_statPlay = 200;
+
+			_currMap = 6;
+			_statPlay = 53;
+			_vm->_loopFlag = true;
 		}
-		_currMap = 10;
+	}
+}
+
+void Logic::GPL1_51() {
+	switch(_vm->_userInput) {
+	case 0x406:
+		_statPlay = 70;
 		_vm->_loopFlag = true;
 		break;
-	case 70:
-		_nodeNum = 7;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[7] == 0) {
-			_vm->playMovie(11);
-			_vm->playSound(2);
-			_currMap = 9;
-		} else {
-			_vm->_sound = true;
-			_vm->playMovie(13);
-			_vm->playSound(43);
-			_currMap = 10;
-			_vm->_tsIconOnly = true;
-		}
-		_statPlay = 71;
-		break;
-	case 71:
-		switch(_vm->_userInput) {
-		case 0x42F:
-			if (_nodes[7] == 9) {
-				_vm->displayIcon(137);
-			} else {
-				_vm->playMovie(12);
-				_vm->playSound(30);
-				inventoryAdd(7);
-				_nodes[7] = 9;
-				_currMap = 10;
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x43A:
-			_statPlay = 72;
-			_vm->_zoom = 2;
-			_vm->processMap(7, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x40A:
+		_statPlay = 110;
+		_vm->_loopFlag = true;
 		break;
-	case 72:
-		_vm->processMapInput(7);
+	case 0x417:
+		_statPlay = 30;
+		_vm->_loopFlag = true;
 		break;
-	case 80:
-		_nodeNum = 8;
-		_vm->drawLocation();
+	case 0x43A:
+		_statPlay = 52;
+		_vm->_zoom = 2;
+		_vm->processMap(5, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_nodes[8] == 9) {
-			_vm->playMovie(24);
-			_vm->playSound(3);
-			_currMap = 13;
-			_vm->_tsIconOnly = true;
-		} else {
-			_nodes[8] = 0;
-			dsAll();
-			_vm->playMovie(14);
-			_currMap = 10;
-			_vm->setATimer();
-		}
-		_statPlay = 81;
 		break;
-	case 81:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			dsAll();
-			_vm->playMovie(15);
-			_statPlay = 991;
-			_vm->_loopFlag = true;
-			break;
-		case 0x429:
-			if (!_nodes[8]) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(18);
-				_vm->playSound(3);
-				inventoryDel(1);
-				_vm->_userInput = 0;
-				_currMap = 13;
-				_nodes[8] = 1;
-			}
-			break;
-		case 0x42A:
-			if (!_nodes[8]) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(18);
-				_vm->playSound(3);
-				inventoryDel(2);
-				_vm->_userInput = 0;
-				_currMap = 13;
-				_nodes[8] = 1;
-			}
-			break;
-		case 0x42C:
-			if (!_nodes[8]) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(16);
-				_vm->playSound(3);
-				_nodes[8] = 9;
-				_vm->_tsIconOnly = true;
-				_currMap = 13;
-			}
-			break;
-		case 0x42D:
-			if (!_nodes[8]) {
-				enAll();
-				_vm->playMovie(17);
-				inventoryDel(5);
-				_vm->playSound(3);
-				_vm->_aTimer = 0;
-				_vm->_userInput = 0;
-				_currMap = 13;
-				_nodes[8] = 1;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 82;
-			_vm->_zoom = 2;
-			_vm->processMap(8, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			_vm->_aTimer = 0;
-			break;
-		case 0x453:
-			if (_nodes[8] == 1) {
-				_statPlay = 80;
-				_vm->_loopFlag = true;
-			} else {
-				_statPlay = 160;
-				_vm->_loopFlag = true;
-				_vm->_userInput = 0;
-			}
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 82:
-		_vm->processMapInput(8);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 90:
-		if (_nodeNum == 18 && _nodes[17] == 0) {
-			_statPlay = 170;
-			_vm->_loopFlag = true;
-			_nextNode = 90;
-		} else {
-			_nodeNum = 9;
-			_vm->drawLocation();
-			_vm->_userInput = 0;
-			if (_nodes[9] == 0) {
-				_vm->_sound = false;
-				_nodes[9] = 9;
-			} else
-				_vm->_sound = true;
-			
-			if (!_vm->_wizard)
-				_vm->_frameStop = 90;
+	}
+}
 
-			_vm->playMovie(19);
-			_vm->playSound(15);
-			if (!_vm->_wizard)
-				_vm->showPic(109);
-			else
-				_vm->showPic(319);
+void Logic::GPL1_52() {
+	_vm->processMapInput(5);
+}
 
-			_currMap = 10;
-			_statPlay = 91;
-		}
+void Logic::GPL1_53() {
+	switch(_vm->_userInput) {
+	case 0x428:
+		_nodes[5] = 1;
+		_vm->_daelonCntr = 5;
+		_vm->playMovie(6);
+		_currMap = 7;
+		_statPlay = 51;
+		_eye = true;
 		break;
-	case 91:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 92;
-			_vm->_zoom = 2;
-			_vm->processMap(9, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			if (!_vm->_wizard)
-				_vm->_frameStop = 90;
-
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			if (!_vm->_wizard)
-				_vm->showPic(109);
-			else
-				_vm->showPic(319);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x42A:
+		_nodes[5] = 2;
+		_vm->_daelonCntr = 5;
+		_vm->playMovie(6);
+		_currMap = 7;
+		_statPlay = 51;
+		_eye = true;
 		break;
-	case 92:
-		_vm->processMapInput(9);
+	case 0x42B:
+		_nodes[5] = 3;
+		_vm->_daelonCntr = 5;
+		_vm->playMovie(6);
+		_currMap = 7;
+		_statPlay = 51;
+		_eye = true;
 		break;
-	case 100:
-		if (_nodeNum == 18 && _nodes[17] == 0) {
-			_statPlay = 170;
-			_vm->_loopFlag = true;
-			_nextNode = 100;
-		} else {
-			_nodeNum = 10;
+	case 0x43E:
+		if (!_spell1 && !_spell2 && !_spell3 && !_vm->_wizard) {
+			_vm->playMovie(177);
 			_vm->drawLocation();
-			_vm->_userInput = 0;
-			if (_nodes[10] == 1)
-				_nodes[10] = 9;
+			_vm->playMovie(5);
+		}
 
-			if (_nodes[10] != 9) {
-				_vm->_sound = false;
-				_nodes[10] = 1;
-			} else if (_vm->_wizard)
-				_vm->_sound = true;
+		_vm->playSound(1);
+		_eye = false;
+		_vm->playMovie(61);
 
-			_vm->playMovie(20);
-			_vm->playSound(41);
-			_currMap = 10;
-			_statPlay = 101;
-		}
-		break;
-	case 101:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 102;
-			_vm->_zoom = 2;
-			_vm->processMap(10, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		}
+		if (!_spell1)
+			_vm->drawPic(116);
+
+		if (!_spell2)
+			_vm->drawPic(117);
+
+		if (!_spell3)
+			_vm->drawPic(118);
 		break;
-	case 102:
-		_vm->processMapInput(10);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 110:
-		_nodeNum = 11;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[22] == 0)
-			_vm->_sound = false;
-		else
-			_vm->_sound = true;
-		_vm->playMovie(21);
-		_vm->playSound(42);
+	}
+}
+
+void Logic::GPL1_60() {
+	_nodeNum = 6;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[4] == 0) {
+		dsAll();
+		_vm->playMovie(9);
+		_statPlay = 991;
+	} else {
+		_vm->playMovie(64);
+		_statPlay = 200;
+	}
+	_currMap = 10;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL1_70() {
+	_nodeNum = 7;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[7] == 0) {
+		_vm->playMovie(11);
+		_vm->playSound(2);
+		_currMap = 9;
+	} else {
+		_vm->_sound = true;
+		_vm->playMovie(13);
+		_vm->playSound(43);
 		_currMap = 10;
-		_statPlay = 111;
-		break;
-	case 111:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 112;
-			_vm->_zoom = 1;
-			_vm->processMap(11, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->playMovie(21);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
+		_vm->_tsIconOnly = true;
+	}
+	_statPlay = 71;
+}
+
+void Logic::GPL1_71() {
+	switch(_vm->_userInput) {
+	case 0x42F:
+		if (_nodes[7] == 9) {
+			_vm->displayIcon(137);
+		} else {
+			_vm->playMovie(12);
+			_vm->playSound(30);
+			inventoryAdd(7);
+			_nodes[7] = 9;
+			_currMap = 10;
 		}
+		_vm->_userInput = 0;
 		break;
-	case 112:
-		_vm->processMapInput(11);
-		break;
-	case 120:
-		_nodeNum = 12;
-		_vm->drawLocation();
+	case 0x43A:
+		_statPlay = 72;
+		_vm->_zoom = 2;
+		_vm->processMap(7, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_nodes[12] == 0) {
-			_vm->playMovie(22);
-			_currMap = 14;
-		} else {
-			_vm->playMovie(25);
-			_currMap = 15;
-		}
-		_eye = false;
-		_vm->playSound(3);
-		_statPlay = 121;
 		break;
-	case 121:
-		switch (_vm->_userInput) {
-		case 0x445:
-			_statPlay = 150;
-			_vm->_loopFlag = true;
-			_eye = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x446:
-			_statPlay = 80;
-			_vm->_loopFlag = true;
-			_eye = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x437:
-			if (_nodes[12] == 9) {
-				_vm->displayIcon(145);
-				_vm->_userInput = 0;
-			} else
-				GPLogic1_SubSP121();
-			break;
-		case 0x43E:
-			if (_vm->_pMovie == 023)
-				GPLogic1_SubSP121();
-			else {
-				_vm->_sound = _vm->_lastSound;
-				_vm->playMovie(_vm->_pMovie);
-				_vm->playSound(3);
-			}
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 130:
-		_nodeNum = 13;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_72() {
+	_vm->processMapInput(7);
+}
+
+void Logic::GPL1_80() {
+	_nodeNum = 8;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[8] == 9) {
+		_vm->playMovie(24);
+		_vm->playSound(3);
+		_currMap = 13;
+		_vm->_tsIconOnly = true;
+	} else {
+		_nodes[8] = 0;
+		dsAll();
+		_vm->playMovie(14);
+		_currMap = 10;
+		_vm->setATimer();
+	}
+	_statPlay = 81;
+}
+
+void Logic::GPL1_81() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
 		dsAll();
-		_vm->playMovie(4);
+		_vm->playMovie(15);
 		_statPlay = 991;
 		_vm->_loopFlag = true;
 		break;
-	case 140:
-		_nodeNum = 14;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (wound()) {
-			_vm->playMovie(26);
-			_vm->playSound(35);
-			_currMap = 10;
-			_statPlay = 141;
-		} else {
-			dsAll();
-			_vm->playMovie(27);
-			_statPlay = 991;
-			_vm->_loopFlag = true;
+	case 0x429:
+		if (!_nodes[8]) {
+			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(18);
+			_vm->playSound(3);
+			inventoryDel(1);
 			_vm->_userInput = 0;
+			_currMap = 13;
+			_nodes[8] = 1;
 		}
 		break;
-	case 141:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 142;
-			_vm->_zoom = 2;
-			_vm->processMap(14, _vm->_zoom);
+	case 0x42A:
+		if (!_nodes[8]) {
+			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(18);
+			_vm->playSound(3);
+			inventoryDel(2);
 			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
+			_currMap = 13;
+			_nodes[8] = 1;
 		}
 		break;
-	case 142:
-		_vm->processMapInput(14);
-		break;
-	case 150:
-		_nodeNum = 15;
-		_vm->drawLocation();
-		_vm->playMovie(28);
-		_vm->playSound(3);
-		_currMap = 16;
-		_statPlay = 151;
-		_eye = false;
+	case 0x42C:
+		if (!_nodes[8]) {
+			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(16);
+			_vm->playSound(3);
+			_nodes[8] = 9;
+			_vm->_tsIconOnly = true;
+			_currMap = 13;
+		}
 		break;
-	case 151:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
+	case 0x42D:
+		if (!_nodes[8]) {
+			enAll();
+			_vm->playMovie(17);
+			inventoryDel(5);
+			_vm->playSound(3);
 			_vm->_aTimer = 0;
-			break;
-		case 0x445:
+			_vm->_userInput = 0;
+			_currMap = 13;
+			_nodes[8] = 1;
+		}
+		break;
+	case 0x43A:
+		_statPlay = 82;
+		_vm->_zoom = 2;
+		_vm->processMap(8, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		_vm->_aTimer = 0;
+		break;
+	case 0x453:
+		if (_nodes[8] == 1) {
 			_statPlay = 80;
-			enAll();
+			_vm->_loopFlag = true;
+		} else {
+			_statPlay = 160;
 			_vm->_loopFlag = true;
 			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 160:
-		_nodeNum = 16;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_82() {
+	_vm->processMapInput(8);
+}
+
+void Logic::GPL1_90() {
+	if (_nodeNum == 18 && _nodes[17] == 0) {
+		_statPlay = 170;
+		_vm->_loopFlag = true;
+		_nextNode = 90;
+	} else {
+		_nodeNum = 9;
 		_vm->drawLocation();
 		_vm->_userInput = 0;
-		_vm->playMovie(29);
-		_vm->playSound(3);
-		_currMap = 85;
-		_statPlay = 161;
-		break;
-	case 161:
-		switch(_vm->_userInput) {
-		case 0x198: {
-			_vm->fadeToBlack1();
-			_vm->drawRect(4, 17, 228, 161, 0);
-			_replay = true;
-			int oldPMovie = _vm->_pMovie;
-			_vm->playMovie(208);
-			_vm->_pMovie = oldPMovie;
-			_vm->_asMode = false;
-			_vm->restoreAS();
-			_help = true;
-			_eye = true;
-			_pouch = true;
-			_currMap = 85;
-			}
-			break;
-		case 0x199: {
-			_vm->fadeToBlack1();
-			_vm->drawRect(4, 17, 228, 161, 0);
-			_replay = true;
-			int oldPMovie = _vm->_pMovie;
-			_vm->playMovie(207);
-			_vm->_pMovie = oldPMovie;
-			_vm->_asMode = false;
-			_vm->restoreAS();
-			_help = true;
-			_eye = true;
-			_pouch = true;
-			_currMap = 85;
-			}
-			break;
-		case 0x19A:
-			_vm->fShowPic(110);
-			_vm->_bTimer = 190;
-			_vm->readMouse();
-			while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-				_vm->readMouse();
-			}
-			_vm->fShowPic(105);
-			break;
-		case 0x42E:
-			_nodes[15] = 1;
-			_nodes[16] = 1;
-			_statPlay = 120;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 162;
-			_vm->_zoom = 2;
-			_vm->processMap(16, _vm->_zoom);
+		if (_nodes[9] == 0) {
+			_vm->_sound = false;
+			_nodes[9] = 9;
+		} else
+			_vm->_sound = true;
+
+		if (!_vm->_wizard)
+			_vm->_frameStop = 90;
+
+		_vm->playMovie(19);
+		_vm->playSound(15);
+		if (!_vm->_wizard)
+			_vm->showPic(109);
+		else
+			_vm->showPic(319);
+
+		_currMap = 10;
+		_statPlay = 91;
+	}
+}
+
+void Logic::GPL1_91() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 92;
+		_vm->_zoom = 2;
+		_vm->processMap(9, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		if (!_vm->_wizard)
+			_vm->_frameStop = 90;
+
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		if (!_vm->_wizard)
+			_vm->showPic(109);
+		else
+			_vm->showPic(319);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_92() {
+	_vm->processMapInput(9);
+}
+
+void Logic::GPL1_100() {
+	if (_nodeNum == 18 && _nodes[17] == 0) {
+		_statPlay = 170;
+		_vm->_loopFlag = true;
+		_nextNode = 100;
+	} else {
+		_nodeNum = 10;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (_nodes[10] == 1)
+			_nodes[10] = 9;
+
+		if (_nodes[10] != 9) {
+			_vm->_sound = false;
+			_nodes[10] = 1;
+		} else if (_vm->_wizard)
+			_vm->_sound = true;
+
+		_vm->playMovie(20);
+		_vm->playSound(41);
+		_currMap = 10;
+		_statPlay = 101;
+	}
+}
+
+void Logic::GPL1_101() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 102;
+		_vm->_zoom = 2;
+		_vm->processMap(10, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_102() {
+	_vm->processMapInput(10);
+}
+
+void Logic::GPL1_110() {
+	_nodeNum = 11;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[22] == 0)
+		_vm->_sound = false;
+	else
+		_vm->_sound = true;
+	_vm->playMovie(21);
+	_vm->playSound(42);
+	_currMap = 10;
+	_statPlay = 111;
+}
+
+void Logic::GPL1_111() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 112;
+		_vm->_zoom = 1;
+		_vm->processMap(11, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->playMovie(21);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_112() {
+	_vm->processMapInput(11);
+}
+
+void Logic::GPL1_120() {
+	_nodeNum = 12;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[12] == 0) {
+		_vm->playMovie(22);
+		_currMap = 14;
+	} else {
+		_vm->playMovie(25);
+		_currMap = 15;
+	}
+	_eye = false;
+	_vm->playSound(3);
+	_statPlay = 121;
+}
+
+void Logic::GPL1_121() {
+	switch (_vm->_userInput) {
+	case 0x445:
+		_statPlay = 150;
+		_vm->_loopFlag = true;
+		_eye = true;
+		_vm->_userInput = 0;
+		break;
+	case 0x446:
+		_statPlay = 80;
+		_vm->_loopFlag = true;
+		_eye = true;
+		_vm->_userInput = 0;
+		break;
+	case 0x437:
+		if (_nodes[12] == 9) {
+			_vm->displayIcon(145);
 			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			if (_vm->_pMovie > 206)
-				_vm->saveAS();
+		} else
+			GPLogic1_SubSP121();
+		break;
+	case 0x43E:
+		if (_vm->_pMovie == 023)
+			GPLogic1_SubSP121();
+		else {
 			_vm->_sound = _vm->_lastSound;
 			_vm->playMovie(_vm->_pMovie);
-			if (_vm->_pMovie > 206)
-				_vm->restoreAS();
-			break;
-		case 0x444:
-			_vm->saveAS();
-			_help = false;
-			_eye = false;
-			_pouch = false;
-			_replay = false;
-			_vm->fShowPic(105);
-			_currMap = 86;
-			break;
-		case 0x445:
-			if (_nodes[16] || !_vm->_wizard) {
-				_statPlay = 120;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x446:
-			_statPlay = 80;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x450:
-			_vm->saveAS();
-			_vm->fShowPic(123);
-			_vm->_bTimer = 76;
-			_vm->readMouse();
+			_vm->playSound(3);
+		}
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
 
-			while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-				_vm->readMouse();
-			}
+void Logic::GPL1_130() {
+	_nodeNum = 13;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->playMovie(4);
+	_statPlay = 991;
+	_vm->_loopFlag = true;
+}
 
-			_vm->fadeToBlack1();
-			_vm->drawRect(4, 17, 228, 161, 0);
-			_vm->restoreAS();
-			break;	
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
+void Logic::GPL1_140() {
+	_nodeNum = 14;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (wound()) {
+		_vm->playMovie(26);
+		_vm->playSound(35);
+		_currMap = 10;
+		_statPlay = 141;
+	} else {
+		dsAll();
+		_vm->playMovie(27);
+		_statPlay = 991;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
+	}
+}
+
+void Logic::GPL1_141() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 142;
+		_vm->_zoom = 2;
+		_vm->processMap(14, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_142() {
+	_vm->processMapInput(14);
+}
+
+void Logic::GPL1_150() {
+	_nodeNum = 15;
+	_vm->drawLocation();
+	_vm->playMovie(28);
+	_vm->playSound(3);
+	_currMap = 16;
+	_statPlay = 151;
+	_eye = false;
+}
+
+void Logic::GPL1_151() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		_vm->_aTimer = 0;
+		break;
+	case 0x445:
+		_statPlay = 80;
+		enAll();
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_160() {
+	_nodeNum = 16;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_vm->playMovie(29);
+	_vm->playSound(3);
+	_currMap = 85;
+	_statPlay = 161;
+}
+
+void Logic::GPL1_161() {
+	switch(_vm->_userInput) {
+	case 0x198: {
+		_vm->fadeToBlack1();
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_replay = true;
+		int oldPMovie = _vm->_pMovie;
+		_vm->playMovie(208);
+		_vm->_pMovie = oldPMovie;
+		_vm->_asMode = false;
+		_vm->restoreAS();
+		_help = true;
+		_eye = true;
+		_pouch = true;
+		_currMap = 85;
+				}
+				break;
+	case 0x199: {
+		_vm->fadeToBlack1();
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_replay = true;
+		int oldPMovie = _vm->_pMovie;
+		_vm->playMovie(207);
+		_vm->_pMovie = oldPMovie;
+		_vm->_asMode = false;
+		_vm->restoreAS();
+		_help = true;
+		_eye = true;
+		_pouch = true;
+		_currMap = 85;
+				}
+				break;
+	case 0x19A:
+		_vm->fShowPic(110);
+		_vm->_bTimer = 190;
+		_vm->readMouse();
+		while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+			_vm->readMouse();
 		}
+		_vm->fShowPic(105);
+		break;
+	case 0x42E:
+		_nodes[15] = 1;
+		_nodes[16] = 1;
+		_statPlay = 120;
+		_vm->_loopFlag = true;
 		break;
-	case 162:
-			_vm->processMapInput(16);
+	case 0x43A:
+		_statPlay = 162;
+		_vm->_zoom = 2;
+		_vm->processMap(16, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 170:
-		if (_nodes[17] == 9) {
-			_statPlay = _nextNode;
+	case 0x43E:
+		if (_vm->_pMovie > 206)
+			_vm->saveAS();
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		if (_vm->_pMovie > 206)
+			_vm->restoreAS();
+		break;
+	case 0x444:
+		_vm->saveAS();
+		_help = false;
+		_eye = false;
+		_pouch = false;
+		_replay = false;
+		_vm->fShowPic(105);
+		_currMap = 86;
+		break;
+	case 0x445:
+		if (_nodes[16] || !_vm->_wizard) {
+			_statPlay = 120;
 			_vm->_loopFlag = true;
-		} else {
-			_nodeNum = 17;
-			_vm->drawLocation();
-			dsAll();
-			_vm->playMovie(30);
-			_currMap = 10;
-			_statPlay = 171;
-			_vm->setATimer();
-			_vm->_userInput = 0;
 		}
 		break;
-	case 171:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			enAll();
-			if (wound()) {
-				_vm->_aTimer = 0;
-				_replay = false;
-				_vm->playMovie(31);
-				_statPlay = _nextNode;
-				_vm->_loopFlag = true;
-			} else {
-				dsAll();
-				_vm->playMovie(32);
-				_statPlay = 991;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x42C:
+	case 0x446:
+		_statPlay = 80;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
+		break;
+	case 0x450:
+		_vm->saveAS();
+		_vm->fShowPic(123);
+		_vm->_bTimer = 76;
+		_vm->readMouse();
+
+		while(_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+			_vm->readMouse();
+		}
+
+		_vm->fadeToBlack1();
+		_vm->drawRect(4, 17, 228, 161, 0);
+		_vm->restoreAS();
+		break;	
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_162() {
+	_vm->processMapInput(16);
+}
+
+void Logic::GPL1_170() {
+	if (_nodes[17] == 9) {
+		_statPlay = _nextNode;
+		_vm->_loopFlag = true;
+	} else {
+		_nodeNum = 17;
+		_vm->drawLocation();
+		dsAll();
+		_vm->playMovie(30);
+		_currMap = 10;
+		_statPlay = 171;
+		_vm->setATimer();
+		_vm->_userInput = 0;
+	}
+}
+
+void Logic::GPL1_171() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		enAll();
+		if (wound()) {
 			_vm->_aTimer = 0;
 			_replay = false;
-			enAll();
-			_vm->playMovie(34);
-			_vm->_userInput = 0;
-			_nodes[17] = 9;
+			_vm->playMovie(31);
 			_statPlay = _nextNode;
 			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
-		break;
-	case 172:
-		if (_vm->_userInput == 0x2F1) {
-			_statPlay = 171;
-			_vm->_loopFlag= true;
-			switchAS();
-		} else
-			_vm->processMapInput(_nodeNum);
-		break;
-	case 180:
-		if ((_nodeNum != 9 && _nodeNum != 10) || (_nodes[17] != 0)) {
-			_nodeNum = 18;
-			_vm->drawLocation();
-			_vm->_userInput = 0;
-			if (_nodes[18] == 0 || _nodes[18] == 1) {
-				_nodes[18] = 0;
-				_vm->playMovie(33);
-				_currMap = 10;
-			}
-			if (_nodes[18] == 9) {
-				_vm->playMovie(37);
-				_currMap = 19;
-				_vm->_tsIconOnly = true;
-			}
-			_vm->playSound(16);
-			_statPlay = 181;
 		} else {
-			_statPlay = 170;
+			dsAll();
+			_vm->playMovie(32);
+			_statPlay = 991;
 			_vm->_loopFlag = true;
-			_nextNode = 180;
 		}
 		break;
-	case 181:
-		switch(_vm->_userInput) {
-		case 0x407:
-			_statPlay = 80;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x428:
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			inventoryDel(0);
-			_vm->_userInput = 0;
-			break;
-		case 0x429:
-			if (!_nodes[18]) {
-				inventoryDel(1);
-				_nodes[18] = true;
-			}
-			_vm->playMovie(35);
-			_vm->_userInput = 0;
-			break;
-		case 0x42A:
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			inventoryDel(2);
-			_vm->_userInput = 0;
-			break;
-		case 0x42C:
-			_vm->saveAS();
-			_vm->playMovie(34);
-			_vm->restoreAS();
-			break;
-		case 0x42F:
-			if (_nodes[18] == 1) {
-				_vm->playMovie(36);
-				inventoryDel(7);
-				_nodes[18] = 9;
-				_currMap = 19;
-				_vm->_tsIconOnly = true;
-			} else {
-				_vm->_frameStop = 27;
-				_fstFwd = false;
-				_vm->playMovie(36);
-				_fstFwd = true;
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x43A:
-			_statPlay = 182;
-			_vm->_zoom = 2;
-			if (_nodes[18] == 9)
-				_vm->processMap(80, _vm->_zoom);
-			else
-				_vm->processMap(18, _vm->_zoom);
-
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			if (_vm->_pMovie == 36 && _nodes[18] != 9) {
-				_vm->_frameStop = 27;
-				_fstFwd = false;
-				_vm->playMovie(36);
-				_fstFwd = true;
-			} else
-				_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x42C:
+		_vm->_aTimer = 0;
+		_replay = false;
+		enAll();
+		_vm->playMovie(34);
+		_vm->_userInput = 0;
+		_nodes[17] = 9;
+		_statPlay = _nextNode;
+		_vm->_loopFlag = true;
 		break;
-	case 182:
-		_vm->processMapInput(18);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 190:
-		_nodeNum = 19;
+	}
+}
+
+void Logic::GPL1_172() {
+	if (_vm->_userInput == 0x2F1) {
+		_statPlay = 171;
+		_vm->_loopFlag = true;
+		switchAS();
+	} else
+		_vm->processMapInput(_nodeNum);
+}
+
+void Logic::GPL1_180() {
+	if ((_nodeNum != 9 && _nodeNum != 10) || (_nodes[17] != 0)) {
+		_nodeNum = 18;
 		_vm->drawLocation();
 		_vm->_userInput = 0;
-		dsAll();
-		_vm->playMovie(38);
-		_statPlay = 991;
+		if (_nodes[18] == 0 || _nodes[18] == 1) {
+			_nodes[18] = 0;
+			_vm->playMovie(33);
+			_currMap = 10;
+		}
+		if (_nodes[18] == 9) {
+			_vm->playMovie(37);
+			_currMap = 19;
+			_vm->_tsIconOnly = true;
+		}
+		_vm->playSound(16);
+		_statPlay = 181;
+	} else {
+		_statPlay = 170;
 		_vm->_loopFlag = true;
+		_nextNode = 180;
+	}
+}
+
+void Logic::GPL1_181() {
+	switch(_vm->_userInput) {
+	case 0x407:
+		_statPlay = 80;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
 		break;
-	case 200:
-		_nodeNum = 20;
-		_vm->drawLocation();
+	case 0x428:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(0);
 		_vm->_userInput = 0;
-		if (!_nodes[20]) {
-			_vm->playMovie(39);
-			increaseHealth();
+		break;
+	case 0x429:
+		if (!_nodes[18]) {
+			inventoryDel(1);
+			_nodes[18] = true;
+		}
+		_vm->playMovie(35);
+		_vm->_userInput = 0;
+		break;
+	case 0x42A:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(2);
+		_vm->_userInput = 0;
+		break;
+	case 0x42C:
+		_vm->saveAS();
+		_vm->playMovie(34);
+		_vm->restoreAS();
+		break;
+	case 0x42F:
+		if (_nodes[18] == 1) {
+			_vm->playMovie(36);
+			inventoryDel(7);
+			_nodes[18] = 9;
+			_currMap = 19;
+			_vm->_tsIconOnly = true;
 		} else {
-			_vm->playMovie(40);
-			_tideCntl = true;
-			_vm->drawPic(178);
+			_vm->_frameStop = 27;
+			_fstFwd = false;
+			_vm->playMovie(36);
+			_fstFwd = true;
 		}
-		_vm->playSound(42);
-		_currMap = 10;
-		_statPlay = 201;
-		break;
-	case 201:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 202;
-			_vm->_zoom = 0;
-			_vm->processMap(20, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
+		_vm->_userInput = 0;
+		break;
+	case 0x43A:
+		_statPlay = 182;
+		_vm->_zoom = 2;
+		if (_nodes[18] == 9)
+			_vm->processMap(80, _vm->_zoom);
+		else
+			_vm->processMap(18, _vm->_zoom);
+
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		if (_vm->_pMovie == 36 && _nodes[18] != 9) {
+			_vm->_frameStop = 27;
+			_fstFwd = false;
+			_vm->playMovie(36);
+			_fstFwd = true;
+		} else
 			_vm->playMovie(_vm->_pMovie);
-			break;
-		}
 		break;
-	case 202:
-		_vm->processMapInput(20);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 210:
-		_nodeNum = 21;
-		_vm->drawLocation();
+	}
+}
+
+void Logic::GPL1_182() {
+	_vm->processMapInput(18);
+}
+
+void Logic::GPL1_190() {
+	_nodeNum = 19;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->playMovie(38);
+	_statPlay = 991;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL1_200() {
+	_nodeNum = 20;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (!_nodes[20]) {
+		_vm->playMovie(39);
+		increaseHealth();
+	} else {
+		_vm->playMovie(40);
+		_tideCntl = true;
+		_vm->drawPic(178);
+	}
+	_vm->playSound(42);
+	_currMap = 10;
+	_statPlay = 201;
+}
+
+void Logic::GPL1_201() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 202;
+		_vm->_zoom = 0;
+		_vm->processMap(20, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (!_vm->_wizard)
-			_nodes[21] = 9;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_202() {
+	_vm->processMapInput(20);
+}
+
+void Logic::GPL1_210() {
+	_nodeNum = 21;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (!_vm->_wizard)
+		_nodes[21] = 9;
 
+	if (_nodes[21] == 9) {
+		_nodes[21] = 9;
+		_vm->playMovie(209);
+		_vm->playSound(38);
+		_currMap = 81;
+	} else {
+		dsAll();
+		_vm->playMovie(45);
+		_nodes[21] = 0;
+		_currMap = 10;
+		_vm->setATimer();
+	}
+	_statPlay = 211;
+}
+
+void Logic::GPL1_211() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		dsAll();
+		_vm->playMovie(46);
+		_statPlay = 991;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+		inventoryDel(0);
 		if (_nodes[21] == 9) {
-			_nodes[21] = 9;
-			_vm->playMovie(209);
-			_vm->playSound(38);
-			_currMap = 81;
+			_vm->saveAS();
+			_vm->playMovie(65);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
 		} else {
-			dsAll();
-			_vm->playMovie(45);
-			_nodes[21] = 0;
-			_currMap = 10;
-			_vm->setATimer();
-		}
-		_statPlay = 211;
-		break;
-	case 211:
-		switch(_vm->_userInput) {
-		case 0x2F1:
+			_vm->playMovie(178);
 			dsAll();
 			_vm->playMovie(46);
 			_statPlay = 991;
 			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-			inventoryDel(0);
-			if (_nodes[21] == 9) {
-				_vm->saveAS();
-				_vm->playMovie(65);
-				_vm->restoreAS();
-				_vm->_userInput = 0;
-			} else {
-				_vm->playMovie(178);
-				dsAll();
-				_vm->playMovie(46);
-				_statPlay = 991;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x42A:
-			if (!_nodes[21]) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(48);
-				inventoryDel(2);
-				_nodes[21] = 1;
-				_vm->_tsIconOnly = true;
-				_vm->playSound(38);
-				_vm->_userInput = 0;
-			}
-			break;
-		case 0x42D:
-			if (!_nodes[21]) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(47);
-				_vm->playSound(38);
-				inventoryDel(5);
-				_nodes[21] = 9;
-				_vm->_userInput = 0;
-				_currMap = 81;
-				_vm->_tsIconOnly = true;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 212;
-			_vm->_zoom = 2;
-			_vm->processMap(21, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			if (_vm->_pMovie == 65) {
-				_vm->saveAS();
-				_vm->playMovie(65);
-				_vm->restoreAS();
-				_vm->_userInput = 0;
-			} else {
-				_vm->_sound = _vm->_lastSound;
-				_vm->playMovie(_vm->_pMovie);
-			}
-			break;
-		case 0x441:
-			_statPlay = 220;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x442:
-			if (_vm->_tsIconOnly) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(49);
-				_vm->_tsIconOnly = false;
-				_vm->playSound(38);
-				_vm->_userInput = 0;
-			}
-			break;
-		case 0x448:
-			_statPlay = 140;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 212:
-		if (_vm->_userInput == 0x2F1) {
-			_vm->_userInput = 0;
+	case 0x42A:
+		if (!_nodes[21]) {
 			_vm->_aTimer = 0;
-			_statPlay = 211;
-			_vm->_loopFlag = true;
-			switchAS();
+			enAll();
+			_vm->playMovie(48);
+			inventoryDel(2);
+			_nodes[21] = 1;
+			_vm->_tsIconOnly = true;
+			_vm->playSound(38);
+			_vm->_userInput = 0;
 		}
-		_vm->processMapInput(21);
 		break;
-	case 220:
-		_nodeNum = 22;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (!_nodes[22]) {
-			_vm->playMovie(41);
-			_currMap = 82;
-		} else {
+	case 0x42D:
+		if (!_nodes[21]) {
+			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(47);
+			_vm->playSound(38);
+			inventoryDel(5);
+			_nodes[21] = 9;
+			_vm->_userInput = 0;
+			_currMap = 81;
 			_vm->_tsIconOnly = true;
-			_vm->playMovie(44);
-			_currMap = 10;
 		}
-		_vm->playSound(38);
-		_statPlay = 221;
 		break;
-	case 221:
-		switch(_vm->_userInput) {
-		case 0x428:
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			inventoryDel(0);
-			_vm->_userInput = 0;
-			break;
-		case 0x429:
+	case 0x43A:
+		_statPlay = 212;
+		_vm->_zoom = 2;
+		_vm->processMap(21, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		if (_vm->_pMovie == 65) {
 			_vm->saveAS();
-			_vm->playMovie(178);
+			_vm->playMovie(65);
 			_vm->restoreAS();
-			inventoryDel(1);
-			_vm->_userInput = 0;
-			break;
-		case 0x42A:
-			_vm->playMovie(42);
-			_vm->playSound(30);
-			if (!_nodes[22]) {
-				inventoryDel(2);
-				inventoryAdd(4);
-				_vm->_tsIconOnly = true;
-			}
-			_vm->_userInput = 0;
-			_currMap = 10;
-			break;
-		case 0x42C:
-			if (!_nodes[22]) {
-				dsAll();
-				_vm->playMovie(43);
-				_vm->playSound(34);
-				_statPlay = 991;
-				_vm->_loopFlag = true;
-			} else {
-				_vm->playMovie(42);
-				_vm->playSound(30);
-			}
-			break;
-		case 0x43A:
-			_statPlay = 222;
-			_vm->_zoom = 2;
-			_vm->processMap(22, _vm->_zoom);
 			_vm->_userInput = 0;
-			break;
-		case 0x43E:
+		} else {
 			_vm->_sound = _vm->_lastSound;
 			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 222:
-		_vm->processMapInput(22);
+	case 0x441:
+		_statPlay = 220;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
 		break;
-	case 230:
-		_nodeNum = 23;
-		_vm->drawLocation();
+	case 0x442:
+		if (_vm->_tsIconOnly) {
+			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(49);
+			_vm->_tsIconOnly = false;
+			_vm->playSound(38);
+			_vm->_userInput = 0;
+		}
+		break;
+	case 0x448:
+		_statPlay = 140;
+		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
-		dsAll();
-		_vm->playMovie(50);
-		_statPlay = 991;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_212() {
+	if (_vm->_userInput == 0x2F1) {
+		_vm->_userInput = 0;
+		_vm->_aTimer = 0;
+		_statPlay = 211;
 		_vm->_loopFlag = true;
+		switchAS();
+	}
+	_vm->processMapInput(21);
+}
+
+void Logic::GPL1_220() {
+	_nodeNum = 22;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (!_nodes[22]) {
+		_vm->playMovie(41);
+		_currMap = 82;
+	} else {
+		_vm->_tsIconOnly = true;
+		_vm->playMovie(44);
+		_currMap = 10;
+	}
+	_vm->playSound(38);
+	_statPlay = 221;
+}
+
+void Logic::GPL1_221() {
+	switch(_vm->_userInput) {
+	case 0x428:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(0);
+		_vm->_userInput = 0;
 		break;
-	case 240:
-		_nodeNum = 24;
-		_vm->drawLocation();
+	case 0x429:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(1);
+		_vm->_userInput = 0;
+		break;
+	case 0x42A:
+		_vm->playMovie(42);
+		_vm->playSound(30);
+		if (!_nodes[22]) {
+			inventoryDel(2);
+			inventoryAdd(4);
+			_vm->_tsIconOnly = true;
+		}
 		_vm->_userInput = 0;
-		if (!_nodes[24]) {
-			_vm->playMovie(51);
-			_currMap = 83;
+		_currMap = 10;
+		break;
+	case 0x42C:
+		if (!_nodes[22]) {
+			dsAll();
+			_vm->playMovie(43);
+			_vm->playSound(34);
+			_statPlay = 991;
+			_vm->_loopFlag = true;
 		} else {
-			_vm->playMovie(53);
-			_vm->showPic(119);
-			_currMap = 84;
+			_vm->playMovie(42);
+			_vm->playSound(30);
+		}
+		break;
+	case 0x43A:
+		_statPlay = 222;
+		_vm->_zoom = 2;
+		_vm->processMap(22, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL1_222() {
+	_vm->processMapInput(22);
+}
+
+void Logic::GPL1_230() {
+	_nodeNum = 23;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->playMovie(50);
+	_statPlay = 991;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL1_240() {
+	_nodeNum = 24;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (!_nodes[24]) {
+		_vm->playMovie(51);
+		_currMap = 83;
+	} else {
+		_vm->playMovie(53);
+		_vm->showPic(119);
+		_currMap = 84;
+		_vm->_tsIconOnly = true;
+	}
+	_vm->playSound(4);
+	_statPlay = 241;
+}
+
+void Logic::GPL1_241() {
+	switch(_vm->_userInput) {
+	case 0x428:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(0);
+		break;
+	case 0x429:
+		if (_nodes[24] != 9) {
 			_vm->_tsIconOnly = true;
+			_vm->playMovie(66);
+			inventoryDel(1);
+			_currMap = 84;
+			_nodes[24] = 9;
 		}
-		_vm->playSound(4);
-		_statPlay = 241;
 		break;
-	case 241:
-		switch(_vm->_userInput) {
-		case 0x428:
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			inventoryDel(0);
-			break;
-		case 0x429:
-			if (_nodes[24] != 9) {
-				_vm->_tsIconOnly = true;
-				_vm->playMovie(66);
-				inventoryDel(1);
-				_currMap = 84;
-				_nodes[24] = 9;
-			}
-			break;
-		case 0x42A:
+	case 0x42A:
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		inventoryDel(2);
+		break;
+	case 0x42D:
+		if (_inventory[5] >= 1)
+			_vm->displayIcon(135);
+		else {
 			_vm->saveAS();
-			_vm->playMovie(178);
+			_vm->playMovie(52);
+			_vm->playSound(30);
 			_vm->restoreAS();
-			inventoryDel(2);
-			break;
-		case 0x42D:
-			if (_inventory[5] >= 1)
-				_vm->displayIcon(135);
-			else {
-				_vm->saveAS();
-				_vm->playMovie(52);
-				_vm->playSound(30);
-				_vm->restoreAS();
-				inventoryAdd(5);
-				_vm->_userInput = 0;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 242;
-			_vm->_zoom = 2;
-			_vm->processMap(24, _vm->_zoom);
+			inventoryAdd(5);
 			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			if (_vm->_pMovie == 53) {
-				_vm->playMovie(53);
-				_vm->showPic(119);
-				_currMap = 84;
-			} else
-				_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x441:
-			_currMap = 10;
-			_statPlay = 300;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
+		break;
+	case 0x43A:
+		_statPlay = 242;
+		_vm->_zoom = 2;
+		_vm->processMap(24, _vm->_zoom);
 		_vm->_userInput = 0;
 		break;
-	case 242:
-		_vm->processMapInput(24);
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		if (_vm->_pMovie == 53) {
+			_vm->playMovie(53);
+			_vm->showPic(119);
+			_currMap = 84;
+		} else
+			_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x441:
+		_currMap = 10;
+		_statPlay = 300;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL1_242() {
+	_vm->processMapInput(24);
+}
+
+void Logic::GPLogic1() {
+	if (_opCodes.contains(_statPlay)) {
+		Opcode op = _opCodes[_statPlay];
+// TODO: Find the correct syntax
+//		this->*op();
+	} else
+		warning("Unknown opcode: %d", _statPlay);
 }
 
 void Logic::GPLogic1_SubSP10() {
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 9e621a87ce..ce048fe87e 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -74,6 +74,72 @@ void Logic::initPlay() {
 	_lastObs = false;
 	enAll();
 	_pouch = true;
+
+	initOpcodes();
+}
+
+#define OPCODE(i, x)   _opcodes_opcodesGob[i]._OPCODEGOB(OPCODEVER, x)
+void Logic::initOpcodes() {
+	_opCodes[10] = &Logic::GPL1_10;
+	_opCodes[11] = &Logic::GPL1_11;
+	_opCodes[20] = &Logic::GPL1_20;
+	_opCodes[30] = &Logic::GPL1_30;
+	_opCodes[31] = &Logic::GPL1_31;
+	_opCodes[32] = &Logic::GPL1_32;
+	_opCodes[40] = &Logic::GPL1_40;
+	_opCodes[41] = &Logic::GPL1_41;
+	_opCodes[42] = &Logic::GPL1_42;
+	_opCodes[50] = &Logic::GPL1_50;
+	_opCodes[51] = &Logic::GPL1_51;
+	_opCodes[52] = &Logic::GPL1_52;
+	_opCodes[53] = &Logic::GPL1_53;
+	_opCodes[60] = &Logic::GPL1_60;
+	_opCodes[70] = &Logic::GPL1_70;
+	_opCodes[71] = &Logic::GPL1_71;
+	_opCodes[72] = &Logic::GPL1_72;
+	_opCodes[80] = &Logic::GPL1_80;
+	_opCodes[81] = &Logic::GPL1_81;
+	_opCodes[82] = &Logic::GPL1_82;
+	_opCodes[90] = &Logic::GPL1_90;
+	_opCodes[91] = &Logic::GPL1_91;
+	_opCodes[92] = &Logic::GPL1_92;
+	_opCodes[100] = &Logic::GPL1_100;
+	_opCodes[101] = &Logic::GPL1_101;
+	_opCodes[102] = &Logic::GPL1_102;
+	_opCodes[110] = &Logic::GPL1_110;
+	_opCodes[111] = &Logic::GPL1_111;
+	_opCodes[112] = &Logic::GPL1_112;
+	_opCodes[120] = &Logic::GPL1_120;
+	_opCodes[121] = &Logic::GPL1_121;
+	_opCodes[130] = &Logic::GPL1_130;
+	_opCodes[140] = &Logic::GPL1_140;
+	_opCodes[141] = &Logic::GPL1_141;
+	_opCodes[142] = &Logic::GPL1_142;
+	_opCodes[150] = &Logic::GPL1_150;
+	_opCodes[151] = &Logic::GPL1_151;
+	_opCodes[160] = &Logic::GPL1_160;
+	_opCodes[161] = &Logic::GPL1_161;
+	_opCodes[162] = &Logic::GPL1_162;
+	_opCodes[170] = &Logic::GPL1_170;
+	_opCodes[171] = &Logic::GPL1_171;
+	_opCodes[172] = &Logic::GPL1_172;
+	_opCodes[180] = &Logic::GPL1_180;
+	_opCodes[181] = &Logic::GPL1_181;
+	_opCodes[182] = &Logic::GPL1_182;
+	_opCodes[190] = &Logic::GPL1_190;
+	_opCodes[200] = &Logic::GPL1_200;
+	_opCodes[201] = &Logic::GPL1_201;
+	_opCodes[202] = &Logic::GPL1_202;
+	_opCodes[210] = &Logic::GPL1_210;
+	_opCodes[211] = &Logic::GPL1_211;
+	_opCodes[212] = &Logic::GPL1_212;
+	_opCodes[220] = &Logic::GPL1_220;
+	_opCodes[221] = &Logic::GPL1_221;
+	_opCodes[222] = &Logic::GPL1_222;
+	_opCodes[230] = &Logic::GPL1_230;
+	_opCodes[240] = &Logic::GPL1_240;
+	_opCodes[241] = &Logic::GPL1_241;
+	_opCodes[242] = &Logic::GPL1_242;
 }
 
 void Logic::enAll() {
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index ca278a344b..f2cf58e7d4 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -30,9 +30,76 @@ namespace Kingdom {
 class KingdomGame;
 
 class Logic {
+
+typedef void (Kingdom::Logic::*Opcode)(void);
+
 private:
 	KingdomGame *_vm;
 
+	Common::HashMap<int, Opcode> _opCodes;
+	void initOpcodes();
+
+	void GPL1_10();
+	void GPL1_11();
+	void GPL1_20();
+	void GPL1_30();
+	void GPL1_31();
+	void GPL1_32();
+	void GPL1_40();
+	void GPL1_41();
+	void GPL1_42();
+	void GPL1_50();
+	void GPL1_51();
+	void GPL1_52();
+	void GPL1_53();
+	void GPL1_60();
+	void GPL1_70();
+	void GPL1_71();
+	void GPL1_72();
+	void GPL1_80();
+	void GPL1_81();
+	void GPL1_82();
+	void GPL1_90();
+	void GPL1_91();
+	void GPL1_92();
+	void GPL1_100();
+	void GPL1_101();
+	void GPL1_102();
+	void GPL1_110();
+	void GPL1_111();
+	void GPL1_112();
+	void GPL1_120();
+	void GPL1_121();
+	void GPL1_130();
+	void GPL1_140();
+	void GPL1_141();
+	void GPL1_142();
+	void GPL1_150();
+	void GPL1_151();
+	void GPL1_160();
+	void GPL1_161();
+	void GPL1_162();
+	void GPL1_170();
+	void GPL1_171();
+	void GPL1_172();
+	void GPL1_180();
+	void GPL1_181();
+	void GPL1_182();
+	void GPL1_190();
+	void GPL1_200();
+	void GPL1_201();
+	void GPL1_202();
+	void GPL1_210();
+	void GPL1_211();
+	void GPL1_212();
+	void GPL1_220();
+	void GPL1_221();
+	void GPL1_222();
+	void GPL1_230();
+	void GPL1_240();
+	void GPL1_241();
+	void GPL1_242();
+
 public:
 	int _statPlay;
 	int _oldStatPlay;


Commit: c867b3cad1a5cff07773bad4a36e6d2a250d3c0c
    https://github.com/scummvm/scummvm/commit/c867b3cad1a5cff07773bad4a36e6d2a250d3c0c
Author: Hein-Pieter van Braam (hp at tmm.cx)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Correct pointer-to-member call syntax

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 8345f32af1..289d8e77f0 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1437,8 +1437,7 @@ void Logic::GPL1_242() {
 void Logic::GPLogic1() {
 	if (_opCodes.contains(_statPlay)) {
 		Opcode op = _opCodes[_statPlay];
-// TODO: Find the correct syntax
-//		this->*op();
+		(this->*op)();
 	} else
 		warning("Unknown opcode: %d", _statPlay);
 }


Commit: b384bd27d2f1bd8d00b6ec4fd5c036b0b066a093
    https://github.com/scummvm/scummvm/commit/b384bd27d2f1bd8d00b6ec4fd5c036b0b066a093
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Refactor GPL2

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 289d8e77f0..217ffdee03 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1434,14 +1434,6 @@ void Logic::GPL1_242() {
 	_vm->processMapInput(24);
 }
 
-void Logic::GPLogic1() {
-	if (_opCodes.contains(_statPlay)) {
-		Opcode op = _opCodes[_statPlay];
-		(this->*op)();
-	} else
-		warning("Unknown opcode: %d", _statPlay);
-}
-
 void Logic::GPLogic1_SubSP10() {
 	_vm->playSound(0);
 	_vm->playSound(18);
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 8fb2f8f655..854c106793 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -25,1186 +25,1330 @@
 
 namespace Kingdom {
 
-void Logic::GPLogic2() {
-	switch(_statPlay) {
-	case 250: {
-		bool highNode = (_nodeNum > 25);
-		_nodeNum = 25;
+void Logic::GPL2_250() {
+	bool highNode = (_nodeNum > 25);
+	_nodeNum = 25;
 
-		_vm->drawLocation();
+	_vm->drawLocation();
+	dsAll();
+	if (_nodes[24] != 0 || highNode) {
+		_eye = true;
+		_vm->playMovie(72);
+		_vm->_aTimerFlag = false;
+		_vm->_aTimer = 114;
+		_vm->playSound(34);
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_statPlay = 251;
+	} else {
+		_vm->_frameStop = 67;
+		_vm->playMovie(72);
 		dsAll();
-		if (_nodes[24] != 0 || highNode) {
-			_eye = true;
-			_vm->playMovie(72);
-			_vm->_aTimerFlag = false;
-			_vm->_aTimer = 114;
-			_vm->playSound(34);
-			_vm->_userInput = 0;
-			_currMap = 10;
-			_statPlay = 251;
-		} else {
-			_vm->_frameStop = 67;
-			_vm->playMovie(72);
-			dsAll();
-			_vm->playMovie(73);
-			dsAll();
-			_statPlay = 991;
-			_vm->_loopFlag = true;
-		}
-		}
+		_vm->playMovie(73);
+		dsAll();
+		_statPlay = 991;
+		_vm->_loopFlag = true;
+	}
+}
+
+void Logic::GPL2_251() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_vm->_aTimer = 0;
+		_vm->playMovie(73);
+		dsAll();
+		_statPlay = 992;
+		_vm->_loopFlag = true;
 		break;
-	case 251:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_vm->_aTimer = 0;
-			_vm->playMovie(73);
-			dsAll();
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 252;
-			_vm->_zoom = 2;
-			_vm->processMap(30, _vm->_zoom);
-			_vm->setATimer();
-			_vm->_userInput = 0;
-			break;
-		}
+	case 0x43A:
+		_statPlay = 252;
+		_vm->_zoom = 2;
+		_vm->processMap(30, _vm->_zoom);
+		_vm->setATimer();
+		_vm->_userInput = 0;
 		break;
-	case 252:
-		_vm->processMapInput(30);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 260:
-		_nodeNum = 26;
-		_vm->drawLocation();
+	}
+}
+
+void Logic::GPL2_252() {
+	_vm->processMapInput(30);
+}
+
+void Logic::GPL2_260() {
+	_nodeNum = 26;
+	_vm->drawLocation();
+	dsAll();
+	_vm->playMovie(74);
+	_currMap = 10;
+	_vm->setATimer();
+	_statPlay = 261;
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL2_261() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_vm->_aTimer = 0;
 		dsAll();
-		_vm->playMovie(74);
-		_currMap = 10;
+		_vm->playMovie(75);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+		inventoryDel(0);
+		_vm->_aTimer = 0;
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		_vm->setATimer();
+		_vm->_userInput = 0;
+		break;
+	case 0x42A:
+		inventoryDel(2);
+		_vm->_aTimer = 0;
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
 		_vm->setATimer();
-		_statPlay = 261;
 		_vm->_userInput = 0;
 		break;
-	case 261:
-		switch(_vm->_userInput) {
-		case 0x2F1:
+	case 0x42C:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(76);
+		_nodes[26] = 1;
+		_vm->_userInput = 0;
+		_statPlay = 290;
+		_lastObs = true;
+		_lastObstacle = 29;
+		_vm->_loopFlag = true;
+		break;
+	case 0x42D:
+		if (wound()) {
 			_vm->_aTimer = 0;
+			enAll();
+			_vm->playMovie(77);
+			_vm->playSound(34);
+			inventoryDel(5);
+			_statPlay = 300;
+			_vm->_loopFlag = true;
+		} else {
 			dsAll();
-			_vm->playMovie(75);
+			_vm->playMovie(78);
 			_statPlay = 992;
 			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-			inventoryDel(0);
-			_vm->_aTimer = 0;
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			_vm->setATimer();
-			_vm->_userInput = 0;
-			break;
-		case 0x42A:
-			inventoryDel(2);
-			_vm->_aTimer = 0;
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			_vm->setATimer();
-			_vm->_userInput = 0;
-			break;
-		case 0x42C:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(76);
-			_nodes[26] = 1;
-			_vm->_userInput = 0;
-			_statPlay = 290;
-			_lastObs = true;
-			_lastObstacle = 29;
-			_vm->_loopFlag = true;
-			break;
-		case 0x42D:
-			if (wound()) {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(77);
-				_vm->playSound(34);
-				inventoryDel(5);
-				_statPlay = 300;
-				_vm->_loopFlag = true;
-			} else {
-				dsAll();
-				_vm->playMovie(78);
-				_statPlay = 992;
-				_vm->_loopFlag = true;
-			}
-			break;
 		}
 		break;
-	case 270:
-		_nodeNum = 27;
-		_vm->drawLocation();
-		if (_nodes[28] == 1)
-			_nodes[28] = 9;
-		if (_nodes[28] == 9 || _nodes[29] != 0) {
-			if (_vm->_wizard)
-				_vm->_sound = true;
-		} else {
-			_vm->_sound = false;
-			_nodes[28] = 1;
-		}
-		_vm->playMovie(80);
-		_vm->playSound(18);
-		_currMap = 10;
-		_statPlay = 271;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_270() {
+	_nodeNum = 27;
+	_vm->drawLocation();
+	if (_nodes[28] == 1)
+		_nodes[28] = 9;
+	if (_nodes[28] == 9 || _nodes[29] != 0) {
+		if (_vm->_wizard)
+			_vm->_sound = true;
+	} else {
+		_vm->_sound = false;
 		_nodes[28] = 1;
+	}
+	_vm->playMovie(80);
+	_vm->playSound(18);
+	_currMap = 10;
+	_statPlay = 271;
+	_nodes[28] = 1;
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL2_271() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 272;
+		_vm->_zoom = 2;
+		_vm->processMap(27, _vm->_zoom);
 		_vm->_userInput = 0;
 		break;
-	case 271:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 272;
-			_vm->_zoom = 2;
-			_vm->processMap(27, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 272:
-		_vm->processMapInput(27);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 280:
-		_nodeNum = 28;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		dsAll();
-		_vm->_fstFwd = false;
-		_vm->playMovie(81);
-		_currMap = 10;
-		_nodes[29] = _nodes[39] = 1;
-		_statPlay = _robberyNode * 10;
-		enAll();
+	}
+}
+
+void Logic::GPL2_272() {
+	_vm->processMapInput(27);
+}
+
+void Logic::GPL2_280() {
+	_nodeNum = 28;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->_fstFwd = false;
+	_vm->playMovie(81);
+	_currMap = 10;
+	_nodes[29] = _nodes[39] = 1;
+	_statPlay = _robberyNode * 10;
+	enAll();
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL2_290() {
+	_oldNode = _nodeNum;
+	if (!_vm->_wizard) {
+		_nodes[26] = 9;
+		_nodes[30] = 8;
+	}
+	if (_nodes[26] == 0) {
+		_statPlay = 260;
 		_vm->_loopFlag = true;
-		break;
-	case 290:
-		_oldNode = _nodeNum;
-		if (!_vm->_wizard) {
-			_nodes[26] = 9;
-			_nodes[30] = 8;
-		}
-		if (_nodes[26] == 0) {
-			_statPlay = 260;
-			_vm->_loopFlag = true;
-			_nextNode = 29;
-		} else {
-			if (_nodes[26] == 2)
-				_vm->playMovie(79);
-			_nodeNum = 29;
-			if (_nodes[26] <= 2 || !chkDesertObstacles()) {
-				_vm->drawLocation();
-				_nodes[26]++;
-				_vm->_userInput = 0;
-				switch (_nodes[30]) {
-				case 0:
-					_vm->_sound = false;
-					_vm->playMovie(82);
-					_currMap = 89;
-					_nodes[30] = 1;
-					break;
-				case 1:
-					_vm->_sound = true;
-					_vm->playMovie(82);
-					_currMap = 89;
-					_nodes[30] = 0;
-					break;
-				case 8:
-					_vm->_sound = false;
-					_vm->playMovie(85);
-					_currMap = 10;
-					_nodes[30] = 9;
-					_vm->_tsIconOnly = true;
-					break;
-				default:
-					_vm->_sound = true;
-					_vm->playMovie(85);
-					_currMap = 10;
-					_vm->_tsIconOnly = true;
-					break;
-				}
-				_vm->playSound(17);
-				_statPlay = 291;
-			}
-		}
-			
-		break;
-	case 291:
-		switch(_vm->_userInput) {
-		case 0x431:
-			_vm->_tsIconOnly = true;
-			_vm->playMovie(83);
-			_vm->playSound(30);
-			inventoryAdd(10);
-			_nodes[30] = 8;
+		_nextNode = 29;
+	} else {
+		if (_nodes[26] == 2)
+			_vm->playMovie(79);
+		_nodeNum = 29;
+		if (_nodes[26] <= 2 || !chkDesertObstacles()) {
+			_vm->drawLocation();
+			_nodes[26]++;
 			_vm->_userInput = 0;
-			_currMap = 10;
-			break;
-		case 0x432:
-			if (_nodes[30] >= 8)
-				_vm->displayIcon(140);
-			else {
-				dsAll();
-				_vm->playMovie(84);
-				_statPlay = 992;
-				_vm->_loopFlag = true;
+			switch (_nodes[30]) {
+			case 0:
+				_vm->_sound = false;
+				_vm->playMovie(82);
+				_currMap = 89;
+				_nodes[30] = 1;
+				break;
+			case 1:
+				_vm->_sound = true;
+				_vm->playMovie(82);
+				_currMap = 89;
+				_nodes[30] = 0;
+				break;
+			case 8:
+				_vm->_sound = false;
+				_vm->playMovie(85);
+				_currMap = 10;
+				_nodes[30] = 9;
+				_vm->_tsIconOnly = true;
+				break;
+			default:
+				_vm->_sound = true;
+				_vm->playMovie(85);
+				_currMap = 10;
+				_vm->_tsIconOnly = true;
+				break;
 			}
-			break;
-		case 0x43A:
-			_statPlay = 292;
-			_vm->_zoom = 2;
-			_vm->processMap(29, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
+			_vm->playSound(17);
+			_statPlay = 291;
 		}
+	}
+
+}
+
+void Logic::GPL2_291() {
+	switch(_vm->_userInput) {
+	case 0x431:
+		_vm->_tsIconOnly = true;
+		_vm->playMovie(83);
+		_vm->playSound(30);
+		inventoryAdd(10);
+		_nodes[30] = 8;
+		_vm->_userInput = 0;
+		_currMap = 10;
 		break;
-	case 292:
-		_vm->processMapInput(29);
-		break;
-	case 300:
-		if (_nodes[24] == 0) {
+	case 0x432:
+		if (_nodes[30] >= 8)
+			_vm->displayIcon(140);
+		else {
+			dsAll();
+			_vm->playMovie(84);
+			_statPlay = 992;
 			_vm->_loopFlag = true;
-			_statPlay = 250;
-		} else {
-			_nodeNum = 30;
-			if (!chkDesertObstacles()) {
-				_vm->drawLocation();
-				_vm->playMovie(86);
-				_vm->playSound(18);
-				_currMap = 10;
-				_statPlay = 301;
-			}
 		}
 		break;
-	case 301:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 302;
-			_vm->_zoom = 2;
-			_vm->processMap(30, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		} 
+	case 0x43A:
+		_statPlay = 292;
+		_vm->_zoom = 2;
+		_vm->processMap(29, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 302:
-		_vm->processMapInput(30);
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 310:
-		_oldNode = _nodeNum;
-		_nodeNum = 31;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_292() {
+	_vm->processMapInput(29);
+}
+
+void Logic::GPL2_300() {
+	if (_nodes[24] == 0) {
+		_vm->_loopFlag = true;
+		_statPlay = 250;
+	} else {
+		_nodeNum = 30;
 		if (!chkDesertObstacles()) {
 			_vm->drawLocation();
-			_vm->playMovie(67);
+			_vm->playMovie(86);
 			_vm->playSound(18);
-			_currMap = 90;
-			_statPlay = 311;
-			_nodes[32] = 1;
-			_vm->_aTimer = 0;
-			_vm->_userInput = 0;
+			_currMap = 10;
+			_statPlay = 301;
 		}
+	}
+}
+
+void Logic::GPL2_301() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 302;
+		_vm->_zoom = 2;
+		_vm->processMap(30, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 311:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 312;
-			_vm->_zoom = 2;
-			_vm->processMap(31, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x449:
-			_vm->_aTimer = 0;
-			dsAll();
-			_vm->playMovie(68);
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;			
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 312:
-		_vm->processMapInput(31);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 320:
-		_oldNode = _nodeNum;
-		_nodeNum = 32;
+	} 
+}
+
+void Logic::GPL2_302() {
+	_vm->processMapInput(30);
+}
+
+void Logic::GPL2_310() {
+	_oldNode = _nodeNum;
+	_nodeNum = 31;
+	if (!chkDesertObstacles()) {
+		_vm->drawLocation();
+		_vm->playMovie(67);
+		_vm->playSound(18);
+		_currMap = 90;
+		_statPlay = 311;
+		_nodes[32] = 1;
+		_vm->_aTimer = 0;
+		_vm->_userInput = 0;
+	}
+}
+
+void Logic::GPL2_311() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 312;
+		_vm->_zoom = 2;
+		_vm->processMap(31, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x449:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(68);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
+		break;			
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_312() {
+	_vm->processMapInput(31);
+}
+
+void Logic::GPL2_320() {
+	_oldNode = _nodeNum;
+	_nodeNum = 32;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	increaseHealth();
+	if (_nodes[33] != 9 && _vm->_wizard) {
+		_vm->_sound = false;
+		_nodes[33] = 9;
+	} else {
+		_vm->_sound = true;
+		_nodes[33] = 1;
+	}
+	_vm->playMovie(87);
+	_vm->playSound(18);
+	_currMap = 10;
+	_statPlay = 321;
+}
+
+void Logic::GPL2_321() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 322;
+		_vm->_zoom = 2;
+		_vm->processMap(32, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_322() {
+	_vm->processMapInput(32);
+}
+
+void Logic::GPL2_330() {
+	_oldNode = _nodeNum;
+	_nodeNum = 33;
+	if (!chkDesertObstacles()) {
 		_vm->drawLocation();
 		_vm->_userInput = 0;
-		increaseHealth();
-		if (_nodes[33] != 9 && _vm->_wizard) {
+		if (_nodes[32] == 0)
 			_vm->_sound = false;
-			_nodes[33] = 9;
-		} else {
+		else
 			_vm->_sound = true;
-			_nodes[33] = 1;
-		}
-		_vm->playMovie(87);
+		_vm->playMovie(88);
 		_vm->playSound(18);
 		_currMap = 10;
-		_statPlay = 321;
-		break;
-	case 321:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 322;
-			_vm->_zoom = 2;
-			_vm->processMap(32, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		}
+		_statPlay = 331;
+	}
+}
+
+void Logic::GPL2_331() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 332;
+		_vm->_zoom = 2;
+		_vm->processMap(33, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 322:
-		_vm->processMapInput(32);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 330:
+	}
+}
+
+void Logic::GPL2_332() {
+	_vm->processMapInput(33);
+}
+
+void Logic::GPL2_340() {
+	if (_nodes[36] == 0) {
+		_statPlay = 350;
+		_vm->_loopFlag = true;
+		_nextNode = 34;
+	} else {
 		_oldNode = _nodeNum;
-		_nodeNum = 33;
+		_nodeNum = 34;
 		if (!chkDesertObstacles()) {
 			_vm->drawLocation();
 			_vm->_userInput = 0;
-			if (_nodes[32] == 0)
-				_vm->_sound = false;
-			else
-				_vm->_sound = true;
-			_vm->playMovie(88);
-			_vm->playSound(18);
-			_currMap = 10;
-			_statPlay = 331;
+			if (_nodes[35] == 9 || _nodes[41] == 0 || !_vm->_wizard) {
+				_vm->playMovie(91);
+				_currMap = 92;
+			} else {
+				_vm->playMovie(89);
+				_vm->showPic(389);
+				_currMap = 91;
+			}
+			if (_nodes[35] == 9)
+				_vm->_tsIconOnly = true;
+			_vm->playSound(26);
+			_statPlay = 341;
 		}
-		break;
-	case 331:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 332;
-			_vm->_zoom = 2;
-			_vm->processMap(33, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
+	}
+}
+
+void Logic::GPL2_341() {
+	switch(_vm->_userInput) {
+	case 0x431:
+		if (_nodes[35] == 9)
+			_vm->displayIcon(139);
+		else {
+			_vm->playMovie(90);
+			inventoryAdd(9);
+			_nodes[35] = 9;
+			_currMap = 93;
 		}
 		break;
-	case 332:
-		_vm->processMapInput(33);
+	case 0x43A:
+		_statPlay = 342;
+		_vm->_zoom = 2;
+		_vm->processMap(34, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 340:
-		if (_nodes[36] == 0) {
-			_statPlay = 350;
-			_vm->_loopFlag = true;
-			_nextNode = 34;
-		} else {
-			_oldNode = _nodeNum;
-			_nodeNum = 34;
-			if (!chkDesertObstacles()) {
-				_vm->drawLocation();
-				_vm->_userInput = 0;
-				if (_nodes[35] == 9 || _nodes[41] == 0 || !_vm->_wizard) {
-					_vm->playMovie(91);
-					_currMap = 92;
-				} else {
-					_vm->playMovie(89);
-					_vm->showPic(389);
-					_currMap = 91;
-				}
-				if (_nodes[35] == 9)
-					_vm->_tsIconOnly = true;
-				_vm->playSound(26);
-				_statPlay = 341;
-			}
-		}
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		if (_vm->_pMovie == 89)
+			_vm->showPic(389);
 		break;
-	case 341:
-		switch(_vm->_userInput) {
-		case 0x431:
-			if (_nodes[35] == 9)
-				_vm->displayIcon(139);
-			else {
-				_vm->playMovie(90);
-				inventoryAdd(9);
-				_nodes[35] = 9;
-				_currMap = 93;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 342;
-			_vm->_zoom = 2;
-			_vm->processMap(34, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			if (_vm->_pMovie == 89)
-				_vm->showPic(389);
-			break;
-		case 0x445:
-			_statPlay = 410;
-			_vm->_userInput = 0;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			_statPlay = 400;
-			_vm->_userInput = 0;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		}
-		break;
-	case 342:
-		_vm->processMapInput(34);
+	case 0x445:
+		_statPlay = 410;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_vm->_loopFlag = true;
 		break;
-	case 350:
-		if (!_vm->_wizard)
-			_nodes[36] = 1;
-		if (_nodes[36] == 1) {
-			_statPlay = _nextNode * 10;
-			_vm->_loopFlag = true;
-		} else {
-			_nodeNum = 35;
-			_vm->drawLocation();
-			dsAll();
-			_vm->playMovie(92);
-			_currMap = 94;
-			_vm->setATimer();
-			_vm->_userInput = 0;
-			_statPlay = 351;
-		}
+	case 0x446:
+		_statPlay = 400;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_vm->_loopFlag = true;
 		break;
-	case 351:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-			inventoryDel(_vm->_userInput - 0x428);
-			_vm->_aTimer = 0;
-			_vm->playMovie(178);
-			_vm->_userInput = 0x2F1;
-			_vm->_loopFlag = true;
-		// No break on purpose
-		case 0x2F1:
-			_vm->_aTimer = 0;
-			dsAll();
-			_vm->playMovie(93);
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;
-		case 0x42A:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(179);
-			inventoryDel(2);
-			_nodes[36] = 1;
-			_vm->_userInput = 0;
-			_statPlay = _nextNode * 10;
-			_lastObs = true;
-			_lastObstacle = _nextNode;
-			_vm->_loopFlag = true;
-			break;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 360:
-		_nodeNum = 36;
+	}
+}
+
+void Logic::GPL2_342() {
+	_vm->processMapInput(34);
+}
+
+void Logic::GPL2_350() {
+	if (!_vm->_wizard)
+		_nodes[36] = 1;
+	if (_nodes[36] == 1) {
+		_statPlay = _nextNode * 10;
+		_vm->_loopFlag = true;
+	} else {
+		_nodeNum = 35;
 		_vm->drawLocation();
-		if (_nodes[37] == 0)
-			_vm->_sound = false;
-		else
-			_vm->_sound = true;
-		_vm->_frameStop = 185;
 		dsAll();
-		_vm->playMovie(94);
-		_currMap = 95;
+		_vm->playMovie(92);
+		_currMap = 94;
 		_vm->setATimer();
 		_vm->_userInput = 0;
-		_statPlay = 361;
+		_statPlay = 351;
+	}
+}
+
+void Logic::GPL2_351() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->_aTimer = 0;
+		_vm->playMovie(178);
+		_vm->_userInput = 0x2F1;
+		_vm->_loopFlag = true;
+		// No break on purpose
+	case 0x2F1:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(93);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
 		break;
-	case 361:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_vm->_aTimer = 0;
-			dsAll();
-			_vm->playMovie(95);
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(97);
-			inventoryDel(0);
-			_vm->playSound(5);
-			_nodes[37] = 1;
-			_vm->_userInput = 0;
-			_currMap = 10;
-			if (_nodes[43] == 0) {
-				_statPlay = 420;
-				_oldNode = _nodeNum;
-				_nodeNum = 42;
-				GPLogic2_SubSP361();
-			} else {
-				_vm->_tsIconOnly = true;
-			}
-			break;
-		case 0x42A:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(98);
-			inventoryDel(2);
-			_vm->playSound(5);
-			_nodes[37] = 1;
-			_vm->_userInput = 0;
-			_currMap = 10;
-			_vm->_tsIconOnly = true;
-			break;
-		case 0x42E:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(100);
-			inventoryDel(6);
-			_vm->playSound(5);
-			_nodes[37] = 1;
-			_vm->_userInput = 0;
-			_currMap = 10;
-			_vm->_tsIconOnly = true;
-			break;
-		case 0x431:
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(96);
-			_vm->playSound(5);
-			_nodes[37] = 9;
-			_vm->_userInput = 0;
-			_currMap = 10;
+	case 0x42A:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(179);
+		inventoryDel(2);
+		_nodes[36] = 1;
+		_vm->_userInput = 0;
+		_statPlay = _nextNode * 10;
+		_lastObs = true;
+		_lastObstacle = _nextNode;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_360() {
+	_nodeNum = 36;
+	_vm->drawLocation();
+	if (_nodes[37] == 0)
+		_vm->_sound = false;
+	else
+		_vm->_sound = true;
+	_vm->_frameStop = 185;
+	dsAll();
+	_vm->playMovie(94);
+	_currMap = 95;
+	_vm->setATimer();
+	_vm->_userInput = 0;
+	_statPlay = 361;
+}
+
+void Logic::GPL2_361() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(95);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(97);
+		inventoryDel(0);
+		_vm->playSound(5);
+		_nodes[37] = 1;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		if (_nodes[43] == 0) {
 			_statPlay = 420;
 			_oldNode = _nodeNum;
 			_nodeNum = 42;
 			GPLogic2_SubSP361();
-			break;
-		case 0x437:
-			_vm->_aTimer = 0;
-			dsAll();
-			_vm->playMovie(99);
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 362;
-			_vm->_zoom = 2;
-			_vm->processMap(36, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
+		} else {
+			_vm->_tsIconOnly = true;
 		}
 		break;
-	case 362:
-		_vm->processMapInput(36);
+	case 0x42A:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(98);
+		inventoryDel(2);
+		_vm->playSound(5);
+		_nodes[37] = 1;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_vm->_tsIconOnly = true;
+		break;
+	case 0x42E:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(100);
+		inventoryDel(6);
+		_vm->playSound(5);
+		_nodes[37] = 1;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_vm->_tsIconOnly = true;
+		break;
+	case 0x431:
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(96);
+		_vm->playSound(5);
+		_nodes[37] = 9;
+		_vm->_userInput = 0;
+		_currMap = 10;
+		_statPlay = 420;
+		_oldNode = _nodeNum;
+		_nodeNum = 42;
+		GPLogic2_SubSP361();
 		break;
-	case 370:
-		_nodeNum = 37;
+	case 0x437:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(99);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
+		break;
+	case 0x43A:
+		_statPlay = 362;
+		_vm->_zoom = 2;
+		_vm->processMap(36, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_362() {
+	_vm->processMapInput(36);
+}
+
+void Logic::GPL2_370() {
+	_nodeNum = 37;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_nodes[38] = 0;
+	_vm->playMovie(102);
+	_vm->playSound(20);
+	_currMap = 109;
+	_statPlay = 371;
+}
+
+void Logic::GPL2_371() {
+	switch(_vm->_userInput) {
+	case 0x413:
+		_statPlay = 440;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x43A:
+		_statPlay = 372;
+		_vm->_zoom = 2;
+		_vm->processMap(37, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_372() {
+	_vm->processMapInput(37);
+}
+
+void Logic::GPL2_380() {
+	_oldNode = _nodeNum;
+	_nodeNum = 38;
+	if (!chkDesertObstacles()) {
 		_vm->drawLocation();
 		_vm->_userInput = 0;
-		_nodes[38] = 0;
-		_vm->playMovie(102);
-		_vm->playSound(20);
-		_currMap = 109;
-		_statPlay = 371;
-		break;
-	case 371:
-		switch(_vm->_userInput) {
-		case 0x413:
-			_statPlay = 440;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 372;
-			_vm->_zoom = 2;
-			_vm->processMap(37, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
+		_vm->playMovie(159);
+		_currMap = 10;
+		_vm->playSound(7);
+		_nodes[39] = 1;
+		_statPlay = 381;
+	}
+}
+
+void Logic::GPL2_381() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		if (_vm->_wizard && _nodes[39] != 9) {
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
 		}
+		_vm->_userInput = 0;
 		break;
-	case 372:
-		_vm->processMapInput(37);
+	case 0x430:
+		if (_vm->_wizard && _nodes[39] != 9) {
+			dsAll();
+			_vm->playMovie(162);
+			_statPlay = 992;
+			_vm->_loopFlag = true;
+		}
 		break;
-	case 380:
-		_oldNode = _nodeNum;
-		_nodeNum =38;
-		if (!chkDesertObstacles()) {
-			_vm->drawLocation();
+	case 0x433:
+		if (_vm->_wizard && _nodes[39] != 9) {
+			_vm->playMovie(161);
+			inventoryDel(11);
+			_nodes[51] = 0;
 			_vm->_userInput = 0;
-			_vm->playMovie(159);
-			_currMap = 10;
-			_vm->playSound(7);
-			_nodes[39] = 1;
-			_statPlay = 381;
 		}
+		_vm->_userInput = 0;
 		break;
-	case 381:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			if (_vm->_wizard && _nodes[39] != 9) {
-				inventoryDel(_vm->_userInput - 0x428);
-				_vm->saveAS();
-				_vm->playMovie(178);
-				_vm->restoreAS();
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x430:
-			if (_vm->_wizard && _nodes[39] != 9) {
-				dsAll();
-				_vm->playMovie(162);
-				_statPlay = 992;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x433:
-			if (_vm->_wizard && _nodes[39] != 9) {
-				_vm->playMovie(161);
-				inventoryDel(11);
-				_nodes[51] = 0;
-				_vm->_userInput = 0;
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x435:
-			if (_vm->_wizard && _nodes[39] != 9) {
-				_vm->playMovie(160);
-				inventoryDel(13);
-				_nodes[39] = 9;
-				_nodes[59] = 0;
-				_vm->_userInput = 0;
-				_vm->_tsIconOnly = true;
-				_currMap = 108;
-			}
-			break;
-		case 0x437:
-			if (_vm->_wizard && _nodes[39] != 9) {
-				_vm->playMovie(163);
-				inventoryDel(15);
-				_nodes[12] = 0;
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x43A:
-			_statPlay = 382;
-			_vm->_zoom = 2;
-			_vm->processMap(38, _vm->_zoom);
+	case 0x435:
+		if (_vm->_wizard && _nodes[39] != 9) {
+			_vm->playMovie(160);
+			inventoryDel(13);
+			_nodes[39] = 9;
+			_nodes[59] = 0;
 			_vm->_userInput = 0;
+			_vm->_tsIconOnly = true;
+			_currMap = 108;
+		}
 		break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x456:
-			_statPlay = 370;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
+	case 0x437:
+		if (_vm->_wizard && _nodes[39] != 9) {
+			_vm->playMovie(163);
+			inventoryDel(15);
+			_nodes[12] = 0;
 		}
+		_vm->_userInput = 0;
 		break;
-	case 382:
-		if (_vm->_wizard && (_nodes[39] != 9) && (_vm->_userInput == 0x413))
-			_vm->_userInput = 0;
-
-		_vm->processMapInput(38);
+	case 0x43A:
+		_statPlay = 382;
+		_vm->_zoom = 2;
+		_vm->processMap(38, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 390:
-		_nodeNum = 39;
-		_vm->drawLocation();
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x456:
+		_statPlay = 370;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_382() {
+	if (_vm->_wizard && (_nodes[39] != 9) && (_vm->_userInput == 0x413))
+		_vm->_userInput = 0;
+
+	_vm->processMapInput(38);
+}
+
+void Logic::GPL2_390() {
+	_nodeNum = 39;
+	_vm->drawLocation();
+	_vm->_aTimer = 0;
+	dsAll();
+	_vm->playMovie(104);
+	_vm->playSound(34);
+	_statPlay = 992;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL2_400() {
+	_nodeNum = 40;
+	if (!_vm->_wizard)
+		_nodes[41] = 2;
+	if (_nodes[41]) {
+		if (_nodes[41] == 1)
+			_nodes[41] = 2;
+		else {
+			_nodes[41] = 1;
+			_vm->_sound = true;
+		}
+	} else {
+		dsAll();
+		_vm->playMovie(105);
+		_currMap = 10;
+		_vm->setATimer();
+	}
+
+	_vm->_userInput = 0;
+	_statPlay = 401;
+}
+
+void Logic::GPL2_401() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
 		_vm->_aTimer = 0;
 		dsAll();
-		_vm->playMovie(104);
-		_vm->playSound(34);
+		_vm->playMovie(106);
 		_statPlay = 992;
 		_vm->_loopFlag = true;
 		break;
-	case 400:
-		_nodeNum = 40;
-		if (!_vm->_wizard)
-			_nodes[41] = 2;
-		if (_nodes[41]) {
-			if (_nodes[41] == 1)
-				_nodes[41] = 2;
-			else {
-				_nodes[41] = 1;
-				_vm->_sound = true;
-			}
-		} else {
-			dsAll();
-			_vm->playMovie(105);
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		if (!_nodes[41]) {
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->_aTimer = 0;
+			_vm->playMovie(178);
+			_vm->_userInput = 753;
+			_vm->_loopFlag = true;
 			_currMap = 10;
-			_vm->setATimer();
 		}
-		
-		_vm->_userInput = 0;
-		_statPlay = 401;
 		break;
-	case 401:
-		switch(_vm->_userInput) {
-		case 0x2F1:
+	case 0x42C:
+		if (!_nodes[41]) {
 			_vm->_aTimer = 0;
 			dsAll();
-			_vm->playMovie(106);
+			_vm->playMovie(108);
+			_vm->_userInput = 0;
 			_statPlay = 992;
 			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			if (!_nodes[41]) {
-				inventoryDel(_vm->_userInput - 0x428);
-				_vm->_aTimer = 0;
-				_vm->playMovie(178);
-				_vm->_userInput = 753;
-				_vm->_loopFlag = true;
-				_currMap = 10;
-			}
-			break;
-		case 0x42C:
-			if (!_nodes[41]) {
-				_vm->_aTimer = 0;
-				dsAll();
-				_vm->playMovie(108);
-				_vm->_userInput = 0;
-				_statPlay = 992;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x42E:
-			if (!_nodes[41]) {
-				_vm->_aTimer = 0;
-				_vm->playMovie(109);
-				inventoryDel(6);
-				_nodes[43] = 0;
-				_vm->_userInput = 0;
-				_vm->_aTimer = 136;
-			}
-			break;
-		case 0x437:
-			if (!_nodes[41]) {
-				_vm->_aTimer = 0;
-				_help = true;
-				_replay = true;
-				_pouch = true;
-				_vm->_fstFwd = true;
-				_vm->playMovie(107);
-				_vm->playSound(26);
-				_nodes[41] = 1;
-				_vm->_userInput = 0;
-				_currMap = 96;
-				_vm->_tsIconOnly = true;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x43E:
+		}
+		break;
+	case 0x42E:
+		if (!_nodes[41]) {
 			_vm->_aTimer = 0;
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x441:
-			_statPlay = 460;
-			_currMap = 10;
+			_vm->playMovie(109);
+			inventoryDel(6);
+			_nodes[43] = 0;
 			_vm->_userInput = 0;
+			_vm->_aTimer = 136;
+		}
+		break;
+	case 0x437:
+		if (!_nodes[41]) {
+			_vm->_aTimer = 0;
+			_help = true;
+			_replay = true;
+			_pouch = true;
+			_vm->_fstFwd = true;
+			_vm->playMovie(107);
+			_vm->playSound(26);
+			_nodes[41] = 1;
+			_vm->_userInput = 0;
+			_currMap = 96;
+			_vm->_tsIconOnly = true;
 			_vm->_loopFlag = true;
-			break;
 		}
 		break;
-	case 402:
+	case 0x43E:
 		_vm->_aTimer = 0;
-		_vm->processMapInput(40);
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 410:
-		_nodeNum = 41;
-		_vm->drawLocation();
+	case 0x441:
+		_statPlay = 460;
+		_currMap = 10;
 		_vm->_userInput = 0;
-		if (_nodes[41])
-			_vm->_sound = true;
-
-		_eye = false;
-		_vm->playMovie(111);
-		_vm->playSound(26);
-		_currMap = 97;
-		_statPlay = 411;
-		break;
-	case 411:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			if (_vm->_pMovie == 120) {
-				_vm->saveAS();
-				_vm->_frameStop = 50;
-				_vm->playMovie(120);
-				_vm->_bTimer = 34;
-				while(_vm->_bTimer != 0) {
-					_vm->checkTimers();
-					_vm->refreshSound();
-					_vm->checkMainScreen();
-				}
-				_vm->restoreAS();
-			}
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_vm->_userInput = 0;
-			_vm->_loopFlag = true;
-			_currMap = 10;
-			_statPlay = 450;
-			break;
-		case 0x446:
-			_vm->_userInput = 0;
-			_vm->_loopFlag = true;
-			_currMap = 10;
-			_statPlay = 460;
-			break;
-		}
+		_vm->_loopFlag = true;
 		break;
-	case 420:
-		if (_nodes[37] == 9 || _nodes[29] == 1 || !_vm->_wizard) {
-			_oldNode = _nodeNum;
-			_nodeNum = 42;
-			if (!chkDesertObstacles()) {
-				_vm->drawLocation();
-				GPLogic2_SubSP361();
-			}
-		} else {
-			_statPlay = 360;
-			_vm->_loopFlag = true;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 421:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
+	}
+}
+
+void Logic::GPL2_402() {
+	_vm->_aTimer = 0;
+	_vm->processMapInput(40);
+}
+
+void Logic::GPL2_410() {
+	_nodeNum = 41;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[41])
+		_vm->_sound = true;
+
+	_eye = false;
+	_vm->playMovie(111);
+	_vm->playSound(26);
+	_currMap = 97;
+	_statPlay = 411;
+}
+
+void Logic::GPL2_411() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		if (_vm->_pMovie == 120) {
 			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			_vm->_userInput = 0;
-			break;
-		case 0x42E:
-			if (_nodes[43])
-				_vm->displayIcon(136);
-			else {
-				if (_nodes[35] == 9) {
-					_vm->_sound = false;
-				} else {
-					_vm->_sound = true;
-				}
-				_vm->playMovie(113);
-				inventoryAdd(6);
-				_nodes[43] = 9;
-				_currMap = 10;
+			_vm->_frameStop = 50;
+			_vm->playMovie(120);
+			_vm->_bTimer = 34;
+			while(_vm->_bTimer != 0) {
+				_vm->checkTimers();
+				_vm->refreshSound();
+				_vm->checkMainScreen();
 			}
-			_vm->_tsIconOnly = true;
-			break;
-		case 0x43A:
-			_statPlay = 422;
-			_vm->_zoom = 2;
-			_vm->processMap(42, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		
+			_vm->restoreAS();
 		}
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 422:
-		_vm->processMapInput(42);
+	case 0x445:
+		_vm->_userInput = 0;
+		_vm->_loopFlag = true;
+		_currMap = 10;
+		_statPlay = 450;
 		break;
-	case 430:
-		_nodeNum = 43;
-		_vm->drawLocation();
-		_eye = false;
+	case 0x446:
 		_vm->_userInput = 0;
-		if (_nodes[44] == 9) {
-			_vm->_tsIconOnly = true;
-			_vm->playMovie(118);
-			_currMap = 80;
-		} else if (_inventory[12] <= 0) {
-			_vm->playMovie(115);
-			_vm->showPic(415);
-			_currMap = 78;
-			if (!_vm->_skylarTimer)
-				_vm->_skylarTimer = 5400;
-		} else {
-			_vm->_skylarTimer = 0;
-			_vm->playMovie(116);
-			_vm->playSound(25);
-			inventoryDel(12);
-			inventoryAdd(16);
-			_nodes[44] = 9;
-			_currMap = 79;
-			_vm->_tsIconOnly = true;
+		_vm->_loopFlag = true;
+		_currMap = 10;
+		_statPlay = 460;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_420() {
+	if (_nodes[37] == 9 || _nodes[29] == 1 || !_vm->_wizard) {
+		_oldNode = _nodeNum;
+		_nodeNum = 42;
+		if (!chkDesertObstacles()) {
+			_vm->drawLocation();
+			GPLogic2_SubSP361();
 		}
-		_statPlay = 431;
-		_vm->playSound(20);
-		_eye = false;
-		break;
-	case 431:
-		switch(_vm->_userInput) {
-			case 0x40A:
-				_vm->playMovie(10);
-				_statPlay = 200;
-				if (_nodes[44] != 9)
-					_nodes[20] = 1;
-				_currMap = 10;
-				_vm->_loopFlag = true;
-				break;
-			case 0x414:
-				_vm->playMovie(10);
-				_statPlay = 390;
-				_currMap = 10;
-				_vm->_loopFlag = true;
-				break;
-			case 0x41D:
-				_vm->playMovie(10);
-				_statPlay = 500;
-				_currMap = 10;
-				_vm->_loopFlag = true;
-				break;
-			case 0x422:
-				_vm->playMovie(10);
-				_statPlay = 380;
-				_currMap = 10;
-				_vm->_loopFlag = true;
-				break;
-			case 0x428:
-			case 0x429:
-			case 0x42A:
-				if (_nodes[44] != 9) {
-					inventoryDel(_vm->_userInput - 0x428);
-					_vm->saveAS();
-					_vm->playMovie(178);
-					_vm->restoreAS();
-				}
-				break;
-			case 0x438:
-				if (_nodes[44] == 9) {
-					_vm->displayIcon(146);
-				} else {
-					dsAll();
-					_vm->playMovie(117);
-					_statPlay = 992;
-					_vm->_loopFlag = true;
-				}
-				break;
-			case 0x43E:
-				break;
+	} else {
+		_statPlay = 360;
+		_vm->_loopFlag = true;
+	}
+}
+
+void Logic::GPL2_421() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		_vm->_userInput = 0;
+		break;
+	case 0x42E:
+		if (_nodes[43])
+			_vm->displayIcon(136);
+		else {
+			if (_nodes[35] == 9) {
+				_vm->_sound = false;
+			} else {
+				_vm->_sound = true;
+			}
+			_vm->playMovie(113);
+			inventoryAdd(6);
+			_nodes[43] = 9;
+			_currMap = 10;
 		}
+		_vm->_tsIconOnly = true;
 		break;
-	case 440:
-		_nodeNum = 44;
-		_vm->drawLocation();
+	case 0x43A:
+		_statPlay = 422;
+		_vm->_zoom = 2;
+		_vm->processMap(42, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_inventory[12] > 0 || _nodes[44] == 9)
-			_vm->_sound = true;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
 
-		_vm->playMovie(119);
-		_vm->playSound(20);
-		_currMap = 100;
-		_statPlay = 441;
-		break;
-	case 441:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 442;
-			_vm->_zoom = 2;
-			_vm->processMap(44, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x452:
-			_statPlay = 430;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		}
+void Logic::GPL2_422() {
+	_vm->processMapInput(42);
+}
+
+void Logic::GPL2_430() {
+	_nodeNum = 43;
+	_vm->drawLocation();
+	_eye = false;
+	_vm->_userInput = 0;
+	if (_nodes[44] == 9) {
+		_vm->_tsIconOnly = true;
+		_vm->playMovie(118);
+		_currMap = 80;
+	} else if (_inventory[12] <= 0) {
+		_vm->playMovie(115);
+		_vm->showPic(415);
+		_currMap = 78;
+		if (!_vm->_skylarTimer)
+			_vm->_skylarTimer = 5400;
+	} else {
+		_vm->_skylarTimer = 0;
+		_vm->playMovie(116);
+		_vm->playSound(25);
+		inventoryDel(12);
+		inventoryAdd(16);
+		_nodes[44] = 9;
+		_currMap = 79;
+		_vm->_tsIconOnly = true;
+	}
+	_statPlay = 431;
+	_vm->playSound(20);
+	_eye = false;
+}
+
+void Logic::GPL2_431() {
+	switch(_vm->_userInput) {
+	case 0x40A:
+		_vm->playMovie(10);
+		_statPlay = 200;
+		if (_nodes[44] != 9)
+			_nodes[20] = 1;
+		_currMap = 10;
+		_vm->_loopFlag = true;
 		break;
-	case 442:
-		_vm->processMapInput(44);
+	case 0x414:
+		_vm->playMovie(10);
+		_statPlay = 390;
+		_currMap = 10;
+		_vm->_loopFlag = true;
 		break;
-	case 450:
-		_nodeNum = 45;
-		_vm->_userInput = 0;
-		if (!_nodes[41]) {
+	case 0x41D:
+		_vm->playMovie(10);
+		_statPlay = 500;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x422:
+		_vm->playMovie(10);
+		_statPlay = 380;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		if (_nodes[44] != 9) {
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+		}
+		break;
+	case 0x438:
+		if (_nodes[44] == 9) {
+			_vm->displayIcon(146);
+		} else {
 			dsAll();
-			_vm->playMovie(120);
+			_vm->playMovie(117);
 			_statPlay = 992;
-			_currMap = 10;
 			_vm->_loopFlag = true;
-		} else {
-			_vm->_fstFwd = false;
-			_vm->_frameStop = 50;
-			_vm->playMovie(120);
-			_currMap = 17;
-			_statPlay = 451;
 		}
 		break;
-	case 451:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->_fstFwd = false;
-			_vm->_frameStop = 50;
-			_vm->playMovie(_vm->_pMovie);
-			_currMap = 17;
-			_vm->playSound(26);
-			break;
-		case 0x441:
-			_statPlay = 410;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		}
+	case 0x43E:
+		// TODO: CHECKME
 		break;
-	case 460:
-		_eye = false;
-		_nodeNum = 46;
-		_vm->drawLocation();
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_440() {
+	_nodeNum = 44;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_inventory[12] > 0 || _nodes[44] == 9)
+		_vm->_sound = true;
+
+	_vm->playMovie(119);
+	_vm->playSound(20);
+	_currMap = 100;
+	_statPlay = 441;
+}
+
+void Logic::GPL2_441() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 442;
+		_vm->_zoom = 2;
+		_vm->processMap(44, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_nodes[47] && _vm->_wizard)
-			_nodes[47] = 1;
-		else {
-			_nodes[47] = 0;
-			_vm->_sound = true;
-		}
-		_vm->playMovie(121);
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x452:
+		_statPlay = 430;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_442() {
+	_vm->processMapInput(44);
+}
+
+void Logic::GPL2_450() {
+	_nodeNum = 45;
+	_vm->_userInput = 0;
+	if (!_nodes[41]) {
+		dsAll();
+		_vm->playMovie(120);
+		_statPlay = 992;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+	} else {
+		_vm->_fstFwd = false;
+		_vm->_frameStop = 50;
+		_vm->playMovie(120);
+		_currMap = 17;
+		_statPlay = 451;
+	}
+}
+
+void Logic::GPL2_451() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->_fstFwd = false;
+		_vm->_frameStop = 50;
+		_vm->playMovie(_vm->_pMovie);
+		_currMap = 17;
 		_vm->playSound(26);
-		_currMap = 107;
-		_statPlay = 461;
-		break;
-	case 461:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_statPlay = 340;
-			_vm->_userInput = 0;
-			_vm->_loopFlag = true;
-			_currMap = 10;
-			_lastObs = true;
-			break;
-		case 0x446:
-			_statPlay = 400;
-			_vm->_userInput = 0;
-			_vm->_loopFlag = true;
-			_currMap = 10;
-			break;
-		}
 		break;
-	case 462:
-		_vm->processMapInput(46);
+	case 0x441:
+		_statPlay = 410;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_460() {
+	_eye = false;
+	_nodeNum = 46;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[47] && _vm->_wizard)
+		_nodes[47] = 1;
+	else {
+		_nodes[47] = 0;
+		_vm->_sound = true;
+	}
+	_vm->playMovie(121);
+	_vm->playSound(26);
+	_currMap = 107;
+	_statPlay = 461;
+}
+
+void Logic::GPL2_461() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 480:
-		_nodeNum = 48;
+	case 0x445:
+		_statPlay = 340;
 		_vm->_userInput = 0;
-		_vm->playMovie(114);
+		_vm->_loopFlag = true;
 		_currMap = 10;
-		_statPlay = 481;
-		_nodes[49] = 1;
-		break;
-	case 481:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 482;
-			_vm->_zoom = 2;
-			_vm->processMap(48, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		}
+		_lastObs = true;
 		break;
-	case 482:
-		_vm->processMapInput(48);
+	case 0x446:
+		_statPlay = 400;
+		_vm->_userInput = 0;
+		_vm->_loopFlag = true;
+		_currMap = 10;
 		break;
-	case 490:
-		_nodeNum = 49;
-		_vm->drawLocation();
-		dsAll();
-		_vm->playMovie(180);
-		_vm->playSound(18);
-		_currMap = 101;
-		_statPlay = 491;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_462() {
+	_vm->processMapInput(46);
+}
+
+void Logic::GPL2_480() {
+	_nodeNum = 48;
+	_vm->_userInput = 0;
+	_vm->playMovie(114);
+	_currMap = 10;
+	_statPlay = 481;
+	_nodes[49] = 1;
+}
+
+void Logic::GPL2_481() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 482;
+		_vm->_zoom = 2;
+		_vm->processMap(48, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL2_482() {
+	_vm->processMapInput(48);
+}
+
+void Logic::GPL2_490() {
+	_nodeNum = 49;
+	_vm->drawLocation();
+	dsAll();
+	_vm->playMovie(180);
+	_vm->playSound(18);
+	_currMap = 101;
+	_statPlay = 491;
+	_vm->_aTimer = 0;
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL2_491() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x42A:
+	case 0x42B:
+		inventoryDel(_vm->_userInput - 0x428);
 		_vm->_aTimer = 0;
+		_vm->playMovie(178);
+		_vm->_userInput = 753;
+		_vm->_loopFlag = true;
+		_currMap = 10;
+		break;
+	case 0x442:
+		_vm->playMovie(182);
+		_statPlay = 992;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44A:
+		_currMap = 10;
 		_vm->_userInput = 0;
+		_vm->_aTimer = 0;
+		enAll();
+		_vm->playMovie(181);
+		_nodes[29] = 9;
+		_nodes[49] = 0;
+		_statPlay = _nextNode * 10;
+		_vm->_loopFlag = true;
 		break;
-	case 491:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x42A:
-		case 0x42B:
-			inventoryDel(_vm->_userInput - 0x428);
-			_vm->_aTimer = 0;
-			_vm->playMovie(178);
-			_vm->_userInput = 753;
-			_vm->_loopFlag = true;
-			_currMap = 10;
-			break;
-		case 0x442:
-			_vm->playMovie(182);
-			_statPlay = 992;
-			_vm->_loopFlag = true;
-			break;
-		case 0x44A:
-			_currMap = 10;
-			_vm->_userInput = 0;
-			_vm->_aTimer = 0;
-			enAll();
-			_vm->playMovie(181);
-			_nodes[29] = 9;
-			_nodes[49] = 0;
-			_statPlay = _nextNode * 10;
-			_vm->_loopFlag = true;
-			break;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 992773496b..4184d9576c 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -178,9 +178,9 @@ Common::Error KingdomGame::run() {
 		_logic->gameHelp();
 		if (_gameMode == 0) {
 			if (_logic->_statPlay < 250)
-				_logic->GPLogic1();
+				_logic->executeOpcode();
 			if (_logic->_statPlay > 249 && _logic->_statPlay < 500)
-				_logic->GPLogic2();
+				_logic->executeOpcode();
 			if (_logic->_statPlay > 499 && _logic->_statPlay < 900) {
 				if (!isDemo())
 					_logic->GPLogic3();
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index ce048fe87e..804b931c4a 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -140,6 +140,69 @@ void Logic::initOpcodes() {
 	_opCodes[240] = &Logic::GPL1_240;
 	_opCodes[241] = &Logic::GPL1_241;
 	_opCodes[242] = &Logic::GPL1_242;
+
+	_opCodes[250] = &Logic::GPL2_250;
+	_opCodes[251] = &Logic::GPL2_251;
+	_opCodes[252] = &Logic::GPL2_252;
+	_opCodes[260] = &Logic::GPL2_260;
+	_opCodes[261] = &Logic::GPL2_261;
+	_opCodes[270] = &Logic::GPL2_270;
+	_opCodes[271] = &Logic::GPL2_271;
+	_opCodes[272] = &Logic::GPL2_272;
+	_opCodes[280] = &Logic::GPL2_280;
+	_opCodes[290] = &Logic::GPL2_290;
+	_opCodes[291] = &Logic::GPL2_291;
+	_opCodes[292] = &Logic::GPL2_292;
+	_opCodes[300] = &Logic::GPL2_300;
+	_opCodes[301] = &Logic::GPL2_301;
+	_opCodes[302] = &Logic::GPL2_302;
+	_opCodes[310] = &Logic::GPL2_310;
+	_opCodes[311] = &Logic::GPL2_311;
+	_opCodes[312] = &Logic::GPL2_312;
+	_opCodes[320] = &Logic::GPL2_320;
+	_opCodes[321] = &Logic::GPL2_321;
+	_opCodes[322] = &Logic::GPL2_322;
+	_opCodes[330] = &Logic::GPL2_330;
+	_opCodes[331] = &Logic::GPL2_331;
+	_opCodes[332] = &Logic::GPL2_332;
+	_opCodes[340] = &Logic::GPL2_340;
+	_opCodes[341] = &Logic::GPL2_341;
+	_opCodes[342] = &Logic::GPL2_342;
+	_opCodes[350] = &Logic::GPL2_350;
+	_opCodes[351] = &Logic::GPL2_351;
+	_opCodes[360] = &Logic::GPL2_360;
+	_opCodes[361] = &Logic::GPL2_361;
+	_opCodes[362] = &Logic::GPL2_362;
+	_opCodes[370] = &Logic::GPL2_370;
+	_opCodes[371] = &Logic::GPL2_371;
+	_opCodes[372] = &Logic::GPL2_372;
+	_opCodes[380] = &Logic::GPL2_380;
+	_opCodes[381] = &Logic::GPL2_381;
+	_opCodes[382] = &Logic::GPL2_382;
+	_opCodes[390] = &Logic::GPL2_390;
+	_opCodes[400] = &Logic::GPL2_400;
+	_opCodes[401] = &Logic::GPL2_401;
+	_opCodes[402] = &Logic::GPL2_402;
+	_opCodes[410] = &Logic::GPL2_410;
+	_opCodes[411] = &Logic::GPL2_411;
+	_opCodes[420] = &Logic::GPL2_420;
+	_opCodes[421] = &Logic::GPL2_421;
+	_opCodes[422] = &Logic::GPL2_422;
+	_opCodes[430] = &Logic::GPL2_430;
+	_opCodes[431] = &Logic::GPL2_431;
+	_opCodes[440] = &Logic::GPL2_440;
+	_opCodes[441] = &Logic::GPL2_441;
+	_opCodes[442] = &Logic::GPL2_442;
+	_opCodes[450] = &Logic::GPL2_450;
+	_opCodes[451] = &Logic::GPL2_451;
+	_opCodes[460] = &Logic::GPL2_460;
+	_opCodes[461] = &Logic::GPL2_461;
+	_opCodes[462] = &Logic::GPL2_462;
+	_opCodes[480] = &Logic::GPL2_480;
+	_opCodes[481] = &Logic::GPL2_481;
+	_opCodes[482] = &Logic::GPL2_482;
+	_opCodes[490] = &Logic::GPL2_490;
+	_opCodes[491] = &Logic::GPL2_491;
 }
 
 void Logic::enAll() {
@@ -415,6 +478,14 @@ void Logic::switchAS() {
 	_vm->_iconsClosed = _vm->_oldIconsClosed;
 }
 
+void Logic::executeOpcode() {
+	if (_opCodes.contains(_statPlay)) {
+		Opcode op = _opCodes[_statPlay];
+		(this->*op)();
+	} else
+		warning("Unknown opcode: %d", _statPlay);
+}
+
 void Logic::synchronize(Common::Serializer &s) {
 	s.syncAsSint16LE(_statPlay);
 	s.syncAsSint16LE(_health);
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index f2cf58e7d4..dacb110861 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -100,6 +100,69 @@ private:
 	void GPL1_241();
 	void GPL1_242();
 
+	void GPL2_250();
+	void GPL2_251();
+	void GPL2_252();
+	void GPL2_260();
+	void GPL2_261();
+	void GPL2_270();
+	void GPL2_271();
+	void GPL2_272();
+	void GPL2_280();
+	void GPL2_290();
+	void GPL2_291();
+	void GPL2_292();
+	void GPL2_300();
+	void GPL2_301();
+	void GPL2_302();
+	void GPL2_310();
+	void GPL2_311();
+	void GPL2_312();
+	void GPL2_320();
+	void GPL2_321();
+	void GPL2_322();
+	void GPL2_330();
+	void GPL2_331();
+	void GPL2_332();
+	void GPL2_340();
+	void GPL2_341();
+	void GPL2_342();
+	void GPL2_350();
+	void GPL2_351();
+	void GPL2_360();
+	void GPL2_361();
+	void GPL2_362();
+	void GPL2_370();
+	void GPL2_371();
+	void GPL2_372();
+	void GPL2_380();
+	void GPL2_381();
+	void GPL2_382();
+	void GPL2_390();
+	void GPL2_400();
+	void GPL2_401();
+	void GPL2_402();
+	void GPL2_410();
+	void GPL2_411();
+	void GPL2_420();
+	void GPL2_421();
+	void GPL2_422();
+	void GPL2_430();
+	void GPL2_431();
+	void GPL2_440();
+	void GPL2_441();
+	void GPL2_442();
+	void GPL2_450();
+	void GPL2_451();
+	void GPL2_460();
+	void GPL2_461();
+	void GPL2_462();
+	void GPL2_480();
+	void GPL2_481();
+	void GPL2_482();
+	void GPL2_490();
+	void GPL2_491();
+
 public:
 	int _statPlay;
 	int _oldStatPlay;
@@ -147,14 +210,13 @@ public:
 	explicit Logic(Kingdom::KingdomGame *vm);
 	virtual ~Logic(void) {}
 
-	void GPLogic1();
-	void GPLogic2();
 	void GPLogic3();
 	void GPLogic4();
 	void gameHelp();
 	void inventoryDel(int item);
 	void inventoryAdd(int item);
 	void initVariables();
+	void executeOpcode();
 	void initPlay();
 	void switchAS();
 	void synchronize(Common::Serializer &s);


Commit: f14a9e7c0648632611b5518bdc40f2a361dc5c7e
    https://github.com/scummvm/scummvm/commit/f14a9e7c0648632611b5518bdc40f2a361dc5c7e
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Refactor GPL3

Changed paths:
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index cb3270492b..edcbabb1e5 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -25,1656 +25,1717 @@
 
 namespace Kingdom {
 
-void Logic::GPLogic3() {
-	switch(_statPlay) {
-	case 500:
-		_nodeNum = 50;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		_resurrect = false;
-		if (!_vm->_wizard)
-			_nodes[51] = 1;
-		switch(_nodes[51]) {
-		case 0:
-			_vm->playMovie(123);
-			_currMap = 102;
-			break;
-		case 1:
-			_nodes[51] = 2;
-			_vm->playMovie(126);
-			_currMap = 10;
-			_vm->_tsIconOnly = true;
-			break;
-		default:
+void Logic::GPL3_500() {
+	_nodeNum = 50;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_resurrect = false;
+	if (!_vm->_wizard)
+		_nodes[51] = 1;
+	switch(_nodes[51]) {
+	case 0:
+		_vm->playMovie(123);
+		_currMap = 102;
+		break;
+	case 1:
+		_nodes[51] = 2;
+		_vm->playMovie(126);
+		_currMap = 10;
+		_vm->_tsIconOnly = true;
+		break;
+	default:
+		_nodes[51] = 1;
+		_vm->_sound = true;
+		_vm->playMovie(126);
+		_currMap = 10;
+		_vm->_tsIconOnly = true;
+		break;
+	}
+	_vm->playSound(29);
+	_statPlay = 501;
+}
+
+void Logic::GPL3_501() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		if (!_nodes[51]) {
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 0;
+		}
+		break;
+	case 0x433:
+		if (!_nodes[51]) {
+			dsAll();
+			_vm->playMovie(125);
+			_statPlay = 993;
+			_vm->_loopFlag = true;
+		} else
+			_vm->displayIcon(141);
+
+		break;
+	case 0x439:
+		if (!_nodes[51]) {
+			_vm->playMovie(124);
 			_nodes[51] = 1;
-			_vm->_sound = true;
-			_vm->playMovie(126);
+			inventoryAdd(11);
+			_vm->_userInput = 0;
 			_currMap = 10;
-			_vm->_tsIconOnly = true;
-			break;
 		}
-		_vm->playSound(29);
-		_statPlay = 501;
-		break;
-	case 501:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			if (!_nodes[51]) {
-				inventoryDel(_vm->_userInput - 0x428);
-				_vm->saveAS();
-				_vm->playMovie(178);
-				_vm->restoreAS();
-				_vm->_userInput = 0;
-			}
-			break;
-		case 0x433:
-			if (!_nodes[51]) {
-				dsAll();
-				_vm->playMovie(125);
-				_statPlay = 993;
-				_vm->_loopFlag = true;
-			} else
-				_vm->displayIcon(141);
+		break;
+	case 0x43A:
+		_statPlay = 502;
+		_vm->_zoom = 2;
+		_vm->processMap(50, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
 
-			break;
-		case 0x439:
-			if (!_nodes[51]) {
-				_vm->playMovie(124);
-				_nodes[51] = 1;
-				inventoryAdd(11);
-				_vm->_userInput = 0;
-				_currMap = 10;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 502;
-			_vm->_zoom = 2;
-			_vm->processMap(50, _vm->_zoom);
+void Logic::GPL3_502() {
+	_vm->processMapInput(50);
+}
+
+void Logic::GPL3_510() {
+	_nodeNum = 51;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_vm->playMovie(129);
+	_currMap = 10;
+	_vm->playSound(6);
+	_statPlay = 511;
+}
+
+void Logic::GPL3_511() {
+	switch(_vm->_userInput) {
+	case 0x434:
+		if (_inventory[6] >= 1)
+			_vm->displayIcon(142);
+		else {
+			_vm->playMovie(128);
+			_nodes[52] = 9;
+			inventoryAdd(12);
 			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
+			_currMap = 10;
+			_vm->playSound(30);
 		}
 		break;
-	case 502:
-		_vm->processMapInput(50);
+	case 0x43A:
+		_statPlay = 512;
+		_vm->_zoom = 2;
+		_vm->processMap(51, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 510:
-		_nodeNum = 51;
-		_vm->drawLocation();
+	case 0x457:
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->playMovie(127);
+		_currMap = 103;
 		_vm->_userInput = 0;
-		_vm->playMovie(129);
-		_currMap = 10;
+		_vm->playSound(0);
 		_vm->playSound(6);
-		_statPlay = 511;
-		break;
-	case 511:
-		switch(_vm->_userInput) {
-		case 0x434:
-			if (_inventory[6] >= 1)
-				_vm->displayIcon(142);
-			else {
-				_vm->playMovie(128);
-				_nodes[52] = 9;
-				inventoryAdd(12);
-				_vm->_userInput = 0;
-				_currMap = 10;
-				_vm->playSound(30);
-			}
-			break;
-		case 0x43A:
-			_statPlay = 512;
-			_vm->_zoom = 2;
-			_vm->processMap(51, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x457:
-			_tideCntl = false;
-			_vm->drawPic(179);
-			_vm->playMovie(127);
-			_currMap = 103;
-			_vm->_userInput = 0;
-			_vm->playSound(0);
-			_vm->playSound(6);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
 		break;
-	case 512:
-		_vm->processMapInput(51);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 520:
-		_nodeNum = 52;
-		_vm->drawLocation();
+	}
+}
+
+void Logic::GPL3_512() {
+	_vm->processMapInput(51);
+}
+
+void Logic::GPL3_520() {
+	_nodeNum = 52;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[53] == 0)
+		_nodes[53] = 1;
+	else {
+		_vm->_sound = true;
+		_nodes[53] = false;
+	}
+	_vm->playMovie(130);
+	_currMap = 111;
+	_statPlay = 521;
+	_vm->playSound(31);
+}
+
+void Logic::GPL3_521() {
+	switch(_vm->_userInput) {
+	case 0x404:
+		_statPlay = 550;
+		_vm->_loopFlag = true;
+		break;
+	case 0x43A:
+		_statPlay = 522;
+		_vm->_zoom = 2;
+		_vm->processMap(52, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_nodes[53] == 0)
-			_nodes[53] = 1;
-		else {
-			_vm->_sound = true;
-			_nodes[53] = false;
-		}
-		_vm->playMovie(130);
-		_currMap = 111;
-		_statPlay = 521;
-		_vm->playSound(31);
-		break;
-	case 521:
-		switch(_vm->_userInput) {
-		case 0x404:
-			_statPlay = 550;
-			_vm->_loopFlag = true;
-			break;
-		case 0x43A:
-			_statPlay = 522;
-			_vm->_zoom = 2;
-			_vm->processMap(52, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
 		break;
-	case 522:
-		_vm->processMapInput(52);
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 530:
-		_nodeNum = 53;
-		_vm->drawLocation();
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_522() {
+	_vm->processMapInput(52);
+}
+
+void Logic::GPL3_530() {
+	_nodeNum = 53;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_vm->_fstFwd = false;
+	if (_inventory[7] <= 0 && _vm->_wizard)
+		_vm->_tsIconOnly = false;
+	else {
+		_vm->_frameStop = 24;
+		_vm->_tsIconOnly = true;
+	}
+	_eye = false;
+	_vm->playMovie(70);
+	_currMap = 99;
+	_vm->playSound(8);
+	_statPlay = 531;
+}
+
+void Logic::GPL3_531() {
+	switch(_vm->_userInput) {
+	case 0x428:
+		if (_nodes[54] == 0) {
+			_vm->playMovie(71);
+			inventoryAdd(14);
+			inventoryDel(0);
+			_vm->_tsIconOnly = true;
+			_vm->playSound(25);
+		}
 		_vm->_userInput = 0;
+		break;
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
 		_vm->_fstFwd = false;
-		if (_inventory[7] <= 0 && _vm->_wizard)
-			_vm->_tsIconOnly = false;
-		else {
+		if (_inventory[7] > 0 && _vm->_pMovie == 70)
 			_vm->_frameStop = 24;
-			_vm->_tsIconOnly = true;
-		}
-		_eye = false;
-		_vm->playMovie(70);
-		_currMap = 99;
+		if (!_vm->_wizard && _vm->_pMovie == 70)
+			_vm->_frameStop = 24;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_nodeNum = 56;
+		_vm->_userInput = 0;
+		_vm->_frameStop = 50;
+		enAll();
+		_vm->playMovie(135);
+		_currMap = 106;
+		_nodes[57] = 1;
 		_vm->playSound(8);
-		_statPlay = 531;
-		break;
-	case 531:
-		switch(_vm->_userInput) {
-		case 0x428:
-			if (_nodes[54] == 0) {
-				_vm->playMovie(71);
-				inventoryAdd(14);
-				inventoryDel(0);
-				_vm->_tsIconOnly = true;
-				_vm->playSound(25);
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_fstFwd = false;
-			if (_inventory[7] > 0 && _vm->_pMovie == 70)
-				_vm->_frameStop = 24;
-			if (!_vm->_wizard && _vm->_pMovie == 70)
-				_vm->_frameStop = 24;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_nodeNum = 56;
-			_vm->_userInput = 0;
-			_vm->_frameStop = 50;
-			enAll();
-			_vm->playMovie(135);
-			_currMap = 106;
-			_nodes[57] = 1;
-			_vm->playSound(8);
-			_vm->_tsIconOnly = true;
-			_statPlay = 561;
-			break;
-		case 0x452:
-			_statPlay = 630;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+		_vm->_tsIconOnly = true;
+		_statPlay = 561;
 		break;
-	case 540:
-		_nodeNum = 54;
-		_vm->drawLocation();
+	case 0x452:
+		_statPlay = 630;
+		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
-		if (!_vm->_wizard) {
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_540() {
+	_nodeNum = 54;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (!_vm->_wizard) {
+		_vm->_sound = true;
+		_currMap = 55;
+	} else {
+		if (!_nodes[55])
+			_nodes[55] = 1;
+		else {
 			_vm->_sound = true;
-			_currMap = 55;
-		} else {
-			if (!_nodes[55])
-				_nodes[55] = 1;
-			else {
-				_vm->_sound = true;
-				_nodes[55] = 0;
-			}
-			_currMap = 112;
+			_nodes[55] = 0;
 		}
+		_currMap = 112;
+	}
 
-		_vm->playMovie(132);
-		_vm->showPic(432);
-		_statPlay = 541;
-		_vm->playSound(22);
+	_vm->playMovie(132);
+	_vm->showPic(432);
+	_statPlay = 541;
+	_vm->playSound(22);
+}
+
+void Logic::GPL3_541() {
+	switch(_vm->_userInput) {
+	case 0x404:
+		_statPlay = 550;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
 		break;
-	case 541:
-		switch(_vm->_userInput) {
-		case 0x404:
-			_statPlay = 550;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x43A:
-			_statPlay = 542;
-			_vm->_zoom = 2;
-			_vm->processMap(54, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			_vm->showPic(432);
-			break;
-		case 0x453:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(131);
-			_vm->playSound(32);
-			_vm->fShowPic(432);
-			// Useless, but present in the original
-			// _CurrMap = 10;
-			_currMap = 55;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43A:
+		_statPlay = 542;
+		_vm->_zoom = 2;
+		_vm->processMap(54, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 542:
-		_vm->processMapInput(54);
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		_vm->showPic(432);
 		break;
-	case 550:
-		_nodeNum = 55;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		_vm->playMovie(133);
-		if (_nodes[56] != 9)
-			_nodes[56] = 0;
-		_vm->_tsIconOnly = true;
-		_currMap = 104;
-		_statPlay = 551;
-		_vm->playSound(8);
+	case 0x453:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(131);
+		_vm->playSound(32);
+		_vm->fShowPic(432);
+		// Useless, but present in the original
+		// _CurrMap = 10;
+		_currMap = 55;
 		break;
-	case 551:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_vm->_aTimer = 0;
-			dsAll();
-			_vm->playMovie(134);
-			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x42C:
-			_vm->_aTimer = 0;
-			if (_nodes[56] == 1) {
-				enAll();
-				_vm->playMovie(183);
-				_vm->fShowPic(433);
-				_vm->playSound(8);
-				_nodes[56] = 9;
-				_vm->_tsIconOnly = true;
-			}
-			break;
-		case 0x43A:
-			if (_nodes[56] == 1) {
-				dsAll();
-				_vm->playMovie(134);
-				_statPlay = 993;
-				_vm->_loopFlag = true;
-			} else {
-				_statPlay = 552;
-				_vm->_zoom = 2;
-				_vm->processMap(55, _vm->_zoom);
-				_vm->_userInput = 0;
-			}
-			break;
-		case 0x43E:
-			_vm->_aTimer = 0;
-			_vm->playMovie(_vm->_pMovie);
-			if (_vm->_pMovie == 183)
-				_vm->fShowPic(433);
-			break;
-		case 0x452:
-			_vm->_aTimer = 0;
-			switch(_nodes[56]) {
-			case 0:
-				dsAll();
-				_vm->playMovie(69);
-				_vm->_tsIconOnly = false;
-				_nodes[56] = 1;
-				_vm->setATimer();
-				break;
-			case 1:
-				dsAll();
-				_vm->playMovie(134);
-				_statPlay = 993;
-				_vm->_loopFlag = true;
-				break;
-			case 9:
-				_statPlay = 560;
-				_vm->_loopFlag = true;
-				break;
-			}
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 552:
-		_vm->processMapInput(55);
-		if (!_nodes[56] && _statPlay == 560) {
-			_statPlay = 551;
-			_vm->_userInput = 0x190;
-			_vm->_loopFlag = true;
-		}
+	}
+}
+
+void Logic::GPL3_542() {
+	_vm->processMapInput(54);
+}
+
+void Logic::GPL3_550() {
+	_nodeNum = 55;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_vm->playMovie(133);
+	if (_nodes[56] != 9)
+		_nodes[56] = 0;
+	_vm->_tsIconOnly = true;
+	_currMap = 104;
+	_statPlay = 551;
+	_vm->playSound(8);
+}
+
+void Logic::GPL3_551() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(134);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
 		break;
-	case 560:
-		_nodeNum = 56;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_vm->_wizard) {
-			_vm->_frameStop = 50;
+	case 0x42C:
+		_vm->_aTimer = 0;
+		if (_nodes[56] == 1) {
 			enAll();
-			_vm->playMovie(135);
-			_vm->showPic(435);
-			_nodes[57] = 1;
+			_vm->playMovie(183);
+			_vm->fShowPic(433);
 			_vm->playSound(8);
-			_statPlay = 561;
-			_currMap = 106;
+			_nodes[56] = 9;
 			_vm->_tsIconOnly = true;
-		} else {
-			dsAll();
-			_vm->playMovie(135);
-			_currMap = 10;
-			_vm->setATimer();
-			_nodes[57] = 0;
-			_statPlay = 561;
 		}
 		break;
-	case 561:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_vm->_aTimer = 0;
+	case 0x43A:
+		if (_nodes[56] == 1) {
 			dsAll();
-			_vm->playMovie(136);
+			_vm->playMovie(134);
 			_statPlay = 993;
 			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			_vm->_aTimer = 0;
-			if (!_nodes[57]) {
-				inventoryDel(_vm->_userInput - 0x428);
-				_vm->saveAS();
-				_vm->playMovie(178);
-				_vm->restoreAS();
-				_vm->_userInput = 753;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x42C:
-			_vm->_aTimer = 0;
-			if (!_nodes[57]) {
-				_vm->_fstFwd = false;
-				_replay = true;
-				_vm->playMovie(138);
-				enAll();
-				_vm->playSound(8);
-				_nodes[57] = 1;
-				inventoryDel(4);
-				_nodes[22] = 0;
-				_currMap = 88;
-				_vm->_tsIconOnly = true;
-			}
-			break;
-		case 0x438:
-			_vm->_aTimer = 0;
-			if (!_nodes[57]) {
-				enAll();
-				_vm->_fstFwd = false;
-				_replay = true;
-				_vm->playMovie(137);
-				enAll();
-				_vm->playSound(8);
-				_nodes[57] = 1;
-				_currMap = 106;
-				_vm->_tsIconOnly = true;
-			}
-			break;
-		case 0x43A:
-			_statPlay = 562;
+		} else {
+			_statPlay = 552;
 			_vm->_zoom = 2;
-			_vm->processMap(56, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_fstFwd = false;
-			if (_vm->_pMovie == 135 && _nodes[57]) {
-				_vm->_frameStop = 50;
-				_vm->playMovie(135);
-			} else if (_nodes[57])
-				_vm->playMovie(_vm->_pMovie);
-			else {
-				_vm->_userInput = 753;
-				_vm->_aTimer = 0;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x445:
-			_statPlay = 530;
-			_vm->_loopFlag = true;
+			_vm->processMap(55, _vm->_zoom);
 			_vm->_userInput = 0;
-			break;
-		case 0x446:
-			_statPlay = 620;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		case 0x452:
-			_statPlay = 550;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 562:
-		_vm->processMapInput(56);
+	case 0x43E:
+		_vm->_aTimer = 0;
+		_vm->playMovie(_vm->_pMovie);
+		if (_vm->_pMovie == 183)
+			_vm->fShowPic(433);
 		break;
-	case 570:
-		if (_nodes[58]) {
-			if (_rtnNode != 34)
-				_vm->_sound = true;
-			_nodeNum = 57;
-			_vm->drawLocation();
-			_nodes[58] = 0;
-			_vm->_userInput = 0;
-			_vm->playMovie(139);
-			_vm->playSound(27);
-			_currMap = 10;
-			_statPlay = 571;
-		} else {
-			_statPlay = 740;
-			_vm->_loopFlag = true;
-		}
+	case 0x452:
+		_vm->_aTimer = 0;
+		switch(_nodes[56]) {
+	case 0:
+		dsAll();
+		_vm->playMovie(69);
+		_vm->_tsIconOnly = false;
+		_nodes[56] = 1;
+		_vm->setATimer();
+		break;
+	case 1:
+		dsAll();
+		_vm->playMovie(134);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 9:
+		_statPlay = 560;
+		_vm->_loopFlag = true;
 		break;
-	case 571:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 572;
-			_vm->_zoom = 2;
-			_vm->processMap(57, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 572:
-		_vm->processMapInput(57);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 580:
-		_nodeNum = 58;
-		_vm->drawLocation();
-		_vm->_iconsClosed = true;
-		_vm->_userInput = 0;
-		switch(_nodes[59]) {
-		case 0:
-			_vm->_sound = true;
-			_vm->playMovie(140);
-			_currMap = 113;
-			_nodes[59] = 1;
-			break;
-		case 1:
-			_vm->playMovie(140);
-			_currMap = 113;
-			_nodes[59] = 0;
-			break;
-		case 8:
-			_vm->_tsIconOnly = true;
-			_vm->playMovie(143);
-			_currMap = 10;
-			_nodes[59] = 9;
-			break;
-		case 9:
-			_vm->_tsIconOnly = true;
-			_vm->_sound = true;
-			_vm->playMovie(143);
-			_currMap = 10;
-			break;
+	}
+}
+
+void Logic::GPL3_552() {
+	_vm->processMapInput(55);
+	if (!_nodes[56] && _statPlay == 560) {
+		_statPlay = 551;
+		_vm->_userInput = 0x190;
+		_vm->_loopFlag = true;
+	}
+}
+
+void Logic::GPL3_560() {
+	_nodeNum = 56;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_vm->_wizard) {
+		_vm->_frameStop = 50;
+		enAll();
+		_vm->playMovie(135);
+		_vm->showPic(435);
+		_nodes[57] = 1;
+		_vm->playSound(8);
+		_statPlay = 561;
+		_currMap = 106;
+		_vm->_tsIconOnly = true;
+	} else {
+		dsAll();
+		_vm->playMovie(135);
+		_currMap = 10;
+		_vm->setATimer();
+		_nodes[57] = 0;
+		_statPlay = 561;
+	}
+}
+
+void Logic::GPL3_561() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_vm->_aTimer = 0;
+		dsAll();
+		_vm->playMovie(136);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		_vm->_aTimer = 0;
+		if (!_nodes[57]) {
+			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+			_vm->_userInput = 753;
+			_vm->_loopFlag = true;
 		}
-		_vm->playSound(27);
-		_statPlay = 581;
-		break;
-	case 581:
-		switch(_vm->_userInput) {
-		case 0x430:
-			_vm->playMovie(141);
-			_nodes[59] = 8;
-			inventoryAdd(13);
+		break;
+	case 0x42C:
+		_vm->_aTimer = 0;
+		if (!_nodes[57]) {
+			_vm->_fstFwd = false;
+			_replay = true;
+			_vm->playMovie(138);
+			enAll();
+			_vm->playSound(8);
+			_nodes[57] = 1;
+			inventoryDel(4);
+			_nodes[22] = 0;
+			_currMap = 88;
 			_vm->_tsIconOnly = true;
-			_currMap = 10;
-			_vm->playSound(30);
-		// No break on purpose
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			if (_nodes[59] < 8) {
-				inventoryDel(_vm->_userInput - 0x428);
-				_vm->saveAS();
-				_vm->playMovie(178);
-				_vm->restoreAS();
-			}
-			_vm->_userInput = 0;
-			break;
-		case 0x435:
-			if (_nodes[59] >= 8)
-				_vm->displayIcon(143);
-			else {
-				dsAll();
-				_vm->playMovie(142);
-				_statPlay = 993;
-				_vm->_loopFlag = true;
-			}
-		case 0x43A:
-			_statPlay = 582;
-			_vm->_zoom = 2;
-			_vm->processMap(58, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 582:
-		_vm->processMapInput(58);
+	case 0x438:
+		_vm->_aTimer = 0;
+		if (!_nodes[57]) {
+			enAll();
+			_vm->_fstFwd = false;
+			_replay = true;
+			_vm->playMovie(137);
+			enAll();
+			_vm->playSound(8);
+			_nodes[57] = 1;
+			_currMap = 106;
+			_vm->_tsIconOnly = true;
+		}
 		break;
-	case 590:
-		_nodeNum = 59;
-		_vm->drawLocation();
+	case 0x43A:
+		_statPlay = 562;
+		_vm->_zoom = 2;
+		_vm->processMap(56, _vm->_zoom);
 		_vm->_userInput = 0;
-		if (_nodes[60] == 0)
-			_nodes[60] = 1;
-		else {
-			_vm->_sound = true;
-			_nodes[60] = 0;
-		}
-		_vm->playMovie(144);
-		_vm->showPic(144);
-		_currMap = 114;
-		_vm->playSound(21);
-		_statPlay = 591;
-		break;
-	case 591:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 592;
-			_vm->_zoom = 2;
-			_vm->processMap(59, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
+		break;
+	case 0x43E:
+		_vm->_fstFwd = false;
+		if (_vm->_pMovie == 135 && _nodes[57]) {
+			_vm->_frameStop = 50;
+			_vm->playMovie(135);
+		} else if (_nodes[57])
 			_vm->playMovie(_vm->_pMovie);
-			_vm->showPic(444);
-			break;
-		case 0x445:
-			_statPlay = 660;
+		else {
+			_vm->_userInput = 753;
+			_vm->_aTimer = 0;
 			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 592:
-		_vm->processMapInput(59);
-		break;
-	case 600:
-		_vm->setMouse();
-		_vm->eraseCursor();
-		_vm->fadeToBlack2();
-		_vm->showPic(106);
-		_vm->drawIcon(4, 0, 12 - _healthOld);
-		_vm->_asMode = false;
-		_nodeNum = 60;
-		_vm->drawLocation();
+	case 0x445:
+		_statPlay = 530;
+		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
-		dsAll();
-		_vm->playMovie(145);
-		_statPlay = 992;
+		break;
+	case 0x446:
+		_statPlay = 620;
 		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
 		break;
-	case 610:
-		_nodeNum = 61;
-		_vm->drawLocation();
+	case 0x452:
+		_statPlay = 550;
+		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
-		_nodes[73] = 0;
-		_nodes[74] = 0;
-		if (_nodes[62] == 0)
-			_nodes[62] = 1;
-		else
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_562() {
+	_vm->processMapInput(56);
+}
+
+void Logic::GPL3_570() {
+	if (_nodes[58]) {
+		if (_rtnNode != 34)
 			_vm->_sound = true;
+		_nodeNum = 57;
+		_vm->drawLocation();
+		_nodes[58] = 0;
+		_vm->_userInput = 0;
+		_vm->playMovie(139);
+		_vm->playSound(27);
+		_currMap = 10;
+		_statPlay = 571;
+	} else {
+		_statPlay = 740;
+		_vm->_loopFlag = true;
+	}
+}
 
-		_vm->playMovie(146);
-		if (_nodes[70] == 9) {
-			_vm->_itemInhibit = true;
-			_vm->_tsIconOnly = true;
-		}
-		
-		_currMap = 115;
-		_vm->playSound(36);
-		_statPlay = 611;
-		_eye = false;
-		break;
-	case 611:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
+void Logic::GPL3_571() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 572;
+		_vm->_zoom = 2;
+		_vm->processMap(57, _vm->_zoom);
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_572() {
+	_vm->processMapInput(57);
+}
+
+void Logic::GPL3_580() {
+	_nodeNum = 58;
+	_vm->drawLocation();
+	_vm->_iconsClosed = true;
+	_vm->_userInput = 0;
+	switch(_nodes[59]) {
+	case 0:
+		_vm->_sound = true;
+		_vm->playMovie(140);
+		_currMap = 113;
+		_nodes[59] = 1;
+		break;
+	case 1:
+		_vm->playMovie(140);
+		_currMap = 113;
+		_nodes[59] = 0;
+		break;
+	case 8:
+		_vm->_tsIconOnly = true;
+		_vm->playMovie(143);
+		_currMap = 10;
+		_nodes[59] = 9;
+		break;
+	case 9:
+		_vm->_tsIconOnly = true;
+		_vm->_sound = true;
+		_vm->playMovie(143);
+		_currMap = 10;
+		break;
+	}
+	_vm->playSound(27);
+	_statPlay = 581;
+}
+
+void Logic::GPL3_581() {
+	switch(_vm->_userInput) {
+	case 0x430:
+		_vm->playMovie(141);
+		_nodes[59] = 8;
+		inventoryAdd(13);
+		_vm->_tsIconOnly = true;
+		_currMap = 10;
+		_vm->playSound(30);
+		// No break on purpose
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		if (_nodes[59] < 8) {
 			inventoryDel(_vm->_userInput - 0x428);
+			_vm->saveAS();
+			_vm->playMovie(178);
+			_vm->restoreAS();
+		}
+		_vm->_userInput = 0;
+		break;
+	case 0x435:
+		if (_nodes[59] >= 8)
+			_vm->displayIcon(143);
+		else {
 			dsAll();
-			_vm->playMovie(148);
+			_vm->playMovie(142);
 			_statPlay = 993;
 			_vm->_loopFlag = true;
-			break;
-		case 0x432:
-			_vm->playMovie(147);
-			_inventory[5] = -1;
-			_nodes[30] = 0;
-			_currMap = 116;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x441:
-			// Cascade on purpose
-		case 0x448:
-			_currMap = 10;
-			_vm->_itemInhibit = true;
-			_statPlay = 730;
-			_vm->_loopFlag = true;
-			break;
-		case 0x44B:
-			_currMap = 10;
-			_statPlay = 680;
-			_vm->_loopFlag = true;
-			break;
-		case 0x451:
-			_currMap = 10;
-			_statPlay = 690;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
+	case 0x43A:
+		_statPlay = 582;
+		_vm->_zoom = 2;
+		_vm->processMap(58, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 620:
-		_nodeNum = 62;
-		_vm->drawLocation();
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_582() {
+	_vm->processMapInput(58);
+}
+
+void Logic::GPL3_590() {
+	_nodeNum = 59;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[60] == 0)
+		_nodes[60] = 1;
+	else {
+		_vm->_sound = true;
+		_nodes[60] = 0;
+	}
+	_vm->playMovie(144);
+	_vm->showPic(144);
+	_currMap = 114;
+	_vm->playSound(21);
+	_statPlay = 591;
+}
+
+void Logic::GPL3_591() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 592;
+		_vm->_zoom = 2;
+		_vm->processMap(59, _vm->_zoom);
 		_vm->_userInput = 0;
-		_eye = false;
-		if (_nodes[63] == 0) {
-			_vm->playMovie(149);
-			_currMap = 122;
-		} else {
-			_vm->_frameStop = 24;
-			_vm->playMovie(202);
-			_currMap = 121;
-			_nodes[63] = 9;
-		}
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		_vm->showPic(444);
+		break;
+	case 0x445:
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_592() {
+	_vm->processMapInput(59);
+}
+
+void Logic::GPL3_600() {
+	_vm->setMouse();
+	_vm->eraseCursor();
+	_vm->fadeToBlack2();
+	_vm->showPic(106);
+	_vm->drawIcon(4, 0, 12 - _healthOld);
+	_vm->_asMode = false;
+	_nodeNum = 60;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->playMovie(145);
+	_statPlay = 992;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL3_610() {
+	_nodeNum = 61;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_nodes[73] = 0;
+	_nodes[74] = 0;
+	if (_nodes[62] == 0)
+		_nodes[62] = 1;
+	else
+		_vm->_sound = true;
+
+	_vm->playMovie(146);
+	if (_nodes[70] == 9) {
+		_vm->_itemInhibit = true;
 		_vm->_tsIconOnly = true;
-		_vm->playSound(8);
-		_statPlay = 621;
+	}
+
+	_currMap = 115;
+	_vm->playSound(36);
+	_statPlay = 611;
+	_eye = false;
+}
+
+void Logic::GPL3_611() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		dsAll();
+		_vm->playMovie(148);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
 		break;
-	case 621:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
-			_vm->saveAS();
-			_vm->playMovie(178);
-			_vm->restoreAS();
-			_vm->_userInput = 0;
+	case 0x432:
+		_vm->playMovie(147);
+		_inventory[5] = -1;
+		_nodes[30] = 0;
+		_currMap = 116;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x441:
+		// Cascade on purpose
+	case 0x448:
+		_currMap = 10;
+		_vm->_itemInhibit = true;
+		_statPlay = 730;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44B:
+		_currMap = 10;
+		_statPlay = 680;
+		_vm->_loopFlag = true;
+		break;
+	case 0x451:
+		_currMap = 10;
+		_statPlay = 690;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_620() {
+	_nodeNum = 62;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_eye = false;
+	if (_nodes[63] == 0) {
+		_vm->playMovie(149);
+		_currMap = 122;
+	} else {
+		_vm->_frameStop = 24;
+		_vm->playMovie(202);
+		_currMap = 121;
+		_nodes[63] = 9;
+	}
+	_vm->_tsIconOnly = true;
+	_vm->playSound(8);
+	_statPlay = 621;
+}
+
+void Logic::GPL3_621() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		_vm->_userInput = 0;
+		break;
+	case 0x430:
+		_vm->playMovie(150);
+		inventoryAdd(8);
+		_nodes[63] = 1;
+		_vm->playSound(25);
+		_currMap = 121;
+		_vm->_userInput = 0;
+		break;
+	case 0x43E:
+		switch (_nodes[63]) {
+		case 0:
+			_vm->playMovie(149);
 			break;
-		case 0x430:
+		case 1:
 			_vm->playMovie(150);
-			inventoryAdd(8);
-			_nodes[63] = 1;
-			_vm->playSound(25);
-			_currMap = 121;
-			_vm->_userInput = 0;
 			break;
-		case 0x43E:
-			switch (_nodes[63]) {
-			case 0:
-				_vm->playMovie(149);
-				break;
-			case 1:
-				_vm->playMovie(150);
-				break;
-			case 9:
-				_vm->_frameStop = 24;
-				_vm->playMovie(202);
-				_currMap = 121;
-				break;
-			}
-			break;
-		case 0x445:
-			_nodeNum = 56;
-			_vm->_userInput = 0;
-			_vm->_frameStop = 50;
-			enAll();
-			_vm->playMovie(135);
-			_nodes[57] = 1;
-			_vm->playSound(8);
-			_statPlay = 561;
-			_currMap = 106;
-			if (_inventory[16] < 1 && _vm->_wizard)
-				_currMap = 88;
-			break;
-		case 0x452:
-			_statPlay = 630;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		case 9:
+			_vm->_frameStop = 24;
+			_vm->playMovie(202);
+			_currMap = 121;
 			break;
 		}
 		break;
-	case 630:
-		_nodeNum = 63;
-		_vm->drawLocation();
+	case 0x445:
+		_nodeNum = 56;
 		_vm->_userInput = 0;
-		_eye = false;
-		if (_nodes[64] == 1 || !_vm->_wizard) {
-			_nodes[64] = 0;
-			_vm->_sound = true;
-		} else
-			_nodes[64] = true;
+		_vm->_frameStop = 50;
+		enAll();
+		_vm->playMovie(135);
+		_nodes[57] = 1;
+		_vm->playSound(8);
+		_statPlay = 561;
+		_currMap = 106;
+		if (_inventory[16] < 1 && _vm->_wizard)
+			_currMap = 88;
+		break;
+	case 0x452:
+		_statPlay = 630;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_630() {
+	_nodeNum = 63;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_eye = false;
+	if (_nodes[64] == 1 || !_vm->_wizard) {
+		_nodes[64] = 0;
+		_vm->_sound = true;
+	} else
+		_nodes[64] = true;
 
-		_vm->playMovie(151);
-		_currMap = 72;
-		_vm->playSound(40);
-		_statPlay = 631;
+	_vm->playMovie(151);
+	_currMap = 72;
+	_vm->playSound(40);
+	_statPlay = 631;
+}
+
+void Logic::GPL3_631() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_vm->playMovie(10);
+		_statPlay = 50;
+		_vm->_loopFlag = true;
 		break;
-	case 631:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_vm->playMovie(10);
-			_statPlay = 50;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 640:
-		_nodeNum = 64;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[65] || _vm->_wizard) {
-			_vm->_sound = true;
-			_nodes[65] = 0;
-		} else
-			_nodes[65] = 1;
+	}
+}
 
-		_vm->playMovie(152);
-		_currMap = 10;
-		_statPlay = 641;
-		_vm->playSound(28);
+void Logic::GPL3_640() {
+	_nodeNum = 64;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	if (_nodes[65] || _vm->_wizard) {
+		_vm->_sound = true;
+		_nodes[65] = 0;
+	} else
+		_nodes[65] = 1;
+
+	_vm->playMovie(152);
+	_currMap = 10;
+	_statPlay = 641;
+	_vm->playSound(28);
+}
+
+void Logic::GPL3_641() {
+	switch(_vm->_userInput) {
+	case 0x43A:
+		_statPlay = 642;
+		_vm->_zoom = 2;
+		_vm->processMap(64, _vm->_zoom);
+		_vm->_userInput = 0;
 		break;
-	case 641:
-		switch(_vm->_userInput) {
-		case 0x43A:
-			_statPlay = 642;
-			_vm->_zoom = 2;
-			_vm->processMap(64, _vm->_zoom);
-			_vm->_userInput = 0;
-			break;
-		case 0x43E:
-			_vm->_sound= _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x43E:
+		_vm->_sound= _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		break;
-	case 642:
-		_vm->processMapInput(64);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 650:
-		_nodeNum = 65;
-		_eye = false;
-		_vm->_userInput = 0;
-		if (_nodes[66] == 0)
-			_nodes[66] = 1;
-		else {
-			_vm->_sound = true;
-			_nodes[66] = 0;
-		}
-		_vm->playMovie(153);
+	}
+}
+
+void Logic::GPL3_642() {
+	_vm->processMapInput(64);
+}
+
+void Logic::GPL3_650() {
+	_nodeNum = 65;
+	_eye = false;
+	_vm->_userInput = 0;
+	if (_nodes[66] == 0)
+		_nodes[66] = 1;
+	else {
+		_vm->_sound = true;
+		_nodes[66] = 0;
+	}
+	_vm->playMovie(153);
+	_vm->showPic(453);
+	_currMap = 73;
+	_vm->playSound(37);
+	_statPlay = 651;
+}
+
+void Logic::GPL3_651() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
 		_vm->showPic(453);
-		_currMap = 73;
-		_vm->playSound(37);
-		_statPlay = 651;
-		break;
-	case 651:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			_vm->showPic(453);
-			break;
-		case 0x445:
-			_statPlay = 700;
+		break;
+	case 0x445:
+		_statPlay = 700;
+		_vm->_loopFlag = true;
+		break;
+	case 0x446:
+		if (_nodes[68] == 1) {
+			_statPlay = 660;
 			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			if (_nodes[68] == 1) {
-				_statPlay = 660;
-				_vm->_loopFlag = true;
-			} else {
-				_statPlay = 790;
-				_vm->_loopFlag = true;
-			}
-			break;
-		case 0x447:
-			_statPlay = 710;
+		} else {
+			_statPlay = 790;
 			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 660:
-		_nodeNum = 66;
-		_eye = false;
-		_vm->_userInput = 0;
-		if (_nodes[67] == 0)
-			_nodes[67] = 1;
-		else {
-			_vm->_sound = true;
-			_nodes[67] = 0;
-		}
-		_vm->playMovie(154);
-		_currMap = 70;
-		_vm->playSound(40);
-		_statPlay = 661;
-		break;
-	case 661:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_statPlay = 700;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			_vm->_loopFlag = true;
-			_statPlay = (_nodes[68] == 1) ? 650 : 790;
-			break;
-		case 0x447:
-			if (!_vm->_wizard || _nodes[68])
-				_statPlay = 650;
-			else
-				_statPlay = 670;
+	case 0x447:
+		_statPlay = 710;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
 
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+void Logic::GPL3_660() {
+	_nodeNum = 66;
+	_eye = false;
+	_vm->_userInput = 0;
+	if (_nodes[67] == 0)
+		_nodes[67] = 1;
+	else {
+		_vm->_sound = true;
+		_nodes[67] = 0;
+	}
+	_vm->playMovie(154);
+	_currMap = 70;
+	_vm->playSound(40);
+	_statPlay = 661;
+}
+
+void Logic::GPL3_661() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_statPlay = 700;
+		_vm->_loopFlag = true;
 		break;
-	case 670:
-		_nodeNum = 67;
-		_vm->_userInput = 0;
-		_eye = false;
-		_nodes[68] = 1;
-		_vm->_fstFwd = false;
-		_vm->playMovie(155);
-		_currMap = 127;
-		_statPlay = 671;
-		break;
-	case 671:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->_fstFwd = false;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
+	case 0x446:
+		_vm->_loopFlag = true;
+		_statPlay = (_nodes[68] == 1) ? 650 : 790;
+		break;
+	case 0x447:
+		if (!_vm->_wizard || _nodes[68])
 			_statPlay = 650;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+		else
+			_statPlay = 670;
+
+		_vm->_loopFlag = true;
 		break;
-	case 680:
-		_nodeNum = 68;
-		_vm->_userInput = 0;
-		dsAll();
-		_vm->playMovie(156);
-		_statPlay = 993;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_670() {
+	_nodeNum = 67;
+	_vm->_userInput = 0;
+	_eye = false;
+	_nodes[68] = 1;
+	_vm->_fstFwd = false;
+	_vm->playMovie(155);
+	_currMap = 127;
+	_statPlay = 671;
+}
+
+void Logic::GPL3_671() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->_fstFwd = false;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_statPlay = 650;
 		_vm->_loopFlag = true;
 		break;
-	case 690:
-		_vm->_itemInhibit = false;
-		enAll();
-		if (_nodes[70] == 9) {
-			_statPlay = 640;
-			_nodes[73] = 0;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-		} else {
-			_nodeNum = 69;
-			_vm->drawLocation();
+	case 0x446:
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_680() {
+	_nodeNum = 68;
+	_vm->_userInput = 0;
+	dsAll();
+	_vm->playMovie(156);
+	_statPlay = 993;
+	_vm->_loopFlag = true;
+}
+
+void Logic::GPL3_690() {
+	_vm->_itemInhibit = false;
+	enAll();
+	if (_nodes[70] == 9) {
+		_statPlay = 640;
+		_nodes[73] = 0;
+		_vm->_loopFlag = true;
+		_vm->_userInput = 0;
+	} else {
+		_nodeNum = 69;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		_currMap = 119;
+		_vm->_frameStop = 40;
+		_vm->playMovie(157);
+		_vm->playSound(12);
+		_statPlay = 691;
+	}
+}
+
+void Logic::GPL3_691() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->saveAS();
+		_vm->playMovie(178);
+		_vm->restoreAS();
+		_vm->_userInput = 0;
+		break;
+	case 0x439:
+		if (_nodes[70] == 9)
+			_vm->displayIcon(147);
+		else {
+			_vm->_frameStop = 108;
+			_vm->playMovie(158);
+			_vm->_itemInhibit = false;
+			inventoryAdd(17);
+			_nodes[70] = 9;
+			_vm->playSound(23);
 			_vm->_userInput = 0;
-			_currMap = 119;
-			_vm->_frameStop = 40;
-			_vm->playMovie(157);
-			_vm->playSound(12);
-			_statPlay = 691;
+			_currMap = 120;
 		}
 		break;
-	case 691:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
+	case 0x43E:
+		if (_vm->_pMovie == 157)
+			_vm->_frameStop = 40;
+		else if (_vm->_pMovie == 158)
+			_vm->_frameStop = 108;
+
+		if (_vm->_pMovie == 178) {
 			_vm->saveAS();
 			_vm->playMovie(178);
 			_vm->restoreAS();
-			_vm->_userInput = 0;
-			break;
-		case 0x439:
-			if (_nodes[70] == 9)
-				_vm->displayIcon(147);
-			else {
-				_vm->_frameStop = 108;
-				_vm->playMovie(158);
-				_vm->_itemInhibit = false;
-				inventoryAdd(17);
-				_nodes[70] = 9;
-				_vm->playSound(23);
-				_vm->_userInput = 0;
-				_currMap = 120;
-			}
-			break;
-		case 0x43E:
-			if (_vm->_pMovie == 157)
-				_vm->_frameStop = 40;
-			else if (_vm->_pMovie == 158)
-				_vm->_frameStop = 108;
-			
-			if (_vm->_pMovie == 178) {
-				_vm->saveAS();
-				_vm->playMovie(178);
-				_vm->restoreAS();
-			} else
-				_vm->playMovie(_vm->_pMovie);
+		} else
+			_vm->playMovie(_vm->_pMovie);
 
-			break;
-		case 0x441:
-			_vm->_itemInhibit = false;
-			_statPlay = 640;
-			_nodes[73] = 0;
-			_vm->_loopFlag = true;
-			_vm->_userInput = 0;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
-		break;
-	case 692:
-		_vm->processMapInput(69);
 		break;
-	case 700:
-		_nodeNum = 70;
+	case 0x441:
+		_vm->_itemInhibit = false;
+		_statPlay = 640;
+		_nodes[73] = 0;
+		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
-		_eye = false;
-		if (_nodes[71] && _vm->_wizard) {
-			_nodes[71] = 0;
-			_vm->_sound = false;
-		} else
-			_nodes[71] = 1;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_692() {
+	_vm->processMapInput(69);
+}
+
+void Logic::GPL3_700() {
+	_nodeNum = 70;
+	_vm->_userInput = 0;
+	_eye = false;
+	if (_nodes[71] && _vm->_wizard) {
+		_nodes[71] = 0;
+		_vm->_sound = false;
+	} else
+		_nodes[71] = 1;
 
-		_vm->playMovie(164);
-		_currMap = 74;
-		_vm->playSound(10);
-		_statPlay = 701;
+	_vm->playMovie(164);
+	_currMap = 74;
+	_vm->playSound(10);
+	_statPlay = 701;
+}
+
+void Logic::GPL3_701() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_statPlay = 650;
+		_vm->_loopFlag = true;
 		break;
-	case 701:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_statPlay = 650;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			_statPlay = 780;
-			_vm->_loopFlag = true;
-			break;
-		case 0x447:
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x446:
+		_statPlay = 780;
+		_vm->_loopFlag = true;
 		break;
-	case 710:
-		_nodeNum = 71;
-		_vm->_userInput = 0;
-		_eye = false;
-		if (_inventory[8] && _inventory[14])
-			_vm->_sound = true;
-		dsAll();
-		_vm->playMovie(165);
-		_currMap = 10;
-		_vm->setATimer();
-		_statPlay = _vm->_wizard ? 712 : 711;
+	case 0x447:
+		_statPlay = 660;
+		_vm->_loopFlag = true;
 		break;
-	case 711:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_replay = false;
-			_vm->playMovie(166);
-			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
-			_replay = false;
-			_vm->_aTimer = 0;
-			_vm->playMovie(178);
-			_vm->playMovie(166);
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_710() {
+	_nodeNum = 71;
+	_vm->_userInput = 0;
+	_eye = false;
+	if (_inventory[8] && _inventory[14])
+		_vm->_sound = true;
+	dsAll();
+	_vm->playMovie(165);
+	_currMap = 10;
+	_vm->setATimer();
+	_statPlay = _vm->_wizard ? 712 : 711;
+}
+
+void Logic::GPL3_711() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_replay = false;
+		_vm->playMovie(166);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_replay = false;
+		_vm->_aTimer = 0;
+		_vm->playMovie(178);
+		_vm->playMovie(166);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x430:
+		_vm->_aTimer = 0;
+		_nodeNum = 0;
+		_vm->_iconsClosed = true;
+		_vm->_fstFwd = false;
+		_vm->playMovie(167);
+		_vm->_fstFwd = false;
+		_vm->playMovie(170);
+		_vm->playSound(25);
+		endCredits();
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_712() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
+		_replay = false;
+		_vm->playMovie(166);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_replay = false;
+		_vm->_aTimer = 0;
+		_vm->playMovie(178);
+		_vm->playMovie(166);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x430:
+		_vm->_aTimer = 0;
+		if (_nodes[72] != 2) {
+			_vm->playMovie(57);
 			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x430:
-			_vm->_aTimer = 0;
+		} else {
 			_nodeNum = 0;
 			_vm->_iconsClosed = true;
 			_vm->_fstFwd = false;
-			_vm->playMovie(167);
+			_vm->playMovie(55);
 			_vm->_fstFwd = false;
-			_vm->playMovie(170);
+			_vm->playMovie(184);
 			_vm->playSound(25);
 			endCredits();
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
+		_vm->_loopFlag = true;
 		break;
-	case 712:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			_replay = false;
-			_vm->playMovie(166);
-			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
+	case 0x432:
+		_vm->_aTimer = 0;
+		_replay = false;
+		_vm->playMovie(168);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
+		break;
+	case 0x433:
+		if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
 			_replay = false;
-			_vm->_aTimer = 0;
-			_vm->playMovie(178);
 			_vm->playMovie(166);
 			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x430:
-			_vm->_aTimer = 0;
-			if (_nodes[72] != 2) {
-				_vm->playMovie(57);
-				_statPlay = 993;
-			} else {
-				_nodeNum = 0;
-				_vm->_iconsClosed = true;
-				_vm->_fstFwd = false;
-				_vm->playMovie(55);
-				_vm->_fstFwd = false;
-				_vm->playMovie(184);
-				_vm->playSound(25);
-				endCredits();
-			}
-			_vm->_loopFlag = true;
-			break;
-		case 0x432:
-			_vm->_aTimer = 0;
-			_replay = false;
-			_vm->playMovie(168);
-			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x433:
-			if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
-				_replay = false;
-				_vm->playMovie(166);
-				_statPlay = 993;
-			} else {
-				_vm->_aTimer = 0;
-				enAll();
-				_vm->playMovie(169);
-				_statPlay = 580;
-				inventoryDel(11);
-				_nodes[51] = 0;
-			}
-			_vm->_loopFlag = true;
-			break;
-		case 0x436:
+		} else {
 			_vm->_aTimer = 0;
-			_vm->playSound(0);
-			_vm->playMovie(193);
-			_vm->showPic(128);
-			inventoryDel(14);
-			_nodes[72] = 2;
-			_vm->setATimer();
-			break;
+			enAll();
+			_vm->playMovie(169);
+			_statPlay = 580;
+			inventoryDel(11);
+			_nodes[51] = 0;
+		}
+		_vm->_loopFlag = true;
+		break;
+	case 0x436:
+		_vm->_aTimer = 0;
+		_vm->playSound(0);
+		_vm->playMovie(193);
+		_vm->showPic(128);
+		inventoryDel(14);
+		_nodes[72] = 2;
+		_vm->setATimer();
+		break;
 
-		case 0x437:
-			_vm->_aTimer = 0;
-			if (_nodes[72] == 2) {
-				_nodeNum = 0;
-				_vm->_iconsClosed = true;
-				_vm->_fstFwd = false;
-				_vm->playMovie(56);
-				_vm->_fstFwd = false;
-				_vm->playMovie(184);
-				_vm->playSound(25);
-				endCredits();
-				_vm->_quit = true;
-//--				_vm->_quitFlag = true;
-			} else {
-				_vm->playMovie(58);
-				_statPlay = 993;
-			}
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
+	case 0x437:
+		_vm->_aTimer = 0;
+		if (_nodes[72] == 2) {
+			_nodeNum = 0;
+			_vm->_iconsClosed = true;
+			_vm->_fstFwd = false;
+			_vm->playMovie(56);
+			_vm->_fstFwd = false;
+			_vm->playMovie(184);
+			_vm->playSound(25);
+			endCredits();
+			_vm->_quit = true;
+			//--				_vm->_quitFlag = true;
+		} else {
+			_vm->playMovie(58);
+			_statPlay = 993;
 		}
+		_vm->_loopFlag = true;
 		break;
-	case 720:
-		_nodeNum = 72;
-		_vm->_userInput = 0;
-		_eye = false;
-		switch (_nodes[73]) {
-		case 0:
-			_nodes[73] = 1;
-			break;
-		case 1:
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_720() {
+	_nodeNum = 72;
+	_vm->_userInput = 0;
+	_eye = false;
+	switch (_nodes[73]) {
+	case 0:
+		_nodes[73] = 1;
+		break;
+	case 1:
+		_vm->_frameStop = 24;
+		_nodes[73] = 2;
+		break;
+	default:
+		_vm->_frameStop = 24;
+		_nodes[73] = 3;
+		break;
+	}
+	_vm->playMovie(175);
+	_currMap = 118;
+	_vm->playSound(12);
+	_statPlay = 721;
+}
+
+void Logic::GPL3_721() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		if (_nodes[73] > 1)
 			_vm->_frameStop = 24;
-			_nodes[73] = 2;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x441:
+		if (_nodes[73] == 1) {
+			_vm->_itemInhibit = false;
+			_statPlay = 640;
+		} else
+			_statPlay = 680;
+
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x448:
+		_statPlay = (_nodes[73] == 2) ? 730 : 680;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44B:
+		_statPlay = (_nodes[73] == 1) ? 730 : 680;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44C:
+		if (_nodes[73] == 1) {
+			_statPlay = 730;
+			_nodes[74] = 3;
+		} else
+			_statPlay = 680;
+
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_730() {
+	_nodeNum = 73;
+	_vm->_userInput = 0;
+	_eye = false;
+	switch(_nodes[74]) {
+	case 0:
+		_nodes[74] = 1;
+		break;
+	case 1:
+		_vm->_sound = true;
+		_nodes[74] = 2;
+		break;
+	case 2:
+		_vm->_frameStop = 23;
+		_nodes[74] = 3;
+		break;
+	default:
+		_vm->_frameStop = 23;
+		_nodes[74] = 4;
+		break;
+	}
+	_vm->playMovie(176);
+	_currMap = 117;
+	_vm->playSound(36);
+	_statPlay = 731;
+}
+
+void Logic::GPL3_731() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		if (_nodes[74] > 2)
+			_vm->_frameStop = 23;
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x441:
+		switch (_nodes[74]) {
+		case 1:
+		case 2:
+			_statPlay = 720;
+			break;
+		case 3:
+			_statPlay = 720;
+			_nodes[73] = 1;
 			break;
 		default:
-			_vm->_frameStop = 24;
-			_nodes[73] = 3;
+			_statPlay = 680;
 			break;
 		}
-		_vm->playMovie(175);
-		_currMap = 118;
-		_vm->playSound(12);
-		_statPlay = 721;
+		_currMap = 10;
+		_vm->_loopFlag = true;
 		break;
-	case 721:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			if (_nodes[73] > 1)
-				_vm->_frameStop = 24;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x441:
-			if (_nodes[73] == 1) {
-				_vm->_itemInhibit = false;
-				_statPlay = 640;
-			} else
-				_statPlay = 680;
-
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		case 0x448:
-			_statPlay = (_nodes[73] == 2) ? 730 : 680;
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		case 0x44B:
-			_statPlay = (_nodes[73] == 1) ? 730 : 680;
-			_currMap = 10;
-			_vm->_loopFlag = true;
+	case 0x448:
+		switch(_nodes[74]) {
+		case 3:
+			_statPlay = 690;
 			break;
-		case 0x44C:
-			if (_nodes[73] == 1) {
-				_statPlay = 730;
-				_nodes[74] = 3;
-			} else
-				_statPlay = 680;
-
-			_currMap = 10;
-			_vm->_loopFlag = true;
+		case 4:
+			_statPlay = 720;
+			_nodes[73] = 1;
 			break;
 		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			_statPlay = 680;
 			break;
 		}
 		break;
-	case 730:
-		_nodeNum = 73;
-		_vm->_userInput = 0;
-		_eye = false;
+	case 0x44B:
 		switch(_nodes[74]) {
-		case 0:
-			_nodes[74] = 1;
-			break;
 		case 1:
-			_vm->_sound = true;
-			_nodes[74] = 2;
+			_statPlay = 720;
 			break;
-		case 2:
-			_vm->_frameStop = 23;
-			_nodes[74] = 3;
+		case 3:
+		case 4:
+			_statPlay = 720;
+			_nodes[73] = 1;
 			break;
 		default:
-			_vm->_frameStop = 23;
-			_nodes[74] = 4;
+			_statPlay= 680;
 			break;
 		}
-		_vm->playMovie(176);
-		_currMap = 117;
-		_vm->playSound(36);
-		_statPlay = 731;
-		break;
-	case 731:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			if (_nodes[74] > 2)
-				_vm->_frameStop = 23;
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x441:
-			switch (_nodes[74]) {
-			case 1:
-			case 2:
-				_statPlay = 720;
-				break;
-			case 3:
-				_statPlay = 720;
-				_nodes[73] = 1;
-				break;
-			default:
-				_statPlay = 680;
-				break;
-			}
-			_currMap = 10;
-			_vm->_loopFlag = true;
-			break;
-		case 0x448:
-			switch(_nodes[74]) {
-			case 3:
-				_statPlay = 690;
-				break;
-			case 4:
-				_statPlay = 720;
-				_nodes[73] = 1;
-				break;
-			default:
-				_statPlay = 680;
-				break;
-			}
-			break;
-		case 0x44B:
-			switch(_nodes[74]) {
-			case 1:
-				_statPlay = 720;
-				break;
-			case 3:
-			case 4:
-				_statPlay = 720;
-				_nodes[73] = 1;
-				break;
-			default:
-				_statPlay= 680;
-				break;
-			}
 
-			_currMap = 10;
-			_vm->_loopFlag = true;
+		_currMap = 10;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44C:
+		switch(_nodes[74]) {
+		case 1:
+		case 2:
+			_statPlay = 720;
 			break;
-		case 0x44C:
-			switch(_nodes[74]) {
-			case 1:
-			case 2:
-				_statPlay = 720;
-				break;
-			case 4:
-				_statPlay = 720;
-				_nodes[73] = 1;
-				break;
-			default:
-				_statPlay = 680;
-				break;
-			}
+		case 4:
+			_statPlay = 720;
+			_nodes[73] = 1;
 			break;
 		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			_statPlay = 680;
 			break;
 		}
 		break;
-	case 740:
-		_rtnNode = _nodeNum;
-		_nodeNum = 74;
-		_vm->drawLocation();
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_740() {
+	_rtnNode = _nodeNum;
+	_nodeNum = 74;
+	_vm->drawLocation();
+	dsAll();
+	_vm->playMovie(185);
+	_currMap = 10;
+	_vm->setATimer();
+	_statPlay = 741;
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL3_741() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
 		dsAll();
-		_vm->playMovie(185);
-		_currMap = 10;
-		_vm->setATimer();
-		_statPlay = 741;
-		_vm->_userInput = 0;
+		_vm->playMovie(188);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
 		break;
-	case 741:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			dsAll();
-			_vm->playMovie(188);
+	case 0x428:
+	case 0x429:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->_aTimer = 0;
+		_vm->playMovie(178);
+		_vm->_loopFlag = true;
+		_vm->_userInput = 753;
+		break;
+	case 0x432:
+		if (_nodes[75]) {
+			_vm->_sound = false;
+			_nodes[75] = false;
+		} else
+			_nodes[75] = true;
+		break;
+	case 0x437:
+		_vm->_loopFlag = true;
+		if (wound()) {
+			_vm->_frameStop = 88;
+			_vm->playMovie(187);
+			_statPlay = 570;
+			_nodes[58] = 1;
+		} else {
+			_vm->_frameStop = 78;
+			_vm->playMovie(187);
 			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x428:
-		case 0x429:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
-			_vm->_aTimer = 0;
-			_vm->playMovie(178);
-			_vm->_loopFlag = true;
-			_vm->_userInput = 753;
-			break;
-		case 0x432:
-			if (_nodes[75]) {
-				_vm->_sound = false;
-				_nodes[75] = false;
-			} else
-				_nodes[75] = true;
-			break;
-		case 0x437:
-			_vm->_loopFlag = true;
-			if (wound()) {
-				_vm->_frameStop = 88;
-				_vm->playMovie(187);
-				_statPlay = 570;
-				_nodes[58] = 1;
-			} else {
-				_vm->_frameStop = 78;
-				_vm->playMovie(187);
-				_statPlay = 993;
-			}
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 760:
-		_nodeNum = 76;
-		_eye = false;
-		_vm->_userInput = 0;
-		_vm->playMovie(189);
-		_currMap = 126;
-		_vm->playSound(21);
-		_statPlay = 761;
-		break;
-	case 761:
-		switch(_vm->_userInput) {
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			_vm->playMovie(_vm->_pMovie);
-			break;
-		case 0x445:
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		case 0x44D:
-			_vm->playMovie(191);
-			_nodes[68] = 2;
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		case 0x44E:
-			_vm->playMovie(192);
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		case 0x458:
-			_vm->playMovie(190);
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
-	case 780:
-		_nodeNum = 78;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		_eye = false;
-		_vm->playMovie(171);
+	}
+}
+
+void Logic::GPL3_760() {
+	_nodeNum = 76;
+	_eye = false;
+	_vm->_userInput = 0;
+	_vm->playMovie(189);
+	_currMap = 126;
+	_vm->playSound(21);
+	_statPlay = 761;
+}
+
+void Logic::GPL3_761() {
+	switch(_vm->_userInput) {
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		_vm->playMovie(_vm->_pMovie);
+		break;
+	case 0x445:
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44D:
+		_vm->playMovie(191);
+		_nodes[68] = 2;
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	case 0x44E:
+		_vm->playMovie(192);
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	case 0x458:
+		_vm->playMovie(190);
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_780() {
+	_nodeNum = 78;
+	_vm->drawLocation();
+	_vm->_userInput = 0;
+	_eye = false;
+	_vm->playMovie(171);
+	_currMap = 124;
+	_vm->playSound(40);
+	_statPlay = 781;
+}
+
+void Logic::GPL3_781() {
+	switch(_vm->_userInput) {
+	case 0x428:
+	case 0x42A:
+		inventoryDel(_vm->_userInput - 0x428);
+		_vm->_frameStop = 64;
+		_vm->playMovie(173);
+		_vm->showPic(471);
 		_currMap = 124;
-		_vm->playSound(40);
-		_statPlay = 781;
 		break;
-	case 781:
-		switch(_vm->_userInput) {
-		case 0x428:
-		case 0x42A:
-			inventoryDel(_vm->_userInput - 0x428);
+	case 0x429:
+		if (_vm->_wizard) {
 			_vm->_frameStop = 64;
 			_vm->playMovie(173);
-			_vm->showPic(471);
-			_currMap = 124;
-			break;
-		case 0x429:
-			if (_vm->_wizard) {
-				_vm->_frameStop = 64;
-				_vm->playMovie(173);
-				inventoryDel(1);
-			} else {
-				_vm->_frameStop = 66;
-				_vm->_fstFwd = false;
-				_vm->playMovie(172);
-				_vm->_fstFwd = true;
-				_vm->playMovie(201);
-			}
+			inventoryDel(1);
+		} else {
+			_vm->_frameStop = 66;
+			_vm->_fstFwd = false;
+			_vm->playMovie(172);
+			_vm->_fstFwd = true;
+			_vm->playMovie(201);
+		}
 
-			_vm->fShowPic(471);
-			_currMap = 124;
-			break;
-		case 0x439:
+		_vm->fShowPic(471);
+		_currMap = 124;
+		break;
+	case 0x439:
+		_vm->_frameStop = 59;
+		_vm->_fstFwd = false;
+		_vm->playMovie(174);
+		_vm->_fstFwd = true;
+		_vm->playMovie(201);
+		_vm->fShowPic(471);
+		_currMap = 124;
+		break;
+	case 0x43E:
+		_vm->_sound = _vm->_lastSound;
+		if (_vm->_pMovie == 173)
+			_vm->_frameStop = 64;
+		if (_vm->_pMovie == 201) {
 			_vm->_frameStop = 59;
 			_vm->_fstFwd = false;
 			_vm->playMovie(174);
 			_vm->_fstFwd = true;
 			_vm->playMovie(201);
+		} else {
+			_vm->playMovie(_vm->_pMovie);
+		}
+		if (_vm->_pMovie != 171) {
 			_vm->fShowPic(471);
 			_currMap = 124;
-			break;
-		case 0x43E:
-			_vm->_sound = _vm->_lastSound;
-			if (_vm->_pMovie == 173)
-				_vm->_frameStop = 64;
-			if (_vm->_pMovie == 201) {
-				_vm->_frameStop = 59;
-				_vm->_fstFwd = false;
-				_vm->playMovie(174);
-				_vm->_fstFwd = true;
-				_vm->playMovie(201);
-			} else {
-				_vm->playMovie(_vm->_pMovie);
-			}
-			if (_vm->_pMovie != 171) {
-				_vm->fShowPic(471);
-				_currMap = 124;
-			}
-			break;
-		case 0x445:
-			_statPlay = 660;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			_statPlay = (_nodes[68] == 1) ? 760 : 660;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
 		}
 		break;
-	case 790:
-		_nodeNum = 79;
-		_vm->drawLocation();
+	case 0x445:
+		_statPlay = 660;
+		_vm->_loopFlag = true;
+		break;
+	case 0x446:
+		_statPlay = (_nodes[68] == 1) ? 760 : 660;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
+void Logic::GPL3_790() {
+	_nodeNum = 79;
+	_vm->drawLocation();
+	dsAll();
+	_vm->playMovie(4);
+	_currMap = 8;
+	_statPlay = 791;
+	_vm->setATimer();
+	_vm->_userInput = 0;
+}
+
+void Logic::GPL3_791() {
+	switch(_vm->_userInput) {
+	case 0x2F1:
 		dsAll();
-		_vm->playMovie(4);
-		_currMap = 8;
-		_statPlay = 791;
-		_vm->setATimer();
-		_vm->_userInput = 0;
+		_vm->playMovie(204);
+		_statPlay = 993;
+		_vm->_loopFlag = true;
 		break;
-	case 791:
-		switch(_vm->_userInput) {
-		case 0x2F1:
-			dsAll();
-			_vm->playMovie(204);
-			_statPlay = 993;
-			_vm->_loopFlag = true;
-			break;
-		case 0x445:
-			enAll();
-			_vm->playMovie(10);
-			_statPlay = 50;
-			_vm->_loopFlag = true;
-			break;
-		case 0x446:
-			enAll();
-			_vm->playMovie(10);
-			_statPlay = 520;
-			_vm->_loopFlag = true;
-			break;
-		default:
-			if (_vm->_userInput)
-				debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
-			break;
-		}
+	case 0x445:
+		enAll();
+		_vm->playMovie(10);
+		_statPlay = 50;
+		_vm->_loopFlag = true;
+		break;
+	case 0x446:
+		enAll();
+		_vm->playMovie(10);
+		_statPlay = 520;
+		_vm->_loopFlag = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 4184d9576c..7de011c8c2 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -182,8 +182,9 @@ Common::Error KingdomGame::run() {
 			if (_logic->_statPlay > 249 && _logic->_statPlay < 500)
 				_logic->executeOpcode();
 			if (_logic->_statPlay > 499 && _logic->_statPlay < 900) {
+				// TODO: only initialize useful opcodes
 				if (!isDemo())
-					_logic->GPLogic3();
+					_logic->executeOpcode();
 				else
 					warning("Unexpected GPL3 opcode found in demo: %d", _logic->_statPlay);
 			}
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 804b931c4a..a70f92f5f6 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -203,6 +203,73 @@ void Logic::initOpcodes() {
 	_opCodes[482] = &Logic::GPL2_482;
 	_opCodes[490] = &Logic::GPL2_490;
 	_opCodes[491] = &Logic::GPL2_491;
+
+	_opCodes[500] = &Logic::GPL3_500;
+	_opCodes[501] = &Logic::GPL3_501;
+	_opCodes[502] = &Logic::GPL3_502;
+	_opCodes[510] = &Logic::GPL3_510;
+	_opCodes[511] = &Logic::GPL3_511;
+	_opCodes[512] = &Logic::GPL3_512;
+	_opCodes[520] = &Logic::GPL3_520;
+	_opCodes[521] = &Logic::GPL3_521;
+	_opCodes[522] = &Logic::GPL3_522;
+	_opCodes[530] = &Logic::GPL3_530;
+	_opCodes[531] = &Logic::GPL3_531;
+	_opCodes[540] = &Logic::GPL3_540;
+	_opCodes[541] = &Logic::GPL3_541;
+	_opCodes[542] = &Logic::GPL3_542;
+	_opCodes[550] = &Logic::GPL3_550;
+	_opCodes[551] = &Logic::GPL3_551;
+	_opCodes[552] = &Logic::GPL3_552;
+	_opCodes[560] = &Logic::GPL3_560;
+	_opCodes[561] = &Logic::GPL3_561;
+	_opCodes[562] = &Logic::GPL3_562;
+	_opCodes[570] = &Logic::GPL3_570;
+	_opCodes[571] = &Logic::GPL3_571;
+	_opCodes[572] = &Logic::GPL3_572;
+	_opCodes[580] = &Logic::GPL3_580;
+	_opCodes[581] = &Logic::GPL3_581;
+	_opCodes[582] = &Logic::GPL3_582;
+	_opCodes[590] = &Logic::GPL3_590;
+	_opCodes[591] = &Logic::GPL3_591;
+	_opCodes[592] = &Logic::GPL3_592;
+	_opCodes[600] = &Logic::GPL3_600;
+	_opCodes[610] = &Logic::GPL3_610;
+	_opCodes[611] = &Logic::GPL3_611;
+	_opCodes[620] = &Logic::GPL3_620;
+	_opCodes[621] = &Logic::GPL3_621;
+	_opCodes[630] = &Logic::GPL3_630;
+	_opCodes[631] = &Logic::GPL3_631;
+	_opCodes[640] = &Logic::GPL3_640;
+	_opCodes[641] = &Logic::GPL3_641;
+	_opCodes[642] = &Logic::GPL3_642;
+	_opCodes[650] = &Logic::GPL3_650;
+	_opCodes[651] = &Logic::GPL3_651;
+	_opCodes[660] = &Logic::GPL3_660;
+	_opCodes[661] = &Logic::GPL3_661;
+	_opCodes[670] = &Logic::GPL3_670;
+	_opCodes[671] = &Logic::GPL3_671;
+	_opCodes[680] = &Logic::GPL3_680;
+	_opCodes[690] = &Logic::GPL3_690;
+	_opCodes[691] = &Logic::GPL3_691;
+	_opCodes[692] = &Logic::GPL3_692;
+	_opCodes[700] = &Logic::GPL3_700;
+	_opCodes[701] = &Logic::GPL3_701;
+	_opCodes[710] = &Logic::GPL3_710;
+	_opCodes[711] = &Logic::GPL3_711;
+	_opCodes[712] = &Logic::GPL3_712;
+	_opCodes[720] = &Logic::GPL3_720;
+	_opCodes[721] = &Logic::GPL3_721;
+	_opCodes[730] = &Logic::GPL3_730;
+	_opCodes[731] = &Logic::GPL3_731;
+	_opCodes[740] = &Logic::GPL3_740;
+	_opCodes[741] = &Logic::GPL3_741;
+	_opCodes[760] = &Logic::GPL3_760;
+	_opCodes[761] = &Logic::GPL3_761;
+	_opCodes[780] = &Logic::GPL3_780;
+	_opCodes[781] = &Logic::GPL3_781;
+	_opCodes[790] = &Logic::GPL3_790;
+	_opCodes[791] = &Logic::GPL3_791;
 }
 
 void Logic::enAll() {
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index dacb110861..77141a740b 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -163,6 +163,73 @@ private:
 	void GPL2_490();
 	void GPL2_491();
 
+	void GPL3_500();
+	void GPL3_501();
+	void GPL3_502();
+	void GPL3_510();
+	void GPL3_511();
+	void GPL3_512();
+	void GPL3_520();
+	void GPL3_521();
+	void GPL3_522();
+	void GPL3_530();
+	void GPL3_531();
+	void GPL3_540();
+	void GPL3_541();
+	void GPL3_542();
+	void GPL3_550();
+	void GPL3_551();
+	void GPL3_552();
+	void GPL3_560();
+	void GPL3_561();
+	void GPL3_562();
+	void GPL3_570();
+	void GPL3_571();
+	void GPL3_572();
+	void GPL3_580();
+	void GPL3_581();
+	void GPL3_582();
+	void GPL3_590();
+	void GPL3_591();
+	void GPL3_592();
+	void GPL3_600();
+	void GPL3_610();
+	void GPL3_611();
+	void GPL3_620();
+	void GPL3_621();
+	void GPL3_630();
+	void GPL3_631();
+	void GPL3_640();
+	void GPL3_641();
+	void GPL3_642();
+	void GPL3_650();
+	void GPL3_651();
+	void GPL3_660();
+	void GPL3_661();
+	void GPL3_670();
+	void GPL3_671();
+	void GPL3_680();
+	void GPL3_690();
+	void GPL3_691();
+	void GPL3_692();
+	void GPL3_700();
+	void GPL3_701();
+	void GPL3_710();
+	void GPL3_711();
+	void GPL3_712();
+	void GPL3_720();
+	void GPL3_721();
+	void GPL3_730();
+	void GPL3_731();
+	void GPL3_740();
+	void GPL3_741();
+	void GPL3_760();
+	void GPL3_761();
+	void GPL3_780();
+	void GPL3_781();
+	void GPL3_790();
+	void GPL3_791();
+
 public:
 	int _statPlay;
 	int _oldStatPlay;


Commit: 36493f5bc25b5589d0e6056a9f0efb68e40bae9c
    https://github.com/scummvm/scummvm/commit/36493f5bc25b5589d0e6056a9f0efb68e40bae9c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Refactor GPL4

Changed paths:
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index f6984d3ed6..4d4debeecf 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -25,214 +25,46 @@
 
 namespace Kingdom {
 
-void Logic::GPLogic4() {
-	switch(_statPlay) {
-	case 900:
-		if (_vm->_aTimer > 0) {
-			_vm->playSound(0);
-			_vm->_aTimer = 133;
-		}
-		if (_vm->_asMode) {
-			_vm->switchMtoA();
-			_mapStat = 0;
-			_oldStatPlay--;
-			_vm->_asMode = false;
-		}
-		_vm->saveAS();
-		_vm->fadeToBlack2();
-
-		if (_health == 10 || _health == 6 || _health == 2) {
-			_vm->showPic(121);
-			_vm->_bTimer = 38;
-			_vm->readMouse();
-			while (_vm->_bTimer && !_vm->_mouseButton) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-				_vm->readMouse();
-			}
-			
-			if (_vm->_aTimer > 0)
-				_vm->setATimer();
-			
-			_vm->_userInput = 0;
-			GPLogic4_SP901();
-		} else {
-			if (_vm->_aTimer > 0) {
-				_vm->setATimer();
-				_vm->_aTimer = 133;
-			}
-			_vm->showPic(120);
-			_statPlay = 901;
-		}
-		break;
-	case 901:
-		GPLogic4_SP901();
-		break;
-	case 991:
-		_currMap = 10;
-		_vm->_userInput = 0;
+void Logic::GPL4_900() {
+	if (_vm->_aTimer > 0) {
 		_vm->playSound(0);
-		if (_health == 10 || _health == 6 || _health == 2)
-			_health -= 2;
-		else
-			_health -= 4;
-		
-		if (_health == 0) {
-			_vm->playMovie(194);
-			_vm->_noIFScreen = true;
-			_vm->fShowPic(107);
-			_currMap = 3;
-			dsAll();
-			_pouch = false;
-			_vm->playSound(1);
-			memset(_inventory, -1, 19);
-			_statPlay = 994;
-		} else {
-			_vm->_bTimer = 36;
-			while(_vm->_bTimer) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-			}
-			
-			_vm->_loopFlag = true;
-			if (_nodes[29] == 1) {
-				_nodes[29] = 0;
-				_nodes[49] = 0;
-			}
+		_vm->_aTimer = 133;
+	}
+	if (_vm->_asMode) {
+		_vm->switchMtoA();
+		_mapStat = 0;
+		_oldStatPlay--;
+		_vm->_asMode = false;
+	}
+	_vm->saveAS();
+	_vm->fadeToBlack2();
 
-			_vm->_itemInhibit = false;
-			_tideCntl = false;
-			_vm->drawPic(179);
-			_vm->_skylarTimer = 0;
-			_vm->_skylarTimerFlag = false;
-			enAll();
-			_vm->_mapEx = true;
-			_nodeNum = 5;
-			_vm->drawLocation();
-			_vm->playSound(0);
-			if (_nodes[5] > 0) {
-				_vm->playMovie(197);
-				_resurrect = true;
-			}
-			inventoryDel(12);
-			_statPlay = 50;
+	if (_health == 10 || _health == 6 || _health == 2) {
+		_vm->showPic(121);
+		_vm->_bTimer = 38;
+		_vm->readMouse();
+		while (_vm->_bTimer && !_vm->_mouseButton) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+			_vm->readMouse();
 		}
-		break;
-	case 992:
-		_currMap = 10;
-		_vm->_userInput = 0;
-		_vm->playSound(0);
-		if (_health == 10 || _health == 6 || _health == 2)
-			_health -= 2;
-		else
-			_health -= 4;
-		
-		if (_health == 0) {
-			_vm->playMovie(194);
-			_vm->_noIFScreen = true;
-			_vm->fShowPic(107);
-			_currMap = 3;
-			dsAll();
-			_pouch = false;
-			_vm->playSound(1);
-			memset(_inventory, -1, 19);
-			_statPlay = 994;
-		} else {
-			_vm->_bTimer = 36;
-			while(_vm->_bTimer != 0) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-			}
 
-			_vm->_loopFlag = true;
-			if (_nodes[29] == 1) {
-				_nodes[29] = 0;
-				_nodes[49] = 0;
-			}
+		if (_vm->_aTimer > 0)
+			_vm->setATimer();
 
-			_vm->_itemInhibit = false;
-			_tideCntl = false;
-			_vm->drawPic(179);
-			_vm->_skylarTimer = 0;
-			_vm->_skylarTimerFlag = false;
-			enAll();
-			_vm->_mapEx = true;
-			_nodeNum = 27;
-			_vm->drawLocation();
-			_resurrect = true;
-			_vm->playSound(0);
-			_vm->playMovie(195);
-			inventoryDel(12);
-			_statPlay = 270;
-		}
-		break;
-	case 993:
-		_currMap = 10;
 		_vm->_userInput = 0;
-		_vm->playSound(0);
-		if (_health == 10 || _health == 6 || _health == 2)
-			_health -= 2;
-		else
-			_health -= 4;
-		
-		if (_health == 0) {
-			_vm->playMovie(194);
-			_vm->_noIFScreen = true;
-			_vm->fShowPic(107);
-			_currMap = 3;
-			dsAll();
-			_pouch = false;
-			_vm->playSound(1);
-			memset(_inventory, -1, 19);
-			_statPlay = 994;
-		} else {
-			_vm->_bTimer = 36;
-			while (_vm->_bTimer != 0) {
-				_vm->checkTimers();
-				_vm->refreshSound();
-			}
-			
-			_vm->_loopFlag = true;
-			if (_nodes[29] == 1) {
-				_nodes[29] = 0;
-				_nodes[49] = 0;
-			}
-			if (_nodes[68] == 1)
-				_nodes[68] = 0;
-
-			_vm->_itemInhibit = false;
-			_tideCntl = false;
-			_vm->drawPic(179);
-			_vm->_skylarTimer = 0;
-			_vm->_skylarTimerFlag = false;
-			enAll();
-			_vm->_mapEx = true;
-			_nodeNum = 52;
-			_vm->drawLocation();
-			_resurrect = true;
-			_vm->playSound(0);
-			_vm->playMovie(196);
-			inventoryDel(12);
-			_statPlay = 520;
-		}
-		break;
-	case 994:
-		switch(_vm->_userInput) {
-		case 0x190:
-			_vm->initPlay();
-			// TODO _QuitFlag = 1;
-			_vm->_quit = true;
-			break;
-		case 0x191:
-			// TODO _QuitFlag = 2;
-			_vm->_quit = true;
-			break;
+		GPL4_901();
+	} else {
+		if (_vm->_aTimer > 0) {
+			_vm->setATimer();
+			_vm->_aTimer = 133;
 		}
-		break;
+		_vm->showPic(120);
+		_statPlay = 901;
 	}
 }
 
-void Logic::GPLogic4_SP901() {
+void Logic::GPL4_901() {
 	_vm->setMouse();
 	_vm->eraseCursor();
 	_vm->fadeToBlack2();
@@ -242,7 +74,7 @@ void Logic::GPLogic4_SP901() {
 		_vm->drawPic(178);
 	else
 		_vm->drawPic(179);
-	
+
 	_vm->_iconRedraw = true;
 	if (_vm->_userInput == 0x2F1) {
 		_vm->_asMode = false;
@@ -270,4 +102,173 @@ void Logic::GPLogic4_SP901() {
 	}
 }
 
+void Logic::GPL4_991() {
+	_currMap = 10;
+	_vm->_userInput = 0;
+	_vm->playSound(0);
+	if (_health == 10 || _health == 6 || _health == 2)
+		_health -= 2;
+	else
+		_health -= 4;
+
+	if (_health == 0) {
+		_vm->playMovie(194);
+		_vm->_noIFScreen = true;
+		_vm->fShowPic(107);
+		_currMap = 3;
+		dsAll();
+		_pouch = false;
+		_vm->playSound(1);
+		memset(_inventory, -1, 19);
+		_statPlay = 994;
+	} else {
+		_vm->_bTimer = 36;
+		while(_vm->_bTimer) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+		}
+
+		_vm->_loopFlag = true;
+		if (_nodes[29] == 1) {
+			_nodes[29] = 0;
+			_nodes[49] = 0;
+		}
+
+		_vm->_itemInhibit = false;
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->_skylarTimer = 0;
+		_vm->_skylarTimerFlag = false;
+		enAll();
+		_vm->_mapEx = true;
+		_nodeNum = 5;
+		_vm->drawLocation();
+		_vm->playSound(0);
+		if (_nodes[5] > 0) {
+			_vm->playMovie(197);
+			_resurrect = true;
+		}
+		inventoryDel(12);
+		_statPlay = 50;
+	}
+}
+
+void Logic::GPL4_992() {
+	_currMap = 10;
+	_vm->_userInput = 0;
+	_vm->playSound(0);
+	if (_health == 10 || _health == 6 || _health == 2)
+		_health -= 2;
+	else
+		_health -= 4;
+
+	if (_health == 0) {
+		_vm->playMovie(194);
+		_vm->_noIFScreen = true;
+		_vm->fShowPic(107);
+		_currMap = 3;
+		dsAll();
+		_pouch = false;
+		_vm->playSound(1);
+		memset(_inventory, -1, 19);
+		_statPlay = 994;
+	} else {
+		_vm->_bTimer = 36;
+		while(_vm->_bTimer != 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+		}
+
+		_vm->_loopFlag = true;
+		if (_nodes[29] == 1) {
+			_nodes[29] = 0;
+			_nodes[49] = 0;
+		}
+
+		_vm->_itemInhibit = false;
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->_skylarTimer = 0;
+		_vm->_skylarTimerFlag = false;
+		enAll();
+		_vm->_mapEx = true;
+		_nodeNum = 27;
+		_vm->drawLocation();
+		_resurrect = true;
+		_vm->playSound(0);
+		_vm->playMovie(195);
+		inventoryDel(12);
+		_statPlay = 270;
+	}
+}
+
+void Logic::GPL4_993() {
+	_currMap = 10;
+	_vm->_userInput = 0;
+	_vm->playSound(0);
+	if (_health == 10 || _health == 6 || _health == 2)
+		_health -= 2;
+	else
+		_health -= 4;
+
+	if (_health == 0) {
+		_vm->playMovie(194);
+		_vm->_noIFScreen = true;
+		_vm->fShowPic(107);
+		_currMap = 3;
+		dsAll();
+		_pouch = false;
+		_vm->playSound(1);
+		memset(_inventory, -1, 19);
+		_statPlay = 994;
+	} else {
+		_vm->_bTimer = 36;
+		while (_vm->_bTimer != 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+		}
+
+		_vm->_loopFlag = true;
+		if (_nodes[29] == 1) {
+			_nodes[29] = 0;
+			_nodes[49] = 0;
+		}
+		if (_nodes[68] == 1)
+			_nodes[68] = 0;
+
+		_vm->_itemInhibit = false;
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->_skylarTimer = 0;
+		_vm->_skylarTimerFlag = false;
+		enAll();
+		_vm->_mapEx = true;
+		_nodeNum = 52;
+		_vm->drawLocation();
+		_resurrect = true;
+		_vm->playSound(0);
+		_vm->playMovie(196);
+		inventoryDel(12);
+		_statPlay = 520;
+	}
+}
+
+void Logic::GPL4_994() {
+	switch(_vm->_userInput) {
+	case 0x190:
+		_vm->initPlay();
+		// TODO _QuitFlag = 1;
+		_vm->_quit = true;
+		break;
+	case 0x191:
+		// TODO _QuitFlag = 2;
+		_vm->_quit = true;
+		break;
+	default:
+		if (_vm->_userInput)
+			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+		break;
+	}
+}
+
 } // Namespace
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 7de011c8c2..ba4f5fb796 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -190,7 +190,7 @@ Common::Error KingdomGame::run() {
 			}
 
 			if (_logic->_statPlay > 899)
-				_logic->GPLogic4();
+				_logic->executeOpcode();
 		}
 
 		if (!_loopFlag)
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index a70f92f5f6..196dc1bbe5 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -270,6 +270,13 @@ void Logic::initOpcodes() {
 	_opCodes[781] = &Logic::GPL3_781;
 	_opCodes[790] = &Logic::GPL3_790;
 	_opCodes[791] = &Logic::GPL3_791;
+
+	_opCodes[900] = &Logic::GPL4_900;
+	_opCodes[901] = &Logic::GPL4_901;
+	_opCodes[991] = &Logic::GPL4_991;
+	_opCodes[992] = &Logic::GPL4_992;
+	_opCodes[993] = &Logic::GPL4_993;
+	_opCodes[994] = &Logic::GPL4_994;
 }
 
 void Logic::enAll() {
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 77141a740b..176f90e00b 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -230,6 +230,13 @@ private:
 	void GPL3_790();
 	void GPL3_791();
 
+	void GPL4_900();
+	void GPL4_901();
+	void GPL4_991();
+	void GPL4_992();
+	void GPL4_993();
+	void GPL4_994();
+
 public:
 	int _statPlay;
 	int _oldStatPlay;
@@ -267,7 +274,6 @@ public:
 	void GPLogic1_SubSP10();
 	void GPLogic1_SubSP121();
 	void GPLogic2_SubSP361();
-	void GPLogic4_SP901();
 	bool chkDesertObstacles();
 	void increaseHealth();
 	void endCredits();
@@ -277,8 +283,6 @@ public:
 	explicit Logic(Kingdom::KingdomGame *vm);
 	virtual ~Logic(void) {}
 
-	void GPLogic3();
-	void GPLogic4();
 	void gameHelp();
 	void inventoryDel(int item);
 	void inventoryAdd(int item);


Commit: a9216adcd854755128c972c57486463bc776d6bd
    https://github.com/scummvm/scummvm/commit/a9216adcd854755128c972c57486463bc776d6bd
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Start splitting Demo and Full DOS versions

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index ba4f5fb796..61e87443b9 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -177,18 +177,15 @@ Common::Error KingdomGame::run() {
 		_loopFlag = false;
 		_logic->gameHelp();
 		if (_gameMode == 0) {
+			// Same behavior than in the original. Switching from a
+			// group to a higher one skips refreshScreen and (eventually)
+			// getUserInput
 			if (_logic->_statPlay < 250)
 				_logic->executeOpcode();
 			if (_logic->_statPlay > 249 && _logic->_statPlay < 500)
 				_logic->executeOpcode();
-			if (_logic->_statPlay > 499 && _logic->_statPlay < 900) {
-				// TODO: only initialize useful opcodes
-				if (!isDemo())
-					_logic->executeOpcode();
-				else
-					warning("Unexpected GPL3 opcode found in demo: %d", _logic->_statPlay);
-			}
-
+			if (_logic->_statPlay > 499 && _logic->_statPlay < 900)
+				_logic->executeOpcode();
 			if (_logic->_statPlay > 899)
 				_logic->executeOpcode();
 		}
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 196dc1bbe5..2a9321121b 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -78,7 +78,6 @@ void Logic::initPlay() {
 	initOpcodes();
 }
 
-#define OPCODE(i, x)   _opcodes_opcodesGob[i]._OPCODEGOB(OPCODEVER, x)
 void Logic::initOpcodes() {
 	_opCodes[10] = &Logic::GPL1_10;
 	_opCodes[11] = &Logic::GPL1_11;
@@ -204,6 +203,25 @@ void Logic::initOpcodes() {
 	_opCodes[490] = &Logic::GPL2_490;
 	_opCodes[491] = &Logic::GPL2_491;
 
+	_opCodes[900] = &Logic::GPL4_900;
+	_opCodes[901] = &Logic::GPL4_901;
+	_opCodes[991] = &Logic::GPL4_991;
+	_opCodes[992] = &Logic::GPL4_992;
+	_opCodes[993] = &Logic::GPL4_993;
+	_opCodes[994] = &Logic::GPL4_994;
+
+	if (_vm->isDemo())
+		initOpcodesDemo();
+	else
+		initOpcodesFull();
+	
+}
+
+void Logic::initOpcodesDemo() {
+
+}
+
+void Logic::initOpcodesFull() {
 	_opCodes[500] = &Logic::GPL3_500;
 	_opCodes[501] = &Logic::GPL3_501;
 	_opCodes[502] = &Logic::GPL3_502;
@@ -270,13 +288,6 @@ void Logic::initOpcodes() {
 	_opCodes[781] = &Logic::GPL3_781;
 	_opCodes[790] = &Logic::GPL3_790;
 	_opCodes[791] = &Logic::GPL3_791;
-
-	_opCodes[900] = &Logic::GPL4_900;
-	_opCodes[901] = &Logic::GPL4_901;
-	_opCodes[991] = &Logic::GPL4_991;
-	_opCodes[992] = &Logic::GPL4_992;
-	_opCodes[993] = &Logic::GPL4_993;
-	_opCodes[994] = &Logic::GPL4_994;
 }
 
 void Logic::enAll() {
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 176f90e00b..088fb32f9c 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -38,6 +38,8 @@ private:
 
 	Common::HashMap<int, Opcode> _opCodes;
 	void initOpcodes();
+	void initOpcodesDemo();
+	void initOpcodesFull();
 
 	void GPL1_10();
 	void GPL1_11();


Commit: 8327f028c4ec09963dce85bd86a45ee88ae4ec0c
    https://github.com/scummvm/scummvm/commit/8327f028c4ec09963dce85bd86a45ee88ae4ec0c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement some logic changes in demo for opcodes 71 and 121

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 217ffdee03..fdad590fce 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -388,15 +388,17 @@ void Logic::GPL1_70() {
 }
 
 void Logic::GPL1_71() {
+	int nodeIdx = (_vm->isDemo()) ? 5 : 7;
+
 	switch(_vm->_userInput) {
 	case 0x42F:
-		if (_nodes[7] == 9) {
+		if (_nodes[nodeIdx] == 9) {
 			_vm->displayIcon(137);
 		} else {
 			_vm->playMovie(12);
 			_vm->playSound(30);
 			inventoryAdd(7);
-			_nodes[7] = 9;
+			_nodes[nodeIdx] = 9;
 			_currMap = 10;
 		}
 		_vm->_userInput = 0;
@@ -689,21 +691,10 @@ void Logic::GPL1_120() {
 }
 
 void Logic::GPL1_121() {
+	int nodeIdx = (_vm->isDemo()) ? 10 : 12;
 	switch (_vm->_userInput) {
-	case 0x445:
-		_statPlay = 150;
-		_vm->_loopFlag = true;
-		_eye = true;
-		_vm->_userInput = 0;
-		break;
-	case 0x446:
-		_statPlay = 80;
-		_vm->_loopFlag = true;
-		_eye = true;
-		_vm->_userInput = 0;
-		break;
 	case 0x437:
-		if (_nodes[12] == 9) {
+		if (_nodes[nodeIdx] == 9) {
 			_vm->displayIcon(145);
 			_vm->_userInput = 0;
 		} else
@@ -718,6 +709,18 @@ void Logic::GPL1_121() {
 			_vm->playSound(3);
 		}
 		break;
+	case 0x445:
+		_statPlay = 150;
+		_vm->_loopFlag = true;
+		_eye = true;
+		_vm->_userInput = 0;
+		break;
+	case 0x446:
+		_statPlay = 80;
+		_vm->_loopFlag = true;
+		_eye = true;
+		_vm->_userInput = 0;
+		break;
 	default:
 		if (_vm->_userInput)
 			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
@@ -1459,14 +1462,38 @@ void Logic::GPLogic1_SubSP121() {
 		_vm->checkMainScreen();
 		_vm->readMouse();
 	}
-	
-	_vm->playSound(23);
-	inventoryAdd(15);
-	_currMap = 10;
-	_vm->fShowPic(150);
-	_nodes[12] = 9;
-	_vm->playSound(3);
-	_currMap = 15;
+
+	if (!_vm->isDemo()) {
+		_vm->playSound(23);
+		inventoryAdd(15);
+		_currMap = 10;
+		_vm->fShowPic(150);
+		_nodes[12] = 9;
+		_vm->playSound(3);
+		_currMap = 15;
+	} else {
+		inventoryAdd(15);
+		_currMap = 10;
+		_vm->fShowPic(150);
+		_nodes[10] = 9;
+		_vm->playSound(3);
+		_vm->_bTimer = 95;
+		while (_vm->_bTimer != 0 && _vm->_mouseButton == 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+			_vm->checkMainScreen();
+		}
+		_vm->readMouse();
+		while (_vm->_mouseButton == 0) {
+			_vm->refreshSound();
+			_vm->checkMainScreen();
+			_vm->readMouse();
+		}
+
+		_vm->fadeToBlack2();
+		_vm->_quit = true;
+		//_QuitFlag = 1;
+	}
 }
 
 } // NameSpace


Commit: de25db242a7da506f9095014a35677db969b2899
    https://github.com/scummvm/scummvm/commit/de25db242a7da506f9095014a35677db969b2899
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add the display of the optional last frame , make resources optional

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 61e87443b9..ec84faf961 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -368,13 +368,14 @@ void KingdomGame::loadAResource(int reznum) {
 	if(!_rezSize[reznum]) {
 		Common::File *file = new Common::File();
 		if(!file->open(path))
-			error("Failed to open %s", path.c_str());
-
-		_rezSize[reznum] = file->size();
-		file->seek(0, SEEK_SET);
-		_rezPointers[reznum] = file->readStream(_rezSize[reznum]);
-		file->close();
-		delete file;
+			warning("Failed to open %s", path.c_str());
+		else {
+			_rezSize[reznum] = file->size();
+			file->seek(0, SEEK_SET);
+			_rezPointers[reznum] = file->readStream(_rezSize[reznum]);
+			file->close();
+			delete file;
+		}
 	}
 }
 
@@ -390,7 +391,7 @@ void KingdomGame::showPic(int reznum) {
 
 	loadAResource(reznum);
 	Image::IFFDecoder decoder;
-	if (!decoder.loadStream(*_rezPointers[reznum]))
+	if (!_rezPointers[reznum] || !decoder.loadStream(*_rezPointers[reznum]))
 		return;
 
 	const byte *palette = decoder.getPalette();
@@ -489,6 +490,11 @@ void KingdomGame::playMovie(int movieNum) {
 	MVE_ReleaseMem();
 	*/
 
+	// This is hidden somewhere in RunMovieCtl callback...
+	// To be removed when MVE_RunMovie is implemented
+	showPic(300 + _pMovie);
+	//
+
 	if (!_fullScreen) {
 		_treeRightSta = 1;
 		_iconsClosed = false;


Commit: 9c62a6a2985128842909901f0ca454e24176eb33
    https://github.com/scummvm/scummvm/commit/9c62a6a2985128842909901f0ca454e24176eb33
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement some changes in the demo for opcodes 30, 41 and sub10

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index fdad590fce..a8973ec9c9 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -99,11 +99,13 @@ void Logic::GPL1_20() {
 }
 
 void Logic::GPL1_30() {
+	int nodeIdx = (_vm->isDemo()) ? 1 : 3;
+
 	_nodeNum = 3;
 	_vm->_userInput = 0;
-	if (_nodes[3] == 0) {
+	if (_nodes[nodeIdx] == 0) {
 		_vm->playMovie(177);
-		_nodes[3] = 9;
+		_nodes[nodeIdx] = 9;
 		if (!_vm->_wizard) {
 			_statPlay = 50;
 			_vm->_loopFlag = true;
@@ -111,7 +113,7 @@ void Logic::GPL1_30() {
 		}
 	}
 	_vm->drawLocation();
-	if (_nodes[4] != 0 && _nodes[6] != 1)
+	if (_nodes[nodeIdx + 1] != 0 && _nodes[nodeIdx + 3] != 1)
 		_vm->_sound = true;
 	else
 		_vm->_sound = false;
@@ -162,13 +164,14 @@ void Logic::GPL1_40() {
 }
 
 void Logic::GPL1_41() {
+	int nodeIdx = (_vm->isDemo()) ? 2 : 4;
 	switch(_vm->_userInput) {
 	case 0x429:
 		_vm->playMovie(178);
 		_vm->playMovie(63);
 		inventoryDel(1);
 		_currMap = 10;
-		_nodes[4] = 9;
+		_nodes[nodeIdx] = 9;
 		_statPlay = 41;
 		_vm->_tsIconOnly = true;
 		break;
@@ -1441,7 +1444,7 @@ void Logic::GPLogic1_SubSP10() {
 	_vm->playSound(0);
 	_vm->playSound(18);
 	_vm->fadeToBlack2();
-	_vm->showPic(115);
+	_vm->showPic(_vm->isDemo() ? 198 : 115);
 	_vm->showPic(114);
 
 	_currMap = 4;


Commit: 5e1f1eef791d09aace33fe40d6fe7b4a2826bffd
    https://github.com/scummvm/scummvm/commit/5e1f1eef791d09aace33fe40d6fe7b4a2826bffd
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Resynchronize node idx in demo by systematically adding 2 in the assembly

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index a8973ec9c9..0ffcab7619 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -99,13 +99,11 @@ void Logic::GPL1_20() {
 }
 
 void Logic::GPL1_30() {
-	int nodeIdx = (_vm->isDemo()) ? 1 : 3;
-
 	_nodeNum = 3;
 	_vm->_userInput = 0;
-	if (_nodes[nodeIdx] == 0) {
+	if (_nodes[3] == 0) {
 		_vm->playMovie(177);
-		_nodes[nodeIdx] = 9;
+		_nodes[3] = 9;
 		if (!_vm->_wizard) {
 			_statPlay = 50;
 			_vm->_loopFlag = true;
@@ -113,7 +111,7 @@ void Logic::GPL1_30() {
 		}
 	}
 	_vm->drawLocation();
-	if (_nodes[nodeIdx + 1] != 0 && _nodes[nodeIdx + 3] != 1)
+	if (_nodes[4] != 0 && _nodes[6] != 1)
 		_vm->_sound = true;
 	else
 		_vm->_sound = false;
@@ -164,14 +162,13 @@ void Logic::GPL1_40() {
 }
 
 void Logic::GPL1_41() {
-	int nodeIdx = (_vm->isDemo()) ? 2 : 4;
 	switch(_vm->_userInput) {
 	case 0x429:
 		_vm->playMovie(178);
 		_vm->playMovie(63);
 		inventoryDel(1);
 		_currMap = 10;
-		_nodes[nodeIdx] = 9;
+		_nodes[4] = 9;
 		_statPlay = 41;
 		_vm->_tsIconOnly = true;
 		break;
@@ -391,17 +388,15 @@ void Logic::GPL1_70() {
 }
 
 void Logic::GPL1_71() {
-	int nodeIdx = (_vm->isDemo()) ? 5 : 7;
-
 	switch(_vm->_userInput) {
 	case 0x42F:
-		if (_nodes[nodeIdx] == 9) {
+		if (_nodes[7] == 9) {
 			_vm->displayIcon(137);
 		} else {
 			_vm->playMovie(12);
 			_vm->playSound(30);
 			inventoryAdd(7);
-			_nodes[nodeIdx] = 9;
+			_nodes[7] = 9;
 			_currMap = 10;
 		}
 		_vm->_userInput = 0;
@@ -694,10 +689,9 @@ void Logic::GPL1_120() {
 }
 
 void Logic::GPL1_121() {
-	int nodeIdx = (_vm->isDemo()) ? 10 : 12;
 	switch (_vm->_userInput) {
 	case 0x437:
-		if (_nodes[nodeIdx] == 9) {
+		if (_nodes[12] == 9) {
 			_vm->displayIcon(145);
 			_vm->_userInput = 0;
 		} else


Commit: 788bbf2a7b01bbd843a1eb0f86346d6e2a840314
    https://github.com/scummvm/scummvm/commit/788bbf2a7b01bbd843a1eb0f86346d6e2a840314
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GPL1_90_demo

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 0ffcab7619..61d83a84d7 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -558,6 +558,31 @@ void Logic::GPL1_90() {
 	}
 }
 
+void Logic::GPL1_90_demo() {
+	if (_nodeNum == 18 && _nodes[17] == 0) {
+		_statPlay = 170;
+		_vm->_loopFlag = true;
+		_nextNode = 90;
+	} else {
+		_nodeNum = 9;
+		_vm->drawLocation();
+		_vm->_userInput = 0;
+		if (_nodes[9] == 0) {
+			_vm->_sound = false;
+			_nodes[9] = 9;
+		} else
+			_vm->_sound = true;
+
+		_vm->_frameStop = 90;
+		_vm->playMovie(19);
+		_vm->playSound(15);
+		_vm->showPic(109);
+
+		_currMap = 10;
+		_statPlay = 91;
+	}
+}
+
 void Logic::GPL1_91() {
 	switch(_vm->_userInput) {
 	case 0x43A:
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 2a9321121b..0200d60685 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -99,7 +99,6 @@ void Logic::initOpcodes() {
 	_opCodes[80] = &Logic::GPL1_80;
 	_opCodes[81] = &Logic::GPL1_81;
 	_opCodes[82] = &Logic::GPL1_82;
-	_opCodes[90] = &Logic::GPL1_90;
 	_opCodes[91] = &Logic::GPL1_91;
 	_opCodes[92] = &Logic::GPL1_92;
 	_opCodes[100] = &Logic::GPL1_100;
@@ -218,10 +217,12 @@ void Logic::initOpcodes() {
 }
 
 void Logic::initOpcodesDemo() {
-
+	_opCodes[90] = &Logic::GPL1_90_demo;
 }
 
 void Logic::initOpcodesFull() {
+	_opCodes[90] = &Logic::GPL1_90;
+
 	_opCodes[500] = &Logic::GPL3_500;
 	_opCodes[501] = &Logic::GPL3_501;
 	_opCodes[502] = &Logic::GPL3_502;
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 088fb32f9c..8f23f0f4f6 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -239,6 +239,8 @@ private:
 	void GPL4_993();
 	void GPL4_994();
 
+	void GPL1_90_demo();
+
 public:
 	int _statPlay;
 	int _oldStatPlay;


Commit: 5365e3bc53af3a65378d1d643fe14cbb4f451158
    https://github.com/scummvm/scummvm/commit/5365e3bc53af3a65378d1d643fe14cbb4f451158
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Revert previous commit after checking variable initialization, fix some initializations

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 61d83a84d7..0ffcab7619 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -558,31 +558,6 @@ void Logic::GPL1_90() {
 	}
 }
 
-void Logic::GPL1_90_demo() {
-	if (_nodeNum == 18 && _nodes[17] == 0) {
-		_statPlay = 170;
-		_vm->_loopFlag = true;
-		_nextNode = 90;
-	} else {
-		_nodeNum = 9;
-		_vm->drawLocation();
-		_vm->_userInput = 0;
-		if (_nodes[9] == 0) {
-			_vm->_sound = false;
-			_nodes[9] = 9;
-		} else
-			_vm->_sound = true;
-
-		_vm->_frameStop = 90;
-		_vm->playMovie(19);
-		_vm->playSound(15);
-		_vm->showPic(109);
-
-		_currMap = 10;
-		_statPlay = 91;
-	}
-}
-
 void Logic::GPL1_91() {
 	switch(_vm->_userInput) {
 	case 0x43A:
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index ec84faf961..99db8c3ea2 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -93,19 +93,19 @@ void KingdomGame::initVariables() {
 	for (int i = 0; i < 7; i++)
 		_iconPic[i] = 0;
 
-	_iconRedraw = 0;
+	_iconRedraw = false;
 	_healthTmr = 0;
-	_palStepFlag = 0;
-	_skylarTimerFlag = 0;
+	_palStepFlag = false;
+	_skylarTimerFlag = false;
 	_skylarTimer = 0;
-	_cTimerFlag = 0;
+	_cTimerFlag = false;
 	_cTimer = 0;
-	_bTimerFlag = 0;
+	_bTimerFlag = false;
 	_bTimer = 0;
-	_aTimerFlag = 0;
+	_aTimerFlag = false;
 	_aTimer = 0;
 	_zoom = 0;
-	_wizard = 0; 
+	_wizard = false; 
 	_userInput = 0;
 //	_track = 0;
 //	_statMap = 0;
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 0200d60685..2a9321121b 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -99,6 +99,7 @@ void Logic::initOpcodes() {
 	_opCodes[80] = &Logic::GPL1_80;
 	_opCodes[81] = &Logic::GPL1_81;
 	_opCodes[82] = &Logic::GPL1_82;
+	_opCodes[90] = &Logic::GPL1_90;
 	_opCodes[91] = &Logic::GPL1_91;
 	_opCodes[92] = &Logic::GPL1_92;
 	_opCodes[100] = &Logic::GPL1_100;
@@ -217,12 +218,10 @@ void Logic::initOpcodes() {
 }
 
 void Logic::initOpcodesDemo() {
-	_opCodes[90] = &Logic::GPL1_90_demo;
+
 }
 
 void Logic::initOpcodesFull() {
-	_opCodes[90] = &Logic::GPL1_90;
-
 	_opCodes[500] = &Logic::GPL3_500;
 	_opCodes[501] = &Logic::GPL3_501;
 	_opCodes[502] = &Logic::GPL3_502;
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 8f23f0f4f6..088fb32f9c 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -239,8 +239,6 @@ private:
 	void GPL4_993();
 	void GPL4_994();
 
-	void GPL1_90_demo();
-
 public:
 	int _statPlay;
 	int _oldStatPlay;


Commit: 70f1cb80a3c21c0092cbcd6612fa78893db4f4e8
    https://github.com/scummvm/scummvm/commit/70f1cb80a3c21c0092cbcd6612fa78893db4f4e8
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Cosmetic changes after implementation check

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 0ffcab7619..93d1314412 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -831,14 +831,16 @@ void Logic::GPL1_161() {
 		_eye = true;
 		_pouch = true;
 		_currMap = 85;
-				}
-				break;
+		}
+		break;
 	case 0x199: {
 		_vm->fadeToBlack1();
 		_vm->drawRect(4, 17, 228, 161, 0);
 		_replay = true;
+		// Not present in the demo, but it's a bug
 		int oldPMovie = _vm->_pMovie;
 		_vm->playMovie(207);
+		// Ditto
 		_vm->_pMovie = oldPMovie;
 		_vm->_asMode = false;
 		_vm->restoreAS();
@@ -846,8 +848,8 @@ void Logic::GPL1_161() {
 		_eye = true;
 		_pouch = true;
 		_currMap = 85;
-				}
-				break;
+		}
+		break;
 	case 0x19A:
 		_vm->fShowPic(110);
 		_vm->_bTimer = 190;
@@ -1026,7 +1028,7 @@ void Logic::GPL1_181() {
 	case 0x429:
 		if (!_nodes[18]) {
 			inventoryDel(1);
-			_nodes[18] = true;
+			_nodes[18] = 1;
 		}
 		_vm->playMovie(35);
 		_vm->_userInput = 0;


Commit: 0570d4be1718e0ce194d1d3fcb3d8dfc527c3133
    https://github.com/scummvm/scummvm/commit/0570d4be1718e0ce194d1d3fcb3d8dfc527c3133
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix bug in GPL1_200

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 93d1314412..5a3b901cb9 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1112,6 +1112,7 @@ void Logic::GPL1_200() {
 		_vm->playMovie(40);
 		_tideCntl = true;
 		_vm->drawPic(178);
+		_nodes[20] = 0;
 	}
 	_vm->playSound(42);
 	_currMap = 10;


Commit: 673a1660b734b50c7d68902ab7da52b7b9f958a9
    https://github.com/scummvm/scummvm/commit/673a1660b734b50c7d68902ab7da52b7b9f958a9
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix GPL1_210 for the demo version

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 5a3b901cb9..5b0bf0e6b5 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1150,8 +1150,8 @@ void Logic::GPL1_210() {
 		_nodes[21] = 9;
 
 	if (_nodes[21] == 9) {
-		_nodes[21] = 9;
-		_vm->playMovie(209);
+		_nodes[21] = 9; // useless
+		_vm->playMovie(_vm->isDemo() ? 49 : 209);
 		_vm->playSound(38);
 		_currMap = 81;
 	} else {


Commit: 07a8ee2c80b5c3a68c6948fc5d36e267ea234c25
    https://github.com/scummvm/scummvm/commit/07a8ee2c80b5c3a68c6948fc5d36e267ea234c25
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove two useless reset of _userInput in GPL1_241

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 5b0bf0e6b5..93287c06e4 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1150,7 +1150,8 @@ void Logic::GPL1_210() {
 		_nodes[21] = 9;
 
 	if (_nodes[21] == 9) {
-		_nodes[21] = 9; // useless
+		// Present in the original but useless
+		// _nodes[21] = 9;
 		_vm->playMovie(_vm->isDemo() ? 49 : 209);
 		_vm->playSound(38);
 		_currMap = 81;
@@ -1402,14 +1403,12 @@ void Logic::GPL1_241() {
 			_vm->playSound(30);
 			_vm->restoreAS();
 			inventoryAdd(5);
-			_vm->_userInput = 0;
 		}
 		break;
 	case 0x43A:
 		_statPlay = 242;
 		_vm->_zoom = 2;
 		_vm->processMap(24, _vm->_zoom);
-		_vm->_userInput = 0;
 		break;
 	case 0x43E:
 		_vm->_sound = _vm->_lastSound;


Commit: 4ab9b9ae21f8766fc0e2eb31c9b30dc022366891
    https://github.com/scummvm/scummvm/commit/4ab9b9ae21f8766fc0e2eb31c9b30dc022366891
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix bug in GPL1_221

Changed paths:
    engines/kingdom/GPLogic1.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 93287c06e4..e069498d52 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -1307,6 +1307,7 @@ void Logic::GPL1_221() {
 			inventoryDel(2);
 			inventoryAdd(4);
 			_vm->_tsIconOnly = true;
+			_nodes[22] = 9;
 		}
 		_vm->_userInput = 0;
 		_currMap = 10;


Commit: aefbae6877e344d384aac35c06ac8151eff317b3
    https://github.com/scummvm/scummvm/commit/aefbae6877e344d384aac35c06ac8151eff317b3
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement changes from the demo in GPL2_250

Changed paths:
    engines/kingdom/GPLogic2.cpp


diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 854c106793..43373dc4de 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -32,7 +32,8 @@ void Logic::GPL2_250() {
 	_vm->drawLocation();
 	dsAll();
 	if (_nodes[24] != 0 || highNode) {
-		_eye = true;
+		if (!_vm->isDemo())
+			_eye = true;
 		_vm->playMovie(72);
 		_vm->_aTimerFlag = false;
 		_vm->_aTimer = 114;
@@ -43,7 +44,8 @@ void Logic::GPL2_250() {
 	} else {
 		_vm->_frameStop = 67;
 		_vm->playMovie(72);
-		dsAll();
+		if (!_vm->isDemo())
+			dsAll();
 		_vm->playMovie(73);
 		dsAll();
 		_statPlay = 991;


Commit: 3107ad793669b8ca9092113b624e4dc026c8a9be
    https://github.com/scummvm/scummvm/commit/3107ad793669b8ca9092113b624e4dc026c8a9be
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Move most of the GPL2 functions to initOpcodesFull

Changed paths:
    engines/kingdom/logic.cpp


diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 2a9321121b..4e2fd0d475 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -143,6 +143,26 @@ void Logic::initOpcodes() {
 	_opCodes[250] = &Logic::GPL2_250;
 	_opCodes[251] = &Logic::GPL2_251;
 	_opCodes[252] = &Logic::GPL2_252;
+
+	_opCodes[900] = &Logic::GPL4_900;
+	_opCodes[901] = &Logic::GPL4_901;
+	_opCodes[991] = &Logic::GPL4_991;
+	_opCodes[992] = &Logic::GPL4_992;
+	_opCodes[993] = &Logic::GPL4_993;
+	_opCodes[994] = &Logic::GPL4_994;
+
+	if (_vm->isDemo())
+		initOpcodesDemo();
+	else
+		initOpcodesFull();
+	
+}
+
+void Logic::initOpcodesDemo() {
+
+}
+
+void Logic::initOpcodesFull() {
 	_opCodes[260] = &Logic::GPL2_260;
 	_opCodes[261] = &Logic::GPL2_261;
 	_opCodes[270] = &Logic::GPL2_270;
@@ -203,25 +223,6 @@ void Logic::initOpcodes() {
 	_opCodes[490] = &Logic::GPL2_490;
 	_opCodes[491] = &Logic::GPL2_491;
 
-	_opCodes[900] = &Logic::GPL4_900;
-	_opCodes[901] = &Logic::GPL4_901;
-	_opCodes[991] = &Logic::GPL4_991;
-	_opCodes[992] = &Logic::GPL4_992;
-	_opCodes[993] = &Logic::GPL4_993;
-	_opCodes[994] = &Logic::GPL4_994;
-
-	if (_vm->isDemo())
-		initOpcodesDemo();
-	else
-		initOpcodesFull();
-	
-}
-
-void Logic::initOpcodesDemo() {
-
-}
-
-void Logic::initOpcodesFull() {
 	_opCodes[500] = &Logic::GPL3_500;
 	_opCodes[501] = &Logic::GPL3_501;
 	_opCodes[502] = &Logic::GPL3_502;


Commit: 8632280e20be48e0df38fb61809f25a0525c7e9d
    https://github.com/scummvm/scummvm/commit/8632280e20be48e0df38fb61809f25a0525c7e9d
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add GPL4_992_demo and GPL4_993_demo

Changed paths:
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 4d4debeecf..16f7c7c184 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -129,11 +129,16 @@ void Logic::GPL4_991() {
 		}
 
 		_vm->_loopFlag = true;
-		if (_nodes[29] == 1) {
+		if (!_vm->isDemo() && _nodes[29] == 1) {
 			_nodes[29] = 0;
 			_nodes[49] = 0;
 		}
 
+		if (_vm->isDemo() && _nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
+		}
+
 		_vm->_itemInhibit = false;
 		_tideCntl = false;
 		_vm->drawPic(179);
@@ -202,6 +207,54 @@ void Logic::GPL4_992() {
 	}
 }
 
+void Logic::GPL4_992_demo() {
+	_currMap = 10;
+	_vm->_userInput = 0;
+	_vm->playSound(0);
+	if (_health == 10 || _health == 6 || _health == 2)
+		_health -= 2;
+	else
+		_health -= 4;
+
+	if (_health == 0) {
+		_vm->playMovie(194);
+		_vm->_noIFScreen = true;
+		_vm->fShowPic(107);
+		_currMap = 3;
+		dsAll();
+		_pouch = false;
+		_vm->playSound(1);
+		memset(_inventory, -1, 19);
+		_statPlay = 994;
+	} else {
+		_vm->_bTimer = 36;
+		while(_vm->_bTimer != 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+		}
+
+		_vm->_loopFlag = true;
+		if (_nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
+		}
+
+		_vm->_itemInhibit = false;
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->_skylarTimer = 0;
+		_vm->_skylarTimerFlag = false;
+		enAll();
+		_nodeNum = 27;
+		_vm->drawLocation();
+		_resurrect = true;
+		_vm->playSound(0);
+		_vm->playMovie(195);
+		inventoryDel(12);
+		_statPlay = 270;
+	}
+}
+
 void Logic::GPL4_993() {
 	_currMap = 10;
 	_vm->_userInput = 0;
@@ -229,12 +282,23 @@ void Logic::GPL4_993() {
 		}
 
 		_vm->_loopFlag = true;
-		if (_nodes[29] == 1) {
-			_nodes[29] = 0;
-			_nodes[49] = 0;
+		if (!_vm->isDemo()) {
+			if (_nodes[29] == 1) {
+				_nodes[29] = 0;
+				_nodes[49] = 0;
+			}
+
+			if (_nodes[68] == 1)
+				_nodes[68] = 0;
+		} else {
+			if (_nodes[28] == 1) {
+				_nodes[28] = 0;
+				_nodes[48] = 0;
+			}
+
+			if (_nodes[67] == 1)
+				_nodes[67] = 0;
 		}
-		if (_nodes[68] == 1)
-			_nodes[68] = 0;
 
 		_vm->_itemInhibit = false;
 		_tideCntl = false;
@@ -253,6 +317,57 @@ void Logic::GPL4_993() {
 	}
 }
 
+void Logic::GPL4_993_demo() {
+	_currMap = 10;
+	_vm->_userInput = 0;
+	_vm->playSound(0);
+	if (_health == 10 || _health == 6 || _health == 2)
+		_health -= 2;
+	else
+		_health -= 4;
+
+	if (_health == 0) {
+		_vm->playMovie(194);
+		_vm->_noIFScreen = true;
+		_vm->fShowPic(107);
+		_currMap = 3;
+		dsAll();
+		_pouch = false;
+		_vm->playSound(1);
+		memset(_inventory, -1, 19);
+		_statPlay = 994;
+	} else {
+		_vm->_bTimer = 36;
+		while (_vm->_bTimer != 0) {
+			_vm->checkTimers();
+			_vm->refreshSound();
+		}
+
+		_vm->_loopFlag = true;
+		if (_nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
+		}
+
+		if (_nodes[67] == 1)
+			_nodes[67] = 0;
+
+		_vm->_itemInhibit = false;
+		_tideCntl = false;
+		_vm->drawPic(179);
+		_vm->_skylarTimer = 0;
+		_vm->_skylarTimerFlag = false;
+		enAll();
+		_nodeNum = 52;
+		_vm->drawLocation();
+		_resurrect = true;
+		_vm->playSound(0);
+		_vm->playMovie(196);
+		inventoryDel(12);
+		_statPlay = 520;
+	}
+}
+
 void Logic::GPL4_994() {
 	switch(_vm->_userInput) {
 	case 0x190:
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 4e2fd0d475..15ee539e36 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -147,8 +147,6 @@ void Logic::initOpcodes() {
 	_opCodes[900] = &Logic::GPL4_900;
 	_opCodes[901] = &Logic::GPL4_901;
 	_opCodes[991] = &Logic::GPL4_991;
-	_opCodes[992] = &Logic::GPL4_992;
-	_opCodes[993] = &Logic::GPL4_993;
 	_opCodes[994] = &Logic::GPL4_994;
 
 	if (_vm->isDemo())
@@ -159,7 +157,8 @@ void Logic::initOpcodes() {
 }
 
 void Logic::initOpcodesDemo() {
-
+	_opCodes[992] = &Logic::GPL4_992_demo;
+	_opCodes[993] = &Logic::GPL4_993_demo;
 }
 
 void Logic::initOpcodesFull() {
@@ -289,6 +288,9 @@ void Logic::initOpcodesFull() {
 	_opCodes[781] = &Logic::GPL3_781;
 	_opCodes[790] = &Logic::GPL3_790;
 	_opCodes[791] = &Logic::GPL3_791;
+
+	_opCodes[992] = &Logic::GPL4_992;
+	_opCodes[993] = &Logic::GPL4_993;
 }
 
 void Logic::enAll() {
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 088fb32f9c..215a47dc6f 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -236,7 +236,9 @@ private:
 	void GPL4_901();
 	void GPL4_991();
 	void GPL4_992();
+	void GPL4_992_demo();
 	void GPL4_993();
+	void GPL4_993_demo();
 	void GPL4_994();
 
 public:


Commit: e300515b529661b395d6d406cf16c148fb784bd3
    https://github.com/scummvm/scummvm/commit/e300515b529661b395d6d406cf16c148fb784bd3
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add mouseMapMS for the demo version

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 934ab32678..c83ceeee0f 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -958,7 +958,7 @@ int _hgaSeq[4][2] = {
 	{50, 0}
 };
 
-HotSpot _mouseMapMS[51] = {
+HotSpot _mouseMapMSFull[51] = {
 	{ 11,  35, 178, 197, 0x181},
 	{ 38,  62, 178, 197, 0x182},
 	{ 65,  89, 178, 197, 0x183},
@@ -1012,6 +1012,60 @@ HotSpot _mouseMapMS[51] = {
 	{  0,   0,   0,   0,     0}
 };
 
+HotSpot _mouseMapMSDemo[51] = {
+	{ 11,  35, 178, 197, 0x181},
+	{ 38,  62, 178, 197, 0x182},
+	{ 65,  89, 178, 197, 0x183},
+	{ 92, 116, 178, 197, 0x184},
+	{119, 143, 178, 197, 0x185},
+	{146, 170, 178, 197, 0x186},
+	{173, 197, 178, 197, 0x187},
+	{271, 292, 124, 143, 0x44F},
+	{262, 298,  51,  80, 0x18A},
+	{243, 267, 141, 160, 0x18C},
+	{290, 314, 143, 162, 0x18D},
+	{272, 296, 170, 189, 0x457},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{  0,   0,   0,   0,     0},
+	{ 74,  92,  60,  75, 0x417},
+	{ 74,  89,  75,  93, 0x418},
+	{ 92, 105,  96, 111, 0x402},
+	{ 74,  87,  50,  61, 0x415},
+	{ 50,  67,  43,  52, 0x406},
+	{ 29,  37,  43,  55, 0x407},
+	{ 45,  56,  67,  74, 0x401},
+	{ 52,  65,  80,  90, 0x400},
+	{ 45,  75, 102, 112, 0x420},
+	{ 25,  38,  59,  69, 0x408},
+	{ 75,  85,  33,  43, 0x40A},
+	{ 75,  90,  99, 112, 0x40B},
+	{ 45, 104, 113, 131, 0x40C},
+	{  0,   0,   0,   0, 0x40D},
+	{  0,   0,   0,   0, 0x421},
+	{  0,   0,   0,   0, 0x40F},
+	{  0,   0,   0,   0, 0x412},
+	{  0,   0,   0,   0, 0x410},
+	{  0,   0,   0,   0, 0x419},
+	{  0,   0,   0,   0, 0x411},
+	{  0,   0,   0,   0, 0x40E},
+	{  0,   0,   0,   0, 0x422},
+	{  0,   0,   0,   0, 0x403},
+	{  0,   0,   0,   0, 0x413},
+	{  0,   0,   0,   0, 0x41C},
+	{  0,   0,   0,   0, 0x41B},
+	{  0,   0,   0,   0, 0x41E},
+	{  0,   0,   0,   0, 0x404},
+	{  0,   0,   0,   0, 0x41D},
+	{  0,   0,   0,   0, 0x416},
+	{  0,   0,   0,   0, 0x423},
+	{  0,   0,   0,   0, 0x424},
+	{  0,   0,   0,   0, 0x425},
+	{  0,   0,   0,   0, 0x41A},
+	{  0,   0,   0,   0,     0}
+};
+
 int _cursorTable[96] = {
 	 51,  52,  53,  54,  55,  56,  57,  58,  59,  60,
 	 61,  62,  63,  64,  65,  66,  67,  68,  69,  70,
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 99db8c3ea2..5f71900459 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1460,6 +1460,7 @@ void KingdomGame::cursorType() {
 	if (_logic->_currMap != 1 && _logic->_statPlay >= 30) {
 		int var2 = _logic->_statPlay == 901 ? 16 : 0;
 		int var6 = _logic->_statPlay == 901 ? 35 : 16;
+		HotSpot *mouseMapMS = isDemo() ? _mouseMapMSDemo : _mouseMapMSFull;
 		for (int i = 0; i < var6 + 1; i++) {
 			if (i == var6) {
 				int tmpVal = checkMouseMapAS();
@@ -1468,8 +1469,8 @@ void KingdomGame::cursorType() {
 					return;
 				} else
 					_mouseValue = tmpVal;
-			} else if (_cursorX >= _mouseMapMS[var2 + i]._minX && _cursorX < _mouseMapMS[var2 + i]._maxX && _cursorY >= _mouseMapMS[var2 + i]._minY && _cursorY < _mouseMapMS[var2 + i]._maxY) {
-				_mouseValue = _mouseMapMS[var2 + i]._mouseValue;
+			} else if (_cursorX >= mouseMapMS[var2 + i]._minX && _cursorX < mouseMapMS[var2 + i]._maxX && _cursorY >= mouseMapMS[var2 + i]._minY && _cursorY < mouseMapMS[var2 + i]._maxY) {
+				_mouseValue = mouseMapMS[var2 + i]._mouseValue;
 				break;
 			}
 		}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 44c79b8b26..9431cf1fa3 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -81,7 +81,8 @@ namespace Kingdom {
 	extern int _cursorTable[96];
 	extern int _teaSeq[6][2];
 	extern int _hgaSeq[4][2];
-	extern HotSpot _mouseMapMS[51];
+	extern HotSpot _mouseMapMSFull[51];
+	extern HotSpot _mouseMapMSDemo[51];
 	extern HotSpot _mouseMapAS[128][16];
 
 	struct KingdomSavegameHeader {


Commit: 5a94977c63b5d45e8137c180f4453c3e3377bf32
    https://github.com/scummvm/scummvm/commit/5a94977c63b5d45e8137c180f4453c3e3377bf32
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add _MouseMapAS for the demo version

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index c83ceeee0f..741320661d 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -1079,7 +1079,7 @@ int _cursorTable[96] = {
 	  0,   0,   0,   0,   0,   0
 };
 
-HotSpot _mouseMapAS[128][16] = {
+HotSpot _mouseMapASFull[128][16] = {
 	{
 		{15, 110, 48, 62, 0x240},
 		{61, 176, 30, 44, 0x241},
@@ -3386,4 +3386,2311 @@ HotSpot _mouseMapAS[128][16] = {
 	}
 };
 
+HotSpot _mouseMapASDemo[128][16] = {
+	{
+		{15, 110, 48, 62, 0x240},
+		{61, 176, 30, 44, 0x241},
+		{121, 216, 66, 80, 0x242},
+		{121, 216, 48, 62, 0x243},
+		{121, 216, 84, 98, 0x244},
+		{15, 110, 66, 80, 0x245},
+		{15, 110, 84, 98, 0x246},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{119, 197, 78, 84, 0x190},
+		{119, 197, 85, 91, 0x191},
+		{119, 197, 92, 98, 0x192},
+		{119, 197, 99, 105, 0x193},
+		{72, 96, 103, 109, 0x194},
+		{72, 96, 110, 116, 0x195},
+		{72, 96, 117, 123, 0x196},
+		{72, 96, 124, 130, 0x197},
+		{72, 96, 131, 137, 0x198},
+		{220, 242, 111, 117, 0x199},
+		{220, 242, 118, 124, 0x19A},
+		{220, 242, 125, 131, 0x19B},
+		{141, 173, 136, 142, 0x19C},
+		{141, 173, 143, 149, 0x19D},
+		{230, 280, 182, 193, 0x19E},
+		{34, 91, 182, 193, 0x19F}
+	},
+	{
+		{4, 227, 17, 160, 0x260},
+		{0, 0, 0, 0, 0x261},
+		{0, 0, 0, 0, 0x262},
+		{0, 0, 0, 0, 0x263},
+		{0, 0, 0, 0, 0x264},
+		{0, 0, 0, 0, 0x265},
+		{0, 0, 0, 0, 0x266},
+		{0, 0, 0, 0, 0x267},
+		{0, 0, 0, 0, 0x268},
+		{0, 0, 0, 0, 0x269},
+		{0, 0, 0, 0, 0x26A},
+		{0, 0, 0, 0, 0x26B},
+		{0, 0, 0, 0, 0x26C},
+		{0, 0, 0, 0, 0x26D},
+		{0, 0, 0, 0, 0x26E},
+		{0, 0, 0, 0, 0x26F}
+	},
+	{
+		{17, 120, 122, 132, 0x190},
+		{17, 120, 140, 150, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x191},
+		{69, 242, 114, 129, 0x190},
+		{69, 242, 132, 147, 0x192},
+		{69, 131, 150, 165, 0x193},
+		{181, 242, 150, 165, 0x194},
+		{133, 179, 150, 165, 0x24A},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{73, 105, 56, 80, 0x428},
+		{89, 131, 88, 110, 0x42A},
+		{124, 152, 56, 81, 0x42B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{61, 91, 61, 87, 0x417},
+		{92, 122, 84, 110, 0x40A},
+		{123, 154, 61, 87, 0x406},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{47, 80, 48, 116, 0x445},
+		{149, 182, 51, 116, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{62, 88, 76, 141, 0x42F},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{140, 170, 102, 127, 0x428},
+		{73, 117, 65, 82, 0x429},
+		{170, 216, 96, 121, 0x42A},
+		{121, 144, 34, 62, 0x42B},
+		{160, 183, 41, 59, 0x42C},
+		{21, 51, 125, 151, 0x42D},
+		{201, 217, 43, 76, 0x42E},
+		{76, 114, 119, 150, 0x42F},
+		{18, 48, 31, 61, 0x430},
+		{57, 72, 88, 122, 0x431},
+		{182, 207, 125, 155, 0x432},
+		{176, 203, 26, 37, 0x433},
+		{55, 75, 23, 51, 0x434},
+		{120, 166, 133, 155, 0x435},
+		{96, 117, 93, 113, 0x436},
+		{140, 189, 68, 89, 0x437}
+	},
+	{
+		{84, 113, 30, 53, 0x438},
+		{21, 42, 78, 105, 0x439},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{4, 227, 17, 160, 0x241}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{86, 112, 27, 85, 0x453},
+		{85, 127, 29, 90, 0x453},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{128, 149, 55, 114, 0x445},
+		{180, 215, 36, 120, 0x445},
+		{0, 0, 0, 0, 0x192},
+		{69, 86, 86, 103, 0x437},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{128, 149, 55, 114, 0x445},
+		{180, 215, 36, 120, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{53, 131, 41, 159, 0x445},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{204, 227, 100, 160, 0x441},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{94, 106, 83, 104, 0x443},
+		{107, 127, 83, 104, 0x405},
+		{75, 94, 98, 133, 0x409},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{67, 135, 22, 68, 0x407},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{88, 156, 102, 158, 0x418},
+		{96, 137, 20, 47, 0x415},
+		{21, 83, 18, 37, 0x406},
+		{19, 45, 76, 102, 0x401},
+		{23, 68, 134, 157, 0x400},
+		{96, 156, 47, 102, 0x443},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{68, 131, 117, 158, 0x418},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{103, 158, 18, 40, 0x417},
+		{163, 179, 127, 150, 0x402},
+		{20, 43, 18, 43, 0x401},
+		{28, 67, 67, 98, 0x400},
+		{5, 53, 139, 159, 0x420},
+		{95, 151, 124, 159, 0x40B},
+		{53, 94, 124, 159, 0x420},
+		{89, 158, 40, 103, 0x443},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{33, 99, 18, 53, 0x418},
+		{40, 82, 69, 103, 0x40B},
+		{5, 39, 69, 103, 0x420},
+		{5, 82, 103, 159, 0x40C},
+		{82, 123, 128, 159, 0x40D},
+		{96, 120, 73, 96, 0x443},
+		{123, 184, 112, 159, 0x40E},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{113, 125, 43, 60, 0x40A},
+		{99, 114, 60, 80, 0x409},
+		{99, 135, 80, 104, 0x443},
+		{99, 160, 104, 159, 0x417},
+		{17, 56, 134, 159, 0x401},
+		{9, 81, 65, 98, 0x406},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 216, 109, 147, 0x417},
+		{161, 193, 81, 105, 0x415},
+		{91, 110, 131, 154, 0x401},
+		{31, 66, 128, 147, 0x408},
+		{84, 141, 70, 96, 0x443},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{67, 85, 72, 98, 0x443},
+		{117, 182, 65, 96, 0x406},
+		{124, 147, 130, 153, 0x401},
+		{56, 89, 124, 146, 0x408},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{92, 106, 120, 130, 0x446},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 209, 50, 98, 0x417},
+		{157, 209, 98, 159, 0x418},
+		{161, 191, 29, 50, 0x415},
+		{91, 139, 18, 44, 0x406},
+		{95, 128, 137, 151, 0x400},
+		{32, 61, 81, 95, 0x408},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{87, 109, 81, 105, 0x443},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 214, 18, 46, 0x417},
+		{151, 214, 46, 105, 0x418},
+		{87, 108, 22, 46, 0x401},
+		{58, 43, 141, 57, 0x40B},
+		{24, 62, 18, 37, 0x408},
+		{155, 200, 123, 157, 0x40B},
+		{0, 0, 0, 0, 0x196},
+		{92, 131, 77, 97, 0x443},
+		{113, 155, 123, 157, 0x420},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{94, 129, 121, 145, 0x415},
+		{14, 79, 108, 142, 0x406},
+		{0, 0, 0, 0, 0x192},
+		{102, 127, 96, 107, 0x443},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 125, 62, 104, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{5, 71, 102, 160, 0x406},
+		{0, 0, 0, 0, 0x193},
+		{71, 92, 97, 146, 0x409},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{40, 133, 99, 158, 0x443},
+		{133, 188, 94, 145, 0x405},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{104, 122, 124, 148, 0x445},
+		{151, 165, 32, 56, 0x445},
+		{100, 118, 34, 55, 0x19F},
+		{50, 66, 35, 58, 0x445},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{89, 129, 58, 106, 0x19F}
+	},
+	{
+		{146, 195, 18, 51, 0x418},
+		{87, 130, 21, 45, 0x400},
+		{150, 204, 66, 99, 0x40B},
+		{63, 112, 80, 103, 0x443},
+		{112, 150, 66, 103, 0x443},
+		{63, 183, 103, 159, 0x40C},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{125, 182, 18, 42, 0x406},
+		{122, 148, 80, 105, 0x401},
+		{130, 175, 135, 156, 0x400},
+		{66, 85, 20, 49, 0x407},
+		{0, 0, 0, 0, 0x194},
+		{53, 89, 77, 95, 0x443},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{88, 144, 18, 49, 0x418},
+		{158, 178, 73, 95, 0x402},
+		{16, 69, 18, 43, 0x400},
+		{5, 52, 81, 108, 0x420},
+		{52, 88, 65, 108, 0x420},
+		{5, 134, 108, 159, 0x40C},
+		{135, 179, 124, 159, 0x40D},
+		{88, 134, 65, 108, 0x443},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{40, 160, 49, 148, 0x442},
+		{5, 39, 49, 159, 0x40B},
+		{210, 226, 75, 116, 0x402},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{135, 177, 68, 111, 0x443},
+		{158, 176, 17, 34, 0x402},
+		{90, 132, 17, 46, 0x40B},
+		{23, 55, 24, 91, 0x420},
+		{4, 55, 27, 124, 0x40C},
+		{55, 113, 17, 124, 0x40C},
+		{113, 154, 65, 124, 0x40C},
+		{154, 227, 81, 160, 0x40E},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{141, 213, 79, 110, 0x410},
+		{0, 0, 0, 0, 0x191},
+		{126, 188, 24, 54, 0x403},
+		{5, 101, 18, 90, 0x40E},
+		{5, 65, 90, 159, 0x40E},
+		{65, 98, 213, 159, 0x40E},
+		{0, 0, 0, 0, 0x196},
+		{5, 213, 18, 159, 0x40E},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{19, 66, 18, 64, 0x40D},
+		{5, 32, 18, 73, 0x40C},
+		{155, 184, 84, 111, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{134, 197, 18, 59, 0x40F},
+		{189, 227, 120, 159, 0x403},
+		{5, 155, 18, 132, 0x443},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{85, 132, 18, 60, 0x419},
+		{0, 0, 0, 0, 0x191},
+		{33, 63, 88, 117, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{72, 144, 130, 159, 0x403},
+		{0, 0, 0, 0, 0x195},
+		{90, 156, 60, 130, 0x443},
+		{144, 94, 130, 159, 0x422},
+		{8, 90, 18, 63, 0x40F},
+		{132, 194, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{161, 215, 111, 159, 0x421},
+		{85, 153, 49, 111, 0x443},
+		{104, 131, 134, 159, 0x412},
+		{153, 201, 54, 111, 0x419},
+		{0, 0, 0, 0, 0x194},
+		{5, 104, 128, 159, 0x40E},
+		{5, 161, 54, 159, 0x40E},
+		{201, 227, 49, 159, 0x414},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 126, 79, 106, 0x443},
+		{163, 212, 56, 108, 0x421},
+		{73, 139, 18, 56, 0x40F},
+		{156, 181, 18, 49, 0x419},
+		{0, 0, 0, 0, 0x194},
+		{129, 194, 121, 156, 0x403},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{22, 100, 18, 138, 0x40E},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{96, 135, 88, 115, 0x443},
+		{29, 96, 68, 115, 0x410},
+		{28, 80, 17, 68, 0x403},
+		{0, 0, 0, 0, 0x193},
+		{80, 135, 17, 88, 0x422},
+		{135, 204, 17, 158, 0x414},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{69, 136, 71, 112, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{136, 175, 91, 119, 0x41F},
+		{0, 0, 0, 0, 0x193},
+		{131, 185, 18, 91, 0x422},
+		{185, 226, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x196},
+		{67, 131, 18, 71, 0x403},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{91, 133, 52, 112, 0x443},
+		{16, 84, 63, 117, 0x40F},
+		{115, 160, 114, 160, 0x421},
+		{37, 70, 139, 160, 0x412},
+		{128, 170, 36, 51, 0x416},
+		{140, 227, 17, 38, 0x416},
+		{152, 227, 38, 160, 0x414},
+		{51, 91, 118, 159, 0x40E},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{67, 150, 53, 159, 0x445},
+		{150, 226, 19, 159, 0x414},
+		{5, 67, 46, 159, 0x40F},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{59, 146, 77, 135, 0x443},
+		{146, 193, 77, 124, 0x403},
+		{129, 206, 124, 159, 0x410},
+		{94, 124, 36, 63, 0x412},
+		{0, 0, 0, 0, 0x195},
+		{94, 147, 18, 77, 0x40E},
+		{5, 129, 18, 158, 0x40E},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{50, 109, 115, 159, 0x422},
+		{0, 0, 0, 0, 0x413},
+		{50, 135, 46, 159, 0x414},
+		{135, 159, 113, 159, 0x414},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{93, 135, 78, 141, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{39, 97, 17, 78, 0x421},
+		{39, 93, 78, 123, 0x403},
+		{39, 135, 123, 159, 0x410},
+		{97, 195, 17, 159, 0x414},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E}
+	},
+	{
+		{15, 66, 104, 141, 0x190},
+		{105, 164, 87, 155, 0x191},
+		{174, 225, 100, 154, 0x192},
+		{81, 132, 37, 78, 0x193},
+		{165, 212, 26, 78, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{84, 150, 79, 114, 0x443},
+		{66, 200, 127, 159, 0x410},
+		{47, 75, 38, 64, 0x412},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{100, 156, 18, 79, 0x421},
+		{150, 200, 72, 132, 0x422},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{156, 226, 18, 159, 0x414},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{26, 42, 48, 77, 0x404},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{112, 134, 77, 84, 0x443},
+		{97, 134, 84, 102, 0x443},
+		{55, 71, 52, 73, 0x41B},
+		{97, 123, 18, 84, 0x404},
+		{84, 97, 61, 92, 0x404},
+		{154, 178, 20, 42, 0x41E},
+		{134, 183, 72, 102, 0x424},
+		{95, 129, 123, 149, 0x41A},
+		{14, 54, 79, 159, 0x414},
+		{66, 86, 73, 82, 0x41B},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 136, 84, 102, 0x443},
+		{104, 116, 101, 122, 0x41B},
+		{113, 134, 122, 130, 0x41B},
+		{78, 97, 96, 110, 0x416},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{98, 136, 84, 102, 0x443},
+		{74, 129, 26, 57, 0x41C},
+		{103, 118, 63, 85, 0x443},
+		{112, 131, 85, 95, 0x443},
+		{78, 99, 58, 70, 0x416},
+		{160, 182, 86, 112, 0x41D},
+		{146, 182, 95, 112, 0x41D},
+		{146, 170, 28, 95, 0x404},
+		{129, 146, 71, 102, 0x404},
+		{59, 98, 84, 160, 0x414},
+		{144, 177, 134, 159, 0x41A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{144, 176, 76, 110, 0x404},
+		{175, 206, 18, 110, 0x404},
+		{167, 226, 84, 159, 0x41D},
+		{4, 45, 18, 48, 0x416},
+		{71, 89, 47, 85, 0x443},
+		{77, 132, 86, 110, 0x443},
+		{4, 67, 18, 39, 0x41C},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{96, 119, 76, 93, 0x443},
+		{82, 120, 125, 153, 0x424},
+		{43, 74, 129, 150, 0x41D},
+		{44, 64, 71, 112, 0x404},
+		{32, 64, 112, 129, 0x404},
+		{0, 0, 0, 0, 0x41B},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{99, 119, 69, 103, 0x443},
+		{135, 185, 123, 154, 0x424},
+		{112, 135, 129, 138, 0x41D},
+		{92, 135, 138, 154, 0x41D},
+		{53, 70, 107, 129, 0x41B},
+		{63, 81, 129, 138, 0x41B},
+		{156, 177, 76, 91, 0x41E},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{74, 124, 38, 133, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{70, 110, 121, 159, 0x441},
+		{92, 112, 33, 59, 0x445},
+		{150, 177, 24, 49, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{129, 149, 43, 60, 0x443},
+		{0, 0, 0, 0, 0x191},
+		{130, 182, 17, 46, 0x41C},
+		{158, 168, 49, 69, 0x41B},
+		{164, 183, 69, 77, 0x41B},
+		{105, 166, 71, 160, 0x414},
+		{46, 80, 98, 149, 0x419},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 129, 78, 86, 0x443},
+		{105, 129, 86, 99, 0x443},
+		{34, 84, 134, 159, 0x425},
+		{48, 75, 81, 109, 0x41A},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 141, 76, 103, 0x443},
+		{53, 80, 125, 150, 0x41A},
+		{67, 92, 80, 87, 0x41D},
+		{54, 92, 87, 103, 0x41D},
+		{38, 54, 63, 95, 0x404},
+		{54, 78, 20, 87, 0x404},
+		{113, 131, 26, 43, 0x41E},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{8, 38, 58, 103, 0x41B},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{58, 68, 88, 103, 0x445},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 133, 81, 120, 0x189},
+		{104, 133, 120, 133, 0x189},
+		{112, 123, 65, 142, 0x189},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{18, 65, 18, 159, 0x414},
+		{65, 143, 75, 159, 0x414},
+		{143, 157, 96, 159, 0x414},
+		{143, 150, 86, 96, 0x414},
+		{99, 120, 38, 60, 0x41A},
+		{65, 112, 58, 75, 0x414}
+	},
+	{
+		{107, 119, 61, 88, 0x445},
+		{91, 110, 95, 136, 0x446},
+		{181, 208, 66, 146, 0x447},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{100, 129, 74, 100, 0x443},
+		{103, 140, 29, 54, 0x41D},
+		{140, 189, 24, 54, 0x424},
+		{89, 126, 18, 41, 0x404},
+		{46, 89, 18, 41, 0x41B},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{95, 129, 124, 131, 0x425},
+		{95, 139, 131, 159, 0x425},
+		{139, 146, 136, 159, 0x425},
+		{5, 58, 18, 159, 0x414},
+		{58, 122, 111, 159, 0x414},
+		{129, 154, 120, 131, 0x414},
+		{139, 160, 131, 159, 0x414},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{125, 179, 49, 126, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{159, 173, 17, 32, 0x445},
+		{148, 165, 40, 61, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{39, 59, 35, 69, 0x447},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{56, 79, 88, 133, 0x445},
+		{103, 122, 81, 136, 0x446},
+		{161, 190, 85, 145, 0x447},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{65, 105, 87, 119, 0x438},
+		{141, 165, 55, 78, 0x40A},
+		{182, 203, 74, 95, 0x414},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{93, 127, 39, 80, 0x40A},
+		{21, 54, 92, 129, 0x41D},
+		{167, 200, 94, 134, 0x422},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{59, 95, 55, 95, 0x40A},
+		{129, 169, 82, 131, 0x41D},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{57, 92, 76, 102, 0x442},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{4, 44, 74, 104, 0x441},
+		{85, 143, 73, 98, 0x448},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x191},
+		{125, 151, 103, 125, 0x42C},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{38, 47, 151, 159, 0x42D},
+		{88, 112, 143, 154, 0x42D},
+		{79, 123, 92, 132, 0x42D},
+		{48, 64, 98, 113, 0x42D},
+		{7, 12, 97, 102, 0x42D},
+		{78, 104, 105, 114, 0x42D},
+		{103, 111, 100, 106, 0x42D},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{13, 48, 82, 112, 0x42D},
+		{45, 54, 61, 75, 0x42D},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{68, 188, 65, 105, 0x441}
+	},
+	{
+		{164, 191, 38, 109, 0x445},
+		{56, 93, 69, 83, 0x444},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{30, 44, 50, 77, 0x198},
+		{30, 44, 113, 140, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{4, 227, 17, 160, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{39, 67, 73, 118, 0x450},
+		{123, 151, 37, 76, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{90, 130, 99, 123, 0x432},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{67, 152, 99, 139, 0x449},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 194, 29, 73, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{110, 123, 82, 130, 0x431},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{104, 121, 60, 86, 0x445},
+		{78, 91, 52, 77, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{151, 190, 31, 105, 0x445},
+		{37, 65, 23, 105, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{144, 223, 48, 105, 0x441},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{11, 59, 80, 141, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{160, 208, 80, 140, 0x446},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{74, 91, 78, 105, 0x42E},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{181, 217, 49, 128, 0x445},
+		{17, 50, 28, 131, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{27, 199, 79, 159, 0x452},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{191, 222, 57, 84, 0x442},
+		{103, 119, 130, 141, 0x44A},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{167, 194, 115, 130, 0x433},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{73, 104, 109, 138, 0x434},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{85, 133, 47, 93, 0x452},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{39, 67, 73, 118, 0x445},
+		{123, 151, 37, 76, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{146, 177, 61, 114, 0x445},
+		{14, 43, 69, 131, 0x446},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{78, 145, 55, 144, 0x456},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{133, 194, 18, 72, 0x413},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{159, 197, 38, 71, 0x441},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{157, 198, 42, 80, 0x404},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{197, 217, 84, 128, 0x453},
+		{26, 42, 48, 77, 0x404},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{84, 105, 77, 108, 0x435},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 197, 77, 119, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 277, 57, 73, 0x441},
+		{47, 119, 107, 160, 0x448},
+		{73, 98, 43, 90, 0x44B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{176, 277, 57, 73, 0x441},
+		{0, 0, 0, 0, 0x448},
+		{73, 98, 43, 90, 0x44B},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{47, 119, 107, 160, 0x451},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{92, 124, 94, 137, 0x441},
+		{67, 81, 71, 160, 0x448},
+		{15, 48, 19, 160, 0x44B},
+		{211, 227, 17, 160, 0x44C},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{181, 205, 50, 96, 0x441},
+		{107, 166, 123, 160, 0x448},
+		{4, 25, 71, 130, 0x44B},
+		{210, 227, 60, 105, 0x44C},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{95, 124, 70, 106, 0x439},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{0, 0, 0, 0, 0x190},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{128, 191, 43, 129, 0x441},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{17, 51, 50, 126, 0x445},
+		{179, 211, 30, 129, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{17, 51, 50, 126, 0x445},
+		{179, 211, 30, 129, 0x452},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{117, 139, 73, 135, 0x430},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{20, 37, 88, 132, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{20, 37, 88, 132, 0x445},
+		{101, 125, 99, 141, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{4, 41, 92, 160, 0x445},
+		{0, 0, 0, 0, 0x191},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{61, 78, 69, 86, 0x458},
+		{136, 142, 17, 130, 0x44D},
+		{167, 175, 17, 139, 0x44E},
+		{181, 194, 58, 136, 0x445},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	},
+	{
+		{164, 192, 71, 130, 0x445},
+		{105, 141, 70, 131, 0x446},
+		{0, 0, 0, 0, 0x192},
+		{0, 0, 0, 0, 0x193},
+		{0, 0, 0, 0, 0x194},
+		{0, 0, 0, 0, 0x195},
+		{0, 0, 0, 0, 0x196},
+		{0, 0, 0, 0, 0x197},
+		{0, 0, 0, 0, 0x198},
+		{0, 0, 0, 0, 0x199},
+		{0, 0, 0, 0, 0x19A},
+		{0, 0, 0, 0, 0x19B},
+		{0, 0, 0, 0, 0x19C},
+		{0, 0, 0, 0, 0x19D},
+		{0, 0, 0, 0, 0x19E},
+		{0, 0, 0, 0, 0x19F}
+	}
+};
+
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 5f71900459..f83d4b1b3a 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1591,16 +1591,31 @@ void KingdomGame::cursorTypeExit() {
 }
 
 int KingdomGame::checkMouseMapAS() {
-	for (int i = 0; i < 16; i++) {
-		if (_cursorX >= _mouseMapAS[_logic->_currMap][i]._minX && _cursorX < _mouseMapAS[_logic->_currMap][i]._maxX
-			&& _cursorY >= _mouseMapAS[_logic->_currMap][i]._minY && _cursorY < _mouseMapAS[_logic->_currMap][i]._maxY)
-			return _mouseMapAS[_logic->_currMap][i]._mouseValue;
-	}
-	if (_logic->_currMap == 11) {
+	if (isDemo()) {
 		for (int i = 0; i < 16; i++) {
-			if (_cursorX >= _mouseMapAS[12][i]._minX && _cursorX < _mouseMapAS[12][i]._maxX
-				&& _cursorY >= _mouseMapAS[12][i]._minY && _cursorY < _mouseMapAS[12][i]._maxY)
-				return _mouseMapAS[12][i]._mouseValue;
+			if (_cursorX >= _mouseMapASDemo[_logic->_currMap][i]._minX && _cursorX < _mouseMapASDemo[_logic->_currMap][i]._maxX
+				&& _cursorY >= _mouseMapASDemo[_logic->_currMap][i]._minY && _cursorY < _mouseMapASDemo[_logic->_currMap][i]._maxY)
+				return _mouseMapASDemo[_logic->_currMap][i]._mouseValue;
+		}
+		if (_logic->_currMap == 11) {
+			for (int i = 0; i < 16; i++) {
+				if (_cursorX >= _mouseMapASDemo[12][i]._minX && _cursorX < _mouseMapASDemo[12][i]._maxX
+					&& _cursorY >= _mouseMapASDemo[12][i]._minY && _cursorY < _mouseMapASDemo[12][i]._maxY)
+					return _mouseMapASDemo[12][i]._mouseValue;
+			}
+		}
+	} else {
+		for (int i = 0; i < 16; i++) {
+			if (_cursorX >= _mouseMapASFull[_logic->_currMap][i]._minX && _cursorX < _mouseMapASFull[_logic->_currMap][i]._maxX
+				&& _cursorY >= _mouseMapASFull[_logic->_currMap][i]._minY && _cursorY < _mouseMapASFull[_logic->_currMap][i]._maxY)
+				return _mouseMapASFull[_logic->_currMap][i]._mouseValue;
+		}
+		if (_logic->_currMap == 11) {
+			for (int i = 0; i < 16; i++) {
+				if (_cursorX >= _mouseMapASFull[12][i]._minX && _cursorX < _mouseMapASFull[12][i]._maxX
+					&& _cursorY >= _mouseMapASFull[12][i]._minY && _cursorY < _mouseMapASFull[12][i]._maxY)
+					return _mouseMapASFull[12][i]._mouseValue;
+			}
 		}
 	}
 	return -1;
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 9431cf1fa3..c2726d425f 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -83,7 +83,8 @@ namespace Kingdom {
 	extern int _hgaSeq[4][2];
 	extern HotSpot _mouseMapMSFull[51];
 	extern HotSpot _mouseMapMSDemo[51];
-	extern HotSpot _mouseMapAS[128][16];
+	extern HotSpot _mouseMapASFull[128][16];
+	extern HotSpot _mouseMapASDemo[128][16];
 
 	struct KingdomSavegameHeader {
 		uint32 _signature;


Commit: 82e562446c1837a757b919dee35de035d641aaa6
    https://github.com/scummvm/scummvm/commit/82e562446c1837a757b919dee35de035d641aaa6
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix numbering of nodes in the full version. All indexes greater than 27 have been reduced by 1

Changed paths:
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/logic.cpp


diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 43373dc4de..709437d869 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -155,20 +155,20 @@ void Logic::GPL2_261() {
 void Logic::GPL2_270() {
 	_nodeNum = 27;
 	_vm->drawLocation();
-	if (_nodes[28] == 1)
-		_nodes[28] = 9;
-	if (_nodes[28] == 9 || _nodes[29] != 0) {
+	if (_nodes[27] == 1)
+		_nodes[27] = 9;
+	if (_nodes[27] == 9 || _nodes[28] != 0) {
 		if (_vm->_wizard)
 			_vm->_sound = true;
 	} else {
 		_vm->_sound = false;
-		_nodes[28] = 1;
+		_nodes[27] = 1;
 	}
 	_vm->playMovie(80);
 	_vm->playSound(18);
 	_currMap = 10;
 	_statPlay = 271;
-	_nodes[28] = 1;
+	_nodes[27] = 1;
 	_vm->_userInput = 0;
 }
 
@@ -203,7 +203,7 @@ void Logic::GPL2_280() {
 	_vm->_fstFwd = false;
 	_vm->playMovie(81);
 	_currMap = 10;
-	_nodes[29] = _nodes[39] = 1;
+	_nodes[28] = _nodes[38] = 1;
 	_statPlay = _robberyNode * 10;
 	enAll();
 	_vm->_loopFlag = true;
@@ -213,7 +213,7 @@ void Logic::GPL2_290() {
 	_oldNode = _nodeNum;
 	if (!_vm->_wizard) {
 		_nodes[26] = 9;
-		_nodes[30] = 8;
+		_nodes[29] = 8;
 	}
 	if (_nodes[26] == 0) {
 		_statPlay = 260;
@@ -227,24 +227,24 @@ void Logic::GPL2_290() {
 			_vm->drawLocation();
 			_nodes[26]++;
 			_vm->_userInput = 0;
-			switch (_nodes[30]) {
+			switch (_nodes[29]) {
 			case 0:
 				_vm->_sound = false;
 				_vm->playMovie(82);
 				_currMap = 89;
-				_nodes[30] = 1;
+				_nodes[29] = 1;
 				break;
 			case 1:
 				_vm->_sound = true;
 				_vm->playMovie(82);
 				_currMap = 89;
-				_nodes[30] = 0;
+				_nodes[29] = 0;
 				break;
 			case 8:
 				_vm->_sound = false;
 				_vm->playMovie(85);
 				_currMap = 10;
-				_nodes[30] = 9;
+				_nodes[29] = 9;
 				_vm->_tsIconOnly = true;
 				break;
 			default:
@@ -268,12 +268,12 @@ void Logic::GPL2_291() {
 		_vm->playMovie(83);
 		_vm->playSound(30);
 		inventoryAdd(10);
-		_nodes[30] = 8;
+		_nodes[29] = 8;
 		_vm->_userInput = 0;
 		_currMap = 10;
 		break;
 	case 0x432:
-		if (_nodes[30] >= 8)
+		if (_nodes[29] >= 8)
 			_vm->displayIcon(140);
 		else {
 			dsAll();
@@ -351,7 +351,7 @@ void Logic::GPL2_310() {
 		_vm->playSound(18);
 		_currMap = 90;
 		_statPlay = 311;
-		_nodes[32] = 1;
+		_nodes[31] = 1;
 		_vm->_aTimer = 0;
 		_vm->_userInput = 0;
 	}
@@ -393,12 +393,12 @@ void Logic::GPL2_320() {
 	_vm->drawLocation();
 	_vm->_userInput = 0;
 	increaseHealth();
-	if (_nodes[33] != 9 && _vm->_wizard) {
+	if (_nodes[32] != 9 && _vm->_wizard) {
 		_vm->_sound = false;
-		_nodes[33] = 9;
+		_nodes[32] = 9;
 	} else {
 		_vm->_sound = true;
-		_nodes[33] = 1;
+		_nodes[32] = 1;
 	}
 	_vm->playMovie(87);
 	_vm->playSound(18);
@@ -435,7 +435,7 @@ void Logic::GPL2_330() {
 	if (!chkDesertObstacles()) {
 		_vm->drawLocation();
 		_vm->_userInput = 0;
-		if (_nodes[32] == 0)
+		if (_nodes[31] == 0)
 			_vm->_sound = false;
 		else
 			_vm->_sound = true;
@@ -470,7 +470,7 @@ void Logic::GPL2_332() {
 }
 
 void Logic::GPL2_340() {
-	if (_nodes[36] == 0) {
+	if (_nodes[35] == 0) {
 		_statPlay = 350;
 		_vm->_loopFlag = true;
 		_nextNode = 34;
@@ -480,7 +480,7 @@ void Logic::GPL2_340() {
 		if (!chkDesertObstacles()) {
 			_vm->drawLocation();
 			_vm->_userInput = 0;
-			if (_nodes[35] == 9 || _nodes[41] == 0 || !_vm->_wizard) {
+			if (_nodes[34] == 9 || _nodes[40] == 0 || !_vm->_wizard) {
 				_vm->playMovie(91);
 				_currMap = 92;
 			} else {
@@ -488,7 +488,7 @@ void Logic::GPL2_340() {
 				_vm->showPic(389);
 				_currMap = 91;
 			}
-			if (_nodes[35] == 9)
+			if (_nodes[34] == 9)
 				_vm->_tsIconOnly = true;
 			_vm->playSound(26);
 			_statPlay = 341;
@@ -499,12 +499,12 @@ void Logic::GPL2_340() {
 void Logic::GPL2_341() {
 	switch(_vm->_userInput) {
 	case 0x431:
-		if (_nodes[35] == 9)
+		if (_nodes[34] == 9)
 			_vm->displayIcon(139);
 		else {
 			_vm->playMovie(90);
 			inventoryAdd(9);
-			_nodes[35] = 9;
+			_nodes[34] = 9;
 			_currMap = 93;
 		}
 		break;
@@ -545,8 +545,8 @@ void Logic::GPL2_342() {
 
 void Logic::GPL2_350() {
 	if (!_vm->_wizard)
-		_nodes[36] = 1;
-	if (_nodes[36] == 1) {
+		_nodes[35] = 1;
+	if (_nodes[35] == 1) {
 		_statPlay = _nextNode * 10;
 		_vm->_loopFlag = true;
 	} else {
@@ -583,7 +583,7 @@ void Logic::GPL2_351() {
 		enAll();
 		_vm->playMovie(179);
 		inventoryDel(2);
-		_nodes[36] = 1;
+		_nodes[35] = 1;
 		_vm->_userInput = 0;
 		_statPlay = _nextNode * 10;
 		_lastObs = true;
@@ -600,7 +600,7 @@ void Logic::GPL2_351() {
 void Logic::GPL2_360() {
 	_nodeNum = 36;
 	_vm->drawLocation();
-	if (_nodes[37] == 0)
+	if (_nodes[36] == 0)
 		_vm->_sound = false;
 	else
 		_vm->_sound = true;
@@ -628,10 +628,10 @@ void Logic::GPL2_361() {
 		_vm->playMovie(97);
 		inventoryDel(0);
 		_vm->playSound(5);
-		_nodes[37] = 1;
+		_nodes[36] = 1;
 		_vm->_userInput = 0;
 		_currMap = 10;
-		if (_nodes[43] == 0) {
+		if (_nodes[42] == 0) {
 			_statPlay = 420;
 			_oldNode = _nodeNum;
 			_nodeNum = 42;
@@ -646,7 +646,7 @@ void Logic::GPL2_361() {
 		_vm->playMovie(98);
 		inventoryDel(2);
 		_vm->playSound(5);
-		_nodes[37] = 1;
+		_nodes[36] = 1;
 		_vm->_userInput = 0;
 		_currMap = 10;
 		_vm->_tsIconOnly = true;
@@ -657,7 +657,7 @@ void Logic::GPL2_361() {
 		_vm->playMovie(100);
 		inventoryDel(6);
 		_vm->playSound(5);
-		_nodes[37] = 1;
+		_nodes[36] = 1;
 		_vm->_userInput = 0;
 		_currMap = 10;
 		_vm->_tsIconOnly = true;
@@ -667,7 +667,7 @@ void Logic::GPL2_361() {
 		enAll();
 		_vm->playMovie(96);
 		_vm->playSound(5);
-		_nodes[37] = 9;
+		_nodes[36] = 9;
 		_vm->_userInput = 0;
 		_currMap = 10;
 		_statPlay = 420;
@@ -707,7 +707,7 @@ void Logic::GPL2_370() {
 	_nodeNum = 37;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	_nodes[38] = 0;
+	_nodes[37] = 0;
 	_vm->playMovie(102);
 	_vm->playSound(20);
 	_currMap = 109;
@@ -751,7 +751,7 @@ void Logic::GPL2_380() {
 		_vm->playMovie(159);
 		_currMap = 10;
 		_vm->playSound(7);
-		_nodes[39] = 1;
+		_nodes[38] = 1;
 		_statPlay = 381;
 	}
 }
@@ -761,7 +761,7 @@ void Logic::GPL2_381() {
 	case 0x428:
 	case 0x429:
 	case 0x42A:
-		if (_vm->_wizard && _nodes[39] != 9) {
+		if (_vm->_wizard && _nodes[38] != 9) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->saveAS();
 			_vm->playMovie(178);
@@ -770,7 +770,7 @@ void Logic::GPL2_381() {
 		_vm->_userInput = 0;
 		break;
 	case 0x430:
-		if (_vm->_wizard && _nodes[39] != 9) {
+		if (_vm->_wizard && _nodes[38] != 9) {
 			dsAll();
 			_vm->playMovie(162);
 			_statPlay = 992;
@@ -778,27 +778,27 @@ void Logic::GPL2_381() {
 		}
 		break;
 	case 0x433:
-		if (_vm->_wizard && _nodes[39] != 9) {
+		if (_vm->_wizard && _nodes[38] != 9) {
 			_vm->playMovie(161);
 			inventoryDel(11);
-			_nodes[51] = 0;
+			_nodes[50] = 0;
 			_vm->_userInput = 0;
 		}
 		_vm->_userInput = 0;
 		break;
 	case 0x435:
-		if (_vm->_wizard && _nodes[39] != 9) {
+		if (_vm->_wizard && _nodes[38] != 9) {
 			_vm->playMovie(160);
 			inventoryDel(13);
-			_nodes[39] = 9;
-			_nodes[59] = 0;
+			_nodes[38] = 9;
+			_nodes[58] = 0;
 			_vm->_userInput = 0;
 			_vm->_tsIconOnly = true;
 			_currMap = 108;
 		}
 		break;
 	case 0x437:
-		if (_vm->_wizard && _nodes[39] != 9) {
+		if (_vm->_wizard && _nodes[38] != 9) {
 			_vm->playMovie(163);
 			inventoryDel(15);
 			_nodes[12] = 0;
@@ -828,7 +828,7 @@ void Logic::GPL2_381() {
 }
 
 void Logic::GPL2_382() {
-	if (_vm->_wizard && (_nodes[39] != 9) && (_vm->_userInput == 0x413))
+	if (_vm->_wizard && (_nodes[38] != 9) && (_vm->_userInput == 0x413))
 		_vm->_userInput = 0;
 
 	_vm->processMapInput(38);
@@ -848,12 +848,12 @@ void Logic::GPL2_390() {
 void Logic::GPL2_400() {
 	_nodeNum = 40;
 	if (!_vm->_wizard)
-		_nodes[41] = 2;
-	if (_nodes[41]) {
-		if (_nodes[41] == 1)
-			_nodes[41] = 2;
+		_nodes[40] = 2;
+	if (_nodes[40]) {
+		if (_nodes[40] == 1)
+			_nodes[40] = 2;
 		else {
-			_nodes[41] = 1;
+			_nodes[40] = 1;
 			_vm->_sound = true;
 		}
 	} else {
@@ -879,7 +879,7 @@ void Logic::GPL2_401() {
 	case 0x428:
 	case 0x429:
 	case 0x42A:
-		if (!_nodes[41]) {
+		if (!_nodes[40]) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->_aTimer = 0;
 			_vm->playMovie(178);
@@ -889,7 +889,7 @@ void Logic::GPL2_401() {
 		}
 		break;
 	case 0x42C:
-		if (!_nodes[41]) {
+		if (!_nodes[40]) {
 			_vm->_aTimer = 0;
 			dsAll();
 			_vm->playMovie(108);
@@ -899,17 +899,17 @@ void Logic::GPL2_401() {
 		}
 		break;
 	case 0x42E:
-		if (!_nodes[41]) {
+		if (!_nodes[40]) {
 			_vm->_aTimer = 0;
 			_vm->playMovie(109);
 			inventoryDel(6);
-			_nodes[43] = 0;
+			_nodes[42] = 0;
 			_vm->_userInput = 0;
 			_vm->_aTimer = 136;
 		}
 		break;
 	case 0x437:
-		if (!_nodes[41]) {
+		if (!_nodes[40]) {
 			_vm->_aTimer = 0;
 			_help = true;
 			_replay = true;
@@ -917,7 +917,7 @@ void Logic::GPL2_401() {
 			_vm->_fstFwd = true;
 			_vm->playMovie(107);
 			_vm->playSound(26);
-			_nodes[41] = 1;
+			_nodes[40] = 1;
 			_vm->_userInput = 0;
 			_currMap = 96;
 			_vm->_tsIconOnly = true;
@@ -951,7 +951,7 @@ void Logic::GPL2_410() {
 	_nodeNum = 41;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_nodes[41])
+	if (_nodes[40])
 		_vm->_sound = true;
 
 	_eye = false;
@@ -999,7 +999,7 @@ void Logic::GPL2_411() {
 }
 
 void Logic::GPL2_420() {
-	if (_nodes[37] == 9 || _nodes[29] == 1 || !_vm->_wizard) {
+	if (_nodes[36] == 9 || _nodes[28] == 1 || !_vm->_wizard) {
 		_oldNode = _nodeNum;
 		_nodeNum = 42;
 		if (!chkDesertObstacles()) {
@@ -1024,17 +1024,17 @@ void Logic::GPL2_421() {
 		_vm->_userInput = 0;
 		break;
 	case 0x42E:
-		if (_nodes[43])
+		if (_nodes[42])
 			_vm->displayIcon(136);
 		else {
-			if (_nodes[35] == 9) {
+			if (_nodes[34] == 9) {
 				_vm->_sound = false;
 			} else {
 				_vm->_sound = true;
 			}
 			_vm->playMovie(113);
 			inventoryAdd(6);
-			_nodes[43] = 9;
+			_nodes[42] = 9;
 			_currMap = 10;
 		}
 		_vm->_tsIconOnly = true;
@@ -1065,7 +1065,7 @@ void Logic::GPL2_430() {
 	_vm->drawLocation();
 	_eye = false;
 	_vm->_userInput = 0;
-	if (_nodes[44] == 9) {
+	if (_nodes[43] == 9) {
 		_vm->_tsIconOnly = true;
 		_vm->playMovie(118);
 		_currMap = 80;
@@ -1081,7 +1081,7 @@ void Logic::GPL2_430() {
 		_vm->playSound(25);
 		inventoryDel(12);
 		inventoryAdd(16);
-		_nodes[44] = 9;
+		_nodes[43] = 9;
 		_currMap = 79;
 		_vm->_tsIconOnly = true;
 	}
@@ -1095,7 +1095,7 @@ void Logic::GPL2_431() {
 	case 0x40A:
 		_vm->playMovie(10);
 		_statPlay = 200;
-		if (_nodes[44] != 9)
+		if (_nodes[43] != 9)
 			_nodes[20] = 1;
 		_currMap = 10;
 		_vm->_loopFlag = true;
@@ -1121,7 +1121,7 @@ void Logic::GPL2_431() {
 	case 0x428:
 	case 0x429:
 	case 0x42A:
-		if (_nodes[44] != 9) {
+		if (_nodes[43] != 9) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->saveAS();
 			_vm->playMovie(178);
@@ -1129,7 +1129,7 @@ void Logic::GPL2_431() {
 		}
 		break;
 	case 0x438:
-		if (_nodes[44] == 9) {
+		if (_nodes[43] == 9) {
 			_vm->displayIcon(146);
 		} else {
 			dsAll();
@@ -1152,7 +1152,7 @@ void Logic::GPL2_440() {
 	_nodeNum = 44;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_inventory[12] > 0 || _nodes[44] == 9)
+	if (_inventory[12] > 0 || _nodes[43] == 9)
 		_vm->_sound = true;
 
 	_vm->playMovie(119);
@@ -1192,7 +1192,7 @@ void Logic::GPL2_442() {
 void Logic::GPL2_450() {
 	_nodeNum = 45;
 	_vm->_userInput = 0;
-	if (!_nodes[41]) {
+	if (!_nodes[40]) {
 		dsAll();
 		_vm->playMovie(120);
 		_statPlay = 992;
@@ -1234,10 +1234,10 @@ void Logic::GPL2_460() {
 	_nodeNum = 46;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_nodes[47] && _vm->_wizard)
-		_nodes[47] = 1;
+	if (_nodes[46] && _vm->_wizard)
+		_nodes[46] = 1;
 	else {
-		_nodes[47] = 0;
+		_nodes[46] = 0;
 		_vm->_sound = true;
 	}
 	_vm->playMovie(121);
@@ -1282,7 +1282,7 @@ void Logic::GPL2_480() {
 	_vm->playMovie(114);
 	_currMap = 10;
 	_statPlay = 481;
-	_nodes[49] = 1;
+	_nodes[48] = 1;
 }
 
 void Logic::GPL2_481() {
@@ -1343,8 +1343,8 @@ void Logic::GPL2_491() {
 		_vm->_aTimer = 0;
 		enAll();
 		_vm->playMovie(181);
-		_nodes[29] = 9;
-		_nodes[49] = 0;
+		_nodes[28] = 9;
+		_nodes[48] = 0;
 		_statPlay = _nextNode * 10;
 		_vm->_loopFlag = true;
 		break;
@@ -1359,17 +1359,17 @@ void Logic::GPLogic2_SubSP361() {
 	enAll();
 	_vm->_userInput = 0;
 	_vm->playSound(19);
-	if (_nodes[29] == 1) {
+	if (_nodes[28] == 1) {
 		_statPlay = 480;
 		_vm->_loopFlag = true;
 		_currMap = 10;
 	} else {
 		if (_inventory[6] == 1 || !_vm->_wizard) {
-			if (_nodes[43] != 1 || _vm->_wizard)
-				_nodes[43] = 1;
+			if (_nodes[42] != 1 || _vm->_wizard)
+				_nodes[42] = 1;
 			else {
 				_vm->_sound = true;
-				_nodes[43] = 2;
+				_nodes[42] = 2;
 			}
 			_vm->playMovie(122);
 			_currMap = 10;
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index edcbabb1e5..109e336419 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -31,20 +31,20 @@ void Logic::GPL3_500() {
 	_vm->_userInput = 0;
 	_resurrect = false;
 	if (!_vm->_wizard)
-		_nodes[51] = 1;
-	switch(_nodes[51]) {
+		_nodes[50] = 1;
+	switch(_nodes[50]) {
 	case 0:
 		_vm->playMovie(123);
 		_currMap = 102;
 		break;
 	case 1:
-		_nodes[51] = 2;
+		_nodes[50] = 2;
 		_vm->playMovie(126);
 		_currMap = 10;
 		_vm->_tsIconOnly = true;
 		break;
 	default:
-		_nodes[51] = 1;
+		_nodes[50] = 1;
 		_vm->_sound = true;
 		_vm->playMovie(126);
 		_currMap = 10;
@@ -60,7 +60,7 @@ void Logic::GPL3_501() {
 	case 0x428:
 	case 0x429:
 	case 0x42A:
-		if (!_nodes[51]) {
+		if (!_nodes[50]) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->saveAS();
 			_vm->playMovie(178);
@@ -69,7 +69,7 @@ void Logic::GPL3_501() {
 		}
 		break;
 	case 0x433:
-		if (!_nodes[51]) {
+		if (!_nodes[50]) {
 			dsAll();
 			_vm->playMovie(125);
 			_statPlay = 993;
@@ -79,9 +79,9 @@ void Logic::GPL3_501() {
 
 		break;
 	case 0x439:
-		if (!_nodes[51]) {
+		if (!_nodes[50]) {
 			_vm->playMovie(124);
-			_nodes[51] = 1;
+			_nodes[50] = 1;
 			inventoryAdd(11);
 			_vm->_userInput = 0;
 			_currMap = 10;
@@ -125,7 +125,7 @@ void Logic::GPL3_511() {
 			_vm->displayIcon(142);
 		else {
 			_vm->playMovie(128);
-			_nodes[52] = 9;
+			_nodes[51] = 9;
 			inventoryAdd(12);
 			_vm->_userInput = 0;
 			_currMap = 10;
@@ -165,11 +165,11 @@ void Logic::GPL3_520() {
 	_nodeNum = 52;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_nodes[53] == 0)
-		_nodes[53] = 1;
+	if (_nodes[52] == 0)
+		_nodes[52] = 1;
 	else {
 		_vm->_sound = true;
-		_nodes[53] = false;
+		_nodes[52] = false;
 	}
 	_vm->playMovie(130);
 	_currMap = 111;
@@ -225,7 +225,7 @@ void Logic::GPL3_530() {
 void Logic::GPL3_531() {
 	switch(_vm->_userInput) {
 	case 0x428:
-		if (_nodes[54] == 0) {
+		if (_nodes[53] == 0) {
 			_vm->playMovie(71);
 			inventoryAdd(14);
 			inventoryDel(0);
@@ -257,7 +257,7 @@ void Logic::GPL3_531() {
 		enAll();
 		_vm->playMovie(135);
 		_currMap = 106;
-		_nodes[57] = 1;
+		_nodes[56] = 1;
 		_vm->playSound(8);
 		_vm->_tsIconOnly = true;
 		_statPlay = 561;
@@ -282,11 +282,11 @@ void Logic::GPL3_540() {
 		_vm->_sound = true;
 		_currMap = 55;
 	} else {
-		if (!_nodes[55])
-			_nodes[55] = 1;
+		if (!_nodes[54])
+			_nodes[54] = 1;
 		else {
 			_vm->_sound = true;
-			_nodes[55] = 0;
+			_nodes[54] = 0;
 		}
 		_currMap = 112;
 	}
@@ -340,8 +340,8 @@ void Logic::GPL3_550() {
 	_vm->drawLocation();
 	_vm->_userInput = 0;
 	_vm->playMovie(133);
-	if (_nodes[56] != 9)
-		_nodes[56] = 0;
+	if (_nodes[55] != 9)
+		_nodes[55] = 0;
 	_vm->_tsIconOnly = true;
 	_currMap = 104;
 	_statPlay = 551;
@@ -359,17 +359,17 @@ void Logic::GPL3_551() {
 		break;
 	case 0x42C:
 		_vm->_aTimer = 0;
-		if (_nodes[56] == 1) {
+		if (_nodes[55] == 1) {
 			enAll();
 			_vm->playMovie(183);
 			_vm->fShowPic(433);
 			_vm->playSound(8);
-			_nodes[56] = 9;
+			_nodes[55] = 9;
 			_vm->_tsIconOnly = true;
 		}
 		break;
 	case 0x43A:
-		if (_nodes[56] == 1) {
+		if (_nodes[55] == 1) {
 			dsAll();
 			_vm->playMovie(134);
 			_statPlay = 993;
@@ -389,12 +389,12 @@ void Logic::GPL3_551() {
 		break;
 	case 0x452:
 		_vm->_aTimer = 0;
-		switch(_nodes[56]) {
+		switch(_nodes[55]) {
 	case 0:
 		dsAll();
 		_vm->playMovie(69);
 		_vm->_tsIconOnly = false;
-		_nodes[56] = 1;
+		_nodes[55] = 1;
 		_vm->setATimer();
 		break;
 	case 1:
@@ -418,7 +418,7 @@ void Logic::GPL3_551() {
 
 void Logic::GPL3_552() {
 	_vm->processMapInput(55);
-	if (!_nodes[56] && _statPlay == 560) {
+	if (!_nodes[55] && _statPlay == 560) {
 		_statPlay = 551;
 		_vm->_userInput = 0x190;
 		_vm->_loopFlag = true;
@@ -434,7 +434,7 @@ void Logic::GPL3_560() {
 		enAll();
 		_vm->playMovie(135);
 		_vm->showPic(435);
-		_nodes[57] = 1;
+		_nodes[56] = 1;
 		_vm->playSound(8);
 		_statPlay = 561;
 		_currMap = 106;
@@ -444,7 +444,7 @@ void Logic::GPL3_560() {
 		_vm->playMovie(135);
 		_currMap = 10;
 		_vm->setATimer();
-		_nodes[57] = 0;
+		_nodes[56] = 0;
 		_statPlay = 561;
 	}
 }
@@ -462,7 +462,7 @@ void Logic::GPL3_561() {
 	case 0x429:
 	case 0x42A:
 		_vm->_aTimer = 0;
-		if (!_nodes[57]) {
+		if (!_nodes[56]) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->saveAS();
 			_vm->playMovie(178);
@@ -473,13 +473,13 @@ void Logic::GPL3_561() {
 		break;
 	case 0x42C:
 		_vm->_aTimer = 0;
-		if (!_nodes[57]) {
+		if (!_nodes[56]) {
 			_vm->_fstFwd = false;
 			_replay = true;
 			_vm->playMovie(138);
 			enAll();
 			_vm->playSound(8);
-			_nodes[57] = 1;
+			_nodes[56] = 1;
 			inventoryDel(4);
 			_nodes[22] = 0;
 			_currMap = 88;
@@ -488,14 +488,14 @@ void Logic::GPL3_561() {
 		break;
 	case 0x438:
 		_vm->_aTimer = 0;
-		if (!_nodes[57]) {
+		if (!_nodes[56]) {
 			enAll();
 			_vm->_fstFwd = false;
 			_replay = true;
 			_vm->playMovie(137);
 			enAll();
 			_vm->playSound(8);
-			_nodes[57] = 1;
+			_nodes[56] = 1;
 			_currMap = 106;
 			_vm->_tsIconOnly = true;
 		}
@@ -508,10 +508,10 @@ void Logic::GPL3_561() {
 		break;
 	case 0x43E:
 		_vm->_fstFwd = false;
-		if (_vm->_pMovie == 135 && _nodes[57]) {
+		if (_vm->_pMovie == 135 && _nodes[56]) {
 			_vm->_frameStop = 50;
 			_vm->playMovie(135);
-		} else if (_nodes[57])
+		} else if (_nodes[56])
 			_vm->playMovie(_vm->_pMovie);
 		else {
 			_vm->_userInput = 753;
@@ -546,12 +546,12 @@ void Logic::GPL3_562() {
 }
 
 void Logic::GPL3_570() {
-	if (_nodes[58]) {
+	if (_nodes[57]) {
 		if (_rtnNode != 34)
 			_vm->_sound = true;
 		_nodeNum = 57;
 		_vm->drawLocation();
-		_nodes[58] = 0;
+		_nodes[57] = 0;
 		_vm->_userInput = 0;
 		_vm->playMovie(139);
 		_vm->playSound(27);
@@ -591,23 +591,23 @@ void Logic::GPL3_580() {
 	_vm->drawLocation();
 	_vm->_iconsClosed = true;
 	_vm->_userInput = 0;
-	switch(_nodes[59]) {
+	switch(_nodes[58]) {
 	case 0:
 		_vm->_sound = true;
 		_vm->playMovie(140);
 		_currMap = 113;
-		_nodes[59] = 1;
+		_nodes[58] = 1;
 		break;
 	case 1:
 		_vm->playMovie(140);
 		_currMap = 113;
-		_nodes[59] = 0;
+		_nodes[58] = 0;
 		break;
 	case 8:
 		_vm->_tsIconOnly = true;
 		_vm->playMovie(143);
 		_currMap = 10;
-		_nodes[59] = 9;
+		_nodes[58] = 9;
 		break;
 	case 9:
 		_vm->_tsIconOnly = true;
@@ -624,7 +624,7 @@ void Logic::GPL3_581() {
 	switch(_vm->_userInput) {
 	case 0x430:
 		_vm->playMovie(141);
-		_nodes[59] = 8;
+		_nodes[58] = 8;
 		inventoryAdd(13);
 		_vm->_tsIconOnly = true;
 		_currMap = 10;
@@ -633,7 +633,7 @@ void Logic::GPL3_581() {
 	case 0x428:
 	case 0x429:
 	case 0x42A:
-		if (_nodes[59] < 8) {
+		if (_nodes[58] < 8) {
 			inventoryDel(_vm->_userInput - 0x428);
 			_vm->saveAS();
 			_vm->playMovie(178);
@@ -642,7 +642,7 @@ void Logic::GPL3_581() {
 		_vm->_userInput = 0;
 		break;
 	case 0x435:
-		if (_nodes[59] >= 8)
+		if (_nodes[58] >= 8)
 			_vm->displayIcon(143);
 		else {
 			dsAll();
@@ -675,11 +675,11 @@ void Logic::GPL3_590() {
 	_nodeNum = 59;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_nodes[60] == 0)
-		_nodes[60] = 1;
+	if (_nodes[59] == 0)
+		_nodes[59] = 1;
 	else {
 		_vm->_sound = true;
-		_nodes[60] = 0;
+		_nodes[59] = 0;
 	}
 	_vm->playMovie(144);
 	_vm->showPic(144);
@@ -736,15 +736,15 @@ void Logic::GPL3_610() {
 	_nodeNum = 61;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
+	_nodes[72] = 0;
 	_nodes[73] = 0;
-	_nodes[74] = 0;
-	if (_nodes[62] == 0)
-		_nodes[62] = 1;
+	if (_nodes[61] == 0)
+		_nodes[61] = 1;
 	else
 		_vm->_sound = true;
 
 	_vm->playMovie(146);
-	if (_nodes[70] == 9) {
+	if (_nodes[69] == 9) {
 		_vm->_itemInhibit = true;
 		_vm->_tsIconOnly = true;
 	}
@@ -769,7 +769,7 @@ void Logic::GPL3_611() {
 	case 0x432:
 		_vm->playMovie(147);
 		_inventory[5] = -1;
-		_nodes[30] = 0;
+		_nodes[29] = 0;
 		_currMap = 116;
 		break;
 	case 0x43E:
@@ -806,14 +806,14 @@ void Logic::GPL3_620() {
 	_vm->drawLocation();
 	_vm->_userInput = 0;
 	_eye = false;
-	if (_nodes[63] == 0) {
+	if (_nodes[62] == 0) {
 		_vm->playMovie(149);
 		_currMap = 122;
 	} else {
 		_vm->_frameStop = 24;
 		_vm->playMovie(202);
 		_currMap = 121;
-		_nodes[63] = 9;
+		_nodes[62] = 9;
 	}
 	_vm->_tsIconOnly = true;
 	_vm->playSound(8);
@@ -834,13 +834,13 @@ void Logic::GPL3_621() {
 	case 0x430:
 		_vm->playMovie(150);
 		inventoryAdd(8);
-		_nodes[63] = 1;
+		_nodes[62] = 1;
 		_vm->playSound(25);
 		_currMap = 121;
 		_vm->_userInput = 0;
 		break;
 	case 0x43E:
-		switch (_nodes[63]) {
+		switch (_nodes[62]) {
 		case 0:
 			_vm->playMovie(149);
 			break;
@@ -860,7 +860,7 @@ void Logic::GPL3_621() {
 		_vm->_frameStop = 50;
 		enAll();
 		_vm->playMovie(135);
-		_nodes[57] = 1;
+		_nodes[56] = 1;
 		_vm->playSound(8);
 		_statPlay = 561;
 		_currMap = 106;
@@ -884,11 +884,11 @@ void Logic::GPL3_630() {
 	_vm->drawLocation();
 	_vm->_userInput = 0;
 	_eye = false;
-	if (_nodes[64] == 1 || !_vm->_wizard) {
-		_nodes[64] = 0;
+	if (_nodes[63] == 1 || !_vm->_wizard) {
+		_nodes[63] = 0;
 		_vm->_sound = true;
 	} else
-		_nodes[64] = true;
+		_nodes[63] = true;
 
 	_vm->playMovie(151);
 	_currMap = 72;
@@ -918,11 +918,11 @@ void Logic::GPL3_640() {
 	_nodeNum = 64;
 	_vm->drawLocation();
 	_vm->_userInput = 0;
-	if (_nodes[65] || _vm->_wizard) {
+	if (_nodes[64] || _vm->_wizard) {
 		_vm->_sound = true;
-		_nodes[65] = 0;
+		_nodes[64] = 0;
 	} else
-		_nodes[65] = 1;
+		_nodes[64] = 1;
 
 	_vm->playMovie(152);
 	_currMap = 10;
@@ -957,11 +957,11 @@ void Logic::GPL3_650() {
 	_nodeNum = 65;
 	_eye = false;
 	_vm->_userInput = 0;
-	if (_nodes[66] == 0)
-		_nodes[66] = 1;
+	if (_nodes[65] == 0)
+		_nodes[65] = 1;
 	else {
 		_vm->_sound = true;
-		_nodes[66] = 0;
+		_nodes[65] = 0;
 	}
 	_vm->playMovie(153);
 	_vm->showPic(453);
@@ -982,7 +982,7 @@ void Logic::GPL3_651() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x446:
-		if (_nodes[68] == 1) {
+		if (_nodes[67] == 1) {
 			_statPlay = 660;
 			_vm->_loopFlag = true;
 		} else {
@@ -1005,11 +1005,11 @@ void Logic::GPL3_660() {
 	_nodeNum = 66;
 	_eye = false;
 	_vm->_userInput = 0;
-	if (_nodes[67] == 0)
-		_nodes[67] = 1;
+	if (_nodes[66] == 0)
+		_nodes[66] = 1;
 	else {
 		_vm->_sound = true;
-		_nodes[67] = 0;
+		_nodes[66] = 0;
 	}
 	_vm->playMovie(154);
 	_currMap = 70;
@@ -1029,10 +1029,10 @@ void Logic::GPL3_661() {
 		break;
 	case 0x446:
 		_vm->_loopFlag = true;
-		_statPlay = (_nodes[68] == 1) ? 650 : 790;
+		_statPlay = (_nodes[67] == 1) ? 650 : 790;
 		break;
 	case 0x447:
-		if (!_vm->_wizard || _nodes[68])
+		if (!_vm->_wizard || _nodes[67])
 			_statPlay = 650;
 		else
 			_statPlay = 670;
@@ -1050,7 +1050,7 @@ void Logic::GPL3_670() {
 	_nodeNum = 67;
 	_vm->_userInput = 0;
 	_eye = false;
-	_nodes[68] = 1;
+	_nodes[67] = 1;
 	_vm->_fstFwd = false;
 	_vm->playMovie(155);
 	_currMap = 127;
@@ -1091,9 +1091,9 @@ void Logic::GPL3_680() {
 void Logic::GPL3_690() {
 	_vm->_itemInhibit = false;
 	enAll();
-	if (_nodes[70] == 9) {
+	if (_nodes[69] == 9) {
 		_statPlay = 640;
-		_nodes[73] = 0;
+		_nodes[72] = 0;
 		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
 	} else {
@@ -1120,14 +1120,14 @@ void Logic::GPL3_691() {
 		_vm->_userInput = 0;
 		break;
 	case 0x439:
-		if (_nodes[70] == 9)
+		if (_nodes[69] == 9)
 			_vm->displayIcon(147);
 		else {
 			_vm->_frameStop = 108;
 			_vm->playMovie(158);
 			_vm->_itemInhibit = false;
 			inventoryAdd(17);
-			_nodes[70] = 9;
+			_nodes[69] = 9;
 			_vm->playSound(23);
 			_vm->_userInput = 0;
 			_currMap = 120;
@@ -1150,7 +1150,7 @@ void Logic::GPL3_691() {
 	case 0x441:
 		_vm->_itemInhibit = false;
 		_statPlay = 640;
-		_nodes[73] = 0;
+		_nodes[72] = 0;
 		_vm->_loopFlag = true;
 		_vm->_userInput = 0;
 		break;
@@ -1169,11 +1169,11 @@ void Logic::GPL3_700() {
 	_nodeNum = 70;
 	_vm->_userInput = 0;
 	_eye = false;
-	if (_nodes[71] && _vm->_wizard) {
-		_nodes[71] = 0;
+	if (_nodes[70] && _vm->_wizard) {
+		_nodes[70] = 0;
 		_vm->_sound = false;
 	} else
-		_nodes[71] = 1;
+		_nodes[70] = 1;
 
 	_vm->playMovie(164);
 	_currMap = 74;
@@ -1278,7 +1278,7 @@ void Logic::GPL3_712() {
 		break;
 	case 0x430:
 		_vm->_aTimer = 0;
-		if (_nodes[72] != 2) {
+		if (_nodes[71] != 2) {
 			_vm->playMovie(57);
 			_statPlay = 993;
 		} else {
@@ -1301,7 +1301,7 @@ void Logic::GPL3_712() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x433:
-		if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[72] == 2) {
+		if ((_inventory[8] > 0 && _inventory[14] > 0) || _nodes[71] == 2) {
 			_replay = false;
 			_vm->playMovie(166);
 			_statPlay = 993;
@@ -1311,7 +1311,7 @@ void Logic::GPL3_712() {
 			_vm->playMovie(169);
 			_statPlay = 580;
 			inventoryDel(11);
-			_nodes[51] = 0;
+			_nodes[50] = 0;
 		}
 		_vm->_loopFlag = true;
 		break;
@@ -1321,13 +1321,13 @@ void Logic::GPL3_712() {
 		_vm->playMovie(193);
 		_vm->showPic(128);
 		inventoryDel(14);
-		_nodes[72] = 2;
+		_nodes[71] = 2;
 		_vm->setATimer();
 		break;
 
 	case 0x437:
 		_vm->_aTimer = 0;
-		if (_nodes[72] == 2) {
+		if (_nodes[71] == 2) {
 			_nodeNum = 0;
 			_vm->_iconsClosed = true;
 			_vm->_fstFwd = false;
@@ -1355,17 +1355,17 @@ void Logic::GPL3_720() {
 	_nodeNum = 72;
 	_vm->_userInput = 0;
 	_eye = false;
-	switch (_nodes[73]) {
+	switch (_nodes[72]) {
 	case 0:
-		_nodes[73] = 1;
+		_nodes[72] = 1;
 		break;
 	case 1:
 		_vm->_frameStop = 24;
-		_nodes[73] = 2;
+		_nodes[72] = 2;
 		break;
 	default:
 		_vm->_frameStop = 24;
-		_nodes[73] = 3;
+		_nodes[72] = 3;
 		break;
 	}
 	_vm->playMovie(175);
@@ -1377,12 +1377,12 @@ void Logic::GPL3_720() {
 void Logic::GPL3_721() {
 	switch(_vm->_userInput) {
 	case 0x43E:
-		if (_nodes[73] > 1)
+		if (_nodes[72] > 1)
 			_vm->_frameStop = 24;
 		_vm->playMovie(_vm->_pMovie);
 		break;
 	case 0x441:
-		if (_nodes[73] == 1) {
+		if (_nodes[72] == 1) {
 			_vm->_itemInhibit = false;
 			_statPlay = 640;
 		} else
@@ -1392,19 +1392,19 @@ void Logic::GPL3_721() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x448:
-		_statPlay = (_nodes[73] == 2) ? 730 : 680;
+		_statPlay = (_nodes[72] == 2) ? 730 : 680;
 		_currMap = 10;
 		_vm->_loopFlag = true;
 		break;
 	case 0x44B:
-		_statPlay = (_nodes[73] == 1) ? 730 : 680;
+		_statPlay = (_nodes[72] == 1) ? 730 : 680;
 		_currMap = 10;
 		_vm->_loopFlag = true;
 		break;
 	case 0x44C:
-		if (_nodes[73] == 1) {
+		if (_nodes[72] == 1) {
 			_statPlay = 730;
-			_nodes[74] = 3;
+			_nodes[73] = 3;
 		} else
 			_statPlay = 680;
 
@@ -1422,21 +1422,21 @@ void Logic::GPL3_730() {
 	_nodeNum = 73;
 	_vm->_userInput = 0;
 	_eye = false;
-	switch(_nodes[74]) {
+	switch(_nodes[73]) {
 	case 0:
-		_nodes[74] = 1;
+		_nodes[73] = 1;
 		break;
 	case 1:
 		_vm->_sound = true;
-		_nodes[74] = 2;
+		_nodes[73] = 2;
 		break;
 	case 2:
 		_vm->_frameStop = 23;
-		_nodes[74] = 3;
+		_nodes[73] = 3;
 		break;
 	default:
 		_vm->_frameStop = 23;
-		_nodes[74] = 4;
+		_nodes[73] = 4;
 		break;
 	}
 	_vm->playMovie(176);
@@ -1448,20 +1448,20 @@ void Logic::GPL3_730() {
 void Logic::GPL3_731() {
 	switch(_vm->_userInput) {
 	case 0x43E:
-		if (_nodes[74] > 2)
+		if (_nodes[73] > 2)
 			_vm->_frameStop = 23;
 		_vm->_sound = _vm->_lastSound;
 		_vm->playMovie(_vm->_pMovie);
 		break;
 	case 0x441:
-		switch (_nodes[74]) {
+		switch (_nodes[73]) {
 		case 1:
 		case 2:
 			_statPlay = 720;
 			break;
 		case 3:
 			_statPlay = 720;
-			_nodes[73] = 1;
+			_nodes[72] = 1;
 			break;
 		default:
 			_statPlay = 680;
@@ -1471,13 +1471,13 @@ void Logic::GPL3_731() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x448:
-		switch(_nodes[74]) {
+		switch(_nodes[73]) {
 		case 3:
 			_statPlay = 690;
 			break;
 		case 4:
 			_statPlay = 720;
-			_nodes[73] = 1;
+			_nodes[72] = 1;
 			break;
 		default:
 			_statPlay = 680;
@@ -1485,14 +1485,14 @@ void Logic::GPL3_731() {
 		}
 		break;
 	case 0x44B:
-		switch(_nodes[74]) {
+		switch(_nodes[73]) {
 		case 1:
 			_statPlay = 720;
 			break;
 		case 3:
 		case 4:
 			_statPlay = 720;
-			_nodes[73] = 1;
+			_nodes[72] = 1;
 			break;
 		default:
 			_statPlay= 680;
@@ -1503,14 +1503,14 @@ void Logic::GPL3_731() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x44C:
-		switch(_nodes[74]) {
+		switch(_nodes[73]) {
 		case 1:
 		case 2:
 			_statPlay = 720;
 			break;
 		case 4:
 			_statPlay = 720;
-			_nodes[73] = 1;
+			_nodes[72] = 1;
 			break;
 		default:
 			_statPlay = 680;
@@ -1554,11 +1554,11 @@ void Logic::GPL3_741() {
 		_vm->_userInput = 753;
 		break;
 	case 0x432:
-		if (_nodes[75]) {
+		if (_nodes[74]) {
 			_vm->_sound = false;
-			_nodes[75] = false;
+			_nodes[74] = false;
 		} else
-			_nodes[75] = true;
+			_nodes[74] = true;
 		break;
 	case 0x437:
 		_vm->_loopFlag = true;
@@ -1566,7 +1566,7 @@ void Logic::GPL3_741() {
 			_vm->_frameStop = 88;
 			_vm->playMovie(187);
 			_statPlay = 570;
-			_nodes[58] = 1;
+			_nodes[57] = 1;
 		} else {
 			_vm->_frameStop = 78;
 			_vm->playMovie(187);
@@ -1602,7 +1602,7 @@ void Logic::GPL3_761() {
 		break;
 	case 0x44D:
 		_vm->playMovie(191);
-		_nodes[68] = 2;
+		_nodes[67] = 2;
 		_statPlay = 660;
 		_vm->_loopFlag = true;
 		break;
@@ -1692,7 +1692,7 @@ void Logic::GPL3_781() {
 		_vm->_loopFlag = true;
 		break;
 	case 0x446:
-		_statPlay = (_nodes[68] == 1) ? 760 : 660;
+		_statPlay = (_nodes[67] == 1) ? 760 : 660;
 		_vm->_loopFlag = true;
 		break;
 	default:
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 16f7c7c184..4a57aef11a 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -129,9 +129,9 @@ void Logic::GPL4_991() {
 		}
 
 		_vm->_loopFlag = true;
-		if (!_vm->isDemo() && _nodes[29] == 1) {
-			_nodes[29] = 0;
-			_nodes[49] = 0;
+		if (!_vm->isDemo() && _nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
 		}
 
 		if (_vm->isDemo() && _nodes[28] == 1) {
@@ -185,9 +185,9 @@ void Logic::GPL4_992() {
 		}
 
 		_vm->_loopFlag = true;
-		if (_nodes[29] == 1) {
-			_nodes[29] = 0;
-			_nodes[49] = 0;
+		if (_nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
 		}
 
 		_vm->_itemInhibit = false;
@@ -283,13 +283,13 @@ void Logic::GPL4_993() {
 
 		_vm->_loopFlag = true;
 		if (!_vm->isDemo()) {
-			if (_nodes[29] == 1) {
-				_nodes[29] = 0;
-				_nodes[49] = 0;
+			if (_nodes[28] == 1) {
+				_nodes[28] = 0;
+				_nodes[48] = 0;
 			}
 
-			if (_nodes[68] == 1)
-				_nodes[68] = 0;
+			if (_nodes[67] == 1)
+				_nodes[67] = 0;
 		} else {
 			if (_nodes[28] == 1) {
 				_nodes[28] = 0;
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index f83d4b1b3a..cfed1c74c6 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -597,7 +597,7 @@ void KingdomGame::drawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 
 void KingdomGame::drawInventory() {
 	fShowPic(108);
-	if (_logic->_nodes[29] == 1 || _logic->_nodes[68] == 1 || _itemInhibit)
+	if (_logic->_nodes[28] == 1 || _logic->_nodes[67] == 1 || _itemInhibit)
 		return;
 
 	if (_logic->_inventory[0] > 0)
@@ -1088,7 +1088,7 @@ void KingdomGame::setATimer() {
 	_aTimerFlag = true;
 	_aTimer = 0;
 	int wrkNodeNum = _logic->_nodeNum;
-	if (_logic->_nodes[29] == 1 || _logic->_nodes[68] == 1)
+	if (_logic->_nodes[28] == 1 || _logic->_nodes[67] == 1)
 		return;
 
 	if (_tsIconOnly)
@@ -1175,7 +1175,7 @@ void KingdomGame::checkMainScreen() {
 			wrkNodeNum = 81;
 		int idx = _iconActTable[wrkNodeNum][i];
 
-		if (_logic->_inventory[idx] >= 1 && _logic->_nodes[29] != 1 && _logic->_nodes[68] != 1 && !_itemInhibit && !_iconsClosed) {
+		if (_logic->_inventory[idx] >= 1 && _logic->_nodes[28] != 1 && _logic->_nodes[67] != 1 && !_itemInhibit && !_iconsClosed) {
 			if (_iconPic[i] != 12 + idx) {
 				if (_iconPic[i] == 89 + i)
 					_iconPic[i] = 96 + i;
@@ -1518,11 +1518,11 @@ void KingdomGame::cursorType() {
 			_mouseValue = 0;
 		break;
 	case 0x40D:
-		if (_logic->_nodes[29] == 1)
+		if (_logic->_nodes[28] == 1)
 			_mouseValue = 0;
 		break;
 	case 0x41F:
-		if (_logic->_nodes[32] == 0)
+		if (_logic->_nodes[31] == 0)
 			_mouseValue = 0;
 		break;
 	case 0x422:
@@ -1565,7 +1565,7 @@ void KingdomGame::cursorType() {
 			if (_logic->_nodeNum == 56 && _logic->_inventory[8] < 1 && _wizard)
 				var2 = 80;
 			int indx = _iconActTable[var2][var6];
-			if (_logic->_inventory[indx] != 0 && _logic->_nodes[29] != 1 && _logic->_nodes[68] != 1 && !_iconsClosed && !_itemInhibit) {
+			if (_logic->_inventory[indx] != 0 && _logic->_nodes[28] != 1 && _logic->_nodes[67] != 1 && !_iconsClosed && !_itemInhibit) {
 				_mouseValue = indx + 0x428;
 				_iconSelect = var6;
 				break;
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 15ee539e36..84e2fc14b7 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -340,8 +340,8 @@ bool Logic::chkDesertObstacles() {
 		return false;
 	}
 
-	if (_nodes[29] || _vm->_rnd->getRandomNumber(6) == 0) {
-		if (!_nodes[49] || _robberyNode != _nodeNum) {
+	if (_nodes[28] || _vm->_rnd->getRandomNumber(6) == 0) {
+		if (!_nodes[48] || _robberyNode != _nodeNum) {
 			if (_lastObstacle != _nodeNum) {
 				if (_vm->_rnd->getRandomNumber(5) == 0) {
 					_statPlay = 250;
@@ -462,7 +462,7 @@ void Logic::gameHelp() {
 			_vm->drawRect(4, 17, 228, 161, 0);
 			_vm->drawInventory();
 
-			if (_nodes[68] == 1 || _nodes[29] == 1 || _vm->_itemInhibit)
+			if (_nodes[67] == 1 || _nodes[28] == 1 || _vm->_itemInhibit)
 				_currMap = 10;
 			else
 				_currMap = 11;
@@ -547,7 +547,7 @@ void Logic::gameHelp() {
 
 	if (_vm->_userInput == 0x260) {
 		_vm->drawInventory();
-		if (_nodes[68] == 1 || _nodes[29] == 1)
+		if (_nodes[67] == 1 || _nodes[28] == 1)
 			_currMap = 10;
 		else
 			_currMap = 11;


Commit: aac768f353f7e155c7eaa1445dfdb3a31b0d337a
    https://github.com/scummvm/scummvm/commit/aac768f353f7e155c7eaa1445dfdb3a31b0d337a
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix code alignment in a switch

Changed paths:
    engines/kingdom/logic.cpp


diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 84e2fc14b7..677a44a571 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -510,8 +510,8 @@ void Logic::gameHelp() {
 		_vm->drawHelpScreen();
 		_vm->_iconRedraw = true;
 		_vm->playSound(1);
-				}
-				break;
+		}
+		break;
 	case 0x244:
 		//TODO: Set _quitFlag to 2
 		_vm->_quit = true;


Commit: 04132df7ac244d1d45865c007fb071b4cd77f7a7
    https://github.com/scummvm/scummvm/commit/04132df7ac244d1d45865c007fb071b4cd77f7a7
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove code duplication due to the renumbering of indexes

Changed paths:
    engines/kingdom/GPLogic4.cpp


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index 4a57aef11a..e16e8e9f55 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -129,12 +129,8 @@ void Logic::GPL4_991() {
 		}
 
 		_vm->_loopFlag = true;
-		if (!_vm->isDemo() && _nodes[28] == 1) {
-			_nodes[28] = 0;
-			_nodes[48] = 0;
-		}
 
-		if (_vm->isDemo() && _nodes[28] == 1) {
+		if (_nodes[28] == 1) {
 			_nodes[28] = 0;
 			_nodes[48] = 0;
 		}
@@ -282,24 +278,15 @@ void Logic::GPL4_993() {
 		}
 
 		_vm->_loopFlag = true;
-		if (!_vm->isDemo()) {
-			if (_nodes[28] == 1) {
-				_nodes[28] = 0;
-				_nodes[48] = 0;
-			}
-
-			if (_nodes[67] == 1)
-				_nodes[67] = 0;
-		} else {
-			if (_nodes[28] == 1) {
-				_nodes[28] = 0;
-				_nodes[48] = 0;
-			}
 
-			if (_nodes[67] == 1)
-				_nodes[67] = 0;
+		if (_nodes[28] == 1) {
+			_nodes[28] = 0;
+			_nodes[48] = 0;
 		}
 
+		if (_nodes[67] == 1)
+			_nodes[67] = 0;
+
 		_vm->_itemInhibit = false;
 		_tideCntl = false;
 		_vm->drawPic(179);


Commit: 637493cc852df5b78695c6441cb2b6c2faf9ac87
    https://github.com/scummvm/scummvm/commit/637493cc852df5b78695c6441cb2b6c2faf9ac87
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
VIDEO: Stub for MVE decoder

Changed paths:
  A video/mve_decoder.cpp
  A video/mve_decoder.h
    video/module.mk


diff --git a/video/module.mk b/video/module.mk
index be014598f2..c1fb79256e 100644
--- a/video/module.mk
+++ b/video/module.mk
@@ -6,6 +6,7 @@ MODULE_OBJS := \
 	dxa_decoder.o \
 	flic_decoder.o \
 	mpegps_decoder.o \
+	mve_decoder.o \
 	psx_decoder.o \
 	qt_decoder.o \
 	smk_decoder.o \
diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
new file mode 100644
index 0000000000..2baa6ab438
--- /dev/null
+++ b/video/mve_decoder.cpp
@@ -0,0 +1,147 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+/* Based on ffmpeg code (commit 039ebaa5f39ef45444f3cc42ab2ff71b0e9a1161)
+ *
+ * Interplay MVE File Demuxer
+ * Copyright (c) 2003 The FFmpeg project
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "video/mve_decoder.h"
+#include "common/endian.h"
+#include "common/rect.h"
+#include "common/stream.h"
+#include "common/system.h"
+#include "common/textconsole.h"
+#include "graphics/surface.h"
+
+namespace Video {
+
+MveDecoder::MveDecoder() {
+}
+
+MveDecoder::~MveDecoder() {
+	close();
+}
+
+static const char signature[] = "Interplay MVE File\x1A\0\x1A";
+
+bool MveDecoder::loadStream(Common::SeekableReadStream *stream) {
+	close();
+
+	byte signature_buffer[sizeof(signature)];
+
+	stream->read(signature_buffer, sizeof(signature_buffer));
+
+	while (memcmp(signature_buffer, signature, sizeof(signature))) {
+		memmove(signature_buffer, signature_buffer + 1, sizeof(signature_buffer) - 1);
+		signature_buffer[sizeof(signature_buffer) - 1] = stream->readByte();
+		if (stream->eos()) {
+			warning("MveDecoder::loadStream(): attempted to load non-MVE data");
+
+			return false;
+		}
+	}
+
+#if 0
+	/* initialize private context members */
+	ipmovie->video_pts = ipmovie->audio_frame_count = 0;
+	ipmovie->audio_chunk_offset = ipmovie->video_chunk_offset =
+	ipmovie->decode_map_chunk_offset = ipmovie->skip_map_chunk_offset = 0;
+	ipmovie->decode_map_chunk_size = ipmovie->video_chunk_size =
+	ipmovie->skip_map_chunk_size = 0;
+	ipmovie->send_buffer = ipmovie->frame_format = 0;
+
+	/* on the first read, this will position the stream at the first chunk */
+	ipmovie->next_chunk_offset = avio_tell(pb) + 4;
+
+	for (i = 0; i < 256; i++)
+		ipmovie->palette[i] = 0xFFU << 24;
+
+	/* process the first chunk which should be CHUNK_INIT_VIDEO */
+	if (process_ipmovie_chunk(ipmovie, pb, &pkt) != CHUNK_INIT_VIDEO)
+		return AVERROR_INVALIDDATA;
+
+	/* peek ahead to the next chunk-- if it is an init audio chunk, process
+	* it; if it is the first video chunk, this is a silent file */
+	if (avio_read(pb, chunk_preamble, CHUNK_PREAMBLE_SIZE) !=
+			CHUNK_PREAMBLE_SIZE)
+		return AVERROR(EIO);
+	chunk_type = AV_RL16(&chunk_preamble[2]);
+	avio_seek(pb, -CHUNK_PREAMBLE_SIZE, SEEK_CUR);
+
+	if (chunk_type == CHUNK_VIDEO)
+		ipmovie->audio_type = AV_CODEC_ID_NONE;  /* no audio */
+	else if (process_ipmovie_chunk(ipmovie, pb, &pkt) != CHUNK_INIT_AUDIO)
+		return AVERROR_INVALIDDATA;
+
+	/* initialize the stream decoders */
+	st = avformat_new_stream(s, NULL);
+	if (!st)
+		return AVERROR(ENOMEM);
+	avpriv_set_pts_info(st, 63, 1, 1000000);
+	ipmovie->video_stream_index = st->index;
+	st->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;
+	st->codecpar->codec_id = AV_CODEC_ID_INTERPLAY_VIDEO;
+	st->codecpar->codec_tag = 0;  /* no fourcc */
+	st->codecpar->width = ipmovie->video_width;
+	st->codecpar->height = ipmovie->video_height;
+	st->codecpar->bits_per_coded_sample = ipmovie->video_bpp;
+
+	if (ipmovie->audio_type) {
+		return init_audio(s);
+	} else
+		s->ctx_flags |= AVFMTCTX_NOHEADER;
+	}
+
+#endif
+
+	return true;
+}
+
+const Common::List<Common::Rect> *MveDecoder::getDirtyRects() const {
+	return 0;
+}
+
+void MveDecoder::clearDirtyRects() {
+}
+
+void MveDecoder::copyDirtyRectsToBuffer(uint8 *dst, uint pitch) {
+}
+
+} // End of namespace Video
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
new file mode 100644
index 0000000000..cae4a90589
--- /dev/null
+++ b/video/mve_decoder.h
@@ -0,0 +1,61 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef VIDEO_MVEDECODER_H
+#define VIDEO_MVEDECODER_H
+
+#include "video/video_decoder.h"
+#include "common/list.h"
+#include "common/rect.h"
+
+namespace Common {
+class SeekableReadStream;
+}
+
+namespace Graphics {
+struct PixelFormat;
+struct Surface;
+}
+
+namespace Video {
+
+/**
+ * Decoder for Interplay MVE videos.
+ *
+ * Video decoder used in engines:
+ *  - kingdom
+ */
+class MveDecoder : public VideoDecoder {
+public:
+	MveDecoder();
+	virtual ~MveDecoder();
+
+	virtual bool loadStream(Common::SeekableReadStream *stream);
+
+	const Common::List<Common::Rect> *getDirtyRects() const;
+	void clearDirtyRects();
+	void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
+};
+
+} // End of namespace Video
+
+#endif


Commit: 585b24e4d032bb44d8b5477d855eee773749f92d
    https://github.com/scummvm/scummvm/commit/585b24e4d032bb44d8b5477d855eee773749f92d
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix compilation

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index cfed1c74c6..d9e41e59ec 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -809,7 +809,7 @@ void KingdomGame::writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameH
 	out->writeString(header._saveName);
 	out->writeByte('\0');
 
-	Common::MemoryWriteStreamDynamic *tempThumbnail = new Common::MemoryWriteStreamDynamic;
+	Common::MemoryWriteStreamDynamic *tempThumbnail = new Common::MemoryWriteStreamDynamic(DisposeAfterUse::YES);
 	Graphics::saveThumbnail(*tempThumbnail);
 	out->write(tempThumbnail->getData(), tempThumbnail->size());
 	delete tempThumbnail;
@@ -844,7 +844,7 @@ bool KingdomGame::readSavegameHeader(Common::InSaveFile *in, KingdomSavegameHead
 		header._saveName += ch;
 
 	// Get the thumbnail
-	header._thumbnail = Graphics::loadThumbnail(*in);
+	Graphics::loadThumbnail(*in, header._thumbnail);
 	if (!header._thumbnail)
 		return false;
 


Commit: db4852e3bdbfe46e8f71fe1c8265b7bf0f5fd41e
    https://github.com/scummvm/scummvm/commit/db4852e3bdbfe46e8f71fe1c8265b7bf0f5fd41e
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix display init

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index d9e41e59ec..b1e82d5789 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -160,7 +160,7 @@ bool KingdomGame::isDemo() const {
 }
 
 Common::Error KingdomGame::run() {
-	initGraphics(320, 200, false);
+	initGraphics(320, 200);
 	_console = new Console(this);
 
 	_logic = new Logic(this);


Commit: 989a8a6b891c991f0cca87bab80ed346eb603e5c
    https://github.com/scummvm/scummvm/commit/989a8a6b891c991f0cca87bab80ed346eb603e5c
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Turn Cursor position into a common::point

Changed paths:
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index b1e82d5789..e7b57a4dd4 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -139,13 +139,11 @@ void KingdomGame::initVariables() {
 	_mouseButton = 0;
 //	_cursorActive = false;
 	_cursorDrawn = false;
-	_oldCursorY = 0;
-	_oldCursorX = 0;
+	_oldCursorPos = Common::Point(0, 0);
 //	_cursorShape = nullptr;
 	_oldCursorDef = 0;
 	_cursorDef = 0;
-	_cursorY = 0;
-	_cursorX = 0;
+	_cursorPos = Common::Point(0, 0);
 	_asMap = 0;
 }
 
@@ -436,8 +434,7 @@ void KingdomGame::initMouse() {
 
 void KingdomGame::setMouse() {
 	g_system->warpMouse(272, 157);
-	_cursorX = 272;
-	_cursorY = 157;
+	_cursorPos = Common::Point(272, 157);
 }
 
 void KingdomGame::initMPlayer() {
@@ -466,8 +463,7 @@ void KingdomGame::playMovie(int movieNum) {
 		_iconsClosed = true;
 		checkMainScreen();
 		setMouse();
-		_oldCursorX = _cursorX;
-		_oldCursorY = _cursorY;
+		_oldCursorPos = _cursorPos;
 	}
 
 	_pMovie = movieNum;
@@ -896,10 +892,8 @@ void KingdomGame::readMouse() {
 
 	Common::Event event;
 	g_system->getEventManager()->pollEvent(event);
-	if (event.type == Common::EVENT_MOUSEMOVE) {
-	_cursorX = event.mouse.x;
-	_cursorY = event.mouse.y;
-	}
+	if (event.type == Common::EVENT_MOUSEMOVE)
+		_cursorPos = event.mouse;
 	if (event.type == Common::EVENT_LBUTTONUP)
 		_mouseButton |= 1;
 	if (event.type == Common::EVENT_RBUTTONUP)
@@ -1415,8 +1409,7 @@ int KingdomGame::getAKey() {
 			retval = _mouseValue;
 			break;
 		case Common::EVENT_MOUSEMOVE:
-			_cursorX = event.mouse.x;
-			_cursorY = event.mouse.y;
+			_cursorPos = event.mouse;
 
 		default:
 			refreshSound();
@@ -1447,8 +1440,7 @@ void KingdomGame::drawCursor() {
 
 	cursorType();
 	setCursor(_cursorDef);
-	_oldCursorX = _cursorX;
-	_oldCursorY = _cursorY;
+	_oldCursorPos = _cursorPos;
 	_oldCursorDef = _cursorDef;
 
 	CursorMan.showMouse(true);
@@ -1469,7 +1461,7 @@ void KingdomGame::cursorType() {
 					return;
 				} else
 					_mouseValue = tmpVal;
-			} else if (_cursorX >= mouseMapMS[var2 + i]._minX && _cursorX < mouseMapMS[var2 + i]._maxX && _cursorY >= mouseMapMS[var2 + i]._minY && _cursorY < mouseMapMS[var2 + i]._maxY) {
+			} else if (_cursorPos.x >= mouseMapMS[var2 + i]._minX && _cursorPos.x < mouseMapMS[var2 + i]._maxX && _cursorPos.y >= mouseMapMS[var2 + i]._minY && _cursorPos.y < mouseMapMS[var2 + i]._maxY) {
 				_mouseValue = mouseMapMS[var2 + i]._mouseValue;
 				break;
 			}
@@ -1593,27 +1585,27 @@ void KingdomGame::cursorTypeExit() {
 int KingdomGame::checkMouseMapAS() {
 	if (isDemo()) {
 		for (int i = 0; i < 16; i++) {
-			if (_cursorX >= _mouseMapASDemo[_logic->_currMap][i]._minX && _cursorX < _mouseMapASDemo[_logic->_currMap][i]._maxX
-				&& _cursorY >= _mouseMapASDemo[_logic->_currMap][i]._minY && _cursorY < _mouseMapASDemo[_logic->_currMap][i]._maxY)
+			if (_cursorPos.x >= _mouseMapASDemo[_logic->_currMap][i]._minX && _cursorPos.x < _mouseMapASDemo[_logic->_currMap][i]._maxX
+				&& _cursorPos.y >= _mouseMapASDemo[_logic->_currMap][i]._minY && _cursorPos.y < _mouseMapASDemo[_logic->_currMap][i]._maxY)
 				return _mouseMapASDemo[_logic->_currMap][i]._mouseValue;
 		}
 		if (_logic->_currMap == 11) {
 			for (int i = 0; i < 16; i++) {
-				if (_cursorX >= _mouseMapASDemo[12][i]._minX && _cursorX < _mouseMapASDemo[12][i]._maxX
-					&& _cursorY >= _mouseMapASDemo[12][i]._minY && _cursorY < _mouseMapASDemo[12][i]._maxY)
+				if (_cursorPos.x >= _mouseMapASDemo[12][i]._minX && _cursorPos.x < _mouseMapASDemo[12][i]._maxX
+					&& _cursorPos.y >= _mouseMapASDemo[12][i]._minY && _cursorPos.y < _mouseMapASDemo[12][i]._maxY)
 					return _mouseMapASDemo[12][i]._mouseValue;
 			}
 		}
 	} else {
 		for (int i = 0; i < 16; i++) {
-			if (_cursorX >= _mouseMapASFull[_logic->_currMap][i]._minX && _cursorX < _mouseMapASFull[_logic->_currMap][i]._maxX
-				&& _cursorY >= _mouseMapASFull[_logic->_currMap][i]._minY && _cursorY < _mouseMapASFull[_logic->_currMap][i]._maxY)
+			if (_cursorPos.x >= _mouseMapASFull[_logic->_currMap][i]._minX && _cursorPos.x < _mouseMapASFull[_logic->_currMap][i]._maxX
+				&& _cursorPos.y >= _mouseMapASFull[_logic->_currMap][i]._minY && _cursorPos.y < _mouseMapASFull[_logic->_currMap][i]._maxY)
 				return _mouseMapASFull[_logic->_currMap][i]._mouseValue;
 		}
 		if (_logic->_currMap == 11) {
 			for (int i = 0; i < 16; i++) {
-				if (_cursorX >= _mouseMapASFull[12][i]._minX && _cursorX < _mouseMapASFull[12][i]._maxX
-					&& _cursorY >= _mouseMapASFull[12][i]._minY && _cursorY < _mouseMapASFull[12][i]._maxY)
+				if (_cursorPos.x >= _mouseMapASFull[12][i]._minX && _cursorPos.x < _mouseMapASFull[12][i]._maxX
+					&& _cursorPos.y >= _mouseMapASFull[12][i]._minY && _cursorPos.y < _mouseMapASFull[12][i]._maxY)
 					return _mouseMapASFull[12][i]._mouseValue;
 			}
 		}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index c2726d425f..a1bc101688 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -168,10 +168,10 @@ namespace Kingdom {
 		int _mouseValue;
 		int _cursorDef; // TODO: Could be removed by using the return value of CursorTypeExit()
 		int _oldCursorDef; // CHECKME: Unused in our implementation?
-		int _cursorX;
-		int _cursorY;
-		int _oldCursorX; // CHECKME: Unused in out implementation?
-		int _oldCursorY; // CHECKME: Unused in out implementation?
+
+		Common::Point _cursorPos;
+		Common::Point _oldCursorPos; // CHECKME: Unused in out implementation?
+
 		int _iconSel;
 		int _iconSelect;
 		bool _mouseDebound;


Commit: b835a4b2139ba8b714b16547bd4861422226d76b
    https://github.com/scummvm/scummvm/commit/b835a4b2139ba8b714b16547bd4861422226d76b
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Use Common::Rect for hotspot areas

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 741320661d..55592f6f70 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -958,112 +958,113 @@ int _hgaSeq[4][2] = {
 	{50, 0}
 };
 
+#define INITHOTSPOT(x1, x2, y1, y2, id)  { Common::Rect(x1, y1, x2, y2), id }
 HotSpot _mouseMapMSFull[51] = {
-	{ 11,  35, 178, 197, 0x181},
-	{ 38,  62, 178, 197, 0x182},
-	{ 65,  89, 178, 197, 0x183},
-	{ 92, 116, 178, 197, 0x184},
-	{119, 143, 178, 197, 0x185},
-	{146, 170, 178, 197, 0x186},
-	{173, 197, 178, 197, 0x187},
-	{271, 292, 124, 143, 0x44F},
-	{262, 298,  51,  80, 0x18A},
-	{243, 267, 141, 160, 0x18C},
-	{290, 314, 143, 162, 0x18D},
-	{272, 296, 170, 189, 0x457},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{ 74,  92,  60,  75, 0x417},
-	{ 74,  89,  75,  93, 0x418},
-	{ 92, 105,  96, 111, 0x402},
-	{ 74,  87,  50,  61, 0x415},
-	{ 50,  67,  43,  52, 0x406},
-	{ 29,  37,  43,  55, 0x407},
-	{ 45,  56,  67,  74, 0x401},
-	{ 52,  65,  80,  90, 0x400},
-	{ 45,  75, 102, 112, 0x420},
-	{ 25,  38,  59,  69, 0x408},
-	{ 75,  85,  33,  43, 0x40A},
-	{ 75,  90,  99, 112, 0x40B},
-	{ 45,  88, 113, 131, 0x40C},
-	{ 89, 104, 116, 131, 0x40D},
-	{160, 178, 131, 148, 0x421},
-	{135, 149, 118, 130, 0x40F},
-	{131, 142, 138, 148, 0x412},
-	{159, 171, 168, 175, 0x410},
-	{157, 168, 110, 126, 0x419},
-	{  0,   0,   0,   0, 0x411},
-	{106, 128, 122, 154, 0x40E},
-	{171, 283, 156, 170, 0x422},
-	{147, 171, 152, 163, 0x403},
-	{  0,   0,   0,   0, 0x413},
-	{186, 203,  74,  86, 0x41C},
-	{195, 207,  89, 106, 0x41B},
-	{232, 244,  81,  89, 0x41E},
-	{215, 222,  76,  95, 0x404},
-	{214, 223, 100, 110, 0x41D},
-	{182, 196,  88,  97, 0x416},
-	{  0,   0,   0,   0, 0x423},
-	{225, 241, 100, 110, 0x424},
-	{209, 224, 137, 155, 0x425},
-	{211, 221, 115, 126, 0x41A},
-	{  0,   0,   0,   0,     0}
+	INITHOTSPOT( 11,  35, 178, 197, 0x181),
+	INITHOTSPOT( 38,  62, 178, 197, 0x182),
+	INITHOTSPOT( 65,  89, 178, 197, 0x183),
+	INITHOTSPOT( 92, 116, 178, 197, 0x184),
+	INITHOTSPOT(119, 143, 178, 197, 0x185),
+	INITHOTSPOT(146, 170, 178, 197, 0x186),
+	INITHOTSPOT(173, 197, 178, 197, 0x187),
+	INITHOTSPOT(271, 292, 124, 143, 0x44F),
+	INITHOTSPOT(262, 298,  51,  80, 0x18A),
+	INITHOTSPOT(243, 267, 141, 160, 0x18C),
+	INITHOTSPOT(290, 314, 143, 162, 0x18D),
+	INITHOTSPOT(272, 296, 170, 189, 0x457),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT( 74,  92,  60,  75, 0x417),
+	INITHOTSPOT( 74,  89,  75,  93, 0x418),
+	INITHOTSPOT( 92, 105,  96, 111, 0x402),
+	INITHOTSPOT( 74,  87,  50,  61, 0x415),
+	INITHOTSPOT( 50,  67,  43,  52, 0x406),
+	INITHOTSPOT( 29,  37,  43,  55, 0x407),
+	INITHOTSPOT( 45,  56,  67,  74, 0x401),
+	INITHOTSPOT( 52,  65,  80,  90, 0x400),
+	INITHOTSPOT( 45,  75, 102, 112, 0x420),
+	INITHOTSPOT( 25,  38,  59,  69, 0x408),
+	INITHOTSPOT( 75,  85,  33,  43, 0x40A),
+	INITHOTSPOT( 75,  90,  99, 112, 0x40B),
+	INITHOTSPOT( 45,  88, 113, 131, 0x40C),
+	INITHOTSPOT( 89, 104, 116, 131, 0x40D),
+	INITHOTSPOT(160, 178, 131, 148, 0x421),
+	INITHOTSPOT(135, 149, 118, 130, 0x40F),
+	INITHOTSPOT(131, 142, 138, 148, 0x412),
+	INITHOTSPOT(159, 171, 168, 175, 0x410),
+	INITHOTSPOT(157, 168, 110, 126, 0x419),
+	INITHOTSPOT(  0,   0,   0,   0, 0x411),
+	INITHOTSPOT(106, 128, 122, 154, 0x40E),
+	INITHOTSPOT(171, 283, 156, 170, 0x422),
+	INITHOTSPOT(147, 171, 152, 163, 0x403),
+	INITHOTSPOT(  0,   0,   0,   0, 0x413),
+	INITHOTSPOT(186, 203,  74,  86, 0x41C),
+	INITHOTSPOT(195, 207,  89, 106, 0x41B),
+	INITHOTSPOT(232, 244,  81,  89, 0x41E),
+	INITHOTSPOT(215, 222,  76,  95, 0x404),
+	INITHOTSPOT(214, 223, 100, 110, 0x41D),
+	INITHOTSPOT(182, 196,  88,  97, 0x416),
+	INITHOTSPOT(  0,   0,   0,   0, 0x423),
+	INITHOTSPOT(225, 241, 100, 110, 0x424),
+	INITHOTSPOT(209, 224, 137, 155, 0x425),
+	INITHOTSPOT(211, 221, 115, 126, 0x41A),
+	INITHOTSPOT(  0,   0,   0,   0,     0)
 };
 
 HotSpot _mouseMapMSDemo[51] = {
-	{ 11,  35, 178, 197, 0x181},
-	{ 38,  62, 178, 197, 0x182},
-	{ 65,  89, 178, 197, 0x183},
-	{ 92, 116, 178, 197, 0x184},
-	{119, 143, 178, 197, 0x185},
-	{146, 170, 178, 197, 0x186},
-	{173, 197, 178, 197, 0x187},
-	{271, 292, 124, 143, 0x44F},
-	{262, 298,  51,  80, 0x18A},
-	{243, 267, 141, 160, 0x18C},
-	{290, 314, 143, 162, 0x18D},
-	{272, 296, 170, 189, 0x457},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{  0,   0,   0,   0,     0},
-	{ 74,  92,  60,  75, 0x417},
-	{ 74,  89,  75,  93, 0x418},
-	{ 92, 105,  96, 111, 0x402},
-	{ 74,  87,  50,  61, 0x415},
-	{ 50,  67,  43,  52, 0x406},
-	{ 29,  37,  43,  55, 0x407},
-	{ 45,  56,  67,  74, 0x401},
-	{ 52,  65,  80,  90, 0x400},
-	{ 45,  75, 102, 112, 0x420},
-	{ 25,  38,  59,  69, 0x408},
-	{ 75,  85,  33,  43, 0x40A},
-	{ 75,  90,  99, 112, 0x40B},
-	{ 45, 104, 113, 131, 0x40C},
-	{  0,   0,   0,   0, 0x40D},
-	{  0,   0,   0,   0, 0x421},
-	{  0,   0,   0,   0, 0x40F},
-	{  0,   0,   0,   0, 0x412},
-	{  0,   0,   0,   0, 0x410},
-	{  0,   0,   0,   0, 0x419},
-	{  0,   0,   0,   0, 0x411},
-	{  0,   0,   0,   0, 0x40E},
-	{  0,   0,   0,   0, 0x422},
-	{  0,   0,   0,   0, 0x403},
-	{  0,   0,   0,   0, 0x413},
-	{  0,   0,   0,   0, 0x41C},
-	{  0,   0,   0,   0, 0x41B},
-	{  0,   0,   0,   0, 0x41E},
-	{  0,   0,   0,   0, 0x404},
-	{  0,   0,   0,   0, 0x41D},
-	{  0,   0,   0,   0, 0x416},
-	{  0,   0,   0,   0, 0x423},
-	{  0,   0,   0,   0, 0x424},
-	{  0,   0,   0,   0, 0x425},
-	{  0,   0,   0,   0, 0x41A},
-	{  0,   0,   0,   0,     0}
+	INITHOTSPOT( 11,  35, 178, 197, 0x181),
+	INITHOTSPOT( 38,  62, 178, 197, 0x182),
+	INITHOTSPOT( 65,  89, 178, 197, 0x183),
+	INITHOTSPOT( 92, 116, 178, 197, 0x184),
+	INITHOTSPOT(119, 143, 178, 197, 0x185),
+	INITHOTSPOT(146, 170, 178, 197, 0x186),
+	INITHOTSPOT(173, 197, 178, 197, 0x187),
+	INITHOTSPOT(271, 292, 124, 143, 0x44F),
+	INITHOTSPOT(262, 298,  51,  80, 0x18A),
+	INITHOTSPOT(243, 267, 141, 160, 0x18C),
+	INITHOTSPOT(290, 314, 143, 162, 0x18D),
+	INITHOTSPOT(272, 296, 170, 189, 0x457),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT(  0,   0,   0,   0,     0),
+	INITHOTSPOT( 74,  92,  60,  75, 0x417),
+	INITHOTSPOT( 74,  89,  75,  93, 0x418),
+	INITHOTSPOT( 92, 105,  96, 111, 0x402),
+	INITHOTSPOT( 74,  87,  50,  61, 0x415),
+	INITHOTSPOT( 50,  67,  43,  52, 0x406),
+	INITHOTSPOT( 29,  37,  43,  55, 0x407),
+	INITHOTSPOT( 45,  56,  67,  74, 0x401),
+	INITHOTSPOT( 52,  65,  80,  90, 0x400),
+	INITHOTSPOT( 45,  75, 102, 112, 0x420),
+	INITHOTSPOT( 25,  38,  59,  69, 0x408),
+	INITHOTSPOT( 75,  85,  33,  43, 0x40A),
+	INITHOTSPOT( 75,  90,  99, 112, 0x40B),
+	INITHOTSPOT( 45, 104, 113, 131, 0x40C),
+	INITHOTSPOT(  0,   0,   0,   0, 0x40D),
+	INITHOTSPOT(  0,   0,   0,   0, 0x421),
+	INITHOTSPOT(  0,   0,   0,   0, 0x40F),
+	INITHOTSPOT(  0,   0,   0,   0, 0x412),
+	INITHOTSPOT(  0,   0,   0,   0, 0x410),
+	INITHOTSPOT(  0,   0,   0,   0, 0x419),
+	INITHOTSPOT(  0,   0,   0,   0, 0x411),
+	INITHOTSPOT(  0,   0,   0,   0, 0x40E),
+	INITHOTSPOT(  0,   0,   0,   0, 0x422),
+	INITHOTSPOT(  0,   0,   0,   0, 0x403),
+	INITHOTSPOT(  0,   0,   0,   0, 0x413),
+	INITHOTSPOT(  0,   0,   0,   0, 0x41C),
+	INITHOTSPOT(  0,   0,   0,   0, 0x41B),
+	INITHOTSPOT(  0,   0,   0,   0, 0x41E),
+	INITHOTSPOT(  0,   0,   0,   0, 0x404),
+	INITHOTSPOT(  0,   0,   0,   0, 0x41D),
+	INITHOTSPOT(  0,   0,   0,   0, 0x416),
+	INITHOTSPOT(  0,   0,   0,   0, 0x423),
+	INITHOTSPOT(  0,   0,   0,   0, 0x424),
+	INITHOTSPOT(  0,   0,   0,   0, 0x425),
+	INITHOTSPOT(  0,   0,   0,   0, 0x41A),
+	INITHOTSPOT(  0,   0,   0,   0,     0)
 };
 
 int _cursorTable[96] = {
@@ -1081,4615 +1082,4615 @@ int _cursorTable[96] = {
 
 HotSpot _mouseMapASFull[128][16] = {
 	{
-		{15, 110, 48, 62, 0x240},
-		{61, 176, 30, 44, 0x241},
-		{121, 216, 66, 80, 0x242},
-		{121, 216, 48, 62, 0x243},
-		{121, 216, 84, 98, 0x244},
-		{15, 110, 66, 80, 0x245},
-		{15, 110, 84, 98, 0x246},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{119, 197, 78, 84, 0x190},
-		{119, 197, 85, 91, 0x191},
-		{119, 197, 92, 98, 0x192},
-		{119, 197, 99, 105, 0x193},
-		{72, 96, 103, 109, 0x194},
-		{72, 96, 110, 116, 0x195},
-		{72, 96, 117, 123, 0x196},
-		{72, 96, 124, 130, 0x197},
-		{72, 96, 131, 137, 0x198},
-		{220, 242, 111, 117, 0x199},
-		{220, 242, 118, 124, 0x19A},
-		{220, 242, 125, 131, 0x19B},
-		{141, 173, 136, 142, 0x19C},
-		{141, 173, 143, 149, 0x19D},
-		{230, 280, 182, 193, 0x19E},
-		{34, 91, 182, 193, 0x19F}
-	},
-	{
-		{4, 227, 17, 160, 0x260},
-		{0, 0, 0, 0, 0x261},
-		{0, 0, 0, 0, 0x262},
-		{0, 0, 0, 0, 0x263},
-		{0, 0, 0, 0, 0x264},
-		{0, 0, 0, 0, 0x265},
-		{0, 0, 0, 0, 0x266},
-		{0, 0, 0, 0, 0x267},
-		{0, 0, 0, 0, 0x268},
-		{0, 0, 0, 0, 0x269},
-		{0, 0, 0, 0, 0x26A},
-		{0, 0, 0, 0, 0x26B},
-		{0, 0, 0, 0, 0x26C},
-		{0, 0, 0, 0, 0x26D},
-		{0, 0, 0, 0, 0x26E},
-		{0, 0, 0, 0, 0x26F}
-	},
-	{
-		{17, 120, 122, 132, 0x190},
-		{17, 120, 140, 150, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{69, 242, 114, 129, 0x190},
-		{69, 242, 132, 147, 0x191},
-		{69, 242, 150, 165, 0x192},
-		{69, 131, 168, 183, 0x193},
-		{181, 242, 168, 183, 0x194},
-		{133, 179, 168, 183, 0x24A},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{73, 105, 56, 80, 0x428},
-		{89, 131, 88, 110, 0x42A},
-		{124, 152, 56, 81, 0x42B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{61, 91, 61, 87, 0x417},
-		{92, 122, 84, 110, 0x40A},
-		{123, 154, 61, 87, 0x406},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{47, 80, 48, 116, 0x445},
-		{149, 182, 51, 116, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{62, 88, 76, 141, 0x42F},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{140, 170, 102, 127, 0x428},
-		{73, 117, 65, 82, 0x429},
-		{170, 216, 96, 121, 0x42A},
-		{121, 144, 34, 62, 0x42B},
-		{160, 183, 41, 59, 0x42C},
-		{21, 51, 125, 151, 0x42D},
-		{201, 217, 43, 76, 0x42E},
-		{76, 114, 119, 150, 0x42F},
-		{18, 48, 31, 61, 0x430},
-		{57, 72, 88, 122, 0x431},
-		{182, 207, 125, 155, 0x432},
-		{176, 203, 26, 37, 0x433},
-		{55, 75, 23, 51, 0x434},
-		{120, 166, 133, 155, 0x435},
-		{96, 117, 93, 113, 0x436},
-		{140, 189, 68, 89, 0x437}
-	},
-	{
-		{84, 113, 30, 53, 0x438},
-		{21, 42, 78, 105, 0x439},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{4, 227, 17, 160, 0x241}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{86, 112, 27, 85, 0x453},
-		{85, 127, 29, 90, 0x453},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{128, 149, 55, 114, 0x445},
-		{180, 215, 36, 120, 0x445},
-		{0, 0, 0, 0, 0x192},
-		{69, 86, 86, 103, 0x437},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{128, 149, 55, 114, 0x445},
-		{180, 215, 36, 120, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{53, 131, 41, 159, 0x445},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{204, 227, 100, 160, 0x441},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{94, 106, 83, 104, 0x443},
-		{107, 127, 83, 104, 0x405},
-		{75, 94, 98, 133, 0x409},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{67, 135, 22, 68, 0x407},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{88, 156, 102, 158, 0x418},
-		{96, 137, 20, 47, 0x415},
-		{21, 83, 18, 37, 0x406},
-		{19, 45, 76, 102, 0x401},
-		{23, 68, 134, 157, 0x400},
-		{96, 156, 47, 102, 0x443},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{68, 131, 117, 158, 0x418},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{103, 158, 18, 40, 0x417},
-		{163, 179, 127, 150, 0x402},
-		{20, 43, 18, 43, 0x401},
-		{28, 67, 67, 98, 0x400},
-		{5, 53, 139, 159, 0x420},
-		{95, 151, 124, 159, 0x40B},
-		{53, 94, 124, 159, 0x420},
-		{89, 158, 40, 103, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{33, 99, 18, 53, 0x418},
-		{40, 82, 69, 103, 0x40B},
-		{5, 39, 69, 103, 0x420},
-		{5, 82, 103, 159, 0x40C},
-		{82, 123, 128, 159, 0x40D},
-		{96, 120, 73, 96, 0x443},
-		{123, 184, 112, 159, 0x40E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{113, 125, 43, 60, 0x40A},
-		{99, 114, 60, 80, 0x409},
-		{99, 135, 80, 104, 0x443},
-		{99, 160, 104, 159, 0x417},
-		{17, 56, 134, 159, 0x401},
-		{9, 81, 65, 98, 0x406},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 216, 109, 147, 0x417},
-		{161, 193, 81, 105, 0x415},
-		{91, 110, 131, 154, 0x401},
-		{31, 66, 128, 147, 0x408},
-		{84, 141, 70, 96, 0x443},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{67, 85, 72, 98, 0x443},
-		{117, 182, 65, 96, 0x406},
-		{124, 147, 130, 153, 0x401},
-		{56, 89, 124, 146, 0x408},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{92, 106, 120, 130, 0x446},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 209, 50, 98, 0x417},
-		{157, 209, 98, 159, 0x418},
-		{161, 191, 29, 50, 0x415},
-		{91, 139, 18, 44, 0x406},
-		{95, 128, 137, 151, 0x400},
-		{32, 61, 81, 95, 0x408},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{87, 109, 81, 105, 0x443},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 214, 18, 46, 0x417},
-		{151, 214, 46, 105, 0x418},
-		{87, 108, 22, 46, 0x401},
-		{58, 43, 141, 57, 0x40B},
-		{24, 62, 18, 37, 0x408},
-		{155, 200, 123, 157, 0x40B},
-		{0, 0, 0, 0, 0x196},
-		{92, 131, 77, 97, 0x443},
-		{113, 155, 123, 157, 0x420},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{94, 129, 121, 145, 0x415},
-		{14, 79, 108, 142, 0x406},
-		{0, 0, 0, 0, 0x192},
-		{102, 127, 96, 107, 0x443},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 125, 62, 104, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{5, 71, 102, 160, 0x406},
-		{0, 0, 0, 0, 0x193},
-		{71, 92, 97, 146, 0x409},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{40, 133, 99, 158, 0x443},
-		{133, 188, 94, 145, 0x405},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{104, 122, 124, 148, 0x445},
-		{151, 165, 32, 56, 0x445},
-		{100, 118, 34, 55, 0x19F},
-		{50, 66, 35, 58, 0x445},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{89, 129, 58, 106, 0x19F}
-	},
-	{
-		{146, 195, 18, 51, 0x418},
-		{87, 130, 21, 45, 0x400},
-		{150, 204, 66, 99, 0x40B},
-		{63, 112, 80, 103, 0x443},
-		{112, 150, 66, 103, 0x443},
-		{63, 183, 103, 159, 0x40C},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{125, 182, 18, 42, 0x406},
-		{122, 148, 80, 105, 0x401},
-		{130, 175, 135, 156, 0x400},
-		{66, 85, 20, 49, 0x407},
-		{0, 0, 0, 0, 0x194},
-		{53, 89, 77, 95, 0x443},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{88, 144, 18, 49, 0x418},
-		{158, 178, 73, 95, 0x402},
-		{16, 69, 18, 43, 0x400},
-		{5, 52, 81, 108, 0x420},
-		{52, 88, 65, 108, 0x420},
-		{5, 134, 108, 159, 0x40C},
-		{135, 179, 124, 159, 0x40D},
-		{88, 134, 65, 108, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{40, 160, 49, 148, 0x442},
-		{5, 39, 49, 159, 0x40B},
-		{210, 226, 75, 116, 0x402},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{135, 177, 68, 111, 0x443},
-		{158, 176, 17, 34, 0x402},
-		{90, 132, 17, 46, 0x40B},
-		{23, 55, 24, 91, 0x420},
-		{4, 55, 27, 124, 0x40C},
-		{55, 113, 17, 124, 0x40C},
-		{113, 154, 65, 124, 0x40C},
-		{154, 227, 81, 160, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{141, 213, 79, 110, 0x410},
-		{0, 0, 0, 0, 0x191},
-		{126, 188, 24, 54, 0x403},
-		{5, 101, 18, 90, 0x40E},
-		{5, 65, 90, 159, 0x40E},
-		{65, 98, 213, 159, 0x40E},
-		{0, 0, 0, 0, 0x196},
-		{5, 213, 18, 159, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{19, 66, 18, 64, 0x40D},
-		{5, 32, 18, 73, 0x40C},
-		{155, 184, 84, 111, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{134, 197, 18, 59, 0x40F},
-		{189, 227, 120, 159, 0x403},
-		{5, 155, 18, 132, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{85, 132, 18, 60, 0x419},
-		{0, 0, 0, 0, 0x191},
-		{33, 63, 88, 117, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{72, 144, 130, 159, 0x403},
-		{0, 0, 0, 0, 0x195},
-		{90, 156, 60, 130, 0x443},
-		{144, 94, 130, 159, 0x422},
-		{8, 90, 18, 63, 0x40F},
-		{132, 194, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 215, 111, 159, 0x421},
-		{85, 153, 49, 111, 0x443},
-		{104, 131, 134, 159, 0x412},
-		{153, 201, 54, 111, 0x419},
-		{0, 0, 0, 0, 0x194},
-		{5, 104, 128, 159, 0x40E},
-		{5, 161, 54, 159, 0x40E},
-		{201, 227, 49, 159, 0x414},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 126, 79, 106, 0x443},
-		{163, 212, 56, 108, 0x421},
-		{73, 139, 18, 56, 0x40F},
-		{156, 181, 18, 49, 0x419},
-		{0, 0, 0, 0, 0x194},
-		{129, 194, 121, 156, 0x403},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{22, 100, 18, 138, 0x40E},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{96, 135, 88, 115, 0x443},
-		{29, 96, 68, 115, 0x410},
-		{28, 80, 17, 68, 0x403},
-		{0, 0, 0, 0, 0x193},
-		{80, 135, 17, 88, 0x422},
-		{135, 204, 17, 158, 0x414},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{69, 136, 71, 112, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{136, 175, 91, 119, 0x41F},
-		{0, 0, 0, 0, 0x193},
-		{131, 185, 18, 91, 0x422},
-		{185, 226, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x196},
-		{67, 131, 18, 71, 0x403},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{91, 133, 52, 112, 0x443},
-		{16, 84, 63, 117, 0x40F},
-		{115, 160, 114, 160, 0x421},
-		{37, 70, 139, 160, 0x412},
-		{128, 170, 36, 51, 0x416},
-		{140, 227, 17, 38, 0x416},
-		{152, 227, 38, 160, 0x414},
-		{51, 91, 118, 159, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{67, 150, 53, 159, 0x445},
-		{150, 226, 19, 159, 0x414},
-		{5, 67, 46, 159, 0x40F},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{59, 146, 77, 135, 0x443},
-		{146, 193, 77, 124, 0x403},
-		{129, 206, 124, 159, 0x410},
-		{94, 124, 36, 63, 0x412},
-		{0, 0, 0, 0, 0x195},
-		{94, 147, 18, 77, 0x40E},
-		{5, 129, 18, 158, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{50, 109, 115, 159, 0x422},
-		{0, 0, 0, 0, 0x413},
-		{50, 135, 46, 159, 0x414},
-		{135, 159, 113, 159, 0x414},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{93, 135, 78, 141, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{39, 97, 17, 78, 0x421},
-		{39, 93, 78, 123, 0x403},
-		{39, 135, 123, 159, 0x410},
-		{97, 195, 17, 159, 0x414},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E}
-	},
-	{
-		{15, 66, 104, 141, 0x190},
-		{105, 164, 87, 155, 0x191},
-		{174, 225, 100, 154, 0x192},
-		{81, 132, 37, 78, 0x193},
-		{165, 212, 26, 78, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{84, 150, 79, 114, 0x443},
-		{66, 200, 127, 159, 0x410},
-		{47, 75, 38, 64, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{100, 156, 18, 79, 0x421},
-		{150, 200, 72, 132, 0x422},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{156, 226, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{26, 42, 48, 77, 0x404},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{112, 134, 77, 84, 0x443},
-		{97, 134, 84, 102, 0x443},
-		{55, 71, 52, 73, 0x41B},
-		{97, 123, 18, 84, 0x404},
-		{84, 97, 61, 92, 0x404},
-		{154, 178, 20, 42, 0x41E},
-		{134, 183, 72, 102, 0x424},
-		{95, 129, 123, 149, 0x41A},
-		{14, 54, 79, 159, 0x414},
-		{66, 86, 73, 82, 0x41B},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 136, 84, 102, 0x443},
-		{104, 116, 101, 122, 0x41B},
-		{113, 134, 122, 130, 0x41B},
-		{78, 97, 96, 110, 0x416},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 136, 84, 102, 0x443},
-		{74, 129, 26, 57, 0x41C},
-		{103, 118, 63, 85, 0x443},
-		{112, 131, 85, 95, 0x443},
-		{78, 99, 58, 70, 0x416},
-		{160, 182, 86, 112, 0x41D},
-		{146, 182, 95, 112, 0x41D},
-		{146, 170, 28, 95, 0x404},
-		{129, 146, 71, 102, 0x404},
-		{59, 98, 84, 160, 0x414},
-		{144, 177, 134, 159, 0x41A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{144, 176, 76, 110, 0x404},
-		{175, 206, 18, 110, 0x404},
-		{167, 226, 84, 159, 0x41D},
-		{4, 45, 18, 48, 0x416},
-		{71, 89, 47, 85, 0x443},
-		{77, 132, 86, 110, 0x443},
-		{4, 67, 18, 39, 0x41C},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{96, 119, 76, 93, 0x443},
-		{82, 120, 125, 153, 0x424},
-		{43, 74, 129, 150, 0x41D},
-		{44, 64, 71, 112, 0x404},
-		{32, 64, 112, 129, 0x404},
-		{0, 0, 0, 0, 0x41B},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{99, 119, 69, 103, 0x443},
-		{135, 185, 123, 154, 0x424},
-		{112, 135, 129, 138, 0x41D},
-		{92, 135, 138, 154, 0x41D},
-		{53, 70, 107, 129, 0x41B},
-		{63, 81, 129, 138, 0x41B},
-		{156, 177, 76, 91, 0x41E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{74, 124, 38, 133, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{70, 110, 121, 159, 0x441},
-		{92, 112, 33, 59, 0x445},
-		{150, 177, 24, 49, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{129, 149, 43, 60, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{130, 182, 17, 46, 0x41C},
-		{158, 168, 49, 69, 0x41B},
-		{164, 183, 69, 77, 0x41B},
-		{105, 166, 71, 160, 0x414},
-		{46, 80, 98, 149, 0x419},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 129, 78, 86, 0x443},
-		{105, 129, 86, 99, 0x443},
-		{34, 84, 134, 159, 0x425},
-		{48, 75, 81, 109, 0x41A},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 141, 76, 103, 0x443},
-		{53, 80, 125, 150, 0x41A},
-		{67, 92, 80, 87, 0x41D},
-		{54, 92, 87, 103, 0x41D},
-		{38, 54, 63, 95, 0x404},
-		{54, 78, 20, 87, 0x404},
-		{113, 131, 26, 43, 0x41E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{8, 38, 58, 103, 0x41B},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{58, 68, 88, 103, 0x445},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 133, 81, 120, 0x189},
-		{104, 133, 120, 133, 0x189},
-		{112, 123, 65, 142, 0x189},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{18, 65, 18, 159, 0x414},
-		{65, 143, 75, 159, 0x414},
-		{143, 157, 96, 159, 0x414},
-		{143, 150, 86, 96, 0x414},
-		{99, 120, 38, 60, 0x41A},
-		{65, 112, 58, 75, 0x414}
-	},
-	{
-		{107, 119, 61, 88, 0x445},
-		{91, 110, 95, 136, 0x446},
-		{181, 208, 66, 146, 0x447},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{100, 129, 74, 100, 0x443},
-		{103, 140, 29, 54, 0x41D},
-		{140, 189, 24, 54, 0x424},
-		{89, 126, 18, 41, 0x404},
-		{46, 89, 18, 41, 0x41B},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{95, 129, 124, 131, 0x425},
-		{95, 139, 131, 159, 0x425},
-		{139, 146, 136, 159, 0x425},
-		{5, 58, 18, 159, 0x414},
-		{58, 122, 111, 159, 0x414},
-		{129, 154, 120, 131, 0x414},
-		{139, 160, 131, 159, 0x414},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{125, 179, 49, 126, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{159, 173, 17, 32, 0x445},
-		{148, 165, 40, 61, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{39, 59, 35, 69, 0x447},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{56, 79, 88, 133, 0x445},
-		{103, 122, 81, 136, 0x446},
-		{161, 190, 85, 145, 0x447},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{65, 105, 87, 119, 0x438},
-		{141, 165, 55, 78, 0x40A},
-		{182, 203, 74, 95, 0x414},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{93, 127, 39, 80, 0x40A},
-		{21, 54, 92, 129, 0x41D},
-		{167, 200, 94, 134, 0x422},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{59, 95, 55, 95, 0x40A},
-		{129, 169, 82, 131, 0x41D},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{57, 92, 76, 102, 0x442},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{4, 44, 74, 104, 0x441},
-		{85, 143, 73, 98, 0x448},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x191},
-		{125, 151, 103, 125, 0x42C},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{38, 47, 151, 159, 0x42D},
-		{88, 112, 143, 154, 0x42D},
-		{79, 123, 92, 132, 0x42D},
-		{48, 64, 98, 113, 0x42D},
-		{7, 12, 97, 102, 0x42D},
-		{78, 104, 105, 114, 0x42D},
-		{103, 111, 100, 106, 0x42D},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{13, 48, 82, 112, 0x42D},
-		{45, 54, 61, 75, 0x42D},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{68, 188, 65, 105, 0x441}
-	},
-	{
-		{164, 191, 38, 109, 0x445},
-		{56, 93, 69, 83, 0x444},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{30, 44, 50, 77, 0x198},
-		{30, 44, 113, 140, 0x199},
-		{308, 319, 179, 191, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{4, 227, 17, 160, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{39, 67, 73, 118, 0x450},
-		{123, 151, 37, 76, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{90, 130, 99, 123, 0x432},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{67, 152, 99, 139, 0x449},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 194, 29, 73, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{110, 123, 82, 130, 0x431},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{104, 121, 60, 86, 0x445},
-		{78, 91, 52, 77, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{151, 190, 31, 105, 0x445},
-		{37, 65, 23, 105, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{144, 223, 48, 105, 0x441},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{11, 59, 80, 141, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{160, 208, 80, 140, 0x446},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{74, 91, 78, 105, 0x42E},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{181, 217, 49, 128, 0x445},
-		{17, 50, 28, 131, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{27, 199, 79, 159, 0x452},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{191, 222, 57, 84, 0x442},
-		{103, 119, 130, 141, 0x44A},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{167, 194, 115, 130, 0x433},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{73, 104, 109, 138, 0x434},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{85, 133, 47, 93, 0x452},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{39, 67, 73, 118, 0x445},
-		{123, 151, 37, 76, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{146, 177, 61, 114, 0x445},
-		{14, 43, 69, 131, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{78, 145, 55, 144, 0x456},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{133, 194, 18, 72, 0x413},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{159, 197, 38, 71, 0x441},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 198, 42, 80, 0x404},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{197, 217, 84, 128, 0x453},
-		{26, 42, 48, 77, 0x404},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{84, 105, 77, 108, 0x435},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 197, 77, 119, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 277, 57, 73, 0x441},
-		{47, 119, 107, 160, 0x448},
-		{73, 98, 43, 90, 0x44B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 277, 57, 73, 0x441},
-		{0, 0, 0, 0, 0x448},
-		{73, 98, 43, 90, 0x44B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{47, 119, 107, 160, 0x451},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 124, 94, 137, 0x441},
-		{67, 81, 71, 160, 0x448},
-		{15, 48, 19, 160, 0x44B},
-		{211, 227, 17, 160, 0x44C},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{181, 205, 50, 96, 0x441},
-		{107, 166, 123, 160, 0x448},
-		{4, 25, 71, 130, 0x44B},
-		{210, 227, 60, 105, 0x44C},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 124, 70, 106, 0x439},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{128, 191, 43, 129, 0x441},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{17, 51, 50, 126, 0x445},
-		{179, 211, 30, 129, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{17, 51, 50, 126, 0x445},
-		{179, 211, 30, 129, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{117, 139, 73, 135, 0x430},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{20, 37, 88, 132, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{20, 37, 88, 132, 0x445},
-		{101, 125, 99, 141, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{4, 41, 92, 160, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{61, 78, 69, 86, 0x458},
-		{136, 142, 17, 130, 0x44D},
-		{167, 175, 17, 139, 0x44E},
-		{181, 194, 58, 136, 0x445},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{164, 192, 71, 130, 0x445},
-		{105, 141, 70, 131, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
+		INITHOTSPOT( 15, 110, 48, 62, 0x240),
+		INITHOTSPOT( 61, 176, 30, 44, 0x241),
+		INITHOTSPOT(121, 216, 66, 80, 0x242),
+		INITHOTSPOT(121, 216, 48, 62, 0x243),
+		INITHOTSPOT(121, 216, 84, 98, 0x244),
+		INITHOTSPOT( 15, 110, 66, 80, 0x245),
+		INITHOTSPOT( 15, 110, 84, 98, 0x246),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(119, 197,  78,  84, 0x190),
+		INITHOTSPOT(119, 197,  85,  91, 0x191),
+		INITHOTSPOT(119, 197,  92,  98, 0x192),
+		INITHOTSPOT(119, 197,  99, 105, 0x193),
+		INITHOTSPOT( 72,  96, 103, 109, 0x194),
+		INITHOTSPOT( 72,  96, 110, 116, 0x195),
+		INITHOTSPOT( 72,  96, 117, 123, 0x196),
+		INITHOTSPOT( 72,  96, 124, 130, 0x197),
+		INITHOTSPOT( 72,  96, 131, 137, 0x198),
+		INITHOTSPOT(220, 242, 111, 117, 0x199),
+		INITHOTSPOT(220, 242, 118, 124, 0x19A),
+		INITHOTSPOT(220, 242, 125, 131, 0x19B),
+		INITHOTSPOT(141, 173, 136, 142, 0x19C),
+		INITHOTSPOT(141, 173, 143, 149, 0x19D),
+		INITHOTSPOT(230, 280, 182, 193, 0x19E),
+		INITHOTSPOT( 34,  91, 182, 193, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 227, 17, 160, 0x260),
+		INITHOTSPOT(0, 0, 0, 0, 0x261),
+		INITHOTSPOT(0, 0, 0, 0, 0x262),
+		INITHOTSPOT(0, 0, 0, 0, 0x263),
+		INITHOTSPOT(0, 0, 0, 0, 0x264),
+		INITHOTSPOT(0, 0, 0, 0, 0x265),
+		INITHOTSPOT(0, 0, 0, 0, 0x266),
+		INITHOTSPOT(0, 0, 0, 0, 0x267),
+		INITHOTSPOT(0, 0, 0, 0, 0x268),
+		INITHOTSPOT(0, 0, 0, 0, 0x269),
+		INITHOTSPOT(0, 0, 0, 0, 0x26A),
+		INITHOTSPOT(0, 0, 0, 0, 0x26B),
+		INITHOTSPOT(0, 0, 0, 0, 0x26C),
+		INITHOTSPOT(0, 0, 0, 0, 0x26D),
+		INITHOTSPOT(0, 0, 0, 0, 0x26E),
+		INITHOTSPOT(0, 0, 0, 0, 0x26F)
+	},
+	{
+		INITHOTSPOT(17, 120, 122, 132, 0x190),
+		INITHOTSPOT(17, 120, 140, 150, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 69, 242, 114, 129, 0x190),
+		INITHOTSPOT( 69, 242, 132, 147, 0x191),
+		INITHOTSPOT( 69, 242, 150, 165, 0x192),
+		INITHOTSPOT( 69, 131, 168, 183, 0x193),
+		INITHOTSPOT(181, 242, 168, 183, 0x194),
+		INITHOTSPOT(133, 179, 168, 183, 0x24A),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 73, 105, 56,  80, 0x428),
+		INITHOTSPOT( 89, 131, 88, 110, 0x42A),
+		INITHOTSPOT(124, 152, 56,  81, 0x42B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 61,  91, 61,  87, 0x417),
+		INITHOTSPOT( 92, 122, 84, 110, 0x40A),
+		INITHOTSPOT(123, 154, 61,  87, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 47,  80, 48, 116, 0x445),
+		INITHOTSPOT(149, 182, 51, 116, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(62, 88, 76, 141, 0x42F),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(140, 170, 102, 127, 0x428),
+		INITHOTSPOT( 73, 117,  65,  82, 0x429),
+		INITHOTSPOT(170, 216,  96, 121, 0x42A),
+		INITHOTSPOT(121, 144,  34,  62, 0x42B),
+		INITHOTSPOT(160, 183,  41,  59, 0x42C),
+		INITHOTSPOT( 21,  51, 125, 151, 0x42D),
+		INITHOTSPOT(201, 217,  43,  76, 0x42E),
+		INITHOTSPOT( 76, 114, 119, 150, 0x42F),
+		INITHOTSPOT( 18,  48,  31,  61, 0x430),
+		INITHOTSPOT( 57,  72,  88, 122, 0x431),
+		INITHOTSPOT(182, 207, 125, 155, 0x432),
+		INITHOTSPOT(176, 203,  26,  37, 0x433),
+		INITHOTSPOT( 55,  75,  23,  51, 0x434),
+		INITHOTSPOT(120, 166, 133, 155, 0x435),
+		INITHOTSPOT( 96, 117,  93, 113, 0x436),
+		INITHOTSPOT(140, 189,  68,  89, 0x437)
+	},
+	{
+		INITHOTSPOT(84, 113, 30,  53, 0x438),
+		INITHOTSPOT(21,  42, 78, 105, 0x439),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(4, 227, 17, 160, 0x241)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(86, 112, 27, 85, 0x453),
+		INITHOTSPOT(85, 127, 29, 90, 0x453),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(128, 149, 55, 114, 0x445),
+		INITHOTSPOT(180, 215, 36, 120, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT( 69,  86, 86, 103, 0x437),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(128, 149, 55, 114, 0x445),
+		INITHOTSPOT(180, 215, 36, 120, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(53, 131, 41, 159, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(204, 227, 100, 160, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 94, 106, 83, 104, 0x443),
+		INITHOTSPOT(107, 127, 83, 104, 0x405),
+		INITHOTSPOT( 75,  94, 98, 133, 0x409),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(67, 135, 22, 68, 0x407),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(88, 156, 102, 158, 0x418),
+		INITHOTSPOT(96, 137,  20,  47, 0x415),
+		INITHOTSPOT(21,  83,  18,  37, 0x406),
+		INITHOTSPOT(19,  45,  76, 102, 0x401),
+		INITHOTSPOT(23,  68, 134, 157, 0x400),
+		INITHOTSPOT(96, 156,  47, 102, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(68, 131, 117, 158, 0x418),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(103, 158,  18,  40, 0x417),
+		INITHOTSPOT(163, 179, 127, 150, 0x402),
+		INITHOTSPOT( 20,  43,  18,  43, 0x401),
+		INITHOTSPOT( 28,  67,  67,  98, 0x400),
+		INITHOTSPOT(  5,  53, 139, 159, 0x420),
+		INITHOTSPOT( 95, 151, 124, 159, 0x40B),
+		INITHOTSPOT( 53,  94, 124, 159, 0x420),
+		INITHOTSPOT( 89, 158,  40, 103, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT( 33,  99,  18,  53, 0x418),
+		INITHOTSPOT( 40,  82,  69, 103, 0x40B),
+		INITHOTSPOT(  5,  39,  69, 103, 0x420),
+		INITHOTSPOT(  5,  82, 103, 159, 0x40C),
+		INITHOTSPOT( 82, 123, 128, 159, 0x40D),
+		INITHOTSPOT( 96, 120,  73,  96, 0x443),
+		INITHOTSPOT(123, 184, 112, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(113, 125,  43,  60, 0x40A),
+		INITHOTSPOT( 99, 114,  60,  80, 0x409),
+		INITHOTSPOT( 99, 135,  80, 104, 0x443),
+		INITHOTSPOT( 99, 160, 104, 159, 0x417),
+		INITHOTSPOT( 17,  56, 134, 159, 0x401),
+		INITHOTSPOT(  9,  81,  65,  98, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 216, 109, 147, 0x417),
+		INITHOTSPOT(161, 193,  81, 105, 0x415),
+		INITHOTSPOT( 91, 110, 131, 154, 0x401),
+		INITHOTSPOT( 31,  66, 128, 147, 0x408),
+		INITHOTSPOT( 84, 141,  70,  96, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(67, 85, 72, 98, 0x443),
+		INITHOTSPOT(117, 182, 65, 96, 0x406),
+		INITHOTSPOT(124, 147, 130, 153, 0x401),
+		INITHOTSPOT(56, 89, 124, 146, 0x408),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(92, 106, 120, 130, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 209, 50, 98, 0x417),
+		INITHOTSPOT(157, 209, 98, 159, 0x418),
+		INITHOTSPOT(161, 191, 29, 50, 0x415),
+		INITHOTSPOT(91, 139, 18, 44, 0x406),
+		INITHOTSPOT(95, 128, 137, 151, 0x400),
+		INITHOTSPOT(32, 61, 81, 95, 0x408),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(87, 109, 81, 105, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 214, 18, 46, 0x417),
+		INITHOTSPOT(151, 214, 46, 105, 0x418),
+		INITHOTSPOT(87, 108, 22, 46, 0x401),
+		INITHOTSPOT(58, 43, 141, 57, 0x40B),
+		INITHOTSPOT(24, 62, 18, 37, 0x408),
+		INITHOTSPOT(155, 200, 123, 157, 0x40B),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(92, 131, 77, 97, 0x443),
+		INITHOTSPOT(113, 155, 123, 157, 0x420),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(94, 129, 121, 145, 0x415),
+		INITHOTSPOT(14, 79, 108, 142, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(102, 127, 96, 107, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 125, 62, 104, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(5, 71, 102, 160, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(71, 92, 97, 146, 0x409),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(40, 133, 99, 158, 0x443),
+		INITHOTSPOT(133, 188, 94, 145, 0x405),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(104, 122, 124, 148, 0x445),
+		INITHOTSPOT(151, 165, 32, 56, 0x445),
+		INITHOTSPOT(100, 118, 34, 55, 0x19F),
+		INITHOTSPOT(50, 66, 35, 58, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(89, 129, 58, 106, 0x19F)
+	},
+	{
+		INITHOTSPOT(146, 195, 18, 51, 0x418),
+		INITHOTSPOT(87, 130, 21, 45, 0x400),
+		INITHOTSPOT(150, 204, 66, 99, 0x40B),
+		INITHOTSPOT(63, 112, 80, 103, 0x443),
+		INITHOTSPOT(112, 150, 66, 103, 0x443),
+		INITHOTSPOT(63, 183, 103, 159, 0x40C),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(125, 182, 18, 42, 0x406),
+		INITHOTSPOT(122, 148, 80, 105, 0x401),
+		INITHOTSPOT(130, 175, 135, 156, 0x400),
+		INITHOTSPOT(66, 85, 20, 49, 0x407),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(53, 89, 77, 95, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(88, 144, 18, 49, 0x418),
+		INITHOTSPOT(158, 178, 73, 95, 0x402),
+		INITHOTSPOT(16, 69, 18, 43, 0x400),
+		INITHOTSPOT(5, 52, 81, 108, 0x420),
+		INITHOTSPOT(52, 88, 65, 108, 0x420),
+		INITHOTSPOT(5, 134, 108, 159, 0x40C),
+		INITHOTSPOT(135, 179, 124, 159, 0x40D),
+		INITHOTSPOT(88, 134, 65, 108, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(40, 160, 49, 148, 0x442),
+		INITHOTSPOT(5, 39, 49, 159, 0x40B),
+		INITHOTSPOT(210, 226, 75, 116, 0x402),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(135, 177, 68, 111, 0x443),
+		INITHOTSPOT(158, 176, 17, 34, 0x402),
+		INITHOTSPOT(90, 132, 17, 46, 0x40B),
+		INITHOTSPOT(23, 55, 24, 91, 0x420),
+		INITHOTSPOT(4, 55, 27, 124, 0x40C),
+		INITHOTSPOT(55, 113, 17, 124, 0x40C),
+		INITHOTSPOT(113, 154, 65, 124, 0x40C),
+		INITHOTSPOT(154, 227, 81, 160, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(141, 213, 79, 110, 0x410),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(126, 188, 24, 54, 0x403),
+		INITHOTSPOT(5, 101, 18, 90, 0x40E),
+		INITHOTSPOT(5, 65, 90, 159, 0x40E),
+		INITHOTSPOT(65, 98, 213, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(5, 213, 18, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(19, 66, 18, 64, 0x40D),
+		INITHOTSPOT(5, 32, 18, 73, 0x40C),
+		INITHOTSPOT(155, 184, 84, 111, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(134, 197, 18, 59, 0x40F),
+		INITHOTSPOT(189, 227, 120, 159, 0x403),
+		INITHOTSPOT(5, 155, 18, 132, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(85, 132, 18, 60, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(33, 63, 88, 117, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(72, 144, 130, 159, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(90, 156, 60, 130, 0x443),
+		INITHOTSPOT(144, 94, 130, 159, 0x422),
+		INITHOTSPOT(8, 90, 18, 63, 0x40F),
+		INITHOTSPOT(132, 194, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 215, 111, 159, 0x421),
+		INITHOTSPOT(85, 153, 49, 111, 0x443),
+		INITHOTSPOT(104, 131, 134, 159, 0x412),
+		INITHOTSPOT(153, 201, 54, 111, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(5, 104, 128, 159, 0x40E),
+		INITHOTSPOT(5, 161, 54, 159, 0x40E),
+		INITHOTSPOT(201, 227, 49, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 126, 79, 106, 0x443),
+		INITHOTSPOT(163, 212, 56, 108, 0x421),
+		INITHOTSPOT(73, 139, 18, 56, 0x40F),
+		INITHOTSPOT(156, 181, 18, 49, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(129, 194, 121, 156, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(22, 100, 18, 138, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(96, 135, 88, 115, 0x443),
+		INITHOTSPOT(29, 96, 68, 115, 0x410),
+		INITHOTSPOT(28, 80, 17, 68, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(80, 135, 17, 88, 0x422),
+		INITHOTSPOT(135, 204, 17, 158, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(69, 136, 71, 112, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(136, 175, 91, 119, 0x41F),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(131, 185, 18, 91, 0x422),
+		INITHOTSPOT(185, 226, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(67, 131, 18, 71, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(91, 133, 52, 112, 0x443),
+		INITHOTSPOT(16, 84, 63, 117, 0x40F),
+		INITHOTSPOT(115, 160, 114, 160, 0x421),
+		INITHOTSPOT(37, 70, 139, 160, 0x412),
+		INITHOTSPOT(128, 170, 36, 51, 0x416),
+		INITHOTSPOT(140, 227, 17, 38, 0x416),
+		INITHOTSPOT(152, 227, 38, 160, 0x414),
+		INITHOTSPOT(51, 91, 118, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(67, 150, 53, 159, 0x445),
+		INITHOTSPOT(150, 226, 19, 159, 0x414),
+		INITHOTSPOT(5, 67, 46, 159, 0x40F),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(59, 146, 77, 135, 0x443),
+		INITHOTSPOT(146, 193, 77, 124, 0x403),
+		INITHOTSPOT(129, 206, 124, 159, 0x410),
+		INITHOTSPOT(94, 124, 36, 63, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(94, 147, 18, 77, 0x40E),
+		INITHOTSPOT(5, 129, 18, 158, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(50, 109, 115, 159, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x413),
+		INITHOTSPOT(50, 135, 46, 159, 0x414),
+		INITHOTSPOT(135, 159, 113, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(93, 135, 78, 141, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 97, 17, 78, 0x421),
+		INITHOTSPOT(39, 93, 78, 123, 0x403),
+		INITHOTSPOT(39, 135, 123, 159, 0x410),
+		INITHOTSPOT(97, 195, 17, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E)
+	},
+	{
+		INITHOTSPOT(15, 66, 104, 141, 0x190),
+		INITHOTSPOT(105, 164, 87, 155, 0x191),
+		INITHOTSPOT(174, 225, 100, 154, 0x192),
+		INITHOTSPOT(81, 132, 37, 78, 0x193),
+		INITHOTSPOT(165, 212, 26, 78, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(84, 150, 79, 114, 0x443),
+		INITHOTSPOT(66, 200, 127, 159, 0x410),
+		INITHOTSPOT(47, 75, 38, 64, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(100, 156, 18, 79, 0x421),
+		INITHOTSPOT(150, 200, 72, 132, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(156, 226, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(26, 42, 48, 77, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(112, 134, 77, 84, 0x443),
+		INITHOTSPOT(97, 134, 84, 102, 0x443),
+		INITHOTSPOT(55, 71, 52, 73, 0x41B),
+		INITHOTSPOT(97, 123, 18, 84, 0x404),
+		INITHOTSPOT(84, 97, 61, 92, 0x404),
+		INITHOTSPOT(154, 178, 20, 42, 0x41E),
+		INITHOTSPOT(134, 183, 72, 102, 0x424),
+		INITHOTSPOT(95, 129, 123, 149, 0x41A),
+		INITHOTSPOT(14, 54, 79, 159, 0x414),
+		INITHOTSPOT(66, 86, 73, 82, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 136, 84, 102, 0x443),
+		INITHOTSPOT(104, 116, 101, 122, 0x41B),
+		INITHOTSPOT(113, 134, 122, 130, 0x41B),
+		INITHOTSPOT(78, 97, 96, 110, 0x416),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 136, 84, 102, 0x443),
+		INITHOTSPOT(74, 129, 26, 57, 0x41C),
+		INITHOTSPOT(103, 118, 63, 85, 0x443),
+		INITHOTSPOT(112, 131, 85, 95, 0x443),
+		INITHOTSPOT(78, 99, 58, 70, 0x416),
+		INITHOTSPOT(160, 182, 86, 112, 0x41D),
+		INITHOTSPOT(146, 182, 95, 112, 0x41D),
+		INITHOTSPOT(146, 170, 28, 95, 0x404),
+		INITHOTSPOT(129, 146, 71, 102, 0x404),
+		INITHOTSPOT(59, 98, 84, 160, 0x414),
+		INITHOTSPOT(144, 177, 134, 159, 0x41A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(144, 176, 76, 110, 0x404),
+		INITHOTSPOT(175, 206, 18, 110, 0x404),
+		INITHOTSPOT(167, 226, 84, 159, 0x41D),
+		INITHOTSPOT(4, 45, 18, 48, 0x416),
+		INITHOTSPOT(71, 89, 47, 85, 0x443),
+		INITHOTSPOT(77, 132, 86, 110, 0x443),
+		INITHOTSPOT(4, 67, 18, 39, 0x41C),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(96, 119, 76, 93, 0x443),
+		INITHOTSPOT(82, 120, 125, 153, 0x424),
+		INITHOTSPOT(43, 74, 129, 150, 0x41D),
+		INITHOTSPOT(44, 64, 71, 112, 0x404),
+		INITHOTSPOT(32, 64, 112, 129, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(99, 119, 69, 103, 0x443),
+		INITHOTSPOT(135, 185, 123, 154, 0x424),
+		INITHOTSPOT(112, 135, 129, 138, 0x41D),
+		INITHOTSPOT(92, 135, 138, 154, 0x41D),
+		INITHOTSPOT(53, 70, 107, 129, 0x41B),
+		INITHOTSPOT(63, 81, 129, 138, 0x41B),
+		INITHOTSPOT(156, 177, 76, 91, 0x41E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(74, 124, 38, 133, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(70, 110, 121, 159, 0x441),
+		INITHOTSPOT(92, 112, 33, 59, 0x445),
+		INITHOTSPOT(150, 177, 24, 49, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(129, 149, 43, 60, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(130, 182, 17, 46, 0x41C),
+		INITHOTSPOT(158, 168, 49, 69, 0x41B),
+		INITHOTSPOT(164, 183, 69, 77, 0x41B),
+		INITHOTSPOT(105, 166, 71, 160, 0x414),
+		INITHOTSPOT(46, 80, 98, 149, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 129, 78, 86, 0x443),
+		INITHOTSPOT(105, 129, 86, 99, 0x443),
+		INITHOTSPOT(34, 84, 134, 159, 0x425),
+		INITHOTSPOT(48, 75, 81, 109, 0x41A),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 141, 76, 103, 0x443),
+		INITHOTSPOT(53, 80, 125, 150, 0x41A),
+		INITHOTSPOT(67, 92, 80, 87, 0x41D),
+		INITHOTSPOT(54, 92, 87, 103, 0x41D),
+		INITHOTSPOT(38, 54, 63, 95, 0x404),
+		INITHOTSPOT(54, 78, 20, 87, 0x404),
+		INITHOTSPOT(113, 131, 26, 43, 0x41E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(8, 38, 58, 103, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(58, 68, 88, 103, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 133, 81, 120, 0x189),
+		INITHOTSPOT(104, 133, 120, 133, 0x189),
+		INITHOTSPOT(112, 123, 65, 142, 0x189),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(18, 65, 18, 159, 0x414),
+		INITHOTSPOT(65, 143, 75, 159, 0x414),
+		INITHOTSPOT(143, 157, 96, 159, 0x414),
+		INITHOTSPOT(143, 150, 86, 96, 0x414),
+		INITHOTSPOT(99, 120, 38, 60, 0x41A),
+		INITHOTSPOT(65, 112, 58, 75, 0x414)
+	},
+	{
+		INITHOTSPOT(107, 119, 61, 88, 0x445),
+		INITHOTSPOT(91, 110, 95, 136, 0x446),
+		INITHOTSPOT(181, 208, 66, 146, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(100, 129, 74, 100, 0x443),
+		INITHOTSPOT(103, 140, 29, 54, 0x41D),
+		INITHOTSPOT(140, 189, 24, 54, 0x424),
+		INITHOTSPOT(89, 126, 18, 41, 0x404),
+		INITHOTSPOT(46, 89, 18, 41, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(95, 129, 124, 131, 0x425),
+		INITHOTSPOT(95, 139, 131, 159, 0x425),
+		INITHOTSPOT(139, 146, 136, 159, 0x425),
+		INITHOTSPOT(5, 58, 18, 159, 0x414),
+		INITHOTSPOT(58, 122, 111, 159, 0x414),
+		INITHOTSPOT(129, 154, 120, 131, 0x414),
+		INITHOTSPOT(139, 160, 131, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(125, 179, 49, 126, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(159, 173, 17, 32, 0x445),
+		INITHOTSPOT(148, 165, 40, 61, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(39, 59, 35, 69, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(56, 79, 88, 133, 0x445),
+		INITHOTSPOT(103, 122, 81, 136, 0x446),
+		INITHOTSPOT(161, 190, 85, 145, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(65, 105, 87, 119, 0x438),
+		INITHOTSPOT(141, 165, 55, 78, 0x40A),
+		INITHOTSPOT(182, 203, 74, 95, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(93, 127, 39, 80, 0x40A),
+		INITHOTSPOT(21, 54, 92, 129, 0x41D),
+		INITHOTSPOT(167, 200, 94, 134, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(59, 95, 55, 95, 0x40A),
+		INITHOTSPOT(129, 169, 82, 131, 0x41D),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(57, 92, 76, 102, 0x442),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(4, 44, 74, 104, 0x441),
+		INITHOTSPOT(85, 143, 73, 98, 0x448),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(125, 151, 103, 125, 0x42C),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(38, 47, 151, 159, 0x42D),
+		INITHOTSPOT(88, 112, 143, 154, 0x42D),
+		INITHOTSPOT(79, 123, 92, 132, 0x42D),
+		INITHOTSPOT(48, 64, 98, 113, 0x42D),
+		INITHOTSPOT(7, 12, 97, 102, 0x42D),
+		INITHOTSPOT(78, 104, 105, 114, 0x42D),
+		INITHOTSPOT(103, 111, 100, 106, 0x42D),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(13, 48, 82, 112, 0x42D),
+		INITHOTSPOT(45, 54, 61, 75, 0x42D),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(68, 188, 65, 105, 0x441)
+	},
+	{
+		INITHOTSPOT(164, 191, 38, 109, 0x445),
+		INITHOTSPOT(56, 93, 69, 83, 0x444),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(30, 44, 50, 77, 0x198),
+		INITHOTSPOT(30, 44, 113, 140, 0x199),
+		INITHOTSPOT(308, 319, 179, 191, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 227, 17, 160, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 67, 73, 118, 0x450),
+		INITHOTSPOT(123, 151, 37, 76, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(90, 130, 99, 123, 0x432),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(67, 152, 99, 139, 0x449),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 194, 29, 73, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(110, 123, 82, 130, 0x431),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(104, 121, 60, 86, 0x445),
+		INITHOTSPOT(78, 91, 52, 77, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(151, 190, 31, 105, 0x445),
+		INITHOTSPOT(37, 65, 23, 105, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(144, 223, 48, 105, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(11, 59, 80, 141, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(160, 208, 80, 140, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(74, 91, 78, 105, 0x42E),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(181, 217, 49, 128, 0x445),
+		INITHOTSPOT(17, 50, 28, 131, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(27, 199, 79, 159, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(191, 222, 57, 84, 0x442),
+		INITHOTSPOT(103, 119, 130, 141, 0x44A),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(167, 194, 115, 130, 0x433),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(73, 104, 109, 138, 0x434),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(85, 133, 47, 93, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 67, 73, 118, 0x445),
+		INITHOTSPOT(123, 151, 37, 76, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(146, 177, 61, 114, 0x445),
+		INITHOTSPOT(14, 43, 69, 131, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(78, 145, 55, 144, 0x456),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(133, 194, 18, 72, 0x413),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(159, 197, 38, 71, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 198, 42, 80, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(197, 217, 84, 128, 0x453),
+		INITHOTSPOT(26, 42, 48, 77, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(84, 105, 77, 108, 0x435),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 197, 77, 119, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 277, 57, 73, 0x441),
+		INITHOTSPOT(47, 119, 107, 160, 0x448),
+		INITHOTSPOT(73, 98, 43, 90, 0x44B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 277, 57, 73, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x448),
+		INITHOTSPOT(73, 98, 43, 90, 0x44B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(47, 119, 107, 160, 0x451),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 124, 94, 137, 0x441),
+		INITHOTSPOT(67, 81, 71, 160, 0x448),
+		INITHOTSPOT(15, 48, 19, 160, 0x44B),
+		INITHOTSPOT(211, 227, 17, 160, 0x44C),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(181, 205, 50, 96, 0x441),
+		INITHOTSPOT(107, 166, 123, 160, 0x448),
+		INITHOTSPOT(4, 25, 71, 130, 0x44B),
+		INITHOTSPOT(210, 227, 60, 105, 0x44C),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 124, 70, 106, 0x439),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(128, 191, 43, 129, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(17, 51, 50, 126, 0x445),
+		INITHOTSPOT(179, 211, 30, 129, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(17, 51, 50, 126, 0x445),
+		INITHOTSPOT(179, 211, 30, 129, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(117, 139, 73, 135, 0x430),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(20, 37, 88, 132, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(20, 37, 88, 132, 0x445),
+		INITHOTSPOT(101, 125, 99, 141, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 41, 92, 160, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(61, 78, 69, 86, 0x458),
+		INITHOTSPOT(136, 142, 17, 130, 0x44D),
+		INITHOTSPOT(167, 175, 17, 139, 0x44E),
+		INITHOTSPOT(181, 194, 58, 136, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(164, 192, 71, 130, 0x445),
+		INITHOTSPOT(105, 141, 70, 131, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
 	}
 };
 
 HotSpot _mouseMapASDemo[128][16] = {
 	{
-		{15, 110, 48, 62, 0x240},
-		{61, 176, 30, 44, 0x241},
-		{121, 216, 66, 80, 0x242},
-		{121, 216, 48, 62, 0x243},
-		{121, 216, 84, 98, 0x244},
-		{15, 110, 66, 80, 0x245},
-		{15, 110, 84, 98, 0x246},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{119, 197, 78, 84, 0x190},
-		{119, 197, 85, 91, 0x191},
-		{119, 197, 92, 98, 0x192},
-		{119, 197, 99, 105, 0x193},
-		{72, 96, 103, 109, 0x194},
-		{72, 96, 110, 116, 0x195},
-		{72, 96, 117, 123, 0x196},
-		{72, 96, 124, 130, 0x197},
-		{72, 96, 131, 137, 0x198},
-		{220, 242, 111, 117, 0x199},
-		{220, 242, 118, 124, 0x19A},
-		{220, 242, 125, 131, 0x19B},
-		{141, 173, 136, 142, 0x19C},
-		{141, 173, 143, 149, 0x19D},
-		{230, 280, 182, 193, 0x19E},
-		{34, 91, 182, 193, 0x19F}
-	},
-	{
-		{4, 227, 17, 160, 0x260},
-		{0, 0, 0, 0, 0x261},
-		{0, 0, 0, 0, 0x262},
-		{0, 0, 0, 0, 0x263},
-		{0, 0, 0, 0, 0x264},
-		{0, 0, 0, 0, 0x265},
-		{0, 0, 0, 0, 0x266},
-		{0, 0, 0, 0, 0x267},
-		{0, 0, 0, 0, 0x268},
-		{0, 0, 0, 0, 0x269},
-		{0, 0, 0, 0, 0x26A},
-		{0, 0, 0, 0, 0x26B},
-		{0, 0, 0, 0, 0x26C},
-		{0, 0, 0, 0, 0x26D},
-		{0, 0, 0, 0, 0x26E},
-		{0, 0, 0, 0, 0x26F}
-	},
-	{
-		{17, 120, 122, 132, 0x190},
-		{17, 120, 140, 150, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x191},
-		{69, 242, 114, 129, 0x190},
-		{69, 242, 132, 147, 0x192},
-		{69, 131, 150, 165, 0x193},
-		{181, 242, 150, 165, 0x194},
-		{133, 179, 150, 165, 0x24A},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{73, 105, 56, 80, 0x428},
-		{89, 131, 88, 110, 0x42A},
-		{124, 152, 56, 81, 0x42B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{61, 91, 61, 87, 0x417},
-		{92, 122, 84, 110, 0x40A},
-		{123, 154, 61, 87, 0x406},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{47, 80, 48, 116, 0x445},
-		{149, 182, 51, 116, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{62, 88, 76, 141, 0x42F},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{140, 170, 102, 127, 0x428},
-		{73, 117, 65, 82, 0x429},
-		{170, 216, 96, 121, 0x42A},
-		{121, 144, 34, 62, 0x42B},
-		{160, 183, 41, 59, 0x42C},
-		{21, 51, 125, 151, 0x42D},
-		{201, 217, 43, 76, 0x42E},
-		{76, 114, 119, 150, 0x42F},
-		{18, 48, 31, 61, 0x430},
-		{57, 72, 88, 122, 0x431},
-		{182, 207, 125, 155, 0x432},
-		{176, 203, 26, 37, 0x433},
-		{55, 75, 23, 51, 0x434},
-		{120, 166, 133, 155, 0x435},
-		{96, 117, 93, 113, 0x436},
-		{140, 189, 68, 89, 0x437}
-	},
-	{
-		{84, 113, 30, 53, 0x438},
-		{21, 42, 78, 105, 0x439},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{4, 227, 17, 160, 0x241}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{86, 112, 27, 85, 0x453},
-		{85, 127, 29, 90, 0x453},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{128, 149, 55, 114, 0x445},
-		{180, 215, 36, 120, 0x445},
-		{0, 0, 0, 0, 0x192},
-		{69, 86, 86, 103, 0x437},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{128, 149, 55, 114, 0x445},
-		{180, 215, 36, 120, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{53, 131, 41, 159, 0x445},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{204, 227, 100, 160, 0x441},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{94, 106, 83, 104, 0x443},
-		{107, 127, 83, 104, 0x405},
-		{75, 94, 98, 133, 0x409},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{67, 135, 22, 68, 0x407},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{88, 156, 102, 158, 0x418},
-		{96, 137, 20, 47, 0x415},
-		{21, 83, 18, 37, 0x406},
-		{19, 45, 76, 102, 0x401},
-		{23, 68, 134, 157, 0x400},
-		{96, 156, 47, 102, 0x443},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{68, 131, 117, 158, 0x418},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{103, 158, 18, 40, 0x417},
-		{163, 179, 127, 150, 0x402},
-		{20, 43, 18, 43, 0x401},
-		{28, 67, 67, 98, 0x400},
-		{5, 53, 139, 159, 0x420},
-		{95, 151, 124, 159, 0x40B},
-		{53, 94, 124, 159, 0x420},
-		{89, 158, 40, 103, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{33, 99, 18, 53, 0x418},
-		{40, 82, 69, 103, 0x40B},
-		{5, 39, 69, 103, 0x420},
-		{5, 82, 103, 159, 0x40C},
-		{82, 123, 128, 159, 0x40D},
-		{96, 120, 73, 96, 0x443},
-		{123, 184, 112, 159, 0x40E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{113, 125, 43, 60, 0x40A},
-		{99, 114, 60, 80, 0x409},
-		{99, 135, 80, 104, 0x443},
-		{99, 160, 104, 159, 0x417},
-		{17, 56, 134, 159, 0x401},
-		{9, 81, 65, 98, 0x406},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 216, 109, 147, 0x417},
-		{161, 193, 81, 105, 0x415},
-		{91, 110, 131, 154, 0x401},
-		{31, 66, 128, 147, 0x408},
-		{84, 141, 70, 96, 0x443},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{67, 85, 72, 98, 0x443},
-		{117, 182, 65, 96, 0x406},
-		{124, 147, 130, 153, 0x401},
-		{56, 89, 124, 146, 0x408},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{92, 106, 120, 130, 0x446},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 209, 50, 98, 0x417},
-		{157, 209, 98, 159, 0x418},
-		{161, 191, 29, 50, 0x415},
-		{91, 139, 18, 44, 0x406},
-		{95, 128, 137, 151, 0x400},
-		{32, 61, 81, 95, 0x408},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{87, 109, 81, 105, 0x443},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 214, 18, 46, 0x417},
-		{151, 214, 46, 105, 0x418},
-		{87, 108, 22, 46, 0x401},
-		{58, 43, 141, 57, 0x40B},
-		{24, 62, 18, 37, 0x408},
-		{155, 200, 123, 157, 0x40B},
-		{0, 0, 0, 0, 0x196},
-		{92, 131, 77, 97, 0x443},
-		{113, 155, 123, 157, 0x420},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{94, 129, 121, 145, 0x415},
-		{14, 79, 108, 142, 0x406},
-		{0, 0, 0, 0, 0x192},
-		{102, 127, 96, 107, 0x443},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 125, 62, 104, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{5, 71, 102, 160, 0x406},
-		{0, 0, 0, 0, 0x193},
-		{71, 92, 97, 146, 0x409},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{40, 133, 99, 158, 0x443},
-		{133, 188, 94, 145, 0x405},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{104, 122, 124, 148, 0x445},
-		{151, 165, 32, 56, 0x445},
-		{100, 118, 34, 55, 0x19F},
-		{50, 66, 35, 58, 0x445},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{89, 129, 58, 106, 0x19F}
-	},
-	{
-		{146, 195, 18, 51, 0x418},
-		{87, 130, 21, 45, 0x400},
-		{150, 204, 66, 99, 0x40B},
-		{63, 112, 80, 103, 0x443},
-		{112, 150, 66, 103, 0x443},
-		{63, 183, 103, 159, 0x40C},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{125, 182, 18, 42, 0x406},
-		{122, 148, 80, 105, 0x401},
-		{130, 175, 135, 156, 0x400},
-		{66, 85, 20, 49, 0x407},
-		{0, 0, 0, 0, 0x194},
-		{53, 89, 77, 95, 0x443},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{88, 144, 18, 49, 0x418},
-		{158, 178, 73, 95, 0x402},
-		{16, 69, 18, 43, 0x400},
-		{5, 52, 81, 108, 0x420},
-		{52, 88, 65, 108, 0x420},
-		{5, 134, 108, 159, 0x40C},
-		{135, 179, 124, 159, 0x40D},
-		{88, 134, 65, 108, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{40, 160, 49, 148, 0x442},
-		{5, 39, 49, 159, 0x40B},
-		{210, 226, 75, 116, 0x402},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{135, 177, 68, 111, 0x443},
-		{158, 176, 17, 34, 0x402},
-		{90, 132, 17, 46, 0x40B},
-		{23, 55, 24, 91, 0x420},
-		{4, 55, 27, 124, 0x40C},
-		{55, 113, 17, 124, 0x40C},
-		{113, 154, 65, 124, 0x40C},
-		{154, 227, 81, 160, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{141, 213, 79, 110, 0x410},
-		{0, 0, 0, 0, 0x191},
-		{126, 188, 24, 54, 0x403},
-		{5, 101, 18, 90, 0x40E},
-		{5, 65, 90, 159, 0x40E},
-		{65, 98, 213, 159, 0x40E},
-		{0, 0, 0, 0, 0x196},
-		{5, 213, 18, 159, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{19, 66, 18, 64, 0x40D},
-		{5, 32, 18, 73, 0x40C},
-		{155, 184, 84, 111, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{134, 197, 18, 59, 0x40F},
-		{189, 227, 120, 159, 0x403},
-		{5, 155, 18, 132, 0x443},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{85, 132, 18, 60, 0x419},
-		{0, 0, 0, 0, 0x191},
-		{33, 63, 88, 117, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{72, 144, 130, 159, 0x403},
-		{0, 0, 0, 0, 0x195},
-		{90, 156, 60, 130, 0x443},
-		{144, 94, 130, 159, 0x422},
-		{8, 90, 18, 63, 0x40F},
-		{132, 194, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{161, 215, 111, 159, 0x421},
-		{85, 153, 49, 111, 0x443},
-		{104, 131, 134, 159, 0x412},
-		{153, 201, 54, 111, 0x419},
-		{0, 0, 0, 0, 0x194},
-		{5, 104, 128, 159, 0x40E},
-		{5, 161, 54, 159, 0x40E},
-		{201, 227, 49, 159, 0x414},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 126, 79, 106, 0x443},
-		{163, 212, 56, 108, 0x421},
-		{73, 139, 18, 56, 0x40F},
-		{156, 181, 18, 49, 0x419},
-		{0, 0, 0, 0, 0x194},
-		{129, 194, 121, 156, 0x403},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{22, 100, 18, 138, 0x40E},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{96, 135, 88, 115, 0x443},
-		{29, 96, 68, 115, 0x410},
-		{28, 80, 17, 68, 0x403},
-		{0, 0, 0, 0, 0x193},
-		{80, 135, 17, 88, 0x422},
-		{135, 204, 17, 158, 0x414},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{69, 136, 71, 112, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{136, 175, 91, 119, 0x41F},
-		{0, 0, 0, 0, 0x193},
-		{131, 185, 18, 91, 0x422},
-		{185, 226, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x196},
-		{67, 131, 18, 71, 0x403},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{91, 133, 52, 112, 0x443},
-		{16, 84, 63, 117, 0x40F},
-		{115, 160, 114, 160, 0x421},
-		{37, 70, 139, 160, 0x412},
-		{128, 170, 36, 51, 0x416},
-		{140, 227, 17, 38, 0x416},
-		{152, 227, 38, 160, 0x414},
-		{51, 91, 118, 159, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{67, 150, 53, 159, 0x445},
-		{150, 226, 19, 159, 0x414},
-		{5, 67, 46, 159, 0x40F},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{59, 146, 77, 135, 0x443},
-		{146, 193, 77, 124, 0x403},
-		{129, 206, 124, 159, 0x410},
-		{94, 124, 36, 63, 0x412},
-		{0, 0, 0, 0, 0x195},
-		{94, 147, 18, 77, 0x40E},
-		{5, 129, 18, 158, 0x40E},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{50, 109, 115, 159, 0x422},
-		{0, 0, 0, 0, 0x413},
-		{50, 135, 46, 159, 0x414},
-		{135, 159, 113, 159, 0x414},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{93, 135, 78, 141, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{39, 97, 17, 78, 0x421},
-		{39, 93, 78, 123, 0x403},
-		{39, 135, 123, 159, 0x410},
-		{97, 195, 17, 159, 0x414},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E}
-	},
-	{
-		{15, 66, 104, 141, 0x190},
-		{105, 164, 87, 155, 0x191},
-		{174, 225, 100, 154, 0x192},
-		{81, 132, 37, 78, 0x193},
-		{165, 212, 26, 78, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{84, 150, 79, 114, 0x443},
-		{66, 200, 127, 159, 0x410},
-		{47, 75, 38, 64, 0x412},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{100, 156, 18, 79, 0x421},
-		{150, 200, 72, 132, 0x422},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{156, 226, 18, 159, 0x414},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{26, 42, 48, 77, 0x404},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{112, 134, 77, 84, 0x443},
-		{97, 134, 84, 102, 0x443},
-		{55, 71, 52, 73, 0x41B},
-		{97, 123, 18, 84, 0x404},
-		{84, 97, 61, 92, 0x404},
-		{154, 178, 20, 42, 0x41E},
-		{134, 183, 72, 102, 0x424},
-		{95, 129, 123, 149, 0x41A},
-		{14, 54, 79, 159, 0x414},
-		{66, 86, 73, 82, 0x41B},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 136, 84, 102, 0x443},
-		{104, 116, 101, 122, 0x41B},
-		{113, 134, 122, 130, 0x41B},
-		{78, 97, 96, 110, 0x416},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{98, 136, 84, 102, 0x443},
-		{74, 129, 26, 57, 0x41C},
-		{103, 118, 63, 85, 0x443},
-		{112, 131, 85, 95, 0x443},
-		{78, 99, 58, 70, 0x416},
-		{160, 182, 86, 112, 0x41D},
-		{146, 182, 95, 112, 0x41D},
-		{146, 170, 28, 95, 0x404},
-		{129, 146, 71, 102, 0x404},
-		{59, 98, 84, 160, 0x414},
-		{144, 177, 134, 159, 0x41A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{144, 176, 76, 110, 0x404},
-		{175, 206, 18, 110, 0x404},
-		{167, 226, 84, 159, 0x41D},
-		{4, 45, 18, 48, 0x416},
-		{71, 89, 47, 85, 0x443},
-		{77, 132, 86, 110, 0x443},
-		{4, 67, 18, 39, 0x41C},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{96, 119, 76, 93, 0x443},
-		{82, 120, 125, 153, 0x424},
-		{43, 74, 129, 150, 0x41D},
-		{44, 64, 71, 112, 0x404},
-		{32, 64, 112, 129, 0x404},
-		{0, 0, 0, 0, 0x41B},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{99, 119, 69, 103, 0x443},
-		{135, 185, 123, 154, 0x424},
-		{112, 135, 129, 138, 0x41D},
-		{92, 135, 138, 154, 0x41D},
-		{53, 70, 107, 129, 0x41B},
-		{63, 81, 129, 138, 0x41B},
-		{156, 177, 76, 91, 0x41E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{74, 124, 38, 133, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{70, 110, 121, 159, 0x441},
-		{92, 112, 33, 59, 0x445},
-		{150, 177, 24, 49, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{129, 149, 43, 60, 0x443},
-		{0, 0, 0, 0, 0x191},
-		{130, 182, 17, 46, 0x41C},
-		{158, 168, 49, 69, 0x41B},
-		{164, 183, 69, 77, 0x41B},
-		{105, 166, 71, 160, 0x414},
-		{46, 80, 98, 149, 0x419},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 129, 78, 86, 0x443},
-		{105, 129, 86, 99, 0x443},
-		{34, 84, 134, 159, 0x425},
-		{48, 75, 81, 109, 0x41A},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 141, 76, 103, 0x443},
-		{53, 80, 125, 150, 0x41A},
-		{67, 92, 80, 87, 0x41D},
-		{54, 92, 87, 103, 0x41D},
-		{38, 54, 63, 95, 0x404},
-		{54, 78, 20, 87, 0x404},
-		{113, 131, 26, 43, 0x41E},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{8, 38, 58, 103, 0x41B},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{58, 68, 88, 103, 0x445},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 133, 81, 120, 0x189},
-		{104, 133, 120, 133, 0x189},
-		{112, 123, 65, 142, 0x189},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{18, 65, 18, 159, 0x414},
-		{65, 143, 75, 159, 0x414},
-		{143, 157, 96, 159, 0x414},
-		{143, 150, 86, 96, 0x414},
-		{99, 120, 38, 60, 0x41A},
-		{65, 112, 58, 75, 0x414}
-	},
-	{
-		{107, 119, 61, 88, 0x445},
-		{91, 110, 95, 136, 0x446},
-		{181, 208, 66, 146, 0x447},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{100, 129, 74, 100, 0x443},
-		{103, 140, 29, 54, 0x41D},
-		{140, 189, 24, 54, 0x424},
-		{89, 126, 18, 41, 0x404},
-		{46, 89, 18, 41, 0x41B},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{95, 129, 124, 131, 0x425},
-		{95, 139, 131, 159, 0x425},
-		{139, 146, 136, 159, 0x425},
-		{5, 58, 18, 159, 0x414},
-		{58, 122, 111, 159, 0x414},
-		{129, 154, 120, 131, 0x414},
-		{139, 160, 131, 159, 0x414},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{125, 179, 49, 126, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{159, 173, 17, 32, 0x445},
-		{148, 165, 40, 61, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{39, 59, 35, 69, 0x447},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{56, 79, 88, 133, 0x445},
-		{103, 122, 81, 136, 0x446},
-		{161, 190, 85, 145, 0x447},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{65, 105, 87, 119, 0x438},
-		{141, 165, 55, 78, 0x40A},
-		{182, 203, 74, 95, 0x414},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{93, 127, 39, 80, 0x40A},
-		{21, 54, 92, 129, 0x41D},
-		{167, 200, 94, 134, 0x422},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{59, 95, 55, 95, 0x40A},
-		{129, 169, 82, 131, 0x41D},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{57, 92, 76, 102, 0x442},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{4, 44, 74, 104, 0x441},
-		{85, 143, 73, 98, 0x448},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x191},
-		{125, 151, 103, 125, 0x42C},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{38, 47, 151, 159, 0x42D},
-		{88, 112, 143, 154, 0x42D},
-		{79, 123, 92, 132, 0x42D},
-		{48, 64, 98, 113, 0x42D},
-		{7, 12, 97, 102, 0x42D},
-		{78, 104, 105, 114, 0x42D},
-		{103, 111, 100, 106, 0x42D},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{13, 48, 82, 112, 0x42D},
-		{45, 54, 61, 75, 0x42D},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{68, 188, 65, 105, 0x441}
-	},
-	{
-		{164, 191, 38, 109, 0x445},
-		{56, 93, 69, 83, 0x444},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{30, 44, 50, 77, 0x198},
-		{30, 44, 113, 140, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{4, 227, 17, 160, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{39, 67, 73, 118, 0x450},
-		{123, 151, 37, 76, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{90, 130, 99, 123, 0x432},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{67, 152, 99, 139, 0x449},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 194, 29, 73, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{110, 123, 82, 130, 0x431},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{104, 121, 60, 86, 0x445},
-		{78, 91, 52, 77, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{151, 190, 31, 105, 0x445},
-		{37, 65, 23, 105, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{144, 223, 48, 105, 0x441},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{11, 59, 80, 141, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{160, 208, 80, 140, 0x446},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{74, 91, 78, 105, 0x42E},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{181, 217, 49, 128, 0x445},
-		{17, 50, 28, 131, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{27, 199, 79, 159, 0x452},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{191, 222, 57, 84, 0x442},
-		{103, 119, 130, 141, 0x44A},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{167, 194, 115, 130, 0x433},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{73, 104, 109, 138, 0x434},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{85, 133, 47, 93, 0x452},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{39, 67, 73, 118, 0x445},
-		{123, 151, 37, 76, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{146, 177, 61, 114, 0x445},
-		{14, 43, 69, 131, 0x446},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{78, 145, 55, 144, 0x456},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{133, 194, 18, 72, 0x413},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{159, 197, 38, 71, 0x441},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{157, 198, 42, 80, 0x404},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{197, 217, 84, 128, 0x453},
-		{26, 42, 48, 77, 0x404},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{84, 105, 77, 108, 0x435},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 197, 77, 119, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 277, 57, 73, 0x441},
-		{47, 119, 107, 160, 0x448},
-		{73, 98, 43, 90, 0x44B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{176, 277, 57, 73, 0x441},
-		{0, 0, 0, 0, 0x448},
-		{73, 98, 43, 90, 0x44B},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{47, 119, 107, 160, 0x451},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{92, 124, 94, 137, 0x441},
-		{67, 81, 71, 160, 0x448},
-		{15, 48, 19, 160, 0x44B},
-		{211, 227, 17, 160, 0x44C},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{181, 205, 50, 96, 0x441},
-		{107, 166, 123, 160, 0x448},
-		{4, 25, 71, 130, 0x44B},
-		{210, 227, 60, 105, 0x44C},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{95, 124, 70, 106, 0x439},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{0, 0, 0, 0, 0x190},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{128, 191, 43, 129, 0x441},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{17, 51, 50, 126, 0x445},
-		{179, 211, 30, 129, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{17, 51, 50, 126, 0x445},
-		{179, 211, 30, 129, 0x452},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{117, 139, 73, 135, 0x430},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{20, 37, 88, 132, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{20, 37, 88, 132, 0x445},
-		{101, 125, 99, 141, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{4, 41, 92, 160, 0x445},
-		{0, 0, 0, 0, 0x191},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{61, 78, 69, 86, 0x458},
-		{136, 142, 17, 130, 0x44D},
-		{167, 175, 17, 139, 0x44E},
-		{181, 194, 58, 136, 0x445},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
-	},
-	{
-		{164, 192, 71, 130, 0x445},
-		{105, 141, 70, 131, 0x446},
-		{0, 0, 0, 0, 0x192},
-		{0, 0, 0, 0, 0x193},
-		{0, 0, 0, 0, 0x194},
-		{0, 0, 0, 0, 0x195},
-		{0, 0, 0, 0, 0x196},
-		{0, 0, 0, 0, 0x197},
-		{0, 0, 0, 0, 0x198},
-		{0, 0, 0, 0, 0x199},
-		{0, 0, 0, 0, 0x19A},
-		{0, 0, 0, 0, 0x19B},
-		{0, 0, 0, 0, 0x19C},
-		{0, 0, 0, 0, 0x19D},
-		{0, 0, 0, 0, 0x19E},
-		{0, 0, 0, 0, 0x19F}
+		INITHOTSPOT(15, 110, 48, 62, 0x240),
+		INITHOTSPOT(61, 176, 30, 44, 0x241),
+		INITHOTSPOT(121, 216, 66, 80, 0x242),
+		INITHOTSPOT(121, 216, 48, 62, 0x243),
+		INITHOTSPOT(121, 216, 84, 98, 0x244),
+		INITHOTSPOT(15, 110, 66, 80, 0x245),
+		INITHOTSPOT(15, 110, 84, 98, 0x246),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(119, 197, 78, 84, 0x190),
+		INITHOTSPOT(119, 197, 85, 91, 0x191),
+		INITHOTSPOT(119, 197, 92, 98, 0x192),
+		INITHOTSPOT(119, 197, 99, 105, 0x193),
+		INITHOTSPOT(72, 96, 103, 109, 0x194),
+		INITHOTSPOT(72, 96, 110, 116, 0x195),
+		INITHOTSPOT(72, 96, 117, 123, 0x196),
+		INITHOTSPOT(72, 96, 124, 130, 0x197),
+		INITHOTSPOT(72, 96, 131, 137, 0x198),
+		INITHOTSPOT(220, 242, 111, 117, 0x199),
+		INITHOTSPOT(220, 242, 118, 124, 0x19A),
+		INITHOTSPOT(220, 242, 125, 131, 0x19B),
+		INITHOTSPOT(141, 173, 136, 142, 0x19C),
+		INITHOTSPOT(141, 173, 143, 149, 0x19D),
+		INITHOTSPOT(230, 280, 182, 193, 0x19E),
+		INITHOTSPOT(34, 91, 182, 193, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 227, 17, 160, 0x260),
+		INITHOTSPOT(0, 0, 0, 0, 0x261),
+		INITHOTSPOT(0, 0, 0, 0, 0x262),
+		INITHOTSPOT(0, 0, 0, 0, 0x263),
+		INITHOTSPOT(0, 0, 0, 0, 0x264),
+		INITHOTSPOT(0, 0, 0, 0, 0x265),
+		INITHOTSPOT(0, 0, 0, 0, 0x266),
+		INITHOTSPOT(0, 0, 0, 0, 0x267),
+		INITHOTSPOT(0, 0, 0, 0, 0x268),
+		INITHOTSPOT(0, 0, 0, 0, 0x269),
+		INITHOTSPOT(0, 0, 0, 0, 0x26A),
+		INITHOTSPOT(0, 0, 0, 0, 0x26B),
+		INITHOTSPOT(0, 0, 0, 0, 0x26C),
+		INITHOTSPOT(0, 0, 0, 0, 0x26D),
+		INITHOTSPOT(0, 0, 0, 0, 0x26E),
+		INITHOTSPOT(0, 0, 0, 0, 0x26F)
+	},
+	{
+		INITHOTSPOT(17, 120, 122, 132, 0x190),
+		INITHOTSPOT(17, 120, 140, 150, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(69, 242, 114, 129, 0x190),
+		INITHOTSPOT(69, 242, 132, 147, 0x192),
+		INITHOTSPOT(69, 131, 150, 165, 0x193),
+		INITHOTSPOT(181, 242, 150, 165, 0x194),
+		INITHOTSPOT(133, 179, 150, 165, 0x24A),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(73, 105, 56, 80, 0x428),
+		INITHOTSPOT(89, 131, 88, 110, 0x42A),
+		INITHOTSPOT(124, 152, 56, 81, 0x42B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(61, 91, 61, 87, 0x417),
+		INITHOTSPOT(92, 122, 84, 110, 0x40A),
+		INITHOTSPOT(123, 154, 61, 87, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(47, 80, 48, 116, 0x445),
+		INITHOTSPOT(149, 182, 51, 116, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(62, 88, 76, 141, 0x42F),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(140, 170, 102, 127, 0x428),
+		INITHOTSPOT(73, 117, 65, 82, 0x429),
+		INITHOTSPOT(170, 216, 96, 121, 0x42A),
+		INITHOTSPOT(121, 144, 34, 62, 0x42B),
+		INITHOTSPOT(160, 183, 41, 59, 0x42C),
+		INITHOTSPOT(21, 51, 125, 151, 0x42D),
+		INITHOTSPOT(201, 217, 43, 76, 0x42E),
+		INITHOTSPOT(76, 114, 119, 150, 0x42F),
+		INITHOTSPOT(18, 48, 31, 61, 0x430),
+		INITHOTSPOT(57, 72, 88, 122, 0x431),
+		INITHOTSPOT(182, 207, 125, 155, 0x432),
+		INITHOTSPOT(176, 203, 26, 37, 0x433),
+		INITHOTSPOT(55, 75, 23, 51, 0x434),
+		INITHOTSPOT(120, 166, 133, 155, 0x435),
+		INITHOTSPOT(96, 117, 93, 113, 0x436),
+		INITHOTSPOT(140, 189, 68, 89, 0x437)
+	},
+	{
+		INITHOTSPOT(84, 113, 30, 53, 0x438),
+		INITHOTSPOT(21, 42, 78, 105, 0x439),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(4, 227, 17, 160, 0x241)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(86, 112, 27, 85, 0x453),
+		INITHOTSPOT(85, 127, 29, 90, 0x453),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(128, 149, 55, 114, 0x445),
+		INITHOTSPOT(180, 215, 36, 120, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(69, 86, 86, 103, 0x437),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(128, 149, 55, 114, 0x445),
+		INITHOTSPOT(180, 215, 36, 120, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(53, 131, 41, 159, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(204, 227, 100, 160, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(94, 106, 83, 104, 0x443),
+		INITHOTSPOT(107, 127, 83, 104, 0x405),
+		INITHOTSPOT(75, 94, 98, 133, 0x409),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(67, 135, 22, 68, 0x407),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(88, 156, 102, 158, 0x418),
+		INITHOTSPOT(96, 137, 20, 47, 0x415),
+		INITHOTSPOT(21, 83, 18, 37, 0x406),
+		INITHOTSPOT(19, 45, 76, 102, 0x401),
+		INITHOTSPOT(23, 68, 134, 157, 0x400),
+		INITHOTSPOT(96, 156, 47, 102, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(68, 131, 117, 158, 0x418),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(103, 158, 18, 40, 0x417),
+		INITHOTSPOT(163, 179, 127, 150, 0x402),
+		INITHOTSPOT(20, 43, 18, 43, 0x401),
+		INITHOTSPOT(28, 67, 67, 98, 0x400),
+		INITHOTSPOT(5, 53, 139, 159, 0x420),
+		INITHOTSPOT(95, 151, 124, 159, 0x40B),
+		INITHOTSPOT(53, 94, 124, 159, 0x420),
+		INITHOTSPOT(89, 158, 40, 103, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(33, 99, 18, 53, 0x418),
+		INITHOTSPOT(40, 82, 69, 103, 0x40B),
+		INITHOTSPOT(5, 39, 69, 103, 0x420),
+		INITHOTSPOT(5, 82, 103, 159, 0x40C),
+		INITHOTSPOT(82, 123, 128, 159, 0x40D),
+		INITHOTSPOT(96, 120, 73, 96, 0x443),
+		INITHOTSPOT(123, 184, 112, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(113, 125, 43, 60, 0x40A),
+		INITHOTSPOT(99, 114, 60, 80, 0x409),
+		INITHOTSPOT(99, 135, 80, 104, 0x443),
+		INITHOTSPOT(99, 160, 104, 159, 0x417),
+		INITHOTSPOT(17, 56, 134, 159, 0x401),
+		INITHOTSPOT(9, 81, 65, 98, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 216, 109, 147, 0x417),
+		INITHOTSPOT(161, 193, 81, 105, 0x415),
+		INITHOTSPOT(91, 110, 131, 154, 0x401),
+		INITHOTSPOT(31, 66, 128, 147, 0x408),
+		INITHOTSPOT(84, 141, 70, 96, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(67, 85, 72, 98, 0x443),
+		INITHOTSPOT(117, 182, 65, 96, 0x406),
+		INITHOTSPOT(124, 147, 130, 153, 0x401),
+		INITHOTSPOT(56, 89, 124, 146, 0x408),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(92, 106, 120, 130, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 209, 50, 98, 0x417),
+		INITHOTSPOT(157, 209, 98, 159, 0x418),
+		INITHOTSPOT(161, 191, 29, 50, 0x415),
+		INITHOTSPOT(91, 139, 18, 44, 0x406),
+		INITHOTSPOT(95, 128, 137, 151, 0x400),
+		INITHOTSPOT(32, 61, 81, 95, 0x408),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(87, 109, 81, 105, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 214, 18, 46, 0x417),
+		INITHOTSPOT(151, 214, 46, 105, 0x418),
+		INITHOTSPOT(87, 108, 22, 46, 0x401),
+		INITHOTSPOT(58, 43, 141, 57, 0x40B),
+		INITHOTSPOT(24, 62, 18, 37, 0x408),
+		INITHOTSPOT(155, 200, 123, 157, 0x40B),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(92, 131, 77, 97, 0x443),
+		INITHOTSPOT(113, 155, 123, 157, 0x420),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(94, 129, 121, 145, 0x415),
+		INITHOTSPOT(14, 79, 108, 142, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(102, 127, 96, 107, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 125, 62, 104, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(5, 71, 102, 160, 0x406),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(71, 92, 97, 146, 0x409),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(40, 133, 99, 158, 0x443),
+		INITHOTSPOT(133, 188, 94, 145, 0x405),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(104, 122, 124, 148, 0x445),
+		INITHOTSPOT(151, 165, 32, 56, 0x445),
+		INITHOTSPOT(100, 118, 34, 55, 0x19F),
+		INITHOTSPOT(50, 66, 35, 58, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(89, 129, 58, 106, 0x19F)
+	},
+	{
+		INITHOTSPOT(146, 195, 18, 51, 0x418),
+		INITHOTSPOT(87, 130, 21, 45, 0x400),
+		INITHOTSPOT(150, 204, 66, 99, 0x40B),
+		INITHOTSPOT(63, 112, 80, 103, 0x443),
+		INITHOTSPOT(112, 150, 66, 103, 0x443),
+		INITHOTSPOT(63, 183, 103, 159, 0x40C),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(125, 182, 18, 42, 0x406),
+		INITHOTSPOT(122, 148, 80, 105, 0x401),
+		INITHOTSPOT(130, 175, 135, 156, 0x400),
+		INITHOTSPOT(66, 85, 20, 49, 0x407),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(53, 89, 77, 95, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(88, 144, 18, 49, 0x418),
+		INITHOTSPOT(158, 178, 73, 95, 0x402),
+		INITHOTSPOT(16, 69, 18, 43, 0x400),
+		INITHOTSPOT(5, 52, 81, 108, 0x420),
+		INITHOTSPOT(52, 88, 65, 108, 0x420),
+		INITHOTSPOT(5, 134, 108, 159, 0x40C),
+		INITHOTSPOT(135, 179, 124, 159, 0x40D),
+		INITHOTSPOT(88, 134, 65, 108, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(40, 160, 49, 148, 0x442),
+		INITHOTSPOT(5, 39, 49, 159, 0x40B),
+		INITHOTSPOT(210, 226, 75, 116, 0x402),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(135, 177, 68, 111, 0x443),
+		INITHOTSPOT(158, 176, 17, 34, 0x402),
+		INITHOTSPOT(90, 132, 17, 46, 0x40B),
+		INITHOTSPOT(23, 55, 24, 91, 0x420),
+		INITHOTSPOT(4, 55, 27, 124, 0x40C),
+		INITHOTSPOT(55, 113, 17, 124, 0x40C),
+		INITHOTSPOT(113, 154, 65, 124, 0x40C),
+		INITHOTSPOT(154, 227, 81, 160, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(141, 213, 79, 110, 0x410),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(126, 188, 24, 54, 0x403),
+		INITHOTSPOT(5, 101, 18, 90, 0x40E),
+		INITHOTSPOT(5, 65, 90, 159, 0x40E),
+		INITHOTSPOT(65, 98, 213, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(5, 213, 18, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(19, 66, 18, 64, 0x40D),
+		INITHOTSPOT(5, 32, 18, 73, 0x40C),
+		INITHOTSPOT(155, 184, 84, 111, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(134, 197, 18, 59, 0x40F),
+		INITHOTSPOT(189, 227, 120, 159, 0x403),
+		INITHOTSPOT(5, 155, 18, 132, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(85, 132, 18, 60, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(33, 63, 88, 117, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(72, 144, 130, 159, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(90, 156, 60, 130, 0x443),
+		INITHOTSPOT(144, 94, 130, 159, 0x422),
+		INITHOTSPOT(8, 90, 18, 63, 0x40F),
+		INITHOTSPOT(132, 194, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(161, 215, 111, 159, 0x421),
+		INITHOTSPOT(85, 153, 49, 111, 0x443),
+		INITHOTSPOT(104, 131, 134, 159, 0x412),
+		INITHOTSPOT(153, 201, 54, 111, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(5, 104, 128, 159, 0x40E),
+		INITHOTSPOT(5, 161, 54, 159, 0x40E),
+		INITHOTSPOT(201, 227, 49, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 126, 79, 106, 0x443),
+		INITHOTSPOT(163, 212, 56, 108, 0x421),
+		INITHOTSPOT(73, 139, 18, 56, 0x40F),
+		INITHOTSPOT(156, 181, 18, 49, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(129, 194, 121, 156, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(22, 100, 18, 138, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(96, 135, 88, 115, 0x443),
+		INITHOTSPOT(29, 96, 68, 115, 0x410),
+		INITHOTSPOT(28, 80, 17, 68, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(80, 135, 17, 88, 0x422),
+		INITHOTSPOT(135, 204, 17, 158, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(69, 136, 71, 112, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(136, 175, 91, 119, 0x41F),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(131, 185, 18, 91, 0x422),
+		INITHOTSPOT(185, 226, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(67, 131, 18, 71, 0x403),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(91, 133, 52, 112, 0x443),
+		INITHOTSPOT(16, 84, 63, 117, 0x40F),
+		INITHOTSPOT(115, 160, 114, 160, 0x421),
+		INITHOTSPOT(37, 70, 139, 160, 0x412),
+		INITHOTSPOT(128, 170, 36, 51, 0x416),
+		INITHOTSPOT(140, 227, 17, 38, 0x416),
+		INITHOTSPOT(152, 227, 38, 160, 0x414),
+		INITHOTSPOT(51, 91, 118, 159, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(67, 150, 53, 159, 0x445),
+		INITHOTSPOT(150, 226, 19, 159, 0x414),
+		INITHOTSPOT(5, 67, 46, 159, 0x40F),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(59, 146, 77, 135, 0x443),
+		INITHOTSPOT(146, 193, 77, 124, 0x403),
+		INITHOTSPOT(129, 206, 124, 159, 0x410),
+		INITHOTSPOT(94, 124, 36, 63, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(94, 147, 18, 77, 0x40E),
+		INITHOTSPOT(5, 129, 18, 158, 0x40E),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(50, 109, 115, 159, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x413),
+		INITHOTSPOT(50, 135, 46, 159, 0x414),
+		INITHOTSPOT(135, 159, 113, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(93, 135, 78, 141, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 97, 17, 78, 0x421),
+		INITHOTSPOT(39, 93, 78, 123, 0x403),
+		INITHOTSPOT(39, 135, 123, 159, 0x410),
+		INITHOTSPOT(97, 195, 17, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E)
+	},
+	{
+		INITHOTSPOT(15, 66, 104, 141, 0x190),
+		INITHOTSPOT(105, 164, 87, 155, 0x191),
+		INITHOTSPOT(174, 225, 100, 154, 0x192),
+		INITHOTSPOT(81, 132, 37, 78, 0x193),
+		INITHOTSPOT(165, 212, 26, 78, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(84, 150, 79, 114, 0x443),
+		INITHOTSPOT(66, 200, 127, 159, 0x410),
+		INITHOTSPOT(47, 75, 38, 64, 0x412),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(100, 156, 18, 79, 0x421),
+		INITHOTSPOT(150, 200, 72, 132, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(156, 226, 18, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(26, 42, 48, 77, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(112, 134, 77, 84, 0x443),
+		INITHOTSPOT(97, 134, 84, 102, 0x443),
+		INITHOTSPOT(55, 71, 52, 73, 0x41B),
+		INITHOTSPOT(97, 123, 18, 84, 0x404),
+		INITHOTSPOT(84, 97, 61, 92, 0x404),
+		INITHOTSPOT(154, 178, 20, 42, 0x41E),
+		INITHOTSPOT(134, 183, 72, 102, 0x424),
+		INITHOTSPOT(95, 129, 123, 149, 0x41A),
+		INITHOTSPOT(14, 54, 79, 159, 0x414),
+		INITHOTSPOT(66, 86, 73, 82, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 136, 84, 102, 0x443),
+		INITHOTSPOT(104, 116, 101, 122, 0x41B),
+		INITHOTSPOT(113, 134, 122, 130, 0x41B),
+		INITHOTSPOT(78, 97, 96, 110, 0x416),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(98, 136, 84, 102, 0x443),
+		INITHOTSPOT(74, 129, 26, 57, 0x41C),
+		INITHOTSPOT(103, 118, 63, 85, 0x443),
+		INITHOTSPOT(112, 131, 85, 95, 0x443),
+		INITHOTSPOT(78, 99, 58, 70, 0x416),
+		INITHOTSPOT(160, 182, 86, 112, 0x41D),
+		INITHOTSPOT(146, 182, 95, 112, 0x41D),
+		INITHOTSPOT(146, 170, 28, 95, 0x404),
+		INITHOTSPOT(129, 146, 71, 102, 0x404),
+		INITHOTSPOT(59, 98, 84, 160, 0x414),
+		INITHOTSPOT(144, 177, 134, 159, 0x41A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(144, 176, 76, 110, 0x404),
+		INITHOTSPOT(175, 206, 18, 110, 0x404),
+		INITHOTSPOT(167, 226, 84, 159, 0x41D),
+		INITHOTSPOT(4, 45, 18, 48, 0x416),
+		INITHOTSPOT(71, 89, 47, 85, 0x443),
+		INITHOTSPOT(77, 132, 86, 110, 0x443),
+		INITHOTSPOT(4, 67, 18, 39, 0x41C),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(96, 119, 76, 93, 0x443),
+		INITHOTSPOT(82, 120, 125, 153, 0x424),
+		INITHOTSPOT(43, 74, 129, 150, 0x41D),
+		INITHOTSPOT(44, 64, 71, 112, 0x404),
+		INITHOTSPOT(32, 64, 112, 129, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(99, 119, 69, 103, 0x443),
+		INITHOTSPOT(135, 185, 123, 154, 0x424),
+		INITHOTSPOT(112, 135, 129, 138, 0x41D),
+		INITHOTSPOT(92, 135, 138, 154, 0x41D),
+		INITHOTSPOT(53, 70, 107, 129, 0x41B),
+		INITHOTSPOT(63, 81, 129, 138, 0x41B),
+		INITHOTSPOT(156, 177, 76, 91, 0x41E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(74, 124, 38, 133, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(70, 110, 121, 159, 0x441),
+		INITHOTSPOT(92, 112, 33, 59, 0x445),
+		INITHOTSPOT(150, 177, 24, 49, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(129, 149, 43, 60, 0x443),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(130, 182, 17, 46, 0x41C),
+		INITHOTSPOT(158, 168, 49, 69, 0x41B),
+		INITHOTSPOT(164, 183, 69, 77, 0x41B),
+		INITHOTSPOT(105, 166, 71, 160, 0x414),
+		INITHOTSPOT(46, 80, 98, 149, 0x419),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 129, 78, 86, 0x443),
+		INITHOTSPOT(105, 129, 86, 99, 0x443),
+		INITHOTSPOT(34, 84, 134, 159, 0x425),
+		INITHOTSPOT(48, 75, 81, 109, 0x41A),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 141, 76, 103, 0x443),
+		INITHOTSPOT(53, 80, 125, 150, 0x41A),
+		INITHOTSPOT(67, 92, 80, 87, 0x41D),
+		INITHOTSPOT(54, 92, 87, 103, 0x41D),
+		INITHOTSPOT(38, 54, 63, 95, 0x404),
+		INITHOTSPOT(54, 78, 20, 87, 0x404),
+		INITHOTSPOT(113, 131, 26, 43, 0x41E),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(8, 38, 58, 103, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(58, 68, 88, 103, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 133, 81, 120, 0x189),
+		INITHOTSPOT(104, 133, 120, 133, 0x189),
+		INITHOTSPOT(112, 123, 65, 142, 0x189),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(18, 65, 18, 159, 0x414),
+		INITHOTSPOT(65, 143, 75, 159, 0x414),
+		INITHOTSPOT(143, 157, 96, 159, 0x414),
+		INITHOTSPOT(143, 150, 86, 96, 0x414),
+		INITHOTSPOT(99, 120, 38, 60, 0x41A),
+		INITHOTSPOT(65, 112, 58, 75, 0x414)
+	},
+	{
+		INITHOTSPOT(107, 119, 61, 88, 0x445),
+		INITHOTSPOT(91, 110, 95, 136, 0x446),
+		INITHOTSPOT(181, 208, 66, 146, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(100, 129, 74, 100, 0x443),
+		INITHOTSPOT(103, 140, 29, 54, 0x41D),
+		INITHOTSPOT(140, 189, 24, 54, 0x424),
+		INITHOTSPOT(89, 126, 18, 41, 0x404),
+		INITHOTSPOT(46, 89, 18, 41, 0x41B),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(95, 129, 124, 131, 0x425),
+		INITHOTSPOT(95, 139, 131, 159, 0x425),
+		INITHOTSPOT(139, 146, 136, 159, 0x425),
+		INITHOTSPOT(5, 58, 18, 159, 0x414),
+		INITHOTSPOT(58, 122, 111, 159, 0x414),
+		INITHOTSPOT(129, 154, 120, 131, 0x414),
+		INITHOTSPOT(139, 160, 131, 159, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(125, 179, 49, 126, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(159, 173, 17, 32, 0x445),
+		INITHOTSPOT(148, 165, 40, 61, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(39, 59, 35, 69, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(56, 79, 88, 133, 0x445),
+		INITHOTSPOT(103, 122, 81, 136, 0x446),
+		INITHOTSPOT(161, 190, 85, 145, 0x447),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(65, 105, 87, 119, 0x438),
+		INITHOTSPOT(141, 165, 55, 78, 0x40A),
+		INITHOTSPOT(182, 203, 74, 95, 0x414),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(93, 127, 39, 80, 0x40A),
+		INITHOTSPOT(21, 54, 92, 129, 0x41D),
+		INITHOTSPOT(167, 200, 94, 134, 0x422),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(59, 95, 55, 95, 0x40A),
+		INITHOTSPOT(129, 169, 82, 131, 0x41D),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(57, 92, 76, 102, 0x442),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(4, 44, 74, 104, 0x441),
+		INITHOTSPOT(85, 143, 73, 98, 0x448),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(125, 151, 103, 125, 0x42C),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(38, 47, 151, 159, 0x42D),
+		INITHOTSPOT(88, 112, 143, 154, 0x42D),
+		INITHOTSPOT(79, 123, 92, 132, 0x42D),
+		INITHOTSPOT(48, 64, 98, 113, 0x42D),
+		INITHOTSPOT(7, 12, 97, 102, 0x42D),
+		INITHOTSPOT(78, 104, 105, 114, 0x42D),
+		INITHOTSPOT(103, 111, 100, 106, 0x42D),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(13, 48, 82, 112, 0x42D),
+		INITHOTSPOT(45, 54, 61, 75, 0x42D),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(68, 188, 65, 105, 0x441)
+	},
+	{
+		INITHOTSPOT(164, 191, 38, 109, 0x445),
+		INITHOTSPOT(56, 93, 69, 83, 0x444),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(30, 44, 50, 77, 0x198),
+		INITHOTSPOT(30, 44, 113, 140, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 227, 17, 160, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 67, 73, 118, 0x450),
+		INITHOTSPOT(123, 151, 37, 76, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(90, 130, 99, 123, 0x432),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(67, 152, 99, 139, 0x449),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 194, 29, 73, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(110, 123, 82, 130, 0x431),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(104, 121, 60, 86, 0x445),
+		INITHOTSPOT(78, 91, 52, 77, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(151, 190, 31, 105, 0x445),
+		INITHOTSPOT(37, 65, 23, 105, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(144, 223, 48, 105, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(11, 59, 80, 141, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(160, 208, 80, 140, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(74, 91, 78, 105, 0x42E),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(181, 217, 49, 128, 0x445),
+		INITHOTSPOT(17, 50, 28, 131, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(27, 199, 79, 159, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(191, 222, 57, 84, 0x442),
+		INITHOTSPOT(103, 119, 130, 141, 0x44A),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(167, 194, 115, 130, 0x433),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(73, 104, 109, 138, 0x434),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(85, 133, 47, 93, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(39, 67, 73, 118, 0x445),
+		INITHOTSPOT(123, 151, 37, 76, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(146, 177, 61, 114, 0x445),
+		INITHOTSPOT(14, 43, 69, 131, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(78, 145, 55, 144, 0x456),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(133, 194, 18, 72, 0x413),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(159, 197, 38, 71, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(157, 198, 42, 80, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(197, 217, 84, 128, 0x453),
+		INITHOTSPOT(26, 42, 48, 77, 0x404),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(84, 105, 77, 108, 0x435),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 197, 77, 119, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 277, 57, 73, 0x441),
+		INITHOTSPOT(47, 119, 107, 160, 0x448),
+		INITHOTSPOT(73, 98, 43, 90, 0x44B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(176, 277, 57, 73, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x448),
+		INITHOTSPOT(73, 98, 43, 90, 0x44B),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(47, 119, 107, 160, 0x451),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(92, 124, 94, 137, 0x441),
+		INITHOTSPOT(67, 81, 71, 160, 0x448),
+		INITHOTSPOT(15, 48, 19, 160, 0x44B),
+		INITHOTSPOT(211, 227, 17, 160, 0x44C),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(181, 205, 50, 96, 0x441),
+		INITHOTSPOT(107, 166, 123, 160, 0x448),
+		INITHOTSPOT(4, 25, 71, 130, 0x44B),
+		INITHOTSPOT(210, 227, 60, 105, 0x44C),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(95, 124, 70, 106, 0x439),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(128, 191, 43, 129, 0x441),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(17, 51, 50, 126, 0x445),
+		INITHOTSPOT(179, 211, 30, 129, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(17, 51, 50, 126, 0x445),
+		INITHOTSPOT(179, 211, 30, 129, 0x452),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(117, 139, 73, 135, 0x430),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(20, 37, 88, 132, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(20, 37, 88, 132, 0x445),
+		INITHOTSPOT(101, 125, 99, 141, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(4, 41, 92, 160, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(61, 78, 69, 86, 0x458),
+		INITHOTSPOT(136, 142, 17, 130, 0x44D),
+		INITHOTSPOT(167, 175, 17, 139, 0x44E),
+		INITHOTSPOT(181, 194, 58, 136, 0x445),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+	},
+	{
+		INITHOTSPOT(164, 192, 71, 130, 0x445),
+		INITHOTSPOT(105, 141, 70, 131, 0x446),
+		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		INITHOTSPOT(0, 0, 0, 0, 0x19A),
+		INITHOTSPOT(0, 0, 0, 0, 0x19B),
+		INITHOTSPOT(0, 0, 0, 0, 0x19C),
+		INITHOTSPOT(0, 0, 0, 0, 0x19D),
+		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		INITHOTSPOT(0, 0, 0, 0, 0x19F)
 	}
 };
 
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index e7b57a4dd4..609440c44e 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1461,7 +1461,7 @@ void KingdomGame::cursorType() {
 					return;
 				} else
 					_mouseValue = tmpVal;
-			} else if (_cursorPos.x >= mouseMapMS[var2 + i]._minX && _cursorPos.x < mouseMapMS[var2 + i]._maxX && _cursorPos.y >= mouseMapMS[var2 + i]._minY && _cursorPos.y < mouseMapMS[var2 + i]._maxY) {
+			} else if (mouseMapMS[var2 + i]._area.contains(_cursorPos)) {
 				_mouseValue = mouseMapMS[var2 + i]._mouseValue;
 				break;
 			}
@@ -1585,27 +1585,23 @@ void KingdomGame::cursorTypeExit() {
 int KingdomGame::checkMouseMapAS() {
 	if (isDemo()) {
 		for (int i = 0; i < 16; i++) {
-			if (_cursorPos.x >= _mouseMapASDemo[_logic->_currMap][i]._minX && _cursorPos.x < _mouseMapASDemo[_logic->_currMap][i]._maxX
-				&& _cursorPos.y >= _mouseMapASDemo[_logic->_currMap][i]._minY && _cursorPos.y < _mouseMapASDemo[_logic->_currMap][i]._maxY)
+			if (_mouseMapASDemo[_logic->_currMap][i]._area.contains(_cursorPos))
 				return _mouseMapASDemo[_logic->_currMap][i]._mouseValue;
 		}
 		if (_logic->_currMap == 11) {
 			for (int i = 0; i < 16; i++) {
-				if (_cursorPos.x >= _mouseMapASDemo[12][i]._minX && _cursorPos.x < _mouseMapASDemo[12][i]._maxX
-					&& _cursorPos.y >= _mouseMapASDemo[12][i]._minY && _cursorPos.y < _mouseMapASDemo[12][i]._maxY)
+				if (_mouseMapASDemo[12][i]._area.contains(_cursorPos))
 					return _mouseMapASDemo[12][i]._mouseValue;
 			}
 		}
 	} else {
 		for (int i = 0; i < 16; i++) {
-			if (_cursorPos.x >= _mouseMapASFull[_logic->_currMap][i]._minX && _cursorPos.x < _mouseMapASFull[_logic->_currMap][i]._maxX
-				&& _cursorPos.y >= _mouseMapASFull[_logic->_currMap][i]._minY && _cursorPos.y < _mouseMapASFull[_logic->_currMap][i]._maxY)
+			if (_mouseMapASFull[_logic->_currMap][i]._area.contains(_cursorPos))
 				return _mouseMapASFull[_logic->_currMap][i]._mouseValue;
 		}
 		if (_logic->_currMap == 11) {
 			for (int i = 0; i < 16; i++) {
-				if (_cursorPos.x >= _mouseMapASFull[12][i]._minX && _cursorPos.x < _mouseMapASFull[12][i]._maxX
-					&& _cursorPos.y >= _mouseMapASFull[12][i]._minY && _cursorPos.y < _mouseMapASFull[12][i]._maxY)
+				if (_mouseMapASFull[12][i]._area.contains(_cursorPos))
 					return _mouseMapASFull[12][i]._mouseValue;
 			}
 		}
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index a1bc101688..9b5e9f84cd 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -65,10 +65,7 @@ namespace Kingdom {
 	};
 
 	struct HotSpot {
-		int16 _minX;
-		int16 _maxX;
-		int16 _minY;
-		int16 _maxY;
+		Common::Rect _area;
 		int16 _mouseValue;
 	};
 


Commit: 4a370dd0a048bf04ea534472c0e35fd160ce484f
    https://github.com/scummvm/scummvm/commit/4a370dd0a048bf04ea534472c0e35fd160ce484f
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Introduce DUMMYHOTSPOT, disable some broken hotspots (bad coordinates)

Changed paths:
    engines/kingdom/constants.cpp


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 55592f6f70..1234e39c2b 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -959,6 +959,7 @@ int _hgaSeq[4][2] = {
 };
 
 #define INITHOTSPOT(x1, x2, y1, y2, id)  { Common::Rect(x1, y1, x2, y2), id }
+#define DUMMYHOTSPOT(id) { Common::Rect(0, 0, 0, 0), id }
 HotSpot _mouseMapMSFull[51] = {
 	INITHOTSPOT( 11,  35, 178, 197, 0x181),
 	INITHOTSPOT( 38,  62, 178, 197, 0x182),
@@ -972,10 +973,10 @@ HotSpot _mouseMapMSFull[51] = {
 	INITHOTSPOT(243, 267, 141, 160, 0x18C),
 	INITHOTSPOT(290, 314, 143, 162, 0x18D),
 	INITHOTSPOT(272, 296, 170, 189, 0x457),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
 	INITHOTSPOT( 74,  92,  60,  75, 0x417),
 	INITHOTSPOT( 74,  89,  75,  93, 0x418),
 	INITHOTSPOT( 92, 105,  96, 111, 0x402),
@@ -995,22 +996,22 @@ HotSpot _mouseMapMSFull[51] = {
 	INITHOTSPOT(131, 142, 138, 148, 0x412),
 	INITHOTSPOT(159, 171, 168, 175, 0x410),
 	INITHOTSPOT(157, 168, 110, 126, 0x419),
-	INITHOTSPOT(  0,   0,   0,   0, 0x411),
+	DUMMYHOTSPOT(0x411),
 	INITHOTSPOT(106, 128, 122, 154, 0x40E),
 	INITHOTSPOT(171, 283, 156, 170, 0x422),
 	INITHOTSPOT(147, 171, 152, 163, 0x403),
-	INITHOTSPOT(  0,   0,   0,   0, 0x413),
+	DUMMYHOTSPOT(0x413),
 	INITHOTSPOT(186, 203,  74,  86, 0x41C),
 	INITHOTSPOT(195, 207,  89, 106, 0x41B),
 	INITHOTSPOT(232, 244,  81,  89, 0x41E),
 	INITHOTSPOT(215, 222,  76,  95, 0x404),
 	INITHOTSPOT(214, 223, 100, 110, 0x41D),
 	INITHOTSPOT(182, 196,  88,  97, 0x416),
-	INITHOTSPOT(  0,   0,   0,   0, 0x423),
+	DUMMYHOTSPOT(0x423),
 	INITHOTSPOT(225, 241, 100, 110, 0x424),
 	INITHOTSPOT(209, 224, 137, 155, 0x425),
 	INITHOTSPOT(211, 221, 115, 126, 0x41A),
-	INITHOTSPOT(  0,   0,   0,   0,     0)
+	DUMMYHOTSPOT(0)
 };
 
 HotSpot _mouseMapMSDemo[51] = {
@@ -1026,10 +1027,10 @@ HotSpot _mouseMapMSDemo[51] = {
 	INITHOTSPOT(243, 267, 141, 160, 0x18C),
 	INITHOTSPOT(290, 314, 143, 162, 0x18D),
 	INITHOTSPOT(272, 296, 170, 189, 0x457),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
-	INITHOTSPOT(  0,   0,   0,   0,     0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
+	DUMMYHOTSPOT(0),
 	INITHOTSPOT( 74,  92,  60,  75, 0x417),
 	INITHOTSPOT( 74,  89,  75,  93, 0x418),
 	INITHOTSPOT( 92, 105,  96, 111, 0x402),
@@ -1043,28 +1044,28 @@ HotSpot _mouseMapMSDemo[51] = {
 	INITHOTSPOT( 75,  85,  33,  43, 0x40A),
 	INITHOTSPOT( 75,  90,  99, 112, 0x40B),
 	INITHOTSPOT( 45, 104, 113, 131, 0x40C),
-	INITHOTSPOT(  0,   0,   0,   0, 0x40D),
-	INITHOTSPOT(  0,   0,   0,   0, 0x421),
-	INITHOTSPOT(  0,   0,   0,   0, 0x40F),
-	INITHOTSPOT(  0,   0,   0,   0, 0x412),
-	INITHOTSPOT(  0,   0,   0,   0, 0x410),
-	INITHOTSPOT(  0,   0,   0,   0, 0x419),
-	INITHOTSPOT(  0,   0,   0,   0, 0x411),
-	INITHOTSPOT(  0,   0,   0,   0, 0x40E),
-	INITHOTSPOT(  0,   0,   0,   0, 0x422),
-	INITHOTSPOT(  0,   0,   0,   0, 0x403),
-	INITHOTSPOT(  0,   0,   0,   0, 0x413),
-	INITHOTSPOT(  0,   0,   0,   0, 0x41C),
-	INITHOTSPOT(  0,   0,   0,   0, 0x41B),
-	INITHOTSPOT(  0,   0,   0,   0, 0x41E),
-	INITHOTSPOT(  0,   0,   0,   0, 0x404),
-	INITHOTSPOT(  0,   0,   0,   0, 0x41D),
-	INITHOTSPOT(  0,   0,   0,   0, 0x416),
-	INITHOTSPOT(  0,   0,   0,   0, 0x423),
-	INITHOTSPOT(  0,   0,   0,   0, 0x424),
-	INITHOTSPOT(  0,   0,   0,   0, 0x425),
-	INITHOTSPOT(  0,   0,   0,   0, 0x41A),
-	INITHOTSPOT(  0,   0,   0,   0,     0)
+	DUMMYHOTSPOT(0x40D),
+	DUMMYHOTSPOT(0x421),
+	DUMMYHOTSPOT(0x40F),
+	DUMMYHOTSPOT(0x412),
+	DUMMYHOTSPOT(0x410),
+	DUMMYHOTSPOT(0x419),
+	DUMMYHOTSPOT(0x411),
+	DUMMYHOTSPOT(0x40E),
+	DUMMYHOTSPOT(0x422),
+	DUMMYHOTSPOT(0x403),
+	DUMMYHOTSPOT(0x413),
+	DUMMYHOTSPOT(0x41C),
+	DUMMYHOTSPOT(0x41B),
+	DUMMYHOTSPOT(0x41E),
+	DUMMYHOTSPOT(0x404),
+	DUMMYHOTSPOT(0x41D),
+	DUMMYHOTSPOT(0x416),
+	DUMMYHOTSPOT(0x423),
+	DUMMYHOTSPOT(0x424),
+	DUMMYHOTSPOT(0x425),
+	DUMMYHOTSPOT(0x41A),
+	DUMMYHOTSPOT(0)
 };
 
 int _cursorTable[96] = {
@@ -1089,15 +1090,15 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(121, 216, 84, 98, 0x244),
 		INITHOTSPOT( 15, 110, 66, 80, 0x245),
 		INITHOTSPOT( 15, 110, 84, 98, 0x246),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(119, 197,  78,  84, 0x190),
@@ -1119,39 +1120,39 @@ HotSpot _mouseMapASFull[128][16] = {
 	},
 	{
 		INITHOTSPOT(4, 227, 17, 160, 0x260),
-		INITHOTSPOT(0, 0, 0, 0, 0x261),
-		INITHOTSPOT(0, 0, 0, 0, 0x262),
-		INITHOTSPOT(0, 0, 0, 0, 0x263),
-		INITHOTSPOT(0, 0, 0, 0, 0x264),
-		INITHOTSPOT(0, 0, 0, 0, 0x265),
-		INITHOTSPOT(0, 0, 0, 0, 0x266),
-		INITHOTSPOT(0, 0, 0, 0, 0x267),
-		INITHOTSPOT(0, 0, 0, 0, 0x268),
-		INITHOTSPOT(0, 0, 0, 0, 0x269),
-		INITHOTSPOT(0, 0, 0, 0, 0x26A),
-		INITHOTSPOT(0, 0, 0, 0, 0x26B),
-		INITHOTSPOT(0, 0, 0, 0, 0x26C),
-		INITHOTSPOT(0, 0, 0, 0, 0x26D),
-		INITHOTSPOT(0, 0, 0, 0, 0x26E),
-		INITHOTSPOT(0, 0, 0, 0, 0x26F)
+		DUMMYHOTSPOT(0x261),
+		DUMMYHOTSPOT(0x262),
+		DUMMYHOTSPOT(0x263),
+		DUMMYHOTSPOT(0x264),
+		DUMMYHOTSPOT(0x265),
+		DUMMYHOTSPOT(0x266),
+		DUMMYHOTSPOT(0x267),
+		DUMMYHOTSPOT(0x268),
+		DUMMYHOTSPOT(0x269),
+		DUMMYHOTSPOT(0x26A),
+		DUMMYHOTSPOT(0x26B),
+		DUMMYHOTSPOT(0x26C),
+		DUMMYHOTSPOT(0x26D),
+		DUMMYHOTSPOT(0x26E),
+		DUMMYHOTSPOT(0x26F)
 	},
 	{
 		INITHOTSPOT(17, 120, 122, 132, 0x190),
 		INITHOTSPOT(17, 120, 140, 150, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 69, 242, 114, 129, 0x190),
@@ -1160,124 +1161,124 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT( 69, 131, 168, 183, 0x193),
 		INITHOTSPOT(181, 242, 168, 183, 0x194),
 		INITHOTSPOT(133, 179, 168, 183, 0x24A),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 73, 105, 56,  80, 0x428),
 		INITHOTSPOT( 89, 131, 88, 110, 0x42A),
 		INITHOTSPOT(124, 152, 56,  81, 0x42B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 61,  91, 61,  87, 0x417),
 		INITHOTSPOT( 92, 122, 84, 110, 0x40A),
 		INITHOTSPOT(123, 154, 61,  87, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 47,  80, 48, 116, 0x445),
 		INITHOTSPOT(149, 182, 51, 116, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(62, 88, 76, 141, 0x42F),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(140, 170, 102, 127, 0x428),
@@ -1300,146 +1301,146 @@ HotSpot _mouseMapASFull[128][16] = {
 	{
 		INITHOTSPOT(84, 113, 30,  53, 0x438),
 		INITHOTSPOT(21,  42, 78, 105, 0x439),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(4, 227, 17, 160, 0x241)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(86, 112, 27, 85, 0x453),
 		INITHOTSPOT(85, 127, 29, 90, 0x453),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(128, 149, 55, 114, 0x445),
 		INITHOTSPOT(180, 215, 36, 120, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT( 69,  86, 86, 103, 0x437),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(128, 149, 55, 114, 0x445),
 		INITHOTSPOT(180, 215, 36, 120, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(53, 131, 41, 159, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(204, 227, 100, 160, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 94, 106, 83, 104, 0x443),
 		INITHOTSPOT(107, 127, 83, 104, 0x405),
 		INITHOTSPOT( 75,  94, 98, 133, 0x409),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(67, 135, 22, 68, 0x407),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(88, 156, 102, 158, 0x418),
@@ -1448,34 +1449,34 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(19,  45,  76, 102, 0x401),
 		INITHOTSPOT(23,  68, 134, 157, 0x400),
 		INITHOTSPOT(96, 156,  47, 102, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(68, 131, 117, 158, 0x418),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(103, 158,  18,  40, 0x417),
@@ -1486,14 +1487,14 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT( 95, 151, 124, 159, 0x40B),
 		INITHOTSPOT( 53,  94, 124, 159, 0x420),
 		INITHOTSPOT( 89, 158,  40, 103, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT( 33,  99,  18,  53, 0x418),
@@ -1503,15 +1504,15 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT( 82, 123, 128, 159, 0x40D),
 		INITHOTSPOT( 96, 120,  73,  96, 0x443),
 		INITHOTSPOT(123, 184, 112, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(113, 125,  43,  60, 0x40A),
@@ -1520,16 +1521,16 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT( 99, 160, 104, 159, 0x417),
 		INITHOTSPOT( 17,  56, 134, 159, 0x401),
 		INITHOTSPOT(  9,  81,  65,  98, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 216, 109, 147, 0x417),
@@ -1537,53 +1538,53 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT( 91, 110, 131, 154, 0x401),
 		INITHOTSPOT( 31,  66, 128, 147, 0x408),
 		INITHOTSPOT( 84, 141,  70,  96, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(67, 85, 72, 98, 0x443),
 		INITHOTSPOT(117, 182, 65, 96, 0x406),
 		INITHOTSPOT(124, 147, 130, 153, 0x401),
 		INITHOTSPOT(56, 89, 124, 146, 0x408),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(92, 106, 120, 130, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 209, 50, 98, 0x417),
@@ -1592,123 +1593,123 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(91, 139, 18, 44, 0x406),
 		INITHOTSPOT(95, 128, 137, 151, 0x400),
 		INITHOTSPOT(32, 61, 81, 95, 0x408),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(87, 109, 81, 105, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 214, 18, 46, 0x417),
 		INITHOTSPOT(151, 214, 46, 105, 0x418),
 		INITHOTSPOT(87, 108, 22, 46, 0x401),
-		INITHOTSPOT(58, 43, 141, 57, 0x40B),
+		DUMMYHOTSPOT(0x40B), // INITHOTSPOT(58, 43, 141, 57, 0x40B), <== Invalid coordinates
 		INITHOTSPOT(24, 62, 18, 37, 0x408),
 		INITHOTSPOT(155, 200, 123, 157, 0x40B),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(92, 131, 77, 97, 0x443),
 		INITHOTSPOT(113, 155, 123, 157, 0x420),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(94, 129, 121, 145, 0x415),
 		INITHOTSPOT(14, 79, 108, 142, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(102, 127, 96, 107, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 125, 62, 104, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(5, 71, 102, 160, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(71, 92, 97, 146, 0x409),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(40, 133, 99, 158, 0x443),
 		INITHOTSPOT(133, 188, 94, 145, 0x405),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(104, 122, 124, 148, 0x445),
 		INITHOTSPOT(151, 165, 32, 56, 0x445),
 		INITHOTSPOT(100, 118, 34, 55, 0x19F),
 		INITHOTSPOT(50, 66, 35, 58, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(89, 129, 58, 106, 0x19F)
 	},
 	{
@@ -1718,34 +1719,34 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(63, 112, 80, 103, 0x443),
 		INITHOTSPOT(112, 150, 66, 103, 0x443),
 		INITHOTSPOT(63, 183, 103, 159, 0x40C),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(125, 182, 18, 42, 0x406),
 		INITHOTSPOT(122, 148, 80, 105, 0x401),
 		INITHOTSPOT(130, 175, 135, 156, 0x400),
 		INITHOTSPOT(66, 85, 20, 49, 0x407),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(53, 89, 77, 95, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(88, 144, 18, 49, 0x418),
@@ -1756,32 +1757,32 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(5, 134, 108, 159, 0x40C),
 		INITHOTSPOT(135, 179, 124, 159, 0x40D),
 		INITHOTSPOT(88, 134, 65, 108, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(40, 160, 49, 148, 0x442),
 		INITHOTSPOT(5, 39, 49, 159, 0x40B),
 		INITHOTSPOT(210, 226, 75, 116, 0x402),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(135, 177, 68, 111, 0x443),
@@ -1792,140 +1793,140 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(55, 113, 17, 124, 0x40C),
 		INITHOTSPOT(113, 154, 65, 124, 0x40C),
 		INITHOTSPOT(154, 227, 81, 160, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(141, 213, 79, 110, 0x410),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(126, 188, 24, 54, 0x403),
 		INITHOTSPOT(5, 101, 18, 90, 0x40E),
 		INITHOTSPOT(5, 65, 90, 159, 0x40E),
-		INITHOTSPOT(65, 98, 213, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x40E), // INITHOTSPOT(65, 98, 213, 159, 0x40E), <=== Invalid coordinates
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(5, 213, 18, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(19, 66, 18, 64, 0x40D),
 		INITHOTSPOT(5, 32, 18, 73, 0x40C),
 		INITHOTSPOT(155, 184, 84, 111, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(134, 197, 18, 59, 0x40F),
 		INITHOTSPOT(189, 227, 120, 159, 0x403),
 		INITHOTSPOT(5, 155, 18, 132, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(85, 132, 18, 60, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(33, 63, 88, 117, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(72, 144, 130, 159, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		DUMMYHOTSPOT(0x195),
 		INITHOTSPOT(90, 156, 60, 130, 0x443),
-		INITHOTSPOT(144, 94, 130, 159, 0x422),
+		DUMMYHOTSPOT(0x422), // INITHOTSPOT(144, 94, 130, 159, 0x422), <=== Invalid coordinates
 		INITHOTSPOT(8, 90, 18, 63, 0x40F),
 		INITHOTSPOT(132, 194, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 215, 111, 159, 0x421),
 		INITHOTSPOT(85, 153, 49, 111, 0x443),
 		INITHOTSPOT(104, 131, 134, 159, 0x412),
 		INITHOTSPOT(153, 201, 54, 111, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(5, 104, 128, 159, 0x40E),
 		INITHOTSPOT(5, 161, 54, 159, 0x40E),
 		INITHOTSPOT(201, 227, 49, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 126, 79, 106, 0x443),
 		INITHOTSPOT(163, 212, 56, 108, 0x421),
 		INITHOTSPOT(73, 139, 18, 56, 0x40F),
 		INITHOTSPOT(156, 181, 18, 49, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(129, 194, 121, 156, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(22, 100, 18, 138, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(96, 135, 88, 115, 0x443),
 		INITHOTSPOT(29, 96, 68, 115, 0x410),
 		INITHOTSPOT(28, 80, 17, 68, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(80, 135, 17, 88, 0x422),
 		INITHOTSPOT(135, 204, 17, 158, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(69, 136, 71, 112, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(136, 175, 91, 119, 0x41F),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(131, 185, 18, 91, 0x422),
 		INITHOTSPOT(185, 226, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(67, 131, 18, 71, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(91, 133, 52, 112, 0x443),
@@ -1936,104 +1937,104 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(140, 227, 17, 38, 0x416),
 		INITHOTSPOT(152, 227, 38, 160, 0x414),
 		INITHOTSPOT(51, 91, 118, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(67, 150, 53, 159, 0x445),
 		INITHOTSPOT(150, 226, 19, 159, 0x414),
 		INITHOTSPOT(5, 67, 46, 159, 0x40F),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(59, 146, 77, 135, 0x443),
 		INITHOTSPOT(146, 193, 77, 124, 0x403),
 		INITHOTSPOT(129, 206, 124, 159, 0x410),
 		INITHOTSPOT(94, 124, 36, 63, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		DUMMYHOTSPOT(0x195),
 		INITHOTSPOT(94, 147, 18, 77, 0x40E),
 		INITHOTSPOT(5, 129, 18, 158, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(50, 109, 115, 159, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x413),
+		DUMMYHOTSPOT(0x413),
 		INITHOTSPOT(50, 135, 46, 159, 0x414),
 		INITHOTSPOT(135, 159, 113, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(93, 135, 78, 141, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 97, 17, 78, 0x421),
 		INITHOTSPOT(39, 93, 78, 123, 0x403),
 		INITHOTSPOT(39, 135, 123, 159, 0x410),
 		INITHOTSPOT(97, 195, 17, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E)
 	},
 	{
 		INITHOTSPOT(15, 66, 104, 141, 0x190),
@@ -2041,53 +2042,53 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(174, 225, 100, 154, 0x192),
 		INITHOTSPOT(81, 132, 37, 78, 0x193),
 		INITHOTSPOT(165, 212, 26, 78, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(84, 150, 79, 114, 0x443),
 		INITHOTSPOT(66, 200, 127, 159, 0x410),
 		INITHOTSPOT(47, 75, 38, 64, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(100, 156, 18, 79, 0x421),
 		INITHOTSPOT(150, 200, 72, 132, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(156, 226, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(26, 42, 48, 77, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(112, 134, 77, 84, 0x443),
@@ -2100,30 +2101,30 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(95, 129, 123, 149, 0x41A),
 		INITHOTSPOT(14, 54, 79, 159, 0x414),
 		INITHOTSPOT(66, 86, 73, 82, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 136, 84, 102, 0x443),
 		INITHOTSPOT(104, 116, 101, 122, 0x41B),
 		INITHOTSPOT(113, 134, 122, 130, 0x41B),
 		INITHOTSPOT(78, 97, 96, 110, 0x416),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 136, 84, 102, 0x443),
@@ -2137,14 +2138,14 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(129, 146, 71, 102, 0x404),
 		INITHOTSPOT(59, 98, 84, 160, 0x414),
 		INITHOTSPOT(144, 177, 134, 159, 0x41A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(144, 176, 76, 110, 0x404),
 		INITHOTSPOT(175, 206, 18, 110, 0x404),
 		INITHOTSPOT(167, 226, 84, 159, 0x41D),
@@ -2152,14 +2153,14 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(71, 89, 47, 85, 0x443),
 		INITHOTSPOT(77, 132, 86, 110, 0x443),
 		INITHOTSPOT(4, 67, 18, 39, 0x41C),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(96, 119, 76, 93, 0x443),
@@ -2167,35 +2168,35 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(43, 74, 129, 150, 0x41D),
 		INITHOTSPOT(44, 64, 71, 112, 0x404),
 		INITHOTSPOT(32, 64, 112, 129, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x41B),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(99, 119, 69, 103, 0x443),
@@ -2205,87 +2206,87 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(53, 70, 107, 129, 0x41B),
 		INITHOTSPOT(63, 81, 129, 138, 0x41B),
 		INITHOTSPOT(156, 177, 76, 91, 0x41E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(74, 124, 38, 133, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(70, 110, 121, 159, 0x441),
 		INITHOTSPOT(92, 112, 33, 59, 0x445),
 		INITHOTSPOT(150, 177, 24, 49, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(129, 149, 43, 60, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(130, 182, 17, 46, 0x41C),
 		INITHOTSPOT(158, 168, 49, 69, 0x41B),
 		INITHOTSPOT(164, 183, 69, 77, 0x41B),
 		INITHOTSPOT(105, 166, 71, 160, 0x414),
 		INITHOTSPOT(46, 80, 98, 149, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 129, 78, 86, 0x443),
 		INITHOTSPOT(105, 129, 86, 99, 0x443),
 		INITHOTSPOT(34, 84, 134, 159, 0x425),
 		INITHOTSPOT(48, 75, 81, 109, 0x41A),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 141, 76, 103, 0x443),
@@ -2295,45 +2296,45 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(38, 54, 63, 95, 0x404),
 		INITHOTSPOT(54, 78, 20, 87, 0x404),
 		INITHOTSPOT(113, 131, 26, 43, 0x41E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(8, 38, 58, 103, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(58, 68, 88, 103, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 133, 81, 120, 0x189),
 		INITHOTSPOT(104, 133, 120, 133, 0x189),
 		INITHOTSPOT(112, 123, 65, 142, 0x189),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(18, 65, 18, 159, 0x414),
 		INITHOTSPOT(65, 143, 75, 159, 0x414),
 		INITHOTSPOT(143, 157, 96, 159, 0x414),
@@ -2345,19 +2346,19 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(107, 119, 61, 88, 0x445),
 		INITHOTSPOT(91, 110, 95, 136, 0x446),
 		INITHOTSPOT(181, 208, 66, 146, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(100, 129, 74, 100, 0x443),
@@ -2365,8 +2366,8 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(140, 189, 24, 54, 0x424),
 		INITHOTSPOT(89, 126, 18, 41, 0x404),
 		INITHOTSPOT(46, 89, 18, 41, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(95, 129, 124, 131, 0x425),
 		INITHOTSPOT(95, 139, 131, 159, 0x425),
 		INITHOTSPOT(139, 146, 136, 159, 0x425),
@@ -2374,209 +2375,209 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(58, 122, 111, 159, 0x414),
 		INITHOTSPOT(129, 154, 120, 131, 0x414),
 		INITHOTSPOT(139, 160, 131, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(125, 179, 49, 126, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(159, 173, 17, 32, 0x445),
 		INITHOTSPOT(148, 165, 40, 61, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(39, 59, 35, 69, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(56, 79, 88, 133, 0x445),
 		INITHOTSPOT(103, 122, 81, 136, 0x446),
 		INITHOTSPOT(161, 190, 85, 145, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(65, 105, 87, 119, 0x438),
 		INITHOTSPOT(141, 165, 55, 78, 0x40A),
 		INITHOTSPOT(182, 203, 74, 95, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(93, 127, 39, 80, 0x40A),
 		INITHOTSPOT(21, 54, 92, 129, 0x41D),
 		INITHOTSPOT(167, 200, 94, 134, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(59, 95, 55, 95, 0x40A),
 		INITHOTSPOT(129, 169, 82, 131, 0x41D),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(57, 92, 76, 102, 0x442),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(4, 44, 74, 104, 0x441),
 		INITHOTSPOT(85, 143, 73, 98, 0x448),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(125, 151, 103, 125, 0x42C),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(38, 47, 151, 159, 0x42D),
 		INITHOTSPOT(88, 112, 143, 154, 0x42D),
 		INITHOTSPOT(79, 123, 92, 132, 0x42D),
@@ -2584,806 +2585,806 @@ HotSpot _mouseMapASFull[128][16] = {
 		INITHOTSPOT(7, 12, 97, 102, 0x42D),
 		INITHOTSPOT(78, 104, 105, 114, 0x42D),
 		INITHOTSPOT(103, 111, 100, 106, 0x42D),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(13, 48, 82, 112, 0x42D),
 		INITHOTSPOT(45, 54, 61, 75, 0x42D),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(68, 188, 65, 105, 0x441)
 	},
 	{
 		INITHOTSPOT(164, 191, 38, 109, 0x445),
 		INITHOTSPOT(56, 93, 69, 83, 0x444),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(30, 44, 50, 77, 0x198),
 		INITHOTSPOT(30, 44, 113, 140, 0x199),
 		INITHOTSPOT(308, 319, 179, 191, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(4, 227, 17, 160, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 67, 73, 118, 0x450),
 		INITHOTSPOT(123, 151, 37, 76, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(90, 130, 99, 123, 0x432),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(67, 152, 99, 139, 0x449),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 194, 29, 73, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(110, 123, 82, 130, 0x431),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(104, 121, 60, 86, 0x445),
 		INITHOTSPOT(78, 91, 52, 77, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(151, 190, 31, 105, 0x445),
 		INITHOTSPOT(37, 65, 23, 105, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(144, 223, 48, 105, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(11, 59, 80, 141, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(160, 208, 80, 140, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(74, 91, 78, 105, 0x42E),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(181, 217, 49, 128, 0x445),
 		INITHOTSPOT(17, 50, 28, 131, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(27, 199, 79, 159, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(191, 222, 57, 84, 0x442),
 		INITHOTSPOT(103, 119, 130, 141, 0x44A),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(167, 194, 115, 130, 0x433),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(73, 104, 109, 138, 0x434),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(85, 133, 47, 93, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 67, 73, 118, 0x445),
 		INITHOTSPOT(123, 151, 37, 76, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(146, 177, 61, 114, 0x445),
 		INITHOTSPOT(14, 43, 69, 131, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(78, 145, 55, 144, 0x456),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(133, 194, 18, 72, 0x413),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(159, 197, 38, 71, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 198, 42, 80, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(197, 217, 84, 128, 0x453),
 		INITHOTSPOT(26, 42, 48, 77, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(84, 105, 77, 108, 0x435),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 197, 77, 119, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 277, 57, 73, 0x441),
 		INITHOTSPOT(47, 119, 107, 160, 0x448),
 		INITHOTSPOT(73, 98, 43, 90, 0x44B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 277, 57, 73, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x448),
+		DUMMYHOTSPOT(0x448),
 		INITHOTSPOT(73, 98, 43, 90, 0x44B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(47, 119, 107, 160, 0x451),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 124, 94, 137, 0x441),
 		INITHOTSPOT(67, 81, 71, 160, 0x448),
 		INITHOTSPOT(15, 48, 19, 160, 0x44B),
 		INITHOTSPOT(211, 227, 17, 160, 0x44C),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(181, 205, 50, 96, 0x441),
 		INITHOTSPOT(107, 166, 123, 160, 0x448),
 		INITHOTSPOT(4, 25, 71, 130, 0x44B),
 		INITHOTSPOT(210, 227, 60, 105, 0x44C),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 124, 70, 106, 0x439),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(128, 191, 43, 129, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(17, 51, 50, 126, 0x445),
 		INITHOTSPOT(179, 211, 30, 129, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(17, 51, 50, 126, 0x445),
 		INITHOTSPOT(179, 211, 30, 129, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(117, 139, 73, 135, 0x430),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(20, 37, 88, 132, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(20, 37, 88, 132, 0x445),
 		INITHOTSPOT(101, 125, 99, 141, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(4, 41, 92, 160, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(61, 78, 69, 86, 0x458),
 		INITHOTSPOT(136, 142, 17, 130, 0x44D),
 		INITHOTSPOT(167, 175, 17, 139, 0x44E),
 		INITHOTSPOT(181, 194, 58, 136, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(164, 192, 71, 130, 0x445),
 		INITHOTSPOT(105, 141, 70, 131, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	}
 };
 
@@ -3396,15 +3397,15 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(121, 216, 84, 98, 0x244),
 		INITHOTSPOT(15, 110, 66, 80, 0x245),
 		INITHOTSPOT(15, 110, 84, 98, 0x246),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(119, 197, 78, 84, 0x190),
@@ -3426,165 +3427,165 @@ HotSpot _mouseMapASDemo[128][16] = {
 	},
 	{
 		INITHOTSPOT(4, 227, 17, 160, 0x260),
-		INITHOTSPOT(0, 0, 0, 0, 0x261),
-		INITHOTSPOT(0, 0, 0, 0, 0x262),
-		INITHOTSPOT(0, 0, 0, 0, 0x263),
-		INITHOTSPOT(0, 0, 0, 0, 0x264),
-		INITHOTSPOT(0, 0, 0, 0, 0x265),
-		INITHOTSPOT(0, 0, 0, 0, 0x266),
-		INITHOTSPOT(0, 0, 0, 0, 0x267),
-		INITHOTSPOT(0, 0, 0, 0, 0x268),
-		INITHOTSPOT(0, 0, 0, 0, 0x269),
-		INITHOTSPOT(0, 0, 0, 0, 0x26A),
-		INITHOTSPOT(0, 0, 0, 0, 0x26B),
-		INITHOTSPOT(0, 0, 0, 0, 0x26C),
-		INITHOTSPOT(0, 0, 0, 0, 0x26D),
-		INITHOTSPOT(0, 0, 0, 0, 0x26E),
-		INITHOTSPOT(0, 0, 0, 0, 0x26F)
+		DUMMYHOTSPOT(0x261),
+		DUMMYHOTSPOT(0x262),
+		DUMMYHOTSPOT(0x263),
+		DUMMYHOTSPOT(0x264),
+		DUMMYHOTSPOT(0x265),
+		DUMMYHOTSPOT(0x266),
+		DUMMYHOTSPOT(0x267),
+		DUMMYHOTSPOT(0x268),
+		DUMMYHOTSPOT(0x269),
+		DUMMYHOTSPOT(0x26A),
+		DUMMYHOTSPOT(0x26B),
+		DUMMYHOTSPOT(0x26C),
+		DUMMYHOTSPOT(0x26D),
+		DUMMYHOTSPOT(0x26E),
+		DUMMYHOTSPOT(0x26F)
 	},
 	{
 		INITHOTSPOT(17, 120, 122, 132, 0x190),
 		INITHOTSPOT(17, 120, 140, 150, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(69, 242, 114, 129, 0x190),
 		INITHOTSPOT(69, 242, 132, 147, 0x192),
 		INITHOTSPOT(69, 131, 150, 165, 0x193),
 		INITHOTSPOT(181, 242, 150, 165, 0x194),
 		INITHOTSPOT(133, 179, 150, 165, 0x24A),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(73, 105, 56, 80, 0x428),
 		INITHOTSPOT(89, 131, 88, 110, 0x42A),
 		INITHOTSPOT(124, 152, 56, 81, 0x42B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(61, 91, 61, 87, 0x417),
 		INITHOTSPOT(92, 122, 84, 110, 0x40A),
 		INITHOTSPOT(123, 154, 61, 87, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(47, 80, 48, 116, 0x445),
 		INITHOTSPOT(149, 182, 51, 116, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(62, 88, 76, 141, 0x42F),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(140, 170, 102, 127, 0x428),
@@ -3607,146 +3608,146 @@ HotSpot _mouseMapASDemo[128][16] = {
 	{
 		INITHOTSPOT(84, 113, 30, 53, 0x438),
 		INITHOTSPOT(21, 42, 78, 105, 0x439),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(4, 227, 17, 160, 0x241)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(86, 112, 27, 85, 0x453),
 		INITHOTSPOT(85, 127, 29, 90, 0x453),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(128, 149, 55, 114, 0x445),
 		INITHOTSPOT(180, 215, 36, 120, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(69, 86, 86, 103, 0x437),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(128, 149, 55, 114, 0x445),
 		INITHOTSPOT(180, 215, 36, 120, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(53, 131, 41, 159, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(204, 227, 100, 160, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(94, 106, 83, 104, 0x443),
 		INITHOTSPOT(107, 127, 83, 104, 0x405),
 		INITHOTSPOT(75, 94, 98, 133, 0x409),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(67, 135, 22, 68, 0x407),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(88, 156, 102, 158, 0x418),
@@ -3755,34 +3756,34 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(19, 45, 76, 102, 0x401),
 		INITHOTSPOT(23, 68, 134, 157, 0x400),
 		INITHOTSPOT(96, 156, 47, 102, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(68, 131, 117, 158, 0x418),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(103, 158, 18, 40, 0x417),
@@ -3793,14 +3794,14 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(95, 151, 124, 159, 0x40B),
 		INITHOTSPOT(53, 94, 124, 159, 0x420),
 		INITHOTSPOT(89, 158, 40, 103, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(33, 99, 18, 53, 0x418),
@@ -3810,15 +3811,15 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(82, 123, 128, 159, 0x40D),
 		INITHOTSPOT(96, 120, 73, 96, 0x443),
 		INITHOTSPOT(123, 184, 112, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(113, 125, 43, 60, 0x40A),
@@ -3827,16 +3828,16 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(99, 160, 104, 159, 0x417),
 		INITHOTSPOT(17, 56, 134, 159, 0x401),
 		INITHOTSPOT(9, 81, 65, 98, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 216, 109, 147, 0x417),
@@ -3844,53 +3845,53 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(91, 110, 131, 154, 0x401),
 		INITHOTSPOT(31, 66, 128, 147, 0x408),
 		INITHOTSPOT(84, 141, 70, 96, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(67, 85, 72, 98, 0x443),
 		INITHOTSPOT(117, 182, 65, 96, 0x406),
 		INITHOTSPOT(124, 147, 130, 153, 0x401),
 		INITHOTSPOT(56, 89, 124, 146, 0x408),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(92, 106, 120, 130, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 209, 50, 98, 0x417),
@@ -3899,123 +3900,123 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(91, 139, 18, 44, 0x406),
 		INITHOTSPOT(95, 128, 137, 151, 0x400),
 		INITHOTSPOT(32, 61, 81, 95, 0x408),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(87, 109, 81, 105, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 214, 18, 46, 0x417),
 		INITHOTSPOT(151, 214, 46, 105, 0x418),
 		INITHOTSPOT(87, 108, 22, 46, 0x401),
-		INITHOTSPOT(58, 43, 141, 57, 0x40B),
+		DUMMYHOTSPOT(0x40B), // INITHOTSPOT(58, 43, 141, 57, 0x40B), <=== Invalid coordinates
 		INITHOTSPOT(24, 62, 18, 37, 0x408),
 		INITHOTSPOT(155, 200, 123, 157, 0x40B),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(92, 131, 77, 97, 0x443),
 		INITHOTSPOT(113, 155, 123, 157, 0x420),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(94, 129, 121, 145, 0x415),
 		INITHOTSPOT(14, 79, 108, 142, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(102, 127, 96, 107, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 125, 62, 104, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(5, 71, 102, 160, 0x406),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(71, 92, 97, 146, 0x409),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(40, 133, 99, 158, 0x443),
 		INITHOTSPOT(133, 188, 94, 145, 0x405),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(104, 122, 124, 148, 0x445),
 		INITHOTSPOT(151, 165, 32, 56, 0x445),
 		INITHOTSPOT(100, 118, 34, 55, 0x19F),
 		INITHOTSPOT(50, 66, 35, 58, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(89, 129, 58, 106, 0x19F)
 	},
 	{
@@ -4025,34 +4026,34 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(63, 112, 80, 103, 0x443),
 		INITHOTSPOT(112, 150, 66, 103, 0x443),
 		INITHOTSPOT(63, 183, 103, 159, 0x40C),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(125, 182, 18, 42, 0x406),
 		INITHOTSPOT(122, 148, 80, 105, 0x401),
 		INITHOTSPOT(130, 175, 135, 156, 0x400),
 		INITHOTSPOT(66, 85, 20, 49, 0x407),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(53, 89, 77, 95, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(88, 144, 18, 49, 0x418),
@@ -4063,32 +4064,32 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(5, 134, 108, 159, 0x40C),
 		INITHOTSPOT(135, 179, 124, 159, 0x40D),
 		INITHOTSPOT(88, 134, 65, 108, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(40, 160, 49, 148, 0x442),
 		INITHOTSPOT(5, 39, 49, 159, 0x40B),
 		INITHOTSPOT(210, 226, 75, 116, 0x402),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(135, 177, 68, 111, 0x443),
@@ -4099,140 +4100,140 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(55, 113, 17, 124, 0x40C),
 		INITHOTSPOT(113, 154, 65, 124, 0x40C),
 		INITHOTSPOT(154, 227, 81, 160, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(141, 213, 79, 110, 0x410),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(126, 188, 24, 54, 0x403),
 		INITHOTSPOT(5, 101, 18, 90, 0x40E),
 		INITHOTSPOT(5, 65, 90, 159, 0x40E),
-		INITHOTSPOT(65, 98, 213, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x40E), // INITHOTSPOT(65, 98, 213, 159, 0x40E), <=== Invalid coordinates
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(5, 213, 18, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(19, 66, 18, 64, 0x40D),
 		INITHOTSPOT(5, 32, 18, 73, 0x40C),
 		INITHOTSPOT(155, 184, 84, 111, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(134, 197, 18, 59, 0x40F),
 		INITHOTSPOT(189, 227, 120, 159, 0x403),
 		INITHOTSPOT(5, 155, 18, 132, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(85, 132, 18, 60, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(33, 63, 88, 117, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(72, 144, 130, 159, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		DUMMYHOTSPOT(0x195),
 		INITHOTSPOT(90, 156, 60, 130, 0x443),
-		INITHOTSPOT(144, 94, 130, 159, 0x422),
+		DUMMYHOTSPOT(0x422), // INITHOTSPOT(144, 94, 130, 159, 0x422), <=== Invalid Coordinates
 		INITHOTSPOT(8, 90, 18, 63, 0x40F),
 		INITHOTSPOT(132, 194, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(161, 215, 111, 159, 0x421),
 		INITHOTSPOT(85, 153, 49, 111, 0x443),
 		INITHOTSPOT(104, 131, 134, 159, 0x412),
 		INITHOTSPOT(153, 201, 54, 111, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(5, 104, 128, 159, 0x40E),
 		INITHOTSPOT(5, 161, 54, 159, 0x40E),
 		INITHOTSPOT(201, 227, 49, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 126, 79, 106, 0x443),
 		INITHOTSPOT(163, 212, 56, 108, 0x421),
 		INITHOTSPOT(73, 139, 18, 56, 0x40F),
 		INITHOTSPOT(156, 181, 18, 49, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(129, 194, 121, 156, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(22, 100, 18, 138, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(96, 135, 88, 115, 0x443),
 		INITHOTSPOT(29, 96, 68, 115, 0x410),
 		INITHOTSPOT(28, 80, 17, 68, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(80, 135, 17, 88, 0x422),
 		INITHOTSPOT(135, 204, 17, 158, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(69, 136, 71, 112, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(136, 175, 91, 119, 0x41F),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
+		DUMMYHOTSPOT(0x193),
 		INITHOTSPOT(131, 185, 18, 91, 0x422),
 		INITHOTSPOT(185, 226, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(67, 131, 18, 71, 0x403),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(91, 133, 52, 112, 0x443),
@@ -4243,104 +4244,104 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(140, 227, 17, 38, 0x416),
 		INITHOTSPOT(152, 227, 38, 160, 0x414),
 		INITHOTSPOT(51, 91, 118, 159, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(67, 150, 53, 159, 0x445),
 		INITHOTSPOT(150, 226, 19, 159, 0x414),
 		INITHOTSPOT(5, 67, 46, 159, 0x40F),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(59, 146, 77, 135, 0x443),
 		INITHOTSPOT(146, 193, 77, 124, 0x403),
 		INITHOTSPOT(129, 206, 124, 159, 0x410),
 		INITHOTSPOT(94, 124, 36, 63, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
+		DUMMYHOTSPOT(0x195),
 		INITHOTSPOT(94, 147, 18, 77, 0x40E),
 		INITHOTSPOT(5, 129, 18, 158, 0x40E),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(50, 109, 115, 159, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x413),
+		DUMMYHOTSPOT(0x413),
 		INITHOTSPOT(50, 135, 46, 159, 0x414),
 		INITHOTSPOT(135, 159, 113, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(93, 135, 78, 141, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 97, 17, 78, 0x421),
 		INITHOTSPOT(39, 93, 78, 123, 0x403),
 		INITHOTSPOT(39, 135, 123, 159, 0x410),
 		INITHOTSPOT(97, 195, 17, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E)
 	},
 	{
 		INITHOTSPOT(15, 66, 104, 141, 0x190),
@@ -4348,53 +4349,53 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(174, 225, 100, 154, 0x192),
 		INITHOTSPOT(81, 132, 37, 78, 0x193),
 		INITHOTSPOT(165, 212, 26, 78, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(84, 150, 79, 114, 0x443),
 		INITHOTSPOT(66, 200, 127, 159, 0x410),
 		INITHOTSPOT(47, 75, 38, 64, 0x412),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(100, 156, 18, 79, 0x421),
 		INITHOTSPOT(150, 200, 72, 132, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(156, 226, 18, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(26, 42, 48, 77, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(112, 134, 77, 84, 0x443),
@@ -4407,30 +4408,30 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(95, 129, 123, 149, 0x41A),
 		INITHOTSPOT(14, 54, 79, 159, 0x414),
 		INITHOTSPOT(66, 86, 73, 82, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 136, 84, 102, 0x443),
 		INITHOTSPOT(104, 116, 101, 122, 0x41B),
 		INITHOTSPOT(113, 134, 122, 130, 0x41B),
 		INITHOTSPOT(78, 97, 96, 110, 0x416),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(98, 136, 84, 102, 0x443),
@@ -4444,14 +4445,14 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(129, 146, 71, 102, 0x404),
 		INITHOTSPOT(59, 98, 84, 160, 0x414),
 		INITHOTSPOT(144, 177, 134, 159, 0x41A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(144, 176, 76, 110, 0x404),
 		INITHOTSPOT(175, 206, 18, 110, 0x404),
 		INITHOTSPOT(167, 226, 84, 159, 0x41D),
@@ -4459,14 +4460,14 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(71, 89, 47, 85, 0x443),
 		INITHOTSPOT(77, 132, 86, 110, 0x443),
 		INITHOTSPOT(4, 67, 18, 39, 0x41C),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(96, 119, 76, 93, 0x443),
@@ -4474,35 +4475,35 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(43, 74, 129, 150, 0x41D),
 		INITHOTSPOT(44, 64, 71, 112, 0x404),
 		INITHOTSPOT(32, 64, 112, 129, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x41B),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(99, 119, 69, 103, 0x443),
@@ -4512,87 +4513,87 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(53, 70, 107, 129, 0x41B),
 		INITHOTSPOT(63, 81, 129, 138, 0x41B),
 		INITHOTSPOT(156, 177, 76, 91, 0x41E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(74, 124, 38, 133, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(70, 110, 121, 159, 0x441),
 		INITHOTSPOT(92, 112, 33, 59, 0x445),
 		INITHOTSPOT(150, 177, 24, 49, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(129, 149, 43, 60, 0x443),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(130, 182, 17, 46, 0x41C),
 		INITHOTSPOT(158, 168, 49, 69, 0x41B),
 		INITHOTSPOT(164, 183, 69, 77, 0x41B),
 		INITHOTSPOT(105, 166, 71, 160, 0x414),
 		INITHOTSPOT(46, 80, 98, 149, 0x419),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 129, 78, 86, 0x443),
 		INITHOTSPOT(105, 129, 86, 99, 0x443),
 		INITHOTSPOT(34, 84, 134, 159, 0x425),
 		INITHOTSPOT(48, 75, 81, 109, 0x41A),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 141, 76, 103, 0x443),
@@ -4602,45 +4603,45 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(38, 54, 63, 95, 0x404),
 		INITHOTSPOT(54, 78, 20, 87, 0x404),
 		INITHOTSPOT(113, 131, 26, 43, 0x41E),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(8, 38, 58, 103, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(58, 68, 88, 103, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 133, 81, 120, 0x189),
 		INITHOTSPOT(104, 133, 120, 133, 0x189),
 		INITHOTSPOT(112, 123, 65, 142, 0x189),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
 		INITHOTSPOT(18, 65, 18, 159, 0x414),
 		INITHOTSPOT(65, 143, 75, 159, 0x414),
 		INITHOTSPOT(143, 157, 96, 159, 0x414),
@@ -4652,19 +4653,19 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(107, 119, 61, 88, 0x445),
 		INITHOTSPOT(91, 110, 95, 136, 0x446),
 		INITHOTSPOT(181, 208, 66, 146, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(100, 129, 74, 100, 0x443),
@@ -4672,8 +4673,8 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(140, 189, 24, 54, 0x424),
 		INITHOTSPOT(89, 126, 18, 41, 0x404),
 		INITHOTSPOT(46, 89, 18, 41, 0x41B),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
 		INITHOTSPOT(95, 129, 124, 131, 0x425),
 		INITHOTSPOT(95, 139, 131, 159, 0x425),
 		INITHOTSPOT(139, 146, 136, 159, 0x425),
@@ -4681,209 +4682,209 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(58, 122, 111, 159, 0x414),
 		INITHOTSPOT(129, 154, 120, 131, 0x414),
 		INITHOTSPOT(139, 160, 131, 159, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(125, 179, 49, 126, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(159, 173, 17, 32, 0x445),
 		INITHOTSPOT(148, 165, 40, 61, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(39, 59, 35, 69, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(56, 79, 88, 133, 0x445),
 		INITHOTSPOT(103, 122, 81, 136, 0x446),
 		INITHOTSPOT(161, 190, 85, 145, 0x447),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(65, 105, 87, 119, 0x438),
 		INITHOTSPOT(141, 165, 55, 78, 0x40A),
 		INITHOTSPOT(182, 203, 74, 95, 0x414),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(93, 127, 39, 80, 0x40A),
 		INITHOTSPOT(21, 54, 92, 129, 0x41D),
 		INITHOTSPOT(167, 200, 94, 134, 0x422),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(59, 95, 55, 95, 0x40A),
 		INITHOTSPOT(129, 169, 82, 131, 0x41D),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(57, 92, 76, 102, 0x442),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
 		INITHOTSPOT(4, 44, 74, 104, 0x441),
 		INITHOTSPOT(85, 143, 73, 98, 0x448),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(125, 151, 103, 125, 0x42C),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(38, 47, 151, 159, 0x42D),
 		INITHOTSPOT(88, 112, 143, 154, 0x42D),
 		INITHOTSPOT(79, 123, 92, 132, 0x42D),
@@ -4891,806 +4892,806 @@ HotSpot _mouseMapASDemo[128][16] = {
 		INITHOTSPOT(7, 12, 97, 102, 0x42D),
 		INITHOTSPOT(78, 104, 105, 114, 0x42D),
 		INITHOTSPOT(103, 111, 100, 106, 0x42D),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
+		DUMMYHOTSPOT(0x190),
 		INITHOTSPOT(13, 48, 82, 112, 0x42D),
 		INITHOTSPOT(45, 54, 61, 75, 0x42D),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
 		INITHOTSPOT(68, 188, 65, 105, 0x441)
 	},
 	{
 		INITHOTSPOT(164, 191, 38, 109, 0x445),
 		INITHOTSPOT(56, 93, 69, 83, 0x444),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(30, 44, 50, 77, 0x198),
 		INITHOTSPOT(30, 44, 113, 140, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(4, 227, 17, 160, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 67, 73, 118, 0x450),
 		INITHOTSPOT(123, 151, 37, 76, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(90, 130, 99, 123, 0x432),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(67, 152, 99, 139, 0x449),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 194, 29, 73, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(110, 123, 82, 130, 0x431),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(104, 121, 60, 86, 0x445),
 		INITHOTSPOT(78, 91, 52, 77, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(151, 190, 31, 105, 0x445),
 		INITHOTSPOT(37, 65, 23, 105, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(144, 223, 48, 105, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(11, 59, 80, 141, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(160, 208, 80, 140, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(74, 91, 78, 105, 0x42E),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(181, 217, 49, 128, 0x445),
 		INITHOTSPOT(17, 50, 28, 131, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(27, 199, 79, 159, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(191, 222, 57, 84, 0x442),
 		INITHOTSPOT(103, 119, 130, 141, 0x44A),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(167, 194, 115, 130, 0x433),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(73, 104, 109, 138, 0x434),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(85, 133, 47, 93, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(39, 67, 73, 118, 0x445),
 		INITHOTSPOT(123, 151, 37, 76, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
 		INITHOTSPOT(146, 177, 61, 114, 0x445),
 		INITHOTSPOT(14, 43, 69, 131, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(78, 145, 55, 144, 0x456),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
 		INITHOTSPOT(133, 194, 18, 72, 0x413),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
 		INITHOTSPOT(159, 197, 38, 71, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(157, 198, 42, 80, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(197, 217, 84, 128, 0x453),
 		INITHOTSPOT(26, 42, 48, 77, 0x404),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(84, 105, 77, 108, 0x435),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 197, 77, 119, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 277, 57, 73, 0x441),
 		INITHOTSPOT(47, 119, 107, 160, 0x448),
 		INITHOTSPOT(73, 98, 43, 90, 0x44B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(176, 277, 57, 73, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x448),
+		DUMMYHOTSPOT(0x448),
 		INITHOTSPOT(73, 98, 43, 90, 0x44B),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(47, 119, 107, 160, 0x451),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(92, 124, 94, 137, 0x441),
 		INITHOTSPOT(67, 81, 71, 160, 0x448),
 		INITHOTSPOT(15, 48, 19, 160, 0x44B),
 		INITHOTSPOT(211, 227, 17, 160, 0x44C),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(181, 205, 50, 96, 0x441),
 		INITHOTSPOT(107, 166, 123, 160, 0x448),
 		INITHOTSPOT(4, 25, 71, 130, 0x44B),
 		INITHOTSPOT(210, 227, 60, 105, 0x44C),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(95, 124, 70, 106, 0x439),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
-	},
-	{
-		INITHOTSPOT(0, 0, 0, 0, 0x190),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
+	},
+	{
+		DUMMYHOTSPOT(0x190),
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(128, 191, 43, 129, 0x441),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(17, 51, 50, 126, 0x445),
 		INITHOTSPOT(179, 211, 30, 129, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(17, 51, 50, 126, 0x445),
 		INITHOTSPOT(179, 211, 30, 129, 0x452),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
 		INITHOTSPOT(117, 139, 73, 135, 0x430),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(20, 37, 88, 132, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(20, 37, 88, 132, 0x445),
 		INITHOTSPOT(101, 125, 99, 141, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(4, 41, 92, 160, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x191),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x191),
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(61, 78, 69, 86, 0x458),
 		INITHOTSPOT(136, 142, 17, 130, 0x44D),
 		INITHOTSPOT(167, 175, 17, 139, 0x44E),
 		INITHOTSPOT(181, 194, 58, 136, 0x445),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	},
 	{
 		INITHOTSPOT(164, 192, 71, 130, 0x445),
 		INITHOTSPOT(105, 141, 70, 131, 0x446),
-		INITHOTSPOT(0, 0, 0, 0, 0x192),
-		INITHOTSPOT(0, 0, 0, 0, 0x193),
-		INITHOTSPOT(0, 0, 0, 0, 0x194),
-		INITHOTSPOT(0, 0, 0, 0, 0x195),
-		INITHOTSPOT(0, 0, 0, 0, 0x196),
-		INITHOTSPOT(0, 0, 0, 0, 0x197),
-		INITHOTSPOT(0, 0, 0, 0, 0x198),
-		INITHOTSPOT(0, 0, 0, 0, 0x199),
-		INITHOTSPOT(0, 0, 0, 0, 0x19A),
-		INITHOTSPOT(0, 0, 0, 0, 0x19B),
-		INITHOTSPOT(0, 0, 0, 0, 0x19C),
-		INITHOTSPOT(0, 0, 0, 0, 0x19D),
-		INITHOTSPOT(0, 0, 0, 0, 0x19E),
-		INITHOTSPOT(0, 0, 0, 0, 0x19F)
+		DUMMYHOTSPOT(0x192),
+		DUMMYHOTSPOT(0x193),
+		DUMMYHOTSPOT(0x194),
+		DUMMYHOTSPOT(0x195),
+		DUMMYHOTSPOT(0x196),
+		DUMMYHOTSPOT(0x197),
+		DUMMYHOTSPOT(0x198),
+		DUMMYHOTSPOT(0x199),
+		DUMMYHOTSPOT(0x19A),
+		DUMMYHOTSPOT(0x19B),
+		DUMMYHOTSPOT(0x19C),
+		DUMMYHOTSPOT(0x19D),
+		DUMMYHOTSPOT(0x19E),
+		DUMMYHOTSPOT(0x19F)
 	}
 };
 


Commit: c4e54246a7926d0fbe69bd18c265b182bc57a487
    https://github.com/scummvm/scummvm/commit/c4e54246a7926d0fbe69bd18c265b182bc57a487
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove movie name array

Changed paths:
    engines/kingdom/constants.cpp
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 1234e39c2b..84b5e78dbf 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -537,219 +537,6 @@ const char *_rezNames[] = {
 	"KLF209.lbm",
 };
 
-const char *_movieNames[] = {
-	"",
-	"King001.mve",
-	"King002.mve",
-	"King003.mve",
-	"King004.mve",
-	"King005.mve",
-	"King006.mve",
-	"King007.mve",
-	"King008.mve",
-	"King009.mve",
-	"King010.mve",
-	"King011.mve",
-	"King012.mve",
-	"King013.mve",
-	"King014.mve",
-	"King015.mve",
-	"King016.mve",
-	"King017.mve",
-	"King018.mve",
-	"King019.mve",
-	"King020.mve",
-	"King021.mve",
-	"King022.mve",
-	"King023.mve",
-	"King024.mve",
-	"King025.mve",
-	"King026.mve",
-	"King027.mve",
-	"King028.mve",
-	"King029.mve",
-	"King030.mve",
-	"King031.mve",
-	"King032.mve",
-	"King033.mve",
-	"King034.mve",
-	"King035.mve",
-	"King036.mve",
-	"King037.mve",
-	"King038.mve",
-	"King039.mve",
-	"King040.mve",
-	"King041.mve",
-	"King042.mve",
-	"King043.mve",
-	"King044.mve",
-	"King045.mve",
-	"King046.mve",
-	"King047.mve",
-	"King048.mve",
-	"King049.mve",
-	"King050.mve",
-	"King051.mve",
-	"King052.mve",
-	"King053.mve",
-	"King054.mve",
-	"King055.mve",
-	"King056.mve",
-	"King057.mve",
-	"King058.mve",
-	"King059.mve",
-	"King060.mve",
-	"King061.mve",
-	"King062.mve",
-	"King063.mve",
-	"King064.mve",
-	"King065.mve",
-	"King066.mve",
-	"King067.mve",
-	"King068.mve",
-	"King069.mve",
-	"King070.mve",
-	"King071.mve",
-	"King072.mve",
-	"King073.mve",
-	"King074.mve",
-	"King075.mve",
-	"King076.mve",
-	"King077.mve",
-	"King078.mve",
-	"King079.mve",
-	"King080.mve",
-	"King081.mve",
-	"King082.mve",
-	"King083.mve",
-	"King084.mve",
-	"King085.mve",
-	"King086.mve",
-	"King087.mve",
-	"King088.mve",
-	"King089.mve",
-	"King090.mve",
-	"King091.mve",
-	"King092.mve",
-	"King093.mve",
-	"King094.mve",
-	"King095.mve",
-	"King096.mve",
-	"King097.mve",
-	"King098.mve",
-	"King099.mve",
-	"King100.mve",
-	"King101.mve",
-	"King102.mve",
-	"King103.mve",
-	"King104.mve",
-	"King105.mve",
-	"King106.mve",
-	"King107.mve",
-	"King108.mve",
-	"King109.mve",
-	"King110.mve",
-	"King111.mve",
-	"King112.mve",
-	"King113.mve",
-	"King114.mve",
-	"King115.mve",
-	"King116.mve",
-	"King117.mve",
-	"King118.mve",
-	"King119.mve",
-	"King120.mve",
-	"King121.mve",
-	"King122.mve",
-	"King123.mve",
-	"King124.mve",
-	"King125.mve",
-	"King126.mve",
-	"King127.mve",
-	"King128.mve",
-	"King129.mve",
-	"King130.mve",
-	"King131.mve",
-	"King132.mve",
-	"King133.mve",
-	"King134.mve",
-	"King135.mve",
-	"King136.mve",
-	"King137.mve",
-	"King138.mve",
-	"King139.mve",
-	"King140.mve",
-	"King141.mve",
-	"King142.mve",
-	"King143.mve",
-	"King144.mve",
-	"King145.mve",
-	"King146.mve",
-	"King147.mve",
-	"King148.mve",
-	"King149.mve",
-	"King150.mve",
-	"King151.mve",
-	"King152.mve",
-	"King153.mve",
-	"King154.mve",
-	"King155.mve",
-	"King156.mve",
-	"King157.mve",
-	"King158.mve",
-	"King159.mve",
-	"King160.mve",
-	"King161.mve",
-	"King162.mve",
-	"King163.mve",
-	"King164.mve",
-	"King165.mve",
-	"King166.mve",
-	"King167.mve",
-	"King168.mve",
-	"King169.mve",
-	"King170.mve",
-	"King171.mve",
-	"King172.mve",
-	"King173.mve",
-	"King174.mve",
-	"King175.mve",
-	"King176.mve",
-	"King177.mve",
-	"King178.mve",
-	"King179.mve",
-	"King180.mve",
-	"King181.mve",
-	"King182.mve",
-	"King183.mve",
-	"King184.mve",
-	"King185.mve",
-	"King186.mve",
-	"King187.mve",
-	"King188.mve",
-	"King189.mve",
-	"King190.mve",
-	"King191.mve",
-	"King192.mve",
-	"King193.mve",
-	"King194.mve",
-	"King195.mve",
-	"King196.mve",
-	"King197.mve",
-	"King198.mve",
-	"King199.mve",
-	"King200.mve",
-	"King201.mve",
-	"King202.mve",
-	"King203.mve",
-	"King204.mve",
-	"King205.mve",
-	"King206.mve",
-	"King207.mve",
-	"King208.mve",
-	"King209.mve"
-};
-
 int _mapExit[] = {
 	  0, 100,  90,  50, 420, 550, 110,  70,  80, 180,
 	190, 200, 210, 230, 240, 300, 290, 330, 360, 310,
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 609440c44e..56e8441581 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -470,7 +470,7 @@ void KingdomGame::playMovie(int movieNum) {
 	readMouse();
 	_mouseButton = 0;
 	_keyActive = false;
-	const char *path = _movieNames[movieNum];
+	const Common::String path = Common::String::format("King%.3d.mve", movieNum);
 	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
 	// That can be replaced by an error()
 


Commit: 19386a50d5a800eedbaf981d4cdb13a271850b65
    https://github.com/scummvm/scummvm/commit/19386a50d5a800eedbaf981d4cdb13a271850b65
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Move character death (repetitive) code to separate function

Changed paths:
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/logic.cpp
    engines/kingdom/logic.h


diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index e16e8e9f55..e770236075 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -115,12 +115,8 @@ void Logic::GPL4_991() {
 		_vm->playMovie(194);
 		_vm->_noIFScreen = true;
 		_vm->fShowPic(107);
-		_currMap = 3;
-		dsAll();
-		_pouch = false;
-		_vm->playSound(1);
-		memset(_inventory, -1, 19);
-		_statPlay = 994;
+
+		characterDeath();
 	} else {
 		_vm->_bTimer = 36;
 		while(_vm->_bTimer) {
@@ -167,12 +163,8 @@ void Logic::GPL4_992() {
 		_vm->playMovie(194);
 		_vm->_noIFScreen = true;
 		_vm->fShowPic(107);
-		_currMap = 3;
-		dsAll();
-		_pouch = false;
-		_vm->playSound(1);
-		memset(_inventory, -1, 19);
-		_statPlay = 994;
+
+		characterDeath();
 	} else {
 		_vm->_bTimer = 36;
 		while(_vm->_bTimer != 0) {
@@ -216,12 +208,8 @@ void Logic::GPL4_992_demo() {
 		_vm->playMovie(194);
 		_vm->_noIFScreen = true;
 		_vm->fShowPic(107);
-		_currMap = 3;
-		dsAll();
-		_pouch = false;
-		_vm->playSound(1);
-		memset(_inventory, -1, 19);
-		_statPlay = 994;
+
+		characterDeath();
 	} else {
 		_vm->_bTimer = 36;
 		while(_vm->_bTimer != 0) {
@@ -264,12 +252,8 @@ void Logic::GPL4_993() {
 		_vm->playMovie(194);
 		_vm->_noIFScreen = true;
 		_vm->fShowPic(107);
-		_currMap = 3;
-		dsAll();
-		_pouch = false;
-		_vm->playSound(1);
-		memset(_inventory, -1, 19);
-		_statPlay = 994;
+
+		characterDeath();
 	} else {
 		_vm->_bTimer = 36;
 		while (_vm->_bTimer != 0) {
@@ -317,12 +301,8 @@ void Logic::GPL4_993_demo() {
 		_vm->playMovie(194);
 		_vm->_noIFScreen = true;
 		_vm->fShowPic(107);
-		_currMap = 3;
-		dsAll();
-		_pouch = false;
-		_vm->playSound(1);
-		memset(_inventory, -1, 19);
-		_statPlay = 994;
+
+		characterDeath();
 	} else {
 		_vm->_bTimer = 36;
 		while (_vm->_bTimer != 0) {
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index 677a44a571..e35a555513 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -152,8 +152,7 @@ void Logic::initOpcodes() {
 	if (_vm->isDemo())
 		initOpcodesDemo();
 	else
-		initOpcodesFull();
-	
+		initOpcodesFull();	
 }
 
 void Logic::initOpcodesDemo() {
@@ -404,12 +403,8 @@ void Logic::endCredits() {
 	_vm->drawRect(4, 17, 228, 161, 0);
 	_vm->playMovie(201);
 	_vm->fShowPic(125);
-	_currMap = 3;
-	dsAll();
-	_pouch = false;
-	memset(_inventory, 0xFF, 19);
-	_statPlay = 994;
-	_vm->_loopFlag = true;
+
+	characterDeath();
 }
 
 void Logic::gameHelp_Sub43C() {
@@ -566,6 +561,15 @@ void Logic::switchAS() {
 	_vm->_iconsClosed = _vm->_oldIconsClosed;
 }
 
+void Logic::characterDeath() {
+	_currMap = 3;
+	dsAll();
+	_pouch = false;
+	memset(_inventory, -1, 19);
+	_statPlay = 994;
+	_vm->_loopFlag = true;
+}
+
 void Logic::executeOpcode() {
 	if (_opCodes.contains(_statPlay)) {
 		Opcode op = _opCodes[_statPlay];
diff --git a/engines/kingdom/logic.h b/engines/kingdom/logic.h
index 215a47dc6f..2e07605c44 100644
--- a/engines/kingdom/logic.h
+++ b/engines/kingdom/logic.h
@@ -294,6 +294,7 @@ public:
 	void executeOpcode();
 	void initPlay();
 	void switchAS();
+	void characterDeath();
 	void synchronize(Common::Serializer &s);
 };
 }


Commit: f4b43dde36b5108c6fc6c3318f93bc098f882f18
    https://github.com/scummvm/scummvm/commit/f4b43dde36b5108c6fc6c3318f93bc098f882f18
Author: Strangerke (strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add debug command to display hotspots

Changed paths:
    engines/kingdom/console.cpp
    engines/kingdom/console.h
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/console.cpp b/engines/kingdom/console.cpp
index 27084d8563..62de652715 100644
--- a/engines/kingdom/console.cpp
+++ b/engines/kingdom/console.cpp
@@ -23,10 +23,18 @@
 #include "gui/debugger.h"
 
 #include "kingdom/console.h"
+#include "kingdom/kingdom.h"
 
 namespace Kingdom {
 
 Console::Console(Kingdom::KingdomGame *vm) : _vm(vm) {
+	registerCmd("showHotspots",	WRAP_METHOD(Console, Cmd_showHotspots));
+}
+
+bool Console::Cmd_showHotspots(int argc, const char **argv){
+	_vm->_showHotspots ^= true;
+
+	return false;
 }
 
 } // End of namespace Kingdom
diff --git a/engines/kingdom/console.h b/engines/kingdom/console.h
index 794bfbe39d..1fdf7991dd 100644
--- a/engines/kingdom/console.h
+++ b/engines/kingdom/console.h
@@ -38,6 +38,8 @@ public:
 
 	explicit Console(Kingdom::KingdomGame *vm);
 	virtual ~Console(void) {}
+
+	bool Cmd_showHotspots(int argc, const char **argv);
 };
 }
 
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 56e8441581..85aa08fb06 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -62,6 +62,8 @@ KingdomGame::KingdomGame(OSystem *syst, const ADGameDescription *gameDesc) : Eng
 	_tickCount = 0;
 	_oldTime = g_system->getMillis();
 
+	_showHotspots = false;
+
 	const Common::FSNode gameDataDir(ConfMan.get("path"));
 	SearchMan.addSubDirectoryMatching(gameDataDir, "MAPS");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "PICS");
@@ -199,8 +201,13 @@ Common::Error KingdomGame::run() {
 }
 
 void KingdomGame::refreshScreen() {
+	displayDebugHotSpots();
+
 	g_system->updateScreen();
 	checkTimers();
+
+	// Signal the ScummVM debugger
+	_console->onFrame();
 }
 
 void KingdomGame::checkTimers() {
@@ -591,6 +598,27 @@ void KingdomGame::drawRect(uint minX, uint minY, uint maxX, uint maxY, int color
 	g_system->updateScreen();
 }
 
+void KingdomGame::drawEmptyRect(Common::Rect rect, int color) {
+	::Graphics::Surface *screen = g_system->lockScreen();
+
+	for (int curX = rect.left; curX < rect.right; curX++) {
+		byte *dst = (byte *)screen->getBasePtr(curX, rect.top);
+		*dst = color;
+		dst = (byte *)screen->getBasePtr(curX, rect.bottom);
+		*dst = color;
+	}
+
+	for (int curY = rect.top; curY < rect.bottom; curY++) {
+		byte *dst = (byte *)screen->getBasePtr(rect.left, curY);
+		*dst = color;
+		dst = (byte *)screen->getBasePtr(rect.right, curY);
+		*dst = color;
+	}
+
+	g_system->unlockScreen();
+	g_system->updateScreen();
+}
+
 void KingdomGame::drawInventory() {
 	fShowPic(108);
 	if (_logic->_nodes[28] == 1 || _logic->_nodes[67] == 1 || _itemInhibit)
@@ -1450,19 +1478,19 @@ void KingdomGame::drawCursor() {
 void KingdomGame::cursorType() {
 	_mouseValue = 0;
 	if (_logic->_currMap != 1 && _logic->_statPlay >= 30) {
-		int var2 = _logic->_statPlay == 901 ? 16 : 0;
-		int var6 = _logic->_statPlay == 901 ? 35 : 16;
+		int startId = _logic->_statPlay == 901 ? 16 : 0;
+		int hotspotCount = _logic->_statPlay == 901 ? 35 : 16;
 		HotSpot *mouseMapMS = isDemo() ? _mouseMapMSDemo : _mouseMapMSFull;
-		for (int i = 0; i < var6 + 1; i++) {
-			if (i == var6) {
+		for (int i = 0; i < hotspotCount + 1; i++) {
+			if (i == hotspotCount) {
 				int tmpVal = checkMouseMapAS();
 				if (tmpVal == -1) {
 					cursorTypeExit();
 					return;
 				} else
 					_mouseValue = tmpVal;
-			} else if (mouseMapMS[var2 + i]._area.contains(_cursorPos)) {
-				_mouseValue = mouseMapMS[var2 + i]._mouseValue;
+			} else if (mouseMapMS[startId + i]._area.contains(_cursorPos)) {
+				_mouseValue = mouseMapMS[startId + i]._mouseValue;
 				break;
 			}
 		}
@@ -1583,31 +1611,72 @@ void KingdomGame::cursorTypeExit() {
 }
 
 int KingdomGame::checkMouseMapAS() {
-	if (isDemo()) {
-		for (int i = 0; i < 16; i++) {
-			if (_mouseMapASDemo[_logic->_currMap][i]._area.contains(_cursorPos))
-				return _mouseMapASDemo[_logic->_currMap][i]._mouseValue;
-		}
-		if (_logic->_currMap == 11) {
-			for (int i = 0; i < 16; i++) {
-				if (_mouseMapASDemo[12][i]._area.contains(_cursorPos))
-					return _mouseMapASDemo[12][i]._mouseValue;
-			}
-		}
-	} else {
-		for (int i = 0; i < 16; i++) {
-			if (_mouseMapASFull[_logic->_currMap][i]._area.contains(_cursorPos))
-				return _mouseMapASFull[_logic->_currMap][i]._mouseValue;
-		}
-		if (_logic->_currMap == 11) {
-			for (int i = 0; i < 16; i++) {
-				if (_mouseMapASFull[12][i]._area.contains(_cursorPos))
-					return _mouseMapASFull[12][i]._mouseValue;
-			}
-		}
+	HotSpot *curSceneHotspots;
+	if (isDemo())
+		curSceneHotspots = _mouseMapASDemo[_logic->_currMap];
+	else
+		curSceneHotspots = _mouseMapASFull[_logic->_currMap];
+
+	for (int i = 0; i < 16; i++) {
+		if (curSceneHotspots[i]._area.contains(_cursorPos))
+			return curSceneHotspots[i]._mouseValue;
+	}
+
+	if (_logic->_currMap != 11)
+		return -1;
+
+	if (isDemo())
+		curSceneHotspots = _mouseMapASDemo[12];
+	else
+		curSceneHotspots = _mouseMapASFull[12];
+
+	for (int i = 0; i < 16; i++) {
+		if (curSceneHotspots[i]._area.contains(_cursorPos))
+			return curSceneHotspots[i]._mouseValue;
 	}
+
 	return -1;
 }
+
+void KingdomGame::displayDebugHotSpots() {
+	if (!_showHotspots)
+		return;
+
+	if (_logic->_currMap != 1 && _logic->_statPlay >= 30) {
+		int startId = _logic->_statPlay == 901 ? 16 : 0;
+		int hotspotCount = _logic->_statPlay == 901 ? 35 : 16;
+		HotSpot *mouseMapMS = isDemo() ? _mouseMapMSDemo : _mouseMapMSFull;
+		for (int i = 0; i < hotspotCount; i++) {
+			if (mouseMapMS[startId + i]._area != Common::Rect(0, 0, 0, 0))
+				drawEmptyRect(mouseMapMS[startId + i]._area, 0xDF);
+		}
+	}
+
+	HotSpot *curSceneHotspots;
+	if (isDemo())
+		curSceneHotspots = _mouseMapASDemo[_logic->_currMap];
+	else
+		curSceneHotspots = _mouseMapASFull[_logic->_currMap];
+
+	for (int i = 0; i < 16; i++) {
+		if (curSceneHotspots[i]._area != Common::Rect(0,0,0,0))
+			drawEmptyRect(curSceneHotspots[i]._area, 0xFF);
+	}
+
+	if (_logic->_currMap != 11)
+		return;
+
+	if (isDemo())
+		curSceneHotspots = _mouseMapASDemo[12];
+	else
+		curSceneHotspots = _mouseMapASFull[12];
+
+	for (int i = 0; i < 16; i++) {
+		if (curSceneHotspots[i]._area != Common::Rect(0, 0, 0, 0))
+			drawEmptyRect(curSceneHotspots[i]._area, 0xFF);
+	}
+}
+
 void KingdomGame::setCursor(int cursor) {
 	KingArtEntry Cursor = _kingartEntries[cursor];
 	CursorMan.replaceCursor(Cursor._data, Cursor._width, Cursor._height, 0, 0, 255);
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 9b5e9f84cd..d9f44ec058 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -111,10 +111,12 @@ namespace Kingdom {
 		Logic *_logic;
 
 		KingArtEntry *_kingartEntries;
+		void displayDebugHotSpots();
 
 	public:
 		Common::RandomSource *_rnd;
 
+		bool _showHotspots;
 		bool _loopFlag;
 		int _gameMode;
 		bool _fstFwd;
@@ -206,6 +208,7 @@ namespace Kingdom {
 		void restoreAS(); // TODO: Rename later as restoreVideoBackground
 		void drawHelpScreen();
 		void drawRect(uint minX, uint minY, uint maxX, uint maxY, int color);
+		void drawEmptyRect(Common::Rect rect, int color);
 		void drawInventory();
 		void playSound(int idx);
 		void eraseCursor();


Commit: c828e7548b31428bc5289ae185c3c87397485e0f
    https://github.com/scummvm/scummvm/commit/c828e7548b31428bc5289ae185c3c87397485e0f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Sync with modern ScummVM

Changed paths:
    engines/kingdom/detection.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h


diff --git a/engines/kingdom/detection.cpp b/engines/kingdom/detection.cpp
index 42c2360378..2a0be2d50e 100644
--- a/engines/kingdom/detection.cpp
+++ b/engines/kingdom/detection.cpp
@@ -73,7 +73,10 @@ static const ADGameDescription gameDescriptions[] = {
 class KingdomMetaEngine : public AdvancedMetaEngine {
 public:
 	KingdomMetaEngine() : AdvancedMetaEngine(Kingdom::gameDescriptions, sizeof(ADGameDescription), kingdomGames) {
-		_singleId = "kingdom";
+	}
+
+	const char *getEngineId() const override {
+		return "kingdom";
 	}
 
 	virtual const char *getName() const {
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 85aa08fb06..7c41281698 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -716,7 +716,7 @@ void KingdomGame::restoreGame() {
 	loadGameState(savegameId);
 }
 
-Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc) {
+Common::Error KingdomGame::saveGameState(int slot, const Common::String &desc, bool isAutosave) {
 	Common::String savegameFile = getSavegameFilename(slot);
 	Common::SaveFileManager *saveMan = g_system->getSavefileManager();
 	Common::OutSaveFile *out = saveMan->openForSaving(savegameFile);
@@ -1411,7 +1411,7 @@ int KingdomGame::getAKey() {
 	while (g_system->getEventManager()->pollEvent(event)) {
 		switch (event.type) {
 		case Common::EVENT_QUIT:
-		case Common::EVENT_RTL:
+		case Common::EVENT_RETURN_TO_LAUNCHER:
 			_quit = true;
 			break;
 
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index d9f44ec058..6efee8669d 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -236,7 +236,7 @@ namespace Kingdom {
 		void saveGame();
 		void restoreGame();
 		virtual Common::Error loadGameState(int slot);
-		virtual Common::Error saveGameState(int slot, const Common::String &desc);
+		virtual Common::Error saveGameState(int slot, const Common::String &desc, bool isAutosave = false);
 		Common::String getSavegameFilename(int slot);
 		void writeSavegameHeader(Common::OutSaveFile *out, KingdomSavegameHeader &header);
 		void synchronize(Common::Serializer &s);


Commit: 4a16632524cf508491710929c9adb172b1af8c84
    https://github.com/scummvm/scummvm/commit/4a16632524cf508491710929c9adb172b1af8c84
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Cleanup, optimize includes, fix some booleans initialized to 0

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/detection.cpp
    engines/kingdom/kingdom.cpp
    engines/kingdom/kingdom.h
    engines/kingdom/logic.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index e069498d52..806e18417b 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -238,6 +238,8 @@ void Logic::GPL1_50() {
 				inventoryAdd(3);
 				_spell3 = true;
 				break;
+			default:
+			    break;
 		}
 		if (_spell1 && _spell2 && _spell3) {
 			_vm->playMovie(6);
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index 109e336419..f579893d4b 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -390,23 +390,25 @@ void Logic::GPL3_551() {
 	case 0x452:
 		_vm->_aTimer = 0;
 		switch(_nodes[55]) {
-	case 0:
-		dsAll();
-		_vm->playMovie(69);
-		_vm->_tsIconOnly = false;
-		_nodes[55] = 1;
-		_vm->setATimer();
-		break;
-	case 1:
-		dsAll();
-		_vm->playMovie(134);
-		_statPlay = 993;
-		_vm->_loopFlag = true;
-		break;
-	case 9:
-		_statPlay = 560;
-		_vm->_loopFlag = true;
-		break;
+		case 0:
+			dsAll();
+			_vm->playMovie(69);
+			_vm->_tsIconOnly = false;
+			_nodes[55] = 1;
+			_vm->setATimer();
+			break;
+		case 1:
+			dsAll();
+			_vm->playMovie(134);
+			_statPlay = 993;
+			_vm->_loopFlag = true;
+			break;
+		case 9:
+			_statPlay = 560;
+			_vm->_loopFlag = true;
+			break;
+		default:
+			break;
 		}
 		break;
 	default:
@@ -615,6 +617,8 @@ void Logic::GPL3_580() {
 		_vm->playMovie(143);
 		_currMap = 10;
 		break;
+	default:
+		break;
 	}
 	_vm->playSound(27);
 	_statPlay = 581;
@@ -852,6 +856,8 @@ void Logic::GPL3_621() {
 			_vm->playMovie(202);
 			_currMap = 121;
 			break;
+		default:
+			break;
 		}
 		break;
 	case 0x445:
diff --git a/engines/kingdom/detection.cpp b/engines/kingdom/detection.cpp
index 2a0be2d50e..ffce8f5f11 100644
--- a/engines/kingdom/detection.cpp
+++ b/engines/kingdom/detection.cpp
@@ -22,6 +22,7 @@
 
 #include "base/plugins.h"
 
+#include "common/savefile.h"
 #include "engines/advancedDetector.h"
 #include "common/file.h"
 
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 7c41281698..98555c6eb0 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -23,14 +23,14 @@
 #include "common/scummsys.h"
 #include "common/translation.h"
 
+#include "common/savefile.h"
+#include "graphics/thumbnail.h"
 #include "common/config-manager.h"
 #include "common/error.h"
 #include "graphics/cursorman.h"
 #include "graphics/surface.h"
 #include "graphics/screen.h"
 #include "graphics/palette.h"
-#include "graphics/font.h"
-#include "graphics/fontman.h"
 #include "common/system.h"
 #include "image/iff.h"
 #include "engines/util.h"
@@ -42,6 +42,7 @@
 #include "audio/audiostream.h"
 #include "audio/mixer.h"
 #include "audio/decoders/raw.h"
+#include "gui/saveload.h"
 
 #include "kingdom/kingdom.h"
 
@@ -114,24 +115,22 @@ void KingdomGame::initVariables() {
 //	_quitFlag = 0;
 	_soundNumber = 0;
 	_pMovie = 0;
-//	_options = 0;
 	_oldTRS = 0;
 	_oldTLS = 0;
 	_oldIconsClosed = false;
 	_fstFwd = false;
 	_noMusic = false;
 	_mouseValue = 0;
-	_mapEx = 0;
+	_mapEx = false;
 	_loopFlag = false;
 	_lastSound = 0;
 	_keyActive = false;
 	_itemInhibit = false;
-//	_iconW = 0;
 	_gameMode = 0;
 	_fullScreen = false;
 	_frameStop = 0;
 	_daelonCntr = 0;
-	_sound = 0;
+	_sound = false;
 	_asMode = false;
 	for (int i = 0; i < 510; i++) {
 		_rezPointers[i] = nullptr;
@@ -139,10 +138,8 @@ void KingdomGame::initVariables() {
 	}
 	_mouseDebound = false;
 	_mouseButton = 0;
-//	_cursorActive = false;
 	_cursorDrawn = false;
 	_oldCursorPos = Common::Point(0, 0);
-//	_cursorShape = nullptr;
 	_oldCursorDef = 0;
 	_cursorDef = 0;
 	_cursorPos = Common::Point(0, 0);
diff --git a/engines/kingdom/kingdom.h b/engines/kingdom/kingdom.h
index 6efee8669d..8c06db64b3 100644
--- a/engines/kingdom/kingdom.h
+++ b/engines/kingdom/kingdom.h
@@ -25,29 +25,16 @@
 
 #include "common/system.h"
 #include "common/scummsys.h"
-#include "common/config-manager.h"
 #include "common/random.h"
 #include "engines/advancedDetector.h"
 #include "common/error.h"
 #include "engines/engine.h"
 
-#include "audio/audiostream.h"
-#include "audio/decoders/wave.h"
 #include "audio/mixer.h"
-#include "common/memstream.h"
-#include "common/events.h"
 #include "common/file.h"
-#include "common/queue.h"
-#include "common/system.h"
-#include "common/timer.h"
-#include "graphics/palette.h"
 #include "graphics/screen.h"
 #include "graphics/surface.h"
-#include "image/bmp.h"
 
-#include "common/savefile.h"
-#include "gui/saveload.h"
-#include "graphics/thumbnail.h"
 #include "common/serializer.h"
 
 #include "kingdom/console.h"
diff --git a/engines/kingdom/logic.cpp b/engines/kingdom/logic.cpp
index e35a555513..e212f522fd 100644
--- a/engines/kingdom/logic.cpp
+++ b/engines/kingdom/logic.cpp
@@ -31,11 +31,11 @@ Logic::Logic(KingdomGame* vm) : _vm(vm) {
 void Logic::initVariables() {
 	_healthOld = 0;
 	_health = 0;
-	_tideCntl = 0;
+	_tideCntl = false;
 	_statPlay = 0;
-	_spell3 = 0;
-	_spell2 = 0;
-	_spell1 = 0;
+	_spell3 = false;
+	_spell2 = false;
+	_spell1 = false;
 	_robberyNode = 0;
 	_rtnNode = 0;
 	_replay = false;
@@ -49,7 +49,7 @@ void Logic::initVariables() {
 	_nodeNum = 0;
 	_nextNode = 0;
 	_mapStat = 0;
-	_lastObs = 0;
+	_lastObs = false;
 	_lastObstacle = 0;
 	_help = false;
 	_eye = false;


Commit: 49080215b4da86c7e18cc683d69f50542fbec995
    https://github.com/scummvm/scummvm/commit/49080215b4da86c7e18cc683d69f50542fbec995
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add credits for Kingdom

Changed paths:
    devtools/credits.pl


diff --git a/devtools/credits.pl b/devtools/credits.pl
index 24cfd1ed3a..9610419c8f 100755
--- a/devtools/credits.pl
+++ b/devtools/credits.pl
@@ -808,6 +808,11 @@ begin_credits("Credits");
 				add_person("Eric Fry", "yuv422", "");
 			end_section();
 
+			begin_section("Kingdom");
+				add_person("Arnaud Boutonné", "Strangerke", "");
+				add_person("Thomas Fach-Pedersen", "madmoose", "");
+			end_section();
+
 			begin_section("Kyra");
 				add_person("Torbjörn Andersson", "eriktorbjorn", "VQA Player");
 				add_person("Oystein Eftevaag", "vinterstum", "");


Commit: aff19ae96b3c56806336ed04f332d6125b714346
    https://github.com/scummvm/scummvm/commit/aff19ae96b3c56806336ed04f332d6125b714346
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Implement preliminary MVE decoder.

Implements decoding for formats 0x6 and 0x10. Not bug free.

Changed paths:
    engines/kingdom/kingdom.cpp
    video/mve_decoder.cpp
    video/mve_decoder.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 98555c6eb0..8794d5ecba 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -43,6 +43,7 @@
 #include "audio/mixer.h"
 #include "audio/decoders/raw.h"
 #include "gui/saveload.h"
+#include "video/mve_decoder.h"
 
 #include "kingdom/kingdom.h"
 
@@ -280,10 +281,22 @@ void KingdomGame::titlePage() {
 	_sound = false;
 	fadeToBlack2();
 	playMovie(200);
+	if (shouldQuit()) {
+		return;
+	}
+
 	fadeToBlack2();
 	playMovie(206);
+	if (shouldQuit()) {
+		return;
+	}
+
 	fadeToBlack2();
 	playMovie(198);
+	if (shouldQuit()) {
+		return;
+	}
+
 	fadeToBlack2();
 }
 
@@ -475,6 +488,9 @@ void KingdomGame::playMovie(int movieNum) {
 	_mouseButton = 0;
 	_keyActive = false;
 	const Common::String path = Common::String::format("King%.3d.mve", movieNum);
+
+	warning("%s", path.c_str());
+
 	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
 	// That can be replaced by an error()
 
@@ -490,6 +506,51 @@ void KingdomGame::playMovie(int movieNum) {
 	MVE_ReleaseMem();
 	*/
 
+	bool skipMovie = false;
+	Video::MveDecoder *decoder = new Video::MveDecoder();
+	if (decoder->loadFile(path)) {
+		decoder->start();
+		while (!decoder->endOfVideo() && !skipMovie && !shouldQuit()) {
+			unsigned int delay = MIN(decoder->getTimeToNextFrame(), 10u);
+			g_system->delayMillis(delay);
+
+			const Graphics::Surface *frame = nullptr;
+
+			if (decoder->needsUpdate()) {
+				frame = decoder->decodeNextFrame();
+			}
+
+			if (frame) {
+				::Graphics::Surface *screen = g_system->lockScreen();
+				screen->copyRectToSurface(*frame, 0, 0, Common::Rect(frame->w, frame->h));
+				g_system->unlockScreen();
+
+				if (decoder->hasDirtyPalette()) {
+					g_system->getPaletteManager()->setPalette(decoder->getPalette(), 0, 256);
+				}
+
+				g_system->updateScreen();
+			}
+
+			Common::Event event;
+			while (g_system->getEventManager()->pollEvent(event)) {
+				switch (event.type) {
+				case Common::EVENT_QUIT:
+				case Common::EVENT_RETURN_TO_LAUNCHER:
+					_quit = true;
+					break;
+				case Common::EVENT_KEYDOWN:
+					if (event.kbd.keycode == Common::KEYCODE_ESCAPE) {
+						skipMovie = true;
+					}
+				default:
+					break;
+				}
+			}
+		}
+	}
+	delete decoder;
+
 	// This is hidden somewhere in RunMovieCtl callback...
 	// To be removed when MVE_RunMovie is implemented
 	showPic(300 + _pMovie);
diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index 2baa6ab438..7b3b94f6ea 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -20,128 +20,488 @@
  *
  */
 
-/* Based on ffmpeg code (commit 039ebaa5f39ef45444f3cc42ab2ff71b0e9a1161)
- *
- * Interplay MVE File Demuxer
- * Copyright (c) 2003 The FFmpeg project
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
 #include "video/mve_decoder.h"
+
+#include "audio/decoders/raw.h"
+
 #include "common/endian.h"
 #include "common/rect.h"
 #include "common/stream.h"
+#include "common/memstream.h"
 #include "common/system.h"
 #include "common/textconsole.h"
+#include "common/events.h"
+
 #include "graphics/surface.h"
+#include "graphics/palette.h"
 
 namespace Video {
 
-MveDecoder::MveDecoder() {
+MveDecoder::MveDecoder()
+	: _done(false),
+	  _s(nullptr),
+	  _dirtyPalette(false),
+	  _skipMapSize(0),
+	  _skipMap(nullptr),
+	  _decodingMapSize(0),
+	  _decodingMap(nullptr),
+	  _frameNumber(-1),
+	  _frameFormat(0),
+	  _frameSize(0),
+	  _frameData(nullptr),
+	  _audioStream(nullptr)
+{
+	for (int i = 0; i < 0x300; ++i)
+		_palette[i] = 0;
 }
 
 MveDecoder::~MveDecoder() {
 	close();
+	delete _audioStream;
+	delete[] _frameData;
+	delete[] _decodingMap;
+	delete[] _skipMap;
 }
 
-static const char signature[] = "Interplay MVE File\x1A\0\x1A";
+static const char signature[] = "Interplay MVE File\x1A";
 
 bool MveDecoder::loadStream(Common::SeekableReadStream *stream) {
 	close();
 
 	byte signature_buffer[sizeof(signature)];
-
 	stream->read(signature_buffer, sizeof(signature_buffer));
+	if (memcmp(signature_buffer, signature, sizeof(signature))) {
+		warning("MveDecoder::loadStream(): attempted to load non-MVE data");
+		return false;
+	}
+	_s = stream;
+
+	uint16_t h1 = _s->readUint16LE();
+	uint16_t h2 = _s->readUint16LE();
+	uint16_t h3 = _s->readUint16LE();
+
+	assert(h1 == 0x001a);
+	assert(h2 == 0x0100);
+	assert(h3 == 0x1133);
+
+	readPacketHeader();
+	while (!_done && _packetKind < 3) {
+		readNextPacket();
+	}
+
+	return true;
+}
+
+void MveDecoder::copyBlock(Graphics::Surface &dst, Common::MemoryReadStream &s, int block) {
+	int x = (block % _widthInBlocks) * 8;
+	int y = (block / _widthInBlocks) * 8;
+
+	byte *p = (byte*)dst.getBasePtr(x, y);
+
+	for (int i = 0; i != 8; ++i) {
+		s.read(p, 8);
+		p += dst.pitch;
+	}
+}
+
+void MveDecoder::copyBlock(Graphics::Surface &dst, Graphics::Surface &src, int block, int offset) {
+	int dx = (block % _widthInBlocks) * 8;
+	int dy = (block / _widthInBlocks) * 8;
+
+	int sx = dx + offset % _width;
+	int sy = dy + offset / _width;
 
-	while (memcmp(signature_buffer, signature, sizeof(signature))) {
-		memmove(signature_buffer, signature_buffer + 1, sizeof(signature_buffer) - 1);
-		signature_buffer[sizeof(signature_buffer) - 1] = stream->readByte();
-		if (stream->eos()) {
-			warning("MveDecoder::loadStream(): attempted to load non-MVE data");
+	byte *dp = (byte*)dst.getBasePtr(dx, dy);
+	byte *sp = (byte*)src.getBasePtr(sx, sy);
 
-			return false;
+	for (int i = 0; i != 8; ++i) {
+		memmove(dp, sp, 8);
+		dp += dst.pitch;
+		sp += src.pitch;
+	}
+}
+
+void MveDecoder::copyBlock(Graphics::Surface &dst, Graphics::Surface &src, int dx, int dy, int off_x, int off_y) {
+	int sx = dx + + off_x;
+	int sy = dy + + off_y;
+
+	byte *dp = (byte*)dst.getBasePtr(dx, dy);
+	byte *sp = (byte*)src.getBasePtr(sx, sy);
+
+	for (int i = 0; i != 8; ++i) {
+		memmove(dp, sp, 8);
+		dp += dst.pitch;
+		sp += src.pitch;
+	}
+}
+
+void MveDecoder::decodeFormat6() {
+	_decodingMapSize = _widthInBlocks * _heightInBlocks * 2;
+	_decodingMap     = _frameData + 14;
+
+	if (_frameNumber > 1) {
+		_decodeSurface1.copyFrom(_decodeSurface0);
+	}
+	if (_frameNumber > 0) {
+		_decodeSurface0.copyFrom(_frameSurface);
+	}
+
+	Common::MemoryReadStream opStream = Common::MemoryReadStream(_decodingMap, _decodingMapSize);
+	Common::MemoryReadStream frameStream = Common::MemoryReadStream(_frameData + _decodingMapSize + 14, _frameSize);
+
+	// Pass 1
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		if (opStream.readUint16LE() == 0) {
+			copyBlock(_frameSurface, frameStream, b);
+		} else if (_frameNumber > 1) {
+			copyBlock(_frameSurface, _decodeSurface1, b);
 		}
 	}
 
-#if 0
-	/* initialize private context members */
-	ipmovie->video_pts = ipmovie->audio_frame_count = 0;
-	ipmovie->audio_chunk_offset = ipmovie->video_chunk_offset =
-	ipmovie->decode_map_chunk_offset = ipmovie->skip_map_chunk_offset = 0;
-	ipmovie->decode_map_chunk_size = ipmovie->video_chunk_size =
-	ipmovie->skip_map_chunk_size = 0;
-	ipmovie->send_buffer = ipmovie->frame_format = 0;
-
-	/* on the first read, this will position the stream at the first chunk */
-	ipmovie->next_chunk_offset = avio_tell(pb) + 4;
-
-	for (i = 0; i < 256; i++)
-		ipmovie->palette[i] = 0xFFU << 24;
-
-	/* process the first chunk which should be CHUNK_INIT_VIDEO */
-	if (process_ipmovie_chunk(ipmovie, pb, &pkt) != CHUNK_INIT_VIDEO)
-		return AVERROR_INVALIDDATA;
-
-	/* peek ahead to the next chunk-- if it is an init audio chunk, process
-	* it; if it is the first video chunk, this is a silent file */
-	if (avio_read(pb, chunk_preamble, CHUNK_PREAMBLE_SIZE) !=
-			CHUNK_PREAMBLE_SIZE)
-		return AVERROR(EIO);
-	chunk_type = AV_RL16(&chunk_preamble[2]);
-	avio_seek(pb, -CHUNK_PREAMBLE_SIZE, SEEK_CUR);
-
-	if (chunk_type == CHUNK_VIDEO)
-		ipmovie->audio_type = AV_CODEC_ID_NONE;  /* no audio */
-	else if (process_ipmovie_chunk(ipmovie, pb, &pkt) != CHUNK_INIT_AUDIO)
-		return AVERROR_INVALIDDATA;
-
-	/* initialize the stream decoders */
-	st = avformat_new_stream(s, NULL);
-	if (!st)
-		return AVERROR(ENOMEM);
-	avpriv_set_pts_info(st, 63, 1, 1000000);
-	ipmovie->video_stream_index = st->index;
-	st->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;
-	st->codecpar->codec_id = AV_CODEC_ID_INTERPLAY_VIDEO;
-	st->codecpar->codec_tag = 0;  /* no fourcc */
-	st->codecpar->width = ipmovie->video_width;
-	st->codecpar->height = ipmovie->video_height;
-	st->codecpar->bits_per_coded_sample = ipmovie->video_bpp;
-
-	if (ipmovie->audio_type) {
-		return init_audio(s);
-	} else
-		s->ctx_flags |= AVFMTCTX_NOHEADER;
+	// Pass 2
+	opStream.seek(0);
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		uint16_t op = opStream.readUint16LE();
+		int offset = int(op & 0x7fff) - 0x4000;
+		if (op & 0x8000) {
+			if (_frameNumber > 0) {
+				copyBlock(_frameSurface, _decodeSurface0, b, offset);
+			}
+		} else if (op != 0) {
+			copyBlock(_frameSurface, _frameSurface, b, offset);
+		}
 	}
 
-#endif
+	_decodingMap = nullptr;
+}
+
+void MveDecoder::decodeFormat10() {
+	MveSkipStream skipStream = MveSkipStream(_skipMap, _skipMapSize);
+	Common::MemoryReadStream opStream = Common::MemoryReadStream(_decodingMap, _decodingMapSize);
+	Common::MemoryReadStream frameStream = Common::MemoryReadStream(_frameData + 14, _frameSize - 14);
 
-	return true;
+	// Pass 1
+	opStream.seek(0);
+	skipStream.reset();
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		if (skipStream.skip()) continue;
+		uint16_t op = opStream.readUint16LE();
+		if (op == 0) {
+			copyBlock(_decodeSurface0, frameStream, b);
+		}
+	}
+
+	// Pass 2
+	opStream.seek(0);
+	skipStream.reset();
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		if (skipStream.skip()) continue;
+		uint16_t op = opStream.readUint16LE();
+		if (op != 0) {
+			Graphics::Surface &src = (op & 0x8000) ? _decodeSurface1 : _decodeSurface0;
+			int offset = int(op & 0x7fff) - 0x4000;
+			copyBlock(_decodeSurface0, src, b, offset);
+		}
+	}
+
+	// Pass 3
+	skipStream.reset();
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		if (skipStream.skip()) continue;
+		copyBlock(_frameSurface, _decodeSurface0, b);
+	}
+
+	Graphics::Surface t = _decodeSurface0;
+	_decodeSurface0 = _decodeSurface1;
+	_decodeSurface1 = t;
+}
+
+void MveDecoder::readPacketHeader() {
+	_packetLen  = _s->readUint16LE();
+	_packetKind = _s->readUint16LE();
+
+	/*
+	switch (_packetKind) {
+		case 0:
+			warning("initialize audio");
+			break;
+		case 1:
+			warning("audio");
+			break;
+		case 2:
+			warning("initialize video");
+			break;
+		case 3:
+			warning("video");
+			break;
+		case 4:
+			warning("shutdown");
+			break;
+		case 5:
+			warning("end chunk");
+			break;
+	}
+	*/
+}
+
+void MveDecoder::readNextPacket() {
+	bool packetDone = false;
+	while (!_done && !packetDone) {
+		uint16_t opLen = _s->readUint16LE();
+		uint16_t opKind = _s->readUint16BE();
+
+		switch (opKind) {
+			case 0x0000:
+			{
+				_done = true;
+				assert(opLen == 0);
+				break;
+			}
+			case 0x0100:
+			{
+				packetDone = true;
+				assert(opLen == 0);
+				readPacketHeader();
+				break;
+			}
+			case 0x0200: // create timer
+			{
+				assert(opLen == 6);
+				uint32_t rate = _s->readUint32LE();
+				uint16_t subdiv = _s->readUint16LE();
+				_frameRate = Common::Rational(1000000, rate * subdiv);
+				break;
+			}
+			case 0x0300: // init audio
+			{
+				assert(opLen == 8);
+				uint16_t unk = _s->readUint16LE();
+				uint16_t flags = _s->readUint16LE();
+				uint16_t sampleRate = _s->readUint16LE();
+				uint16_t bufLen = _s->readUint16LE();
+
+				/*
+				warning("\t\tAudio: %dHz %s %s",
+					sampleRate,
+					(flags & 1) == 0 ? "mono" : "stereo",
+					(flags & 2) == 0 ? "8-bit" : "16-bit"
+				);
+				*/
+
+				assert((flags & 1) == 0);
+				assert((flags & 2) == 0);
+
+				_audioStream = Audio::makeQueuingAudioStream(sampleRate, (flags & 2) != 0);
+				addTrack(new MveAudioTrack(this));
+
+				break;
+			}
+			case 0x0400: // send audio
+			{
+				assert(opLen == 0);
+				break;
+			}
+			case 0x0502: // init video buffers
+			{
+				assert(opLen == 8);
+
+				uint16_t width = _s->readUint16LE();
+				uint16_t height = _s->readUint16LE();
+				uint16_t count = _s->readUint16LE();
+				uint16_t trueColor = _s->readUint16LE();
+
+				_widthInBlocks = width;
+				_heightInBlocks = height;
+
+				_width = 8 * width;
+				_height = 8 * height;
+
+				_decodeSurface0.create(_width, _height, Graphics::PixelFormat::createFormatCLUT8());
+				_decodeSurface0.fillRect(Common::Rect(_width, _height), 0);
+
+				_decodeSurface1.create(_width, _height, Graphics::PixelFormat::createFormatCLUT8());
+				_decodeSurface1.fillRect(Common::Rect(_width, _height), 0);
+
+				_frameSurface.create(_width, _height, Graphics::PixelFormat::createFormatCLUT8());
+				_frameSurface.fillRect(Common::Rect(_width, _height), 0);
+
+				addTrack(new MveVideoTrack(this));
+
+				break;
+			}
+			case 0x0600:
+			{
+				_frameFormat = 0x06;
+				delete[] _frameData;
+				_frameData = new byte[opLen];
+				_frameSize = opLen;
+				_s->read(_frameData, _frameSize);
+
+				break;
+			}
+			case 0x0701: // send video
+			{
+				assert(opLen == 6);
+				uint16_t palStart = _s->readUint16LE();
+				uint16_t palCount = _s->readUint16LE();
+				uint16_t unk = _s->readUint16LE();
+
+				_frameNumber += 1;
+
+				switch (_frameFormat) {
+					case 0x06:
+						decodeFormat6();
+						break;
+					case 0x10:
+						decodeFormat10();
+						break;
+					default:
+						break;
+				}
+
+				break;
+			}
+			case 0x0800: // audio frame
+			{
+				uint16_t seq = _s->readUint16LE();
+				uint16_t mask = _s->readUint16LE();
+				uint16_t len = _s->readUint16LE();
+
+				assert(opLen == len + 6);
+				assert(_audioStream);
+
+				byte *audioFrame = new byte[len];
+				_s->read(audioFrame, len);
+				_audioStream->queueBuffer(audioFrame, len, DisposeAfterUse::YES, Audio::FLAG_UNSIGNED);
+
+				break;
+			}
+			case 0x0900: // audio frame (silent)
+			{
+				assert(opLen == 6);
+				uint16_t seq = _s->readUint16LE();
+				uint16_t mask = _s->readUint16LE();
+				uint16_t len = _s->readUint16LE();
+
+				break;
+			}
+			case 0x0a00: // set video mode
+			{
+				assert(opLen == 6);
+				uint16_t width = _s->readUint16LE();
+				uint16_t height = _s->readUint16LE();
+				uint16_t flags = _s->readUint16LE();
+
+				break;
+			}
+			case 0x0c00:
+			{
+				uint16_t palStart = _s->readUint16LE();
+				uint16_t palCount = _s->readUint16LE();
+
+				assert(opLen >= 3 * palCount + 2);
+
+				for (int i = palStart; i < palStart + palCount; ++i) {
+					byte r = _s->readByte();
+					byte g = _s->readByte();
+					byte b = _s->readByte();
+
+					_palette[3*i+0] = (r << 2) | r;
+					_palette[3*i+1] = (g << 2) | g;
+					_palette[3*i+2] = (b << 2) | b;
+				}
+				if (palCount & 1) {
+					_s->skip(1);
+				}
+
+				_dirtyPalette = true;
+
+				break;
+			}
+			case 0x0e00:
+			{
+				// TODO: Preallocate or keep existing buffer
+				delete[] _skipMap;
+				_skipMap = new byte[opLen];
+				_skipMapSize = opLen;
+				_s->read(_skipMap, _skipMapSize);
+				break;
+			}
+			case 0x0f00:
+			{
+				// TODO: Preallocate or keep existing buffer
+				delete[] _decodingMap;
+				_decodingMap = new byte[opLen];
+				_decodingMapSize = opLen;
+				_s->read(_decodingMap, _decodingMapSize);
+				break;
+			}
+			case 0x1000:
+			{
+				// TODO: Preallocate or keep existing buffer
+				_frameFormat = 0x10;
+				delete[] _frameData;
+				_frameData = new byte[opLen];
+				_frameSize = opLen;
+				_s->read(_frameData, _frameSize);
+
+				break;
+			}
+			default:
+				error("Unknown opcode %04x", opKind);
+				_s->skip(opLen);
+				break;
+		}
+	}
+}
+
+MveDecoder::MveVideoTrack::MveVideoTrack(MveDecoder *decoder) : _decoder(decoder) {
+}
+
+bool MveDecoder::MveVideoTrack::endOfTrack() const {
+	return _decoder->_done;
+}
+
+uint16 MveDecoder::MveVideoTrack::getWidth() const {
+	return _decoder->getWidth();
+}
+
+uint16 MveDecoder::MveVideoTrack::getHeight() const {
+	return _decoder->getHeight();
+}
+
+Graphics::PixelFormat MveDecoder::MveVideoTrack::getPixelFormat() const {
+	return _decoder->getPixelFormat();
+}
+
+int MveDecoder::MveVideoTrack::getCurFrame() const {
+	return _decoder->_frameNumber;
+}
+
+const Graphics::Surface *MveDecoder::MveVideoTrack::decodeNextFrame() {
+	return &_decoder->_frameSurface;
+}
+
+const byte *MveDecoder::MveVideoTrack::getPalette() const {
+	return _decoder->_palette;
+}
+
+bool MveDecoder::MveVideoTrack::hasDirtyPalette() const {
+	return _decoder->_dirtyPalette;
 }
 
-const Common::List<Common::Rect> *MveDecoder::getDirtyRects() const {
-	return 0;
+Common::Rational MveDecoder::MveVideoTrack::getFrameRate() const {
+	return _decoder->getFrameRate();
 }
 
-void MveDecoder::clearDirtyRects() {
+MveDecoder::MveAudioTrack::MveAudioTrack(MveDecoder *decoder) :
+	AudioTrack(Audio::Mixer::kPlainSoundType),
+	_decoder(decoder)
+{
 }
 
-void MveDecoder::copyDirtyRectsToBuffer(uint8 *dst, uint pitch) {
+Audio::AudioStream *MveDecoder::MveAudioTrack::getAudioStream() const {
+	return _decoder->_audioStream;
 }
 
 } // End of namespace Video
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
index cae4a90589..fc8d016c03 100644
--- a/video/mve_decoder.h
+++ b/video/mve_decoder.h
@@ -23,9 +23,12 @@
 #ifndef VIDEO_MVEDECODER_H
 #define VIDEO_MVEDECODER_H
 
+#include "audio/audiostream.h"
 #include "video/video_decoder.h"
+#include "graphics/surface.h"
 #include "common/list.h"
 #include "common/rect.h"
+#include "common/memstream.h"
 
 namespace Common {
 class SeekableReadStream;
@@ -33,7 +36,6 @@ class SeekableReadStream;
 
 namespace Graphics {
 struct PixelFormat;
-struct Surface;
 }
 
 namespace Video {
@@ -45,15 +47,115 @@ namespace Video {
  *  - kingdom
  */
 class MveDecoder : public VideoDecoder {
+	bool _done;
+	Common::SeekableReadStream *_s;
+
+	uint16_t _packetLen;
+	uint16_t _packetKind;
+
+	Graphics::Surface _decodeSurface0;
+	Graphics::Surface _decodeSurface1;
+	Graphics::Surface _frameSurface;
+
+	uint16_t _widthInBlocks;
+	uint16_t _heightInBlocks;
+
+	uint16_t _width;
+	uint16_t _height;
+
+	Common::Rational _frameRate;
+
+	bool      _dirtyPalette;
+	byte      _palette[0x300];
+
+	uint16_t  _skipMapSize;
+	byte     *_skipMap;
+
+	uint16_t  _decodingMapSize;
+	byte     *_decodingMap;
+
+	int       _frameNumber;
+	byte      _frameFormat;
+	uint16_t  _frameSize;
+	byte     *_frameData;
+
+	Audio::QueuingAudioStream *_audioStream;
+
+	void readPacketHeader();
+	void copyBlock(Graphics::Surface &dst, Common::MemoryReadStream &s, int block);
+	void copyBlock(Graphics::Surface &dst, Graphics::Surface &src, int block, int offset = 0);
+	void copyBlock(Graphics::Surface &dst, Graphics::Surface &src, int dx, int dy, int off_x, int off_y);
+
+	void decodeFormat6();
+	void decodeFormat10();
+
+	class MveVideoTrack : public FixedRateVideoTrack {
+		MveDecoder *_decoder;
+	public:
+		MveVideoTrack(MveDecoder *decoder);
+
+		bool endOfTrack() const;
+
+		uint16 getWidth() const;
+		uint16 getHeight() const;
+
+		Graphics::PixelFormat getPixelFormat() const;
+
+		int getCurFrame() const;
+		// int getFrameCount() const;
+
+		const Graphics::Surface *decodeNextFrame();
+		const byte *getPalette() const;
+		bool hasDirtyPalette() const;
+
+	protected:
+		Common::Rational getFrameRate() const;
+	};
+
+	class MveAudioTrack : public AudioTrack {
+		MveDecoder *_decoder;
+	public:
+		MveAudioTrack(MveDecoder *decoder);
+
+		Audio::AudioStream *getAudioStream() const;
+	};
+
+	class MveSkipStream {
+		Common::MemoryReadStream s;
+		uint16_t queue;
+	public:
+		MveSkipStream(byte *p, size_t sz)
+			: s(p, sz), queue(0x8000)
+		{}
+
+		void reset() {
+			s.seek(0);
+			queue = 0x8000;
+		}
+
+		bool skip() {
+			if (queue == 0x8000) {
+				queue = s.readUint16LE();
+				assert(queue != 0);
+			}
+			bool r = (queue & 0x8000) == 0;
+			queue <<= 1;
+			return r;
+		}
+	};
+
 public:
 	MveDecoder();
 	virtual ~MveDecoder();
 
-	virtual bool loadStream(Common::SeekableReadStream *stream);
+	bool loadStream(Common::SeekableReadStream *stream);
+
+	// const Common::List<Common::Rect> *getDirtyRects() const;
+	// void clearDirtyRects();
+	// void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
 
-	const Common::List<Common::Rect> *getDirtyRects() const;
-	void clearDirtyRects();
-	void copyDirtyRectsToBuffer(uint8 *dst, uint pitch);
+	Common::Rational getFrameRate() { return _frameRate; }
+	void readNextPacket();
 };
 
 } // End of namespace Video


Commit: 7c07260ab8661af611eb7c8faa2279ead699812b
    https://github.com/scummvm/scummvm/commit/7c07260ab8661af611eb7c8faa2279ead699812b
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Replace uint16_t with uint16 in MVE decoder

Changed paths:
    video/mve_decoder.cpp
    video/mve_decoder.h


diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index 7b3b94f6ea..86c339432f 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -76,9 +76,9 @@ bool MveDecoder::loadStream(Common::SeekableReadStream *stream) {
 	}
 	_s = stream;
 
-	uint16_t h1 = _s->readUint16LE();
-	uint16_t h2 = _s->readUint16LE();
-	uint16_t h3 = _s->readUint16LE();
+	uint16 h1 = _s->readUint16LE();
+	uint16 h2 = _s->readUint16LE();
+	uint16 h3 = _s->readUint16LE();
 
 	assert(h1 == 0x001a);
 	assert(h2 == 0x0100);
@@ -161,7 +161,7 @@ void MveDecoder::decodeFormat6() {
 	// Pass 2
 	opStream.seek(0);
 	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
-		uint16_t op = opStream.readUint16LE();
+		uint16 op = opStream.readUint16LE();
 		int offset = int(op & 0x7fff) - 0x4000;
 		if (op & 0x8000) {
 			if (_frameNumber > 0) {
@@ -185,7 +185,7 @@ void MveDecoder::decodeFormat10() {
 	skipStream.reset();
 	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
 		if (skipStream.skip()) continue;
-		uint16_t op = opStream.readUint16LE();
+		uint16 op = opStream.readUint16LE();
 		if (op == 0) {
 			copyBlock(_decodeSurface0, frameStream, b);
 		}
@@ -196,7 +196,7 @@ void MveDecoder::decodeFormat10() {
 	skipStream.reset();
 	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
 		if (skipStream.skip()) continue;
-		uint16_t op = opStream.readUint16LE();
+		uint16 op = opStream.readUint16LE();
 		if (op != 0) {
 			Graphics::Surface &src = (op & 0x8000) ? _decodeSurface1 : _decodeSurface0;
 			int offset = int(op & 0x7fff) - 0x4000;
@@ -247,8 +247,8 @@ void MveDecoder::readPacketHeader() {
 void MveDecoder::readNextPacket() {
 	bool packetDone = false;
 	while (!_done && !packetDone) {
-		uint16_t opLen = _s->readUint16LE();
-		uint16_t opKind = _s->readUint16BE();
+		uint16 opLen = _s->readUint16LE();
+		uint16 opKind = _s->readUint16BE();
 
 		switch (opKind) {
 			case 0x0000:
@@ -267,18 +267,18 @@ void MveDecoder::readNextPacket() {
 			case 0x0200: // create timer
 			{
 				assert(opLen == 6);
-				uint32_t rate = _s->readUint32LE();
-				uint16_t subdiv = _s->readUint16LE();
+				uint32 rate = _s->readUint32LE();
+				uint16 subdiv = _s->readUint16LE();
 				_frameRate = Common::Rational(1000000, rate * subdiv);
 				break;
 			}
 			case 0x0300: // init audio
 			{
 				assert(opLen == 8);
-				uint16_t unk = _s->readUint16LE();
-				uint16_t flags = _s->readUint16LE();
-				uint16_t sampleRate = _s->readUint16LE();
-				uint16_t bufLen = _s->readUint16LE();
+				uint16 unk = _s->readUint16LE();
+				uint16 flags = _s->readUint16LE();
+				uint16 sampleRate = _s->readUint16LE();
+				uint16 bufLen = _s->readUint16LE();
 
 				/*
 				warning("\t\tAudio: %dHz %s %s",
@@ -305,10 +305,10 @@ void MveDecoder::readNextPacket() {
 			{
 				assert(opLen == 8);
 
-				uint16_t width = _s->readUint16LE();
-				uint16_t height = _s->readUint16LE();
-				uint16_t count = _s->readUint16LE();
-				uint16_t trueColor = _s->readUint16LE();
+				uint16 width = _s->readUint16LE();
+				uint16 height = _s->readUint16LE();
+				uint16 count = _s->readUint16LE();
+				uint16 trueColor = _s->readUint16LE();
 
 				_widthInBlocks = width;
 				_heightInBlocks = height;
@@ -342,9 +342,9 @@ void MveDecoder::readNextPacket() {
 			case 0x0701: // send video
 			{
 				assert(opLen == 6);
-				uint16_t palStart = _s->readUint16LE();
-				uint16_t palCount = _s->readUint16LE();
-				uint16_t unk = _s->readUint16LE();
+				uint16 palStart = _s->readUint16LE();
+				uint16 palCount = _s->readUint16LE();
+				uint16 unk = _s->readUint16LE();
 
 				_frameNumber += 1;
 
@@ -363,9 +363,9 @@ void MveDecoder::readNextPacket() {
 			}
 			case 0x0800: // audio frame
 			{
-				uint16_t seq = _s->readUint16LE();
-				uint16_t mask = _s->readUint16LE();
-				uint16_t len = _s->readUint16LE();
+				uint16 seq = _s->readUint16LE();
+				uint16 mask = _s->readUint16LE();
+				uint16 len = _s->readUint16LE();
 
 				assert(opLen == len + 6);
 				assert(_audioStream);
@@ -379,25 +379,25 @@ void MveDecoder::readNextPacket() {
 			case 0x0900: // audio frame (silent)
 			{
 				assert(opLen == 6);
-				uint16_t seq = _s->readUint16LE();
-				uint16_t mask = _s->readUint16LE();
-				uint16_t len = _s->readUint16LE();
+				uint16 seq = _s->readUint16LE();
+				uint16 mask = _s->readUint16LE();
+				uint16 len = _s->readUint16LE();
 
 				break;
 			}
 			case 0x0a00: // set video mode
 			{
 				assert(opLen == 6);
-				uint16_t width = _s->readUint16LE();
-				uint16_t height = _s->readUint16LE();
-				uint16_t flags = _s->readUint16LE();
+				uint16 width = _s->readUint16LE();
+				uint16 height = _s->readUint16LE();
+				uint16 flags = _s->readUint16LE();
 
 				break;
 			}
 			case 0x0c00:
 			{
-				uint16_t palStart = _s->readUint16LE();
-				uint16_t palCount = _s->readUint16LE();
+				uint16 palStart = _s->readUint16LE();
+				uint16 palCount = _s->readUint16LE();
 
 				assert(opLen >= 3 * palCount + 2);
 
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
index fc8d016c03..e00940d71a 100644
--- a/video/mve_decoder.h
+++ b/video/mve_decoder.h
@@ -50,33 +50,33 @@ class MveDecoder : public VideoDecoder {
 	bool _done;
 	Common::SeekableReadStream *_s;
 
-	uint16_t _packetLen;
-	uint16_t _packetKind;
+	uint16 _packetLen;
+	uint16 _packetKind;
 
 	Graphics::Surface _decodeSurface0;
 	Graphics::Surface _decodeSurface1;
 	Graphics::Surface _frameSurface;
 
-	uint16_t _widthInBlocks;
-	uint16_t _heightInBlocks;
+	uint16 _widthInBlocks;
+	uint16 _heightInBlocks;
 
-	uint16_t _width;
-	uint16_t _height;
+	uint16 _width;
+	uint16 _height;
 
 	Common::Rational _frameRate;
 
 	bool      _dirtyPalette;
 	byte      _palette[0x300];
 
-	uint16_t  _skipMapSize;
+	uint16    _skipMapSize;
 	byte     *_skipMap;
 
-	uint16_t  _decodingMapSize;
+	uint16    _decodingMapSize;
 	byte     *_decodingMap;
 
 	int       _frameNumber;
 	byte      _frameFormat;
-	uint16_t  _frameSize;
+	uint16    _frameSize;
 	byte     *_frameData;
 
 	Audio::QueuingAudioStream *_audioStream;
@@ -122,7 +122,7 @@ class MveDecoder : public VideoDecoder {
 
 	class MveSkipStream {
 		Common::MemoryReadStream s;
-		uint16_t queue;
+		uint16 queue;
 	public:
 		MveSkipStream(byte *p, size_t sz)
 			: s(p, sz), queue(0x8000)


Commit: e091dab0aecaf803848034cff5814465cb82e41e
    https://github.com/scummvm/scummvm/commit/e091dab0aecaf803848034cff5814465cb82e41e
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Frames can span multiple chunks

Changed paths:
    video/mve_decoder.cpp
    video/mve_decoder.h


diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index 86c339432f..e1532cb909 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -46,7 +46,6 @@ MveDecoder::MveDecoder()
 	  _decodingMapSize(0),
 	  _decodingMap(nullptr),
 	  _frameNumber(-1),
-	  _frameFormat(0),
 	  _frameSize(0),
 	  _frameData(nullptr),
 	  _audioStream(nullptr)
@@ -245,8 +244,8 @@ void MveDecoder::readPacketHeader() {
 }
 
 void MveDecoder::readNextPacket() {
-	bool packetDone = false;
-	while (!_done && !packetDone) {
+	bool frameDone = false;
+	while (!_done && !frameDone) {
 		uint16 opLen = _s->readUint16LE();
 		uint16 opKind = _s->readUint16BE();
 
@@ -259,7 +258,6 @@ void MveDecoder::readNextPacket() {
 			}
 			case 0x0100:
 			{
-				packetDone = true;
 				assert(opLen == 0);
 				readPacketHeader();
 				break;
@@ -331,12 +329,13 @@ void MveDecoder::readNextPacket() {
 			}
 			case 0x0600:
 			{
-				_frameFormat = 0x06;
 				delete[] _frameData;
 				_frameData = new byte[opLen];
 				_frameSize = opLen;
 				_s->read(_frameData, _frameSize);
 
+				decodeFormat6();
+
 				break;
 			}
 			case 0x0701: // send video
@@ -347,17 +346,7 @@ void MveDecoder::readNextPacket() {
 				uint16 unk = _s->readUint16LE();
 
 				_frameNumber += 1;
-
-				switch (_frameFormat) {
-					case 0x06:
-						decodeFormat6();
-						break;
-					case 0x10:
-						decodeFormat10();
-						break;
-					default:
-						break;
-				}
+				frameDone = true;
 
 				break;
 			}
@@ -439,12 +428,13 @@ void MveDecoder::readNextPacket() {
 			case 0x1000:
 			{
 				// TODO: Preallocate or keep existing buffer
-				_frameFormat = 0x10;
 				delete[] _frameData;
 				_frameData = new byte[opLen];
 				_frameSize = opLen;
 				_s->read(_frameData, _frameSize);
 
+				decodeFormat10();
+
 				break;
 			}
 			default:
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
index e00940d71a..4942e6445d 100644
--- a/video/mve_decoder.h
+++ b/video/mve_decoder.h
@@ -75,7 +75,6 @@ class MveDecoder : public VideoDecoder {
 	byte     *_decodingMap;
 
 	int       _frameNumber;
-	byte      _frameFormat;
 	uint16    _frameSize;
 	byte     *_frameData;
 


Commit: 03c2a973e43dace2e00d31c3353dbd43908d04c2
    https://github.com/scummvm/scummvm/commit/03c2a973e43dace2e00d31c3353dbd43908d04c2
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix MVE video format 6 decoding

Changed paths:
    video/mve_decoder.cpp


diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index e1532cb909..56079eed7b 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -138,22 +138,15 @@ void MveDecoder::decodeFormat6() {
 	_decodingMapSize = _widthInBlocks * _heightInBlocks * 2;
 	_decodingMap     = _frameData + 14;
 
-	if (_frameNumber > 1) {
-		_decodeSurface1.copyFrom(_decodeSurface0);
-	}
-	if (_frameNumber > 0) {
-		_decodeSurface0.copyFrom(_frameSurface);
-	}
-
 	Common::MemoryReadStream opStream = Common::MemoryReadStream(_decodingMap, _decodingMapSize);
 	Common::MemoryReadStream frameStream = Common::MemoryReadStream(_frameData + _decodingMapSize + 14, _frameSize);
 
 	// Pass 1
+	opStream.seek(0);
 	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
-		if (opStream.readUint16LE() == 0) {
-			copyBlock(_frameSurface, frameStream, b);
-		} else if (_frameNumber > 1) {
-			copyBlock(_frameSurface, _decodeSurface1, b);
+		uint16 op = opStream.readUint16LE();
+		if (op == 0) {
+			copyBlock(_decodeSurface0, frameStream, b);
 		}
 	}
 
@@ -161,16 +154,22 @@ void MveDecoder::decodeFormat6() {
 	opStream.seek(0);
 	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
 		uint16 op = opStream.readUint16LE();
-		int offset = int(op & 0x7fff) - 0x4000;
-		if (op & 0x8000) {
-			if (_frameNumber > 0) {
-				copyBlock(_frameSurface, _decodeSurface0, b, offset);
-			}
-		} else if (op != 0) {
-			copyBlock(_frameSurface, _frameSurface, b, offset);
+		if (op != 0) {
+			Graphics::Surface &src = (op & 0x8000) ? _decodeSurface1 : _decodeSurface0;
+			int offset = int(op & 0x7fff) - 0x4000;
+			copyBlock(_decodeSurface0, src, b, offset);
 		}
 	}
 
+	// Pass 3
+	for (int b = 0; b != _widthInBlocks * _heightInBlocks; ++b) {
+		copyBlock(_frameSurface, _decodeSurface0, b);
+	}
+
+	Graphics::Surface t = _decodeSurface0;
+	_decodeSurface0 = _decodeSurface1;
+	_decodeSurface1 = t;
+
 	_decodingMap = nullptr;
 }
 


Commit: 25ed22d19247f07b543e356414fb48805e2b8af9
    https://github.com/scummvm/scummvm/commit/25ed22d19247f07b543e356414fb48805e2b8af9
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Make audio track selectable in MVE decoder

Changed paths:
    video/mve_decoder.cpp
    video/mve_decoder.h


diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index 56079eed7b..abcdde4e35 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -48,6 +48,7 @@ MveDecoder::MveDecoder()
 	  _frameNumber(-1),
 	  _frameSize(0),
 	  _frameData(nullptr),
+	  _audioTrack(0),
 	  _audioStream(nullptr)
 {
 	for (int i = 0; i < 0x300; ++i)
@@ -91,6 +92,11 @@ bool MveDecoder::loadStream(Common::SeekableReadStream *stream) {
 	return true;
 }
 
+void MveDecoder::setAudioTrack(int track) {
+	assert(track >= 0 && track < 16);
+	_audioTrack= track;
+}
+
 void MveDecoder::copyBlock(Graphics::Surface &dst, Common::MemoryReadStream &s, int block) {
 	int x = (block % _widthInBlocks) * 8;
 	int y = (block / _widthInBlocks) * 8;
@@ -358,9 +364,13 @@ void MveDecoder::readNextPacket() {
 				assert(opLen == len + 6);
 				assert(_audioStream);
 
-				byte *audioFrame = new byte[len];
-				_s->read(audioFrame, len);
-				_audioStream->queueBuffer(audioFrame, len, DisposeAfterUse::YES, Audio::FLAG_UNSIGNED);
+				if (mask & (1 << _audioTrack)) {
+					byte *audioFrame = new byte[len];
+					_s->read(audioFrame, len);
+					_audioStream->queueBuffer(audioFrame, len, DisposeAfterUse::YES, Audio::FLAG_UNSIGNED);
+				} else {
+					_s->skip(len);
+				}
 
 				break;
 			}
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
index 4942e6445d..8596935239 100644
--- a/video/mve_decoder.h
+++ b/video/mve_decoder.h
@@ -78,6 +78,7 @@ class MveDecoder : public VideoDecoder {
 	uint16    _frameSize;
 	byte     *_frameData;
 
+	int _audioTrack;
 	Audio::QueuingAudioStream *_audioStream;
 
 	void readPacketHeader();
@@ -148,6 +149,7 @@ public:
 	virtual ~MveDecoder();
 
 	bool loadStream(Common::SeekableReadStream *stream);
+	void setAudioTrack(int track);
 
 	// const Common::List<Common::Rect> *getDirtyRects() const;
 	// void clearDirtyRects();


Commit: 9310bd99e43ec3b7e20e4cea98fa6bd8b1ef211c
    https://github.com/scummvm/scummvm/commit/9310bd99e43ec3b7e20e4cea98fa6bd8b1ef211c
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix readMouse clobbering quit events

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 8794d5ecba..c368e7cecc 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -974,18 +974,10 @@ void KingdomGame::eraseCursor() {
 }
 
 void KingdomGame::readMouse() {
-	_mouseButton = 0;
+	Common::EventManager *eventManager = g_system->getEventManager();
 
-	Common::Event event;
-	g_system->getEventManager()->pollEvent(event);
-	if (event.type == Common::EVENT_MOUSEMOVE)
-		_cursorPos = event.mouse;
-	if (event.type == Common::EVENT_LBUTTONUP)
-		_mouseButton |= 1;
-	if (event.type == Common::EVENT_RBUTTONUP)
-		_mouseButton |= 2;
-
-	g_system->getEventManager()->pushEvent(event);
+	_mouseButton = eventManager->getButtonState();
+	_cursorPos   = eventManager->getMousePos();
 }
 
 void KingdomGame::getUserInput() {


Commit: c24d35d387b67b567fb4356786203e0b57c2ce2d
    https://github.com/scummvm/scummvm/commit/c24d35d387b67b567fb4356786203e0b57c2ce2d
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Set audio track when playing movie

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index c368e7cecc..eb2b909f1e 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -509,6 +509,7 @@ void KingdomGame::playMovie(int movieNum) {
 	bool skipMovie = false;
 	Video::MveDecoder *decoder = new Video::MveDecoder();
 	if (decoder->loadFile(path)) {
+		decoder->setAudioTrack(_sound);
 		decoder->start();
 		while (!decoder->endOfVideo() && !skipMovie && !shouldQuit()) {
 			unsigned int delay = MIN(decoder->getTimeToNextFrame(), 10u);


Commit: 5ed3222fce38052c30afdefb8a583e1031f9daab
    https://github.com/scummvm/scummvm/commit/5ed3222fce38052c30afdefb8a583e1031f9daab
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Support partial palette update in MVE decoder

Changed paths:
    engines/kingdom/kingdom.cpp
    video/mve_decoder.cpp
    video/mve_decoder.h


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index eb2b909f1e..cd94688cbf 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -527,7 +527,8 @@ void KingdomGame::playMovie(int movieNum) {
 				g_system->unlockScreen();
 
 				if (decoder->hasDirtyPalette()) {
-					g_system->getPaletteManager()->setPalette(decoder->getPalette(), 0, 256);
+					PaletteManager *paletteManager = g_system->getPaletteManager();
+					decoder->applyPalette(paletteManager);
 				}
 
 				g_system->updateScreen();
diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index abcdde4e35..13681a41d4 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -97,6 +97,10 @@ void MveDecoder::setAudioTrack(int track) {
 	_audioTrack= track;
 }
 
+void MveDecoder::applyPalette(PaletteManager *paletteManager) {
+	paletteManager->setPalette(_palette + 3 * _palStart, _palStart, _palCount);
+}
+
 void MveDecoder::copyBlock(Graphics::Surface &dst, Common::MemoryReadStream &s, int block) {
 	int x = (block % _widthInBlocks) * 8;
 	int y = (block / _widthInBlocks) * 8;
@@ -404,15 +408,17 @@ void MveDecoder::readNextPacket() {
 					byte g = _s->readByte();
 					byte b = _s->readByte();
 
-					_palette[3*i+0] = (r << 2) | r;
-					_palette[3*i+1] = (g << 2) | g;
-					_palette[3*i+2] = (b << 2) | b;
+					_palette[3*i+0] = (r << 2) | (r >> 4);
+					_palette[3*i+1] = (g << 2) | (g >> 4);
+					_palette[3*i+2] = (b << 2) | (b >> 4);
 				}
 				if (palCount & 1) {
 					_s->skip(1);
 				}
 
 				_dirtyPalette = true;
+				_palStart = palStart;
+				_palCount = palCount;
 
 				break;
 			}
diff --git a/video/mve_decoder.h b/video/mve_decoder.h
index 8596935239..9416e35220 100644
--- a/video/mve_decoder.h
+++ b/video/mve_decoder.h
@@ -38,6 +38,8 @@ namespace Graphics {
 struct PixelFormat;
 }
 
+class PaletteManager;
+
 namespace Video {
 
 /**
@@ -66,6 +68,8 @@ class MveDecoder : public VideoDecoder {
 	Common::Rational _frameRate;
 
 	bool      _dirtyPalette;
+	uint16    _palStart;
+	uint16    _palCount;
 	byte      _palette[0x300];
 
 	uint16    _skipMapSize;
@@ -150,6 +154,7 @@ public:
 
 	bool loadStream(Common::SeekableReadStream *stream);
 	void setAudioTrack(int track);
+	void applyPalette(PaletteManager *paletteManager);
 
 	// const Common::List<Common::Rect> *getDirtyRects() const;
 	// void clearDirtyRects();


Commit: 1b5e758f30433566e94f915a69e817a9b729f2d8
    https://github.com/scummvm/scummvm/commit/1b5e758f30433566e94f915a69e817a9b729f2d8
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Improve placement of non-fullscreen video

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index cd94688cbf..e9104120c0 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -506,6 +506,9 @@ void KingdomGame::playMovie(int movieNum) {
 	MVE_ReleaseMem();
 	*/
 
+	int x = _fullScreen ? 0 : 4;
+	int y = _fullScreen ? 0 : 17;
+
 	bool skipMovie = false;
 	Video::MveDecoder *decoder = new Video::MveDecoder();
 	if (decoder->loadFile(path)) {
@@ -523,7 +526,7 @@ void KingdomGame::playMovie(int movieNum) {
 
 			if (frame) {
 				::Graphics::Surface *screen = g_system->lockScreen();
-				screen->copyRectToSurface(*frame, 0, 0, Common::Rect(frame->w, frame->h));
+				screen->copyRectToSurface(*frame, x, y, Common::Rect(frame->w, frame->h));
 				g_system->unlockScreen();
 
 				if (decoder->hasDirtyPalette()) {


Commit: 2e963d8c035fd00935df72b90b66bc7884888b94
    https://github.com/scummvm/scummvm/commit/2e963d8c035fd00935df72b90b66bc7884888b94
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix partial palette updates in MVE decoder

Changed paths:
    video/mve_decoder.cpp


diff --git a/video/mve_decoder.cpp b/video/mve_decoder.cpp
index 13681a41d4..92f9f369cd 100644
--- a/video/mve_decoder.cpp
+++ b/video/mve_decoder.cpp
@@ -353,6 +353,12 @@ void MveDecoder::readNextPacket() {
 				uint16 palStart = _s->readUint16LE();
 				uint16 palCount = _s->readUint16LE();
 				uint16 unk = _s->readUint16LE();
+				(void)unk;
+
+				if (palStart || palCount) {
+					_palStart = palStart;
+					_palCount = palCount;
+				}
 
 				_frameNumber += 1;
 				frameDone = true;


Commit: cd8da6328f5c7fef138aff4f9e0881c8e6356db5
    https://github.com/scummvm/scummvm/commit/cd8da6328f5c7fef138aff4f9e0881c8e6356db5
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix mouse debounce and keyboard input

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index e9104120c0..6b52a1c66b 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -1455,62 +1455,59 @@ void KingdomGame::drawIcon(int x, int y, int index) {
 
 int KingdomGame::getAKey() {
 	drawCursor();
-	if (_mouseButton != 0 && _mouseDebound == false) {
+
+	if (_mouseButton == 0) {
+		_mouseDebound = false;
+	} else if (_mouseDebound == false) {
 		_mouseDebound = true;
 		return (_mouseButton & 2) ? 2 : 1;
 	}
 
 	int retval = 0;
-	_mouseDebound = false;
 	Common::Event event;
 	while (g_system->getEventManager()->pollEvent(event)) {
 		switch (event.type) {
 		case Common::EVENT_QUIT:
 		case Common::EVENT_RETURN_TO_LAUNCHER:
 			_quit = true;
-			break;
-
-		case Common::EVENT_LBUTTONDOWN:
+			return 0;
 			break;
 		case Common::EVENT_KEYDOWN:
-			// if keyboard used, retVal = getch() + 0x100
-			if (!event.kbd.hasFlags(Common::KBD_CTRL) && !event.kbd.hasFlags(Common::KBD_ALT))
-				retval = 0x100 + event.kbd.keycode;
-			else if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
-				_console->attach();
-			else if (event.kbd.keycode == Common::KEYCODE_c && event.kbd.hasFlags(Common::KBD_CTRL)) {
-				_userInput = 0x12D;
-				// _QuitFlag = 2;
-				_quit = true; 
+			if (!event.kbd.hasFlags(Common::KBD_ALT)) {
+				retval = event.kbd.keycode;
+				if (event.kbd.hasFlags(Common::KBD_CTRL)) {
+					retval += 0x100;
+				}
 			}
-			break;
-		case Common::EVENT_LBUTTONUP: // retval == 2?
-			if (_logic->_eye)
-				retval = !_asMode ? 0x43A : 0x43B;
-			break;
-		case Common::EVENT_RBUTTONUP: // retval == 1?
-			retval = _mouseValue;
-			break;
-		case Common::EVENT_MOUSEMOVE:
-			_cursorPos = event.mouse;
 
-		default:
-			refreshSound();
-			checkMainScreen();
-			if (_aTimerFlag) {
-				_aTimerFlag = false;
-				retval = 0x2F1;
-			} else if (_bTimerFlag) {
-				_bTimerFlag = false;
-				retval = 0x2F2;
-			} else if (_skylarTimerFlag) {
-				_skylarTimerFlag = false;
-				retval = 0x2F5;
-			} else
-				retval= 0;
+			// TODO: Reenable ScummVM custom key commands
+
+			// else if (event.kbd.keycode == Common::KEYCODE_d && event.kbd.hasFlags(Common::KBD_CTRL))
+			// 	_console->attach();
+			// else if (event.kbd.keycode == Common::KEYCODE_c && event.kbd.hasFlags(Common::KBD_CTRL)) {
+			// 	_userInput = 0x12D;
+				// _QuitFlag = 2;
+				// _quit = true;
+			// }
 			break;
 		}
 	}
+
+	// If no keyboard, check timers
+	if (retval == 0) {
+		refreshSound();
+		checkMainScreen();
+		if (_aTimerFlag) {
+			_aTimerFlag = false;
+			retval = 0x2F1;
+		} else if (_bTimerFlag) {
+			_bTimerFlag = false;
+			retval = 0x2F2;
+		} else if (_skylarTimerFlag) {
+			_skylarTimerFlag = false;
+			retval = 0x2F5;
+		}
+	}
 	return retval;
 }
 


Commit: 6684724db066e0d3a3c2152897fd5aa633e1d66a
    https://github.com/scummvm/scummvm/commit/6684724db066e0d3a3c2152897fd5aa633e1d66a
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Fix off-by-one in mapExit table

Changed paths:
    engines/kingdom/constants.cpp


diff --git a/engines/kingdom/constants.cpp b/engines/kingdom/constants.cpp
index 84b5e78dbf..d93fe7b5ab 100644
--- a/engines/kingdom/constants.cpp
+++ b/engines/kingdom/constants.cpp
@@ -538,14 +538,13 @@ const char *_rezNames[] = {
 };
 
 int _mapExit[] = {
-	  0, 100,  90,  50, 420, 550, 110,  70,  80, 180,
-	190, 200, 210, 230, 240, 300, 290, 330, 360, 310,
-	370, 390,  60, 570,  30,  40, 340, 640, 520, 510,
-	500, 540, 320, 140, 270, 380, 580, 590, 610,   0,
+	100,  90,  50, 420, 550, 110,  70,  80, 180, 190,
+	200, 210, 230, 240, 300, 290, 330, 360, 310, 370,
+	390,  60, 570,  30,  40, 340, 640, 520, 510, 500,
+	540, 320, 140, 270, 380, 580, 590, 610,   0,   0,
 	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
 	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
-	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
-	  0
+	  0,   0,   0,   0,   0,   0,   0,   0,   0,   0
 };
 
 int _emlTable[] = {


Commit: 72436eff6e484a4afa47b6f00ead25900bf6f8a6
    https://github.com/scummvm/scummvm/commit/72436eff6e484a4afa47b6f00ead25900bf6f8a6
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Add TMM in the engine credits

Changed paths:
    devtools/credits.pl


diff --git a/devtools/credits.pl b/devtools/credits.pl
index 9610419c8f..22928fc05d 100755
--- a/devtools/credits.pl
+++ b/devtools/credits.pl
@@ -811,6 +811,7 @@ begin_credits("Credits");
 			begin_section("Kingdom");
 				add_person("Arnaud Boutonné", "Strangerke", "");
 				add_person("Thomas Fach-Pedersen", "madmoose", "");
+				add_person("Hein-Pieter van Braam-Stewart", "TMM", "");
 			end_section();
 
 			begin_section("Kyra");


Commit: 0291e23f0fb8eb532ac9d7062c5bcb253ab67ae1
    https://github.com/scummvm/scummvm/commit/0291e23f0fb8eb532ac9d7062c5bcb253ab67ae1
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Reduce variable scope (CppCheck warning)

Changed paths:
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 6b52a1c66b..75f5fa4664 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -509,11 +509,11 @@ void KingdomGame::playMovie(int movieNum) {
 	int x = _fullScreen ? 0 : 4;
 	int y = _fullScreen ? 0 : 17;
 
-	bool skipMovie = false;
 	Video::MveDecoder *decoder = new Video::MveDecoder();
 	if (decoder->loadFile(path)) {
 		decoder->setAudioTrack(_sound);
 		decoder->start();
+		bool skipMovie = false;
 		while (!decoder->endOfVideo() && !skipMovie && !shouldQuit()) {
 			unsigned int delay = MIN(decoder->getTimeToNextFrame(), 10u);
 			g_system->delayMillis(delay);


Commit: e39f16f28e3bc5932e332bb3a98bea39195755f7
    https://github.com/scummvm/scummvm/commit/e39f16f28e3bc5932e332bb3a98bea39195755f7
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Turn a bunch of debug() into warning(), remove obsolete STUBs,

Changed paths:
    engines/kingdom/GPLogic1.cpp
    engines/kingdom/GPLogic2.cpp
    engines/kingdom/GPLogic3.cpp
    engines/kingdom/GPLogic4.cpp
    engines/kingdom/kingdom.cpp


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/GPLogic1.cpp
index 806e18417b..517f3cac39 100644
--- a/engines/kingdom/GPLogic1.cpp
+++ b/engines/kingdom/GPLogic1.cpp
@@ -81,7 +81,7 @@ void Logic::GPL1_11() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -137,7 +137,7 @@ void Logic::GPL1_31() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -184,7 +184,7 @@ void Logic::GPL1_41() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -293,7 +293,7 @@ void Logic::GPL1_51() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -350,7 +350,7 @@ void Logic::GPL1_53() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -415,7 +415,7 @@ void Logic::GPL1_71() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -521,7 +521,7 @@ void Logic::GPL1_81() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -581,7 +581,7 @@ void Logic::GPL1_91() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -629,7 +629,7 @@ void Logic::GPL1_101() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -665,7 +665,7 @@ void Logic::GPL1_111() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -722,7 +722,7 @@ void Logic::GPL1_121() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -769,7 +769,7 @@ void Logic::GPL1_141() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -803,7 +803,7 @@ void Logic::GPL1_151() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -921,7 +921,7 @@ void Logic::GPL1_161() {
 		break;	
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -975,7 +975,7 @@ void Logic::GPL1_171() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1084,7 +1084,7 @@ void Logic::GPL1_181() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1135,7 +1135,7 @@ void Logic::GPL1_201() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1254,7 +1254,7 @@ void Logic::GPL1_211() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1338,7 +1338,7 @@ void Logic::GPL1_221() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1429,7 +1429,7 @@ void Logic::GPL1_241() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 	_vm->_userInput = 0;
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/GPLogic2.cpp
index 709437d869..9751994131 100644
--- a/engines/kingdom/GPLogic2.cpp
+++ b/engines/kingdom/GPLogic2.cpp
@@ -71,7 +71,7 @@ void Logic::GPL2_251() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -147,7 +147,7 @@ void Logic::GPL2_261() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -186,7 +186,7 @@ void Logic::GPL2_271() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -294,7 +294,7 @@ void Logic::GPL2_291() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -333,7 +333,7 @@ void Logic::GPL2_301() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	} 
 }
@@ -378,7 +378,7 @@ void Logic::GPL2_311() {
 		break;			
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -420,7 +420,7 @@ void Logic::GPL2_321() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -460,7 +460,7 @@ void Logic::GPL2_331() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -534,7 +534,7 @@ void Logic::GPL2_341() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -592,7 +592,7 @@ void Logic::GPL2_351() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -694,7 +694,7 @@ void Logic::GPL2_361() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -733,7 +733,7 @@ void Logic::GPL2_371() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -822,7 +822,7 @@ void Logic::GPL2_381() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -937,7 +937,7 @@ void Logic::GPL2_401() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -993,7 +993,7 @@ void Logic::GPL2_411() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1051,7 +1051,7 @@ void Logic::GPL2_421() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1143,7 +1143,7 @@ void Logic::GPL2_431() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1180,7 +1180,7 @@ void Logic::GPL2_441() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1224,7 +1224,7 @@ void Logic::GPL2_451() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1267,7 +1267,7 @@ void Logic::GPL2_461() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1299,7 +1299,7 @@ void Logic::GPL2_481() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1350,7 +1350,7 @@ void Logic::GPL2_491() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/GPLogic3.cpp
index f579893d4b..09101b9e5a 100644
--- a/engines/kingdom/GPLogic3.cpp
+++ b/engines/kingdom/GPLogic3.cpp
@@ -99,7 +99,7 @@ void Logic::GPL3_501() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -152,7 +152,7 @@ void Logic::GPL3_511() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -195,7 +195,7 @@ void Logic::GPL3_521() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -269,7 +269,7 @@ void Logic::GPL3_531() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -326,7 +326,7 @@ void Logic::GPL3_541() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -413,7 +413,7 @@ void Logic::GPL3_551() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -538,7 +538,7 @@ void Logic::GPL3_561() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -579,7 +579,7 @@ void Logic::GPL3_571() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -666,7 +666,7 @@ void Logic::GPL3_581() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -711,7 +711,7 @@ void Logic::GPL3_591() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -800,7 +800,7 @@ void Logic::GPL3_611() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -880,7 +880,7 @@ void Logic::GPL3_621() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -915,7 +915,7 @@ void Logic::GPL3_631() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -950,7 +950,7 @@ void Logic::GPL3_641() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1002,7 +1002,7 @@ void Logic::GPL3_651() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1047,7 +1047,7 @@ void Logic::GPL3_661() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1080,7 +1080,7 @@ void Logic::GPL3_671() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1162,7 +1162,7 @@ void Logic::GPL3_691() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1207,7 +1207,7 @@ void Logic::GPL3_701() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1258,7 +1258,7 @@ void Logic::GPL3_711() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1352,7 +1352,7 @@ void Logic::GPL3_712() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1419,7 +1419,7 @@ void Logic::GPL3_721() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1525,7 +1525,7 @@ void Logic::GPL3_731() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1581,7 +1581,7 @@ void Logic::GPL3_741() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1624,7 +1624,7 @@ void Logic::GPL3_761() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1703,7 +1703,7 @@ void Logic::GPL3_781() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
@@ -1741,7 +1741,7 @@ void Logic::GPL3_791() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/GPLogic4.cpp
index e770236075..5caa5e152f 100644
--- a/engines/kingdom/GPLogic4.cpp
+++ b/engines/kingdom/GPLogic4.cpp
@@ -348,7 +348,7 @@ void Logic::GPL4_994() {
 		break;
 	default:
 		if (_vm->_userInput)
-			debug("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
+			warning("Skipped UserInput %d(0x%04X) for _StatPlay %d", _vm->_userInput, _vm->_userInput, _statPlay);
 		break;
 	}
 }
diff --git a/engines/kingdom/kingdom.cpp b/engines/kingdom/kingdom.cpp
index 75f5fa4664..096030c479 100644
--- a/engines/kingdom/kingdom.cpp
+++ b/engines/kingdom/kingdom.cpp
@@ -455,12 +455,10 @@ void KingdomGame::setMouse() {
 }
 
 void KingdomGame::initMPlayer() {
-	debug("STUB: InitMPlayer");
+	// No implementation for ScummVM, everything is in the player class' constructor
 }
 
 void KingdomGame::playMovie(int movieNum) {
-	debug("STUB: PlayMovie");
-
 	if (movieNum == 1 || movieNum == 3 || movieNum == 54 || movieNum == 198 || movieNum == 200 || movieNum == 206)
 		_fullScreen = true;
 	else
@@ -489,23 +487,9 @@ void KingdomGame::playMovie(int movieNum) {
 	_keyActive = false;
 	const Common::String path = Common::String::format("King%.3d.mve", movieNum);
 
-	warning("%s", path.c_str());
-
 	// Check if the file is available. If not the original does the following: _ATimer = 55, display of error with a check of timer, exit
 	// That can be replaced by an error()
 
-	/* Original behavior. To be uncommented when the codec is available
-	_track = _sound;
-	_vidState = 0;
-
-	if (_fullScreen)
-		MVE_RunMovie(fileHandle, 0, 0, _track);
-	else
-		MVE_RunMovie(fileHandle, 6, 17, _track);
-	
-	MVE_ReleaseMem();
-	*/
-
 	int x = _fullScreen ? 0 : 4;
 	int y = _fullScreen ? 0 : 17;
 
@@ -557,9 +541,7 @@ void KingdomGame::playMovie(int movieNum) {
 	delete decoder;
 
 	// This is hidden somewhere in RunMovieCtl callback...
-	// To be removed when MVE_RunMovie is implemented
 	showPic(300 + _pMovie);
-	//
 
 	if (!_fullScreen) {
 		_treeRightSta = 1;


Commit: ff7c0ecb54f1513585eb5e39bc2de694a83dd616
    https://github.com/scummvm/scummvm/commit/ff7c0ecb54f1513585eb5e39bc2de694a83dd616
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: Remove unused member in console

Changed paths:
    engines/kingdom/console.h


diff --git a/engines/kingdom/console.h b/engines/kingdom/console.h
index 1fdf7991dd..9e25a79e91 100644
--- a/engines/kingdom/console.h
+++ b/engines/kingdom/console.h
@@ -34,8 +34,6 @@ private:
 	KingdomGame *_vm;
 
 public:
-	bool _allowSkip;
-
 	explicit Console(Kingdom::KingdomGame *vm);
 	virtual ~Console(void) {}
 


Commit: aad3745a79846b1fd7a84f4abd51bf4db95e18e9
    https://github.com/scummvm/scummvm/commit/aad3745a79846b1fd7a84f4abd51bf4db95e18e9
Author: Strangerke (Strangerke at scummvm.org)
Date: 2020-06-07T00:02:29+02:00

Commit Message:
KINGDOM: rename logic files

Changed paths:
  A engines/kingdom/logic1.cpp
  A engines/kingdom/logic2.cpp
  A engines/kingdom/logic3.cpp
  A engines/kingdom/logic4.cpp
  R engines/kingdom/GPLogic1.cpp
  R engines/kingdom/GPLogic2.cpp
  R engines/kingdom/GPLogic3.cpp
  R engines/kingdom/GPLogic4.cpp
    engines/kingdom/module.mk


diff --git a/engines/kingdom/GPLogic1.cpp b/engines/kingdom/logic1.cpp
similarity index 100%
rename from engines/kingdom/GPLogic1.cpp
rename to engines/kingdom/logic1.cpp
diff --git a/engines/kingdom/GPLogic2.cpp b/engines/kingdom/logic2.cpp
similarity index 100%
rename from engines/kingdom/GPLogic2.cpp
rename to engines/kingdom/logic2.cpp
diff --git a/engines/kingdom/GPLogic3.cpp b/engines/kingdom/logic3.cpp
similarity index 100%
rename from engines/kingdom/GPLogic3.cpp
rename to engines/kingdom/logic3.cpp
diff --git a/engines/kingdom/GPLogic4.cpp b/engines/kingdom/logic4.cpp
similarity index 100%
rename from engines/kingdom/GPLogic4.cpp
rename to engines/kingdom/logic4.cpp
diff --git a/engines/kingdom/module.mk b/engines/kingdom/module.mk
index bb5a91fa65..873f5b2120 100644
--- a/engines/kingdom/module.mk
+++ b/engines/kingdom/module.mk
@@ -3,10 +3,10 @@ MODULE := engines/kingdom
 MODULE_OBJS = \
 	kingdom.o \
 	constants.o \
-	GPLogic1.o \
-	GPLogic2.o \
-	GPLogic3.o \
-	GPLogic4.o \
+	logic1.o \
+	logic2.o \
+	logic3.o \
+	logic4.o \
 	logic.o \
 	console.o \
 	detection.o




More information about the Scummvm-git-logs mailing list