in einem unsigned char kann kein "true" oder "false" gespeichert werden. ein unsigned char ist ein einzelner buchstabe oder eine zahl zwischen 0 und 255.

du kannst also zB 0 und 1 speichern, dann sollte das programm funktionieren. ersetze alle "true" durch 1 und alle "false" durch 0.

alternative: die variable zum speichern eines wahrheitswertes (die glaube ich GROß geschreiben werden muss) heisst entweder bool oder boolean, bin mir nicht ganz sicher. sollte allerdings mit 0 und 1 einfacher gehen.

in deinem ersten programm: fährt er mit beiden rädern rückwärts? oder nur mit einem rad?