A: Well,
procedure ThisAintIt(green: array[1..2] of char)
isn't it. Here is an example of how to do it:
type
PArr = ^TArr;
Tarr = array[1..10] of integer;
procedure foo(PassingItIn: PArr);
var i: integer;
begin
for i := 1 to 10 do PassingItIn^[i] := i;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
TheArr: PArr;
begin
TheArr := AllocMem(sizeof(TArr));
foo(TheArr);
for i := 1 to 10 do Listbox1.items.add(IntToStr(TheArr^[i]));
FreeMem(TheArr, sizeof(TArr));
end;