Max Horn
b0c1cf52e0
SCI: Got rid of EngineState::execution_stack_pos; overally, the resulting code should be even stricter in detecting invalid VM stack access (and some bugs when loading saves might be fixed now...)
...
svn-id: r40694
2009-05-18 18:15:45 +00:00
Max Horn
790e235ae1
SCI: Removed ENTRY_IS_VALID macro
...
svn-id: r40690
2009-05-18 15:07:31 +00:00
Filippos Karapetis
1239949ef2
Changed errors to be fatal, as most of them are fatal conditions. Some of them have been changed to warnings for now, as they occur in certain games (e.g. SQ4 floppy, SQ4 CD and KQ5 CD)
...
svn-id: r40675
2009-05-18 07:55:13 +00:00
Filippos Karapetis
87e8f94fde
- Moved all the files out of /sci/scicore and into /sci
...
- Moved /scicore/sciconsole.h into /engine, and renamed /engine/scriptconsole.cpp to /engine/sciconsole.cpp
svn-id: r40608
2009-05-15 14:07:45 +00:00
Filippos Karapetis
891a8fae05
- Removed SCI_VERSION_FTU_NEW_GETTIME
...
- Added defines for SCI0 flags, to simplify game entries
- Removed the leftover version_lock_flag from EngineState
svn-id: r40553
2009-05-14 10:24:39 +00:00
Filippos Karapetis
999d46b241
Started using game-specific flags and removed/replaced some SCI version checks with flags.
...
- The SCI0 new script header and the angles check have been replaced by the GF_SCI0_OLD flag
- The SCI0 new drawpic parameter and the new priority check have been replaced by the GF_SCI0_OLDGFXFUNCS flag
- Removed the code which retries to use the newer script header in SCI0 games if the detected one is wrong, as that case should be covered by the GF_SCI0_OLD flag
- Removed the leftover min_version and max_version variables from gamestate
- Cleaned up kGetTime() a bit
svn-id: r40552
2009-05-14 09:12:27 +00:00
Max Horn
7f29670843
SCI: Changed object / script local vars storage to use a Common::Array
...
svn-id: r40515
2009-05-12 23:30:42 +00:00
Max Horn
0255cd0213
SCI: Removed sci_memory.h/.cpp
...
svn-id: r40514
2009-05-12 23:30:10 +00:00
Walter van Niftrik
c299dbeb26
SCI: Merged Message() and GetMessage(). Set SCI1.1 to use SCI1 kernel table (for now).
...
svn-id: r40481
2009-05-12 12:31:09 +00:00
Max Horn
1949133d22
SCI: Simplified the Table class, by making it use an Common::Array internally. Increased savegame version, breaking compatibility to the previous one -- sorry for that, but some of my previous changes accidentally messed up the table syncing, resulting in messed up savegames anyway; these breakages should be fixed with this commit
...
svn-id: r40453
2009-05-11 13:32:00 +00:00
Max Horn
019f87fd1b
SCI: Changed object list in Script instances to use Common:::Array
...
svn-id: r40431
2009-05-10 19:17:51 +00:00
Walter van Niftrik
be7acea217
SCI: Set signature for GetMessage.
...
svn-id: r40396
2009-05-08 23:10:25 +00:00
Max Horn
b49dd22173
SCI: Renamed dstack_t -> DataStack; removed obsolete KF_OLD constant
...
svn-id: r40374
2009-05-08 09:53:31 +00:00
Max Horn
a41069d69b
SCI: Started adding methods to MemObject subclasses: constructors, destructors, dereference() (and currently commented out refs to Common::Serializable
...
svn-id: r40295
2009-05-03 22:47:04 +00:00
Max Horn
d960c1e2a5
SCI: Completed transition from MemObject (a union of various structs) to MemObjectNEW (a baseclass for these structs)
...
svn-id: r40294
2009-05-03 22:46:38 +00:00
Max Horn
82f2672008
SCI: Changed SegManager to store the heap pointers in a Common::Arrray
...
svn-id: r40293
2009-05-03 22:46:11 +00:00
Max Horn
5e955ea045
SCI: Continue transition from MemObject to MemObjectNEW
...
svn-id: r40274
2009-05-03 11:07:07 +00:00
Max Horn
50c8821072
SCI: Renamed MemObject::type and ::segmgr_id to _type resp. _segmgrId, and added accessor methods getType() and getSegMgrId()
...
svn-id: r40271
2009-05-03 09:30:33 +00:00
Max Horn
ed914d6740
SCI: Improved the Table template a bit by taking advantage of C++ features
...
svn-id: r40190
2009-04-28 22:56:44 +00:00
Filippos Karapetis
f1893d8f25
WIP (still non-working) code for speech sync in CD talkie games (like e.g. KQ5 CD and SQ4 CD), taken from Greg's SCI implementation.
...
svn-id: r40142
2009-04-25 08:50:42 +00:00
Walter van Niftrik
d7180316dd
SCI: Fix sci_max_allowed_unknown_kernel_functions[], it was missing an entry.
...
svn-id: r40118
2009-04-24 15:13:04 +00:00
Walter van Niftrik
db8b3cef61
SCI: Fix signature of kPalette().
...
svn-id: r40117
2009-04-24 14:50:01 +00:00
Filippos Karapetis
001699becb
Removed a FIXME concerning CanBeHere and CantBeHere and added an explanation. Also, removed some unused code.
...
svn-id: r40094
2009-04-23 19:11:01 +00:00
Filippos Karapetis
bd2c2b0e50
WIP code for kGetMessage (tested with Eco Quest 1). Currently, it doesn't always work for some reason...
...
svn-id: r40092
2009-04-23 18:17:35 +00:00
Max Horn
3774b9cd0c
SCI: Slim down struct SciKernelFunction
...
svn-id: r40081
2009-04-22 17:54:30 +00:00
Max Horn
3af8918e1a
SCI: Changed kfunct_table to a Common::Array
...
svn-id: r40080
2009-04-22 17:54:11 +00:00
Max Horn
b1e43f3ca0
SCI: Changed knames (kernel function name table) to Common::StringList
...
svn-id: r40078
2009-04-22 17:53:29 +00:00
Max Horn
d567482818
SCI: Moved list of kernel func declarations to header file, where it belongs
...
svn-id: r40030
2009-04-20 19:28:08 +00:00
Filippos Karapetis
e130aecc4f
Wrapped all the still WIP SCI32-specific code around appropriate ifdef blocks. SCI32 has fundamental differences from previous SCI versions (e.g. direct point addressing is no longer possible), most of SCI32 games use SVGA resolutions and currently a lot of SCI32 specific code is missing (like, for example, the newer string and array handling functions, the widget system etc). This has been done in the same manner as in the SCUMM and SAGA engines.
...
svn-id: r39750
2009-03-30 07:53:32 +00:00
Max Horn
642bad22d8
SCI: Removed most uses of the 'inline' keyword. It is usually better to let the compiler figure out what to inline. As it is, most of these looked as if they were randomly placed ;)
...
svn-id: r39352
2009-03-12 03:26:47 +00:00
Filippos Karapetis
1e29983d8e
Replaced getInt16, getUInt16 and putInt16
...
svn-id: r39189
2009-03-07 16:14:20 +00:00
Max Horn
d7b06b7d42
SCI: Renamed ResourceManager::sci_version to _sciVersion, to avoid var shadowing warnings; some other tweaks
...
svn-id: r38984
2009-02-28 22:19:22 +00:00
Andre Heider
b2cd5beb9e
clean up some warnings
...
svn-id: r38965
2009-02-28 13:41:43 +00:00
Jordi Vilalta Prat
501e4bb91a
SCI: Renamed some kernel types and general cleanup
...
svn-id: r38961
2009-02-28 11:12:59 +00:00
Max Horn
479751104f
SCI: Renamed include/engine.h to engine/state.h; added a corresponding .cpp file with the EngineState constructor
...
svn-id: r38921
2009-02-27 02:23:40 +00:00
Max Horn
170916201c
SCI: Moved almost all files from include/ to other dirs; only include/engine.h remains
...
svn-id: r38920
2009-02-27 02:23:00 +00:00
Max Horn
e140188541
SCI: Some nitpick FIXMEs on incorrect opcode number comments ;)
...
svn-id: r38906
2009-02-26 16:16:30 +00:00
Andre Heider
9af7fba681
reintroduce game_start_time (removed it in r38701), since the interpreter can be restarted and it can be retrieved via script function (eg. LSL3 about box)
...
svn-id: r38888
2009-02-25 21:43:57 +00:00
Max Horn
e5a7b99cee
SCI: Don't #include headers in other headers if a forward declaration of a few types suffices (reduces header interdependencies)
...
svn-id: r38872
2009-02-24 23:16:42 +00:00
Paweł Kołodziejski
9bb135ac25
not needed anymore
...
svn-id: r38855
2009-02-24 20:52:18 +00:00
Max Horn
0be30cdc5d
SCI: Renamed gfx/gfx_operations.h to gfx/operations.h (matching the source file); moved include/sci_widgets.h to gfx/ (matching location of source file); renamed gfx/widgets.cpp to gfx/gfx_widgets.cpp (matching the header)
...
svn-id: r38852
2009-02-24 20:39:34 +00:00
Max Horn
b5df97ad2b
SCI: Moved kernel.h and kdebug.h from include/ to engine/; untangled header deps some more
...
svn-id: r38833
2009-02-24 05:51:55 +00:00
Max Horn
6147bd3ed9
SCI: Merged kDeviceInfo_Win32 & kDeviceInfo_Unix; added lots of debug calls to the file I/O code, to make it possible to analyze usage patterns; some cleanup
...
svn-id: r38806
2009-02-23 03:51:22 +00:00
Walter van Niftrik
ce7377ff5b
SCI: Fix incorrect usage of struct tm in date function of kGetTime
...
svn-id: r38803
2009-02-23 01:59:04 +00:00
Jordi Vilalta Prat
b5ce8d9320
Whitespace cleanup
...
svn-id: r38783
2009-02-22 13:11:43 +00:00
Jordi Vilalta Prat
817fde6cdd
SCI: Convert the segment manager into a class
...
svn-id: r38767
2009-02-21 23:27:24 +00:00
Willem Jan Palenstijn
b18ccb755a
multiply before dividing to improve timer resolution
...
svn-id: r38765
2009-02-21 23:16:03 +00:00
Max Horn
eb37789f6f
SCI: Renamed include/gfx_*.h to gfx/gfx_*.h and likewise for sfx header files
...
svn-id: r38735
2009-02-21 19:33:01 +00:00
Max Horn
9f2c0dcc6f
SCI: Tons of cleanup
...
svn-id: r38721
2009-02-21 18:39:53 +00:00
Filippos Karapetis
426def4f44
Turned back all fprintf/exit(1) bits into error()
...
svn-id: r38716
2009-02-21 18:16:17 +00:00