213 Commits

Author SHA1 Message Date
elasota
649dfb8a31 IMAGE: Use readMultipleLE in AniDecoder parser 2024-04-01 08:32:52 +03:00
elasota
d58254b3e9 IMAGE: Fix wrong defines in ICO/CUR/ANI loader 2024-04-01 08:32:52 +03:00
Matthew Jimenez
ee5ebec7ca IMAGE: Remove palette start from image decoder.
The palette start value was always zero, adding complexity without benefit.
2024-03-31 23:16:59 +03:00
elasota
26c054e0c5 IMAGE: Add support for loading CUR and ANI files 2024-03-31 14:39:28 -04:00
neuromancer
be73c89bc1 IMAGE: SCR: tweaked palette to match real hardware 2024-03-23 14:30:26 +01:00
never
3dfb5efbfe IMAGE: PICT: Added rowbytes checking if there is lack of PixMap headers
This fixes rendering for certain PICT files, for example
for opcode 0098 http://cd.textfiles.com/fantaziasampler/CLIPART/PCT/FC19.PCT
for opcode 0099 https://github.com/nevernever69/PICT_FILES/blob/main/pict-2000.dat
for opcode 009A https://www.fileformat.info/format/macpict/sample/ec987832ed03482aa788f99677e06e84/download
for opcode 0090 http://cd.textfiles.com/fantaziasampler/CLIPART/PCT/FC10.PCT
for opcode 0091 https://github.com/nevernever69/PICT_FILES/blob/main/pict-1001.dat
and for testing this files use hardcoded palette
2024-01-02 00:55:25 +02:00
Cameron Cawley
5b1b14ad80 COMMON: Mark more symbols as const 2023-12-26 20:23:59 +01:00
Eugene Sandulenko
ff6c4424bd
IMAGE: Added PackBitsRgn and BitsRgn opcodes to PICT decoder
Used in SCUMM Mac GUI
2023-12-26 17:52:52 +01:00
neuromancer
883e96e3dc IMAGE: moved neo decoder from freescape to image 2023-11-18 22:12:23 +01:00
neuromancer
b87e4b635b IMAGE: moved scr decoder from freescape to image 2023-11-18 22:12:23 +01:00
sluicebox
0446cac990 IMAGE: Fix memory leak in Cel3DODecoder on error. PVS-Studio V773 2023-10-30 11:28:13 -07:00
Cameron Cawley
b458cedca4 IMAGE: Speed up 16/24/32bpp BMP decoding 2023-05-14 22:53:33 +02:00
Miro Kropacek
67aea06893 IMAGE: Fix MSRLEDecoder if pitch > width
Fixes #14356.
2023-05-14 22:41:41 +02:00
Thierry Crozat
d2d564125d IMAGE: Add missing override keyword for setOutputPixelFormat 2023-04-05 22:24:46 +01:00
Cameron Cawley
9a6897a852 IMAGE: Allow the default pixel format to be changed for YUV codecs 2023-04-05 12:45:13 +02:00
Cameron Cawley
78faa2ae28 IMAGE: Defer creation of surface until decodeFrame() is called in Indeo codecs 2023-04-05 12:45:13 +02:00
Cameron Cawley
71030e2840 IMAGE: Use the screen pixel format by default for the Xan decoder 2023-03-24 21:34:16 +01:00
Cameron Cawley
7a05a2d709 GRAPHICS: Add an XBM decoder 2023-03-05 21:18:36 +01:00
Cameron Cawley
fe27708438 IMAGE: Add getTransparentColor() to the base ImageDecoder class 2023-03-05 21:16:43 +01:00
Eugene Sandulenko
6ee213d472
IMAGE: CODECS: Add override keyword 2023-03-03 23:23:49 +01:00
elasota
5d1a0bce78 IMAGE: Mark V-Cruise as using JPEG 2023-02-24 18:22:36 -05:00
Cameron Cawley
d503d5530e IMAGE: Compile the TrueMotion codec when the Testbed engine is enabled 2023-02-23 11:57:49 +00:00
Cameron Cawley
8da9cca186 IMAGE: Add override keywords for all codecs 2023-02-23 11:23:21 +00:00
Cameron Cawley
ce9d324a72 SURFACESDL: Fix crash when saving screenshots in paletted screen modes 2023-02-07 23:42:42 +01:00
Martin Gerhardy
5fc73620a4 TWINE: show dotemu splash screen 2023-01-17 06:28:45 +01:00
grisenti
aa52aafe81
IMAGES: force alpha decoding for BMP images 2022-12-23 14:03:35 +01:00
Paweł Kołodziejski
de03b0de95
IMAGES: Added comments describing use case for CMYK color space format 2022-12-23 14:03:34 +01:00
Paweł Kołodziejski
90e62871c2
IMAGES: W/A to allow pass JPEG with 4 components as RGBA. 2022-12-23 14:03:34 +01:00
Cameron Cawley
28d7b361ea COMMON: Move more file format code into common/formats 2022-12-11 22:33:23 +01:00
Cameron Cawley
0581301b24 COMMON: Move huffman.h back out of the compression directory 2022-12-11 22:33:23 +01:00
elasota
cc11b531e3 JANITORIAL: Clean up all non-engine Visual Studio warnings. 2022-12-04 00:08:48 +01:00
Eugene Sandulenko
fb7095f5a4
COMMON: Move all compression-related files to a separate directory 2022-12-01 11:53:02 +01:00
Torbjörn Andersson
1ae0fe2d1e GRAPHICS: Assume PICT are version 2 by default
The version number decides if opcodes are 1 or 2 bytes, but we don't
know for sure which it is until the first opcode has been handled. But
the way the o_versionOp1 opcode is defined, we should recognize it it
regardless, so going from assumed version 2 to confirmed version 1
should be no problem. I do not have any test case to confirm this,
though.

What I do know is that going from assumed version 1 to confirmed version
2 does not work, so we want _version to be well defined (even if wrong)
from the beginning.
2022-11-22 07:10:20 +01:00
Le Philousophe
32bd7cf446 IMAGE: Add missing initializer to HNM6 decoder
This clears static analysis error
2022-09-18 12:12:02 +02:00
Le Philousophe
5e2c6720a7 IMAGE: Cleanup HNM6 decoder 2022-09-18 12:11:44 +02:00
Le Philousophe
cf61337968 CRYOMNI3D: Build fixes in HNM6 and APC decoders 2022-08-30 11:43:06 +02:00
Le Philousophe
399e02e2a5 CRYOMNI3D: Add HNM6 image and video codec
This also adds a Cryo APC decoder in shared code.
2022-08-30 11:02:32 +02:00
Cameron Cawley
47755b4b38 COMMON: Make better use of inlining in BitStream functions 2022-08-28 00:05:31 +03:00
Eugene Sandulenko
e5f558f2dc
IMAGE: Hid debug ouptut deeper and improve wording 2022-07-09 13:35:55 +02:00
Misty De Meo
de6e966c38 GRAPHICS: IMAGE: clean up build warning 2022-07-04 21:13:54 +03:00
Pragyansh Chaturvedi
846f9e2479 GRAPHICS: IMAGE: Add version identifier for PICT, Implement o_clip function 2022-07-04 19:37:30 +02:00
Donovan Watteau
5b1ec56f96 JANITORIAL: Fix some lost or outdated URLs in comments 2022-05-19 07:57:31 +03:00
Thunderforge
fd129ebc0c JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).

Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
kevinlaurier
84a17ad9ae IMAGE: Added support for 16 bit bitmap images, and check for RGB555
format
2022-01-23 21:38:33 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Martin Gerhardy
ad3aba1908 TWINE: added support for lbashow 2021-11-30 15:40:48 +01:00
Orgad Shaneh
7a4e5612de JANITORIAL: Replace new[]/memset with new[]()
Mostly done using the following Ruby script:

(Dir.glob('**/*.cpp') + Dir.glob('**/*.h')).each do |file|
  s = File.read(file, encoding: 'iso8859-1')
  t = s.gsub(/(([\w_.\[\]]+)\s*=\s*new\s+\S+?\[[^\]]+?\](?!\())([^\{\}]*?)\n\s+memset\(\s*\2\s*,\s*0\s*,[^;]*;/m, '\1()\3')
  if t != s
    File.open(file, 'w') { |io| io.write(t) }
  end
end
2021-11-10 19:53:15 +01:00
sluicebox
620dc8a1df IMAGE: Fix BitmapRawDecoder constructor regression
Fixes parameter order mismatch between definition and declaration
introduced in: 5d093e725fd6832280d0865abdb685e41bf3efda

Fixes flipped QFG4 intro movie, bug #13059
2021-11-04 00:46:46 -05:00
lb_ii
75b8735b57
IMAGE: Load BMPs with any v1-v5 header 2021-11-01 16:26:23 +02:00
lb_ii
236be25624
IMAGE: Parse 4bpp BMP files 2021-11-01 16:26:19 +02:00