Всё понятно за исключением этого:
begin
fk:=False;
ch:=ReadKey;
if ch = #0 then begin
fk:=True;
ch:=ReadKey;
end;
if fk then begin
Case ord(ch) of
72:key := Up;
80:key := Down;
end;
end;
if not fk then begin
Case ord(ch) of
13:key := ReturnKey;
27:key := Escape;
end;
end;
а имменно ожидание нажатия клавиши, проверка с каким-то нулевым символом ( #0 ) и снова ожидание нажатия клавиши.. хотя в работе в работе программы нажатие клавиши ожидаеться только 1раз а не 2.
и что за символл этот такой #0 (NULL) =)