#WERSJA 83-03
#PARAMETERS
#NOCOPY
#VSN
#NORUN
#EXEC
#WINDOW
#PILE
#TAB
#MZ
#MZC
#KEEPE
#KEEPALL
#KEEPS
#KEEPL
#KEEPM
#NOINIT
#MONIT
#XF
#
#VARIABLES
#
#W - WINDOW
#Q - PILE
#X - TAB,MZ
#R - XF
IF PRESENT(MONIT),(TRACE %(MONIT=)) ELSE (TRACE FULLBUT,COMMANDS,COMMENT)
IF PRESENT(NOCOPY),GO TO 1NCOPY
CREATE !
INPUT !,T))))
GUIDE,GUIDE
PROLOGUIDE,PROLOGUIDE
PROLMESSAGES,PROLMESSAGES
PROLSTER,PROLSTER
INICSTER,INICSTER
PROLSOURCE,PROLSOURCE
INICSOURCE,INICSOURCE
BOOTSTRAPTXT,BOOTSTRAPTXT
MONITORTEXT,MONITORTEXT
INICJATOR,INICJATOR
PROLSIZE,PROLSIZE
PROLOG,PROLOG
WARREN,WARREN
PREFIX,PREFIX
SORTSCAN,SORTSCAN
GRAPHSQUEENS,GRAPHSQUEENS
PARSER,PARSER
TRAINS,TRAINS
COMPILER,COMPILER
WARPLAN,WARPLAN
WARPLANTEST1,WARPLANTEST1
WARPLANTEST2,WARPLANTEST2
WARPLANTEST3,WARPLANTEST3
SYSTEMTAPE,SYSTEMTAPE
????
))))
IF ABSENT(VSN=),GO TO 1ER
COPYIN (%(VSN=)),T????,*CR !
ER !
1NCOPY
IF PRE(EXEC), GO TO 1EXEC
JT 30MINS
IF PRESENT(WINDOW),(SP W,(W)) ELSE (SP W,())
IF PRE(NOINIT), GO TO 1LOOP
IF ABS(COMP=),(SP R,(XFAT)) ELSE (SP R,(%(COMP=)))
INICJATOR O=IRUNLST,IS=BOOTSTRAPTXT,OS=PROLOGSTAN,%R
IF ABSENT(EXEC),GOTO 1LOOP
1EXEC
IF ABS(PILE=),(SP Q,(6000)) ELSE (SP Q,(%(PILE=)))
IF ABS(TAB=),(SP X,(20000)) ELSE (SP X,(%(TAB=)))
CE !
INPUT !,T$$$$,PS
%W,(TC/&TAB/,R/&TAB/%X/,R/&PILE/%Q/,)E,E
%W,$$$$
ED PROLSOURCE,POMOC,!
CREATE !
INPUT !,T$$$$,PS
%W,(TS/CEXEC/,R/CEXEC/ /,)E,E
%W,$$$$
ED POMOC,PROLSOURCE(/EXEC),!
ED INICSOURCE,INICSOURCE(/EXEC),!
ER POMOC
CE !
INPUT !,T$$$$
I/TRANSIENTST DEFAULTSTATE
/
TS/+$FIN./
T.E
I/
-SAUVE!
-STOP!
****
/
P1
TE
E
$$$$
ED MONITORTEXT,MONITORTEXT(/EXEC),!
ER !,!
CE !
INPUT !,T$$$$
T#25
R/.2-1TTY0//
T1
R/.2-1TTY0//
TE
E
$$$$
ED BOOTSTRAPTXT,BOOTSTRAPTXT(/EXEC),!
ER !
IF ABS(LISTING),GO TO 1LOOP1
LF BOOTSTRAPTXT(/EXEC),*LP,NUMBER,PAGE
LF MONITORTEXT(/EXEC),*LP,NUMBER,PAGE
LF PROLSOURCE(/EXEC),*LP,NUMBER,PAGE
LF INICSOURCE(/EXEC),*LP,NUMBER,PAGE
1LOOP1
CE !
IN !,T####,PS
==========================================
ZOSTAL WYGENEROWANY ZESTAW PLIKOW DO INSTALACJI
SYSTEMU PROLOG POD EGZEKUTOREM:
BOOTSTRAPTXT(/EXEC)
MONITORTEXT(/EXEC)
PROLSOURCE(/EXEC)
INICSOURCE(/EXEC)
%,DATE,
==========================================
####
LF !
ER !
EXIT
1LOOP
IF ABSENT(PILE=),(SP Q ,(6000)) ELSE (SP Q ,(%(PILE=)))
IF ABS(TAB=),(SP X,(20000)) ELSE(SP X,(%(TAB=)))
IF ABSENT(COMP=),(SETPARAM R,(XFAT)) ELSE (SP R,(%(COMP=)))
PROLSIZE %X,%Q,%W,%R,%(MZC=)
ER PROLSOURCE
IF PRESENT (PILE=),(SP (PILE=),())
IF PRESENT(TAB=),(SP (TAB=),())
IF PRE(COMP=),(SP (COMP=),())
IF PRESENT(PILE=) OR PRESENT(TAB=) OR PRESENT(COMP=),GO TO 1LOOP
IF PRE(NORUN),EXIT
INPUT ZZZZINP,T$$$$
-NIVEAU! -NETT!
-STOP!
$$$$
IF ABS(MZ=) ,SP X,(MZ=45K)
IF PRE(MZ=),SP X,(MZ=%(MZ=))
PROLOG I=ZZZZINP,AO=0,AI=MONITORTEXT,O=PRUNLST,OS=DEFAULTSTATE,IS=PROLOGSTAN, -
T=10MINS,%X
ER ZZZZINP,PROLOGSTAN
CREATE !
INPUT !,T####,PS
==================================================
ZOSTAL WYGENEROWANY PELNY SYSTEM PROLOG.
W JEGO SKLAD WCHODZA NASTEPUJACE PLIKI:
PROLOG - MAKROINSTRUKCJA
PROLOGUIDE - OPIS PARAMETROW DLA "PROLOG-U"
PROLMESSAGES - PLIK INFORMACYJNY
DEFAULTSTATE - PODSTAWOWY STAN INICJALNY
PROLBIN .... - WERSJE BINARNE INTERPRETERA
%^DATE^
==================================================
####
LF !
ER !
IF ABSENT(KEEPE) AND ABSENT(KEEPALL),-
(ER SORTSCAN,PREFIX,WARREN,GRAPHSQUEENS,TRAINS,COMPILER,-
PARSER,WARPLAN,WARPLANTEST1,WARPLANTEST2,WARPLANTEST3)
IF ABSENT(KEEPS) AND ABSENT(KEEPALL),-
(ER PROLSTER,INICSTER,BOOTSTRAPTXT,MONITORTEXT,PROLSOURCE,-
INICSOURCE)
IF ABSENT(LISTING),GOTO 1PLIST
LF INICLST,*LP,PAGE
LF PROLOGLST,*LP,PAGE
LF IRUNLST,*LP,PAGE
LF PRUNLST,*LP,PAGE
1PLIST
IF ABSENT(KEEPL) AND ABSENT(KEEPALL),-
(ER INICLST,IRUNLST,PROLOGLST,PRUNLST)
IF ABSENT(KEEPM) AND ABSENT(KEEPALL),-
(ER INICJATOR,PROLSIZE,DEADSTART,SYSTEMTAPE,SYSTEMTAPEST,GUIDE)
EXIT
1ER
DP 0, PODAJ NUMER TASMY:(VSN=????)