Ho risolto parte del problema sostituendo calloc con malloc.
Ora se stampo in shell non ho problemi, però se cerco di stampare sul file in output lo posso fare solo fino al numero 1446.
Dal numero 1447 in poi il file diventa illeggibile (pieno di quadratini [sono su windows])