Hola:
No exactamente se limpian los checkboxes con reset(), sino que vuelven al estado inicial (se pueden tener elementos checkeados al principio)...
Puedes hacer un bucle... y si tienen nombre mejor:
<input type="checkbox" name="ch" value="1" />
<input type="checkbox" name="ch" value="2" />
<input type="checkbox" name="ch" value="3" />
<input type="checkbox" name="ch" value="4" />
<input type="checkbox" name="ch" value="5" />
con un botón marcar:
<button type="button" onclick="marcar_todos(this.form, 'ch')">marcar</button>
Y la función:
function marcar_todos(f, ch) {
for (i = 0, cheques = f[ch], total = cheques.length; i < total; i ++)
cheques[i].checked = true;
}
Saludos