(pascal) visualizar un array de punteros

C

Buenas es el primer ejercicio que hago con punteros, este es de pascal, el problema me viene cuando visualizo la lista de clientes que contiene la empresa, solo me sale el ultimo cliente que tengo dado de alta "procedure mostrarclientes(var tempresa:tipoempresa); en laempresa.pas"
hay este el problema.

Dejo aqui subido en zip el enunciado, el proyec y las unidades, compila sin problema solo me queda saber por que solo me sale por pantalla el ultimo cliente y repetidas veces.
http://www.megaupload.com/?d=35ELX85V

He usado el programa borland delphi.

Gracias de antemano.

Poisonous

Supongo q tipoempresa es un record con los datos y
un puntero, en ese caso el codigo quedaria algo asi :

procedure mostrarclientes( tempresa:tipoempresa);
var
aux : tipoempresa;
begin
while aux <> nil do
begin
write (aux.dato, ' ');
aux := aux.enlace
end;
end;

Usuarios habituales