.ENABLE SUBSTITUTION
.; DECUS C Runtime library build command file for RSX-11M.
.; By
.;	Bob Denny
.;	12-Sep-80
.;
.; Edit History
.; 28-May-81 RBD	Major improvements. Much more automatic.
.; 19-Jan-82 MM		Changed .OBJ to .OB
.; 10-Feb-82 MM		Added C$$FLT
.; 14-Feb-82 MM		Keep dtoa out of the library.
.; 21-Feb-82 MM		dtoa is in [5,5]
.; 15-Apr-82 SDR	Keep atod out of the library and add .ENABLE AMA
.; 01-MAY-82 RBD	Final Pre-decus merge and minor improvements,
.;			 remove .ENABL AMA
.; 06-Jul-82 MM		Renamed atod -> atof for C compatibility
.; 24-Jul-82 MM		Track JSL's RSX.MAC changes
.; 21-Oct-82 RBD	Updates for RSX-11M V4.0 ... Check that CLI is MCR.
.;			If running on V3.2 install BIGMAC/BIGTKB else MAC/TKB
.; 06-Dec-82 MM		Added VMS3.0 switch
.; 06-Jul-84 RBD	Added RMS/FCS selection option.  Remove V3.2 stuff.
.;			Default off VMS junk for native RSX.  It's huge.
.;
; MMAKLB.CMD
;
; Build the DECUS C runtime library -- for RSX-11M
;
.SETS SYSTYP "RSX-11M"
.IF <SYTYP> EQ "RSX-11M" .GOTO SYSOK
.IF <SYTYP> EQ "RSX-11M-PLUS" .GOTO SYSOK
.IF <SYTYP> EQ "MICRO-RSX" .GOTO SYSOK
;
;	You may not use SYSTEM '<SYTYP>' to build DECUS-C compiler for
;	native RSX. If you want to build DECUS-C compiler CC under
;	VAX-11 RSX, use VMAKCC.COM instead.
;
.EXIT -1
;
.SYSOK:
.SETS TPR ""
.;.ASK V32 Are you running on RSX-11M V3.2
.;.IFT V32 .SETS TPR "BIG"
.IF <VERSN> = "3.2" .SETS TPR "BIG"
.SETS MCR ""
.IF <CLI> EQ "MCR" .GOTO 90
.IF <CLI> EQ "DCL" .SETS MCR "MCR "
.IF <CLI> EQ "DCL" .GOTO 90
;
; This command file must be run under MCR.  Since "AT" will give
; confusing restart instructions (will be for '<CLI>'), MMAKCC will
; now exit.  Type "@MMAKCC" when you have changed CLI's to MCR.
;
.EXIT -1
.90:
;
; You must override the assignments in this file if you want the following
; logical devices to be assigned to other than SY:
;
;	SR:	Source and command files must be on this device.
;	LS:	Listings go to this device.
;	OB:	Objects go to this device.
;	MP:	Maps go to this device.
;	OU:	Task images go to this device.
;
; NOTE: The library C.OLB will be created in LB:[1,1]. Don't forget to
;       copy STDIO.H (and other "common" .H files) there also.
;
.TRANSLATE SR
.IF <EXSTRI> EQ "" 'mcr'ASN SY:=SR:
.TRANSLATE LS
.IF <EXSTRI> EQ "" 'mcr'ASN NL:=LS:
.TRANSLATE OB
.IF <EXSTRI> EQ "" 'mcr'ASN SY:=OB:
.TRANSLATE MP
.IF <EXSTRI> EQ "" 'mcr'ASN SY:=MP:
.TRANSLATE OU
.IF <EXSTRI> EQ "" 'mcr'ASN SY:=OU:
.;;
.;.ASK OK Are the above assignments OK
.;.IFT OK .GOTO 100
.;;
.;; We will now pause so that you may change assignment(s)...
.;.PAUSE
.;.100:                           
.IFDF $RMSUP 	.GOTO CHKUPD
.ASK $RMSUP Are you generating a RMS update version of the library
.IFF $RMSUP .GOTO CHKUPD
.OPENA SR:[5,4]RSX.MAC
.DATA	RMSIO	=	1	;Assemble for RMS
.CLOSE
.CHKUPD:
.IFT $RMSUP .GOTO RMSUP
;                         
'mcr'TIM
; Assemble the Op. Syst. non-specific modules in [5,15]
'mcr'SET /UIC=[5,15]
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'TIM
;
'mcr'MAC OB:ABS.OB,LS:ABS/-SP=SR:[5,4]RSX,SR:[5,15]ABS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ALLOC.OB,LS:ALLOC/-SP=SR:[5,4]RSX,SR:[5,15]ALLOC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ASCR50.OB,LS:ASCR50/-SP=SR:[5,4]RSX,SR:[5,15]ASCR50
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ASLL.OB,LS:ASLL/-SP=SR:[5,4]RSX,SR:[5,15]ASLL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ASLLI.OB,LS:ASLLI/-SP=SR:[5,4]RSX,SR:[5,15]ASLLI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ASRU.OB,LS:ASRU/-SP=SR:[5,4]RSX,SR:[5,15]ASRU
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOI.OB,LS:ATOI/-SP=SR:[5,4]RSX,SR:[5,15]ATOI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOI8.OB,LS:ATOI8/-SP=SR:[5,4]RSX,SR:[5,15]ATOI8
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOL.OB,LS:ATOL/-SP=SR:[5,4]RSX,SR:[5,15]ATOL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:BRK.OB,LS:BRK/-SP=SR:[5,4]RSX,SR:[5,15]BRK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:C5TA.OB,LS:C5TA/-SP=SR:[5,4]RSX,SR:[5,15]C5TA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CALL.OB,LS:CALL/-SP=SR:[5,4]RSX,SR:[5,15]CALL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CALLC.OB,LS:CALLC/-SP=SR:[5,4]RSX,SR:[5,15]CALLC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CALLER.OB,LS:CALLER/-SP=SR:[5,4]RSX,SR:[5,15]CALLER
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CALLOC.OB,LS:CALLOC/-SP=SR:[5,4]RSX,SR:[5,15]CALLOC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CALLTR.OB,LS:CALLTR/-SP=SR:[5,4]RSX,SR:[5,15]CALLTR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CONCAT.OB,LS:CONCAT/-SP=SR:[5,4]RSX,SR:[5,15]CONCAT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:COPY.OB,LS:COPY/-SP=SR:[5,4]RSX,SR:[5,15]COPY
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CPYSTR.OB,LS:CPYSTR/-SP=SR:[5,4]RSX,SR:[5,15]CPYSTR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CSV.OB,LS:CSV/-SP=SR:[5,4]RSX,SR:[5,15]CSV
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CTIME.OB,LS:CTIME/-SP=SR:[5,4]RSX,SR:[5,15]CTIME
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CTYPE.OB,LS:CTYPE/-SP=SR:[5,4]RSX,SR:[5,15]CTYPE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DIV2.OB,LS:DIV2/-SP=SR:[5,4]RSX,SR:[5,15]DIV2
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DIVL.OB,LS:DIVL/-SP=SR:[5,4]RSX,SR:[5,15]DIVL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:EIS.OB,LS:EIS/-SP=SR:[5,4]RSX,SR:[5,15]EIS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ENVSET.OB,LS:ENVSET/-SP=SR:[5,4]RSX,SR:[5,15]ENVSET
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FABS.OB,LS:FABS/-SP=SR:[5,4]RSX,SR:[5,15]FABS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FADD.OB,LS:FADD/-SP=SR:[5,4]RSX,SR:[5,15]FADD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FILL.OB,LS:FILL/-SP=SR:[5,4]RSX,SR:[5,15]FILL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FIS.OB,LS:FIS/-SP=SR:[5,4]RSX,SR:[5,15]FIS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FMUL.OB,LS:FMUL/-SP=SR:[5,4]RSX,SR:[5,15]FMUL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FPS.OB,LS:FPS/-SP=SR:[5,4]RSX,SR:[5,15]FPS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:INCHR.OB,LS:INCHR/-SP=SR:[5,4]RSX,SR:[5,15]INCHR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:INDEX.OB,LS:INDEX/-SP=SR:[5,4]RSX,SR:[5,15]INDEX
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IRAND.OB,LS:IRAND/-SP=SR:[5,4]RSX,SR:[5,15]IRAND
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISALLO.OB,LS:ISALLO/-SP=SR:[5,4]RSX,SR:[5,15]ISALLO
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISALNU.OB,LS:ISALNU/-SP=SR:[5,4]RSX,SR:[5,15]ISALNU
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISALPH.OB,LS:ISALPH/-SP=SR:[5,4]RSX,SR:[5,15]ISALPH
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISASCI.OB,LS:ISASCI/-SP=SR:[5,4]RSX,SR:[5,15]ISASCI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISCTRL.OB,LS:ISCTRL/-SP=SR:[5,4]RSX,SR:[5,15]ISCTRL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISDIGI.OB,LS:ISDIGI/-SP=SR:[5,4]RSX,SR:[5,15]ISDIGI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISGRAP.OB,LS:ISGRAP/-SP=SR:[5,4]RSX,SR:[5,15]ISGRAP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISLOWE.OB,LS:ISLOWE/-SP=SR:[5,4]RSX,SR:[5,15]ISLOWE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISPRIN.OB,LS:ISPRIN/-SP=SR:[5,4]RSX,SR:[5,15]ISPRIN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISPUNC.OB,LS:ISPUNC/-SP=SR:[5,4]RSX,SR:[5,15]ISPUNC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISSPAC.OB,LS:ISSPAC/-SP=SR:[5,4]RSX,SR:[5,15]ISSPAC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISUPPE.OB,LS:ISUPPE/-SP=SR:[5,4]RSX,SR:[5,15]ISUPPE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISXDIG.OB,LS:ISXDIG/-SP=SR:[5,4]RSX,SR:[5,15]ISXDIG
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ITOA.OB,LS:ITOA/-SP=SR:[5,4]RSX,SR:[5,15]ITOA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ITOA8.OB,LS:ITOA8/-SP=SR:[5,4]RSX,SR:[5,15]ITOA8
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ITOAX.OB,LS:ITOAX/-SP=SR:[5,4]RSX,SR:[5,15]ITOAX
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:LOCALT.OB,LS:LOCALT/-SP=SR:[5,4]RSX,SR:[5,15]LOCALT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:LTOA.OB,LS:LTOA/-SP=SR:[5,4]RSX,SR:[5,15]LTOA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MALINK.OB,LS:MALINK/-SP=SR:[5,4]RSX,SR:[5,15]MALINK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MALLOC.OB,LS:MALLOC/-SP=SR:[5,4]RSX,SR:[5,15]MALLOC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MAMCHK.OB,LS:MAMCHK/-SP=SR:[5,4]RSX,SR:[5,15]MAMCHK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MAXMIN.OB,LS:MAXMIN/-SP=SR:[5,4]RSX,SR:[5,15]MAXMIN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MSIZE.OB,LS:MSIZE/-SP=SR:[5,4]RSX,SR:[5,15]MSIZE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MULL.OB,LS:MULL/-SP=SR:[5,4]RSX,SR:[5,15]MULL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:NARG.OB,LS:NARG/-SP=SR:[5,4]RSX,SR:[5,15]NARG
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PCSV.OB,LS:PCSV/-SP=SR:[5,4]RSX,SR:[5,15]PCSV
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:R50TOA.OB,LS:R50TOA/-SP=SR:[5,4]RSX,SR:[5,15]R50TOA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RAND.OB,LS:RAND/-SP=SR:[5,4]RSX,SR:[5,15]RAND
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RCTIME.OB,LS:RCTIME/-SP=SR:[5,4]RSX,SR:[5,15]RCTIME
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:REALLO.OB,LS:REALLO/-SP=SR:[5,4]RSX,SR:[5,15]REALLO
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RINDEX.OB,LS:RINDEX/-SP=SR:[5,4]RSX,SR:[5,15]RINDEX
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SALLOC.OB,LS:SALLOC/-SP=SR:[5,4]RSX,SR:[5,15]SALLOC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SAVR1.OB,LS:SAVR1/-SP=SR:[5,4]RSX,SR:[5,15]SAVR1
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SETJMP.OB,LS:SETJMP/-SP=SR:[5,4]RSX,SR:[5,15]SETJMP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRCAT.OB,LS:STRCAT/-SP=SR:[5,4]RSX,SR:[5,15]STRCAT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRCHR.OB,LS:STRCHR/-SP=SR:[5,4]RSX,SR:[5,15]STRCHR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRCMP.OB,LS:STRCMP/-SP=SR:[5,4]RSX,SR:[5,15]STRCMP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRCPY.OB,LS:STRCPY/-SP=SR:[5,4]RSX,SR:[5,15]STRCPY
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STREQ.OB,LS:STREQ/-SP=SR:[5,4]RSX,SR:[5,15]STREQ
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRLEN.OB,LS:STRLEN/-SP=SR:[5,4]RSX,SR:[5,15]STRLEN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRNCA.OB,LS:STRNCA/-SP=SR:[5,4]RSX,SR:[5,15]STRNCA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRNCM.OB,LS:STRNCM/-SP=SR:[5,4]RSX,SR:[5,15]STRNCM
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRNCP.OB,LS:STRNCP/-SP=SR:[5,4]RSX,SR:[5,15]STRNCP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRNEQ.OB,LS:STRNEQ/-SP=SR:[5,4]RSX,SR:[5,15]STRNEQ
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:STRRCH.OB,LS:STRRCH/-SP=SR:[5,4]RSX,SR:[5,15]STRRCH
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SWABB.OB,LS:SWABB/-SP=SR:[5,4]RSX,SR:[5,15]SWABB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SWABI.OB,LS:SWABI/-SP=SR:[5,4]RSX,SR:[5,15]SWABI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TOASCI.OB,LS:TOASCI/-SP=SR:[5,4]RSX,SR:[5,15]TOASCI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TOLOWE.OB,LS:TOLOWE/-SP=SR:[5,4]RSX,SR:[5,15]TOLOWE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TOUPPE.OB,LS:TOUPPE/-SP=SR:[5,4]RSX,SR:[5,15]TOUPPE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:UNWIND.OB,LS:UNWIND/-SP=SR:[5,4]RSX,SR:[5,15]UNWIND
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:WDLENG.OB,LS:WDLENG/-SP=SR:[5,4]RSX,SR:[5,15]WDLENG
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:WRAPUP.OB,LS:WRAPUP/-SP=SR:[5,4]RSX,SR:[5,15]WRAPUP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ZERO.OB,LS:ZERO/-SP=SR:[5,4]RSX,SR:[5,15]ZERO
.IF <EXSTAT> NE 1 .GOTO 700
;
; And now the OS specific ones in [5,16]
'mcr'SET /UIC=[5,16]
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'TIM
;
'mcr'MAC OB:ABORT.OB,LS:ABORT/-SP=SR:[5,4]RSX,SR:[5,16]ABORT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOD.OB,LS:ATOD/-SP=SR:[5,4]RSX,SR:[5,16]ATOD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOF.OB,LS:ATOF/-SP=SR:[5,4]RSX,SR:[5,16]ATOF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ATOFD.OB,LS:ATOFD/-SP=SR:[5,4]RSX,SR:[5,16]ATOFD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:CLEARE.OB,LS:CLEARE/-SP=SR:[5,4]RSX,SR:[5,16]CLEARE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DELETE.OB,LS:DELETE/-SP=SR:[5,4]RSX,SR:[5,16]DELETE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DOPRNT.OB,LS:DOPRNT/-SP=SR:[5,4]RSX,SR:[5,16]DOPRNT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DOSCAN.OB,LS:DOSCAN/-SP=SR:[5,4]RSX,SR:[5,16]DOSCAN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DOUTAB.OB,LS:DOUTAB/-SP=SR:[5,4]RSX,SR:[5,16]DOUTAB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DTOA.OB,LS:DTOA/-SP=SR:[5,4]RSX,SR:[5,16]DTOA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:DTOAD.OB,LS:DTOAD/-SP=SR:[5,4]RSX,SR:[5,16]DTOAD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ERROR.OB,LS:ERROR/-SP=SR:[5,4]RSX,SR:[5,16]ERROR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:EXIT.OB,LS:EXIT/-SP=SR:[5,4]RSX,SR:[5,16]EXIT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FCLEAR.OB,LS:FCLEAR/-SP=SR:[5,4]RSX,SR:[5,16]FCLEAR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FCLOSE.OB,LS:FCLOSE/-SP=SR:[5,4]RSX,SR:[5,16]FCLOSE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FEOF.OB,LS:FEOF/-SP=SR:[5,4]RSX,SR:[5,16]FEOF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FERR.OB,LS:FERR/-SP=SR:[5,4]RSX,SR:[5,16]FERR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FERROR.OB,LS:FERROR/-SP=SR:[5,4]RSX,SR:[5,16]FERROR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FFLUSH.OB,LS:FFLUSH/-SP=SR:[5,4]RSX,SR:[5,16]FFLUSH
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FGET.OB,LS:FGET/-SP=SR:[5,4]RSX,SR:[5,16]FGET
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FGETNA.OB,LS:FGETNA/-SP=SR:[5,4]RSX,SR:[5,16]FGETNA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FGETS.OB,LS:FGETS/-SP=SR:[5,4]RSX,SR:[5,16]FGETS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FILENO.OB,LS:FILENO/-SP=SR:[5,4]RSX,SR:[5,16]FILENO
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FLUN.OB,LS:FLUN/-SP=SR:[5,4]RSX,SR:[5,16]FLUN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FMKDL.OB,LS:FMKDL/-SP=SR:[5,4]RSX,SR:[5,16]FMKDL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FOPEN.OB,LS:FOPEN/-SP=SR:[5,4]RSX,SR:[5,16]FOPEN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FPAR.OB,LS:FPAR/-SP=SR:[5,4]RSX,SR:[5,16]FPAR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FPRINT.OB,LS:FPRINT/-SP=SR:[5,4]RSX,SR:[5,16]FPRINT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FPUT.OB,LS:FPUT/-SP=SR:[5,4]RSX,SR:[5,16]FPUT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FREAD.OB,LS:FREAD/-SP=SR:[5,4]RSX,SR:[5,16]FREAD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FREC.OB,LS:FREC/-SP=SR:[5,4]RSX,SR:[5,16]FREC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FSCANF.OB,LS:FSCANF/-SP=SR:[5,4]RSX,SR:[5,16]FSCANF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FSEEK.OB,LS:FSEEK/-SP=SR:[5,4]RSX,SR:[5,16]FSEEK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FSPOOL.OB,LS:FSPOOL/-SP=SR:[5,4]RSX,SR:[5,16]FSPOOL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FTELL.OB,LS:FTELL/-SP=SR:[5,4]RSX,SR:[5,16]FTELL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FTIME.OB,LS:FTIME/-SP=SR:[5,4]RSX,SR:[5,16]FTIME
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FTTY.OB,LS:FTTY/-SP=SR:[5,4]RSX,SR:[5,16]FTTY
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FWILD.OB,LS:FWILD/-SP=SR:[5,4]RSX,SR:[5,16]FWILD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FWRITE.OB,LS:FWRITE/-SP=SR:[5,4]RSX,SR:[5,16]FWRITE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:GETCHA.OB,LS:GETCHA/-SP=SR:[5,4]RSX,SR:[5,16]GETCHA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:GETCMD.OB,LS:GETCMD/-SP=SR:[5,4]RSX,SR:[5,16]GETCMD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:GETS.OB,LS:GETS/-SP=SR:[5,4]RSX,SR:[5,16]GETS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:GETTTY.OB,LS:GETTTY/-SP=SR:[5,4]RSX,SR:[5,16]GETTTY
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:GETW.OB,LS:GETW/-SP=SR:[5,4]RSX,SR:[5,16]GETW
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:INIT.OB,LS:INIT/-SP=SR:[5,4]RSX,SR:[5,16]INIT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOABUF.OB,LS:IOABUF/-SP=SR:[5,4]RSX,SR:[5,16]IOABUF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOCL16.OB,LS:IOCL16/-SP=SR:[5,4]RSX,SR:[5,16]IOCL16
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOCLFU.OB,LS:IOCLFU/-SP=SR:[5,4]RSX,SR:[5,16]IOCLFU
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOCSI.OB,LS:IOCSI/-SP=SR:[5,4]RSX,SR:[5,16]IOCSI
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOFALO.OB,LS:IOFALO/-SP=SR:[5,4]RSX,SR:[5,16]IOFALO
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOFLSH.OB,LS:IOFLSH/-SP=SR:[5,4]RSX,SR:[5,16]IOFLSH
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOFLUN.OB,LS:IOFLUN/-SP=SR:[5,4]RSX,SR:[5,16]IOFLUN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOFOPA.OB,LS:IOFOPA/-SP=SR:[5,4]RSX,SR:[5,16]IOFOPA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOFOPT.OB,LS:IOFOPT/-SP=SR:[5,4]RSX,SR:[5,16]IOFOPT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOGET.OB,LS:IOGET/-SP=SR:[5,4]RSX,SR:[5,16]IOGET
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOGETC.OB,LS:IOGETC/-SP=SR:[5,4]RSX,SR:[5,16]IOGETC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOPUT.OB,LS:IOPUT/-SP=SR:[5,4]RSX,SR:[5,16]IOPUT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOPUTC.OB,LS:IOPUTC/-SP=SR:[5,4]RSX,SR:[5,16]IOPUTC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOQIOW.OB,LS:IOQIOW/-SP=SR:[5,4]RSX,SR:[5,16]IOQIOW
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOV.OB,LS:IOV/-SP=SR:[5,4]RSX,SR:[5,16]IOV
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:ISATTY.OB,LS:ISATTY/-SP=SR:[5,4]RSX,SR:[5,16]ISATTY
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:KBIN.OB,LS:KBIN/-SP=SR:[5,4]RSX,SR:[5,16]KBIN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:KBINR.OB,LS:KBINR/-SP=SR:[5,4]RSX,SR:[5,16]KBINR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MEMDMP.OB,LS:MEMDMP/-SP=SR:[5,4]RSX,SR:[5,16]MEMDMP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MSG.OB,LS:MSG/-SP=SR:[5,4]RSX,SR:[5,16]MSG
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MYGSA.OB,LS:MYGSA/-SP=SR:[5,4]RSX,SR:[5,16]MYGSA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PEEK.OB,LS:PEEK/-SP=SR:[5,4]RSX,SR:[5,16]PEEK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PERROR.OB,LS:PERROR/-SP=SR:[5,4]RSX,SR:[5,16]PERROR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PRINTF.OB,LS:PRINTF/-SP=SR:[5,4]RSX,SR:[5,16]PRINTF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PRMT.OB,LS:PRMT/-SP=SR:[5,4]RSX,SR:[5,16]PRMT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PROFIL.OB,LS:PROFIL/-SP=SR:[5,4]RSX,SR:[5,16]PROFIL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PUTCHA.OB,LS:PUTCHA/-SP=SR:[5,4]RSX,SR:[5,16]PUTCHA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PUTS.OB,LS:PUTS/-SP=SR:[5,4]RSX,SR:[5,16]PUTS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PUTW.OB,LS:PUTW/-SP=SR:[5,4]RSX,SR:[5,16]PUTW
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:QSET.OB,LS:QSET/-SP=SR:[5,4]RSX,SR:[5,16]QSET
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:REWIND.OB,LS:REWIND/-SP=SR:[5,4]RSX,SR:[5,16]REWIND
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RSTSYS.OB,LS:RSTSYS/-SP=SR:[5,4]RSX,SR:[5,16]RSTSYS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RTEMT.OB,LS:RTEMT/-SP=SR:[5,4]RSX,SR:[5,16]RTEMT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:RTIME.OB,LS:RTIME/-SP=SR:[5,4]RSX,SR:[5,16]RTIME
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SBRK.OB,LS:SBRK/-SP=SR:[5,4]RSX,SR:[5,16]SBRK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SCANF.OB,LS:SCANF/-SP=SR:[5,4]RSX,SR:[5,16]SCANF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SCREEN.OB,LS:SCREEN/-SP=SR:[5,4]RSX,SR:[5,16]SCREEN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SETCC.OB,LS:SETCC/-SP=SR:[5,4]RSX,SR:[5,16]SETCC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SLEEP.OB,LS:SLEEP/-SP=SR:[5,4]RSX,SR:[5,16]SLEEP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SPRINT.OB,LS:SPRINT/-SP=SR:[5,4]RSX,SR:[5,16]SPRINT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SSCANF.OB,LS:SSCANF/-SP=SR:[5,4]RSX,SR:[5,16]SSCANF
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:SUPORT.OB,LS:SUPORT/-SP=SR:[5,4]RSX,SR:[5,16]SUPORT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TIME.OB,LS:TIME/-SP=SR:[5,4]RSX,SR:[5,16]TIME
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TOD.OB,LS:TOD/-SP=SR:[5,4]RSX,SR:[5,16]TOD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:TRAPS.OB,LS:TRAPS/-SP=SR:[5,4]RSX,SR:[5,16]TRAPS
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:UNGETC.OB,LS:UNGETC/-SP=SR:[5,4]RSX,SR:[5,16]UNGETC
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:UTIME.OB,LS:UTIME/-SP=SR:[5,4]RSX,SR:[5,16]UTIME
.IF <EXSTAT> NE 1 .GOTO 700
;                    
'mcr'TIM
; Concatenate all modules and build the library
;
'mcr'PIP LB:[1,1]DTOA.OBJ=OB:[5,16]DTOA.OB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP LB:[1,1]ATOF.OBJ=OB:[5,16]ATOF.OB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP OB:DTOA.OB;*,ATOF.OB;*/DE
'mcr'PIP OB:OTS.TMP=OB:[5,15]*.OB,[5,16]*.OB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP OB:[5,15]*.OB;*/DE
'mcr'PIP OB:[5,16]*.OB;*/DE
'mcr'LBR LB:[1,1]C/CR=OB:OTS.TMP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP OB:OTS.TMP;*/DE
;
; Library build complete
;
.EXIT <SUCCES>
.RMSUP:
;
; Creating CR.OLB from C.OLB and RMS-specific modules
;
'mcr'SET /UIC=[5,16]
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'TIM
;
; Assemble RMS-specific modules
;
'mcr'MAC OB:DELETE.OB,LS:DELETE/-SP=SR:[5,4]RSX,SR:[5,16]DELETE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FCLOSE.OB,LS:FCLOSE/-SP=SR:[5,4]RSX,SR:[5,16]FCLOSE
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FGETNA.OB,LS:FGETNA/-SP=SR:[5,4]RSX,SR:[5,16]FGETNA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FOPEN.OB,LS:FOPEN/-SP=SR:[5,4]RSX,SR:[5,16]FOPEN
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FPAR.OB,LS:FPAR/-SP=SR:[5,4]RSX,SR:[5,16]FPAR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FSEEK.OB,LS:FSEEK/-SP=SR:[5,4]RSX,SR:[5,16]FSEEK
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FTELL.OB,LS:FTELL/-SP=SR:[5,4]RSX,SR:[5,16]FTELL
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:FWILD.OB,LS:FWILD/-SP=SR:[5,4]RSX,SR:[5,16]FWILD
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:INIT.OB,LS:INIT/-SP=SR:[5,4]RSX,SR:[5,16]INIT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOGET.OB,LS:IOGET/-SP=SR:[5,4]RSX,SR:[5,16]IOGET
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOPUT.OB,LS:IOPUT/-SP=SR:[5,4]RSX,SR:[5,16]IOPUT
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:IOV.OB,LS:IOV/-SP=SR:[5,4]RSX,SR:[5,16]IOV
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:MYGSA.OB,LS:MYGSA/-SP=SR:[5,4]RSX,SR:[5,16]MYGSA
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:PERROR.OB,LS:PERROR/-SP=SR:[5,4]RSX,SR:[5,16]PERROR
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'MAC OB:REWIND.OB,LS:REWIND/-SP=SR:[5,4]RSX,SR:[5,16]REWIND
.IF <EXSTAT> NE 1 .GOTO 700
;
'mcr'TIM
;
; Concatenate all modules and build the library
;
'mcr'PIP OB:OTS.TMP=OB:*.OB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP OB:*.OB;*/DE
'mcr'LBR LB:[1,1]CR.OLB/CO=LB:[1,1]C.OLB
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'LBR LB:[1,1]CR/RP=OB:OTS.TMP
.IF <EXSTAT> NE 1 .GOTO 700
'mcr'PIP OB:OTS.TMP;*/DE
;
; LB:[1,1] CR.OLB -- Library build complete
;
.EXIT <SUCCES>
.700:
;
; There has been an error. Please re-read the build instructions in
; the manual.
;
.EXIT -1
