aboutsummaryrefslogtreecommitdiff
path: root/scumm.h
diff options
context:
space:
mode:
authorVincent Hamm2002-02-23 23:23:28 +0000
committerVincent Hamm2002-02-23 23:23:28 +0000
commitcef0ef44d35f9cc05fe51050c116adb86edc66ea (patch)
tree25c718282287d9bec9eb5d285590c482aee67072 /scumm.h
parentb4123064b491aafc8de04da50da85daa116b1cfd (diff)
downloadscummvm-rg350-cef0ef44d35f9cc05fe51050c116adb86edc66ea.tar.gz
scummvm-rg350-cef0ef44d35f9cc05fe51050c116adb86edc66ea.tar.bz2
scummvm-rg350-cef0ef44d35f9cc05fe51050c116adb86edc66ea.zip
Changed the scummVar system to a dynamic one. Started to remove all the reference to FULL_TROTTLE define.
svn-id: r3624
Diffstat (limited to 'scumm.h')
-rw-r--r--scumm.h280
1 files changed, 107 insertions, 173 deletions
diff --git a/scumm.h b/scumm.h
index e18942c987..dc3a13d34a 100644
--- a/scumm.h
+++ b/scumm.h
@@ -294,179 +294,6 @@ enum {
sleUint32 = 5
};
-#if !defined(FULL_THROTTLE)
-
-enum ScummVars {
- VAR_EGO = 1,
- VAR_CAMERA_POS_X = 2,
- VAR_HAVE_MSG = 3,
- VAR_ROOM = 4,
- VAR_OVERRIDE = 5,
- VAR_MACHINE_SPEED = 6,
- VAR_ME = 7,
- VAR_NUM_ACTOR = 8,
- VAR_CURRENT_LIGHTS = 9,
- VAR_CURRENTDRIVE = 10,
- VAR_TMR_1 = 11,
- VAR_TMR_2 = 12,
- VAR_TMR_3 = 13,
- VAR_MUSIC_FLAG = 14,
- VAR_ACTOR_RANGE_MIN = 15,
- VAR_ACTOR_RANGE_MAX = 16,
- VAR_CAMERA_MIN_X = 17,
- VAR_CAMERA_MAX_X = 18,
- VAR_TIMER_NEXT = 19,
- VAR_VIRT_MOUSE_X = 20,
- VAR_VIRT_MOUSE_Y = 21,
- VAR_ROOM_RESOURCE = 22,
- VAR_LAST_SOUND = 23,
- VAR_CUTSCENEEXIT_KEY = 24,
- VAR_TALK_ACTOR = 25,
- VAR_CAMERA_FAST_X = 26,
- VAR_SCROLL_SCRIPT = 27,
- VAR_ENTRY_SCRIPT = 28,
- VAR_ENTRY_SCRIPT2 = 29,
- VAR_EXIT_SCRIPT = 30,
- VAR_EXIT_SCRIPT2 = 31,
- VAR_VERB_SCRIPT = 32,
- VAR_SENTENCE_SCRIPT = 33,
- VAR_HOOK_SCRIPT = 34,
- VAR_CUTSCENE_START_SCRIPT = 35,
- VAR_CUTSCENE_END_SCRIPT = 36,
- VAR_CHARINC = 37,
- VAR_WALKTO_OBJ = 38,
- VAR_DEBUGMODE = 39,
- VAR_HEAPSPACE = 40,
- VAR_RESTART_KEY = 42,
- VAR_PAUSE_KEY = 43,
- VAR_MOUSE_X = 44,
- VAR_MOUSE_Y = 45,
- VAR_TIMER = 46,
- VAR_TMR_4 = 47,
- VAR_SOUNDCARD = 48,
- VAR_VIDEOMODE = 49,
- VAR_SAVELOADDIALOG_KEY = 50,
- VAR_FIXEDDISK = 51,
- VAR_CURSORSTATE = 52,
- VAR_USERPUT = 53,
- VAR_SOUNDRESULT = 56,
- VAR_TALKSTOP_KEY = 57,
- VAR_59 = 59,
-
- VAR_SOUNDPARAM = 64,
- VAR_SOUNDPARAM2 = 65,
- VAR_SOUNDPARAM3 = 66,
- VAR_MOUSEPRESENT = 67,
- VAR_PERFORMANCE_1 = 68,
- VAR_PERFORMANCE_2 = 69,
- VAR_ROOM_FLAG = 70,
- VAR_GAME_LOADED = 71,
- VAR_NEW_ROOM = 72,
- VAR_VERSION = 75,
-
- VAR_V5_DRAWFLAGS = 9,
- VAR_MI1_TIMER = 14,
- VAR_V5_OBJECT_LO = 15,
- VAR_V5_OBJECT_HI = 16,
- VAR_V5_TALK_STRING_Y = 54,
- VAR_V5_CHARFLAG = 60,
-
- VAR_V6_SCREEN_WIDTH = 41,
- VAR_V6_SCREEN_HEIGHT = 54,
- VAR_V6_EMSSPACE = 76,
- VAR_V6_RANDOM_NR = 118,
-};
-
-#else
-
-enum ScummVars {
- VAR_MOUSE_X = 1,
- VAR_MOUSE_Y = 2,
- VAR_VIRT_MOUSE_X = 3,
- VAR_VIRT_MOUSE_Y = 4,
- VAR_V6_SCREEN_WIDTH = 5,
- VAR_V6_SCREEN_HEIGHT = 6,
- VAR_CAMERA_POS_X = 7,
- VAR_CAMERA_POS_Y = 8,
- VAR_OVERRIDE = 9,
- VAR_ROOM = 10,
- VAR_ROOM_RESOURCE = 11,
- VAR_TALK_ACTOR = 12,
- VAR_HAVE_MSG = 13,
- VAR_TIMER = 14,
- VAR_TMR_4 = 15,
- VAR_LEFTBTN_DOWN = 22,
- VAR_RIGHTBTN_DOWN = 23,
- VAR_LEFTBTN_HOLD = 24,
- VAR_RIGHTBTN_HOLD = 25,
-
- VAR_PERFORMANCE_1 = 26,
- VAR_PERFORMANCE_2 = 27,
- VAR_GAME_LOADED = 29,
- VAR_V6_RANDOM_NR = 34,
- VAR_NEW_ROOM = 35,
- VAR_WALKTO_OBJ = 36,
-
- VAR_SCROLL_SCRIPT = 50,
- VAR_ENTRY_SCRIPT = 51,
- VAR_ENTRY_SCRIPT2 = 52,
- VAR_EXIT_SCRIPT = 53,
- VAR_EXIT_SCRIPT2 = 54,
- VAR_VERB_SCRIPT = 55,
- VAR_SENTENCE_SCRIPT = 56,
- VAR_HOOK_SCRIPT = 57,
- VAR_CUTSCENE_START_SCRIPT = 58,
- VAR_CUTSCENE_END_SCRIPT = 59,
- VAR_UNK_SCRIPT = 60,
- VAR_UNK_SCRIPT_2 = 61,
-
- VAR_PAUSE_KEY = 63,
- VAR_RESTART_KEY = 64, /* ?? */
- VAR_TALKSTOP_KEY = 65, /* ?? */
- VAR_SAVELOADDIALOG_KEY = 66, /* ?? */
- VAR_CUTSCENEEXIT_KEY = 24,
-
- VAR_TIMER_NEXT = 97,
- VAR_TMR_1 = 98,
- VAR_TMR_2 = 99,
- VAR_TMR_3 = 100,
-
- VAR_CAMERA_MIN_X = 101,
- VAR_CAMERA_MAX_X = 102,
- VAR_CAMERA_MIN_Y = 103,
- VAR_CAMERA_MAX_Y = 104,
- VAR_CAMERA_THRESHOLD_X = 105,
- VAR_CAMERA_THRESHOLD_Y = 106,
- VAR_CAMERA_SPEED_X = 107,
- VAR_CAMERA_SPEED_Y = 108,
- VAR_CAMERA_ACCEL_X = 109,
- VAR_CAMERA_ACCEL_Y = 110,
-
- VAR_EGO = 111,
-
- VAR_CURSORSTATE = 112,
- VAR_USERPUT = 113,
- VAR_DEFAULT_TALK_DELAY = 114,
- VAR_CHARINC = 115,
- VAR_DEBUGMODE = 116,
-
- VAR_CHARSET_MASK = 119,
-
- //VAR_V5_DRAWFLAGS = 9,
- VAR_MI1_TIMER = 14,
- VAR_V5_OBJECT_LO = 15,
- VAR_V5_OBJECT_HI = 16,
- VAR_V5_TALK_STRING_Y = 54,
- VAR_V5_CHARFLAG = 60,
-
- VAR_V6_EMSSPACE = 76,
-
- VAR_STRING2DRAW = 130,
-};
-
-#endif
-
-
enum ResTypes {
rtFirst = 1,
rtRoom = 1,
@@ -913,6 +740,8 @@ enum GameId {
GID_ZAK256 = 8,
GID_INDY3_256 = 9,
GID_LOOM = 10,
+ GID_FT = 11,
+ GID_DIG = 12,
};
enum GameFeatures {
@@ -2102,6 +1931,111 @@ struct Scumm {
void cost_decodeData(Actor *a, int frame, uint usemask);
void redrawLines(int from, int to);
+
+ void setupScummVarsOld();
+ void setupScummVarsNew();
+
+ byte VAR_EGO;
+ byte VAR_CAMERA_POS_X;
+ byte VAR_HAVE_MSG;
+ byte VAR_ROOM;
+ byte VAR_OVERRIDE;
+ byte VAR_MACHINE_SPEED;
+ byte VAR_ME;
+ byte VAR_NUM_ACTOR;
+ byte VAR_CURRENT_LIGHTS;
+ byte VAR_CURRENTDRIVE;
+ byte VAR_TMR_1;
+ byte VAR_TMR_2;
+ byte VAR_TMR_3;
+ byte VAR_MUSIC_FLAG;
+ byte VAR_ACTOR_RANGE_MIN;
+ byte VAR_ACTOR_RANGE_MAX;
+ byte VAR_CAMERA_MIN_X;
+ byte VAR_CAMERA_MAX_X;
+ byte VAR_TIMER_NEXT;
+ byte VAR_VIRT_MOUSE_X;
+ byte VAR_VIRT_MOUSE_Y;
+ byte VAR_ROOM_RESOURCE;
+ byte VAR_LAST_SOUND;
+ byte VAR_CUTSCENEEXIT_KEY;
+ byte VAR_TALK_ACTOR;
+ byte VAR_CAMERA_FAST_X;
+ byte VAR_SCROLL_SCRIPT;
+ byte VAR_ENTRY_SCRIPT;
+ byte VAR_ENTRY_SCRIPT2;
+ byte VAR_EXIT_SCRIPT;
+ byte VAR_EXIT_SCRIPT2;
+ byte VAR_VERB_SCRIPT;
+ byte VAR_SENTENCE_SCRIPT;
+ byte VAR_HOOK_SCRIPT;
+ byte VAR_CUTSCENE_START_SCRIPT;
+ byte VAR_CUTSCENE_END_SCRIPT;
+ byte VAR_CHARINC;
+ byte VAR_WALKTO_OBJ;
+ byte VAR_DEBUGMODE;
+ byte VAR_HEAPSPACE;
+ byte VAR_RESTART_KEY;
+ byte VAR_PAUSE_KEY;
+ byte VAR_MOUSE_X;
+ byte VAR_MOUSE_Y;
+ byte VAR_TIMER;
+ byte VAR_TMR_4;
+ byte VAR_SOUNDCARD;
+ byte VAR_VIDEOMODE;
+ byte VAR_SAVELOADDIALOG_KEY;
+ byte VAR_FIXEDDISK;
+ byte VAR_CURSORSTATE;
+ byte VAR_USERPUT;
+ byte VAR_SOUNDRESULT;
+ byte VAR_TALKSTOP_KEY;
+ byte VAR_59;
+
+ byte VAR_SOUNDPARAM;
+ byte VAR_SOUNDPARAM2;
+ byte VAR_SOUNDPARAM3;
+ byte VAR_MOUSEPRESENT;
+ byte VAR_PERFORMANCE_1;
+ byte VAR_PERFORMANCE_2;
+ byte VAR_ROOM_FLAG;
+ byte VAR_GAME_LOADED;
+ byte VAR_NEW_ROOM;
+ byte VAR_VERSION;
+
+ byte VAR_V5_DRAWFLAGS;
+ byte VAR_MI1_TIMER;
+ byte VAR_V5_OBJECT_LO;
+ byte VAR_V5_OBJECT_HI;
+ byte VAR_V5_TALK_STRING_Y;
+ byte VAR_V5_CHARFLAG;
+
+ byte VAR_V6_SCREEN_WIDTH;
+ byte VAR_V6_SCREEN_HEIGHT;
+ byte VAR_V6_EMSSPACE;
+ byte VAR_V6_RANDOM_NR;
+
+ byte VAR_STRING2DRAW;
+ byte VAR_CAMERA_POS_Y;
+
+ byte VAR_CAMERA_MIN_Y;
+ byte VAR_CAMERA_MAX_Y;
+ byte VAR_CAMERA_THRESHOLD_X;
+ byte VAR_CAMERA_THRESHOLD_Y;
+ byte VAR_CAMERA_SPEED_X;
+ byte VAR_CAMERA_SPEED_Y;
+ byte VAR_CAMERA_ACCEL_X;
+ byte VAR_CAMERA_ACCEL_Y;
+
+ byte VAR_LEFTBTN_DOWN;
+ byte VAR_RIGHTBTN_DOWN;
+ byte VAR_LEFTBTN_HOLD;
+ byte VAR_RIGHTBTN_HOLD;
+
+ byte VAR_UNK_SCRIPT;
+ byte VAR_UNK_SCRIPT_2;
+
+ byte VAR_DEFAULT_TALK_DELAY;
+ byte VAR_CHARSET_MASK;
};
enum AkosOpcodes{