Parsing formX path to procedure for processing (IE. Animate(What: string) - call Animate(formX))

How do I make something like this work? I've only played around with
JavaScript, so this would be my natural approach to making a general
animation procedure, but of course it won't compile... The call would be
Animate(form1, form2) resulting in form1 scrolling out from underneath
form2 - but how do I pass form1 to What, and form2 to Overlay?!?

procedure Animate(What, Overlay: string);
var
I, HeightHolder : SmallInt;
begin
  HeightHolder := What.Height;
  What.Height := 0;
  What.Show;
  Overlay.Show;
  for I := 0 to HeightHolder do
  begin
    What.Height := I;
  end;

  for I := Overlay.Top to Overlay.Top + Overlay.Height do
  begin
    What.Top := I;
    application.ProcessMessages;
  end;
end;

Sincerely

Kim Hansen

PS. Please CC to k...@sof.dk