starting SDL port, refactoring