[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Loading Foreign routines into Aegis T.
- To: Seth Goldman <seth@UCLA-CS.ARPA>
- Subject: Re: Loading Foreign routines into Aegis T.
- From: Nathaniel Mishkin <Mishkin@YALE.ARPA>
- Date: Fri ,11 May 84 13:58:56 EDT
- Cc: T-Users@YALE.ARPA
- In-reply-to: Seth Goldman <seth@UCLA-CS.ARPA>, Fri, 11 May 84 09:20:14 PDT
I've been looking at the code for DEFAPOLLO and SYS and was
wondering why sometimes one must load a compiled pascal file in
addition to the calls to define-apollo.
You must load a compiled Pascal file if the routines you want are
not already loaded into the process's address space. All the Apollo
routines that are in the manual are already in the process so you
just need to do a DEFINE-APOLLO to use them from T.
If you write your own Pascal procedure and you want to call them from
T, you must include them in your process's address space. You can
do this either with the Shell "inlib" command (before you start your
T), or with the LOAD-APOLLO T procedure.
Sometimes the arguments that must be passed to Apollo Pascal procedures
are difficult to generate from T, so what one does it write a set
of Pascal procedures with simple (and usually more) arguments and
make those procedures call the real Pascal procedures. That's
what the story is with the "gpr_aid" procedures.
I want to make the ASH and MAPLE packages from Brown callable
from T. Has anyone beaten me to it? Any advice?
Expect problems calling C from T. The DEFINE-APOLLO interface was
designed for calling Pascal from T, not C from T.