The RAM[], empty_chunk[], fake_bank[], ZXCFMEM[], ZXATASPMEM[], divide_ram[], divide_eprom[] and plusd_ram[] arrays should be replaced with memory pool allocations. The total size of these arrays is 2640 KB. pokefinder_possible[] and pokefinder_impossible[] use another 1170 KB of BSS.
DivIDE, ZXATASP and ZXCF done in revision 4293.
empty_chunk and plusd_ram[] added in revision 4298.
FWIW, I notice that empty_chunk, fake_bank, ZXCFMEM, ZXATASPMEM, divide_ram, divide_eprom and plusd_ram now use the memory pool. This leaves RAM (which is trickier), and the pokefinder arrays. This comes to 1040 KB for the RAM array, and 1170 KB for the pokefinder arrays, which is a reduction of 1600 KB... so not bad. :-)