Commit Graph
86814 Commits
Author SHA1 Message Date
Colin Snover ca507e2b0b SCI: Fix missing music in LSL7 2017-04-23 13:07:25 -05:00
Colin Snover c9342beca9 SCI: Remove unused commented code 2017-04-23 13:07:25 -05:00
Colin Snover 8aed6759e4 SCI32: Remove incomplete SCI3 detection warning
Map format is the same as SCI2/2.1 and volume format is detected
correctly as SCI3.
2017-04-23 13:07:25 -05:00
Colin Snover 88f020c7d4 SCI32: Fix out-of-bounds reads of truncated uncompressed cels
This happens e.g. on the About page in LSL7 because of an
interpreter problem where bitmap handles are destroyed and then
reused without a kFrameOut call to remove old screen items from
the visible plane list before a kIsOnMe call that causes the
engine to try to read from reused bitmap handles with different
contents and dimensions.

This replaces bad memory reads on the About page in LSL7 with an
assertion failure, until the problem with the About page can be
properly addressed.
2017-04-23 13:07:25 -05:00
Colin Snover 4d9b019b18 SCI32: Activate SCI3 draw/erase list calculation algorithm
This code branch, existing since at least SQ6 but apparently never
used by any SCI2/2.1 game, is in fact the algorithm used by SCI3.

This fixes (at least) doubled rendering of transparent surfaces
like the background of the inventory window and conversation
choices panel in LSL7.
2017-04-23 13:07:25 -05:00
Colin Snover 09fea5f108 SCI32: Fix bad draw rectangle size in Duck video player
This was causing uninitialised garbage data from the scale buffer
to be drawn to the screen.
2017-04-23 13:07:25 -05:00
Colin Snover b8f0224b62 SCI32: Remove unused SegManager from DuckPlayer 2017-04-23 13:07:25 -05:00
Colin Snover 7b3c9f4a07 SCI32: Add Lighthouse workaround 2017-04-23 13:07:25 -05:00
Colin Snover 168774c3c6 SCI32: Add kPlayVMD subop 27 (SetPlane)
Used by RAMA, when playing a video at the Hub Camp computer at the
beginning of the game (room 1004).
2017-04-23 13:07:25 -05:00
Colin Snover f711edc876 SCI32: Add workarounds for RAMA 2017-04-23 13:07:25 -05:00
Colin Snover 2212b82794 SCI32: Add workarounds for Lighthouse 2017-04-23 13:07:25 -05:00
Colin Snover 94524633d7 SCI32: Put Lighthouse restart game in restart save slot 2017-04-23 13:07:25 -05:00
Colin Snover 205f8c4a59 SCI32: Fix call to kFileIOIsValidDirectory in RAMA 2017-04-23 13:07:25 -05:00
Colin Snover 10a4e5d591 SCI32: Fix missing break statement 2017-04-23 13:07:25 -05:00
Colin Snover c88a43b615 SCI32: Reset ScreenItem cel type when updating from a VM object
In Phant2, when going to email on Curtis's office computer, a
screen item that contained a bitmap on the last frame was updated
to contain a view on the next frame. This crashed the engine when
it tried to reuse the old disposed bitmap instead of the new view
because the cel type was never changed from kCelTypeMem to
kCelTypeView.
2017-04-23 13:07:25 -05:00
Thierry Crozat 0655cc13e6 I18N: Update translation (French)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 17:57:36 +02:00
Paolo Bossi b19f719e9a I18N: Update translation (Italian)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 17:44:08 +02:00
George Kormendi 199d8279b9 I18N: Update translation (Hungarian)
Currently translated at 99.7% (945 of 947 strings)
2017-04-23 17:38:50 +02:00
Paolo Bossi 24a30a1904 I18N: Update translation (Italian)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 17:38:06 +02:00
Lothar Serra Mari dc68b4fc47 I18N: Update translation (German)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 15:38:24 +02:00
Timo Mikkolainen 802a1c4156 I18N: Update translation (Finnish)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 13:31:21 +02:00
Santiago Sanchez 0af1a5a6e6 I18N: Update translation (Spanish)
Currently translated at 99.0% (938 of 947 strings)
2017-04-23 07:59:15 +02:00
Eugene Sandulenko 8fa6dbb6c8 I18N: Update translation (Spanish)
Currently translated at 98.9% (937 of 947 strings)
2017-04-23 07:59:03 +02:00
Eugene Sandulenko 8dba58abe2 I18N: Update translation (Russian)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 07:57:14 +02:00
Eugene Sandulenko cd973e0b67 I18N: Update translation (Ukrainian)
Currently translated at 100.0% (947 of 947 strings)
2017-04-23 07:56:29 +02:00
Thierry Crozat f3d69ae556 I18N: Update translations templates 2017-04-23 02:44:17 +02:00
Colin Snover fcaf15aa50 SCI: Add alloc_list command to debugger
This command lists all resources that are currently loaded into
memory, plus the number of locks that exist on each loaded
resource.
2017-04-22 19:38:13 -05:00
Colin Snover 9e7c75cc79 SCI: Avoid crashing when disassembling a call with a bad object
lookupSelector will raise an error if the passed object ID is
invalid.
2017-04-22 19:38:13 -05:00
Colin Snover 78fd8d39c5 SCI32: Disable brightness boost when black-lined video is disabled
The boost is intended to compensate for the darkness caused by the
black lines, so should not be applied when there are no black
lines. This fixes too-bright videos in at least LSL7.
2017-04-22 19:38:13 -05:00
Colin Snover 16fe6d3cb1 SCI32: Store handle to VMD bitmap separately from ScreenItem
In at least RAMA, when using the pocket computer to view a mail
and then pressing the "return" button, the ScreenItem containing
the VMD will be destroyed before the VMD player is told to close
the video, resulting in a use-after-free trying to access the
bitmap ID through the deleted ScreenItem.
2017-04-22 19:38:13 -05:00
Colin Snover 092a809c78 SCI32: Fix bad interpolation of Robot audio samples
Previously, this code was interpolating samples if the previous
block had missing samples, instead of interpolating when samples
are missing in the upcoming block of samples.
2017-04-22 19:38:12 -05:00
Colin Snover 5231541e7c SCI32: Add and divide instead of performing two divisions
This should make things trivially faster, and matches more
accurately how the original engine worked.
2017-04-22 19:38:12 -05:00
Colin Snover f6c4e0c7c7 SCI: Improve message when crashing due to a bad selector 2017-04-22 19:38:12 -05:00
Colin Snover 8a5eb0c784 SCI32: Fix dumb typo in CelInfo32::toString
The typo was `if (kCelTypeColor)` instead of
`if (type == kCelTypeColor)`. Changed to use a switch instead for
improved clarity and code intelligence.
2017-04-22 19:28:36 -05:00
Colin Snover 3ab1f5f4cc SCI: Display class names in disassembly 2017-04-22 19:28:35 -05:00
Colin Snover 086fab741a SCI: Remove #undef for a macro that does not exist 2017-04-22 19:28:35 -05:00
Colin Snover 2ccef4a476 SCI32: Implement support for QFG4 autosave 2017-04-22 19:28:35 -05:00
Colin Snover 6c44106083 SCI32: Add workarounds & patches for QFG4 2017-04-22 19:28:35 -05:00
Colin Snover 8817e8e3bf SCI: Explicitly label slot 0 as the autosave slot in the ScummVM UI 2017-04-22 19:28:34 -05:00
Colin Snover 41c633f0c5 SCI: Fix whitespace errors 2017-04-22 19:28:34 -05:00
Colin Snover 848bce47e1 SCI: Fix typo in debug message 2017-04-22 19:25:21 -05:00
Colin Snover 8105984703 SCI32: Fix broken final step of 2.1mid+ pixel dissolve 2017-04-22 19:25:20 -05:00
Colin Snover ede7976ede SCI32: Fix bad kPointSize implementation
Fixes text scaling gone mad in Phant2.
2017-04-22 19:25:20 -05:00
Colin Snover c6cf7215f0 SCI32: Fix kStringFormat signatures 2017-04-22 19:25:20 -05:00
Colin Snover ecc446da84 SCI: Accept 32-bit values to reg_t::incOffset
This fixes bad variable relocation in Phant2 causing the game to
crash when reading object names.
2017-04-22 18:53:40 -05:00
Thierry Crozat b45b26b54c I18N: Update translations templates 2017-04-23 00:59:29 +02:00
Thierry Crozat c095cb31d1 DRASCULA: Add possibility to load and save games using GMM 2017-04-22 23:53:10 +01:00
Colin Snover 9527139deb SCI32: Enable support for SCI2-2.1 games in release!
Some games are not moved to ADGF_TESTING yet because they have
not been played through completely:

* QFG4
* PQ:SWAT

Some games are not moved to ADGF_TESTING yet because they are
broken:

* Chest (fails to read/parse its custom archive files)
* Hoyle5 (Poker DLL needs to be reverse-engineered; main menu
  needs to be "fixed" for budget derivatives that only contain
  some of the games and used Windows shortcuts to bypass the menu)
* MGDX (missing MIDI playback)
2017-04-22 15:42:16 -05:00
Colin Snover 5b0c20da94 SCI32: Provide more detail in console when a save game fails checks 2017-04-22 15:34:31 -05:00
Thierry Crozat 106afe1cfb I18N: Update translations templates 2017-04-22 20:37:35 +02:00