Wie hast Du den Umschalter angeschlossen?
Ich hoffe, Du hast ihn wie einen Taster gegen GND geschaltet. Dann muss es funktionieren, weil gedrückter Taster (Umschalter) ergibt 0 (Sprung nach code2), nicht gedrückter Taster ergibt 1 (Sprung nach code1).
Wenn er nur zur sub code2 verzweigt, dann sieht Dein Eingang Pind.4 keine 1, sondern nur 0.