Filippos Karapetis
a9aaf56b3e
Cleanup: added an enum for the auto-detected features, removed the selectors which are only used for auto-detection from the convenience selector map and placed feature auto-detection in a separate function. Also, now the automatically detected graphics resources are shown in the console.
...
svn-id: r42212
2009-07-07 11:14:18 +00:00
Filippos Karapetis
d55f7e72d0
Added auto-detection for games with older headers for script blocks, and removed game flag GF_SCI0_OLD
...
svn-id: r42211
2009-07-07 10:28:05 +00:00
Filippos Karapetis
e4f6330418
Added a SCI1.1 case in the lofss opcode, like in the lofsa opcode (essentially, lofss and lofsa both load an offset, with lofsa loading it in the accumulator and lofss in the stack). lofss is rarely used in SCI1.1 games, which explains why no lofss-related crashes have been observed in SCI1.1
...
svn-id: r42209
2009-07-07 07:51:26 +00:00
Filippos Karapetis
c716e43a2b
- Added auto-detection for EGA graphics. As a result of this, GF_SCI1_EGA has been removed and versions SCI_VERSION_01_EGA and SCI_VERSION_01_VGA have been merged into SCI_VERSION_01
...
- Simplified the checks for EGA and VGA graphics
- Fixed a bug in script_adjust_opcode_formats()
- Simplified the code in GfxResManager::getView() a bit
svn-id: r42206
2009-07-07 07:44:25 +00:00
Filippos Karapetis
0a8cd4a27d
Removed unused define
...
svn-id: r42200
2009-07-07 06:29:07 +00:00
Filippos Karapetis
219b0de0d2
Renamed SCI_VERSION_01 -> SCI_VERSION_01_EGA
...
svn-id: r42181
2009-07-06 16:22:14 +00:00
Filippos Karapetis
30d1462da0
Swapped the music and audio resource check for SCI1.1 games. Digital sound effects are now preferred over the synthesized ones
...
svn-id: r42179
2009-07-06 15:50:44 +00:00
Filippos Karapetis
8f284ad396
KQ6CD should be working correctly again
...
svn-id: r42178
2009-07-06 15:30:07 +00:00
Filippos Karapetis
b38c5f8c5c
Proper handling of sound effects marked as music resources
...
svn-id: r42174
2009-07-06 12:44:55 +00:00
Filippos Karapetis
250a1a915a
When a song isn't found, send a "stop handle" event so that the engine won't wait forever (e.g. in SQ4CD, perhaps others)
...
svn-id: r42172
2009-07-06 11:33:28 +00:00
Filippos Karapetis
87988c69ee
Assigned several unimplemented/unused kernel functions as stubs, so that we know when they're used and how they're called
...
svn-id: r42170
2009-07-06 11:19:19 +00:00
Filippos Karapetis
522b161bec
Replaced sciprintf() calls with printf, DebugPrintf, warning and error calls
...
svn-id: r42167
2009-07-06 10:39:22 +00:00
Filippos Karapetis
c31d1b3180
- Fixed feature auto-detection for Conquests of Camelot
...
- Auto-detected features are now printed in the console (to ease debugging)
svn-id: r42132
2009-07-05 11:49:05 +00:00
Filippos Karapetis
5c60d94725
SCI1 games with absolute parameters to lofs instructions are automatically detected now. Removed the GF_SCI1_LOFSABSOLUTE game flag
...
svn-id: r42118
2009-07-05 11:08:53 +00:00
Filippos Karapetis
b093511239
- Merged the "early" and "late" SCI1 versions - these are functionally equivalent, and the code that does the version check is unreliable (e.g. it sets SQ1 VGA to SCI1 "late" and EcoQuest 1 to SCI1 "early")
...
- Cleanup of the vocabulary setting functions
- Cleanup of the cursor manipulation code
svn-id: r42097
2009-07-04 16:30:20 +00:00
Filippos Karapetis
c5522b3766
- Kernel function names are no longer loaded from vocab.999, but are constructed from the hardcoded function table, depending on the SCI version used
...
- SCI0 games using older graphics functions are now detected by the presence of the "curAngle" selector
- SCI0 games using a SCI1 table (like KQ1 demo version and full version) are detected by the presence of the "sightAngle" selector (as no SCI0 game seems to have it)
svn-id: r42095
2009-07-04 15:45:04 +00:00
Filippos Karapetis
230e7a8d2c
Newer DoSound() semantics are now detected automatically, by the existence of the "setVol" selector. Removed game flag GF_SCI1_NEWDOSOUND
...
svn-id: r42087
2009-07-04 11:24:09 +00:00
Filippos Karapetis
df9570cb32
SCI0 games using older graphics functions are automatically detected now, from the presence of the "TimesSin" and "SinMult" kernel functions. Removed the GF_SCI0_OLDGFXFUNCS game flag
...
svn-id: r42081
2009-07-03 23:37:08 +00:00
Filippos Karapetis
9a96b20cd0
Replaced script_error and CORE_ERROR with error()
...
svn-id: r42079
2009-07-03 21:59:07 +00:00
Filippos Karapetis
6fa8541aed
- Pushed debugstate into debug.h
...
- When an error occurs, manipulate the execution stack before error() opens the console inside getDebugger(), like FreeSCI did. Added another method for obtaining the SCI console for use by the engine itself.
svn-id: r42062
2009-07-03 14:22:50 +00:00
Filippos Karapetis
69da51e71d
Replaced all calls for manipulating the mouse cursor to be made to the CursorManager instead of directly to the graphics backend
...
svn-id: r42060
2009-07-03 14:18:20 +00:00
Max Horn
72512db7fb
SCI: Fixed warning
...
svn-id: r42055
2009-07-03 10:41:03 +00:00
Filippos Karapetis
9664050ff0
Simplified the kernel name loading code: Merged the default SCI0 and SCI1 kernel name tables in one table. vocab.999 is only used in SCI0 and SCI01 games if it exists as an override to the default kernel name table (which works with SCI0/SCI01 demos with no vocab.999, like KQ1 and xmas1998). Removed GF_SCI0_SCI1VOCAB.
...
svn-id: r42050
2009-07-03 09:01:51 +00:00
Filippos Karapetis
f3ac0a62c4
Applied patch #2815937 - "SCI: ReadString fix to repair LSL5 password". This fixes the problems with the LSL5 password for good
...
svn-id: r42049
2009-07-03 07:06:48 +00:00
Filippos Karapetis
c3403ac739
Moved some more debug state related variables in the DebugState struct
...
svn-id: r42044
2009-07-02 23:58:05 +00:00
Filippos Karapetis
80cb18e87f
Moved all the debug state variables in a separate struct and re-enabled several places where they're used
...
svn-id: r42043
2009-07-02 23:16:40 +00:00
Matthew Hoops
4df9dd82fb
After discussing with waltervn, committing my fix for the King's Quest I Demo (original from Patch #2795916 ). I'm also fixing the full game as well :)
...
svn-id: r41841
2009-06-25 00:14:07 +00:00
Walter van Niftrik
1d0f4782fc
SCI: Fix regression in r41833.
...
svn-id: r41834
2009-06-24 19:26:06 +00:00
Walter van Niftrik
06144864e1
SCI: Partial support for dual-language games.
...
svn-id: r41833
2009-06-24 19:12:45 +00:00
Filippos Karapetis
245a2764fc
Cleanup
...
svn-id: r41727
2009-06-21 13:06:08 +00:00
Max Horn
42de7a1573
Patch
...
svn-id: r41647
2009-06-18 22:09:57 +00:00
Oystein Eftevaag
cca9202372
Buildfix for gcc 3.3 (moved a template class member into the header file)
...
svn-id: r41493
2009-06-13 13:27:21 +00:00
Walter van Niftrik
1fb78d577f
SCI: Moved audio code from AudioResource to the sfx core.
...
svn-id: r41486
2009-06-12 23:46:23 +00:00
Walter van Niftrik
5e68fbfe87
SCI: Moved SCI1 audio map handling into the resource manager.
...
svn-id: r41408
2009-06-09 19:18:48 +00:00
Filippos Karapetis
60f5ac3300
Replaced GFXWARN with warning and GFXDEBUG with debugC
...
svn-id: r41367
2009-06-08 11:42:13 +00:00
Filippos Karapetis
95d32180df
Moved some more debug commands to ScummVM's console
...
svn-id: r41364
2009-06-08 08:38:10 +00:00
Filippos Karapetis
ed46e223eb
Hopefully fixed memory corruption when loading games
...
svn-id: r41361
2009-06-07 23:29:11 +00:00
Max Horn
0dcb1fa84f
SCI: Got rid of g_EngineState
...
svn-id: r41359
2009-06-07 23:04:34 +00:00
Walter van Niftrik
a6ed05740f
SCI: Moved resource36 handling into resource manager.
...
svn-id: r41349
2009-06-07 19:15:55 +00:00
Max Horn
ee21d82948
SCI: Fixed the broken SciEngine::pauseEngineIntern code by ensuring that SciEngine::_gamestate is updated whenever the EngineState gets changed (due to loading a savestate)
...
svn-id: r41346
2009-06-07 17:18:11 +00:00
Max Horn
21d948ec05
SCI: Simplified SongLibrary code a bit
...
svn-id: r41345
2009-06-07 17:07:25 +00:00
Max Horn
d07e9dfb13
SCI: Objectified SongLibrary
...
svn-id: r41343
2009-06-07 17:06:51 +00:00
Max Horn
f2ca788004
SCI: Renamed various song/songlib related structs and members
...
svn-id: r41342
2009-06-07 17:06:32 +00:00
Filippos Karapetis
3b687a7a04
Replaced KP_ALT, SKPV_OR_ALT and UKPV_OR_ALT
...
svn-id: r41340
2009-06-07 16:50:34 +00:00
Filippos Karapetis
744323ca33
Replaced/removed KP_UINT, KP_SINT, SKPV and UKPV as well as the VIEW_PRIORITY and PRIORITY_BAND_FIRST wrappers
...
svn-id: r41338
2009-06-07 15:53:30 +00:00
Walter van Niftrik
e3d3195a43
SCI: Resmgr cleanup and preparations for moving resource36 handling into resmgr.
...
svn-id: r41318
2009-06-07 02:18:38 +00:00
Filippos Karapetis
7375039158
Moved some more debug commands to ScummVM's coneole
...
svn-id: r41302
2009-06-06 20:29:37 +00:00
Filippos Karapetis
e572811aed
Moved some more debug commands to ScummVM's coneole
...
svn-id: r41227
2009-06-06 16:43:13 +00:00
Willem Jan Palenstijn
60e02ad6a8
Store long-term pointers to object variables in a new ObjVarRef struct.
...
Storing them as reg_t* could cause the pointers to become invalid
when they pointed into CloneTable since CloneTable can be re-allocated.
svn-id: r41220
2009-06-06 11:38:20 +00:00
Filippos Karapetis
8033a39128
Objectified the graphics driver
...
svn-id: r41214
2009-06-06 10:21:48 +00:00