HI,
   this is the code I wrote to hook to the keyboard interrupt with an entry call:

task X is
    Entry Foo;
    for Foo use at To_Address(16#9#);
end X;

task Body X is
begin
  loop
    Accept Foo do
       Put_Line("PPPPP");
       end Foo;
  end loop;
end X;

As the LRM said that we sholud provide the interrupt number, I put int. number 9.
(this number would work just fine if you use the setvect function in C)
Now the output I get is PPPPP
                        PPPPP
                        .
                        .
                        .
                        PPPPP
                        PPPPP
and so on.
What is wrong??
By the way, I'm using GW-GNAT 310.

Thanks in advance,
                  Chalito