aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/state.h
diff options
context:
space:
mode:
authorFilippos Karapetis2009-11-19 23:05:12 +0000
committerFilippos Karapetis2009-11-19 23:05:12 +0000
commitf1036e47ad41d01f15abf5832cee6904b1aff46c (patch)
tree374a35480069f82daf8a24df8703b7df401bf281 /engines/sci/engine/state.h
parenteefa01af68ec398219daa8ca8c8389f03a8bc48a (diff)
downloadscummvm-rg350-f1036e47ad41d01f15abf5832cee6904b1aff46c.tar.gz
scummvm-rg350-f1036e47ad41d01f15abf5832cee6904b1aff46c.tar.bz2
scummvm-rg350-f1036e47ad41d01f15abf5832cee6904b1aff46c.zip
- Simplified the different feature detection types, removed some duplicate code and merged the feature detection code which relies on selectors
- Replaced the function checksum calculations to make it more apparent what the feature detections do - Removed the now obsolete (and unused) firstRetOffset function svn-id: r45995
Diffstat (limited to 'engines/sci/engine/state.h')
-rw-r--r--engines/sci/engine/state.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/sci/engine/state.h b/engines/sci/engine/state.h
index 7332eae61c..a97ee3a12c 100644
--- a/engines/sci/engine/state.h
+++ b/engines/sci/engine/state.h
@@ -102,6 +102,13 @@ enum kLanguage {
K_LANG_PORTUGUESE = 351
};
+enum FeatureDetection {
+ kDetectGfxFunctions = 0,
+ kDetectMoveCountType = 1,
+ kDetectSoundType = 2,
+ kDetectSetCursorType = 3
+};
+
class FileHandle {
public:
Common::String _name;
@@ -285,11 +292,11 @@ public:
Common::String getLanguageString(const char *str, kLanguage lang) const;
private:
+ bool dissectSelector(FeatureDetection featureDetection);
+
SciVersion _doSoundType, _setCursorType, _lofsType, _gfxFunctionsType;
MoveCountType _moveCountType;
kLanguage charToLanguage(const char c) const;
- int methodChecksum(reg_t objAddress, Selector sel, int offset, uint size) const;
- uint16 firstRetOffset(reg_t objectAddress) const;
bool _usesCdTrack;
};