Input system overhaul