82872 Commits

Author SHA1 Message Date
Colin Snover
68234d2b8a NEWS: Add news items for new general enhancements 2017-10-08 20:19:43 -05:00
Colin Snover
bb02d730b4 SCI32: Fix crash restoring save from endgame of RAMA
Fixes Trac#10263.
2017-10-08 19:25:54 -05:00
Martin Kiewitz
bd94bbc3e3 SCI: Add QfG4 script patch to fix sliding down slope bug #9801
It's quite difficult to patch. I hope this finally solved it.
2017-10-09 01:58:16 +02:00
Martin Kiewitz
870cd80202 SCI: Crazy Nick's Larry workaround bug #10184
Added this already through last commit by accident
Was supposed to get added by this.
Workaround for reading uninitialized temp game bug.
2017-10-08 20:54:59 +02:00
Martin Kiewitz
656de5e360 SCI: Restrict some workarounds to certain temps
Also add a bit more documentation / Fix some documentation
2017-10-08 20:52:48 +02:00
Paul Gilbert
2b8cd341ef TITANIC: Turn off testing for English, turn it on for German 2017-10-08 12:48:21 -04:00
Paul Gilbert
3a5c274ef7 TITANIC: Added latest titanic.dat 2017-10-08 12:45:29 -04:00
Paul Gilbert
9f2d7a6793 TITANIA: DE: Fixes for Titania's wakeup speech 2017-10-08 11:38:40 -04:00
Paul Gilbert
6dac2f4b95 TITANIC: DE: Syntax fixes 2017-10-08 11:12:53 -04:00
Paul Gilbert
f05690db2a TITANIC: DE: Further tweak code wheel loading 2017-10-08 10:39:13 -04:00
Bastien Bouclet
6e6fab5b83 VIDEO: BINK: Fix plane data clobbering caused by incorrect pitch value
When decoding blocks, the YUV planes' pitches were computed using the
target video surface size instead of the block based size, resulting in
decoded plane data being overwritten for some video sizes.

Affected videos are LEOS-11102.bik and LEOS-11152.bik from Myst III.
2017-10-08 08:54:40 +02:00
Paul Gilbert
51275ea7a9 TITANIC: DE: Fix default code wheel letters 2017-10-07 22:06:00 -04:00
Paul Gilbert
bca0a3f2da TITANIC: DE: Fixes for bomb code wheels 2017-10-07 21:56:52 -04:00
Paul Gilbert
76e5a0246c TITANIC: DE: Fix Barbot response handling 2017-10-07 16:38:12 -04:00
Colin Snover
20bd289ebe BACKENDS: Remove references to old normal1xScaler transaction property from ports 2017-10-07 15:25:47 -05:00
Martin Kiewitz
60c2c2867c SCI: Change index inside workaround tables to an index range
So that one can specify an entire range of temp variables
by using just one single entry.
2017-10-07 22:11:25 +02:00
Colin Snover
7d037495be SCI: Use explicit indexes in castlebrain/islandbrain word search workarounds 2017-10-07 14:50:21 -05:00
Colin Snover
1b669d2489 SCI: Add workaround for uninitialized reads in Island of Dr Brain
Leaning on the enter key during a word search puzzle will trigger
this bug, just like in Castle of Dr Brain.
2017-10-07 14:46:01 -05:00
Colin Snover
64191781b5 SCUMM: Fix compilation on systems without USE_RGB_COLOR 2017-10-07 13:09:07 -05:00
Colin Snover
914bb1bd2d COMMON: Undefine ABS if it is a macro
Fixes iOS7 compilation when common/util.h is included after
NSObjCRuntime.h, as happens in ios7_video.mm.
2017-10-07 13:04:05 -05:00
Thierry Crozat
a475295ccc I18N: Update translations templates 2017-10-07 19:31:43 +02:00
Colin Snover
04f357e6ff BACKENDS: Make initSizeHint an optional extension point
There is no particular reason why backends that don't need to
calculate screen dimensions in advance should still need to
implement initSizeHint at this point.
2017-10-07 12:30:29 -05:00
Colin Snover
6e157429b7 BACKENDS: Fix window sizing of games that switch between multiple resolutions 2017-10-07 12:30:29 -05:00
Colin Snover
24f5d45619 ENGINES: Remove Graphics::PixelFormat alias from engine.cpp
Almost the entire file does not use the aliased PixelFormat except
for a single function, so just make that function work like
everything else already in the TU.
2017-10-07 12:30:29 -05:00
Colin Snover
9a82bc6d96 SDL: Deduplicate scaling factors 2017-10-07 12:30:29 -05:00
Colin Snover
432fd522d2 ENGINES: Remove default1x scaler flag
This flag is removed for a few reasons:

* Engines universally set this flag to true for widths > 320,
  which made it redundant everywhere;
* This flag functioned primarily as a "force 1x scaler" flag,
  since its behaviour was almost completely undocumented and users
  would need to figure out that they'd need an explicit non-default
  scaler set to get a scaler to operate at widths > 320;
* (Most importantly) engines should not be in the business of
  deciding how the backend may choose to render its virtual screen.
  The choice of rendering behaviour belongs to the user, and the
  backend, in that order.

A nearby future commit restores the default1x scaler behaviour in
the SDL backend code for the moment, but in the future it is my
hope that there will be a better configuration UI to allow users
to specify how they want scaling to work for high resolutions.
2017-10-07 12:30:29 -05:00
Colin Snover
ebe6c40a6a SDL: Do not reset window size when engines update rendering surface
This change allows:

* Engines to update their target rendering surface/size and pixel
  format with the backend multiple times during gameplay;
* Users to resize the ScummVM window without having it reset
  size/position every time an engine updates its target surface
  format;
* Conversions/scaling to continue to run efficiently in hardware,
  instead of requiring engines to pick their maximum possible
  output format once and upscale inefficiently in software;
* The window to reset size once when an engine calls to set its
  initial output size, and to reset again once ScummVM returns to
  the launcher.

This is relevant for at least SCI32 and DreamWeb engines, which
perform graphics mode switches during games.
2017-10-07 12:30:29 -05:00
Martin Kiewitz
83436e685f SCI: Improve Larry 1 Spanish script patch
So that it also works even when the patch files are missing.
2017-10-07 19:06:16 +02:00
Martin Kiewitz
eb1f9030a7 SCI: Add script patch for Larry 1 Spanish bug #10240
Fixes buying an apple from man wearing a barrel, who walks
around in front of the casino.
2017-10-07 18:56:29 +02:00
Paul Gilbert
476b4a6ac3 DEVTOOLS: Fix UTF8 character in create_titanic 2017-10-07 07:24:27 -04:00
Martin Kiewitz
54cac32003 Revert "SCI: Add workaround for uninitialized reads in Island of Dr Brain"
This reverts commit ae8e4fa8e95f3ae347dfc681330bccc0b09d1f01.

This change is wrong in any case. It should be specific to temp
14+15 at the very least. I also did not get an answer on what
is actually happening internally. That's not how we should
add workarounds. My review was also still pending.
2017-10-07 11:25:12 +02:00
Colin Snover
ae8e4fa8e9 SCI: Add workaround for uninitialized reads in Island of Dr Brain
Leaning on the enter key during a word search puzzle will trigger
this bug, just like in Castle of Dr Brain.
2017-10-07 00:56:00 -05:00
David Fioramonti
ec1cfcbf47 SCI: Add workaround for uninit read during wordsearch in castlebrain
During the wordsearch puzzle (room 320 click left door) the
game will crash because of an uninitalized read of temp
variables in word::dispatchEvent (which gets called a lot),
if the player clicks the same letter or different letters
aggressively or holds down the enter key.

Fixes Trac#9783.
2017-10-07 00:56:00 -05:00
Thierry Crozat
45d117737c I18N: Update translations templates 2017-10-07 05:57:38 +02:00
Colin Snover
c7c5f28bdb SCI32: Clean up scriptWidth/scriptHeight/screenWidth/screenHeight
This removes the unnecessary Buffer subclass and stops most places
where the output buffer was being interrogated about dimensions
instead of GfxFrameout.
2017-10-06 22:56:26 -05:00
Colin Snover
d53e778739 SCI32: Rewrap comments to 80 columns in SOL decoder 2017-10-06 22:56:26 -05:00
Colin Snover
15f6e6b97e SCI32: Remove resolved TODO in helpers.h 2017-10-06 22:56:25 -05:00
Colin Snover
8c9276e75a SCI32: Clean up script patch comments 2017-10-06 22:56:25 -05:00
Colin Snover
ce13b1699a SCI32: Clean up Robot decoder
* Rewrap comments to 80 columns
* Clarify comments where possible
* Remove resolved TODOs
2017-10-06 22:56:25 -05:00
Colin Snover
b6c3f0f547 SCI32: Clean up CelObj
* Rewrap comments to 80 columns
* Clarify comments where possible
* Use smart pointers where appropriate
* Change view/pic flags detection to always use word-size
  (byte-size check for flag 0x80 was a compiler optimisation)
2017-10-06 22:56:24 -05:00
Colin Snover
ac0a83a424 SCI32: Clean up GfxControls32
* Rewrap comments to 80 columns
* Clarify comments where possible
* Fix whitespace errors
2017-10-06 22:56:24 -05:00
Colin Snover
d5e09a9f68 SCI32: Rewrap comments to 80 columns in lists32.h 2017-10-06 22:56:13 -05:00
Colin Snover
4521e9774a SCI32: Clean up GfxPaint32
* Rewrap comments to 80 columns
2017-10-06 22:11:03 -05:00
Colin Snover
31e1d0932c SCI32: Clean up Plane
* Rewrap comments to 80 columns
* Clarify comments where possible
2017-10-06 22:11:03 -05:00
Colin Snover
1b42146955 SCI32: Clean up GfxRemap32
* Rewrap comments to 80 columns
* Clarify comments where possible
2017-10-06 22:11:03 -05:00
Colin Snover
a2c8674252 SCI32: Clean up GfxText32
* Rewrap comments to 80 columns
* Clarify comments where possible
2017-10-06 22:11:02 -05:00
Colin Snover
42180527c4 SCI32: Fix music volume not being restored after speech in Torin
This was a regression introduced by
d556dcc57bf50a03d81ab7a1ef59a9e5758465bf.
2017-10-06 22:11:02 -05:00
Colin Snover
93c8044f69 SCI32: Clean up Audio32
* Rewrap comments to 80 columns
* Remove resolved TODOs
* Use containers and smart pointers where appropriate
2017-10-06 22:10:52 -05:00
Colin Snover
f51b158f8c SCI32: Clean up GfxFrameout
* Rewrap doxygen comments to 80 columns
* Swap public/private sections so public APIs come first
* Clarify comments where easily possible
2017-10-06 22:10:51 -05:00
Colin Snover
c413030be3 SCI32: Clean up Video32
* Rewrap comments to 80 columns
* Clarify comments where appropriate
2017-10-06 22:10:51 -05:00