Je dirais que c'est parce que les différents MAME n'écrivent pas les INP de la même façon.
Par exemple, untel va enrengistrer (dans le fichier input) 8 bytes par frame et un autre 4, ce genre de trucs; ou encore l'un va enrengistrer à chaque frame la vitesse à laquelle tourne le jeu et un autre non (d'où un changement de taille de chaque "unité d'enrengistrement")
Tu pourrais avoir des réponses assez précises sur le forum de marp (marp.retrogames.com, gigantesque ressource de fichier INP), je pense, section playabackability (c'est anglophone par contre

).