Filippos Karapetis
2e04dcb133
- Moved the Sierra game ID conversion code inside game.cpp, so that any game-specific workarounds are tested against ScummVM IDs
...
- Added detection for the EcoQuest 1 demo in the fallback detector
- Partially reverted my previous "fix" for EcoQuest 1 CD, and turned it into a script-specific hack for that game, for now
- Added handling of kDisposeScript calls made with 2 parameters, e.g. in KQ5CD and others (still untested, haven't found a test case)
svn-id: r43887
2009-09-01 17:09:59 +00:00
Filippos Karapetis
28d7d59de3
Changed an error to a warning, as it occurs at the beginning of EcoQuest 1 CD and doesn't seem to have any side effects
...
svn-id: r43876
2009-09-01 06:51:40 +00:00
Walter van Niftrik
1d6f946ba7
SCI: Add stub for PalVary.
...
svn-id: r43857
2009-08-31 18:42:07 +00:00
Filippos Karapetis
cc17addebf
Removed many bogus return values in the SCI graphics functions - some functions always returned "true", whereas in others they errored out in fatal conditions before any value was returned. FreeSCI was returning values from the graphics drivers it used. In ScummVM, we have one graphics driver, and we error out in fatal conditions anyway, so these error checks are no longer necessary, and the resulting code looks much neater
...
svn-id: r43851
2009-08-31 14:24:35 +00:00
Matthew Hoops
3687544fbb
Adding support for AVI in SCI games (such as kq6) and implement kPlatform.
...
svn-id: r43834
2009-08-30 19:47:47 +00:00
Matthew Hoops
ad144c8ee8
Silence gcc warning.
...
svn-id: r43814
2009-08-30 02:10:25 +00:00
Walter van Niftrik
40d6119fd5
SCI: Add support for SetCursor with 4 args.
...
svn-id: r43813
2009-08-30 01:38:14 +00:00
Walter van Niftrik
cf5483c3d8
SCI: Add SetCursor detection. Cleanup.
...
svn-id: r43812
2009-08-30 01:37:52 +00:00
Filippos Karapetis
ac025f4294
- Replaced more cases of EngineState parameters
...
- Made some version comparisons for old SCI0 versions easier to read
- Removed the GET_SEL32SV macro
svn-id: r43729
2009-08-25 15:14:29 +00:00
Filippos Karapetis
ed66cad677
- Simplified the parameters of some functions
...
- Replaced some EngineState parameters
- The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions
- Plugged 2 leaks in the fallback detector
- Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency
svn-id: r43722
2009-08-25 08:38:14 +00:00
Walter van Niftrik
4c8c31d769
SCI: Fix interpretation of ShowMovie speed argument.
...
svn-id: r43718
2009-08-25 00:18:11 +00:00
Walter van Niftrik
d5f61d13b6
SCI: Reverted r40889. New fix for window erasing issue in SCI1.1 games.
...
svn-id: r43711
2009-08-24 21:56:54 +00:00
Walter van Niftrik
00f4794c0a
SCI: Stage 1 of the game detection overhaul. The end goal is to autodetect
...
as much as possible. All SCI_VERSION_* information was removed from
detection.cpp (much of it was incorrect anyway).
svn-id: r43449
2009-08-16 19:18:19 +00:00
Walter van Niftrik
65e9ae163f
SCI: Added a crude speed throttler.
...
svn-id: r43289
2009-08-11 20:18:15 +00:00
Filippos Karapetis
31a0c80905
Moved the kernel and the vocabulary outside of the engine state (they're static data, which never changes during a game)
...
svn-id: r42398
2009-07-11 23:45:54 +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
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
522b161bec
Replaced sciprintf() calls with printf, DebugPrintf, warning and error calls
...
svn-id: r42167
2009-07-06 10:39:22 +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
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
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
Walter van Niftrik
06144864e1
SCI: Partial support for dual-language games.
...
svn-id: r41833
2009-06-24 19:12:45 +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
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
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
Filippos Karapetis
da36901b07
Cleanup
...
svn-id: r41202
2009-06-05 23:08:35 +00:00
Max Horn
10c54394bd
SCI: Renamed EngineState::flags and version to _flags and _version (following our conventions); also slightly changed the EngineState constructor to init _version & _flags, and used this to make them constant
...
svn-id: r41177
2009-06-04 21:44:39 +00:00
Max Horn
f08f5c3bbf
SCI: Slightly modified kAddAfter so that it does not modify its arguments needlessly
...
svn-id: r41174
2009-06-04 20:51:24 +00:00
Max Horn
382ebea3fa
SCI: Renamed various debug related global variables to have a g_ prefix; and moved any 'extern' decls of them into a new header file
...
svn-id: r41163
2009-06-04 11:28:05 +00:00
Filippos Karapetis
780926991e
Moved some more console commands to ScummVM's debug console
...
svn-id: r41126
2009-06-02 19:03:43 +00:00
Filippos Karapetis
98f64cfa2f
Removed the gfxw_new_visual and gfxw_new_port wrappers, moved _kfuncTable inside the Kernel class and moved gfxw_find_port inside the GfxVisual struct
...
svn-id: r41125
2009-06-02 14:16:59 +00:00
Filippos Karapetis
d405b2880b
Removed some unused variables from the engine state
...
svn-id: r41123
2009-06-02 07:59:04 +00:00
Filippos Karapetis
99c6874630
Split the kernel functions away from the vocabulary functions (WIP, saving/loading is broken)
...
svn-id: r41101
2009-06-01 14:12:43 +00:00
Filippos Karapetis
c730e0290d
Replaced kernel_oops with error(), and added an enum to clarify the cases where invoke_selector should stop
...
svn-id: r41095
2009-06-01 08:00:58 +00:00
Torbjörn Andersson
0999534749
The error() and warning() functions add ! and newline automatically. (I didn't
...
look at debug() and debugC(), since I'm really bored with this now. :-)
svn-id: r41061
2009-05-31 10:02:16 +00:00
Filippos Karapetis
a4d13cef8c
More objectification of the Vocabulary functions
...
svn-id: r41057
2009-05-31 02:37:24 +00:00
Johannes Schickel
abe8cf0625
Typo.
...
svn-id: r41054
2009-05-31 01:11:06 +00:00
Max Horn
70a04c8b51
SCI: Made vocab_version static again (a global static var is bad, but a really global var is worse); also clarified some FIXME comments that we want to avoid *any* non-const global var, no matter whether it is static or not
...
svn-id: r41045
2009-05-30 20:37:33 +00:00
Willem Jan Palenstijn
598feb771f
SCI: Fix broken pointer after array re-allocation.
...
svn-id: r41042
2009-05-30 19:59:53 +00:00
Johannes Schickel
2f90c8f398
- Fix various debugC calls (parameters passed were not correct)
...
- Fix unused variable warning in scriptdebug.cpp
svn-id: r41038
2009-05-30 17:30:54 +00:00
Filippos Karapetis
3490819a66
- Removed debug_mode from the engine state
...
- Turned all SCIkwarn and SCIkdebug functions to ScummVM's debugC function
- Placed some debug code in appropriate defines: DEBUG_PARSER, DEBUG_AVOIDPATH and DEBUG_SOUND
- Removed the "debuglog" command and the "script_checkloads_flag" and "sci_debug_flags" variables
svn-id: r41033
2009-05-30 15:40:49 +00:00
Filippos Karapetis
69582f0179
Moved 3 more debug commands to console.cpp ("simkey", "segment_table" and "show_map") and removed the GFXWC macro. Some cleanup
...
svn-id: r41032
2009-05-30 14:30:39 +00:00
Filippos Karapetis
c7c9f05cac
Removed/replaced BREAKPOINT
...
svn-id: r41025
2009-05-30 10:42:08 +00:00
Filippos Karapetis
b1997801da
- Moved some debug code into console.cpp, adding 3 console commands: resource_types, sci0_palette and exit
...
- Removed the "man" command
- Removed the commands which set the SCI01 priority table flags and the crossblit alpha threshold (they're too specific, and not really useful anymore)
- Removed some leftover debug code from gfxop_clear_box()
svn-id: r41010
2009-05-29 17:19:39 +00:00
Filippos Karapetis
cf5e7e17df
Fixed hopefully the last regression in kSetCursor. KQ5CD should work correctly again
...
svn-id: r40980
2009-05-29 10:14:58 +00:00
Filippos Karapetis
b242d05563
- Fixed usage of kSetCursor in SCI1.1 games (e.g. when starting KQ6 floppy)
...
- Removed a static variable (vocab_version)
- vocab.996 is now freed after creating the class table in SCI1 games, like in SCI0 games
svn-id: r40979
2009-05-29 09:42:11 +00:00
Filippos Karapetis
e9444e2b93
- Rewrote kSetCursor to be a bit simpler to understand, and got rid of GF_SCI1_NEWSETCURSOR
...
- Removed the 3 mouse pointer view, loop and cell variables (and their 3 "save" versions) from the game state, as they're all actually not used anywhere
- Cleanup
svn-id: r40976
2009-05-29 08:25:42 +00:00