Hallo

Schön dass die meisten deiner Probleme schon gelöst sind.

while(PollSwitch()<1) { ...
Das funktioniert praktisch nie! PollSwitch() liefert nicht immer 0 zurück wenn keine Taste gedrückt wurde:

https://www.roboternetz.de/phpBB2/viewtopic.php?t=48053
(Eines der unzähligen Beispiele)

Gruß

mic