En la sección de trucos ya existe uno:
http://www.clubdelphi.com/trucos/ind...ll=0&scrollb=0
De hecho, el que se puso originalmente, tiene una que otra falla.
Por eso decidí colocar mi propuesta, pero nadie la ha comentado, la cuál es más compacta y con menos ciclos.

pero bueno, yo no soy el experto.
------edito
Arturo, ¿para que son estas unidades: Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, jpeg, Gauges, DateUtils ?
No veo la definición de pmt_Type...

Ni tampoco nada de lo que tienes como asm_*