diff options
author | Travis Howell | 2009-06-06 10:50:37 +0000 |
---|---|---|
committer | Travis Howell | 2009-06-06 10:50:37 +0000 |
commit | d11d56ae13491f92c667b7210e4f4bac15425349 (patch) | |
tree | 8ea9feaa53bb67cc7bb2fb169a0da8d3ce2dd022 /engines/scumm | |
parent | 26b03dd359e28ebb058a6c8d1cd2773ebd4a8ab2 (diff) | |
download | scummvm-rg350-d11d56ae13491f92c667b7210e4f4bac15425349.tar.gz scummvm-rg350-d11d56ae13491f92c667b7210e4f4bac15425349.tar.bz2 scummvm-rg350-d11d56ae13491f92c667b7210e4f4bac15425349.zip |
Add logic stub for Backyard Basketball.
svn-id: r41217
Diffstat (limited to 'engines/scumm')
-rw-r--r-- | engines/scumm/detection_tables.h | 2 | ||||
-rw-r--r-- | engines/scumm/he/logic_he.cpp | 86 | ||||
-rw-r--r-- | engines/scumm/he/logic_he.h | 8 | ||||
-rw-r--r-- | engines/scumm/scumm.cpp | 4 | ||||
-rw-r--r-- | engines/scumm/scumm.h | 1 |
5 files changed, 100 insertions, 1 deletions
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h index 60c9837bb4..abdc5b4e91 100644 --- a/engines/scumm/detection_tables.h +++ b/engines/scumm/detection_tables.h @@ -355,7 +355,7 @@ static const GameSettings gameVariantsTable[] = { // Uses bink in external files for logos {"Baseball2003", 0, 0, GID_HEGAME, 6, 100, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK}, - {"basketball", 0, 0, GID_HEGAME, 6, 100, MDT_NONE, GF_USE_KEY| GF_16BIT_COLOR, UNK}, + {"basketball", 0, 0, GID_BASKETBALL, 6, 100, MDT_NONE, GF_USE_KEY| GF_16BIT_COLOR, UNK}, {"football2002", 0, 0, GID_FOOTBALL, 6, 100, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK}, {"Soccer2004", 0, 0, GID_SOCCER, 6, 100, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK}, diff --git a/engines/scumm/he/logic_he.cpp b/engines/scumm/he/logic_he.cpp index 5f3bdd7018..a095622173 100644 --- a/engines/scumm/he/logic_he.cpp +++ b/engines/scumm/he/logic_he.cpp @@ -960,6 +960,92 @@ int LogicHEsoccer::op_1021(int32 *args) { } /*********************** + * Backyard Basketball + * + */ + +int LogicHEbasketball::versionID() { + return 1; +} + +int32 LogicHEbasketball::dispatch(int op, int numArgs, int32 *args) { + int res = 0; + + switch (op) { + case 1001: + break; + + case 1006: + break; + + case 1011: + break; + + case 1012: + break; + + case 1035: + break; + + case 1050: + break; + + case 1051: + break; + + case 1052: + break; + + case 1056: + break; + + case 1057: + break; + + case 1058: + break; + + case 1060: + break; + + case 1064: + break; + + case 1067: + break; + + case 1073: + break; + + case 1075: + break; + + case 1076: + break; + + case 1080: + break; + + case 1081: + break; + + case 1090: + break; + + case 1091: + break; + + case 1513: + break; + + default: + LogicHE::dispatch(op, numArgs, args); + } + + return res; +} + +/*********************** * Moonbase Commander * */ diff --git a/engines/scumm/he/logic_he.h b/engines/scumm/he/logic_he.h index 67b3ce78d3..29304b7468 100644 --- a/engines/scumm/he/logic_he.h +++ b/engines/scumm/he/logic_he.h @@ -135,6 +135,14 @@ private: int op_1021(int32 *args); }; +class LogicHEbasketball : public LogicHE { +public: + LogicHEbasketball(ScummEngine_v90he *vm) : LogicHE(vm) {} + + int versionID(); + int32 dispatch(int op, int numArgs, int32 *args); +}; + class LogicHEmoonbase : public LogicHE { public: LogicHEmoonbase(ScummEngine_v90he *vm) : LogicHE(vm) {} diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp index cbfa720e79..07660ab5bf 100644 --- a/engines/scumm/scumm.cpp +++ b/engines/scumm/scumm.cpp @@ -1524,6 +1524,10 @@ void ScummEngine_v90he::resetScumm() { _logicHE = new LogicHEsoccer(this); break; + case GID_BASKETBALL: + _logicHE = new LogicHEbasketball(this); + break; + case GID_MOONBASE: _logicHE = new LogicHEmoonbase(this); break; diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h index ff3852ee83..9ac6f87f26 100644 --- a/engines/scumm/scumm.h +++ b/engines/scumm/scumm.h @@ -226,6 +226,7 @@ enum ScummGameId { GID_FUNSHOP, // Used for all three funshops GID_FOOTBALL, GID_SOCCER, + GID_BASKETBALL, GID_MOONBASE, GID_HECUP // CUP demos }; |