Jump to navigation Jump to search

The SHELL/ directory contains ENIGMA's main source files. This includes sources that have no dependencies on a particular platform, as well as many more grouped according to deployable platform/API.

This table details each directory, as well as notable files.

Filename Description
Audio_Systems/ Contains a directory for each operable sound library.
Colligma/ Deprecated [TBR]. This was once a pixel-perfect collision library by Ludamad. It was not nearly as optimized as it should have been, and in fact, hardly worked.
Collision_Systems/ Contains a folder for each operable collision system.
dbgoutput/ Empty [TBR]. Once used for debug input when ENIGMA was a fetus.
Deprecated/ More things that aren't used. These are to be removed at some point.
Developer/ Contains tools for developers.
Graphics_Systems/ Contains a directory for each operable graphics API.
Makefiles/ Not yet used. This will contain device-specific makefiles to be invoked according to current platform.
Modes/ Unused [OOO]. Build mode had Win32 dependencies; this folder cannot be used until a Widget API is available in EDL.
Platforms/ Contains a directory for each windowing API available. These specify what platforms they can operate on and provide the main() method.
Preprocessor_Environment_Editable/ Contains code generated from EDL input
Universal_System/ This directory contains the cross-platform parts of ENIGMA's engine.
API_Switchboard.h I have no idea what to do with this file. It defines what libraries are used from the changers above, but only two of them at this point. It will probably be removed at some point. Calls the makefile generation shell script on all subdirectories.
auxilary.h Used at one point for debugging the compiler. [TBR]
ENIGMAengine.cbp A Code::Blocks project for building, testing, and debugging ENIGMA's engine. Has a target for each main platform.
initialize.h Empty. [TBR]
libEGMstd.cpp Standard functions used by many other functions throughout the engine. [TBM]
libEGMstd.h Corresponding header. [TBM]
Makefile Makefile. Will invoke platform specific makefiles in the future.