With this change, all exported declarations of Devilution are now
compatible with the C-ABI; that is, all declarations of Source/*.h.
This makes it possible to link against DevilutionX from mods written in
other languages than C++, for instance Rust, Go or Python.
Updates #612.
1. Build in `build-amiga` to have a separate Amiga cmake cache.
2. Place downloaded/built dependcies into `build-amiga/deps` instead of the root directory.
3. Instructions for changing file permissions and stack size.
Co-Authored-By: Anders Jenbo <anders@jenbo.dk>
Skip trailing slash when creating dirs and append it afterwards, as
trailing slash gets treated as '..' on Amiga.
Append /.local/share/ only on UNIX systems.
CharisSILB.ttf doesn't load on Amiga, so use LiberationSerif-Bold.ttf
instead as it is more light weight, CharisSILB.ttf still looks better so
it is keept for systems that can handle it.
1. The palette fade level wasn't set, resulting in black on Amiga.
2. Rendering cleared `pal_surface` instead of `GetOutputSurface()`,
resulting in mouse trails.
Also improves performance by only loading the background / palette once.
Set the video mode close to the SVid resolution while preserving aspect ratio.
Restore the video mode once the video has finished playing.
Also avoids allocating a tmp surface unless scaling.
DiabloUI selconn.cp relies on the enum values to be ordered in the same
way as the UI items (e.g. for keyboard navigation).
This restores the order to what it was prior to:
4e29a4b8aa
jedisct1/libsodium decided not to maintain this, so rebase on
facebookincubator/fizz as that appears to be the defacto upstream now.
There are still a few differences that we should align and hopfully
upstream.