LISTNODEPTR è stato dichiarato come un tipo puntatore... quindi già di per se senza asterisco è un puntatore.
Nelle funzioni dove dopo c'è l'asterisco
insert(LISTNODEPTR *,...)
è perchè il puntatore alla testa della lista potrebbe cambiare, quindi si deve passare il puntatore al puntatore, per permettere che venga modificato. (In C si passa solo per valore, per simulare il passaggio per indirizzo si passa il puntatore)