From f218a642128e194069a4a85a5edb08ea0acf42bc Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Sat, 27 Aug 2016 01:35:56 +0200 Subject: ADL: Remove CRLF endlines --- engines/adl/hires0.cpp | 336 ++++++++++++++++++++++++------------------------- engines/adl/hires0.h | 118 ++++++++--------- 2 files changed, 227 insertions(+), 227 deletions(-) (limited to 'engines/adl') diff --git a/engines/adl/hires0.cpp b/engines/adl/hires0.cpp index 316f77a9b6..a348779e89 100644 --- a/engines/adl/hires0.cpp +++ b/engines/adl/hires0.cpp @@ -1,168 +1,168 @@ -/* 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/textconsole.h" - -#include "adl/hires0.h" -#include "adl/graphics.h" -#include "adl/disk.h" - -namespace Adl { - -void HiRes0Engine::init() { - _graphics = new Graphics_v2(*_display); - - _disk = new DiskImage(); - if (!_disk->open(IDS_HR0_DISK_IMAGE)) - error("Failed to open disk image '" IDS_HR0_DISK_IMAGE "'"); - - _disk->setMode13(true); - - StreamPtr stream(_disk->createReadStream(0x1f, 0x2, 0x00, 2)); - - // TODO: all these strings/offsets/etc are the same as hires2 - - for (uint i = 0; i < IDI_HR0_NUM_MESSAGES; ++i) - _messages.push_back(readDataBlockPtr(*stream)); - - // Read parser messages - stream.reset(_disk->createReadStream(0x1a, 0x1)); - _strings.verbError = readStringAt(*stream, 0x4f); - _strings.nounError = readStringAt(*stream, 0x8e); - _strings.enterCommand = readStringAt(*stream, 0xbc); - - // Read time string - stream.reset(_disk->createReadStream(0x19, 0x7, 0xd7)); - _strings_v2.time = readString(*stream, 0xff); - - // Read line feeds - stream.reset(_disk->createReadStream(0x19, 0xb, 0xf8, 1)); - _strings.lineFeeds = readString(*stream); - - // Read opcode strings - stream.reset(_disk->createReadStream(0x1a, 0x6, 0x00, 2)); - _strings_v2.saveInsert = readStringAt(*stream, 0x5f); - _strings_v2.saveReplace = readStringAt(*stream, 0xe5); - _strings_v2.restoreInsert = readStringAt(*stream, 0x132); - _strings_v2.restoreReplace = readStringAt(*stream, 0x1c2); - _strings.playAgain = readStringAt(*stream, 0x225); - _strings.pressReturn = readStringAt(*stream, 0x25f); - - _messageIds.cantGoThere = IDI_HR0_MSG_CANT_GO_THERE; - _messageIds.dontUnderstand = IDI_HR0_MSG_DONT_UNDERSTAND; - _messageIds.itemDoesntMove = IDI_HR0_MSG_ITEM_DOESNT_MOVE; - _messageIds.itemNotHere = IDI_HR0_MSG_ITEM_NOT_HERE; - _messageIds.thanksForPlaying = IDI_HR0_MSG_THANKS_FOR_PLAYING; - - // Load global picture data - stream.reset(_disk->createReadStream(0x19, 0xa, 0x80, 0)); - byte picNr; - while ((picNr = stream->readByte()) != 0xff) { - if (stream->eos() || stream->err()) - error("Error reading global pic list"); - - _pictures[picNr] = readDataBlockPtr(*stream); - } - - // Load item picture data - stream.reset(_disk->createReadStream(0x1e, 0x9, 0x05)); - for (uint i = 0; i < IDI_HR0_NUM_ITEM_PICS; ++i) { - stream->readByte(); // number - _itemPics.push_back(readDataBlockPtr(*stream)); - } - - // Load commands from executable - stream.reset(_disk->createReadStream(0x1d, 0x7, 0x00, 2)); - readCommands(*stream, _roomCommands); - - stream.reset(_disk->createReadStream(0x1f, 0x7, 0x00, 3)); - readCommands(*stream, _globalCommands); - - // Load dropped item offsets - stream.reset(_disk->createReadStream(0x1b, 0x4, 0x15)); - for (uint i = 0; i < IDI_HR0_NUM_ITEM_OFFSETS; ++i) { - Common::Point p; - p.x = stream->readByte(); - p.y = stream->readByte(); - _itemOffsets.push_back(p); - } - - // Load verbs - stream.reset(_disk->createReadStream(0x19, 0x0, 0x00, 3)); - loadWords(*stream, _verbs, _priVerbs); - - // Load nouns - stream.reset(_disk->createReadStream(0x22, 0x2, 0x00, 2)); - loadWords(*stream, _nouns, _priNouns); -} - -void HiRes0Engine::initGameState() { - _state.vars.resize(IDI_HR0_NUM_VARS); - - StreamPtr stream(_disk->createReadStream(0x21, 0x5, 0x0e, 2)); - - for (uint i = 0; i < IDI_HR0_NUM_ROOMS; ++i) { - Room room; - stream->readByte(); // number - for (uint j = 0; j < 6; ++j) - room.connections[j] = stream->readByte(); - room.data = readDataBlockPtr(*stream); - room.picture = stream->readByte(); - room.curPicture = stream->readByte(); - room.isFirstTime = stream->readByte(); - _state.rooms.push_back(room); - } - - stream.reset(_disk->createReadStream(0x21, 0x0)); - - byte id; - while ((id = stream->readByte()) != 0xff) { - Item item = Item(); - item.id = id; - item.noun = stream->readByte(); - item.room = stream->readByte(); - item.picture = stream->readByte(); - item.isLineArt = stream->readByte(); - item.position.x = stream->readByte(); - item.position.y = stream->readByte(); - item.state = stream->readByte(); - item.description = stream->readByte(); - - stream->readByte(); // Struct size - - byte picListSize = stream->readByte(); - - // Flag to keep track of what has been drawn on the screen - stream->readByte(); - - for (uint i = 0; i < picListSize; ++i) - item.roomPictures.push_back(stream->readByte()); - - _state.items.push_back(item); - } -} - -Engine *HiRes0Engine_create(OSystem *syst, const AdlGameDescription *gd) { - return new HiRes0Engine(syst, gd); -} - -} // End of namespace Adl +/* 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/textconsole.h" + +#include "adl/hires0.h" +#include "adl/graphics.h" +#include "adl/disk.h" + +namespace Adl { + +void HiRes0Engine::init() { + _graphics = new Graphics_v2(*_display); + + _disk = new DiskImage(); + if (!_disk->open(IDS_HR0_DISK_IMAGE)) + error("Failed to open disk image '" IDS_HR0_DISK_IMAGE "'"); + + _disk->setMode13(true); + + StreamPtr stream(_disk->createReadStream(0x1f, 0x2, 0x00, 2)); + + // TODO: all these strings/offsets/etc are the same as hires2 + + for (uint i = 0; i < IDI_HR0_NUM_MESSAGES; ++i) + _messages.push_back(readDataBlockPtr(*stream)); + + // Read parser messages + stream.reset(_disk->createReadStream(0x1a, 0x1)); + _strings.verbError = readStringAt(*stream, 0x4f); + _strings.nounError = readStringAt(*stream, 0x8e); + _strings.enterCommand = readStringAt(*stream, 0xbc); + + // Read time string + stream.reset(_disk->createReadStream(0x19, 0x7, 0xd7)); + _strings_v2.time = readString(*stream, 0xff); + + // Read line feeds + stream.reset(_disk->createReadStream(0x19, 0xb, 0xf8, 1)); + _strings.lineFeeds = readString(*stream); + + // Read opcode strings + stream.reset(_disk->createReadStream(0x1a, 0x6, 0x00, 2)); + _strings_v2.saveInsert = readStringAt(*stream, 0x5f); + _strings_v2.saveReplace = readStringAt(*stream, 0xe5); + _strings_v2.restoreInsert = readStringAt(*stream, 0x132); + _strings_v2.restoreReplace = readStringAt(*stream, 0x1c2); + _strings.playAgain = readStringAt(*stream, 0x225); + _strings.pressReturn = readStringAt(*stream, 0x25f); + + _messageIds.cantGoThere = IDI_HR0_MSG_CANT_GO_THERE; + _messageIds.dontUnderstand = IDI_HR0_MSG_DONT_UNDERSTAND; + _messageIds.itemDoesntMove = IDI_HR0_MSG_ITEM_DOESNT_MOVE; + _messageIds.itemNotHere = IDI_HR0_MSG_ITEM_NOT_HERE; + _messageIds.thanksForPlaying = IDI_HR0_MSG_THANKS_FOR_PLAYING; + + // Load global picture data + stream.reset(_disk->createReadStream(0x19, 0xa, 0x80, 0)); + byte picNr; + while ((picNr = stream->readByte()) != 0xff) { + if (stream->eos() || stream->err()) + error("Error reading global pic list"); + + _pictures[picNr] = readDataBlockPtr(*stream); + } + + // Load item picture data + stream.reset(_disk->createReadStream(0x1e, 0x9, 0x05)); + for (uint i = 0; i < IDI_HR0_NUM_ITEM_PICS; ++i) { + stream->readByte(); // number + _itemPics.push_back(readDataBlockPtr(*stream)); + } + + // Load commands from executable + stream.reset(_disk->createReadStream(0x1d, 0x7, 0x00, 2)); + readCommands(*stream, _roomCommands); + + stream.reset(_disk->createReadStream(0x1f, 0x7, 0x00, 3)); + readCommands(*stream, _globalCommands); + + // Load dropped item offsets + stream.reset(_disk->createReadStream(0x1b, 0x4, 0x15)); + for (uint i = 0; i < IDI_HR0_NUM_ITEM_OFFSETS; ++i) { + Common::Point p; + p.x = stream->readByte(); + p.y = stream->readByte(); + _itemOffsets.push_back(p); + } + + // Load verbs + stream.reset(_disk->createReadStream(0x19, 0x0, 0x00, 3)); + loadWords(*stream, _verbs, _priVerbs); + + // Load nouns + stream.reset(_disk->createReadStream(0x22, 0x2, 0x00, 2)); + loadWords(*stream, _nouns, _priNouns); +} + +void HiRes0Engine::initGameState() { + _state.vars.resize(IDI_HR0_NUM_VARS); + + StreamPtr stream(_disk->createReadStream(0x21, 0x5, 0x0e, 2)); + + for (uint i = 0; i < IDI_HR0_NUM_ROOMS; ++i) { + Room room; + stream->readByte(); // number + for (uint j = 0; j < 6; ++j) + room.connections[j] = stream->readByte(); + room.data = readDataBlockPtr(*stream); + room.picture = stream->readByte(); + room.curPicture = stream->readByte(); + room.isFirstTime = stream->readByte(); + _state.rooms.push_back(room); + } + + stream.reset(_disk->createReadStream(0x21, 0x0)); + + byte id; + while ((id = stream->readByte()) != 0xff) { + Item item = Item(); + item.id = id; + item.noun = stream->readByte(); + item.room = stream->readByte(); + item.picture = stream->readByte(); + item.isLineArt = stream->readByte(); + item.position.x = stream->readByte(); + item.position.y = stream->readByte(); + item.state = stream->readByte(); + item.description = stream->readByte(); + + stream->readByte(); // Struct size + + byte picListSize = stream->readByte(); + + // Flag to keep track of what has been drawn on the screen + stream->readByte(); + + for (uint i = 0; i < picListSize; ++i) + item.roomPictures.push_back(stream->readByte()); + + _state.items.push_back(item); + } +} + +Engine *HiRes0Engine_create(OSystem *syst, const AdlGameDescription *gd) { + return new HiRes0Engine(syst, gd); +} + +} // End of namespace Adl diff --git a/engines/adl/hires0.h b/engines/adl/hires0.h index 624f248ea8..a3d8845a4e 100644 --- a/engines/adl/hires0.h +++ b/engines/adl/hires0.h @@ -1,59 +1,59 @@ -/* 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 ADL_HIRES0_H -#define ADL_HIRES0_H - -#include "adl/adl_v2.h" - -namespace Adl { - -#define IDS_HR0_DISK_IMAGE "MISSION.NIB" - -#define IDI_HR0_NUM_ROOMS 43 -#define IDI_HR0_NUM_MESSAGES 142 -#define IDI_HR0_NUM_VARS 40 -#define IDI_HR0_NUM_ITEM_PICS 2 -#define IDI_HR0_NUM_ITEM_OFFSETS 16 - -// Messages used outside of scripts -#define IDI_HR0_MSG_CANT_GO_THERE 110 -#define IDI_HR0_MSG_DONT_UNDERSTAND 112 -#define IDI_HR0_MSG_ITEM_DOESNT_MOVE 114 -#define IDI_HR0_MSG_ITEM_NOT_HERE 115 -#define IDI_HR0_MSG_THANKS_FOR_PLAYING 113 - -class HiRes0Engine : public AdlEngine_v2 { -public: - HiRes0Engine(OSystem *syst, const AdlGameDescription *gd) : - AdlEngine_v2(syst, gd) { } - ~HiRes0Engine() { } - -private: - // AdlEngine - void init(); - void initGameState(); -}; - -} // End of namespace Adl - -#endif +/* 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 ADL_HIRES0_H +#define ADL_HIRES0_H + +#include "adl/adl_v2.h" + +namespace Adl { + +#define IDS_HR0_DISK_IMAGE "MISSION.NIB" + +#define IDI_HR0_NUM_ROOMS 43 +#define IDI_HR0_NUM_MESSAGES 142 +#define IDI_HR0_NUM_VARS 40 +#define IDI_HR0_NUM_ITEM_PICS 2 +#define IDI_HR0_NUM_ITEM_OFFSETS 16 + +// Messages used outside of scripts +#define IDI_HR0_MSG_CANT_GO_THERE 110 +#define IDI_HR0_MSG_DONT_UNDERSTAND 112 +#define IDI_HR0_MSG_ITEM_DOESNT_MOVE 114 +#define IDI_HR0_MSG_ITEM_NOT_HERE 115 +#define IDI_HR0_MSG_THANKS_FOR_PLAYING 113 + +class HiRes0Engine : public AdlEngine_v2 { +public: + HiRes0Engine(OSystem *syst, const AdlGameDescription *gd) : + AdlEngine_v2(syst, gd) { } + ~HiRes0Engine() { } + +private: + // AdlEngine + void init(); + void initGameState(); +}; + +} // End of namespace Adl + +#endif -- cgit v1.2.3