Filippos Karapetis
97e0293dfd
When opening files, open the English language part of the filename. Fixes some multilingual SCI1 games
...
svn-id: r43730
2009-08-25 18:27:55 +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
260a2019b6
SCI: Add autodetection for DoSound. Cleanup.
...
svn-id: r43482
2009-08-17 15:49:22 +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
Walter van Niftrik
5709e524f9
SCI: Rename sci_version_t to SciVersion
...
svn-id: r43407
2009-08-15 12:09:47 +00:00
Walter van Niftrik
65e9ae163f
SCI: Added a crude speed throttler.
...
svn-id: r43289
2009-08-11 20:18:15 +00:00
Walter van Niftrik
dd9e569325
SCI: Improved multilanguage support for SCI1 and SCI1.1.
...
svn-id: r43217
2009-08-10 18:37:47 +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
982153e0ab
restAdjust should be a signed integer. Fixes crashes with SCI1 games that take absolute lofs parameters (a regression of commit #42260 )
...
svn-id: r42297
2009-07-09 15:46:26 +00:00
Filippos Karapetis
62499054a0
Some cleanup for the script debugger code:
...
- Renamed struct DebugState to ScriptState and r_amp_rest to restAdjust inside EngineState. Changed restAdjust to be a uint16 (actually it is a uint16, but it was being casted back and forth from an unsigned integer, so this clears up its type and size)
- Moved the script state variables from inside the run_vm() into the ScriptState struct, so that they can be accessed by the console commands and the script debugger all the time, and removed the weird isValid code
svn-id: r42260
2009-07-08 10:25:37 +00:00
Walter van Niftrik
06144864e1
SCI: Partial support for dual-language games.
...
svn-id: r41833
2009-06-24 19:12:45 +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
3091de6735
SCI: Added FIXME comment to not_register()
...
svn-id: r41172
2009-06-04 20:50:51 +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
e317012cce
Further objectification of the SCI vocabulary functions. Removed the "kernel_words" console command, as it's exactly the same as "parser_words"
...
svn-id: r41065
2009-05-31 12:05:49 +00:00
Filippos Karapetis
a4d13cef8c
More objectification of the Vocabulary functions
...
svn-id: r41057
2009-05-31 02:37:24 +00:00
Filippos Karapetis
76406c35ec
Started objectifying the vocabulary functions (WIP)
...
svn-id: r41051
2009-05-30 22:15:00 +00:00
Filippos Karapetis
4ab05f0b38
- Moved 3 more commands to console.cpp: "draw_pic", "draw_rect" and "fill_screen"
...
- Removed some FreeSCI-specific variables for checking of the on-screen console
- Removed the Control-1 key combo - the console command "visual_state" can be used for the same reason
svn-id: r41040
2009-05-30 18:22:55 +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
Max Horn
518e005ec2
SCI: Revised code for listing savegames
...
svn-id: r40999
2009-05-29 14:36:56 +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
Willem Jan Palenstijn
67fa1fb59c
SCI: Fix potential dangling pointer more robustly,
...
by changing the executionStack implementation to a list.
svn-id: r40971
2009-05-28 22:42:18 +00:00
Max Horn
d70504c910
SCI: Renamed sfx_state_t -> SfxState, preparing it to become a class eventually
...
svn-id: r40958
2009-05-28 10:54:30 +00:00
Max Horn
7fbbaff990
SCI: Turned the global 'static MessageState state' variable into a member of EngineState
...
svn-id: r40910
2009-05-26 11:33:18 +00:00
Max Horn
b431254070
SCI: Removed the 'save_dir' gui hack
...
svn-id: r40772
2009-05-21 21:50:11 +00:00
Max Horn
bba91075bf
removed trailing whitespaces
...
svn-id: r40742
2009-05-20 17:53:31 +00:00
Max Horn
4c786a44c9
SCI: Changed EngineState::opcodes to a Common::Array (maybe we shold just remove the relevant code completely, though, it seems useless, esp. as long as we hardcode the way we interpret every opcode
...
svn-id: r40740
2009-05-20 17:52:33 +00:00
Max Horn
4755fcb130
SCI: got rid of EngineState::savegame_version; some cleanup
...
svn-id: r40713
2009-05-19 00:33:48 +00:00
Max Horn
091b347a7e
SCI: Init the diff .#&$ EngineState::flags field in the constructor and when loading -- fixes many weird crashes upon loading (lesson to be learned: if you add fields to a class, then (a) init it in the construtor and (b) if the class support serializing, make sure the new field is handled when saving/loading :-)
...
svn-id: r40712
2009-05-19 00:02:44 +00:00
Max Horn
b0c1cf52e0
SCI: Got rid of EngineState::execution_stack_pos; overally, the resulting code should be even stricter in detecting invalid VM stack access (and some bugs when loading saves might be fixed now...)
...
svn-id: r40694
2009-05-18 18:15:45 +00:00
Max Horn
e0366f00bc
SCI: Removed SCI_SIMPLE_SAID_CODE and the associated heavily bitrotted code
...
svn-id: r40691
2009-05-18 15:07:51 +00:00
Max Horn
9da07f21fe
SCI: cleanup
...
svn-id: r40689
2009-05-18 15:07:04 +00:00
Filippos Karapetis
87e8f94fde
- Moved all the files out of /sci/scicore and into /sci
...
- Moved /scicore/sciconsole.h into /engine, and renamed /engine/scriptconsole.cpp to /engine/sciconsole.cpp
svn-id: r40608
2009-05-15 14:07:45 +00:00
Filippos Karapetis
f75c950457
- Replaced SCI_VERSION_FTU_LOFS_ABSOLUTE with the GF_SCI1_LOFSABSOLUTE game flag
...
- Moved the version defines outside of versions.h
svn-id: r40559
2009-05-14 12:38:50 +00:00
Filippos Karapetis
891a8fae05
- Removed SCI_VERSION_FTU_NEW_GETTIME
...
- Added defines for SCI0 flags, to simplify game entries
- Removed the leftover version_lock_flag from EngineState
svn-id: r40553
2009-05-14 10:24:39 +00:00
Filippos Karapetis
999d46b241
Started using game-specific flags and removed/replaced some SCI version checks with flags.
...
- The SCI0 new script header and the angles check have been replaced by the GF_SCI0_OLD flag
- The SCI0 new drawpic parameter and the new priority check have been replaced by the GF_SCI0_OLDGFXFUNCS flag
- Removed the code which retries to use the newer script header in SCI0 games if the detected one is wrong, as that case should be covered by the GF_SCI0_OLD flag
- Removed the leftover min_version and max_version variables from gamestate
- Cleaned up kGetTime() a bit
svn-id: r40552
2009-05-14 09:12:27 +00:00
Filippos Karapetis
3117a8d87f
Removed the hack used to check for the existence of the CantBeHere() selector
...
svn-id: r40549
2009-05-14 07:14:08 +00:00
Max Horn
7f29670843
SCI: Changed object / script local vars storage to use a Common::Array
...
svn-id: r40515
2009-05-12 23:30:42 +00:00
Max Horn
1949133d22
SCI: Simplified the Table class, by making it use an Common::Array internally. Increased savegame version, breaking compatibility to the previous one -- sorry for that, but some of my previous changes accidentally messed up the table syncing, resulting in messed up savegames anyway; these breakages should be fixed with this commit
...
svn-id: r40453
2009-05-11 13:32:00 +00:00
Max Horn
7c75e8e2ef
SCI: Reduced header deps
...
svn-id: r40451
2009-05-11 13:31:17 +00:00
Max Horn
98fb95589c
SCI: Changed EngineState::pics to a Common::Array
...
svn-id: r40434
2009-05-10 20:13:43 +00:00
Filippos Karapetis
acd5a87922
Moved the code which retrieves the current room number in a separate function and merged _sci1_alloc_system_colors inside _reset_graphics_input
...
svn-id: r40412
2009-05-10 10:27:45 +00:00
Max Horn
294bd0dc07
SCI: Renamed execution_stack -> _executionStack and turned it into a Common::Array
...
svn-id: r40182
2009-04-28 15:58:19 +00:00
Max Horn
b5e9d79e15
SCI: Turned classtable into a Common::Array<Class>
...
svn-id: r40161
2009-04-27 12:31:27 +00:00
Max Horn
5881abb213
SCI: Removed unused vars; doxygenified some comments; cleanup
...
svn-id: r40159
2009-04-27 12:29:51 +00:00
Max Horn
b73301748a
SCI: Renamed gfx_state_t -> GfxState
...
svn-id: r40155
2009-04-27 11:12:08 +00:00
Max Horn
9445439c4f
SCI: Renamed gfxw_widget_t and subtypes to GfxWidget etc.
...
svn-id: r40104
2009-04-24 10:46:20 +00:00