5234 Commits

Author SHA1 Message Date
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
Filippos Karapetis
58e4d9a97a SCI: Fixed the return values of Object::relocateSci3()
svn-id: r54289
2010-11-17 12:33:55 +00:00
Max Horn
5a554e3dbe SCI: Change 'colour' to 'color'
All other instances already were spelled 'color' in the SCI
engine (and also most other parts of ScummVM)

svn-id: r54285
2010-11-17 12:13:03 +00:00
Filippos Karapetis
a702ad5123 SCI3: added a SCI3 implementation of findGameObject(), based on a patch by lskovlun
svn-id: r54284
2010-11-17 11:17:38 +00:00
Filippos Karapetis
b707d6e7dc SCI: More work on SCI3, based on a patch by lskovlun
- Added SCI3 equivalents for access to object selectors
- Added SCI3 implementation of object relocation
- Added SCI3 implementation of Script::initialiseClasses()

svn-id: r54283
2010-11-17 11:15:52 +00:00
Filippos Karapetis
59ad5085bc SCI: Some more work on SCI3, based on a patch by lskovlun
- Added a SCI3 implementation of Script::load()
- Added a SCI3 implementation of Script::initialiseClasses()
- Removed some duplicate code

svn-id: r54282
2010-11-17 09:28:04 +00:00
Filippos Karapetis
e4c967a301 SCI: Added the SCI3 equivalent of initialiseObjects(), from a patch by lskovlun
svn-id: r54281
2010-11-17 09:10:43 +00:00
Filippos Karapetis
f44b084deb SCI: Some restructuring. Added some SCI3 placeholders/stubs
svn-id: r54280
2010-11-17 08:53:02 +00:00
Filippos Karapetis
0470e47145 SCI: The heap was a separate resource in SCI1.1 - SCI2.1 games only. It was later
merged into the script files again in SCI3

svn-id: r54279
2010-11-17 08:30:08 +00:00
Filippos Karapetis
553d571c50 SCI: Specify that -1 means "all maps" when listing base36-encoded resources
svn-id: r54278
2010-11-17 08:18:56 +00:00
Filippos Karapetis
c36f072190 SCI: Updated dissectScript() to handle synonym blocks
svn-id: r54277
2010-11-17 08:10:36 +00:00
Filippos Karapetis
9d318497f7 SCI: Unified the functionality and parameters of the disasm and disasm_addr commands
svn-id: r54276
2010-11-17 08:05:11 +00:00
Filippos Karapetis
c2d9c1b06b SCI: Added the ability to display original script bytecode in the "disasm" console command
svn-id: r54275
2010-11-17 00:05:09 +00:00
Filippos Karapetis
f81b42dcaf SCI: Fix for bug #3110215 - "SQ4 German: endless flight on Estros"
svn-id: r54272
2010-11-16 22:36:06 +00:00
David Turner
69e42a0d4d SCI: Workaround for bug #3109299 "QFG1VGA: Crash when leaving area east of Antwerp"
Extended current workarounds to cover QFG1VGA.

svn-id: r54239
2010-11-15 06:17:35 +00:00
Walter van Niftrik
ecaab84cb5 SCI: Fixup pathfinding start point when on polygon edge.
We now also fixup the start point when it's on the edge of an obstacle. If the
start point is also on the edge of the screen, the actor is now allowed to
walk through that obstacle to find his way to clear territory. This is based
on observation of SSCI behavior.

svn-id: r54230
2010-11-13 14:46:27 +00:00
Filippos Karapetis
f3ea2315fc SCI: Fixed script bug #3108012 - "Hoyle1: Crash when changing Deal Speed in Hearts"
svn-id: r54226
2010-11-13 13:34:10 +00:00
Matthew Hoops
405fd0b5eb SCI: Update resource types for SCI2.1/3
svn-id: r54220
2010-11-13 00:20:23 +00:00
Filippos Karapetis
103ac9c566 Fixed signed/unsigned warning
svn-id: r54217
2010-11-12 13:05:54 +00:00
Filippos Karapetis
cc403e542d SCI: Don't check for SCI2/SCI2.1 kernel types in SCI3 games.
Patch by lskovlun

svn-id: r54216
2010-11-12 00:01:13 +00:00
Filippos Karapetis
77da22290d SCI: kSave case 0 is actually kSaveGame. Based on a patch by lskovlun
svn-id: r54215
2010-11-11 23:51:43 +00:00
Filippos Karapetis
31719eeb28 SCI2: Make robots return immediately for now, till they're implemented
Based on a patch by lskovlun

svn-id: r54214
2010-11-11 23:48:01 +00:00
Filippos Karapetis
ee85ca0007 SCI: Properly adding SCI3 script patches (a regression of r54211)
svn-id: r54213
2010-11-11 23:46:53 +00:00
Filippos Karapetis
a65ab98726 SCI: Use the new CSC extension for SCI3 scripts
svn-id: r54211
2010-11-11 19:38:32 +00:00
Filippos Karapetis
8b14137c07 SCI: Some video related changes
- Now playVideo() is used when playing videos from the console (reducing
code duplication)
- Added support for 16bpp scaling in scale2x, so that the 16-bit color
Duck videos are scaled correctly

svn-id: r54210
2010-11-11 19:22:56 +00:00
Filippos Karapetis
ebee22a934 SCI: Added the "DUK" video folder to the Search manager
The DUK folder contains all of the recently supported Duck videos in
Phantasmagoria 2. play_video works now with the videos of Phantasmagoria
2 :)

svn-id: r54208
2010-11-11 18:42:22 +00:00
Walter van Niftrik
97067a75db SCI: Allow paths along the edge of the screen in kAvoidPath.
Paths along the edge of the screen are now taken as a last resort. Fixes
bugs #3047418 and #3059595.

svn-id: r54199
2010-11-11 11:24:12 +00:00
Filippos Karapetis
203ff5e19a SCI: Fixed bug #3104624 - "PQ3: Crash when loading saved game on the highway"
svn-id: r54197
2010-11-11 10:09:57 +00:00
Matthew Hoops
da33617061 SCI: Allow duck videos to be played from the console
svn-id: r54195
2010-11-11 05:18:40 +00:00
Matthew Hoops
dc02bd2b4e SCI: Add missing new line
svn-id: r54189
2010-11-10 14:40:23 +00:00
Filippos Karapetis
9d1006c7a3 SCI3: Some changes
- Placed the SCI3 version detection in the proper place
- Some new types of SCI3 MT-32 patches (e.g. in the Lighthouse SCI3 demo) are
ignored, for now

svn-id: r54188
2010-11-10 14:28:45 +00:00
Matthew Hoops
988d9f3401 SCI: Fix SCI2.1+ fallback detection
Each map has to be mapped with its own specific volume (as opposed to earlier versions that had one map for all volumes); this code was passing the same map pointer for all volumes.

svn-id: r54179
2010-11-10 03:34:08 +00:00
Filippos Karapetis
7dec2bd6a8 SCI: Some SCI3 changes
- Extended the SCI2.1 kernel function signatures for SCI3, as they share 
the same kernel table
- All the engine parts are now initialized in SCI3 games, apart from the VM

svn-id: r54178
2010-11-10 01:08:17 +00:00
Filippos Karapetis
c3fd3e2329 SCI: Updated the SCI2.1 kernel function table with the SCI3 changes/additions
svn-id: r54177
2010-11-10 00:36:43 +00:00
Filippos Karapetis
e8e23a83e9 SCI: Removed the Shivers 2 hack from the segment manager (it isn't SCI)
svn-id: r54174
2010-11-09 22:20:36 +00:00
Filippos Karapetis
581a090204 SCI3: Removed detection and any possible support of Shivers 2
Shivers 2 doesn't contain SCI scripts. The whole game logic has
been reimplemented from SCI in native code placed in DLL files.
Each room has its own DLL file, and some SCI functions have been
reimplemented/rewritten for this purpose in native code. The
game and demo have all the resources of a SCI game, apart from
the SCI scripts themselves. Thus, they cannot be directly
supported, unless their whole room logic is rewritten from
scratch, which classifies Shivers 2 as "not SCI"

svn-id: r54173
2010-11-09 22:01:12 +00:00
Filippos Karapetis
1a85ce8e03 SCI: Some slight work on SCI3
- Enabled the SCI3 game entries for testing purposes
- The resource manager is initialized fully now (with a slight hack)
- Added a hack for the demo of Shivers 2 (which seemingly has no
scripts or vocabularies)
- The engine will stop before parsing any game scripts in SCI3 games,
and opens the console for resource manager-related functionality

svn-id: r54167
2010-11-09 19:37:42 +00:00
Filippos Karapetis
55f0b88c07 SCI: Fixed the fallback detector again
This is a regression from r54155, as we previously ignored the result of 
addInternalSources() in the fallback detector

svn-id: r54163
2010-11-09 17:07:34 +00:00
Matthew Hoops
4582a94ff9 SCI: Fix Lighthouse SCI2.1 demo
This is a regression from r54155. Fixed by moving the chunk resource loading earlier.

svn-id: r54162
2010-11-09 16:56:31 +00:00
Matthew Hoops
567441f032 SCI: Formatting convention fixes
svn-id: r54161
2010-11-09 16:23:08 +00:00
Matthew Hoops
8a788d16d7 SCI: Fix compile when SCI32 is not enabled
svn-id: r54160
2010-11-09 16:06:33 +00:00
Lars Skovlund
acf581fe67 SCI: Temporarily disable the PrintDebug call, which is only partially
implemented and insufficient for Shivers/Full. It is also unnecessary
for normal play.

svn-id: r54158
2010-11-09 15:45:20 +00:00
Lars Skovlund
32ff20477b SCI: Add uninitialized temp workaround for Shivers
svn-id: r54157
2010-11-09 15:16:40 +00:00
Lars Skovlund
3a9d935023 SCI: Fix error message in ShowMovie(), perhaps avoiding some confusion later
svn-id: r54156
2010-11-09 15:15:13 +00:00