diff options
author | Filippos Karapetis | 2010-11-21 00:44:04 +0000 |
---|---|---|
committer | Filippos Karapetis | 2010-11-21 00:44:04 +0000 |
commit | d275461958b650023373383ed2243cc77fd5c736 (patch) | |
tree | b5929df4ffdcd8986141015428f30ddbbefdf662 /engines/sci/engine/features.h | |
parent | 5616bde4e7ec28f886aeb2c98c6a2fec52f9fa9d (diff) | |
download | scummvm-rg350-d275461958b650023373383ed2243cc77fd5c736.tar.gz scummvm-rg350-d275461958b650023373383ed2243cc77fd5c736.tar.bz2 scummvm-rg350-d275461958b650023373383ed2243cc77fd5c736.zip |
SCI: Added a heuristic to detect the modified late SCI2.1/SCI3 kString/kArray kernel functions
svn-id: r54398
Diffstat (limited to 'engines/sci/engine/features.h')
-rw-r--r-- | engines/sci/engine/features.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/sci/engine/features.h b/engines/sci/engine/features.h index 336520f0d9..83cb58aa2d 100644 --- a/engines/sci/engine/features.h +++ b/engines/sci/engine/features.h @@ -37,6 +37,12 @@ enum MoveCountType { kIncrementMoveCount }; +enum Sci2StringFunctionType { + kSci2StringFunctionUninitialized, + kSci2StringFunctionOld, + kSci2StringFunctionNew +}; + class GameFeatures { public: GameFeatures(SegManager *segMan, Kernel *kernel); @@ -79,6 +85,13 @@ public: * @return Graphics functions type, SCI_VERSION_2 / SCI_VERSION_2_1 */ SciVersion detectSci21KernelType(); + + /** + * Autodetects the string subfunctions used in SCI2 - SCI3 + * @return string subfunctions type, kSci2StringFunctionOld / kSci2StringFunctionNew + */ + Sci2StringFunctionType detectSci2StringFunctionType(); + #endif /** @@ -109,11 +122,13 @@ private: bool autoDetectMoveCountType(); #ifdef ENABLE_SCI32 bool autoDetectSci21KernelType(); + bool autoDetectSci21StringFunctionType(); #endif SciVersion _doSoundType, _setCursorType, _lofsType, _gfxFunctionsType, _messageFunctionType; #ifdef ENABLE_SCI32 SciVersion _sci21KernelType; + Sci2StringFunctionType _sci2StringFunctionType; #endif MoveCountType _moveCountType; |