Max Horn
ed914d6740
SCI: Improved the Table template a bit by taking advantage of C++ features
...
svn-id: r40190
2009-04-28 22:56:44 +00:00
Max Horn
6ca348c9d0
SCI: Further restructured the SegManager heap tables
...
svn-id: r40184
2009-04-28 16:00:59 +00:00
Max Horn
36fcc55c06
SCI: Removed the evil macros in engine/heapmgr.h, by manually instantiating them where used (this enables us to further modify the code later one)
...
svn-id: r40183
2009-04-28 15:59:40 +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
f177c7142c
Fixed some silly warnings
...
svn-id: r40165
2009-04-27 14:40:14 +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
Filippos Karapetis
5eb4bdce66
Added all the different cases of kDoAudio as enums
...
svn-id: r40150
2009-04-26 02:00:36 +00:00
Walter van Niftrik
dfd0245273
SCI: DoSync should work now, but the lip-syncing mechanism also needs DoAudio
...
(currently stubbed), so it hasn't been tested yet.
so it hasn't been tested yet.
svn-id: r40147
2009-04-25 23:31:03 +00:00
Filippos Karapetis
f1893d8f25
WIP (still non-working) code for speech sync in CD talkie games (like e.g. KQ5 CD and SQ4 CD), taken from Greg's SCI implementation.
...
svn-id: r40142
2009-04-25 08:50:42 +00:00
Filippos Karapetis
beee12a520
Long messages in Eco Quest 1 are now shown correctly
...
svn-id: r40127
2009-04-24 20:09:52 +00:00
Filippos Karapetis
ea7b198748
Merged kSetCursor and kSetCursorNew, and changed KQ5 CD to use the newer kSetCursor version
...
svn-id: r40120
2009-04-24 16:47:56 +00:00
Walter van Niftrik
d7180316dd
SCI: Fix sci_max_allowed_unknown_kernel_functions[], it was missing an entry.
...
svn-id: r40118
2009-04-24 15:13:04 +00:00
Walter van Niftrik
db8b3cef61
SCI: Fix signature of kPalette().
...
svn-id: r40117
2009-04-24 14:50:01 +00:00
Max Horn
6f60e0dd48
SCI: Turned GfxWidget::draw function pointer into virtual method
...
svn-id: r40115
2009-04-24 14:22:14 +00:00
Max Horn
bd9a44969f
SCI: Turned GfxWidget::tag function pointer into virtual method
...
svn-id: r40114
2009-04-24 14:21:16 +00:00
Max Horn
dadae13545
SCI: Turned GfxWidget::print function pointer into virtual method
...
svn-id: r40113
2009-04-24 14:20:31 +00:00
Walter van Niftrik
c0805599ca
SCI: Fixed mouse cursor hotspots in ECO1.
...
svn-id: r40110
2009-04-24 12:30:57 +00:00
Max Horn
6343b2eee0
SCI: Changed GfxWidget::set_visual function pointer to virtual method setVisual
...
svn-id: r40108
2009-04-24 10:48:51 +00:00
Max Horn
ebcfd9b016
SCI: Got rid of GFXW() macro; turned GfxWidget::widfree into destructors
...
svn-id: r40107
2009-04-24 10:48:25 +00:00
Max Horn
80794a6b5a
SCI: font_nr -> _font
...
svn-id: r40106
2009-04-24 10:47:38 +00:00
Max Horn
22a803cc69
SCI: Rewrote the port_refs code (fixing at least three serious bugs in it. Wow, crappy)
...
svn-id: r40105
2009-04-24 10:46:46 +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
Max Horn
86b3657476
SCI: Started to C++ify the gfxw_widget_t codebase
...
svn-id: r40103
2009-04-24 10:45:09 +00:00
Max Horn
eb0710c2cd
SCI: Some const corrections, removed dead stuff, cleanup
...
svn-id: r40101
2009-04-24 10:43:42 +00:00
Max Horn
486f10edaf
SCI: Store parse_tree_branch_t in a Common::Arraay
...
svn-id: r40100
2009-04-24 10:42:53 +00:00
Filippos Karapetis
f2bd65339c
Changed the "Intersections" opcode to "MoveCursor", after verifying it with Greg's SCI implementation and discussing it with waltervn. Also, the cursor hotspot is now fixed for Eco Quest 1 and probably SCI11 games as well (e.g. the game menu in KQ6 is now working)
...
svn-id: r40096
2009-04-23 21:06:34 +00:00
Filippos Karapetis
78f892f87c
The mouse cursor is now working in Eco Quest 1, though the hotspot is still wrong. Many thanks to waltervn for his findings on this.
...
svn-id: r40095
2009-04-23 20:37:41 +00:00
Filippos Karapetis
001699becb
Removed a FIXME concerning CanBeHere and CantBeHere and added an explanation. Also, removed some unused code.
...
svn-id: r40094
2009-04-23 19:11:01 +00:00
Filippos Karapetis
efc28c1be6
Fixed the GetMessage kernel opcode. Eco Quest 1 text is showing up correctly now
...
svn-id: r40093
2009-04-23 18:46:41 +00:00
Filippos Karapetis
bd2c2b0e50
WIP code for kGetMessage (tested with Eco Quest 1). Currently, it doesn't always work for some reason...
...
svn-id: r40092
2009-04-23 18:17:35 +00:00
Max Horn
3774b9cd0c
SCI: Slim down struct SciKernelFunction
...
svn-id: r40081
2009-04-22 17:54:30 +00:00
Max Horn
3af8918e1a
SCI: Changed kfunct_table to a Common::Array
...
svn-id: r40080
2009-04-22 17:54:11 +00:00
Max Horn
b1e43f3ca0
SCI: Changed knames (kernel function name table) to Common::StringList
...
svn-id: r40078
2009-04-22 17:53:29 +00:00
Filippos Karapetis
3c58066206
- Fixed some of the GUI graphical glitches in SCI1 games (e.g. the inventory screen in several SCI1 games and the menus in PQ3). It's still not right, but it's better than nothing
...
- Removed the confusing ADD_TO_CURRENT_BG_WIDGETS and ADD_TO_CURRENT_FG_WIDGETS defines, which had the same functionality
svn-id: r40058
2009-04-21 21:37:03 +00:00
Filippos Karapetis
20cc4f3dd7
Restored the ability to change the active port bound, by moving it inside gfx_state_t (it makes much more sense for it to be there, instead of inside user-defined settings). Placed notes inside gfxr_draw_pic01() and gfxr_draw_pic11() for the usage of the current titlebar size in there
...
svn-id: r40057
2009-04-21 19:57:11 +00:00
Max Horn
5325f9b76e
SCI: Renamed global array 'formats' to the slightly more descriptive g_opcode_formats
...
svn-id: r40031
2009-04-20 19:28:33 +00:00
Max Horn
d567482818
SCI: Moved list of kernel func declarations to header file, where it belongs
...
svn-id: r40030
2009-04-20 19:28:08 +00:00
Willem Jan Palenstijn
812c745235
Disable MSVC warning in autogenerated code
...
svn-id: r40005
2009-04-18 22:56:08 +00:00
Willem Jan Palenstijn
e1c82543fc
Retreive -> retrieve
...
svn-id: r39996
2009-04-18 21:18:30 +00:00
Max Horn
57f367acb5
SCI: Renamed bp_flag -> breakpointFlag; replaced global send_calls_allocated & send_calls vars by a local Common::Stack instance
...
svn-id: r39930
2009-04-11 09:58:30 +00:00
Max Horn
fadd224285
SCI: Clarify hack in kgraphics.cpp based on what lars wrote on scummvm-devel
...
svn-id: r39905
2009-04-09 08:49:42 +00:00
Walter van Niftrik
81f7c8b746
SCI: Swapped x and y parameters of IsItSkip. Added IsItSkip to kernel table.
...
svn-id: r39894
2009-04-07 17:26:42 +00:00
Filippos Karapetis
fe1584c140
Fixed an issue with the password screen in LSL5 and kStrAt(). The game password, saved in file memory.drv (which can either exist in the game directory, or is created in the saves folder by ScummVM) is now working correctly, and the game can be started. Note that it's NOT currently possible not to set a password (you'll get the password screen anyway the next time, and it won't work).
...
svn-id: r39876
2009-04-06 17:13:07 +00:00
Max Horn
52c5b7547c
SCI: Made said_parse_spec static, regenerated said.cpp from said.y
...
svn-id: r39870
2009-04-06 10:25:27 +00:00
Walter van Niftrik
197c2bbb99
SCI: Replaced AATree by Common::List in AvoidPath. AATree does not help when
...
the input size is this small.
svn-id: r39855
2009-04-05 00:06:22 +00:00
Filippos Karapetis
e03eb7d4ce
Removed leftover chrono-related code (refer to commit #37721 for the changes to kgraphics.cpp)
...
svn-id: r39820
2009-04-03 22:48:55 +00:00
Filippos Karapetis
c3dc501f23
Removed the non-working Chrono port code, after discussing with Lars
...
svn-id: r39819
2009-04-03 22:03:06 +00:00
Max Horn
cf3265a1c9
SCI: Fix warning on OSX
...
svn-id: r39810
2009-04-03 14:53:56 +00:00
Filippos Karapetis
c92210296e
Some more FreeSCI <-> SCI changes
...
svn-id: r39808
2009-04-03 08:23:02 +00:00
Filippos Karapetis
c4e054848e
Changed some references from "FreeSCI" to "SCI" or "ScummVM"
...
svn-id: r39807
2009-04-03 08:10:58 +00:00
Filippos Karapetis
8ae0ed1706
Applied fingolfin's suggestion to remove the roundf() implementation and make the code in that bit simpler and more readable (since points are always positive)
...
svn-id: r39802
2009-04-02 19:37:56 +00:00
Filippos Karapetis
44443badc5
Disable some (quite chatty) debug output - the savegme system looks stable enough
...
svn-id: r39801
2009-04-02 16:54:21 +00:00
Filippos Karapetis
6fe12a0888
pic_port_bounds was only set from command-line parameters it seems, so it's safe to put it together with the rest of the options
...
svn-id: r39800
2009-04-02 16:38:33 +00:00
Filippos Karapetis
9180f3a9a1
Fixed compilation under MSVC by implementing roundf()
...
svn-id: r39799
2009-04-02 16:30:42 +00:00
Walter van Niftrik
88ec6f407c
SCI: AvoidPath cleanup.
...
svn-id: r39798
2009-04-02 15:28:34 +00:00
Walter van Niftrik
3dc820796d
SCI: Avoidpath cleanup.
...
svn-id: r39797
2009-04-02 00:04:20 +00:00
Filippos Karapetis
1e8bd16c1e
- Wrapped all the code for custom graphics options around a CUSTOM_GRAPHICS_OPTIONS define. Most of these options don't work in 256-color mode, plus there is currently no way to actually set/change them somehow (other than modifying the code)
...
- Added a FIXME for the abuse of the pic_port_bounds graphics option - it's actually set by the game itself in kSetPort()
- Added some test code for setting palette intensity in KPalette() (currently disabled)
svn-id: r39794
2009-04-01 20:32:45 +00:00
Filippos Karapetis
f7748cfefc
Disabled some unused code
...
svn-id: r39765
2009-03-30 14:06:07 +00:00
Filippos Karapetis
e130aecc4f
Wrapped all the still WIP SCI32-specific code around appropriate ifdef blocks. SCI32 has fundamental differences from previous SCI versions (e.g. direct point addressing is no longer possible), most of SCI32 games use SVGA resolutions and currently a lot of SCI32 specific code is missing (like, for example, the newer string and array handling functions, the widget system etc). This has been done in the same manner as in the SCUMM and SAGA engines.
...
svn-id: r39750
2009-03-30 07:53:32 +00:00
Willem Jan Palenstijn
968856780b
SCI: Merge static palette into global palette at startup
...
svn-id: r39747
2009-03-29 21:46:49 +00:00
Filippos Karapetis
661644f3c1
Added stubs for the missing palette effects in kPalette()
...
svn-id: r39744
2009-03-29 15:08:50 +00:00
Filippos Karapetis
fbc76a89e1
Added a stub for the palette fadeout/fadein effect, so that we remember it's currently missing
...
svn-id: r39743
2009-03-29 14:47:57 +00:00
Filippos Karapetis
d883cb209e
Fixed the colors of the widgets in KQ5's options menu
...
svn-id: r39737
2009-03-29 12:28:24 +00:00
Filippos Karapetis
09d96e24f9
Fixed the colors of the window frames in KQ5
...
svn-id: r39734
2009-03-29 11:56:32 +00:00
Filippos Karapetis
cda1bf5ca9
Eco Quest 1 continues after the intro now
...
svn-id: r39731
2009-03-29 01:56:03 +00:00
Walter van Niftrik
e860473d80
SCI: AvoidPath workaround for intersecting polygons in Longbow, room 210.
...
svn-id: r39714
2009-03-27 23:01:13 +00:00
Filippos Karapetis
d75959c354
Added a note about the potential invalid rectangles created when drawing lines
...
svn-id: r39704
2009-03-26 21:52:04 +00:00
Filippos Karapetis
4723f80fe2
Merged sciw_select_item() and sciw_unselect_item()
...
svn-id: r39689
2009-03-25 16:37:50 +00:00
Filippos Karapetis
34d75e455b
- Renamed gfx/sci_widgets.* to gfx/gfx_gui.*, as these files contain GUI elements mostly, like windows and status bars
...
- Moved kWindowAutoRestore from gfx_widgets.h to gfx_gui.h
svn-id: r39687
2009-03-25 12:52:03 +00:00
Filippos Karapetis
006b2d62af
Changed some flags to enums
...
svn-id: r39685
2009-03-25 12:07:10 +00:00
Joost Peters
67201f6a71
revert yesterday's change -- apparently this different behavior was intentional.
...
svn-id: r39683
2009-03-25 10:04:45 +00:00
Walter van Niftrik
42d67b4a3a
SCI: AvoidPath cleanup.
...
svn-id: r39680
2009-03-25 00:33:31 +00:00
Walter van Niftrik
b85b6929bd
SCI: build fix.
...
svn-id: r39675
2009-03-24 21:18:06 +00:00
Walter van Niftrik
e8b38af014
SCI: Added workaround for broken polygon in LSL1 room 350.
...
svn-id: r39674
2009-03-24 21:03:50 +00:00
Joost Peters
fc9e5b6beb
Fix smaller error introduced in r39671 refactoring (this check used to be "res == 0").
...
Thanks to syke for spotting it.
svn-id: r39673
2009-03-24 19:56:41 +00:00
Max Horn
1e94b9cd3c
SCI: Rewrote vocabulary code to use a Common::HashMap<String,ResultWord>
...
svn-id: r39671
2009-03-24 17:42:12 +00:00
Max Horn
65b96f6a1b
SCI: Changed vocab_tokenize_string to not 'return' the list it generates, but rather pass a reference to an existing list to it (this is a bit more efficient, and allows us to return an error value)
...
svn-id: r39670
2009-03-24 17:41:46 +00:00
Max Horn
d38590e6d4
SCI: Turned synonyms list into a Common::List
...
svn-id: r39669
2009-03-24 17:41:26 +00:00
Walter van Niftrik
3e2c1a39e2
SCI: Added workaround for duplicate polygons being passed to kAvoidPath.
...
svn-id: r39668
2009-03-24 15:17:25 +00:00
Max Horn
b76f7fea4e
SCI: Changed some char* into Common::String
...
svn-id: r39663
2009-03-24 12:46:48 +00:00
Max Horn
33895c0220
SCI: Only pass the pointerpos to Menubar::mapPointer, not the full gfx_state_t
...
svn-id: r39662
2009-03-24 12:14:41 +00:00
Max Horn
9ea32d4aa1
SCI: C++ify menu code
...
svn-id: r39659
2009-03-24 11:31:16 +00:00
Filippos Karapetis
3b5a14916d
Cleanup
...
svn-id: r39633
2009-03-23 14:24:10 +00:00
Walter van Niftrik
ca993d8b00
SCI: some avoidpath cleanup
...
svn-id: r39630
2009-03-23 11:10:16 +00:00
Filippos Karapetis
a6f49a636b
- Moved palette initialization inside the graphics resource manager
...
- The static palette is no longer needlessly referenced directly outside the graphics resource manager
- Moved the SCI interpreter version inside the graphics resource manager, instead of gfx_state_t
svn-id: r39626
2009-03-23 08:43:53 +00:00
Filippos Karapetis
e3f9acc3e6
Further objectification of the graphics resource manager
...
svn-id: r39621
2009-03-22 23:11:43 +00:00
Max Horn
2463b148a9
SCI: Renamed Vertex::entries::cle_next -> Vertex::_next, analog for cle_prev. Replace code for reversing a circular list by a new method CircularVertexList::reverse()
...
svn-id: r39613
2009-03-22 18:27:39 +00:00
Max Horn
09ecda7ca4
SCI: Some cleanup; avoid taking square root unnecessarily
...
svn-id: r39612
2009-03-22 18:27:08 +00:00
Max Horn
734e9dd377
SCI: Fix warnings
...
svn-id: r39606
2009-03-22 13:50:37 +00:00
Max Horn
7245fce099
SCI: cleanup
...
svn-id: r39578
2009-03-20 23:02:20 +00:00
Max Horn
ed292fb498
silenced some warnings
...
svn-id: r39566
2009-03-20 13:30:10 +00:00
Walter van Niftrik
a45ed16fc4
SCI: converted aatree into a class
...
svn-id: r39544
2009-03-19 22:47:30 +00:00
Filippos Karapetis
723bc879f8
Changed abs_rect_t to Common::Rect
...
svn-id: r39518
2009-03-18 16:43:12 +00:00
Filippos Karapetis
e546c60948
Further objectification of the graphics resource manager
...
svn-id: r39499
2009-03-17 23:30:57 +00:00
Filippos Karapetis
063ce3938d
Started objectifying the graphics resource manager (refer to patch #2689887 )
...
svn-id: r39492
2009-03-17 21:08:33 +00:00
Max Horn
95c58e76d6
SCI: Added TODO: Merge SegInterface and MemObject? And some cleanup
...
svn-id: r39485
2009-03-17 16:08:25 +00:00
Max Horn
3c23ba7d73
SCI: Got rid of various SegManager::free_* methods
...
svn-id: r39484
2009-03-17 16:07:58 +00:00
Filippos Karapetis
80c243e5ca
Renamed some defines:
...
- FREESCI_CURRENT_SAVEGAME_VERSION, FREESCI_MINIMUM_SAVEGAME_VERSION -> CURRENT_SAVEGAME_VERSION, MINIMUM_SAVEGAME_VERSION (saved games are not compatible with FreeSCI's ones anymore)
- _K_VIEW_SIG_FLAG_FREESCI_STOPUPD -> _K_VIEW_SIG_FLAG_STOPUPD (like the rest of the flags)
- Removed FREESCI_KFUNCT_GLUTTON (unused)
svn-id: r39478
2009-03-17 08:03:42 +00:00