diff options
| -rw-r--r-- | resource.cpp | 2 | ||||
| -rw-r--r-- | scumm.h | 10 | ||||
| -rw-r--r-- | scummvm.cpp | 5 | ||||
| -rw-r--r-- | sdl.cpp | 11 |
4 files changed, 13 insertions, 15 deletions
diff --git a/resource.cpp b/resource.cpp index cad701fca9..16378c79d1 100644 --- a/resource.cpp +++ b/resource.cpp @@ -322,7 +322,7 @@ void Scumm::readIndexFile() { openRoom(-1); } -void Scumm::readIndexFileSmall() { +void Scumm_v3::readIndexFile() { uint16 blocktype; uint32 itemsize; int numblock = 0; @@ -810,8 +810,7 @@ public: void loadRoomObjectsSmall(); void readArrayFromIndexFile(); void readMAXS(); - void readIndexFile(); - void readIndexFileSmall(); + virtual void readIndexFile(); void loadCharset(int i); void nukeCharset(int i); @@ -1663,22 +1662,17 @@ public: byte VAR_CHARSET_MASK; void launch(); - - virtual void test1() const { return; }; }; class Scumm_v7 : public Scumm { public: - // Scumm_v7(); -// const static int test = 1; - void test1v7() const { printf("Test1"); } - void test1() const { test1v7(); } }; class Scumm_v3 : public Scumm { public: + void readIndexFile(); }; struct ScummDebugger { diff --git a/scummvm.cpp b/scummvm.cpp index 1d2d47e458..e91a21aa63 100644 --- a/scummvm.cpp +++ b/scummvm.cpp @@ -1051,10 +1051,7 @@ void Scumm::launch() if (_gameId==GID_MONKEY2 && _bootParam == 0) _bootParam = 10001; - if (_features & GF_SMALL_HEADER) - readIndexFileSmall(); - else - readIndexFile(); + readIndexFile(); initRandSeeds(); @@ -919,8 +919,15 @@ int main(int argc, char* argv[]) { #endif detecter.detectMain(argc, argv); - - scumm = new Scumm; + + + if( detecter._features & GF_AFTER_V7 ) // not final implementation. This is just a test + scumm = new Scumm_v7; + else + if( detecter._features & GF_OLD256 ) + scumm = new Scumm_v3; + else + scumm = new Scumm; scumm->_fullScreen = detecter._fullScreen; scumm->_debugMode = detecter._debugMode; |
