Filippos Karapetis
97d31c6ac6
SCI: Added the kString/kArray type in the "version" console command
...
svn-id: r54401
2010-11-21 00:58:06 +00:00
Filippos Karapetis
ffcd6783c7
SCI: Removed incorrect pointer arithmetic support for SCI2 strings
...
There was never pointer arithmetic support in SCI2 and newer games
svn-id: r54400
2010-11-21 00:49:54 +00:00
Filippos Karapetis
cd69472be9
SCI: Adapted kArray/kString to use the new heuristic for late SCI2.1/SCI3 games, and updated their subops accordingly
...
svn-id: r54399
2010-11-21 00:47:56 +00:00
Filippos Karapetis
d275461958
SCI: Added a heuristic to detect the modified late SCI2.1/SCI3 kString/kArray kernel functions
...
svn-id: r54398
2010-11-21 00:44:04 +00:00
Filippos Karapetis
d886c037dd
SCI: Fix ScummVM freezing during the credits scene in EcoQuest 1 (bug #3101846 )
...
svn-id: r54395
2010-11-20 19:52:31 +00:00
Filippos Karapetis
b2ba35124c
SCI: Fixed timer bug #3109139 - "SQ4: Crash after exiting Skate-o-Rama during chase"
...
svn-id: r54391
2010-11-20 00:52:05 +00:00
Filippos Karapetis
c8ef70ea1c
SCI: Some minor fixes for Phantasmagoria 2 (which doesn't work at all, since it has some differences in its views)
...
svn-id: r54390
2010-11-20 00:20:05 +00:00
Max Horn
2180b2d6b5
COMMON: Split common/stream.h into several headers
...
svn-id: r54385
2010-11-19 17:03:07 +00:00
Willem Jan Palenstijn
a24d5ba2f4
SCI: Only compile kGetConfig for SCI32
...
svn-id: r54382
2010-11-19 14:19:02 +00:00
Lars Persson
3c7f9aa34a
SCI : data field is only supported if building for SCI32
...
svn-id: r54379
2010-11-19 13:56:11 +00:00
Filippos Karapetis
5d53673e93
SCI: Also send system strings to kString(). This makes LSL7 continue into the actual game! :D
...
svn-id: r54377
2010-11-19 13:23:20 +00:00
Lars Persson
c7cf764890
SCI: Only handle seg_type_string if ENABLE_SCI32 is defined
...
svn-id: r54376
2010-11-19 13:03:31 +00:00
Lars Skovlund
5ecac66c6a
Some subfunctions changed positions in SCI3 kString. WIP.
...
And with this, LSL7 starts up. Yeah, baby!
svn-id: r54374
2010-11-19 12:52:17 +00:00
Lars Skovlund
84d4a4a89f
Implement a couple of NULL checks in kArray
...
svn-id: r54373
2010-11-19 12:49:46 +00:00
Lars Skovlund
1a6597ebc2
SCI3: Implement new opcode 0x4c.
...
svn-id: r54370
2010-11-19 12:47:47 +00:00
Lars Skovlund
fbf5a453c7
SCI: Implement the GetConfig call for LSL7
...
svn-id: r54369
2010-11-19 12:46:36 +00:00
Filippos Karapetis
c19e8377f9
SCI: Added pointer arithmetic support for SCI2 strings
...
svn-id: r54365
2010-11-19 10:28:43 +00:00
Filippos Karapetis
6ec8ec416b
SCI: Added support for script -> string copying (used by late SCI2.1 and SCI3 games)
...
svn-id: r54364
2010-11-19 10:27:22 +00:00
Filippos Karapetis
763ddd2203
SCI: Fixed comment
...
svn-id: r54362
2010-11-19 08:19:14 +00:00
Filippos Karapetis
3b07056a47
SCI: Moved the Object class in a separate file
...
svn-id: r54361
2010-11-19 08:18:24 +00:00
Filippos Karapetis
c87ef6f307
SCI: Added KQ4 Atari ST version from bug report #3110941
...
svn-id: r54360
2010-11-19 07:43:47 +00:00
Max Horn
a0df86955f
ALL: Push down deps on stream.h from .h to .cpp files
...
svn-id: r54358
2010-11-19 01:37:04 +00:00
Filippos Karapetis
34272e2529
SCI: Added a stub for a new subop in kString, and disabled trackOriginAndFindWorkaround() for SCI3 games for now
...
svn-id: r54352
2010-11-18 22:46:29 +00:00
Filippos Karapetis
4609f11137
SCI: Added species selector functionality for SCI3
...
svn-id: r54351
2010-11-18 22:27:56 +00:00
Filippos Karapetis
9e418e6eaf
SCI: Removed SCI3 hacks in kClone/kDisposeClone
...
svn-id: r54350
2010-11-18 22:26:58 +00:00
Johannes Schickel
94d3d82f59
SCI: Slight formatting fix and use \t instead of a tab character in debugN.
...
svn-id: r54349
2010-11-18 21:45:31 +00:00
Lars Skovlund
c325d815d2
SCI: Fix debugger disassembly of property accesses in SCI3
...
svn-id: r54348
2010-11-18 21:41:13 +00:00
Lars Skovlund
f0fea21639
SCI3: Fix new opcode 0x4e
...
svn-id: r54347
2010-11-18 21:38:00 +00:00
Filippos Karapetis
49468fdfff
SCI3: Added another previously unused opcode (0x27 / 0x4e)
...
svn-id: r54341
2010-11-18 19:20:30 +00:00
Filippos Karapetis
c2bdba2ea6
SCI2: Treat SCI2 raw arrays (type 3) as strings in kArray
...
SCI2 strings inherit from arrays, plus kArray and kString are almost the
same, so this is all possible. This is needed, as SCI scripts copy
strings on arrays and then process them as such (e.g. in RAMA and LSL7)
However, we really need to merge SCI2 array types with the SCI2 string
types, and ultimately merge the code with the SCI1 array and string types.
svn-id: r54340
2010-11-18 19:18:11 +00:00
Lars Skovlund
487feb3843
Get rid of a const_cast.
...
svn-id: r54333
2010-11-18 17:38:56 +00:00
Johannes Schickel
b593b15c50
SCI: Slight formatting fix.
...
svn-id: r54330
2010-11-18 17:25:09 +00:00
Lars Skovlund
0001a6b74d
SCI3: implement setInfoSelector() for SCI3, fixes infinite recursion
...
svn-id: r54328
2010-11-18 17:13:01 +00:00
Lars Skovlund
c5252071db
SCI3: Add proper support for the calle instruction
...
svn-id: r54327
2010-11-18 17:04:00 +00:00
Lars Skovlund
1621e7d5c0
Fix operator precedence problem
...
svn-id: r54324
2010-11-18 16:58:25 +00:00
Filippos Karapetis
34c18f20d8
SCI: Added hacks in kClone/kDisposeClone for SCI3
...
svn-id: r54307
2010-11-17 21:49:19 +00:00
Filippos Karapetis
bd844a8c92
SCI: Call lookupArray() after allocateArray() when duplicating arrays
...
This ensures that the pointer to the element that lookupArray() returned
won't be invalidated in case the array is reallocated because of
allocateArray() - same issue as in kClone()
svn-id: r54306
2010-11-17 21:47:05 +00:00
Filippos Karapetis
ddbda3eb15
SCI: Code formatting
...
svn-id: r54305
2010-11-17 20:50:24 +00:00
Filippos Karapetis
ba6de1bcdf
SCI: Added sanity checks for SCI3 scripts bigger than 64KB
...
- Extended the "verify_scripts" console command for SCI3 scripts
- Added a check for such large scripts when scripts are loaded, with
an error for now, till a mechanism to support such scripts with a
16-bit addressing scheme is in place (e.g. overlaying, or splitting
scripts). Either way, such scripts should span over more than one segment
svn-id: r54304
2010-11-17 20:46:59 +00:00
Lars Skovlund
8a6efcac65
SCI3: Implement opcode to retrieve the info selector.
...
svn-id: r54303
2010-11-17 20:43:51 +00:00
Lars Skovlund
e551f3bf33
SCI3: Handle script exports correctly
...
svn-id: r54302
2010-11-17 20:37:13 +00:00
Lars Skovlund
5ab823b16a
SCI3: relocate operand of the lofsa opcode
...
svn-id: r54301
2010-11-17 20:29:10 +00:00
Filippos Karapetis
61e02f0570
SCI: Fixed the speed in the intro of PQ2, version 1.002.011 (bug #3102071 )
...
In version 1.002.011, global 3, used for timing, is incorrectly initialized
to 0, whereas it should be 6 (like in other versions). Initializing it to
the correct value fixes the speed in the intro. This has been based on the
patch for that version by NewRisingSun(NRS) / Belzorash
svn-id: r54298
2010-11-17 18:46:29 +00:00
Lars Skovlund
e086ef0096
Adapt SCI property instructions (pToa etc.) to SCI3
...
svn-id: r54296
2010-11-17 17:21:02 +00:00
Filippos Karapetis
430df91076
SCI1.1 and newer games always ignore move count. The "version" command works now in SCI3
...
svn-id: r54295
2010-11-17 15:02:58 +00:00
Filippos Karapetis
e55a55a277
SCI: Remove key modifier (e.g. num lock) status for keyboard function keys. This fixes function key input (e.g. F3) when num lock is on
...
svn-id: r54294
2010-11-17 14:48:28 +00:00
Filippos Karapetis
47e137fd8e
SCI: lofsa/lofss functionality for SCI3
...
- Updated detectLofsType() for SCI3
- Cleaned up op_lofsa and op_lofss and updated them for SCI3
svn-id: r54293
2010-11-17 14:28:32 +00:00
Filippos Karapetis
c003032b4c
SCI: Allow SCI3 game scripts to run
...
SCI3 scripts do start up now, however they stop quite early, as there is still
missing functionality which prevents them from running fully. This will be useful
for debugging, though
svn-id: r54292
2010-11-17 14:08:13 +00:00
Filippos Karapetis
bb9b7c24f9
SCI: Added some SCI3 selector related information
...
- Added a TODO for the usage of the -info- selector in kClone and kDisposeClone in
SCI3 scripts, as it's no longer used in SCI3
- Added information about which of the selectors are missing in SCI3. There are
some more which are missing, but aren't used in SCI2-SCI3 anyway
- Some styling
svn-id: r54291
2010-11-17 14:03:14 +00:00
Max Horn
3d7f7b49fe
SCI: Make class table size OB1 workaround slightly more readable
...
svn-id: r54290
2010-11-17 13:01:58 +00:00