Commit Graph

138672 Commits

Author SHA1 Message Date
Paul Gilbert
14715b4a59 MM: XEEN: Remove deprecated StringArray class 2023-02-10 22:33:29 -08:00
Paul Gilbert
a3550a9cb0 MM: Create common engine base engine class 2023-02-10 22:33:29 -08:00
Paul Gilbert
a05dfc9cd8 MM: Starting to separate out shared code 2023-02-10 22:33:29 -08:00
Strangerke
69945fa9fa EFH: reduce sound lengths 2023-02-11 01:31:11 +01:00
Matthew Jimenez
a178a6771e ULTIMA8: Fix #14031 - ignore transparent non-solids when tracing items. 2023-02-10 17:31:47 -06:00
Eugene Sandulenko
39f1b97fb9
GRAPHICS: MACGUI: Clean up "-Regular" prefix from the loaded MacFonts
Usage is in mcluhan quirk where we load font named "McLuhan-Regular"
2023-02-10 23:51:14 +01:00
Eugene Sandulenko
84806157d1
DIRECTOR: Added font loading quirk for mcluhan-mac 2023-02-10 23:51:14 +01:00
Eugene Sandulenko
4d244d431f
COMMON: Added helper method for dumping Common::Archive contents 2023-02-10 23:51:13 +01:00
Eugene Sandulenko
1039667a08
JANIRORIAL: Reduce header dependency 2023-02-10 23:51:13 +01:00
AndywinXp
6f01cfd9a5 SCUMM: Remove very ancient commented code
If I'm not mistaken was used as a workaround back then when the MI2 difficulty
screen wouldn't show up; after some time it had been commented out, and it
remained like that ever since. Thanks to einstein95 for pointing that out!
2023-02-10 21:56:47 +01:00
Eugene Sandulenko
980e927e57
GRAPHICS: MACGUI: Warn about incorrect winfont sizes used as a substitute
Used by mcluhan-win that has 3 fonts bundled with it.
2023-02-10 20:59:30 +01:00
Eugene Sandulenko
e663f0d3ba
DIRECTOR: Remove now unneeded quirk for mcluhan-win 2023-02-10 20:59:15 +01:00
Eugene Sandulenko
5c3586bd67
DIRECTOR: Fix makePathRelative() with directories 2023-02-10 20:59:15 +01:00
Eugene Sandulenko
6440de5ee4
DIRECTOR: Added indentation to the pathMakeRelative() debug output 2023-02-10 20:59:15 +01:00
Eugene Sandulenko
8db30fce73
DIRECTOR: Convert path before making it relative.
That will make sure that Windows disk references will be cleaned up.

Used in mcluhan-win startup where it calls getNthFileNameInFolder("C:\prefs\Notes", 1)
2023-02-10 20:59:14 +01:00
Eugene Sandulenko
9a353d71b6
DIRECTOR: Fixed quirk for mcluhan-win 2023-02-10 20:59:14 +01:00
Eugene Sandulenko
0e38160996
DIRECTOR: LINGO: Implementing setting 'the searchPath' entity
Used in the first movie script of mcluhan
2023-02-10 20:59:14 +01:00
Eugene Sandulenko
4cc5b9e4d8
DIRECTOR: Added more debug ouput to quirks 2023-02-10 20:59:14 +01:00
Lothar Serra Mari
2dc4c71f1f NEWS: Update German NEWS file 2023-02-10 20:07:40 +01:00
Donovan Watteau
8db5697ec6 NEWS: Mention some changes of mine and don't spoil Monkey2 2023-02-10 14:34:14 +01:00
Donovan Watteau
f54ad432d1 DOCS: DC: Tell users that SCUMM v7+ is not expected to work at all
See PR#4693 and Trac#6008 for more context.
2023-02-10 14:03:30 +01:00
Le Philousophe
361a525dc1 LASTEXPRESS: Fix build
Rename macro as there is now a name clash with SearchSet::getArchive
2023-02-10 08:50:11 +01:00
Paul Gilbert
5ee4a2d268 MM: MM1: Add enhanced mode main menu 2023-02-09 22:01:10 -08:00
Misty De Meo
e7917c5bb7
DIRECTOR: add another game 2023-02-09 19:00:24 -08:00
Eugene Sandulenko
6f3ad342cd
DIRECTOR: LINGO: Mix in files from quirks cache to the getNthFileNameInFolder() built-in 2023-02-10 01:23:31 +01:00
Eugene Sandulenko
b7b5ece6b5
COMMON: Added possibility to query archive from SearchSet 2023-02-10 01:19:34 +01:00
Eugene Sandulenko
e5c1ef3fbb
DIRECTOR: Fix regression from 48740a2ad1
The color values went inverted, but in several places they left
untouched.

In general, it is not a good idea to have this hardcoded, but at least
now we have this addressed.
2023-02-10 00:53:38 +01:00
Thierry Crozat
3bd0dbe619 AGS: Improve pixel format selection
The engine is capable of rendering to any 16 bit or 32 bit format,
but the format conversion has a cost. This commit assumes that any
conversion that the backend may need to do would be at least as
efficient as the conversion that would be done in the engine, so
we select the best format for the engine that is supported by the
backend. There are three categories of formats:
1. The one used internally by the engine. When also used for the
backend we can do direct rendering.
2. For 32 bit games, two additional formats for which there is
an optimized color conversion.
3. Any other 16 bit or 32 bit pixel format, for which we have
generic color conversion.

Profiling with two games shows the following improvments:
 - If we can use the internal engine format, we gain between 3%
   and 5% compared to the next best formats, and between 11% and
   14% with other formats.
 - Otherwise if we can use the next best formats we still gain
   between 6% and 11% over other formats.
2023-02-09 23:31:39 +00:00
Lars Sundström
4dc9c876fd IOS7: Add support for 32 bit pixel formats
This enables some game engines only supporting 32 bit color formats,
e.g. 11th hour and Broken Sword 2.5.

Add support for the pixel formats RGBA8888 and ABGR8888. The pixel
formats are defined in big endian while iOS utilizes little endian,
thus requiring converting some formats to get correct color
representation.

Use the Apple Accelerate framework converting the format requiring
to minimize the CPU load since this is done every frame.
2023-02-09 22:52:11 +01:00
Lars Sundström
0d03655605 CREATE_PROJECT: Add Accelerate framework to iOS and tvOS
Add Apple Accelerate framework to iOS and tvOS targets. The framework
utilizes NEON extensions on the ARM chip to accelerate calculations.
This will come to use when processing texture data.
2023-02-09 22:52:11 +01:00
Paweł Kołodziejski
c4686ee84c
TINYGL: Rename copyToBuffer to copyFromFrameBuffer 2023-02-09 07:31:09 +01:00
Paul Gilbert
a6da9e4906 MM: MM1: Fix showing character list from main menu 2023-02-08 21:12:12 -08:00
Paul Gilbert
ab010dc09d MM: MM1: Allow Select action to start title slideshow 2023-02-08 20:20:04 -08:00
Paul Gilbert
9b3b00b598 MM: MM1: update remaining views to use Escape/Select actions 2023-02-08 19:43:59 -08:00
Paul Gilbert
779a1c76ea MM: MM1: Handle escape/select actions in messages view 2023-02-08 18:49:40 -08:00
Cameron Cawley
72f80d6bd5 NEWS: Move the RISC OS news for v2.7.0 into the correct section 2023-02-08 19:58:50 +00:00
Lothar Serra Mari
538c49c01e NEWS: Mention RiscOS 26-bit support in German NEWS file 2023-02-08 20:45:28 +01:00
Cameron Cawley
3e1b1dc2b0 DOCS: Fix formatting in the tvOS documentation 2023-02-08 19:16:18 +00:00
Cameron Cawley
eb9efa9bed DOCS: Update the RISC OS documentation 2023-02-08 19:09:06 +00:00
Cameron Cawley
35a9e0b05e NEWS: Mention 26-bit RISC OS support 2023-02-08 19:07:21 +00:00
Paul Gilbert
4b9737a497 MM: MM1: More Select keybind action handling 2023-02-08 07:56:02 -08:00
Paul Gilbert
03895d242e MM: MM1: Adding a Select keybinding action 2023-02-08 07:56:02 -08:00
Scott Percival
dd0f31ada1 DIRECTOR: LINGO: Fix parsing 'go"framename"'
The lexer originally had a rule mandating that "go" was followed by a
space, with an optional "to" afterwards. The rule has been changed so
that "go" can be immediately followed by a string.

Fixes the script compilation error on the second screen of Wrath of the
Gods.
2023-02-08 13:30:58 +01:00
Scott Percival
eb10a139be DIRECTOR: Rework enterFrame invocation to match tests
In D3, when "go to" is invoked in a Score script, the context is frozen
and "on stepMovie" is called, then the frozen context is finished, then
the next frame's Score script gets called with an "enterFrame" event.

In D4, you're allowed to freeze and recurse "enterFrame" scripts to a
depth of 2; any deeper and "enterFrame" events will no longer be thrown.

Fixes Lingo freeze recursion loop in Wrath of the Gods.
2023-02-08 13:30:58 +01:00
Scott Percival
eb2f3db2af DIRECTOR: Cap the number of recursive 'on enterFrame' calls in D4 2023-02-08 13:30:58 +01:00
Scott Percival
32b878b694 DIRECTOR: Attempt to unfreeze scripts more often
Score::update() has several branches that quit early, e.g. if the frame
is waiting for a click or a sound. All of these should try to unfreeze
any contexts that are waiting.

Fixes opening the inventory screen in Hell Cab.
2023-02-08 13:30:58 +01:00
Scott Percival
e2053c51ab DIRECTOR: Add event breakpoints to debugger 2023-02-08 13:30:58 +01:00
Scott Percival
5d408bb9e9 DIRECTOR: Only redither 8-bit images in Director 4 and up.
Director 4 has a cast member field to set a palette for a bitmap. If
this field differs from the current movie palette, Director will try and
do nearest-neighbour colour remapping of the bitmap to the movie palette.

Director 3 and below have a cast member field to set a palette for a
bitmap, but it doesn't appear to be used for rendering. You can have an
entirely different palette set there, and it will ignore it and use the
movie palette instead.

Fixes the inventory bar icons in Hell Cab.
2023-02-08 13:30:58 +01:00
neuromancer
8f5fb5bb48 FREESCAPE: load some? global objects in dark for dos (and demo) 2023-02-08 08:53:15 +01:00
Paweł Kołodziejski
b98a8d4383
TINYGL: Normalize decimal values for color and normal array arguments. 2023-02-08 06:49:34 +01:00