Commit Graph

19539 Commits

Author SHA1 Message Date
Bastien Bouclet
bf82f16982 MOHAWK: Implement Myst opcodes 141 to 143, circuit breakers
svn-id: r54741
2010-12-02 21:16:39 +00:00
Bastien Bouclet
a9388af996 MOHAWK: Fix resource type 12
svn-id: r54740
2010-12-02 21:15:47 +00:00
Johannes Schickel
c14399c229 SCI: Slight formatting fix.
svn-id: r54737
2010-12-02 17:03:21 +00:00
Filippos Karapetis
4fe03f1b66 SCI: Enabled the GUI option to play speech and show subtitles simultaneously in SQ4CD
svn-id: r54736
2010-12-02 13:37:39 +00:00
Lars Skovlund
0ac28d1fbf Disable error message regarding RESOURCE.AUD/.SFX for now.
svn-id: r54735
2010-12-02 13:29:49 +00:00
Matthew Hoops
41ad4a431d MOHAWK: Stub off various Myst opcodes
svn-id: r54731
2010-12-02 04:01:07 +00:00
Max Horn
31d2d2af4c SCUMM: Workaround for bug #1447058, a race condition in the game scripts
svn-id: r54730
2010-12-02 00:27:46 +00:00
Max Horn
e85d196f33 SCUMM: Fix bug in V12 games causing chars to be lost when wrapping talk text
svn-id: r54729
2010-12-02 00:27:26 +00:00
Johannes Schickel
b36b7ee349 SCUMM: Fix GM initialization when "enable_gs" is set.
This is a regression from r25630, which caused the code to send some garbage
data to the GS device, which resulted in some devices to fail with an
"Address Error." (like the Roland SC-55).

This might also fix bug #1927501 "GS option is broken". Even though actually
the device there failed with another error it is likely to be caused by the
same code. At least it is the only iMuse MIDI code change between 0.9.0 and
0.12.0, which might result in such a problem.

svn-id: r54727
2010-12-01 23:55:10 +00:00
David Turner
349ebe94f1 HUGO: Add Missing shutdown() Call - Currently Disabled.
The engine shutdown() function is required to be called to clean up a number of allocated memory blocks. Unfortunately, this currently causes double free issues. This call is added, but commented out with a FIXME explaining this.

svn-id: r54726
2010-12-01 23:15:28 +00:00
Arnaud Boutonné
a029f6a5c4 GOB: Add back 3 empty lines used by DrMcCoy
svn-id: r54724
2010-12-01 21:08:47 +00:00
Matthew Hoops
bdc3742ced MOHAWK: Split makingof and preview opcodes into their own class (and now all are separate)
svn-id: r54723
2010-12-01 21:05:08 +00:00
Bastien Bouclet
f3bda71376 MOHAWK: Implement maze runner backtrack button. Last part of Selenitic completed !
svn-id: r54720
2010-12-01 20:37:36 +00:00
Arnaud Boutonné
250d5d81f7 GOB: little clean-up
Remove a useless include of cursorman.h and several 
superflous empty lines.

svn-id: r54718
2010-12-01 20:17:31 +00:00
Arnaud Boutonné
85d42c405d HUGO: Use cursorman, add a windows-looking cursor
Cursor copied from Mohawk engine, thanks clone2727

svn-id: r54717
2010-12-01 20:11:24 +00:00
Jordi Vilalta Prat
d5a4f554af ALL: Fix a few typos
svn-id: r54716
2010-12-01 20:03:05 +00:00
Alyssa Milburn
1cb199229a MOHAWK: add stub implementations for more LB script opcodes
svn-id: r54712
2010-12-01 18:22:36 +00:00
Alyssa Milburn
1b27de3829 MOHAWK: fix LBPaletteItem
svn-id: r54711
2010-12-01 18:22:21 +00:00
Alyssa Milburn
a62500db1e MOHAWK: document/handle more LB item data
svn-id: r54710
2010-12-01 18:22:05 +00:00
Alyssa Milburn
4e3233fdba MOHAWK: fix LBLiveTextItem drawing for LB 2+
svn-id: r54709
2010-12-01 18:21:49 +00:00
Alyssa Milburn
3471d8ee45 MOHAWK: rename DelayedEventType values
svn-id: r54708
2010-12-01 18:21:33 +00:00
Alyssa Milburn
ddd691e2d3 MOHAWK: add LBGraphics::copyImageSectionToScreen
svn-id: r54707
2010-12-01 18:21:17 +00:00
Matthew Hoops
77782f4eb3 MOHAWK: Split intro and demo opcodes into their own classes
svn-id: r54706
2010-12-01 17:56:36 +00:00
Matthew Hoops
81209867a2 MOHAWK: Split the demo slideshow opcodes into their own class
svn-id: r54705
2010-12-01 15:24:54 +00:00
Matthew Hoops
65a7d28e21 MOHAWK: Rename the Myst stack/card link maps
svn-id: r54702
2010-12-01 14:57:05 +00:00
Matthew Hoops
26f27d9983 MOHAWK: Split d'ni opcodes into their own class
svn-id: r54699
2010-12-01 14:46:59 +00:00
Matthew Hoops
13c1540522 MOHAWK: Downgrade the Myst unknown op error to a warning as new ones have been uncovered
svn-id: r54694
2010-12-01 03:39:47 +00:00
Matthew Hoops
bdc3e5c353 MOHAWK: Cleanup Myst opcode handling and reduce code duplication
svn-id: r54693
2010-12-01 03:30:00 +00:00
Matthew Hoops
b9cfb52927 MOHAWK: Split mechanical opcodes into their own class
svn-id: r54692
2010-12-01 02:45:31 +00:00
Matthew Hoops
261cf23901 MOHAWK: Split channelwood opcodes into their own class
svn-id: r54691
2010-12-01 02:11:11 +00:00
Filippos Karapetis
94801fcea3 SCI: Fixed bugs #3041044, #3046543 and #3046513
svn-id: r54690
2010-12-01 00:40:52 +00:00
Matthew Hoops
e4fa2855b6 MOHAWK: Split out stoneship opcodes into their own class
svn-id: r54689
2010-11-30 22:02:03 +00:00
Alyssa Milburn
90b61c0bd4 MOHAWK: add changePage Living Books debug command
svn-id: r54688
2010-11-30 21:06:40 +00:00
Alyssa Milburn
26b372cfd2 MOHAWK: add tryDefaultPage/tryPageStart/prevPage helpers
svn-id: r54687
2010-11-30 21:05:45 +00:00
Bastien Bouclet
9fddad6faf MOHAWK: Set the maze runner initial direction. Remove a hack that is not needed anymore thanks to keeping the old stack when changing stack.
svn-id: r54686
2010-11-30 20:25:21 +00:00
Arnaud Boutonné
af79de331e HUGO: Fix palette issue after restoring a game in H3
svn-id: r54685
2010-11-30 20:15:02 +00:00
David Turner
3c55c9faf7 MOHAWK: Fix for Valgrind uninit reads in Myst Script Parser.
svn-id: r54683
2010-11-30 17:55:41 +00:00
Matthew Hoops
6b79f5ffe9 MOHAWK: Have the Myst book appear in the intro again
svn-id: r54682
2010-11-30 16:54:03 +00:00
Alyssa Milburn
6041fe117d MOHAWK: some LBSoundItem fixes
svn-id: r54680
2010-11-30 15:35:22 +00:00
Matthew Hoops
b065e94d2c MOHAWK: One last getRawData() to getResource() rename
svn-id: r54679
2010-11-30 15:07:00 +00:00
Matthew Hoops
f82478d4c0 MOHAWK: Fix the Myst fireplace
svn-id: r54678
2010-11-30 15:03:31 +00:00
Matthew Hoops
48c209f2da MOHAWK: Split Myst credits code into a separate class
svn-id: r54677
2010-11-30 15:01:26 +00:00
Matthew Hoops
c6a9cef9fb MOHAWK: Fix changing the stack via an opcode
svn-id: r54676
2010-11-30 14:45:31 +00:00
Alyssa Milburn
868e39c29a MOHAWK: fix LB playback seek behaviour
svn-id: r54675
2010-11-30 14:41:27 +00:00
Alyssa Milburn
8009a86c29 MOHAWK: tidy up LBLiveTextItem code
svn-id: r54674
2010-11-30 14:41:09 +00:00
Alyssa Milburn
e04c0182cd MOHAWK: fix LBAnimation start/seek behaviour
svn-id: r54673
2010-11-30 14:40:51 +00:00
Matthew Hoops
77cec92258 MOHAWK: Remove leftover Selenitic code from the Myst stack
svn-id: r54672
2010-11-30 14:17:59 +00:00
Scott Thomas
348f2d01c8 MOHAWK: Fill in missing detector details (as per FIXME)
svn-id: r54671
2010-11-30 12:45:26 +00:00
Alyssa Milburn
c34410d49d MOHAWK: don't include livingbooks.h from graphics.h
svn-id: r54670
2010-11-30 09:04:47 +00:00
Travis Howell
5132cf51e3 Fix bug #3093750 - FT: Truck and Aircraft computer text missing (regression).
svn-id: r54665
2010-11-30 07:57:42 +00:00
David Turner
7aca10bf9a HUGO: Close Memory Leak in PlayMusic() Function.
svn-id: r54664
2010-11-30 01:49:00 +00:00
Filippos Karapetis
b837366871 SCI: Added an uninitialized read script workaround for QFG1VGA
svn-id: r54663
2010-11-30 00:27:36 +00:00
Filippos Karapetis
6c73f8266e SCI: Fixed bug #3053093 - "QFG1VGA and QFG3: Text box glitches"
svn-id: r54662
2010-11-30 00:26:00 +00:00
Alyssa Milburn
39532b0eca MOHAWK: don't try reading non-existent messages
svn-id: r54661
2010-11-30 00:11:15 +00:00
Alyssa Milburn
99264d47c3 MOHAWK: silence harmless case of a LB warning
svn-id: r54660
2010-11-30 00:03:35 +00:00
David Turner
27a3173d93 HUGO: Close Two Memory Leaks.
Note that the first leak is the allocation of the Common::RandomSource, _rnd. I'm not sure of the effect of deallocating this while it is still registered to g_eventRec, but all other engines seem to be the same (or implicitly do this by making a Common::RandomSource member of the engine object) so this is not a engine specific issue, but should be assessed.

svn-id: r54659
2010-11-30 00:01:54 +00:00
Arnaud Boutonné
1fbd80b1e3 HUGO: Fix save/load screens, which were always showing slot0 info
svn-id: r54658
2010-11-29 23:57:15 +00:00
Alyssa Milburn
2c824e3311 MOHAWK: implement hardcoded Living Books 1.0 code
svn-id: r54657
2010-11-29 23:36:49 +00:00
Alyssa Milburn
92d5277816 MOHAWK: implement hard-coded LB language/options GUI
svn-id: r54656
2010-11-29 23:19:59 +00:00
Alyssa Milburn
12c84f21a3 MOHAWK: don't start animations in LBAnimation::seek
svn-id: r54655
2010-11-29 23:19:43 +00:00
Filippos Karapetis
59604fa014 MOHAWK: Silence warnings
svn-id: r54654
2010-11-29 23:14:04 +00:00
Arnaud Boutonné
66ba82a451 HUGO: Fix assert in H3 Win when displaying the elephant and the plane
svn-id: r54653
2010-11-29 22:31:57 +00:00
Alyssa Milburn
b1b7ffa1f2 MOHAWK: move GF_NO_READONLY check to after actual page load
svn-id: r54652
2010-11-29 21:42:37 +00:00
Alyssa Milburn
790bba6c27 MOHAWK: implement more of LBLiveTextItem
svn-id: r54651
2010-11-29 21:42:00 +00:00
Alyssa Milburn
28ffa2fb87 MOHAWK: read command messages, so LB doesn't just error out
svn-id: r54650
2010-11-29 21:41:21 +00:00
Matthew Hoops
2bd16f9e84 MOHAWK: Move Myst stack-specific code to its own directory
svn-id: r54648
2010-11-29 21:34:59 +00:00
Matthew Hoops
d3c78b8a3d MOHAWK: Don't store the sound name in SndHandle
svn-id: r54647
2010-11-29 21:18:20 +00:00
Johannes Schickel
0b028de573 MOHAWK: Remove superfluous junk (no not Mohawk itself).
svn-id: r54646
2010-11-29 21:14:20 +00:00
Bastien Bouclet
efc6ff54a3 MOHAWK: Misc cleanups
svn-id: r54645
2010-11-29 21:03:02 +00:00
Bastien Bouclet
29359ee372 MOHAWK: Set the initial stack back to the intro
svn-id: r54644
2010-11-29 21:02:39 +00:00
Bastien Bouclet
278b8a1429 MOHAWK: Play videos when the maze runner moves.
svn-id: r54643
2010-11-29 21:02:25 +00:00
Bastien Bouclet
a526bdb839 MOHAWK: Add Selenitic opcode 101, maze runner sound help.
svn-id: r54642
2010-11-29 21:02:11 +00:00
Bastien Bouclet
1b50b62157 MOHAWK: Minimal implementation of the maze runner. Selenitic is now completable.
svn-id: r54641
2010-11-29 21:01:57 +00:00
Bastien Bouclet
69ff712a48 MOHAWK: Implement Selenitic maze runner init opcodes 200, 201, 202, 205, 206
svn-id: r54640
2010-11-29 21:01:43 +00:00
Bastien Bouclet
c393f8f9d2 MOHAWK: Implement retrieving the invoking resource from data for init and exit scripts.
svn-id: r54639
2010-11-29 21:01:30 +00:00
Bastien Bouclet
3bd40b0d4b MOHAWK: Implement selenitic opcode 110 used for the maze runner exit logic.
svn-id: r54638
2010-11-29 21:01:15 +00:00
Bastien Bouclet
7ee7b91157 MOHAWK: Complete the list of stack / start cards.
Fix linking back from another age.

svn-id: r54637
2010-11-29 21:01:02 +00:00
Bastien Bouclet
f8026bf852 MOHAWK: Preinitialise saved card id for use when linking back to Myst from an other age.
svn-id: r54636
2010-11-29 21:00:49 +00:00
Bastien Bouclet
836aab9968 MOHAWK: Fix drawing the last step of an animated update
svn-id: r54635
2010-11-29 21:00:37 +00:00
Bastien Bouclet
7ea90ddf19 MOHAWK: Create constants for remaining Myst resource types
svn-id: r54634
2010-11-29 21:00:23 +00:00
Bastien Bouclet
149eed5c32 MOHAWK: Persistent scripts cleanup
- Rename InitOpcodes / PersistentOpcodes to Persistent Scripts for consistency
- Get rid of the global var used to tell if the sound receiver script is running

svn-id: r54633
2010-11-29 21:00:05 +00:00
Bastien Bouclet
bfd272a46e MOHAWK: Add a generic temp var for use by Myst scripts.
svn-id: r54632
2010-11-29 20:59:44 +00:00
Bastien Bouclet
056ebd43d4 MOHAWK: Complete drawing the animated rect if running the animation steps didn't draw the whole rect.
svn-id: r54631
2010-11-29 20:59:30 +00:00
Bastien Bouclet
ed59b28d0b MOHAWK: Do not always update the screen after a card change. Necessary for "animated card changes" to work.
svn-id: r54630
2010-11-29 20:59:17 +00:00
Bastien Bouclet
fcc1dd6749 MOHAWK: Implement 4 types of animated updates for Myst
svn-id: r54629
2010-11-29 20:58:58 +00:00
Bastien Bouclet
f8a4190e75 MOHAWK: More animated update opcodes work for Myst
svn-id: r54628
2010-11-29 20:58:45 +00:00
Bastien Bouclet
b49cb3b35a MOHAWK: Start implementing opcodes using the animated update feature
svn-id: r54627
2010-11-29 20:58:28 +00:00
Bastien Bouclet
90b336ec34 MOHAWK: Changed sliders to restore the main background instead of doing their own background caching. It is possible now there is the image cache.
svn-id: r54626
2010-11-29 20:58:10 +00:00
Bastien Bouclet
a9617cbe28 MOHAWK: Added dirty rects support for Myst
svn-id: r54625
2010-11-29 20:57:54 +00:00
Bastien Bouclet
2ac1fdad32 Revert "MOHAWK: Revert the screen cache since it has a huge performance hit, and is not needed as is."
This reverts commit 291bea1858.

svn-id: r54624
2010-11-29 20:57:41 +00:00
Bastien Bouclet
359cece3b7 MOHAWK: Implement opcode 3 "take / drop page", and the corresponding getters and setters for selenitic
svn-id: r54623
2010-11-29 20:57:27 +00:00
Bastien Bouclet
d3289529eb MOHAWK: Fix flag values used to dertermine if an area can become active.
svn-id: r54622
2010-11-29 20:57:11 +00:00
Bastien Bouclet
3b1440b0d4 MOHAWK: Implement / fix Myst opcode 4.
svn-id: r54621
2010-11-29 20:56:56 +00:00
Bastien Bouclet
92dc0fe5b5 MOHAWK: Only draw a resource conditional subimages if it has the "subimages enabled" flag set.
svn-id: r54620
2010-11-29 20:56:39 +00:00
Bastien Bouclet
0cff3be66f MOHAWK: More Myst common opcodes checking / renaming
svn-id: r54619
2010-11-29 20:56:21 +00:00
Bastien Bouclet
c7e488c201 MOHAWK: Rename and fix / explain a few Myst opcodes
svn-id: r54618
2010-11-29 20:56:04 +00:00
Bastien Bouclet
fa7ec5ae4c MOHAWK: Describe Myst opcode 9
svn-id: r54617
2010-11-29 20:55:50 +00:00
Bastien Bouclet
34981c61b6 MOHAWK: Fix Myst opcode 14
svn-id: r54616
2010-11-29 20:55:31 +00:00
Bastien Bouclet
92d74fa56d MOHAWK: Disabled hotspots are now unclickable areas. Display blue rects for unreachable zip destinations when drawing resource rects.
svn-id: r54615
2010-11-29 20:55:11 +00:00
Bastien Bouclet
0ac6af59d1 MOHAWK: Check / Fixed / Renamed some simple opcodes.
svn-id: r54614
2010-11-29 20:54:52 +00:00
Bastien Bouclet
18e1f4a8c3 MOHAWK: Added helpher functions to redraw a resource. Do not redraw all the resources on mouse up.
svn-id: r54613
2010-11-29 20:54:36 +00:00
Bastien Bouclet
d8b5319f15 MOHAWK: Fixed some warnings
svn-id: r54612
2010-11-29 20:54:23 +00:00
Bastien Bouclet
95e97094fb MOHAWK: Completed the sound lock puzzle
svn-id: r54611
2010-11-29 20:54:11 +00:00
Bastien Bouclet
00e13f4c25 MOHAWK : Implemented selenitic sound lock slider opcodes and adjusted sliders behaviour.
svn-id: r54610
2010-11-29 20:53:56 +00:00
Bastien Bouclet
462a150b8a MOHAWK: Implement value setters for the selenitic sound lock sliders
svn-id: r54609
2010-11-29 20:53:38 +00:00
Bastien Bouclet
c832151fa5 MOHAWK: Implement slider value setting
svn-id: r54608
2010-11-29 20:53:26 +00:00
Bastien Bouclet
8da42b4221 MOHAWK: Don't change current resource when dragging
svn-id: r54607
2010-11-29 20:53:14 +00:00
Bastien Bouclet
b4913548d0 MOHAWK: Implement sliders
svn-id: r54606
2010-11-29 20:53:00 +00:00
Bastien Bouclet
291bea1858 MOHAWK: Revert the screen cache since it has a huge performance hit, and is not needed as is.
svn-id: r54605
2010-11-29 20:52:46 +00:00
Bastien Bouclet
e26fb921e9 MOHAWK; Post rebase fixes :
- Restore invoking resource change
- Update the screen after drawing a conditional image

svn-id: r54604
2010-11-29 20:52:33 +00:00
Bastien Bouclet
200cafd40f MOHAWK: Start implementing type 10 areas
svn-id: r54603
2010-11-29 20:52:20 +00:00
Bastien Bouclet
fc504c72e8 MOHAWK: Update area type 11 position when the mouse moves
svn-id: r54602
2010-11-29 20:52:04 +00:00
Bastien Bouclet
dab856c33f MOHAWK: Fix selenitic sound receiver left button
svn-id: r54601
2010-11-29 20:51:48 +00:00
Bastien Bouclet
536c6b6ef4 MOHAWK: Rename some fields for type 11 areas
svn-id: r54600
2010-11-29 20:51:35 +00:00
Bastien Bouclet
a85346cb16 MOHAWK : Change areas inheritance to match the original
svn-id: r54599
2010-11-29 20:51:18 +00:00
Bastien Bouclet
2e984cf136 MOHAWK : Move area classes to their own file
svn-id: r54598
2010-11-29 20:51:04 +00:00
Bastien Bouclet
16afca4c3d MOHAWK: Add mouse move event for type 10 and 11 resources
svn-id: r54597
2010-11-29 20:50:40 +00:00
Bastien Bouclet
49ed251573 MOHAWK: Name selenitic opcodes, and implement opcode 204
svn-id: r54596
2010-11-29 20:50:25 +00:00
Bastien Bouclet
4e420ef6fc MOHAWK: Keep resource type around
svn-id: r54595
2010-11-29 20:50:11 +00:00
Bastien Bouclet
117f46a884 MOHAWK : Cleanup selenium opcodes
svn-id: r54594
2010-11-29 20:49:56 +00:00
Bastien Bouclet
6a4ff1a9b5 MOHAWK : Finished implementing Selenitic sound receiver
svn-id: r54593
2010-11-29 20:49:42 +00:00
Bastien Bouclet
5f8e6e3824 MOHAWK: Start splitting Myst scripts into one class per Stack.
svn-id: r54592
2010-11-29 20:49:14 +00:00
Arnaud Boutonné
fe806a1aba HUGO: Fix a remaining warning
svn-id: r54578
2010-11-29 18:03:05 +00:00
Arnaud Boutonné
b6f9407ec6 HUGO: Fix compilation
svn-id: r54577
2010-11-29 17:50:30 +00:00
Arnaud Boutonné
45f55128b1 HUGO: Add GMM save/load and RTL
svn-id: r54576
2010-11-29 17:42:08 +00:00
Matthew Hoops
cef8d20fb2 MOHAWK: Divide GType_LIVINGBOOKSV3 into V2 and V3
svn-id: r54570
2010-11-29 12:51:53 +00:00
Filippos Karapetis
fba6ee8af9 MADE: Fixed bug #3090034 - "RTZ: Keyboard unresponsive", by properly handling keyboard keys
svn-id: r54568
2010-11-29 10:20:45 +00:00
Matthew Hoops
6a456a0e0e MOHAWK: Set Maggie's Farmyard Adventure as an LB game
The game will start, but has many problems as it uses a later version of the LB code. Also, make sure we check for filename being empty to stop an assertion in the MacCursorManager.

svn-id: r54566
2010-11-29 06:35:50 +00:00
David Turner
207b9a25df MOHAWK: Add Detection Entry For "ABC By Dr Seuss" Living Book Game
svn-id: r54565
2010-11-29 01:34:56 +00:00
Max Horn
2cae2fc4d0 M4: Remove unnecessary reference to file.h
svn-id: r54563
2010-11-28 23:39:02 +00:00
Matthew Hoops
2d924afa9d MOHAWK: Add basic Living Books support (all credit goes to fuzzie!)
v1 and v3 (both Windows and Mac) are working, v1 support is in better shape.

svn-id: r54558
2010-11-28 22:55:15 +00:00
Max Horn
b3ba5f6ec5 SWORD25: Fix warning about uninitialized DijkstraNode::parentIter
svn-id: r54551
2010-11-28 21:33:27 +00:00
Max Horn
5d2b77899f SWORD25: Fix warning: deref type-punned pointer breaks strict-aliasing rules
svn-id: r54550
2010-11-28 21:33:02 +00:00
Torbjörn Andersson
6b8a3dba70 TOON: Attempt to fix crash when Bricabrac puts on his glasses
This was a regression in r54223, and it's the most direct fix I can
think of. The problem seems to be that sys_Cmd_Remove_Scene_Anim()
clears the character's _animationInstance while character::playAnim()
is waiting "for the character to be ready".

My fix was to treat _animationInstance NULL as another sign that the
wait is over, but maybe the real fix is for sys_Cmd_Remove_Scene_Anim()
to do more than just clear the variable, e.g. stop the script or
something like that?

svn-id: r54549
2010-11-28 20:53:57 +00:00
Thierry Crozat
16c73378b9 i18N: Add a few strings to translate in the SCUMM help dialog.
svn-id: r54547
2010-11-28 19:23:02 +00:00
Arnaud Boutonné
54b756e1ba HUGO: Modify or suppress some obsolete comments and warnings
svn-id: r54530
2010-11-28 16:38:01 +00:00
Filippos Karapetis
0b5f6d4c97 SCI: Fixed bug #3034471 - "SCI, Castlebrain/Amiga: Invisible text in word search"
Fixed some endianness issues in Amiga versions, thanks to wjp. Amiga
versions expect a BE VM, thus we adjust accordingly in the places
where memory is accessed directly (i.e. kStrAt, kMemory and all places
that set/get characters from memory)

svn-id: r54521
2010-11-28 14:57:56 +00:00
Arnaud Boutonné
5f7ac43a24 HUGO: Add F4/F5 keys to save/restoreGame
Currently, it only saves/restores slot #0, no selection
screen is displayed

svn-id: r54515
2010-11-27 23:09:19 +00:00
Matthew Hoops
3d4ca8e405 MOHAWK: Add an isPlaying() and stopSound(id) function to Sound (for LB and others)
svn-id: r54514
2010-11-27 21:36:04 +00:00
Filippos Karapetis
c76422412d SCI: Compensate for buggy KQ5CD saved games (before r54510)
svn-id: r54513
2010-11-27 18:46:12 +00:00
Filippos Karapetis
0312235f67 SCI: Removed bogus warning
svn-id: r54512
2010-11-27 18:27:02 +00:00
Filippos Karapetis
91e42bbcb9 SCI: Reverted changes to savegame.cpp made in r54510, as that still occurs
svn-id: r54511
2010-11-27 18:23:39 +00:00
Filippos Karapetis
3485d433c5 SCI: Fixed bug #3034713 - "ICEMAN Demo: Fails to find base object"
This could happen because objects in scripts can be in the wrong order.
Same thing happens in the French and German version of KQ5 (bug #3035396).
Removed the scriptObjRemove() method, which is in fact a hack.

svn-id: r54510
2010-11-27 18:08:47 +00:00
Filippos Karapetis
49afe9ccff SCI: Fix for bug #3119713 - "PQ2: song-specific reverb changes are ignored" (thanks to waltervn)
svn-id: r54509
2010-11-27 17:29:42 +00:00
Arnaud Boutonné
8b7c42f0b0 TOOLS: Fix 'Boat' bug in H1 Dos
H1 Dos is now completable

svn-id: r54507
2010-11-27 16:48:38 +00:00
Torbjörn Andersson
83206e20cb HUGO: Fix warning
svn-id: r54506
2010-11-27 08:27:13 +00:00
Arnaud Boutonné
b70aa0d419 HUGO: Add Win save/restore behavior to the Dos versions
(useful to debug the lake screen)

svn-id: r54505
2010-11-26 23:57:39 +00:00
Arnaud Boutonné
fd6157e778 HUGO: Avoid using 'short' in function definition
svn-id: r54504
2010-11-26 23:30:31 +00:00
Arnaud Boutonné
bab5aa433b HUGO: Get rid of initial savegame
svn-id: r54503
2010-11-26 23:17:16 +00:00
Arnaud Boutonné
a0cc07268d HUGO: Clean up Scheduler
svn-id: r54502
2010-11-26 22:15:31 +00:00
Matthew Hoops
73ee52c670 MOHAWK: Fix non-LZ compressed old Mohawk bitmaps (thanks, fuzzie)
svn-id: r54501
2010-11-26 15:06:35 +00:00
Walter van Niftrik
52b89206c0 SCI: Pull reverb default directly from control channel.
svn-id: r54499
2010-11-26 14:35:46 +00:00
Walter van Niftrik
3d38a383bb SCI: Only filter channels for early SCI0, as GM currently uses all channels.
svn-id: r54498
2010-11-26 14:35:28 +00:00
Matthew Hoops
21c6bbde5d MOHAWK: Fill in meanings of known resources
svn-id: r54497
2010-11-26 14:28:33 +00:00
Filippos Karapetis
5562f9e087 SCI: Added a define to turn off channel remapping (for debugging)
svn-id: r54496
2010-11-26 14:25:18 +00:00
Filippos Karapetis
d3b14e1445 SCI: Implemented FR #3101338: "King's Quest 6 Windows Mouse Icons"
Added an option to use the original Windows cursors in the Windows version of KQ6
Also, added an update on how the Mac cursors are handled (perhaps the handling is
the same)

svn-id: r54495
2010-11-26 12:37:24 +00:00
Filippos Karapetis
ce9f7c0df1 SCI: Fixed keyboard input when numlock is on, and cleaned up the way some special keys are translated
svn-id: r54493
2010-11-26 10:03:24 +00:00
Filippos Karapetis
1d4e452c78 SCI: Send the SCI0 reverb init after reading the reverb data
svn-id: r54492
2010-11-26 06:41:45 +00:00
Matthew Hoops
abe6baafb9 MOHAWK: Enable the drawImage debug command for all LB games
svn-id: r54491
2010-11-26 06:08:04 +00:00
Filippos Karapetis
e793d62c8d Fixed bug with r54485
svn-id: r54488
2010-11-26 00:10:51 +00:00
Filippos Karapetis
069309f88a SCI: set the reverb setting of the current song when a relevant event is fired from the MIDI stream
svn-id: r54485
2010-11-26 00:05:27 +00:00
Filippos Karapetis
af15ac6f6a SCI: Some reverb-related changes in the MIDI driver, based on a patch by waltervn
svn-id: r54484
2010-11-25 22:23:14 +00:00
Filippos Karapetis
3a8648c4db SCI: Initialize reverb in the music driver correctly. Based on a patch by waltervn
svn-id: r54483
2010-11-25 22:17:23 +00:00
Filippos Karapetis
11ac03b7ab SCI: Global reverb can't be 127. Some cleanup
svn-id: r54482
2010-11-25 22:16:22 +00:00
Filippos Karapetis
1cf26f67e0 SCI: Initialize global reverb correctly. Fixes bug #3118700 - "SCI KQ5: Assertion in midi.cpp" (regression from r54478)
svn-id: r54481
2010-11-25 22:14:38 +00:00
Filippos Karapetis
601494cad4 SCI: implemented reverb handling and related functionality
svn-id: r54478
2010-11-25 16:09:45 +00:00
Filippos Karapetis
16006c78f5 SCI: Fixed a bug in the show_instruments console command
svn-id: r54477
2010-11-25 15:59:30 +00:00
Filippos Karapetis
2c2f3a97e6 SCI: Added support for the alternate Windows MIDI soundtracks of the CD versions of EcoQuest, Jones, KQ5 and SQ4
svn-id: r54476
2010-11-25 14:22:09 +00:00
Filippos Karapetis
394daa5704 SCI: Added engine method isCD()
svn-id: r54475
2010-11-25 14:19:02 +00:00
Filippos Karapetis
29395974ca SCI: Remove the Windows versions of Freddy Pharkas. This one has an alternative sound track, but it's handled in a different manner
svn-id: r54474
2010-11-25 14:16:46 +00:00
Filippos Karapetis
d9f429716f SCI: Fixed compilation
svn-id: r54473
2010-11-25 13:01:45 +00:00
Filippos Karapetis
69da6a6dd6 SCI: added Windows entries for all games with alternate GM tracks
These are the CD versions of EcoQuest, Jones, KQ5, Pharkas and SQ4
Also, added AGDF_CD to all CD versions that have corresponding floppy versions

svn-id: r54472
2010-11-25 12:44:17 +00:00
Walter van Niftrik
8c4ebc434d SCI: Fix bug in MT-32 checksum computation. Thanks Sven for finding this.
svn-id: r54471
2010-11-25 11:19:46 +00:00
Max Horn
5ae718d148 MOHAWK: Add missing include, which prevented the CursorMan destructor from being called
svn-id: r54470
2010-11-25 11:18:20 +00:00
Matthew Hoops
07ea74d37b MOHAWK: Refactor cursor handling
Cursor handling has now been moved to a new CursorManager class (which is subclassed for Myst/Riven) from the GraphicsManager classes. This will be needed for Living Books which will have a class for Windows and Mac cursors (coming soon!).

svn-id: r54469
2010-11-25 04:49:11 +00:00
Matthew Hoops
4c733c4278 MOHAWK: Cleanup image surface handling
- Renamed ImageData to MohawkSurface
- Added offset x/y fields to MohawkSurface
- The image cache now stores MohawkSurface pointers
- Switched Living Books to 8bpp mode (it requires that in the end anyway)

svn-id: r54468
2010-11-25 02:59:56 +00:00
Filippos Karapetis
52898b6336 SCI: Fixed digital audio at the beginning of KQ5CD and removed a hack for the Windows version
svn-id: r54466
2010-11-25 02:21:07 +00:00
Filippos Karapetis
ff58eea2ce SCI: Set _useMT32Track correctly for KQ5 Windows, thus simplifying the code
svn-id: r54465
2010-11-25 01:31:03 +00:00
Filippos Karapetis
7508260954 SCI: Added support for the alternative GM tracks of the Windows version of KQ5CD (bug #3041239)
Note that the empty GM track for the Sierra logo makes the game hang, so the
MT-32 track is used, which sounds awful

svn-id: r54464
2010-11-25 01:19:45 +00:00
Filippos Karapetis
169c6be32b SCI: Fixed a bug in the script disassembler
svn-id: r54463
2010-11-24 21:32:34 +00:00
Matthew Hoops
f5b1b9fa75 MOHAWK: Change the unused version detection field to 'appName' for use with LB
svn-id: r54462
2010-11-24 21:12:21 +00:00
Filippos Karapetis
dcd1326970 SCI: Some renaming and added several TODOs concerning reverb
svn-id: r54461
2010-11-24 16:01:30 +00:00
Filippos Karapetis
1ebae78ff1 SCI/SOUND: Applied patch #3117577 - "SCI: MT-32 plays "warble" of notes when music resumes", with some slight modifications
This is only used by SCI for now, but it is probably correct to apply this for
all engines, thus an appropriate TODO has been added

svn-id: r54460
2010-11-24 15:12:43 +00:00
Filippos Karapetis
9493b9add5 SCI: Moved handling of special reverb value 127 outside of the MIDI driver
svn-id: r54459
2010-11-24 14:51:29 +00:00
Filippos Karapetis
c3cb4c92a8 SCI: Placed some selectors added in SCI1.1 in a separate table
svn-id: r54458
2010-11-24 14:38:08 +00:00
Filippos Karapetis
364d37b302 SCI: some changes to the way reverb is handled
- "Invalid" SCI reverb values (127) are properly handled now
- SCI kDoSound(reverb) sets the global reverb (renamed it accordingly)
- kDoSound(reverb) can also return the current reverb if no parameter is sent

svn-id: r54457
2010-11-24 14:21:31 +00:00
Filippos Karapetis
642d15e43f SCI: Added a getReverb() accessor to the SciMusic class
svn-id: r54456
2010-11-24 14:15:46 +00:00
Filippos Karapetis
7fc171e3bc SCI: Some slight changes to get the "find_callk" console command working in KQ5
- Ignore invalid object in KQ5 script 784
- Script 980 looks to be an unused leftover, as its object contain references to
classes placed in script 988, which is missing

svn-id: r54455
2010-11-24 11:57:11 +00:00
Filippos Karapetis
332a438ccf SCI: Added a TODO for the default reverb value
svn-id: r54454
2010-11-24 11:26:48 +00:00
Filippos Karapetis
fcd8a04c64 SCI: Read MT-32 reverb data correctly (patch #3117434)
svn-id: r54453
2010-11-24 11:19:27 +00:00
Thierry Crozat
f20da5f98c I18N: Add translation of the SCUMM help dialog.
svn-id: r54449
2010-11-23 22:47:20 +00:00
Filippos Karapetis
d66c43eb5e SCI: added a workaround for script bug #3116892 - "SQ4 German: crash when shooting with laser", by applying the one for the English version
svn-id: r54447
2010-11-23 22:42:03 +00:00
Max Horn
a914b97559 TINSEL: Fix support for file names with a trailing dot
When copying data files with 8.3 names from a CD, they sometimes end up
with a trailing dot, e.g. "INDEX." instead of "INDEX". Comon::File
supports this, but in r54392 Tinsel stopped using Common::File.

This commit also removes the useless SeekableSubReadStream wrapper
around the actual file stream.

svn-id: r54446
2010-11-23 22:33:26 +00:00
Max Horn
be822d8bc2 MOHAWK: Pass Common::Strings directly to SaveFileManager, instead of first converting to a C string
svn-id: r54444
2010-11-23 22:32:55 +00:00
Max Horn
121056c12f MOHAWK: Pass objs by const ref not by value
svn-id: r54443
2010-11-23 22:32:39 +00:00
Max Horn
830c39a687 SWORD2: Reduce dependencies on common/memstream.h
svn-id: r54442
2010-11-23 22:27:40 +00:00
Max Horn
12d5151ff4 COMMON: Remove default value for endianess in ReadStreamEndian subclasses
svn-id: r54441
2010-11-23 22:27:20 +00:00
Max Horn
b485d0ee49 TINSEL: Turn TinselFile into a SeekableReadStream
svn-id: r54439
2010-11-23 22:26:43 +00:00
Max Horn
c9fdaa7417 TINSEL: Restrict use of memstream.h & substream.h
svn-id: r54437
2010-11-23 22:26:09 +00:00
Max Horn
09ba53dcfb SCUMM: Use explicit XOR decoding code in BaseScummFile subclasses
This made it possible to turn some MemoryReadStream pointers into plain
SeekableReadStream pointers.

svn-id: r54435
2010-11-23 22:25:36 +00:00
Max Horn
54e0390752 SCUMM: Replace Common::File uses by SeekableReadStream and SearchMan
svn-id: r54434
2010-11-23 22:25:10 +00:00
Matthew Hoops
90cabfef38 MOHAWK: Find the small marble images by string; should fix German version
svn-id: r54431
2010-11-23 18:29:45 +00:00
Matthew Hoops
799757132f MOHAWK: Remove the no longer needed RLE8 hack
svn-id: r54430
2010-11-23 18:15:45 +00:00
Filippos Karapetis
d438b739cf SCI: Also send a sustain off on a notes off event (patch from bug #3116608)
svn-id: r54429
2010-11-23 16:03:30 +00:00
Filippos Karapetis
23bd8a1c26 SCI: Ignore polyphonic/channel aftertouch (0xa0 / 0xd0) in the MIDI driver, like in the Adlib driver. SSCI doesn't handle these, so we shouldn't handle them either
svn-id: r54428
2010-11-23 15:47:54 +00:00
Filippos Karapetis
c140e43a35 SCI: Added entries for the GOG versions of Phantasmagoria 1 and 2 (patch #3112884)
svn-id: r54427
2010-11-23 12:07:21 +00:00
Arnaud Boutonné
7711cc57d6 HUGO: Rewrite saveObjects() and restoreObjects()
This fixes (at least for me) save and restore. saveEvents() 
and restoreEvents() still have to be rewritten.

svn-id: r54422
2010-11-22 22:49:24 +00:00
Arnaud Boutonné
8bb43361cb HUGO: Suppress useless enums, cleanup
svn-id: r54421
2010-11-22 19:50:57 +00:00
Filippos Karapetis
fe17f26af8 SCI: Added support for the keypad +/- keys
svn-id: r54420
2010-11-22 18:39:06 +00:00
Matthew Hoops
26bf0e8176 MOHAWK: Fix a typo fail (thanks, fuzzie)
svn-id: r54419
2010-11-22 18:09:31 +00:00
Matthew Hoops
cb843daec0 MOHAWK: Have MohawkResource::open() return a bool for success/failure
svn-id: r54418
2010-11-22 18:07:33 +00:00
Matthew Hoops
9d4827b5e1 MOHAWK: Fix gspit dome from always opening
svn-id: r54417
2010-11-22 17:51:54 +00:00
Matthew Hoops
cc6c7e33bf MOHAWK: Switch slider bitmap ID's to matching via string; fixes some versions
svn-id: r54416
2010-11-22 17:50:30 +00:00
Filippos Karapetis
eba5c441b2 SCI: Fixed bug #3044050 - "SQ4FLOPPY: Crash while flying in Skate-o-Rama"
Fixed Object::locateVarSelector() for SCI0-SCI1 games, as it wasn't checking the
class for object variables

svn-id: r54415
2010-11-22 10:23:53 +00:00
Filippos Karapetis
d8afddac63 SCI: Patched the QFG3 character import screen the same way as with QFG2
This prevents random crashes and slow refreshing, same as with QFG2

svn-id: r54414
2010-11-22 00:20:00 +00:00
Filippos Karapetis
0b06a1fe7b SCI: Proper fix for the QFG2 character import screen crashes (bug #3037996)
Script 944 does constant reallocations whenever the selection changes,
which leads to all sorts of unpredictable crashes. Thanks to waltervn for
his help on this issue

svn-id: r54413
2010-11-21 23:43:14 +00:00
David Turner
a00668331c QUEEN: Correct uninitialised read in Queen Adlib driver found by Valgrind.
svn-id: r54410
2010-11-21 18:42:00 +00:00
Johannes Schickel
3d83667504 CRUISE: Slight formatting fix.
svn-id: r54409
2010-11-21 12:51:49 +00:00
David Turner
e48930c16e CRUISE: Fix Memory Accesses Errors and Leaks Reported By Valgrind
Most of these fixes are fairly simple, though the clamping of ArrayStates accesses in object.cpp _might_ cause regressions. None are obvious on basic playtest check, but the game will need a full playtest.

svn-id: r54408
2010-11-21 12:05:15 +00:00
Filippos Karapetis
8045c4f87a SCI: Fix for bug #3037996 - "QFG2: Crash during import dialog after time (import works)"
svn-id: r54407
2010-11-21 11:04:52 +00:00
Filippos Karapetis
788598a689 SCI: Fixed the "version" console command in SCI1.1 and earlier games
svn-id: r54406
2010-11-21 10:31:02 +00:00
Paul Gilbert
cb2a20cbd0 CRUISE: Bugfix for #3064846 - Raoul appearing in Book screen
svn-id: r54405
2010-11-21 05:31:13 +00:00
Filippos Karapetis
f2498b54ce SCI: Added 3 uninitialized temp fixes for the RAMA demo, which is now working
svn-id: r54404
2010-11-21 02:08:35 +00:00
Filippos Karapetis
57d9de00f8 SCI: Removed the correct subops from kString in late SCI2.1/SCI3 games (thanks to waltervn)
svn-id: r54403
2010-11-21 02:07:55 +00:00
Filippos Karapetis
ac7c488c7c SCI: kArray wasn't changed in late SCI2.1/SCI3 games (thanks to waltervn)
svn-id: r54402
2010-11-21 02:06:20 +00:00
Filippos Karapetis
97d31c6ac6 SCI: Added the kString/kArray type in the "version" console command
svn-id: r54401
2010-11-21 00:58:06 +00:00
Filippos Karapetis
ffcd6783c7 SCI: Removed incorrect pointer arithmetic support for SCI2 strings
There was never pointer arithmetic support in SCI2 and newer games

svn-id: r54400
2010-11-21 00:49:54 +00:00
Filippos Karapetis
cd69472be9 SCI: Adapted kArray/kString to use the new heuristic for late SCI2.1/SCI3 games, and updated their subops accordingly
svn-id: r54399
2010-11-21 00:47:56 +00:00
Filippos Karapetis
d275461958 SCI: Added a heuristic to detect the modified late SCI2.1/SCI3 kString/kArray kernel functions
svn-id: r54398
2010-11-21 00:44:04 +00:00
Matthew Hoops
5616bde4e7 MOHAWK: Fix Living Books v1 sound (courtesy of fuzzie)
svn-id: r54397
2010-11-21 00:02:25 +00:00
Matthew Hoops
0f2bcd2f9f MOHAWK: Cleanup resource handling
- Renamed getRawData() to getResource()
- Add a getResource() and hasResource() function for named resources
- Other minor formatting changes

svn-id: r54396
2010-11-20 23:53:14 +00:00
Filippos Karapetis
d886c037dd SCI: Fix ScummVM freezing during the credits scene in EcoQuest 1 (bug #3101846)
svn-id: r54395
2010-11-20 19:52:31 +00:00
Paul Gilbert
a2367d26f9 TINSEL: Preliminary functionality for reading BE data files
svn-id: r54392
2010-11-20 03:14:03 +00:00
Filippos Karapetis
b2ba35124c SCI: Fixed timer bug #3109139 - "SQ4: Crash after exiting Skate-o-Rama during chase"
svn-id: r54391
2010-11-20 00:52:05 +00:00
Filippos Karapetis
c8ef70ea1c SCI: Some minor fixes for Phantasmagoria 2 (which doesn't work at all, since it has some differences in its views)
svn-id: r54390
2010-11-20 00:20:05 +00:00
Arnaud Boutonné
e5177eebfd HUGO: Start using endianness-safe read/write functions
svn-id: r54389
2010-11-19 23:49:04 +00:00
Matthew Hoops
7fb352e38a MOHAWK: Implement an image cache system
This should greatly improve the performance in Myst (especially Myst ME, which uses the slow JPEG decoder). This should also slightly improve the Riven performance; the sliders now work a bit better.

svn-id: r54388
2010-11-19 21:25:36 +00:00
Max Horn
2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Willem Jan Palenstijn
a24d5ba2f4 SCI: Only compile kGetConfig for SCI32
svn-id: r54382
2010-11-19 14:19:02 +00:00
Lars Persson
3c7f9aa34a SCI : data field is only supported if building for SCI32
svn-id: r54379
2010-11-19 13:56:11 +00:00
Filippos Karapetis
5d53673e93 SCI: Also send system strings to kString(). This makes LSL7 continue into the actual game! :D
svn-id: r54377
2010-11-19 13:23:20 +00:00
Lars Persson
c7cf764890 SCI: Only handle seg_type_string if ENABLE_SCI32 is defined
svn-id: r54376
2010-11-19 13:03:31 +00:00
Lars Skovlund
5ecac66c6a Some subfunctions changed positions in SCI3 kString. WIP.
And with this, LSL7 starts up. Yeah, baby!

svn-id: r54374
2010-11-19 12:52:17 +00:00
Lars Skovlund
84d4a4a89f Implement a couple of NULL checks in kArray
svn-id: r54373
2010-11-19 12:49:46 +00:00
Lars Skovlund
1a6597ebc2 SCI3: Implement new opcode 0x4c.
svn-id: r54370
2010-11-19 12:47:47 +00:00
Lars Skovlund
fbf5a453c7 SCI: Implement the GetConfig call for LSL7
svn-id: r54369
2010-11-19 12:46:36 +00:00
Julien Templier
9e5b554dc3 LASTEXPRESS: Poll events when loading savegames to prevent freezing the application
svn-id: r54368
2010-11-19 10:55:56 +00:00
Julien Templier
2687c987eb LASTEXPRESS: Add missing queue reset in Entitites::resetSequences
svn-id: r54367
2010-11-19 10:55:38 +00:00
Julien Templier
2a6519ca2e LASTEXPRESS: Simplify current frame calculation in Animation::process
(per Max suggestion)

svn-id: r54366
2010-11-19 10:55:21 +00:00
Filippos Karapetis
c19e8377f9 SCI: Added pointer arithmetic support for SCI2 strings
svn-id: r54365
2010-11-19 10:28:43 +00:00