diff options
author | Filippos Karapetis | 2010-11-17 11:15:52 +0000 |
---|---|---|
committer | Filippos Karapetis | 2010-11-17 11:15:52 +0000 |
commit | b707d6e7dc1baf2fb403ecf5e6e67c5ffa1d7019 (patch) | |
tree | 6d9b657c26007671133baa2a63aaeae3f5e86574 /engines/sci/engine/script.h | |
parent | 59ad5085bc317488ebb006737cc130c9cb100a80 (diff) | |
download | scummvm-rg350-b707d6e7dc1baf2fb403ecf5e6e67c5ffa1d7019.tar.gz scummvm-rg350-b707d6e7dc1baf2fb403ecf5e6e67c5ffa1d7019.tar.bz2 scummvm-rg350-b707d6e7dc1baf2fb403ecf5e6e67c5ffa1d7019.zip |
SCI: More work on SCI3, based on a patch by lskovlun
- Added SCI3 equivalents for access to object selectors
- Added SCI3 implementation of object relocation
- Added SCI3 implementation of Script::initialiseClasses()
svn-id: r54283
Diffstat (limited to 'engines/sci/engine/script.h')
-rw-r--r-- | engines/sci/engine/script.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/engines/sci/engine/script.h b/engines/sci/engine/script.h index 2105d1e6de..313f53600c 100644 --- a/engines/sci/engine/script.h +++ b/engines/sci/engine/script.h @@ -250,17 +250,30 @@ public: private: /** - * Processes a relocation block witin a script + * Processes a relocation block within a SCI0-SCI2.1 script * This function is idempotent, but it must only be called after all * objects have been instantiated, or a run-time error will occur. * @param obj_pos Location (segment, offset) of the block - * @return Location of the relocation block */ - void relocate(reg_t block); + void relocateSci0Sci21(reg_t block); + + /** + * Processes a relocation block within a SCI3 script + * This function is idempotent, but it must only be called after all + * objects have been instantiated, or a run-time error will occur. + * @param obj_pos Location (segment, offset) of the block + */ + void relocateSci3(reg_t block); bool relocateLocal(SegmentId segment, int location); /** + * Resolve a relocation in an SCI3 script + * @param offset The offset to relocate from + */ + int relocateOffsetSci3(uint32 offset); + + /** * Gets a pointer to the beginning of the objects in a SCI3 script */ const byte *getSci3ObjectsPointer(); |