viel zu kompliziert das Ding ... lohnt nicht wenn Du mich fragst.
Da gibts effizientere Varianten.
Ich hab es so gelöst, dass ich meine Menüstruktur erstmal
angeschaut hab, was ich denn so brauche.

1. Verzweigungsmenü um von Menüpunkt möglichst
einfach zu Untermenü springen zu können.
2. Auswahlmenü für den zu ändernden Parameter
3. Optionsauswahl um Parameter auf vorgegebene Werte
einzustellen.
4. Werteingabe um Variable Werte in vorgegebenem Rahmen
min - max einzugeben über up- down-Tasten

Dann hab ich mir n data-Feld überlegt, das möglichst viele
der Möglichkeiten abdeckt und je nach bedarf an die
Erfordernisse angepasst wird. Dann dazu noch 2-3 Array
für die Werte zu speichern und fertig.
Der Ablauf ist dann so:

Mainloop -> Menüaufruf -> Menüauswahl -> Flag setzen für Submenüaufruf
und Submenütitel als Zahlenwert speichern -> exit in Mainloop
Mainloop Flag erkannt -> Loopuptabel für Submenü -> Submenüaufruf -> Selekt der Option -> Exit zu Mainloop usw. usw.

Liest sich komplex, ist aber ziemlich easy zu proggen und
wesentlich flexibler als die Soße in dem Tut