Syntax10.Scn.Fnt ]ParcElemsAllocSyntax24b.Scn.Fnt  ]la(* AMIGA *) MODULE Modules; (* 7-Aug-1993/cn *) IMPORT SYSTEM, Amiga, Kernel; CONST ModNameLen*=Kernel.ModNameLength; TYPE Command*=PROCEDURE(); Module*=Kernel.Module; ModuleName*=Kernel.ModuleName; VAR importing*,imported*:ModuleName; res*:INTEGER; PROCEDURE ThisMod*(name:ARRAY OF CHAR):Module; VAR mod:Module; BEGIN COPY(name,importing); Amiga.ThisMod( name,SYSTEM.VAL(LONGINT,mod),res,SYSTEM.VAL(LONGINT,Kernel.modules),imported ); IF res#0 THEN mod:=NIL; END; (* << CN *) RETURN mod; END ThisMod; PROCEDURE ThisCommand*(mod:Module; name:ARRAY OF CHAR):Command; VAR cmd:Command; BEGIN Amiga.ThisCommand(SYSTEM.VAL(LONGINT,mod),name,SYSTEM.VAL(LONGINT,cmd),res); RETURN cmd; END ThisCommand; PROCEDURE Free*(name:ARRAY OF CHAR; all:BOOLEAN); BEGIN Amiga.Free(name,all,res,SYSTEM.VAL(LONGINT,Kernel.modules)); END Free; END Modules.