Commit Graph
4144 Commits
Author SHA1 Message Date
Paul Gilbert e2f68e2403 COMMON: Fix seek return values, memory stream use in create_titanic 2019-05-12 11:44:15 +03:00
Paul Gilbert b821e8fce4 COMMON: Changed DumpFile & StdIOStream to derive from SeekableWriteStream 2019-05-12 11:44:15 +03:00
Paul Gilbert f4dacdf34d COMMON: Created SeekableWriteStream class 2019-05-12 11:44:15 +03:00
Cameron Cawley 8c2b09d919 COMMON: Replace NEResourceType and PEResourceType with a shared enum 2019-05-01 23:52:56 +03:00
Cameron Cawley d7b2b1b8f9 GUI: Support adding games via Drag and Drop 2019-04-30 22:17:04 +01:00
jepael 7e18d4c28d COMMON: Fix compiler warning
Cast the string character type to native type for comparison.
2019-04-21 22:19:58 +01:00
Dries Harnie c4c315decc Merge pull request #1537 from ccawley2011/android-input
ANDROID: Clean up input
2019-04-16 08:10:56 +02:00
Cameron Cawley bcef809e61 WINCE: Fix compilation 2019-04-15 08:06:39 +03:00
Bastien Bouclet 148655f5c2 COMMON: Use a prefix table to speed up the Huffman decoder
Symbols for codes shorter than the prefix table index width are stored
in the table. All the entries in the table with an index starting with
the code are set to the symbol value. That way, when decoding it is
possible to get the number of bits corresponding to the table width from
the bitstream and directly find the symbol value. Longer code still need
to be searched for in the codes list.
2019-04-14 20:24:26 +02:00
Bastien Bouclet c087c5320c COMMON: Rework the BitStream class to improve its performance
* Fixed peekBits not to seek the underlying stream. Seeking can be slow
  when the stream is a file.
* Changed multi-bit  operations to work on multiple bits at once rather
  than iterating over single-bit operations.

This is an almost direct port of a patch for xoreos provided by DrMcCoy.
2019-04-14 20:22:50 +02:00
Bastien Bouclet 0f57aea2df COMMON: Use a prefix table to speed up the Huffman decoder
Symbols for codes shorter than the prefix table index width are stored
in the table. All the entries in the table with an index starting with
the code are set to the symbol value. That way, when decoding it is
possible to get the number of bits corresponding to the table width from
the bitstream and directly find the symbol value. Longer code still need
to be searched for in the codes list.
2019-04-13 16:24:25 +03:00
Bastien Bouclet ae9eeb731f COMMON: Rework the BitStream class to improve its performance
* Fixed peekBits not to seek the underlying stream. Seeking can be slow
  when the stream is a file.
* Changed multi-bit  operations to work on multiple bits at once rather
  than iterating over single-bit operations.

This is an almost direct port of a patch for xoreos provided by DrMcCoy.
2019-04-13 16:24:25 +03:00
Cameron Cawley 83002b66dc ANDROID: Clean up touch screen input 2019-04-12 20:30:17 +01:00
Andrei Prykhodko 8469b8749c COMMON: fixed reading ini files with section containing more than one word 2019-04-09 21:02:29 +03:00
Cameron Cawley 09dbe7686b JANITORIAL: Update all scummvm.org URLS to use https 2019-03-09 21:52:14 +01:00
sluicebox 85333d8050 COMMON: Allow '\#' to match '#' in matchString
matchString patterns couldn't be used to find files with the # character
as it was only treated as a digit wildcard. SCI expected that to work as
it looks for files that start with the # character.
2019-03-03 22:44:29 +02:00
Cameron Cawley 5d912b6923 COMMON: Add WRITE_UINT24 2019-03-02 07:29:22 +01:00
Laurent Merckx fc16b30bbf SDL/GRIM: Improve game controller support
- Use back button to open virtual keyboard (managed by resvm-sdl-events)
- Map controller buttons to corresponding actions (in grim engine)
- Solve bug on RPI with Myst3 (view stuck on top when using joystick)
2019-02-24 07:46:09 +01:00
DouglasLiuGamer d4d6e6203b SDL: Implement screenshot saving 2019-02-23 09:52:09 +01:00
Bastien Bouclet 3333aea405 COMMON: Include hidden files in directory listings by default
Hidden files are now only ignored in the GUI file browser when the user
has not checked 'show hidden files'.

Myst III has the hidden flag set for one of the directories containing
datafiles on the CD-ROM. When users copy the files to their hard drives
the hidden flag is kept. Detection worked previously because hidden
files were explicitly requested in the AD code. The engine would fail
to open the datafiles because SearchMan.addSubDirectoryMatching
ignored hidden directories.

Fixes #1516.
2019-01-31 09:01:14 +01:00
Bastien Bouclet 662791a961 COMMON: Include hidden files in directory listings by default
Hidden files are now only ignored in the GUI file browser when the user
has not checked 'show hidden files'.

Myst III has the hidden flag set for one of the directories containing
datafiles on the CD-ROM. When users copy the files to their hard drives
the hidden flag is kept. Detection worked previously because hidden
files were explicitly requested in the AD code. The engine would fail
to open the datafiles because SearchMan.addSubDirectoryMatching
ignored hidden directories.
2019-01-30 06:48:32 +01:00
Bastien Bouclet 66654cb376 ALL: Sync with ScummVM - rev. cd37d510f9 2019-01-26 20:47:55 +01:00
Bastien Bouclet 26d0935b9f COMMON: Remove usage of ScopedPtr in OutSaveFile
It's not very useful. However this is mostly to test the theory that the
build failure we've been experiencing in
engines/scumm/he/logic/football.cpp with the osx builder on buildbot is
related to the size of the intermediary assembly source file.
2019-01-05 12:02:19 +01:00
Paul Gilbert 7643382ff4 COMMON: Suport String in U32String assignment & equality operators 2019-01-01 00:40:17 -08:00
Matan Bareket 1474ca4ab3 JANITORIAL: Fix comment style for kFeatureSystemBrowserDialog 2018-12-26 15:30:16 -05:00
Thierry Crozat 56d1305f9d COMMON: Rename enum variable for native browser feature
There was a typo in the name (missing 'r' in browser).
2018-12-17 23:06:07 +00:00
SupSuper d0512db25c WIN32: Move all ARRAYSIZE undefs to util.h
Instead of trying to undefine ARRAYSIZE everywhere we use a Windows header, let's just do it before we define our own
2018-12-17 12:28:33 +02:00
Thierry Crozat 319b90fb21 BACKENDS: Add kFeatureNativeFileBowserDialog 2018-12-16 15:58:43 +00:00
Thierry Crozat d320c36e58 JANITORIAL: Fix typo in comment 2018-12-16 15:58:43 +00:00
SupSuper fbc9c7d371 BACKENDS: Hook GUI browser to DialogManager 2018-12-16 10:48:13 +00:00
SupSuper 952b12311c BACKENDS: Add base support for system dialogs 2018-12-16 10:48:13 +00:00
Cameron Cawley 8fa2f90a26 CREATE_PROJECT: Support building with Tremor instead of Vorbis 2018-11-27 22:58:02 +00:00
Cameron Cawley 79a4e3f813 BACKENDS: Remove references to the GP32 backend 2018-11-04 21:38:45 +00:00
Torbjörn Andersson fc7fa1de3a VIDEO: Use liba52 to decode audio. This is still laughably broken
At the moment, this produces nothing but misery in the form of
Valgrind warnings and horrible noise.
2018-11-04 22:33:22 +01:00
D G Turner 4c4ede54b9 COMMON: Add Portuguese (Portugal) Language.
The current Portuguese entry is Brazilian dialect, so modifying the
description and adding an entry for European Portuguese.

This is required to deal with bug Trac #10791.
2018-11-03 17:13:54 +00:00
D G Turner d0480e2dad COMMON: Add Danish Language.
This is required in PINK engine for danish localization as per
Trac bug #10708.
2018-10-26 01:34:03 +01:00
Thierry Crozat 1e11da712b COMMON: Add mutex to protect access to the String memory pool
This fixes a crash due to concurrent access to the global MemoryPool
used by the String class when String objects are used simultaneously
from several threads (as is for example the case when enabling the
cloud features).

See bug #10524: Thread safety issue with MemoryPool
2018-10-14 21:25:16 +01:00
Thierry Crozat c39dcc57a0 OSYSTEM: Add backendInitialized() function
Some feature, such as mutexes, are only available once the backend
has been initialized. This new function can be used to avoid using
those feature too early or too late.
2018-10-14 21:25:02 +01:00
Filippos Karapetis 7f83640894 SCI32: Add a game option to double the videos in KQ7 by default
Scaling works correctly with the Windows variant, which uses AVI files,
but the DOS variant uses Robot videos, and the way scaling is done
there is different, and is not working yet with KQ7 DOS. Nonetheless,
both versions are included in the game, so it's not a major issue.
2018-09-01 13:14:38 +03:00
David Fioramonti 51c11efbbc COMMON: Cos/Sin Table switch internal structure so at() is faster
A new internal table has been added so that no if checks need to
be performed for the at() lookup.

The old table can still be accessed using getTable or atLegacy().

at() and atLegacy() return the same values, but at() is faster.
2018-08-25 23:51:40 +02:00
David Fioramonti cf99bb0a5e COMMON: Update RDFT and DCT cos/sin table constructor usage
When the constructor for the cos/sin table was changed from
number of bits to number of points all usages thoughout the
code should of been changed, but this was missed in RDFT and DCT.

Fixes Trac#10683.
2018-08-25 23:50:07 +02:00
Ľubomír Remák 0e90d6eae3 MUTATIONOFJB: Use advanced detector. 2018-08-25 23:12:01 +02:00
David Fioramonti da57cef0c3 COMMON: FFT update cos/sin table constructor change
They now take in the size rather than the power of 2 exponent.
2018-08-18 16:30:57 +02:00
David Fioramonti 9cfc70e7fe COMMON: allow cos/sin number of points to be more flexible
Previously, the cos/sin table had to be a power of 2, but there
are many use cases where the number of points is not necessarily
a power of 2 so this change the constructor so it now takes
in the number of points rather than the number of points as the
exponent of a power of 2.

The restriction is that the size must be divisible by 4.
2018-08-18 16:30:57 +02:00
Cameron Cawley 4016cffd7a COMMON: Make strdup a forbidden symbol 2018-08-18 16:30:05 +02:00
Cameron Cawley 7a437e909c COMMON: Move new_strdup to common/str.cpp 2018-08-18 16:30:05 +02:00
Andrei Prykhodko 47130eceb3 COMMON: changed code page constant name from ascii to utf8 2018-08-05 22:50:42 +03:00
Andrei Prykhodko ca54a72072 COMMON: made code pages conversion arrays static and constant 2018-08-05 21:57:36 +03:00
Andrei Prykhodko 9948b2452f COMMON: named CodePage enum 2018-08-05 21:53:31 +03:00
Andrei Prykhodko 62c250a8be COMMON: added method to convert text from various code pages to Unicode 2018-08-05 20:32:25 +03:00