Da du ja sagst, dass du Hilfe gebrauchen kannst, werde ich deinen Code mal ein wenig auswerten.
Erstmal:
Portx benutzt man normalerweise zur Deklaration von ganzen ports, Pinx.y für einzelne Pins. Aber anscheinend funktioniert es auch so, wiedu es gemacht hast.
Zum Ansteuern benutzt man dann für Inputs Pinx.y und für Outputs Portx.y (bzw. zum Umschalten des Pullupwiderstands).

Ansonsten ist mir nicht klar, wozu du so viele Pins brauchst. Eigentlich wären es doch nur 4 Pins, pro Motor jeweils An/Aus und Links/Rechts. Außerdem verwendest du Ports, die vorher nicht deklariert wurden. Ansonsten vielleicht mal den Vorteil von Variablen nutzen. Noch ist es überschaubar, aber wenn du mehr Sequenzen programmierst, ist es besser, für die unterschiedlichen Wartezeiten Variablen zu verwenden, die nur an einer Stelle einen Wert zugewiesen bekommen und man somit nicht immer, wenn man die ändert, das ganze Programm durchsuchen muss.

Was hast du eigentlich vor, wie sich der Roboter weiter verhalten soll? Bisher fährt er ja nur vorwärts, dreht sich und fängt wieder von vorn an. Zum testen schonmal nicht verkehrt, kannst ja erstmal die angesprochenen Punkte angehen, bevor du mit dem eigentlichen Programm weitermachst.