Wrote up a small todo list for the game.
Moved user input processing to its own file(s).
Re-wrote input code. It's probably not actually better... but it's easier to detect key state transitions now.
Actually that last commit there was solidly broken.
This should be an extraordinarily verbose lesson in how NOT to design an input system.
C key clears the world buffer.
Plus/Minus keys now speed/slow generations.
Had to change input key check to compare against SDLK_EQUALS
because SDLK_PLUS wasn't triggered even when holding shift? Weird.
Updated todo.
Converted other usages of atoi() to strtol()
Can vary rate of SyncWorldToScreen with -z flag from CLI now.
lock/unlocking outside of randomize/reload/clear checks to prepare for threadedness.
Yay, we're simulating with multiple threads. I don't think there's any perf increase (untested) though
because of the placement of the lock/unlock calls. Made a comment on issue in ThreadLifeMain(). This function will probably just need rewritten with (more) careful thought.
Race condition fixed. Sim runs faster.
Everyone is happy now.
'Cept each thread spends a lot of time waiting for the lock when it doesn't need to be, so things aren't NEARLY as fast as they could be with a bit more tweaking.
Removed giant block of commented functions.
tuning local queue size.
Fixing warnings.
Made note of a "feature" that was causing me confusion just now.
Reloading and randomizing work fine but clearing world hangs it? Disabled for now.
Added spacefiller.life file.
Extra console output on the conditions of the simulation
defined structs for stats keeping.