Improved input controller