Muchas gracias por las respuestas. Estoy en período de iniciación de este tipo de lenguajes, estoy en un curso en el que vamos a ver un poco de todo. Ya he conseguido arreglar el fallo.
Lo que he hecho ha sido otra función "intervalo()". Esta función crea el setInterval del "rotate()" y lo llamo desde el "onLoad()" del cuerpo del BODY.
Código HTML:
Ver originalfunction rotate() {
imagen_num++
if (imagen_num > 3) {
imagen_num = 0
}
document.Source.src = img_array[imagen_num]
}
function intervalo() {
setInterval('rotate()',2000); //--> contador de tiempo 1000ms = 1
}
<BODY onLoad = "intervalo()">
<P ALIGN=CENTER> <img name = "Source" WIDTH= 256 HEIGHT=256 alt = "no hay" /> </P>