Commit graph

357 commits

Author SHA1 Message Date
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
Martin Kiewitz
1084b90fbb SCI: listsaves is now "list_saves", also included entry in help
svn-id: r46884
2010-01-02 14:11:38 +00:00
Martin Kiewitz
d4738631d5 SCI: implemented new console command "listsaves"
svn-id: r46883
2010-01-02 14:08:26 +00:00
Martin Kiewitz
0c9b828db1 SCI: console behaviour changed for vmvars command, now allows entering decimal values, also accepts hexadecimal values (use e.g. 12h). hexadecimal addresses are still accepted as well
svn-id: r46878
2010-01-02 09:39:17 +00:00
Filippos Karapetis
bcc33871c1 The wrapper for the VMD decoder is only used in the SCI engine for SCI32 games, so moved it inside the engine, instead of common code. Added support for VMD video playing from the "play_video" console command
svn-id: r46737
2009-12-30 10:09:48 +00:00
Filippos Karapetis
5cb5fe22ea SCI/new sound code:
- Made the SciMusic class private, and added wrapper functions for invoking specific methods of SciMusic from outside the SoundCommandParser class
- Many SCI games keep creating and destroying sound effects constantly (i.e. many times per second). Therefore, another scheme has been devised, which replaces the mutex that was in place. Whenever a sound command is run which operates on a specific object in the play list, we disallow onTimer() from kicking in. This isn't ideal, but it does stop random deadlocks because of locked mutexes without any noticeable side effects

svn-id: r46681
2009-12-28 20:10:15 +00:00
Filippos Karapetis
62c1c2633d SCI/new music code: Implemented the "songlib" debug command
svn-id: r46670
2009-12-28 11:23:20 +00:00
Martin Kiewitz
78d268b21a SCI/newgui: Added support for draw_pic command
svn-id: r46599
2009-12-26 18:07:36 +00:00
Max Horn
fd5e548bb2 SCI: Fix some warnings
svn-id: r46476
2009-12-22 00:16:09 +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
Filippos Karapetis
0c1b646c7f - Started wrapping the current sound code around appropriate defines
- Introduced a new resource type, SoundResource, used in the new music code

svn-id: r46421
2009-12-19 16:19:53 +00:00
Filippos Karapetis
2e6013947d Moved the interface class for the the custom SCI MIDI drivers together with the actual driver implementation code
svn-id: r46414
2009-12-18 18:32:09 +00:00
Martin Kiewitz
a5f1808c83 SCI: SciEvent created, kernel_sleep() created
svn-id: r46252
2009-12-04 17:38:24 +00:00
Filippos Karapetis
f755311114 priority_first and priority_last are not used by the new drawing code, thus the new code didn't handle priority changes by kGraph()
svn-id: r45658
2009-11-04 11:52:11 +00:00
Filippos Karapetis
57266a7cba - Removed status_bar_foreground and status_bar_background variables from the engine state
- Implemented clearMenuBar() in the new graphics code
- Removed the "status_bar" command, which was used to set custom colors for the status bar

svn-id: r45538
2009-10-30 14:39:26 +00:00
Filippos Karapetis
ff284c9f5b Remove unused includes when INCLUDE_OLDGFX is not set. Implemented the full screen updates that the current menu code is doing using new graphics functions (still unfinished). Some cleanup.
svn-id: r45536
2009-10-30 12:33:05 +00:00
Filippos Karapetis
394fc76719 Rewrote kBaseSetter() to use new graphics functions and behave like the original, and fixed a bug in the process (the previous code ignored z when calculating the height)
svn-id: r45463
2009-10-28 14:23:23 +00:00
Filippos Karapetis
04ab6bc9fc Enclose all of the old graphics code within the INCLUDE_OLDGFX safeguard (defined in sci.h)
svn-id: r45459
2009-10-28 13:20:30 +00:00
Filippos Karapetis
b5feeb60b6 Moved the cel count calculation to the new graphics code
svn-id: r45379
2009-10-25 22:33:08 +00:00
Willem Jan Palenstijn
4a3ebce699 SCI: Restore accumulator after executing send from debugger
svn-id: r45360
2009-10-24 13:26:12 +00:00
Filippos Karapetis
1f4ad52c61 Moved the view loop counting code in the new GUI
svn-id: r45322
2009-10-22 05:41:50 +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
Matthew Hoops
c8853f0cc0 Move the SeqDecoder to the Sci namespace, it makes more sense than Graphics because it's only used in Sci.
svn-id: r45230
2009-10-18 18:47:53 +00:00
Filippos Karapetis
cc31846eb5 Added a new console command, "play_video", which can play a SEQ or AVI file
svn-id: r45178
2009-10-17 10:42:00 +00:00
Willem Jan Palenstijn
4ce77c77fa SCI: Make send varselector reads more verbose. Add notes.
svn-id: r45131
2009-10-15 20:13:19 +00:00
Willem Jan Palenstijn
e3aa37dde0 SCI: Fix send debugger command
svn-id: r45128
2009-10-15 19:24:50 +00:00
Willem Jan Palenstijn
e6d3bb80b4 SCI: Improve cmdSend slightly. It's still broken, though
svn-id: r45097
2009-10-14 22:41:03 +00:00
Filippos Karapetis
4e0046dd1f Merged the rest of the cursor code
svn-id: r45029
2009-10-13 17:09:32 +00:00
Filippos Karapetis
5aa1415397 Merged the cursor manipulation code - cursor views are still not done
svn-id: r45028
2009-10-13 16:22:07 +00:00
Filippos Karapetis
1d3118cf42 Implemented some advanced savegame functionality - loading and deleting savegames from the GMM is now possible, and new saved games will also have thumbnails. Saving from the GMM creates corrupted saved games, so it has been disabled for now
svn-id: r44930
2009-10-11 15:51:43 +00:00
Filippos Karapetis
d6f5d93dbf Started rewriting the Object struct into a class
svn-id: r44878
2009-10-10 15:58:51 +00:00
Max Horn
0988e273ec SCI: Turn lookup_node & lookup_list into SegManager::lookupNode & SegManager::lookupList
svn-id: r44769
2009-10-07 23:34:24 +00:00
Max Horn
8498d769be SCI: Reduce header interdepencies once again. Rule of thumb: Never include a header file from another header file unless you absolutely *must* do it; if possible, try to use class forwards instead, and include the headers from source files only
svn-id: r44767
2009-10-07 23:04:13 +00:00
Martin Kiewitz
a61076a645 SCI: debug command undither implemented
svn-id: r44761
2009-10-07 21:47:34 +00:00
Filippos Karapetis
1562add631 - Cleaned up the cursor code
- Renamed gui -> _gui in EngineState, for consistency
- Added a reference to SciGuiCursor in EngineState, to be used by current code
- Renamed setCursorHide -> hideCursor, setCursorShow -> showCursor
- Moved the cursor zone limiting code inside SciGuiCursor. This code is currently not functioning, as we need to call refreshPosition() before each updateScreen() call to limit the cursor position.

svn-id: r44760
2009-10-07 21:29:47 +00:00
Martin Kiewitz
cb31d302b9 SCI/newgui: implemented debug command show_map
svn-id: r44735
2009-10-07 15:53:34 +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
Willem Jan Palenstijn
f61bf4f97a SCI: Fix parse error in parse_reg_t
svn-id: r44578
2009-10-03 22:44:16 +00:00
Willem Jan Palenstijn
95959a88ef SCI: Fix typo
svn-id: r44561
2009-10-03 20:25:27 +00:00
Max Horn
bfec2debe6 SCI: Fix parse_reg_t, it no longer modified the const string passed to it
svn-id: r44545
2009-10-02 20:20:45 +00:00
Max Horn
908e13fa73 SCI: Remove PRINT_STK macro; cleanup
svn-id: r44533
2009-10-02 12:53:04 +00:00
Willem Jan Palenstijn
7d6848dfa3 SCI: Add some fixmes noted by salty-horse.
svn-id: r44513
2009-10-01 11:06:38 +00:00
Filippos Karapetis
7d40dde96f - Removed the toggle for "weak" validations, as there are cases where they fail (e.g. in Longbow), so there is no point in having strict validations
- Removed the invalid toggle from kernel signatures - we now never error out on invalid object references, but throw a warning instead
- Simplified determine_reg_type()

svn-id: r44511
2009-10-01 10:57:59 +00:00
Willem Jan Palenstijn
168257df24 SCI: Remove outdated debugging hack.
In the past, a negative selector value was used to identify a callk
stack frame. Currently a type of EXEC_STACK_TYPE_KERNEL already does that.

svn-id: r44510
2009-10-01 08:53:10 +00:00
Max Horn
27026f6565 SCI: Replace magic '-42' by an enum
svn-id: r44492
2009-09-30 16:00:44 +00:00
Filippos Karapetis
fd21bb2611 - Moved the list of synonyms and parser nodes inside the vocabulary class
- Added a convenience member inside the EngineState struct to access the instance of the Vocabulary class

svn-id: r44481
2009-09-30 12:17:38 +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
Max Horn
2fe6b32968 SCI: Remove EngineState::game_version, it was only used for saving anyway. Also remove syncCStr()
svn-id: r44358
2009-09-25 13:02:11 +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