Commit Graph
116 Commits
Author SHA1 Message Date
PushmePullyu 13b7608492 AGS: Replace local static "last_cutscene_script_pos" with field
Fixes #15015
 "AGS games lead to a reproducable crash on exiting ScummVM"
2024-03-18 12:39:59 +01:00
wyatt-radkiewicz e416492a06 AGS: Now engine can detect AVX2 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz 6c353ba72b AGS: Use main SIMD detection features 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz 29a0903e5b AGS: Holding off PowerPC blitting optimizations
I'm taking GSOC in a slightly different direction. I will finish the
PowerPC blending/blitting optimizations, but first I'm going to focus
on the general Graphics::Surface and Graphics::ManagedSurface code for
now.
2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz f53e39bac4 AGS: Fixed last commit 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz bdbceeb674 AGS: Fixed PowerPC code not compiler under GCC 6.59.21 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz ff72736c49 AGS: PowerPC Altivec: initial support 2023-08-28 21:16:42 +02:00
wyatt-radkiewicz ace1a346cc AGS: Finished SSE2 blending optimizations
Finished writing the code in surface_simd_sse.cpp. I also added a backup
option in case no processor simd extensions are found. In that case it
just defualts to the normal drawInnerGeneric. I also made
drawInnerGeneric a bit faster by moving certain things into compile
time. Tests were changed to also include SSE2.
2023-08-28 21:16:42 +02:00
wyatt-radkiewicz 45f093f4be AGS: Fixed SSE2 detector and unoptimized draw. 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz 0d29563122 AGS: Started on SSE version 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz b177d382b6 AGS: Moved arm neon bitmap code to new file. 2023-08-28 21:16:42 +02:00
Wyatt Radkiewicz 673cb4d659 AGS: Optimizations turns off if SSE is not found. 2023-08-28 21:16:42 +02:00
Thierry Crozat e4be1e25dc AGS: Remove std::numeric_limits replacement
As per bc6b225eed, we can use std::numeric_limits
directly.
2023-06-05 20:18:16 +01:00
Thierry Crozat fe80834639 AGS: Store DialogTopics in std::vector
From upstream 2609c0d1ee43a4f997021ce48ca2a4f70ca1a6c7
2022-06-20 23:52:25 +01:00
Thierry Crozat b948d94ce2 AGS: Implemented dialog_options_close callback
From upstream 88cb130d1063bf5268bbcae29ffaae37324f5a30
2022-06-19 00:46:56 +01:00
Thierry Crozat 74416f547f AGS: Removed redundant arrays keeping copies of obj script names
From upstream f0887ba798b9df7aa70125b432efd5d62c64a622
2022-06-15 22:13:02 +01:00
Paul Gilbert 4d15fc94c8 AGS: Refactor ScummVM GfxFilter from being static global 2022-05-31 21:04:19 -07:00
Paul Gilbert b47407e804 AGS: Fix shadowed StringMap warnings 2022-05-31 18:35:39 -07:00
Paul Gilbert 7282304951 AGS: Script API: implemented room overlays
From upstream 65a7cd7e7566d3a1111be10b70dcb51b1853cd88
2022-05-06 20:16:42 -07:00
Paul Gilbert 97c12e8435 AGS: Merged Character and ObjectCache structs, and hid in draw.cpp
From upstream 753d47d975b10666702c47a22cbc4e68847787f1
2022-05-05 22:41:09 -07:00
Paul Gilbert a40ea44aa2 AGS: CharacterCache is stored in std::vector, hide in draw.cpp
From upstream 417879fce0dc27d458a73fedc20f311f3305f26f
2022-05-05 22:41:08 -07:00
Paul Gilbert 6482e38803 AGS: CharacterExtras and MoveLists are stored in std::vector
From upstream 0c81cfefb788c0dcfdb2cad914f939f28110edca
2022-05-05 22:41:08 -07:00
Paul Gilbert 8e132f7b3f AGS: cc_error returns stack from all script threads
From upstream 9e76800d668d8d0af7d47d815e6d1b781c7601f6
2022-05-05 22:41:07 -07:00
Paul Gilbert 16d0d89787 AGS: Grouped ccError variables in a struct
From upstream 48ef387226e4d420dc62d0a0b204cf4cd89a1139
2022-05-05 22:41:07 -07:00
Paul Gilbert a2a5f2575d AGS: Reorganized few cc_ headers
From upstream ea1f8b9ece69fc7c49c4d3aa7b9af51c4ca736e5
2022-05-05 22:41:07 -07:00
Paul Gilbert 480be2134b AGS: Added script instance thread stack, replacing current_instance
From upstream f3443cb7a4ae5858e5d2d28131aaf6cf138bc0ec
2022-05-05 22:41:06 -07:00
Paul Gilbert 8e4254b839 AGS: Refactored walk-behinds calculation and texture generation
From upstream ac0c4cea6a6e41238fe74f0753fa6a458f05d954
2022-05-05 22:41:05 -07:00
Paul Gilbert 830c1b096b AGS: introduced ObjTexture struct which combines bmp and ddb
From upstream b628fb4d1b3ca6a85e2b2424a468f4cec94ae9c6
Also includes new implementation of std::vector class to
properly allow for arrays of smart pointers
2022-05-05 22:41:05 -07:00
Paul Gilbert 4cd0ca9a27 AGS: Removed DrawAsSeparateCharSprite walk-behind method
From upstream e075376fd42c95ea2399809b7cc492cbc116b0db
2022-05-01 17:23:25 -07:00
Paul Gilbert 87994139f6 AGS: Tidied gui drawing code a little
From upstream c1bb2fb846c8ffe997ce2c1dda690467bc28edc4
2022-05-01 17:23:24 -07:00
Paul Gilbert b2d5b6e586 AGS: Implemented Overlay.Width & Height working as scaling
From upstream 3a27e81a710a1c3de4b745d84dca39554dc64385
2022-05-01 17:23:24 -07:00
Paul Gilbert a476850123 AGS: Calculate visible graphic size of gui controls for textures
From upstream a91bec5f3fa7f37187a084cabd0ab2289e609a6e
2022-05-01 17:23:19 -07:00
Paul Gilbert c768b94cf6 AGS: Draw GUI Controls on separate textures
From upstream 5cbe36626842ddd900cbda8fd4b6ddfc3804456f
2022-04-29 22:20:41 -07:00
Paul Gilbert 1ba7d8435f AGS: Scale debug overlays when necessary
From upstream cbbf2a0f8344fa4a5f7d91de927636c208bc446d
2022-04-27 20:25:25 -07:00
Paul Gilbert e0282d5064 AGS: Implemented key handling switch (old/new mode)
From upstream b9e23731d0d792d095c1d4e83fa1797a1afeee46
2022-04-21 20:55:38 -07:00
Paul Gilbert 09da0fbf5d AGS: Implemented dialog_options_text_input(int chr) callback
From upstream 76db49c6189810faa467b00c1aef9e78c526876d
2022-04-18 19:10:39 -07:00
Paul Gilbert 8be58d3de2 AGS: Store game events in std::vector, remove event cap
From upstream a2f9a5ba94377686762b2828df4fccbe661d2b03
2022-04-18 19:10:29 -07:00
Paul Gilbert aeddd232e0 AGS: Removed animating buttons limit
From upstream 484f6d3f44c7dbb361ddeebd8bb46862760501bc
2022-04-13 21:55:18 -07:00
Paul Gilbert 106622d44c AGS: Removed "scaling factor" from the FrameScaleDefinition struct
From upstream b2a4e98ecdd8cfd1d8e42ab32f6f337af60e5a68
2022-03-21 22:08:04 -07:00
Paul Gilbert 3ca1db4cd8 AGS: Fixed engine shutdown could try to access unallocated objects
From upstream 1b43aeb3051c8e41811dff19d7630584d8f871b3
2022-03-21 20:30:33 -07:00
Paul Gilbert a3dda03cf1 AGS: Store Views in std::vector
From upstream 095db88ae0f1acceb298f793a2e1b81dbe06fcff
2022-03-18 21:29:56 -07:00
Paul Gilbert 3167bac67b AGS: More clear use of the "max channels" constants
From upstream 2fd582a2a5fc9d38643277903854a977f8995e07
2022-03-17 21:49:25 -07:00
Paul Gilbert ea65fe3c69 AGS: Moved SpriteFile class to a separate code unit for convenience
From upstream 393ef2c24bbc835d8e7a7229d40f638a6f172304
2022-03-17 21:49:22 -07:00
Paul Gilbert 6bf83c7f39 AGS: Removed Overlays' arbitrary limit
From upstream 735dcfb14069b38aace4cef9468d44b63349d1bd
2022-03-15 22:28:36 -07:00
Paul Gilbert 255a739eca AGS: Encapsulate game object draw caches in draw.cpp
From upstream e04ebc0039580faf017ceb0acbeeab975bf44fcc
2022-03-14 21:04:09 -07:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Paul Gilbert d450abb40b AGS: Properly destroy platform driver on exit 2021-08-20 20:36:55 -07:00
Paul Gilbert 304d82a9ba AGS: Fix writing uninitialized data to savegames 2021-07-24 11:45:26 -07:00
Paul Gilbert b38d1c3e6c AGS: Fix crash when starting games with multiple plugins 2021-07-18 21:19:29 -07:00
Paul Gilbert 14b53d9a9e AGS: Moved plugins globals into Globals 2021-07-18 17:07:02 -07:00