Multiples menus para varios usuarios

Hola.
Estoy un poco atascado en la programación de mi proyecto y quería ver si me podéis dar alguna indicación sobre cómo seguir.
El caso es que estoy haciendo un cuenta vueltas para coches de scalextric. Ya tengo varias cosas implementadas, pero ahora lo que me gustaría hacer es mostrar los tiempos de cada jugador (hay cuatro) en una pantalla lcd individual.
El problema de esto es que cada pantalla tiene que mostrar cosas distintas, y no sé cómo conseguirlo, o si se puede.
Me explico:

El programa empieza en un menú que te pregunta cuántos minutos quieres jugar. Una vez los seleccionas, hay un tiempo atras, y cuando llega a cero, te dice las vueltas que has dado, la vuelta rápida, etc.

En pseudocódigo seria algo asi como:

Inicio:
variable menú1=true //esta es la variable que activa el menu para el jugador 1
variable carreraJugdor1=falso //esta es la variable que activa la carrera para el jugador1
variable menú2=true //esta es la variable que activa el menu para el jugador 2
variable carreraJugdor2=falso //esta es la variable que activa la carrera para el jugador2
//así hasta cuatro jugadores

if menu1==true: PantallaMenu1()
else: carreraJugdor1();

//si la variable menu está activada, se activa el menu1, si no, se po ne en marcha la carrera

donde: PantallaMenu1() {
lee botones de seleccion de tiempo;
imprime: "Seleccoinar partidas" + numeropartidasplayer1
si presionas boton ok, pone la variable menu en falso, y la variable carrera en true;
}

carreraJugdor1(){
empieza el tiempo;
imprime el tiempo;
lee sensores de vuelta, etc;
}

Hasta ahí lo tengo todo resuelto, la complicación viene porque tiene que haber varios jugadores a la vez, y no todos están jugando al mismo tiempo.
Es decir, que mientras el jugador 1 está corriendo, es decir, la funcion carreraJugdor1() está corriendo, también debería estar corriendo la función menu para el jugador 2 y para el 3, por ejemplo.

¿Sería esto posible?
¿Me he explicado correctamente o no se ha entendido nada?

Si no se entiende lo que he puesto, decídmelo y intento explicar un poco mejor. Y si se os ocurre alguna manera de hacerlo, agradecería cualquier indicación.

Un saludo y muchas gracias!

Vale, creo que el problema era que estaba trabajando con demasiadas funciones y variables. Cuando entra en una función se queda ahí, y no imprime el menu de la otra.
Estuve pensando, y haciendo algo así parece que funciona:

boolean menu1=true
boolean menu2=true

void setup() {

if menu1=true{
imprime menu 1

}

else{
imprime cronometro para la carrera 1
}

if menu2=true{
imprime menu 2
}

else{
cronometro para la carrera 2
}
}

Así parece que puede imprimir el menu 1 mientras imprime en otra pantalla la carrera 2. Con cuatro supongo que no habrá problemas, lo miraré esta noche. el único problema es si el arduino mega tendrá "chicha" para mover los cuatro menus y cronometros, pero supongo que sí.