Filippos Karapetis
c874ff15a8
Cleaned up the game ID code:
...
- The game ID is now obtained from ScummVM ID directly, not by converting Sierra's internal ID
- Moved the code which reads the internal Sierra ID inside the resource manager
- Moved the code which converts the internal Sierra ID to ScummVM's IDs together with the rest of the detection code
svn-id: r49152
2010-05-23 10:28:03 +00:00
Max Horn
38bf3d0d3c
SCI: Make EngineState parameter to INV_SEL explicit
...
svn-id: r48202
2010-03-08 21:54:07 +00:00
Max Horn
e45f0f309a
SCI: Remove EngineState::_kernel, use SciEngine::_kernel instead
...
svn-id: r48050
2010-02-13 17:45:40 +00:00
Max Horn
9575cc08a2
SCI: Move GameFeatures from EngineState to SciEngine
...
svn-id: r48049
2010-02-13 17:44:58 +00:00
Max Horn
f86618f92b
SCI: Add a 'SELECTOR' macro
...
svn-id: r47918
2010-02-05 22:55:18 +00:00
Filippos Karapetis
2fb37063a4
Placed all the game feature detection code in a separate class
...
svn-id: r47850
2010-02-03 11:02:43 +00:00
Willem Jan Palenstijn
06bd17ee71
SCI: Remove extra '\n's in debugC messages
...
svn-id: r47707
2010-01-30 11:59:05 +00:00
Max Horn
4ffec28103
SCI: Move selector stuff to new header; reorder k_argc & k_argp param of invoke_selector
...
svn-id: r47665
2010-01-29 11:03:54 +00:00
Filippos Karapetis
d99aa0f126
More renaming
...
svn-id: r47009
2010-01-05 01:37:57 +00:00
Filippos Karapetis
84cd8d2dc7
Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purpose
...
svn-id: r47007
2010-01-05 01:22:16 +00:00
Filippos Karapetis
fabe51c129
Renamed gameName -> gameId, to keep the same vocabulary everywhere
...
svn-id: r46635
2009-12-27 12:54:03 +00:00
Filippos Karapetis
b6c46c752c
Moved getAngle() inside kmovement.cpp, the only place where it's actually used
...
svn-id: r45903
2009-11-14 17:53:30 +00:00
Filippos Karapetis
b105d690e3
- Removed kShow() and the related code it uses - it's a debugging function, and we have the same functionality in the debug console
...
- Merged the view signal flags from kernel.h and gui_animate.h, and named them appropriately. Also, updated the notes next to them, cause some were incorrectly marked as not used in our engine
- Added a note about a hack used in the old GUI in the view signal flags
- Moved the control state flags inside gui_helpers.h
svn-id: r45310
2009-10-21 19:19:03 +00:00
Max Horn
f3ab3051d8
SCI: Make the implicit segMan param to GET_SEL32(V) and PUT_SEL32(V) explicit
...
svn-id: r45234
2009-10-18 19:42:56 +00:00
Martin Kiewitz
766820d72c
SCI: added fix for iceman (dance with girl walking)
...
svn-id: r45122
2009-10-15 14:57:40 +00:00
Filippos Karapetis
14f8d50a62
Moved actor movement detection in state.cpp, together with the other detections and rewrote it to work in a similar fashion to the other detections
...
svn-id: r44836
2009-10-09 17:41:59 +00:00
Max Horn
6ad5840181
SCI: Rename EngineState::segMan to _segMan
...
svn-id: r44629
2009-10-04 18:38:18 +00:00
Max Horn
0da9ad5ff5
SCI: Add SegManager::findObjectByName() method, make parse_reg_t() local to console.cpp, and switch other code using it to use findObjectByName() instead.
...
svn-id: r44628
2009-10-04 18:36:58 +00:00
Filippos Karapetis
30084d72a5
Added a new special reg_t, SIGNAL_REG, for signaling when an error occurs (usually), or to signal success in some special occasions
...
svn-id: r44505
2009-09-30 23:00:03 +00:00
Filippos Karapetis
f9296a6445
- Changed the unimplemented debug SCI kernel functions (InspectObj, ShowSends, ShowObjs, ShowFree, StackUsage and Profiler) to be dummy functions - we have our own debugger, and don't use these functions for debugging
...
- Removed the function number parameter from all kernel functions, as it's no longer needed, and removed the FAKE_FUNCT_NR hack
- Removed kUnknown() and kStub()
- Dummy/unknown kernel functions are no longer invoked, and a warning is shown instead, with the paremeters passed to them
Note: there is an evil hack used for debugging scripts in invoke_selector(), which probably no longer works now
svn-id: r44461
2009-09-29 14:24:07 +00:00
Filippos Karapetis
180b3f1247
Create a define for the special "signal" offset used throughout the engine, and fixed the arbitrary 0 values from commit #44294 , set when some math functions do invalid calculations
...
svn-id: r44359
2009-09-25 16:15:57 +00:00
Filippos Karapetis
13ad217cdd
- Moved the SCI version in a global variable
...
- Changed all the SCI version checks to use getSciVersion()
- Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine)
The fallback detector should work correctly now
svn-id: r44269
2009-09-23 10:55:35 +00:00
Max Horn
5f440854b7
SCI: Add EngineState::_kernel member for convenience
...
svn-id: r44173
2009-09-17 17:00:36 +00:00
Max Horn
eb77efda78
SCI: Add a global getSciVersion() function and make use of it
...
svn-id: r44170
2009-09-17 16:50:53 +00:00
Max Horn
730c7c9641
SCI: Get rid of the not_register() hack
...
svn-id: r44153
2009-09-17 13:22:00 +00:00
Max Horn
364640cfd5
SCI: Rename selector_map_t -> SelectorCache and _selectorMap -> _selectorCache
...
svn-id: r44152
2009-09-17 13:21:42 +00:00
Max Horn
1f0e8ef470
SCI: More cleanup
...
svn-id: r44129
2009-09-17 00:44:22 +00:00
Max Horn
a277123f54
SCI: Rename Script class members, change Script from struct to class
...
svn-id: r44126
2009-09-16 23:32:27 +00:00
Filippos Karapetis
90ae20c3ea
- Made obj_get and obj_get_name methods of SegManager (getObject and getObjectName, respectively)
...
- Renamed alloc_List -> allocateList, alloc_Node->allocateNode, alloc_hunk_entry->allocateHunkEntry, free_hunk_entry->freeHunkEntry, for consistency
svn-id: r44039
2009-09-12 00:10:07 +00:00
Max Horn
d04b5d2c9b
SCI: Rename resManager -> resMan; segManager -> segMan
...
svn-id: r43980
2009-09-06 12:57:42 +00:00
Filippos Karapetis
1bbab8f191
Some renaming:
...
getresourceManager -> getResourceManger
resourceManager -> resMan
segmentManager ->segMan
svn-id: r43908
2009-09-02 12:02:37 +00:00
Max Horn
6c44eafa97
SCI: funct_nr is not used in 99% of all opcodes -- hide it in those (to be removed eventually)
...
svn-id: r43905
2009-09-02 11:33:25 +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
Filippos Karapetis
c38f58598b
- Simplified some functions to accept only the parts of the EngineState they need as parameters, instead of the whole EngineState
...
- Moved the class table in the Segment manager - it's the only class using it directly
- Removed the sci11 flag from save games (we already know this, we don't need to store it)
- Moved script_get_segment() and get_class_address() inside the segment manager class
- Removed the script_locate_by_segment wrapper
- Simplified script_lookup_export() a lot by removing some paranoia checks
- Added some WIP code for automatically determining the game id in the fallback detector (still not working)
- General cleanup
svn-id: r43458
2009-08-17 05:55:21 +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
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
522b161bec
Replaced sciprintf() calls with printf, DebugPrintf, warning and error calls
...
svn-id: r42167
2009-07-06 10:39:22 +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
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
Filippos Karapetis
ac544e73e9
Moved some more console commands to ScummVM's debug console
...
svn-id: r41127
2009-06-02 21:07:34 +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
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