Splitted work into two branches : SDL and console. Compiling differs by defined macros