[Scummvm-cvs-logs] CVS: scummvm vars.cpp,NONE,1.1 Makefile,1.20,1.21 debug.cpp,1.13,1.14 resource.cpp,1.39,1.40 script_v2.cpp,1.19,1.20 scumm.h,1.51,1.52 scummvm.cpp,1.45,1.46
Vincent Hamm
yazoo at users.sourceforge.net
Sat Feb 23 15:24:01 CET 2002
Update of /cvsroot/scummvm/scummvm
In directory usw-pr-cvs1:/tmp/cvs-serv20901
Modified Files:
Makefile debug.cpp resource.cpp script_v2.cpp scumm.h
scummvm.cpp
Added Files:
vars.cpp
Log Message:
Changed the scummVar system to a dynamic one. Started to remove all the reference to FULL_TROTTLE define.
--- NEW FILE: vars.cpp ---
#include "stdafx.h"
#include "scumm.h"
void Scumm::setupScummVarsOld(){
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;
}
void Scumm::setupScummVarsNew() {
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;
}
Index: Makefile
===================================================================
RCS file: /cvsroot/scummvm/scummvm/Makefile,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** Makefile 15 Jan 2002 13:23:06 -0000 1.20
--- Makefile 23 Feb 2002 23:23:28 -0000 1.21
***************
*** 16,20 ****
sys.o verbs.o sdl.o script_v1.o script_v2.o debug.o gui.o \
sound/imuse.o sound/fmopl.o sound/adlib.o sound/gmidi.o debugrl.o \
! akos.o
DISTFILES=$(OBJS:.o=.cpp) Makefile scumm.h scummsys.h stdafx.h stdafx.cpp \
--- 16,20 ----
sys.o verbs.o sdl.o script_v1.o script_v2.o debug.o gui.o \
sound/imuse.o sound/fmopl.o sound/adlib.o sound/gmidi.o debugrl.o \
! akos.o vars.o
DISTFILES=$(OBJS:.o=.cpp) Makefile scumm.h scummsys.h stdafx.h stdafx.cpp \
Index: debug.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/debug.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** debug.cpp 19 Feb 2002 18:04:21 -0000 1.13
--- debug.cpp 23 Feb 2002 23:23:28 -0000 1.14
***************
*** 102,106 ****
} else {
int room=atoi(_parameters);
! _s->actor[_s->_vars[VAR_EGO]].room=room;
_s->startScene(room, 0, 0);
_s->_fullRedraw = 1;
--- 102,106 ----
} else {
int room=atoi(_parameters);
! _s->actor[_s->_vars[_s->VAR_EGO]].room=room;
_s->startScene(room, 0, 0);
_s->_fullRedraw = 1;
Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/resource.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -d -r1.39 -r1.40
*** resource.cpp 20 Feb 2002 22:24:40 -0000 1.39
--- resource.cpp 23 Feb 2002 23:23:28 -0000 1.40
***************
*** 63,74 ****
return;
}
- #if defined(FULL_THROTTLE)
- sprintf(buf, "%s.la%d", _exe_name,
- room==0 ? 0 : res.roomno[rtRoom][room]);
- _encbyte = (_features & GF_USE_KEY) ? 0x69 : 0;
- #else
if (!(_features & GF_SMALL_HEADER)) {
! sprintf(buf, "%s.%.3d", _exe_name, room==0 ? 0 : res.roomno[rtRoom][room]);
!
_encbyte = (_features & GF_USE_KEY) ? 0x69 : 0;
} else if(!(_features & GF_SMALL_NAMES)) {
--- 63,71 ----
return;
}
if (!(_features & GF_SMALL_HEADER)) {
! if(_features & GF_AFTER_V7)
! sprintf(buf, "%s.la%d", _exe_name, room==0 ? 0 : res.roomno[rtRoom][room]);
! else
! sprintf(buf, "%s.%.3d", _exe_name, room==0 ? 0 : res.roomno[rtRoom][room]);
_encbyte = (_features & GF_USE_KEY) ? 0x69 : 0;
} else if(!(_features & GF_SMALL_NAMES)) {
***************
*** 92,96 ****
_encbyte = 0;
}
- #endif
if (openResourceFile(buf)) {
--- 89,92 ----
Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/script_v2.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** script_v2.cpp 22 Feb 2002 16:32:04 -0000 1.19
--- script_v2.cpp 23 Feb 2002 23:23:28 -0000 1.20
***************
*** 2144,2330 ****
getStackList(args,sizeof(args)/sizeof(args[0]));
! #if defined(FULL_THROTTLE)
! switch(args[0]) {
! case 4:
! grabCursor(args[1], args[2], args[3], args[4]);
! break;
! case 6:
! warning("o6_miscOps: startVideo(%d,%s)", args[1], getStringAddress(_vars[0xf6/2]));
! break;
! case 7:
! warning("o6_miscOps: stub7()");
! break;
! case 10:
! warning("o6_miscOps: stub10(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 11:
! warning("o6_miscOps: stub11(%d)", args[1]);
! break;
! case 12:
! setCursorImg(args[1], -1, args[2]);
! break;
! case 13:
! warning("o6_miscOps: stub13(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 14:
! remapActor(derefActorSafe(args[1], "o6_miscOps:14"), args[2],args[3],args[4],args[5]);
! break;
! case 15:
! warning("o6_miscOps: stub15(%d)", args[1]);
! break;
! case 16: {
! byte buf[200];
! _msgPtrToAdd = buf;
! addMessageToStack(getStringAddress(_vars[VAR_STRING2DRAW]));
! warning("o6_miscOps: drawString(%s,charset=%d,color=%d,x=%d,y=%d)",buf, args[1],args[2],args[3],args[4]);
! break;
! }
! case 17:
! warning("o6_miscOps: stub17(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 18:
! warning("o6_miscOps: stub18(%d,%d)", args[1], args[2]);
! break;
! case 107:
! a = derefActorSafe(args[1], "o6_miscops: 107");
! a->scalex = args[2];
! a->needBgReset = true;
! a->needRedraw = true;
! break;
! case 108:
! setupShadowPalette(args[1],args[2],args[3],args[4],args[5],args[6]);
! break;
! case 109:
! setupShadowPalette(0, args[1],args[2],args[3],args[4],args[5]);
! break;
! case 114:
! warning("o6_miscOps: stub114()");
! break;
! case 117:
! freezeScripts(2);
! break;
! case 118:
! enqueueObject(args[1],args[2],args[3],args[4],args[5],args[6],args[7],args[8], 3);
! break;
! case 119:
! enqueueObject(args[1],args[2],args[3],args[4],args[5],args[6],args[7],args[8], 0);
! break;
! case 120:
! warning("o6_miscOps: stub120(%d,%d)", args[1], args[2]);
! break;
! case 124:
! warning("o6_miscOps: stub124(%d)", args[1]);
! break;
! }
!
! #else
! switch(args[0]) {
! case 3:
! warning("o6_miscOps: nothing in 3");
! break;
! case 4:
! grabCursor(args[1], args[2], args[3], args[4]);
! break;
! case 5:
! unkVirtScreen4(args[1]);
! break;
! case 6:
! _fullRedraw = 1;
! redrawBGAreas();
! for (i=0; i<NUM_ACTORS; i++)
! derefActor(i)->needRedraw = true;
! processActors();
! screenEffect(args[1]);
! break;
! case 8:
! startManiac();
! break;
! case 9:
! unkMiscOp9();
! break;
! case 124: /* samnmax */
! warning("o6_miscOps: _saveSound=%d", args[1]);
! break;
! case 104: /* samnmax */
! nukeFlObjects(args[2], args[3]);
! break;
! case 106:
! error("stub o6_miscOps_106()");
! break;
! case 107: /* set actor scale */
! a = derefActorSafe(args[1], "o6_miscops: 107");
! a->scalex = args[2];
! a->needBgReset = true;
! a->needRedraw = true;
! break;
!
! case 108:
! case 109:
! warning("stub o6_miscOps_108(%d,%d,%d,%d,%d,%d,%d)",
! args[1], args[2], args[3], args[4], args[5],
! 0,256);
! break;
! case 110:
! gdi.clearUpperMask();
! break;
! case 111:
! a = derefActorSafe(args[1], "o6_miscops: 111");
! a->shadow_mode = args[2] + args[3];
! break;
! case 112:
! error("stub o6_miscOps_112(%d,%d,%d,%d,%d,%d,%d)",
! args[1], args[2], args[3], args[4], args[5],
! args[6], args[7]);
! break;
! case 114: /* palette? */
! error("stub o6_miscOps_114()");
! break;
! case 117:
! error("stub o6_miscOps_117()");
! break;
!
! case 118:
! error("stub o6_miscOps_118(%d,%d,%d,%d,%d,%d,%d)",
! args[1], args[2], args[3], args[4], args[5],
! args[6], args[7]);
! break;
! case 119:
! enqueueObject(args[1], args[2], args[3], args[4], args[5],
! args[6], args[7], args[8], 0);
! break;
! case 120:
! swapPalColors(args[1],args[2]);
! break;
! case 121:
! error("stub o6_miscOps_121(%d)", args[1]);
! break;
! case 122:
! error("stub o6_miscOps_122(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)",
! args[1],args[2],args[3],args[4],
! args[5],args[6],args[7],args[8],
! args[9],args[10],args[11],args[12]);
! break;
! case 123:
! error("stub o6_miscOps_123(%d,%d)", args[1], args[2]);
! break;
! default:
! error("o6_miscOps: default case %d", args[0]);
}
- #endif
}
--- 2144,2327 ----
getStackList(args,sizeof(args)/sizeof(args[0]));
! if(_features & GF_AFTER_V7) {
! switch(args[0]) {
! case 4:
! grabCursor(args[1], args[2], args[3], args[4]);
! break;
! case 6:
! warning("o6_miscOps: startVideo(%d,%s)", args[1], getStringAddress(_vars[0xf6/2]));
! break;
! case 7:
! warning("o6_miscOps: stub7()");
! break;
! case 10:
! warning("o6_miscOps: stub10(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 11:
! warning("o6_miscOps: stub11(%d)", args[1]);
! break;
! case 12:
! setCursorImg(args[1], -1, args[2]);
! break;
! case 13:
! warning("o6_miscOps: stub13(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 14:
! remapActor(derefActorSafe(args[1], "o6_miscOps:14"), args[2],args[3],args[4],args[5]);
! break;
! case 15:
! warning("o6_miscOps: stub15(%d)", args[1]);
! break;
! case 16: {
! byte buf[200];
! _msgPtrToAdd = buf;
! addMessageToStack(getStringAddress(_vars[VAR_STRING2DRAW]));
! warning("o6_miscOps: drawString(%s,charset=%d,color=%d,x=%d,y=%d)",buf, args[1],args[2],args[3],args[4]);
! break;
! }
! case 17:
! warning("o6_miscOps: stub17(%d,%d,%d,%d)",args[1],args[2],args[3],args[4]);
! break;
! case 18:
! warning("o6_miscOps: stub18(%d,%d)", args[1], args[2]);
! break;
! case 107:
! a = derefActorSafe(args[1], "o6_miscops: 107");
! a->scalex = args[2];
! a->needBgReset = true;
! a->needRedraw = true;
! break;
! case 108:
! setupShadowPalette(args[1],args[2],args[3],args[4],args[5],args[6]);
! break;
! case 109:
! setupShadowPalette(0, args[1],args[2],args[3],args[4],args[5]);
! break;
! case 114:
! warning("o6_miscOps: stub114()");
! break;
! case 117:
! freezeScripts(2);
! break;
! case 118:
! enqueueObject(args[1],args[2],args[3],args[4],args[5],args[6],args[7],args[8], 3);
! break;
! case 119:
! enqueueObject(args[1],args[2],args[3],args[4],args[5],args[6],args[7],args[8], 0);
! break;
! case 120:
! warning("o6_miscOps: stub120(%d,%d)", args[1], args[2]);
! break;
! case 124:
! warning("o6_miscOps: stub124(%d)", args[1]);
! break;
! }
! } else {
! switch(args[0]) {
! case 3:
! warning("o6_miscOps: nothing in 3");
! break;
! case 4:
! grabCursor(args[1], args[2], args[3], args[4]);
! break;
! case 5:
! unkVirtScreen4(args[1]);
! break;
! case 6:
! _fullRedraw = 1;
! redrawBGAreas();
! for (i=0; i<NUM_ACTORS; i++)
! derefActor(i)->needRedraw = true;
! processActors();
! screenEffect(args[1]);
! break;
! case 8:
! startManiac();
! break;
! case 9:
! unkMiscOp9();
! break;
! case 124: /* samnmax */
! warning("o6_miscOps: _saveSound=%d", args[1]);
! break;
! case 104: /* samnmax */
! nukeFlObjects(args[2], args[3]);
! break;
! case 106:
! error("stub o6_miscOps_106()");
! break;
! case 107: /* set actor scale */
! a = derefActorSafe(args[1], "o6_miscops: 107");
! a->scalex = args[2];
! a->needBgReset = true;
! a->needRedraw = true;
! break;
! case 108:
! case 109:
! warning("stub o6_miscOps_108(%d,%d,%d,%d,%d,%d,%d)",args[1], args[2], args[3], args[4], args[5],0,256);
! break;
! case 110:
! gdi.clearUpperMask();
! break;
! case 111:
! a = derefActorSafe(args[1], "o6_miscops: 111");
! a->shadow_mode = args[2] + args[3];
! break;
! case 112:
! error("stub o6_miscOps_112(%d,%d,%d,%d,%d,%d,%d)",
! args[1], args[2], args[3], args[4], args[5],
! args[6], args[7]);
! break;
!
! case 114: /* palette? */
! error("stub o6_miscOps_114()");
! break;
! case 117:
! error("stub o6_miscOps_117()");
! break;
! case 118:
! error("stub o6_miscOps_118(%d,%d,%d,%d,%d,%d,%d)",
! args[1], args[2], args[3], args[4], args[5],
! args[6], args[7]);
! break;
!
! case 119:
! enqueueObject(args[1], args[2], args[3], args[4], args[5],
! args[6], args[7], args[8], 0);
! break;
! case 120:
! swapPalColors(args[1],args[2]);
! break;
! case 121:
! error("stub o6_miscOps_121(%d)", args[1]);
! break;
! case 122:
! error("stub o6_miscOps_122(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)",
! args[1],args[2],args[3],args[4],
! args[5],args[6],args[7],args[8],
! args[9],args[10],args[11],args[12]);
! break;
! case 123:
! error("stub o6_miscOps_123(%d,%d)", args[1], args[2]);
! break;
! default:
! error("o6_miscOps: default case %d", args[0]);
! }
}
}
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm.h,v
retrieving revision 1.51
retrieving revision 1.52
diff -C2 -d -r1.51 -r1.52
*** scumm.h 22 Feb 2002 16:06:09 -0000 1.51
--- scumm.h 23 Feb 2002 23:23:28 -0000 1.52
***************
*** 295,471 ****
};
- #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,
--- 295,298 ----
***************
*** 914,917 ****
--- 741,746 ----
GID_INDY3_256 = 9,
GID_LOOM = 10,
+ GID_FT = 11,
+ GID_DIG = 12,
};
***************
*** 2103,2106 ****
--- 1932,2040 ----
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;
};
Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scummvm.cpp,v
retrieving revision 1.45
retrieving revision 1.46
diff -C2 -d -r1.45 -r1.46
*** scummvm.cpp 22 Feb 2002 16:59:24 -0000 1.45
--- scummvm.cpp 23 Feb 2002 23:23:28 -0000 1.46
***************
*** 207,210 ****
--- 207,215 ----
}
+ if(_features & GF_AFTER_V7)
+ setupScummVarsNew();
+ else
+ setupScummVarsOld();
+
if (_gameId==GID_INDY4 && _bootParam==0) {
_bootParam = -7873;
***************
*** 466,471 ****
/* Scumm Version 7 */
! {"ft", "Full Throttle", GID_SAMNMAX, 7, 3, 0, GF_NEW_OPCODES|GF_AFTER_V6|GF_AFTER_V7},
!
/* Scumm Version 8 */
// {"curse", "The Curse of Monkey Island", GID_CMI, 8, 1, 0,},
--- 471,477 ----
/* Scumm Version 7 */
! {"ft", "Full Throttle", GID_FT, 7, 3, 0, GF_NEW_OPCODES|GF_AFTER_V6|GF_AFTER_V7},
! {"dig", "The Dig", GID_DIG, 7, 5, 0, GF_NEW_OPCODES|GF_AFTER_V6|GF_AFTER_V7},
!
/* Scumm Version 8 */
// {"curse", "The Curse of Monkey Island", GID_CMI, 8, 1, 0,},
More information about the Scummvm-git-logs
mailing list