Most of the progress reports have been going on at ENIGMA's composed-due-to-popular-opinion IRC channel on Freenode, #enigma-dev.
However, I figure it's a good idea to post what's been happening here as well.
Several bugs between platforms have been found, isolated, and corrected. ENIGMA now operates correctly on every Windows version and Linux distro on which it has been tested thus far. That includes mostly Ubuntu 9.xx and Windows XP, Vista, and 7. I could not test on 98 due to Code::Blocks not starting and me being too lazy to do anything about that.
Further, the fixed bugs include the following:
- Some string fixes (waiting for Ism's confirmation)
- x() being randomly defined as a function due to ## mishandling
- Freezing on XP if sprite load fails (which it always does for now)
- Variable overlap on systems where sizeof(size_t) != sizeof(unsigned)
- Failure to load function names for syntax check due to any of the above
- Many smaller things that just needed dealt with
Things that still need to be fixed:
- Minuscule memory leak during C parsing: I will run Valgrind when this is the most pressing of my concerns
Things that need done in general:
- Makeflies need written: I've learned enough make (it was surprisingly easy) and will do this next
- Sprites need added to exe after build: This couldn't be done without the makefile
- Pieces of R3 need salvaged now that the rest seems stable; these include script "linking" and build mode.
- Some pieces of individual graphics systems and window systems need moved to a parent file in ../ to simplify further implementation
- There are at least ten "TODO:" notes lying around the project.
I'm content to leave ENIGMA in the SVN for a while longer, but can probably put out the zip file for those who for some reason do not like operating on a direct line to updates.
Perhaps Ism can implement something to call a quick makefile in CompilerSource in order to allow for easy distribution... I will discuss that with her shortly.