$SAVE NOLIST

 ABSOLUTE$READ: PROCEDURE(DRIVE,LRECORD,NSECTORS,BUFF$PTR) BYTE EXTERNAL;
 DECLARE(DRIVE,LRECORD,NSECTORS) WORD;
 DECLARE BUFF$PTR POINTER;
 END ABSOLUTE$READ;


 ABSOLUTE$WRITE: PROCEDURE(DRIVE,LRECORD,NSECTORS,BUFF$PTR) BYTE EXTERNAL;
 DECLARE(DRIVE,LRECORD,NSECTORS) WORD;
 DECLARE BUFF$PTR POINTER;
 END ABSOLUTE$WRITE;


 KEY$IN: PROCEDURE BYTE EXTERNAL;
 DECLARE CHAR BYTE;
 END KEY$IN;


 CHAR$OUT: PROCEDURE(CHAR) EXTERNAL;
 DECLARE CHAR BYTE;
 END CHAR$OUT;



 PRN$OUT: PROCEDURE(CHAR) EXTERNAL;
 DECLARE CHAR BYTE;
 END PRN$OUT;



 DIRECT$CONSOLE: PROCEDURE BYTE EXTERNAL;
 END DIRECT$CONSOLE;

 DIRECT$NOECHO: PROCEDURE BYTE EXTERNAL;
 END DIRECT$NOECHO;

 KEYIN$NOECHO: PROCEDURE BYTE EXTERNAL;
 END KEYIN$NOECHO;

 MSG$OUT: PROCEDURE(MSG$PTR) EXTERNAL;
 DECLARE MSG$PTR POINTER;
 END MSG$OUT;
 /* NOTE: MESSAGE IS TERMINATED WITH A DOLLAR SIGN */


 LINE$IN: PROCEDURE(LINE$PTR) EXTERNAL;
 DECLARE LINE$PTR POINTER;
 END LINE$IN;

 KEY$STAT: PROCEDURE BYTE EXTERNAL;
 END KEY$STAT;

 CLR$KBD: PROCEDURE(FUNCTION) BYTE EXTERNAL;
 DECLARE FUNCTION BYTE;
 END CLR$KBD;


 DISK$RESET: PROCEDURE EXTERNAL;
 END DISK$RESET;


 SELECT$DISK: PROCEDURE(DISK) BYTE EXTERNAL;
 DECLARE DISK BYTE;
 END SELECT$DISK;


 OPEN$FILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END OPEN$FILE;


 CLOSEFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END CLOSE$FILE;


 SEARCHFIRSTFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END SEARCHFIRST$FILE;


 SEARCHNEXTFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END SEARCHNEXT$FILE;


 DELETEFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END DELETE$FILE;


 READSEQ: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END READSEQ;


 WRITESEQ: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END WRITESEQ;


 CREATEFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END CREATEFILE;


 RENAMEFILE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END RENAMEFILE;

 SET$DTA: PROCEDURE(BUFFER$PTR) EXTERNAL;
 DECLARE BUFFER$PTR POINTER;
 END SET$DTA;


 READRANDOM: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END READRANDOM;


 WRITERANDOM: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END WRITERANDOM;


 FILESIZE: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END FILESIZE;


 SETRANDOM: PROCEDURE(FCB$PTR) BYTE EXTERNAL;
 DECLARE FCB$PTR POINTER;
 END SETRANDOM;


 READBLOCK: PROCEDURE(FCB$PTR,COUNT) WORD EXTERNAL;
 DECLARE FCB$PTR POINTER;
 DECLARE COUNT WORD;
 END READBLOCK;


 WRITEBLOCK: PROCEDURE(FCB$PTR,COUNT) WORD EXTERNAL;
 DECLARE FCB$PTR POINTER;
 DECLARE COUNT WORD;
 END WRITEBLOCK;

 PARSE$FILE$NAME: PROCEDURE(PMODE,P$BUFF$PTR,FCB$PTR) BYTE EXTERNAL;
 DECLARE PMODE BYTE,
	  (P$BUFF$PTR,FCB$PTR) POINTER;
 END PARSE$FILE$NAME;


 GETDATE: PROCEDURE DWORD EXTERNAL;
 END GETDATE;

 SETDATE: PROCEDURE(DATE$V) BYTE EXTERNAL;
 DECLARE DATE$V DWORD;
 END SET$DATE;

 GETTIME: PROCEDURE DWORD EXTERNAL;
 END GETTIME;


 SETTIME: PROCEDURE(TIME$V) BYTE EXTERNAL;
 DECLARE TIME$V DWORD;
 END SET$TIME;

 CURRENT$DISK: PROCEDURE BYTE EXTERNAL;
 END CURRENT$DISK;

 SETVECTOR: PROCEDURE(INUM,IVEC) EXTERNAL;
 DECLARE	INUM	BYTE,
 			IVEC	POINTER;
 END SETVECTOR;

$RESTORE
