diff options
Diffstat (limited to 'engines/scumm/scumm.cpp')
-rw-r--r-- | engines/scumm/scumm.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp index 7715497ef6..b3b586ad91 100644 --- a/engines/scumm/scumm.cpp +++ b/engines/scumm/scumm.cpp @@ -712,6 +712,36 @@ ScummEngine::~ScummEngine() { delete _debugger; } +ScummEngine_v5::ScummEngine_v5(OSystem *syst, const DetectorResult &dr) + : ScummEngine(syst, dr) { + + static const uint16 default_cursor_images[4][16] = { + /* cross-hair */ + { 0x0080, 0x0080, 0x0080, 0x0080, 0x0080, 0x0080, 0x0000, 0x7e3f, + 0x0000, 0x0080, 0x0080, 0x0080, 0x0080, 0x0080, 0x0080, 0x0000 }, + /* hourglass */ + { 0x0000, 0x7ffe, 0x6006, 0x300c, 0x1818, 0x0c30, 0x0660, 0x03c0, + 0x0660, 0x0c30, 0x1998, 0x33cc, 0x67e6, 0x7ffe, 0x0000, 0x0000 }, + /* arrow */ + { 0x0000, 0x4000, 0x6000, 0x7000, 0x7800, 0x7c00, 0x7e00, 0x7f00, + 0x7f80, 0x78c0, 0x7c00, 0x4600, 0x0600, 0x0300, 0x0300, 0x0180 }, + /* hand */ + { 0x1e00, 0x1200, 0x1200, 0x1200, 0x1200, 0x13ff, 0x1249, 0x1249, + 0xf249, 0x9001, 0x9001, 0x9001, 0x8001, 0x8001, 0x8001, 0xffff }, + }; + + static const byte default_cursor_hotspots[10] = { + 8, 7, 8, 7, 1, 1, 5, 0, + 8, 7, //zak256 + }; + + + for (int i = 0; i < 4; i++) { + memcpy(_cursorImages[i], default_cursor_images[i], 32); + } + memcpy(_cursorHotspots, default_cursor_hotspots, 8); +} + ScummEngine_v4::ScummEngine_v4(OSystem *syst, const DetectorResult &dr) : ScummEngine_v5(syst, dr) { _resourceHeaderSize = 6; |