Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-07-22 | SCI: Fixed the crash in LSL2, room 42 (when arriving at the island). ↵ | Filippos Karapetis | |
kAnimate may refer to unfrozen objects which have been deleted, thus handle that case accordingly. svn-id: r51152 | |||
2010-07-02 | Add checks for null reference to strncpy() and strlen() - happens for ↵ | Filippos Karapetis | |
example when trying to talk to inanimate objects in KQ6 svn-id: r50596 | |||
2010-07-02 | getString() on a NULL pointer is an empty string (verified in SCI2.1) | Filippos Karapetis | |
svn-id: r50591 | |||
2010-07-01 | Only print the ambiguous object notice in findObjectByName if we didn't ↵ | Matthew Hoops | |
specify an index. svn-id: r50584 | |||
2010-07-01 | SCI: Make SegManager::_heap private | Max Horn | |
svn-id: r50552 | |||
2010-07-01 | SCI: Add SegManager::getSystemString() method | Max Horn | |
svn-id: r50550 | |||
2010-07-01 | SCI: Rename some variables to match our naming conventions | Max Horn | |
svn-id: r50549 | |||
2010-07-01 | SCI: Simplify SegManager::findObjectByName | Max Horn | |
svn-id: r50548 | |||
2010-06-28 | SCI: Make various SegManager const | Max Horn | |
svn-id: r50439 | |||
2010-06-28 | SCI: Make Script member vars private; add const qualifiers | Max Horn | |
Only three Script members remain public (for now) svn-id: r50428 | |||
2010-06-27 | Made the script initialization/uninitialization methods part of the segment ↵ | Filippos Karapetis | |
manager svn-id: r50402 | |||
2010-06-27 | SCI: Moved all the script-related code inside script.cpp/.h, and all script ↵ | Filippos Karapetis | |
opcode-related code inside vm.cpp/.h svn-id: r50396 | |||
2010-06-25 | Renamed some variables | Filippos Karapetis | |
svn-id: r50284 | |||
2010-06-25 | Removed the getHunkPointer error - it's valid SCI behavior (e.g. when ↵ | Filippos Karapetis | |
loading/quitting sometimes, since hunks are not saved). We check for valid hunk pointers anyway, so there's no reason for the warning/error svn-id: r50279 | |||
2010-06-25 | When loading a game, stop all running VMs recursively, and also stop ↵ | Filippos Karapetis | |
kAnimate's current recursion. This fixes the invalid execution stack frame in SQ1, when loading from the death screen after dying from the acid drops in Kerona. This should also fix the invalid hunk pointers, thus the warning about invalid hunk pointers has been turned into an error, as it shouldn't occur anymore svn-id: r50277 | |||
2010-06-24 | SCI: doing the exact opposite of r50236 code-wise now, as it was meant to be | Martin Kiewitz | |
svn-id: r50237 | |||
2010-06-24 | SCI: ignore segment 0xFFFF in segmanager getchar, when offset > 1 - so we ↵ | Martin Kiewitz | |
dont write a warning, if the scripts use some uninitialized temp variable as terminator svn-id: r50236 | |||
2010-06-24 | SCI: reverting r50232, didnt make sense. thx @ wjp for noticing | Martin Kiewitz | |
svn-id: r50233 | |||
2010-06-24 | SCI: correctly put NUL inside SegManager::strncpy() even when using n = ↵ | Martin Kiewitz | |
0xFFFFFFFFU svn-id: r50232 | |||
2010-06-24 | Initialize the stack with 'S' or 's' characters, like SSCI does (ultimately, ↵ | Filippos Karapetis | |
we should not change the stack again like we do in op_link - this is what Sierra is doing). Some cleanup svn-id: r50207 | |||
2010-06-18 | Fixed a problem in kAnimate which occurred when a list was modified by a ↵ | Filippos Karapetis | |
call (e.g. in KQ1 demo, PQ2) svn-id: r50022 | |||
2010-06-18 | Marked the KQ1 demo workaround as a workaround | Filippos Karapetis | |
svn-id: r49985 | |||
2010-06-18 | Added a workaround for the KQ1 demo (looks like a script bug) | Filippos Karapetis | |
svn-id: r49984 | |||
2010-06-17 | SCI: Update FIXME in SegmentManager | Max Horn | |
* Turn one FIXME into a simple comment * Rewrap comment to 80 columns * Turn several warnings into errors svn-id: r49962 | |||
2010-06-17 | Removed a now obsolete FIXME (spotted by Fingolfin) | Filippos Karapetis | |
svn-id: r49932 | |||
2010-06-15 | Cleanup of the savegame code: | Filippos Karapetis | |
- Added a saveLoadWithSerializer() method to the reg_t class - Moved SegManager::reconstructClones() inside savegame.cpp - Moved SoundCommandParser::syncPlayList() and SoundCommandParser::reconstructPlayList() inside savegame.cpp svn-id: r49683 | |||
2010-06-14 | Some cleanup of the script locals code | Filippos Karapetis | |
svn-id: r49649 | |||
2010-06-01 | The system strings segment is a fixed segment of the segment manager, which ↵ | Filippos Karapetis | |
doesn't change during the game, thus move all the system strings code and variables inside the segment manager svn-id: r49372 | |||
2010-05-30 | Limit access to the _bufSize, _scriptSize and _heapSize members of the ↵ | Filippos Karapetis | |
Script class svn-id: r49327 | |||
2010-05-29 | Limit access to the _classTable array (now it's directly accessible only ↵ | Filippos Karapetis | |
inside saveLoadWithSerializer() svn-id: r49318 | |||
2010-05-26 | Made _k_new_node() a method of the segment manager, and fixed a bug with the ↵ | Filippos Karapetis | |
rarely used SCI0 kernel function kSort in the process (_k_new_node was called with key, value instead of value, key inside kSort) svn-id: r49251 | |||
2010-05-26 | SCI: Making various object and script related things const | Max Horn | |
svn-id: r49246 | |||
2010-05-19 | Removed the exportsAreWide variable from the segment manager and save games, ↵ | Filippos Karapetis | |
and moved validateExportFunc() in the Script class, thus resolving a TODO svn-id: r49093 | |||
2010-05-18 | - Removed the wrapper kalloc, kmem and kfree functions. Now, the associated ↵ | Filippos Karapetis | |
Segment manager functions allocateHunkEntry, getHunkPointer and freeHunkEntry are used directly (which are more descriptive, anyway) - Replaced the GET_SEGMENT macro by a method of the segment manager - Removed the unused reference to the created hunk in allocateHunkEntry(), only the reg_t reference to it is returned now svn-id: r49078 | |||
2010-04-04 | SCI: check before writing 0 in SegManager::strncpy, fixes jones/cd crash | Martin Kiewitz | |
svn-id: r48519 | |||
2010-04-04 | SCI: put an ending NUL in strncpy, fixes castle of brain scrolling problem - ↵ | Martin Kiewitz | |
should be verified by the vm gurus (waltervn and lskovlun) svn-id: r48511 | |||
2010-02-03 | SCI: Move more stuff around | Max Horn | |
svn-id: r47836 | |||
2010-02-03 | SCI: Get rid of EngineState::stack_segment | Max Horn | |
svn-id: r47833 | |||
2010-01-28 | Added some more information on the errors thrown by lookupString() and ↵ | Filippos Karapetis | |
freeString() - Torin full currently crashes in lookupString, called from kString (strcpy) svn-id: r47659 | |||
2010-01-26 | SCI: Add string support for odd-offset pointers into reg_t-based segments. | Walter van Niftrik | |
svn-id: r47572 | |||
2010-01-25 | Strip trailing spaces/tabs. | Johannes Schickel | |
svn-id: r47541 | |||
2010-01-01 | SCI: Fix segfault in dual-language KQ5. | Walter van Niftrik | |
svn-id: r46864 | |||
2009-12-31 | Overload the = operator for SciArray which fixes the setType errors in GK1. ↵ | Matthew Hoops | |
Some other cleanup too. GK1 can now access the restore menu and get a bit further in the game (until a segfault in the Decompressor code). svn-id: r46789 | |||
2009-12-30 | SCI32: | Matthew Hoops | |
- Set signature for Array/String - Add the kernel table differences for the GK2 demo - Implement kMessage changes in SCI32 - Use an empty string as the default path for all games now (and modify kValidPath to accept that only as valid) - Add dereferencing for Arrays svn-id: r46756 | |||
2009-12-21 | SCI32: | Matthew Hoops | |
- Fully implement kArray and kIsHiRes and mostly implement kString (printf and atoi subfunctions still missing). - Add a dummy SciGui class for SCI32 to bypass the views. Gabriel Knight 1 will now play the Sierra logo music and the main menu music. - Some other minor SCI32 changes. svn-id: r46462 | |||
2009-11-04 | - Changed the segment manager to be a static part of the engine, and stopped ↵ | Filippos Karapetis | |
deleting and recreating it when restoring games - Merged game_exit(), script_free_vm_memory() and script_free_engine() - Cleanup svn-id: r45666 | |||
2009-10-20 | - Fixed the pathfinding issue for LSL5 room 640, where Patti walks ↵ | Filippos Karapetis | |
off-screen (we still need a proper way of detecting this, though...) - Made warnings where invalid pointers are dereferenced more precise svn-id: r45257 | |||
2009-10-14 | SCI: Rename some vars (cleaning up what seems to have been caused by a blind ↵ | Max Horn | |
global search & replace) svn-id: r45060 | |||
2009-10-13 | SCI: Merge SegManager::alloc_Hunk into SegManager::allocateHunkEntry | Max Horn | |
svn-id: r45041 | |||
2009-10-12 | SCI: Fix warnings, cleanup | Max Horn | |
svn-id: r44978 |