It's a 32-bit-access-only heap. On the Ultimate Doom WAD the amount of
data moved is about 17 kiB, which is not a lot, but arrays with 4-byte
elements are not easy to find in Doom.
lumpinfo is now allocated in Z_Malloc because it's needed for some
larger WADs.
More heap is needed to compensate and to support larger WADs fully, so
the unused part of the user stack is added as a second zone.
This makes at least the start of the DOOM Ultimate WAD playable.
The bar takes up a little bit of time too, but I think it's a plus.
Currently it's limited to ~20 frames which is normally < 0.3s. A frame
every fragment is disastrous in comparison (loading time x3 lol).
BFile can now be selected in <platform.h> by defining CGDOOM_WAD_BFILE
instead of CGDOOM_WAD_MAPPING. The DMA option is not implemented yet.
BFile works as expected - a lot of stuttering due to reads during
gameplay. But the status bar texture still doesn't load properly!