Google
 

Trailing-Edge - PDP-10 Archives - decuslib10-11 - 43,50531/two701.opr
There is 1 other file named two701.opr in the archive. Click here to see a list.
This document contains control files for making a two-segment version
of the compiler under 7.01.  It came from L.K.Makin at the Western
Australian Institute of Technology.  Note that this was typed in from
a listing, so typos are possible.  Actually I am no longer recommending
the two-segment version, but this is provided for people who are interested
in using it, and as a backup in case my procedures don't work on 7.01.
To use this, you should edit PASSCN.MAC to turn on TWOSEG.

***************** PAS1.CCL

pascmp/ssave=-
passcn,pas:scn7bx/sea,pas:helpx
/set:.high.:400010
paslnk,pascmp/nostart,-
/search pas:paslib,sys:forlib
/go

***************** PAS2.CCL

passcn,pas:scn7bx/sea,pas:helpx
/define:pascmp:0
/define:input:0
/define:output:0
pascal/save/go

**************** PAS.CTL

; This file will create a two-segment version of the compiler under
; versions of the operating system that no longer have the OSAVE command,
; i.e. 7.01 and more recent.  Note that due to a bug in Link, this may not
; save you anything at all.  However if your version of Link understands
; /SET:.HIGH.:400000, then doing this could save you about 4K in the
; compiler.  

; Unlike more of my control files, this file makes a new runtime directly
; from the sources.

.error ?

;W.A.I.T. Computing Centre - L.K.Makin made changes April 1981
;Compile edited runtimes and compiler.
;Firstly MACRO sources.

.comp/comp pasunv.mac,runtim.mac,ttcall.mac,xio.mac,getfil.mac,randio.mac
.comp/comp passet.mac,pasdeb.mac,pasddt.mac,paslnk.mac,passcn.mac,ipcf.mac,paspsi.mac
.rename pascal.exe=oldcal.exe
.rename pascmp.exe=oldcmp.exe
.rename paslib.rel=oldlib.rel
.ass dsk sys
.r setsrc
*nolib
*
; Now Pascal sources using old compiler and runtime library in this area
.r pascal
*debug.rel,debug.lst=debug.pas/nomain/nocheck/nodebug
*parse.rel,parse.lst=parse.pas/nomain/nocheck/nodebug
*pascmp.rel,pascmp.lst=pascmp.pas/noobjectlist/nocheck/nodebug
*/exit

.deassign dsk
;rename old compiler to avoid conflicts
.rename oldcal.exe=pascal.exe
.rename oldcmp.exe=pascmp.exe
.rename oldlib.rel=paslib.rel
;combine some REL files since MIC does not like long lines
.copy pwrk.rel=getfile.rel,parse.rel,ttcall.rel,randio.rel,passet.rel
;Make new PASLIB in correct order
.copy paslib.rel=runtim.rel,pwrk.rel,xio.rel,debug.rel,ipcf.rel,paspsi.rel
.r maklib
*paslib=paslib/index
*/exit
.delete pwrk.rel

;pas should be made to point to whereever the version of the runtimes is
;  that you want included in the compiler, probably DSK: most of the time
.ass dsk pas
.ass tty log
.r link
@pas1
;have now produced sharable pascmp.exe
.r link
@pas2
; Have now produced non-sharable pascal.exe (starting segment)
;
; Next convert .EXE to pascmp(.shr,.low),pascal(.hgh,.low)
; and hope DEC doesn't withdraw FILEX for a while.
.r filex
*pascmp.shr=pascmp.exe
*pascal.hgh=pascal.exe
*
; Clobber with common low segment
.copy pascal.low=pascmp.low
; Get rid of junk
.delete pascal.exe,pascmp.shr,pascmp.low
; Convert Pascal to sharable .EXE file
.get pascal
.core 30p
.ssave pascal 30p