When loading bitmap cast members from a file, Director will keep an
copy of what palette the image uses. However the order of colours in
the image's own palette can be completely different!
It appears that at load time, Director will remap all of the colours in
the image to match the order in the palette cast member. As such, we can
force a remapping for those external cast members using the existing
dither code.
Fixes the colours in Cat The Ripper.
The Director editor supports importing images from a variety of image
formats, which it then converts. There is also the option for linked
bitmap cast members (i.e. using image files on the disk), which have a
much more restricted subset of formats. As of Director 4, this list
includes Windows Bitmap files, and anything supported by the Apple
Picture Viewer (i.e. any possible encoding of PICT, and JPEG images).
File extensions are ignored, so we use some basic magic number checking to
determine which ImageDecoder class to use.
Fixes viewing the manifesto pages in DEVO Presents: Adventures of the
Smart Patrol.
This allows opening the launcher after running a command line command,
such as --add. The main use for this would be for backends to be able
to easily add games from a folder on launch.
The idea here is that we can package a game in a custom bundle using
the scummvm executable, and use the game name as bundle name. It will
then use its own config and log files rather than share the ones from
the standalone ScummVM app.
This allows backeds to override a keymap action mapping with lists of mapped hardware inputs instead of just one hardware input id
However, it will still be an overridding, so it will require all hardware input ids for a given keymap action to be added.
In other words, if a backend uses addDefaultBinding() for a given action, it will not ADD to any existing mappings of the action,
other than the ones that the backend itself has added (with addDefaultBinding())
Those codes are always preceded by a o1_drawOperations/o1_goblinFunc, whose offset is already printed. That way, we only print offsets at the beginning of an OpcodeFunc, which helps mirroring our debug traces with "degob" output from scummvm-tools.