@ds-sloth
Latest commit 13942ba Feb 1, 2022 History
* Global tree result allocation (reduces memory usage + cleans up code)

@Wohlstand please check this commit and be aware of the change.

Especially note that within any call stack, a maximum of 4 tree results
can be used at one time, but we no longer need to allocate a tree result
vector for each tree query.

* Ported devel Layers (objs use layer indices, layers have obj sets)

Also ported devel String array and Event indices. Saves ~5MB of the ~20MB of statically allocated memory.

* Improved backport of devel's efficient DirListCI implementation

The OpenWorld and OpenLevel functions now change the directory of g_dirEpisode and g_dirCustom, which are shared by all modules.

Most existence checks and case resolutions are now combined.

This comes at minimal added RAM cost since there were already multiple DirListCI instances in various modules' static scope.

This is especially important on platforms with slow filesystems.

* Updated autocode features to support backported Layer and dir features

* Style and clarity suggestions from @Wohlstand

* GetS now returns const ref

* Backported tree recursion fix from devel

* GetL and GetE now return const refs

* Style fixes

* Moved global strings into their own header

* Autocode now uses global string index

* Update changelog

* Replace "Used P Switch" with macro constant

Co-authored-by: Vitaly Novichkov <Wohlstand@users.noreply.github.com>
Co-authored-by: Wohlstand <admin@wohlnet.ru>
2 contributors

Users who have contributed to this file

@Wohlstand @ds-sloth