[Scummvm-cvs-logs] CVS: scummvm/scumm script.cpp,1.43,1.44 scumm.h,1.144,1.145
Max Horn
fingolfin at users.sourceforge.net
Thu Feb 6 13:33:04 CET 2003
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv7038
Modified Files:
script.cpp scumm.h
Log Message:
removed an obsolete member var, and started to make Scumm member vars protected (had to make some exception; the code which makes these exceptions necessary should be revised)
Index: script.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script.cpp,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- script.cpp 15 Jan 2003 15:49:44 -0000 1.43
+++ script.cpp 6 Feb 2003 21:32:18 -0000 1.44
@@ -283,7 +283,6 @@
{
while (_currentScript != 0xFF) {
_opcode = fetchScriptByte();
- _scriptPointerStart = _scriptPointer;
vm.slot[_currentScript].didexec = 1;
debug(7, "Script %d, offset 0x%x: [%X] %s()",
vm.slot[_currentScript].number,
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.144
retrieving revision 1.145
diff -u -d -r1.144 -r1.145
--- scumm.h 2 Feb 2003 12:50:56 -0000 1.144
+++ scumm.h 6 Feb 2003 21:32:20 -0000 1.145
@@ -229,6 +229,7 @@
};
class Scumm : public Engine {
+ friend void NORETURN CDECL error(const char *s, ...); // FIXME - ugly but error() accesses g_scumm...
public:
/* Put often used variables at the top.
* That results in a shorter form of the opcode
@@ -433,9 +434,12 @@
void heapClear(int mode);
void unkHeapProc2(int a, int b);
+
+protected:
/* Script VM - should be in Script class */
+
uint32 _localScriptList[NUM_LOCALSCRIPT];
- byte *_scriptPointer, *_scriptOrgPointer, *_scriptPointerStart;
+ byte *_scriptPointer, *_scriptOrgPointer;
byte _opcode, _numNestedScripts, _currentScript;
uint16 _curExecScript;
byte **_lastCodePtr;
@@ -448,8 +452,12 @@
void initializeLocals(int slot, int *vars);
int getScriptSlot();
+
+public:
void runScript(int script, int a, int b, int *lvarptr);
void stopScriptNr(int script);
+
+protected:
void runScriptNested(int script);
void executeScript();
void updateScriptPtr();
@@ -464,7 +472,9 @@
void setResult(int result);
void push(int a);
int pop();
- virtual int readVar(uint var);
+public:
+ virtual int readVar(uint var); // FIXME - should be protected but scumm/dialogs.cpp uses it
+protected:
virtual void writeVar(uint var, int value);
void runHook(int i);
bool isScriptInUse(int script);
@@ -474,7 +484,9 @@
void runAllScripts();
void cutscene(int *args);
void endCutscene();
- void exitCutscene();
+public:
+ void exitCutscene(); // FIXME - should be protected but ScummRenderer destructor uses it
+protected:
void runExitScript();
void runEntryScript();
@@ -484,13 +496,16 @@
void killScriptsAndResources();
void checkAndRunSentenceScript();
void decreaseScriptDelay(int amount);
- bool isScriptRunning(int script);
+public:
+ bool isScriptRunning(int script); // FIXME - should be protected but Sound::startTalkSound uses this
+protected:
bool isRoomScriptRunning(int script);
void copyScriptString(byte *dst);
int resStrLen(const byte *src) const;
void doSentence(int c, int b, int a);
void setStringVars(int i);
+public:
/* Script VM or Object class? */
void stopObjectCode();
void stopObjectScript(int script);
More information about the Scummvm-git-logs
mailing list