Commit graph

210 commits

Author SHA1 Message Date
Eugene Sandulenko
6a7985cc71
GRAPHICS: Removed graphics/transparent_surface.*. \o/ 2023-10-29 01:44:22 +02:00
Cameron Cawley
b1863032d4 GRAPHICS: Split BlendBlitImpl_Default into a separate file 2023-10-29 00:56:58 +02:00
Eugene Sandulenko
67ab2657d8
GRAPHICS: MACGUI: Split out MacTextCanvas into a separate file 2023-10-24 02:38:17 +02:00
Eugene Sandulenko
ce04c4b309 GRAPHICS: MACGUI: Initial stub for MacText::setMarkdownText() 2023-09-17 00:56:28 +02:00
Eugene Sandulenko
e24ae7f334
BUILD: Simplify CPU checks as suggested by lman 2023-08-28 22:31:37 +02:00
Miro Kropacek
17f0941878 GRAPHICS: Fix compilation of blit-atari.cpp 2023-08-24 22:42:04 +02:00
Le Philousophe
738ff929b4 GRAPHICS: Sort blitting code for Atari with other platform specific 2023-08-16 09:25:33 +02:00
Le Philousophe
a1d97ffbe2 GRAPHICS: Use -mfpu=neon flag only on armv7
aarch64 doesn't need it and it fails to build with GCC when it's present

Enable NEON by default on Android
2023-08-14 00:39:43 +02:00
Le Philousophe
a12c112173 GRAPHICS: Don't set -mfpu=neon
It's not used by the compiler when it works and fails to build on Switch
2023-08-13 11:42:20 +02:00
Wyatt Radkiewicz
1b752d6a62 BUILD: BlendBlit SIMD only compiles when needed 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
41f82fbab8 BUILD: Change wording for AVX2 option 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
0597770654 GRAPHICS: Refactor BlendBlit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
f802ad16d0 BUILD: Simplify SIMD options 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
c45918ea91 BUILD: SIMD flags only enabled on blit-blend.o 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
975808bac4 GRAPHICS: Moved blit files into graphics/blit 2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
eebadf4495 GRAPHICS: Optimize alpha blend NEON and Generic
I optimized the NEON and Generic paths for ManagedSurface::blendBlitFrom
and the new TransparentSurface::blit. Now (on arm), the new blit function
matches the speed of the old blit function even with the added
inderections that the runtime extension detection code adds in.

Other than that, I made a benchmark for this code and you can make it
using this command:
CFLAGS="-DTEST_BLEND_SPEED" make test

I reverted wii to not use altivec anymore since it doesn't.

I also removed graphics/blit-neon.cpp from graphics/module.mk because
simply including the .cpp file in graphics/blit-alpha.cpp was a better
option because then I didn't need to instantiate every version of the
templates that I needed.
2023-08-13 00:22:10 +02:00
Wyatt Radkiewicz
402c67064d GRAPHICS: BlendBlit detects cpu extensions 2023-08-13 00:22:10 +02:00
Harishankar Kumar
e12d3053cc GRAPHICS: Implement macpopupmenu while reusing macmenu
Added functions for menu drawing/selections, this uses the base functions of macmenu to implement mac-styled popupmenu's, also return selected item index/text.

Used by 'Popup Menu' in theapartment: With this changes the popupmenu is working with both item selectors, doesn't implement the icon selector.
2023-05-28 13:50:18 +02:00
Miro Kropacek
76d3706492 BACKENDS: ATARI: Add build scripts
- consolidate public #define's (just ATARI)
- cpu compiler flags are specified in the script
- allow explicit move16, SV and SV Blitter features enabled/disabled

Provide two build scripts:

1. "Fat" one targeted at 040/060 machines (possibly with SuperVidel)

This one is optimized for 68020-60 (so it's still possible to try
highres engines on 68030 machines).

2. "Slim" one targeted at 030 machines (Falcon030+DFB/CT2 or TT030)

This one is optimized for 68030 and stripped from even more features:
"fancy" (highres) themes, move16 & SuperVidel routines and most
importantly the highres engines.
2023-05-10 22:58:26 +02:00
Vladimir Serbinenko
eb2c55fe04 COMMON: Move DOS font from AGI to common
It's useful for Chinese EOB2 as well
2023-04-29 13:37:45 +02:00
Cameron Cawley
f5f445be5f GRAPHICS: Add generic versions of applyColorKey() and setAlpha() 2023-04-09 12:49:23 +02:00
Miro Kropacek
6c5e3dbfd5 BACKENDS: ATARI: Refactor 2023-03-25 21:45:50 +01:00
Miro Kropacek
5ba26fdf35 GRAPHICS: ATARI: Introduce accelerated blitting 2023-03-04 23:38:42 +01:00
Vladimir Serbinenko
a99d59551e GRAPHICS: Add 2x downscaler for CLUT images 2023-02-28 01:58:13 +01:00
Vladimir Serbinenko
47cbf56d94 GRAPHICS: Extract big5 renderer from sky into common graphics code 2023-02-28 00:40:25 +01:00
Cameron Cawley
e7c405f933 TINYGL: Remove unused code 2023-02-02 18:54:14 +00:00
Cameron Cawley
7f2d9fd0fd GRAPHICS: Split conversion.cpp into multiple files 2022-12-22 23:45:14 +01:00
Eugene Sandulenko
8c8b06e908 GRAPHICS: Move PM5544 test pattern drawing to a separate file 2022-10-08 23:39:18 +02:00
Avijeet
ac847e4117 GRAPHICS: MACGUI: Refactor wage/dialog.cpp to macgui/macdialog.cpp 2022-08-05 20:15:03 +02:00
Eugene Sandulenko
5abc6bda81
GRAPHICS: Added palette lookup class 2022-07-03 12:50:06 +02:00
Cameron Cawley
863988fee4 OPENGL: Add proper error checking to the Shader class 2022-06-29 22:37:38 +01:00
Paweł Kołodziejski
cdaec9de8d
TINYGL: Added fog support. 2022-06-05 20:59:38 +02:00
Paul Gilbert
accd508b9c GRAPHICS: Create set of wrapper functions for accessing FreeType directly 2022-03-28 20:29:36 -07:00
Paweł Kołodziejski
4f0e5ed3c0 GRAPHICS: Moved shader code where it's actually used 2022-01-10 03:34:48 +01:00
Paweł Kołodziejski
3dd3e76bc2 BACKENDS3D: Shader code files shouldn't be moved 2022-01-10 02:38:44 +01:00
Paweł Kołodziejski
d1d77f887e BACKENDS3D: Moved Surfaces and Texture specific backend code to backends 2022-01-10 01:21:49 +01:00
Paweł Kołodziejski
0c59f5a673
TINYGL: Moved PixelBuffer to TinyGL 2021-11-27 21:29:02 +01:00
Paweł Kołodziejski
862bd7d05f
GRAPHICS: Move FrameLimiter from engines to common graphics code 2021-10-27 23:11:20 +02:00
Eugene Sandulenko
24596bc806
GRAPHICS: Font class for drawing Amiga Topaz font 2021-04-15 17:45:37 +02:00
Eugene Sandulenko
40018d0882 GRAPHICS: Initial code for SVG rendering 2021-04-11 21:21:44 +02:00
Cameron Cawley
b596ebf8b8 GRAPHICS: Remove use of gBitFormat from the aspect ratio code 2021-03-15 16:48:40 +02:00
Eric Culp
39608f391c SDL,GRAPHICS: Add option for AR correction without scalers 2021-03-15 16:48:40 +02:00
Eric Culp
f172718b79 CONFIGURE: Added configure option for Edge2x-3x scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
c5c5662330 GRAPHICS,SDL: Change oldSrcScale api
More bookkeeping is kept in common scaler code instead of the backend.
Plugins inheriting SourceScaler will have this functionality.

TODO: Some new functions may still be able to be combined to simplify
the API.
2021-03-15 16:48:40 +02:00
Eric Culp
592617e2ce GRAPHICS: Add Edge2x/3x scaler
This currently does not conform to coding standards and contains a lot
of dead code (This will be fixed). Thanks to Eric Welsh for the original
patch.
2021-03-15 16:48:40 +02:00
Eric Culp
267b385890 GRAPHICS: Add 2xPM scaler with 16 and 32 bit support 2021-03-15 16:48:40 +02:00
Eric Culp
3a42496719 GRAPHICS: Remove 1.5x scaler 2021-03-15 16:48:40 +02:00
Eric Culp
a3a9736754 GRAPHICS: Add TV scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
5e73533110 GRAPHICS: Add SuperEagle and SuperSAI scaler plugins 2021-03-15 16:48:40 +02:00