Ok pana!
Haberlo dicho que es en ASM xD
Bueno, tiene tiempo que no lo práctico pero tratemos de aclarar por lo menos como yo lo haria.
Creo una variable con el estado del apuntador , ya sea un circulo , un cuadrito , un guion.
de inicio la llamare Indice.
entonces INdice = 0
Despliewgas tu menu
-Op0 ; (indice 0)
Op1 ; ( Indice 1)
Op2; (Indice 2);
Pintas el indice por DEfaul en la 0 , pues es donde inicias.
Ahora Revisas si se presiono el BOton SUbir , Bajar o Aceptar.
Si presionas subir Aumentamos en 1 la Variable Indice.
Si presionamos Bajar DEcrementamos en 1 la variable Indice.
Si estamos en indice 0 no podemos ir menos de 0 (en este caso)
Si estamos en indice 2 no podemos ir más de 2(en este caso).
Si¨Presionas subir y la variable indice es menor que 2 indice = +1;
Si al presionar subir INdice=2 , Inidice no será afetado.
Si al presionar bajar INdice=0; Indice no será afectado.
Si al Presionar bajar Indice mayor que 0 (es decir sea Indice 2 ó 1, Indice = -1;
Despues de hacer esto yo llamaria una pequeña subrutina para pintar y borrar el apuntador , se guion cuadro circulo , lo que decidas de acuerdo a una tablita.
Asi que si INdice = 0;
Guion0=1;
Guion1=0;
Guioon2=0;
Si fuera INdice =1;
Guion0=0;
Guion1=1;
Guion2=2;
Y lo correspondiente para el 2.
Ya que tienes esto ahora revisas si has PResionado el boton ACeptar, Si es Asi ejecutar lo debido.
Si no ha spresionado el boton Aceptar puedes seguir navegando en ese menu.
Espero poder ayudarte!
Saludos!