aboutsummaryrefslogtreecommitdiff
path: root/engines/adl
diff options
context:
space:
mode:
authorWalter van Niftrik2016-03-05 20:07:28 +0100
committerWalter van Niftrik2016-03-09 10:03:13 +0100
commit6379fbc124b63221576206bed070fa2a91b99718 (patch)
tree96a1eeaefb74039fe5d1a3fa2ad715750e6ea0a3 /engines/adl
parent1e1a5d4f0761ba22257f59cfd70aeb53a47b0321 (diff)
downloadscummvm-rg350-6379fbc124b63221576206bed070fa2a91b99718.tar.gz
scummvm-rg350-6379fbc124b63221576206bed070fa2a91b99718.tar.bz2
scummvm-rg350-6379fbc124b63221576206bed070fa2a91b99718.zip
ADL: Add more #defines to replace literals
Diffstat (limited to 'engines/adl')
-rw-r--r--engines/adl/display.h4
-rw-r--r--engines/adl/hires1.cpp66
-rw-r--r--engines/adl/hires1.h14
3 files changed, 44 insertions, 40 deletions
diff --git a/engines/adl/display.h b/engines/adl/display.h
index 8690659ef4..ce8f86beba 100644
--- a/engines/adl/display.h
+++ b/engines/adl/display.h
@@ -74,10 +74,6 @@ public:
void showCursor(bool enable);
private:
- enum {
- kTextBufSize = 40 * 24
- };
-
void updateHiResSurface();
void showScanlines(bool enable);
diff --git a/engines/adl/hires1.cpp b/engines/adl/hires1.cpp
index 8b5b9220f7..d3e4c3ef52 100644
--- a/engines/adl/hires1.cpp
+++ b/engines/adl/hires1.cpp
@@ -40,6 +40,11 @@
namespace Adl {
+#define IDI_HR1_NUM_ROOMS 41
+#define IDI_HR1_NUM_PICS 98
+#define IDI_HR1_NUM_VARS 20
+#define IDI_HR1_NUM_ITEM_OFFSETS 21
+
// Messages used outside of scripts
#define IDI_HR1_MSG_CANT_GO_THERE 137
#define IDI_HR1_MSG_DONT_UNDERSTAND 37
@@ -73,15 +78,28 @@ static const StringOffset stringOffsets[] = {
{ IDI_HR1_STR_PRESS_RETURN, 0x5f68 }
};
-#define IDI_HR1_OFS_PD_TEXT_0 0x5d
-#define IDI_HR1_OFS_PD_TEXT_1 0x12b
-#define IDI_HR1_OFS_PD_TEXT_2 0x16d
-#define IDI_HR1_OFS_PD_TEXT_3 0x259
+#define IDI_HR1_OFS_PD_TEXT_0 0x005d
+#define IDI_HR1_OFS_PD_TEXT_1 0x012b
+#define IDI_HR1_OFS_PD_TEXT_2 0x016d
+#define IDI_HR1_OFS_PD_TEXT_3 0x0259
+
+#define IDI_HR1_OFS_INTRO_TEXT 0x0066
+#define IDI_HR1_OFS_GAME_OR_HELP 0x000f
+
+#define IDI_HR1_OFS_LOGO_0 0x1003
+#define IDI_HR1_OFS_LOGO_1 0x1800
+
+#define IDI_HR1_OFS_ITEMS 0x0100
+#define IDI_HR1_OFS_ROOMS 0x050a
+#define IDI_HR1_OFS_PICS 0x4b00
+#define IDI_HR1_OFS_CMDS_0 0x3c00
+#define IDI_HR1_OFS_CMDS_1 0x3d00
-#define IDI_HR1_OFS_INTRO_TEXT 0x66
-#define IDI_HR1_OFS_GAME_OR_HELP 0xf
+#define IDI_HR1_OFS_ITEM_OFFSETS 0x68ff
+#define IDI_HR1_OFS_LINE_ART 0x4f00
-#define IDI_HR1_OFS_LOGO_0 0x1003
+#define IDI_HR1_OFS_VERBS 0x3800
+#define IDI_HR1_OFS_NOUNS 0x0f00
HiRes1Engine::HiRes1Engine(OSystem *syst, const AdlGameDescription *gd) :
AdlEngine(syst, gd) {
@@ -184,7 +202,7 @@ void HiRes1Engine::runIntro() {
error("Failed to open file");
// Title screen shown during loading
- file.seek(0x1800);
+ file.seek(IDI_HR1_OFS_LOGO_1);
_display->loadFrameBuffer(file);
_display->updateHiResScreen();
delay(2000);
@@ -246,15 +264,15 @@ void HiRes1Engine::initState() {
_state.isDark = false;
_state.vars.clear();
- _state.vars.resize(20);
+ _state.vars.resize(IDI_HR1_NUM_VARS);
if (!f.open("ADVENTURE"))
error("Failed to open file");
// Load room data from executable
_state.rooms.clear();
- f.seek(0x50a);
- for (uint i = 0; i < MH_ROOMS; ++i) {
+ f.seek(IDI_HR1_OFS_ROOMS);
+ for (uint i = 0; i < IDI_HR1_NUM_ROOMS; ++i) {
Room room;
f.readByte();
room.description = f.readByte();
@@ -265,9 +283,9 @@ void HiRes1Engine::initState() {
_state.rooms.push_back(room);
}
- // Load inventory data from executable
+ // Load item data from executable
_state.items.clear();
- f.seek(0x100);
+ f.seek(IDI_HR1_OFS_ITEMS);
while (f.readByte() != 0xff) {
Item item;
item.noun = f.readByte();
@@ -321,8 +339,8 @@ void HiRes1Engine::runGame() {
}
// Load picture data from executable
- f.seek(0x4b00);
- for (uint i = 0; i < MH_PICS; ++i) {
+ f.seek(IDI_HR1_OFS_PICS);
+ for (uint i = 0; i < IDI_HR1_NUM_PICS; ++i) {
struct Picture pic;
pic.block = f.readByte();
pic.offset = f.readUint16LE();
@@ -330,15 +348,15 @@ void HiRes1Engine::runGame() {
}
// Load commands from executable
- f.seek(0x3D00);
+ f.seek(IDI_HR1_OFS_CMDS_1);
readCommands(f, _roomCommands);
- f.seek(0x3C00);
+ f.seek(IDI_HR1_OFS_CMDS_0);
readCommands(f, _globalCommands);
// Load dropped item offsets
- f.seek(0x68ff);
- for (uint i = 0; i < MH_ITEM_OFFSETS; ++i) {
+ f.seek(IDI_HR1_OFS_ITEM_OFFSETS);
+ for (uint i = 0; i < IDI_HR1_NUM_ITEM_OFFSETS; ++i) {
Common::Point p;
p.x = f.readByte();
p.y = f.readByte();
@@ -346,12 +364,12 @@ void HiRes1Engine::runGame() {
}
// Load right-angle line art
- f.seek(0x4f00);
+ f.seek(IDI_HR1_OFS_LINE_ART);
uint16 lineArtTotal = f.readUint16LE();
for (uint i = 0; i < lineArtTotal; ++i) {
- f.seek(0x4f00 + 2 + i * 2);
+ f.seek(IDI_HR1_OFS_LINE_ART + 2 + i * 2);
uint16 offset = f.readUint16LE();
- f.seek(0x4f00 + offset);
+ f.seek(IDI_HR1_OFS_LINE_ART + offset);
Common::Array<byte> lineArt;
byte b = f.readByte();
@@ -362,10 +380,10 @@ void HiRes1Engine::runGame() {
_lineArt.push_back(lineArt);
}
- f.seek(0x3800);
+ f.seek(IDI_HR1_OFS_VERBS);
loadVerbs(f);
- f.seek(0xf00);
+ f.seek(IDI_HR1_OFS_NOUNS);
loadNouns(f);
printASCIIString("\r\r\r\r\r");
diff --git a/engines/adl/hires1.h b/engines/adl/hires1.h
index cae5980102..f5c6d5b3e4 100644
--- a/engines/adl/hires1.h
+++ b/engines/adl/hires1.h
@@ -20,8 +20,8 @@
*
*/
-#ifndef ADL_ADL_V1_H
-#define ADL_ADL_V1_H
+#ifndef ADL_HIRES1_H
+#define ADL_HIRES1_H
#include "adl/adl.h"
@@ -31,10 +31,6 @@ class ReadStream;
namespace Adl {
-enum {
- IDI_HR1_MSG_
-};
-
class HiRes1Engine : public AdlEngine {
public:
HiRes1Engine(OSystem *syst, const AdlGameDescription *gd);
@@ -43,12 +39,6 @@ protected:
void runGame();
private:
- enum {
- MH_ROOMS = 41,
- MH_PICS = 98,
- MH_ITEM_OFFSETS = 21
- };
-
void restartGame();
void printMessage(uint idx, bool wait = true);
uint getEngineMessage(EngineMessage msg);