Hola,
Yo lo del "flush()" lo aprendí aquí en el ClubDelphi, de la mano de Emilio, en un "script" que servía para ver si determinados puertos de un ordenador estaban abiertos o no. El uso de "flush()" en este caso servía para mostrar una especie de "progreso de la tarea", puesto que, por cada puerto procesado, se mostraba (acto seguido, cuando "flush()" funcionaba) se mostraba su estado correspondiente. Desde entonces lo he usado para estos menesteres.