22 Commits

Author SHA1 Message Date
Kaloyan Chehlarski
654879f507 GRAPHICS: Fix Multiply blending in NEON path
This fixes the color bleeding issues that previously happened
when using Multiply blending (e.g. Out of Order intro)
2023-11-14 12:05:27 +02:00
Cameron Cawley
c878250662 GRAPHICS: Add functions for blitting with transparent masks 2023-11-10 14:36:55 +01:00
Cameron Cawley
94569762cd GRAPHICS: Share code between the generic and SIMD blending functions 2023-10-29 00:56:58 +02:00
Cameron Cawley
b1863032d4 GRAPHICS: Split BlendBlitImpl_Default into a separate file 2023-10-29 00:56:58 +02:00
Cameron Cawley
9f7b9b4f3a GRAPHICS: Unify common SIMD code for alpha blending 2023-10-29 00:56:58 +02:00
Kaloyan Chehlarski
b0de3e786c GRAPHICS: Fix AVX2 path for MultiplyBlend
Applies the same fixes to multiply blending in the AVX2
optimized path that were previously applied to the SSE2 path.
Namely, alpha blending and colors now both blend correctly
2023-10-22 00:25:56 +03:00
Kaloyan Chehlarski
0d0aa24df3 GRAPHICS: Allow AVX2 optimized blit path to build
The way the SIMD blitting paths were previously organized
ensured that the AVX2 one would never actually build. This
commit separates the different implementations into
classes with differing names, ensuring the shadowing
cannot occur.
2023-10-22 00:25:56 +03:00
Kaloyan Chehlarski
c82dd21fa7 GRAPHICS: JANITORIAL: Convert spaces to tabs 2023-10-22 00:25:56 +03:00
Kaloyan Chehlarski
b115d8d019 GRAPHICS: Fix SSE2 path MultiplyBlend
The multiply blender in the SSE2 optimized path for
TransparentSurface blitting no longer produces wrong
colors and incorrect alpha blending.
2023-10-22 00:25:56 +03:00
Filippos Karapetis
ca36ea9403 GRAPHICS: Fix typos 2023-10-16 17:31:30 +02:00
Cameron Cawley
34d04a76cb GRAPHICS: Support 3bpp destinations using crossBlit functions 2023-10-16 17:31:30 +02:00
Miro Kropacek
dcab5d3369 CONFIGURE: Add support for m68k-atari-mintelf
This is basically the same as m68k-atari-mint host os but with a
different compiler/file format.
2023-09-24 17:48:54 +02:00
Eugene Sandulenko
94755eb838
BUILD: MACOS: Fix building with NEON enabled 2023-09-03 22:47:00 +02:00
Lars Sundström
e60db69c41 GRAPHICS: Add SCUMMVM_NEON prepreocessor flag to blit-neon.cpp
The blit-neon.cpp file is only added to the project if the flag
SCUMMVM_NEON is defined. However some backends, e.g. iOS, adds the
definition of SCUMMVM_NEON in create_project so the file can be
added to the project during configuration.
The same backend can then unset the definition due to changing
build target, the iOS simulator in this example, which runs can
run on x86_64 hosts which doesn't support NEON.

Since the project still include the source file it will be compiled.
Make sure to not build the file if not SCUMMVM_NEON is defined at
compile time.
2023-09-03 22:26:37 +02:00
Miro Kropacek
17f0941878 GRAPHICS: Fix compilation of blit-atari.cpp 2023-08-24 22:42:04 +02:00
Wyatt Radkiewicz
41815c9816 GRAPHICS: Fix BlendBlit additive blending mode 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
9d354fc636 GRAPHICS: Fixing blendBlitTo bugs 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
0597770654 GRAPHICS: Refactor BlendBlit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
66c75ee760 GRAPHICS: Moved SIMD code to new translation unit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
e95cfb4877 GRAPHICS: Fixed indentation in blit files 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
e61fce02c8 GRAPHICS: Fix blend blit indentation 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
975808bac4 GRAPHICS: Moved blit files into graphics/blit 2023-08-13 00:22:10 +02:00