Filippos Karapetis
e03fba03b5
Cleanup
...
svn-id: r40558
2009-05-14 11:46:02 +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
Filippos Karapetis
e940bcff23
- Simplified SCI version detection a bit and clarified the different version feature flags (not used yet)
...
- Removed the version verification functions (they were only used for two specific cases, but the SCI executable reader is able to detect the exact SCI game version anyway, so there is no point in having these)
- Removed the empty GameFlags structure and replaced it with a 32-bit integer instead
svn-id: r40524
2009-05-13 16:52:41 +00:00
Max Horn
37a0157c97
SCI: cleanup
...
svn-id: r40518
2009-05-12 23:32:32 +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
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
14aa9d70ac
SCI: Replaced Cplain odeBlock array in class Script by a Common::Array<CodeBlock>
...
svn-id: r40433
2009-05-10 20:13:12 +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
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
7e51eb6478
SCI: Actually, it turns out the SystemString is more messed up than I thought: In some places it allocates a memory block of max_size bytes; sometimes max_size+1 bytes; and sometimes max_size*sizeof(reg_t) bytes. And sometimes strings frags are accessed as plain C strings (e.g. when saved), sometimes as a string encode as a series of reg_t values. Ouch :/
...
svn-id: r40324
2009-05-05 12:23:05 +00:00
Max Horn
36f58b6378
SCI: Fixed out of bounds access in (still incomplete?) string frags code
...
svn-id: r40321
2009-05-05 12:00:51 +00:00
Max Horn
f2da4bc447
SCI: Got rid of heapmgr.h; further improve the Table code
...
svn-id: r40308
2009-05-04 15:23:33 +00:00
Max Horn
6e6a8f8d6c
SCI: Unified serializing code for Table subclasses, using template specialization. This whole syncWithSerializer / DefaultSyncer / ArraySyncer code is experimental work in progress ;)
...
svn-id: r40306
2009-05-04 15:05:11 +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
f108a31ad7
SCI: Made SegManager::heap_size unsigned
...
svn-id: r40290
2009-05-03 22:45:13 +00:00
Max Horn
79b0711cfd
SCI: Begun conversion of the MemObject union (used to implement poor man's fake inheritance) into a base class of all the various union members
...
svn-id: r40272
2009-05-03 09:30:59 +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
ba57b21d09
SCI: Changed SegManager to subclass Common::Serializable
...
svn-id: r40270
2009-05-03 09:25:15 +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
Max Horn
b5e9d79e15
SCI: Turned classtable into a Common::Array<Class>
...
svn-id: r40161
2009-04-27 12:31:27 +00:00
Max Horn
5881abb213
SCI: Removed unused vars; doxygenified some comments; cleanup
...
svn-id: r40159
2009-04-27 12:29:51 +00:00
Max Horn
9445439c4f
SCI: Renamed gfxw_widget_t and subtypes to GfxWidget etc.
...
svn-id: r40104
2009-04-24 10:46:20 +00:00
Max Horn
86b3657476
SCI: Started to C++ify the gfxw_widget_t codebase
...
svn-id: r40103
2009-04-24 10:45:09 +00:00
Max Horn
486f10edaf
SCI: Store parse_tree_branch_t in a Common::Arraay
...
svn-id: r40100
2009-04-24 10:42:53 +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
Filippos Karapetis
44443badc5
Disable some (quite chatty) debug output - the savegme system looks stable enough
...
svn-id: r39801
2009-04-02 16:54:21 +00:00
Max Horn
1e94b9cd3c
SCI: Rewrote vocabulary code to use a Common::HashMap<String,ResultWord>
...
svn-id: r39671
2009-03-24 17:42:12 +00:00
Max Horn
b76f7fea4e
SCI: Changed some char* into Common::String
...
svn-id: r39663
2009-03-24 12:46:48 +00:00
Max Horn
9ea32d4aa1
SCI: C++ify menu code
...
svn-id: r39659
2009-03-24 11:31:16 +00:00
Filippos Karapetis
80c243e5ca
Renamed some defines:
...
- FREESCI_CURRENT_SAVEGAME_VERSION, FREESCI_MINIMUM_SAVEGAME_VERSION -> CURRENT_SAVEGAME_VERSION, MINIMUM_SAVEGAME_VERSION (saved games are not compatible with FreeSCI's ones anymore)
- _K_VIEW_SIG_FLAG_FREESCI_STOPUPD -> _K_VIEW_SIG_FLAG_STOPUPD (like the rest of the flags)
- Removed FREESCI_KFUNCT_GLUTTON (unused)
svn-id: r39478
2009-03-17 08:03:42 +00:00
Max Horn
466ba4bbfe
SCI: Rewrote the save/load code, see also patch #2687400 .
...
The new format is incompatible with the old one, and is still subject to
some further changes. Also, regressions are quite possible, so watch out.
Finally, the new code still contains some TODOs and FIXMEs. Several of
these will be more or less automatically resolved once other code gets
C++ified.
svn-id: r39430
2009-03-15 20:31:29 +00:00
Max Horn
7df4e2a80f
SCI: Indention changes, changed 'songlib_t' params to 'const songlib_t &'
...
svn-id: r39429
2009-03-15 20:31:15 +00:00
Max Horn
150b38ffb7
SCI: Removed more dead code
...
svn-id: r39379
2009-03-14 01:44:53 +00:00
Filippos Karapetis
b78001f7ca
Changed the "internal" variable inside gfxr_pic_t to priorityTable (cause that's what it is), and changed its type to int * to avoid unneeded casts
...
svn-id: r39375
2009-03-14 00:05:01 +00:00
Max Horn
40b313c28e
SCI: Moved savegame specific stuff from state.h to a new header savegame.h
...
svn-id: r39351
2009-03-12 03:26:21 +00:00
Max Horn
ca4bdb8572
SCI: Removed some dead code
...
svn-id: r39349
2009-03-12 02:40:04 +00:00
Max Horn
862c9547c6
SCI: Removed some dead code
...
svn-id: r39328
2009-03-11 02:32:20 +00:00
Max Horn
1bc84955a3
SCI: Removing unused line from savegame.cfsml, fixing SongIteratorMessage -> SongIterator::Message in it
...
svn-id: r39306
2009-03-10 19:11:35 +00:00
Lars Skovlund
3cddcb1660
String fragments support
...
WIP: No regressions in this part, I hope
svn-id: r39297
2009-03-10 14:52:02 +00:00
Max Horn
6b58973536
SCI: Renamed SongIteratorMessage -> SongIterator::Message; cleanup
...
svn-id: r39289
2009-03-10 02:42:22 +00:00
Max Horn
4e6a7d83d1
SCI: Rewrote handling of song wakeup times & (iterator) delays, to avoid rounding issues between ticks (1/60s) and milliseconds; also fixed a bug (coming from Glutton ;) where delays measured in millisecs were treated as ticks instead. Thanks to Walter for the precursor of this patch
...
svn-id: r39263
2009-03-09 16:15:35 +00:00
Max Horn
efa5493b2d
SCI: Changed suffix list to be stored as a Common::List; also fixed spelling: suffices -> suffixes
...
svn-id: r39214
2009-03-08 08:17:43 +00:00
Max Horn
2dfae035ac
SCI: Reduced header interdependencies some more
...
svn-id: r39202
2009-03-07 19:23:47 +00:00
Filippos Karapetis
1e29983d8e
Replaced getInt16, getUInt16 and putInt16
...
svn-id: r39189
2009-03-07 16:14:20 +00:00
Max Horn
c2f08b10d2
SCI: More cleanup in the song iterator codebase
...
svn-id: r39177
2009-03-07 06:56:39 +00:00
Max Horn
54e1256b0e
SCI: Reduce SFX header dependencies
...
svn-id: r39159
2009-03-06 18:11:12 +00:00