We were passing an empty palette to blit, causing
black screenshots for example in Trilby's Notes.
Screenshots seemed to be working already in some
other games, such as Black Cauldron, and I have
no idea how.
The allegro set_palette_range includes both the first
and last indexes passed, but we were excluded the last
index, which means we copied one less color than we
should. This was well visible in Trilby's Notes right
from the start of the game.
This function is used to list files that match a given pattern.
For example Kathy Rain uses it to list ./*.tra files. The
original engine uses al_findfirst() and al_findnext().
This fixes listing the available languages in the Kathy
Rain in-game options.
AGS uses agssave.xxx for its savegames, and it was already
changed to use the gameid in ScummVM, except when this is
called from scripts. Some games, such as If On A Winter's
Night Four Travelers, access savegames from scripts and
those are now mapped to ScummVm names. This solves the
missing Continue menu on the start screen for IOAWN4T
when we already saved the game.
Some games also save additional files in the save game
directory, and they can have generic names such as
'playersettings.dat', or 'user.cfg', and since we use
the same savegame path for all games, to avoid any
conflict we now prepend the game target name to all the
files created or read from there.
Fixes reading settings from game.opt in HOYLE5, where most strings
begin with spaces. SSCI called atoi() which handles this, and so did
we, until it was changed during a large refactor in
3f9172676526aa04983f148d1262af6ea9fb53ef
This fixes missing actors in some games, such as Blackwell
Deception (on the boat deck where the actors are scaled to
90% or their original size).
The issue was that Allegro has defines to indicate which color
depth are available, and we removed those. But they are used
in the antialiasing code.
The main changce is that create_bitmap() now uses the current
get_color_depth(), as it is supposed to (according to the Allegro
documentation).
Also it remove cases where the surface could be created without the transparent color.