Alla funzione "muovi" dovresti passare l'indirizzo del puntatore "pointer"
codice:
   muovi(command,matrix,&pointer);
modificando ovviamente prototipo e dichiarazione della procedura.
Inoltre, all'interno della funzione, dovrai accedere al valore puntato da "p" mediante l'operatore * ed aggiungere il controllo
codice:
*(p) != NULL
per evitare che, qualora si richiedesse un 'B'ack senza avere prima effettuato nessuna operazione, questa non crei problemi.