DBGrid and Oracle7 Stored PROC

Hi, I'm trying to write a stored procedure to accept a few variables and
populate a control, perhaps a DBGrid control.  I've been using SQL Server
6.0 for this and have gotten it to work fairly simply.  

My question: How do you write an Oracle stored procedure for doing this?  
The stored procedure would resemble this:  (forgive syntax)
---------
Create or replace procedure ListNames ( lastname in varchar,
                                        firstname in varchar ) as
if firstname is null then
   select fn, mn, ln, sex, dob
   from personnel
   where ln like lastname||'%';  
else
   select fn, mn, ln, sex, dob
   from personnel
   where ln like lastname||'%'
   and fn like firstname||'%';
end;

end;  
------------------
From Delphi,
I would want drop down a TStoredProc object, wire it to the
DBGrid control and have it call LstNames, having the parameters
come from Tedit controls.

Has anyone used a Oracle stored procedure this way, Please?