added screen initialization and canvas handling