Ich habe nicht gesagt, dein Programmierstil ist scheixxe, sondern dass das Programm weder klar strukturiert noch übersichtlich ist.
Es handelt sich um Spaghetticode, der zwischen den verschiedenen Labels hin und her springt.
Genau aus DIESEM Grund soll man Gotos vermeiden und stattdessen Prozeduren/Funktionen (in Bascom nennt man das afaik Subs).
Gotos sind ein relikt aus alten Zeiten, von denen man sich noch nicht vollständig trennen konnte, in der heutigen, modernen, strukturierten Programmierung verwendet man aber Prozeduren/Funktionen!

Den Zustand deiner Sicherung machst du von Portpins abhängig, oder habe ich eine Variable übersehen? Du nutzt den Status deiner Ausgänge als Entscheidungsgrundlage, ob entsperrt wurde oder nicht.

Und zu deiner Schaltung: Auch diese wurde kritisiert und mögliche Probleme aufgezeigt, nicht als $InsertFäkalwortHere bezeichnet. Bist du auf die Idee gekommen, dass diese Kritik möglicherweise zurecht erfolgt ist?
CharlyMai's Vorschläge stammen von einem PROFI, der schon mehr als ein Startgerät gesehen hat.

Zum Post von Hanno: Das ist nun Mal Hannos Meinung und damit musst du auch leben können. Wenn du mit deinem Auftritt und der Idee (deines Freundes), Raketen von einem Flugzeug abzufeuern auf ihn einen so schlechten Eindruck gemacht hast, musst du dich damit abfinden.
Möglicherweise solltest du deinen Auftritt überdenken, aber die Selbstreflexion ist nicht mein Job.

mfG
Markus