Some versions of Adibou2 are only able to handle one CD at a time. This workaround enable to add Adibou2 applications by copying them as a subdirectory of the game directory, just like in multi-cd-aware versions.
Fixes the "delete character" button in Adibou2
We cannot strip paths for this opcode, as scripts sometimes delete all files in a directory (e.g. "TEMP\*.*", that would have been simplified as "*.*" with path stripping).
Use also full path match for read/write/copy/move operations, to allow distinguishing savegames with same filename under different directories, with a fallback to simple filename matching.
They will just land on the save directory, as other saves, with fix filename "adibou2_drawing_on_floppy_disk".
The use case is to facilitate sharing drawings between different Adibou characters, for example to continue a friend's drawing. In this view, we wrap the full picture and its thumbnail in a same file with a fix filename, so that one need only to move the "adibou2_drawing_on_floppy_disk" file between Adibou2 installations to share "floppy disk" drawings.
"TEMP01.CSA" is actually "weather" file for player1.
The first time, it needs to be copied from "TEMP.CSA" (copy file is now implemented, remove previous workaround)
This should fix bug #3295893.
The intention of this piece of code was to pad the first save slot
name with spaces until it's as long as the longest save slot name,
because the scripts use it to gauge the width of the save list.
Unfortunately, I messed up there, overwriting variable space directly
after the save names. In Urban Runner's case, this would be the list
of inventory items.
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.