aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/kstring.cpp
AgeCommit message (Collapse)Author
2009-10-07Fixed a potential buffer overflow in kFormat, which occurs in the "About" ↵Filippos Karapetis
screen in KQ4 svn-id: r44738
2009-10-04SCI: Rename EngineState::segMan to _segManMax Horn
svn-id: r44629
2009-10-04SCI: kReadNumber crash fix for lsl1Martin Kiewitz
svn-id: r44597
2009-10-01SCI: cleanupWillem Jan Palenstijn
svn-id: r44528
2009-10-01Rewrote weird-looking code, which might lead to undefined behavior, ↵Filippos Karapetis
according to GNU svn-id: r44523
2009-09-30Fixed regression in r44417, found by waltervn. The score in KQ1SCI should be ↵Filippos Karapetis
diplayed correctly again svn-id: r44490
2009-09-30Fixed a crash when starting KQ1SCIFilippos Karapetis
svn-id: r44484
2009-09-30- Moved the list of synonyms and parser nodes inside the vocabulary classFilippos Karapetis
- Added a convenience member inside the EngineState struct to access the instance of the Vocabulary class svn-id: r44481
2009-09-29- Changed the unimplemented debug SCI kernel functions (InspectObj, ↵Filippos Karapetis
ShowSends, ShowObjs, ShowFree, StackUsage and Profiler) to be dummy functions - we have our own debugger, and don't use these functions for debugging - Removed the function number parameter from all kernel functions, as it's no longer needed, and removed the FAKE_FUNCT_NR hack - Removed kUnknown() and kStub() - Dummy/unknown kernel functions are no longer invoked, and a warning is shown instead, with the paremeters passed to them Note: there is an evil hack used for debugging scripts in invoke_selector(), which probably no longer works now svn-id: r44461
2009-09-27Simplify kFormat slightlyMax Horn
svn-id: r44417
2009-09-27SCI: clean up kStrAtWillem Jan Palenstijn
svn-id: r44394
2009-09-27SCI: Major string handling update.Willem Jan Palenstijn
All string access to segments should now work with both raw and non-raw (reg_t) segments, using the new utility functions in segMan. There will likely be regressions. svn-id: r44388
2009-09-26SCI: Fix regression in r44081 breaking walking in QfG2Willem Jan Palenstijn
svn-id: r44383
2009-09-22SCI: Add some FIXMEs, and print warning if accessing a raw segment as ↵Max Horn
non-raw or vice versa svn-id: r44245
2009-09-17SCI: Change SegmentId from int to uint16; consistently use segment 0 to ↵Max Horn
indicate an invalid segment svn-id: r44131
2009-09-17SCI: Rename MemObject -> SegmentObjMax Horn
svn-id: r44130
2009-09-16SCI: Rename Script class members, change Script from struct to classMax Horn
svn-id: r44126
2009-09-14SCI: Misc cleanupMax Horn
svn-id: r44093
2009-09-14SCI: Rename SegManager::kernelDeref*() methods to SegManager::deref*()Max Horn
svn-id: r44083
2009-09-14SCI: kernelDeref*() functions are now seSegmentManager methodsMax Horn
svn-id: r44082
2009-09-14SCI: Merge kernelDerefCharPtr and kernelDerefString and change it from a ↵Max Horn
macro to a function svn-id: r44081
2009-09-06SCI: Cleanup for some SegManager internalsMax Horn
- rename segGet and getSegment to getScriptSegment; the two can be distinguished by the parameter count. - rename type SCRIPT_GET to ScriptLoadType to conform with our code formatting conventions - rename get_class_address to getClassAddress - some cleanup svn-id: r43981
2009-09-06SCI: Rename resManager -> resMan; segManager -> segManMax Horn
svn-id: r43980
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-09-02SCI: Renamed kernel_dereference_* to kernelDeref*, and added kernelDerefStringMax Horn
svn-id: r43907
2009-09-02SCI: funct_nr is not used in 99% of all opcodes -- hide it in those (to be ↵Max Horn
removed eventually) svn-id: r43905
2009-08-25- Replaced more cases of EngineState parametersFilippos Karapetis
- Made some version comparisons for old SCI0 versions easier to read - Removed the GET_SEL32SV macro svn-id: r43729
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-08-10SCI: Improved multilanguage support for SCI1 and SCI1.1.Walter van Niftrik
svn-id: r43217
2009-07-11Moved the kernel and the vocabulary outside of the engine state (they're ↵Filippos Karapetis
static data, which never changes during a game) svn-id: r42398
2009-07-06Replaced sciprintf() calls with printf, DebugPrintf, warning and error callsFilippos Karapetis
svn-id: r42167
2009-06-07SCI: Moved resource36 handling into resource manager.Walter van Niftrik
svn-id: r41349
2009-06-07Replaced/removed KP_UINT, KP_SINT, SKPV and UKPV as well as the ↵Filippos Karapetis
VIEW_PRIORITY and PRIORITY_BAND_FIRST wrappers svn-id: r41338
2009-06-04SCI: Message: Added support for escape sequences.Walter van Niftrik
svn-id: r41169
2009-06-02Removed some unused variables from the engine stateFilippos Karapetis
svn-id: r41123
2009-06-01Replaced kernel_oops with error(), and added an enum to clarify the cases ↵Filippos Karapetis
where invoke_selector should stop svn-id: r41095
2009-05-31SCI: Renamed some Vocabulary methods for clarity; also renamed ↵Max Horn
decypherSaidBlock -> decipherSaidBlock; some cleanup in Console::cmdSentenceFragments svn-id: r41072
2009-05-31Further objectification of the SCI vocabulary functions. Removed the ↵Filippos Karapetis
"kernel_words" console command, as it's exactly the same as "parser_words" svn-id: r41065
2009-05-31The error() and warning() functions add ! and newline automatically. (I didn'tTorbjörn Andersson
look at debug() and debugC(), since I'm really bored with this now. :-) svn-id: r41061
2009-05-31More objectification of the Vocabulary functionsFilippos Karapetis
svn-id: r41057
2009-05-30Started objectifying the vocabulary functions (WIP)Filippos Karapetis
svn-id: r41051
2009-05-30- Removed debug_mode from the engine stateFilippos Karapetis
- Turned all SCIkwarn and SCIkdebug functions to ScummVM's debugC function - Placed some debug code in appropriate defines: DEBUG_PARSER, DEBUG_AVOIDPATH and DEBUG_SOUND - Removed the "debuglog" command and the "script_checkloads_flag" and "sci_debug_flags" variables svn-id: r41033
2009-05-26SCI: Changed signatures of StrLen and StrCpy to allow NULL pointers. This isWalter van Niftrik
needed for a game bug in KQ6CD. svn-id: r40930
2009-05-26SCI: Turned the global 'static MessageState state' variable into a member of ↵Max Horn
EngineState svn-id: r40910
2009-05-26Turned some static tables into static const tables; added some FIXME ↵Max Horn
comments to global static vars that should be removed (many more exist in SCI, Tinsel, and some other engines) svn-id: r40908
2009-05-21Removed the PREG, PSTK, IS_NULL_REG and REG_EQ definesFilippos Karapetis
svn-id: r40767
2009-05-19SCI: Added some stubs for LSL6CD (lores).Walter van Niftrik
svn-id: r40719
2009-05-18SCI: Removed SCI_SIMPLE_SAID_CODE and the associated heavily bitrotted codeMax Horn
svn-id: r40691
2009-05-18Fix some error/warning calls. (might need some review, from someone familiar ↵Johannes Schickel
with SCI) svn-id: r40680
2009-05-18Removed the unused file and line parameters from the list and list node ↵Filippos Karapetis
lookup functions, and removed the LOOKUP_LIST and LOOKUP_NODE defines. Also, disabled the unused LOOKUP_SPECIES define svn-id: r40676