Filippos Karapetis
3c82b6578f
Now that EngineState is not deleted when loading games, we can move some more state-related variables to it, and remove several FIXME's about non-const global variables. Also, the entries in the data stack are now deleted when loading (fixes a memory leak - thanks to digitall for this).
...
svn-id: r49465
2010-06-06 23:00:33 +00:00
Filippos Karapetis
65f3cfcbd8
Stop reconstructing the engine state when restoring, but reset it instead
...
svn-id: r49376
2010-06-01 15:48:17 +00:00
Filippos Karapetis
9c92bd1b81
The parser vocabulary remains static throughout the game, thus it has been removed from the engine state
...
svn-id: r49373
2010-06-01 15:11:20 +00:00
Filippos Karapetis
e083c20da1
The system strings segment is a fixed segment of the segment manager, which doesn't change during the game, thus move all the system strings code and variables inside the segment manager
...
svn-id: r49372
2010-06-01 14:41:48 +00:00
Filippos Karapetis
7cd9a23c0d
Remove the unused SCI_GAME_WAS_RESTARTED_AT_LEAST_ONCE flag
...
svn-id: r49161
2010-05-23 17:03:16 +00:00
Filippos Karapetis
9be4f6250c
Made shrink_execution_stack() a member of EngineState
...
svn-id: r49159
2010-05-23 16:44:36 +00:00
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
Filippos Karapetis
852cb16c49
Moved the breakpoint information inside the DebugState struct
...
svn-id: r49092
2010-05-19 07:25:06 +00:00
Max Horn
c934642bdb
COMMON: Move typedef StringList from str.h to new header str-array.h
...
This removes the dependency on array.h from str.h.
Also, begun migration from the confusing type name "StringList" to
the more appropriate StringArray.
svn-id: r48282
2010-03-18 15:09:24 +00:00
Max Horn
02201e937a
SCI: Move SciGui::wait to EngineState::wait
...
svn-id: r48118
2010-02-23 22:44:46 +00:00
Max Horn
975dbef0e5
SCI: Remove sound/audio.h include from engine/state.h
...
svn-id: r48063
2010-02-15 00:20:53 +00:00
Filippos Karapetis
07e405588d
Moved the reference to AudioPlayer inside SciEngine (as it doesn't have a state, per se, and is static)
...
svn-id: r48059
2010-02-14 12:23:22 +00:00
Max Horn
b9a11ddb0b
SCI: Move language related code from EngineState to SciEngine
...
svn-id: r48052
2010-02-13 17:46:44 +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
a82939c9be
SCI: Get rid of EngineState::resMan
...
svn-id: r48048
2010-02-13 17:44:19 +00:00
Max Horn
721a57a661
SCI: Move Gui/Gfx related permanent objects from EngineState to SciEngine
...
svn-id: r48047
2010-02-13 17:43:31 +00:00
Martin Kiewitz
248bc560f3
SCI: moved onControl etc. into GfxCompare, now getting called directly. also fixed loading saved games due Gfx* changes
...
svn-id: r47912
2010-02-05 20:44:03 +00:00
Martin Kiewitz
f3ea96d168
SCI: GfxCoordAdjuster class added, local2Global and global2Local use that class directly, kGraph / RedrawBox is now using GfxPaint16 directly
...
svn-id: r47908
2010-02-05 18:56:13 +00:00
Martin Kiewitz
e7cffa90b2
SCI: frameout sci32 stuff now gets called directly w/o SciGui/32
...
svn-id: r47907
2010-02-05 16:03:14 +00:00
Martin Kiewitz
f8f490c565
SCI: calling most of the cursor functions directly via _gfxCursor instead of SciGui/32
...
svn-id: r47903
2010-02-05 14:48:51 +00:00
Martin Kiewitz
3ce2e22978
SCI: adding GfxPaint class, implementing kernelDrawPicture for GfxPaint16 and GfxPaint32, using those classes directly when drawing pictures instead of SciGui/32. Making draw_pic command work in sci32 that way, using _gfxPaint16 for kDrawPic because that command is sci16 exclusive
...
svn-id: r47883
2010-02-04 19:22:40 +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
Max Horn
bb5e34a014
SCI: Get rid of EngineState::stack_segment
...
svn-id: r47833
2010-02-03 01:32:59 +00:00
Max Horn
b2d69649f7
SCI: Rearrange members of class EngineState
...
svn-id: r47832
2010-02-03 01:32:27 +00:00
Max Horn
4b19acf255
SCI: Use Common::List and Common::String to simplify breakpoint handling (untested)
...
svn-id: r47824
2010-02-02 22:52:41 +00:00
Martin Kiewitz
845c245ff3
SCI: class menu renamed to GfxMenu - now getting called directly, also fix for loading savedgames
...
svn-id: r47792
2010-02-01 09:53:42 +00:00
Martin Kiewitz
d31f696d1f
SCI: rename Controls to GfxControls, gets directly called now
...
svn-id: r47783
2010-01-31 22:20:55 +00:00
Walter van Niftrik
a92bb6193b
SCI: Implement kMemorySegment().
...
svn-id: r47776
2010-01-31 19:47:54 +00:00
Martin Kiewitz
66c88b98f5
SCI: GfxCache is now also called directly w/o SciGui nor SciGui32
...
svn-id: r47759
2010-01-31 17:14:58 +00:00
Martin Kiewitz
72c2d360f7
SCI: renamed SciPalette to GfxPalette, Screen to GfxScreen, GfxPalette is now called directly w/o SciGui
...
svn-id: r47752
2010-01-31 16:21:11 +00:00
Martin Kiewitz
c991a5bceb
SCI: renamed SciGuiAnimate to GfxAnimate, moved code from SciGui into this class, now getting called directly
...
svn-id: r47751
2010-01-31 15:07:36 +00:00
Martin Kiewitz
7929255cd9
SCI: cleaned up graphics classes, removed gfx&windowmgr, added gfxports, gfxcompare, gfxpaint16, gfxcache. kernel uses gfxports directly w/o going through SciGui
...
svn-id: r47745
2010-01-31 12:35:15 +00:00
Matthew Hoops
5b9b6b6b70
Fix compile when ENABLE_SCI32 is not set.
...
svn-id: r47682
2010-01-29 22:02:28 +00:00
Martin Kiewitz
a800855bf4
SCI: added new SciGui32 class, Gfx class needs some work though and hopefully i didnt overlook some kernel function that is also used by sci32. now using plane left/top
...
svn-id: r47679
2010-01-29 21:30:46 +00:00
Max Horn
b124a0c1cd
SCI: Reduce header interdependencies a bit
...
svn-id: r47666
2010-01-29 11:05:06 +00:00
Matthew Hoops
d883b6215f
Detect whether to use the modified SCI2 or SCI2.1 kernel table based on the kDoSound call used in Sound::play(), which fixes at least my version of KQ7 - probably others. The kernel table initialization now occurs after the script signatures are adjusted as we need it adjusted before checking through Sound::play for the kDoSound call.
...
svn-id: r47645
2010-01-28 18:57:31 +00:00
Johannes Schickel
aed02365ec
Strip trailing spaces/tabs.
...
svn-id: r47541
2010-01-25 01:39:44 +00:00
Filippos Karapetis
722233fd0d
- Moved all of the parser-related variables inside the Vocabulary class
...
- Moved the kSetSynonyms() function inside kscripts (as it's for script synonyms, not parser word synonyms)
- The parser vocabulary is now only initialized for SCI0 and SCI01 games, which had a parser
svn-id: r47483
2010-01-23 19:10:56 +00:00
Filippos Karapetis
df149e1509
Separated the parser code
...
svn-id: r47480
2010-01-23 17:55:54 +00:00
Filippos Karapetis
f007435b82
sfx_init_flags is not used in the new sound code
...
svn-id: r47464
2010-01-23 12:10:31 +00:00
Martin Kiewitz
3e44180e47
SCI: speed throttler changed, now gets triggered by kAnimate, removed initial no-delay, i'm still getting animation now in iceman and sq3, slow palette animation in longbow fixed
...
svn-id: r47343
2010-01-17 18:41:28 +00:00
Filippos Karapetis
a637f50862
Silenced warnings ("this" isn't defined on object instantiation, and commented out some unused variables)
...
svn-id: r47237
2010-01-10 21:13:38 +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
f66d5a7f53
SCI: Removed the old graphics code
...
svn-id: r47005
2010-01-05 00:54:53 +00:00
Filippos Karapetis
2f23eb99ee
The "room" command can now set the current room number, too (more straightforward than changing global var 13)
...
svn-id: r46925
2010-01-03 15:08:26 +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
113c0941ae
- Introduced a new version in the sound version detection routine, as SCI0 early games had different sound than SCI0 late ones
...
- Changed sound-related debug output from printf's into debugC calls
svn-id: r46560
2009-12-25 18:15:16 +00:00
Filippos Karapetis
980b8bb899
Moved all of the sound iterator code in its own directory, and added a slight hack to the SoundCommandParser constructor
...
svn-id: r46430
2009-12-20 13:38:13 +00:00