.COM pqtyj fajl
.COM 22	oktqbrq	1989
.HLV
sistemnaq ob'ektnaq biblioteka
.LIN
sistemnaq ob'ektnaq biblioteka sodervit	nabor modulej,
pozwolq`}ij programmam na qzyke	fortran
(a takve paskalx, no s nekotorymi ograni~eniqmi)
ispolxzowatx sredstwa monitorow.
podprogrammy biblioteki	predostawlq`t takve raznoobraznye
wspomogatelxnye	funkcii.
programmy na qzyke
makroassembler takve mogut ispolxzowatx	ob'ektnu` biblioteku.
.ATT
biblioteka ne sodervit podprogramm uprawleniq ras{irennoj pamqtx`,
t.k. sootwetstwu`}ie sredstwa ispolxzu`tsq ispolnq`}ej
sistemoj (OTS) fortrana	pri rabote s wirtualxnymi massiwami.
.LIN
sistemnaq ob'ektnaq biblioteka razme}aetsq w fajle SYSLIB.OBJ,
ispolxzuemom komponow}ikom kak biblioteka po umol~ani`.
podprogrammy i funkcii iz SYSLIB.OBJ wyzywa`tsq	tak ve,	kak i
standartnye procedury iz OTS fortrana.
ispolxzowanie podprogramm i funkcij SYSLIB w ka~estwe parametrow wyzowa
procedur zapre}eno.
w sistemnu` ob'ektnu` biblioteku whodqt
kak podprogrammy (SUBROUTINE), tak i funkcii (FUNCTION).
.LIN
obra}enie k funkcii proizwoditsq po imeni w wide:
.SKI
.MID I=NAME([ARGUMENTS])
.BLN
zna~enie, wozwra}aemoe funkciej, movet bytx kodom o{ibki ili drugoj
informaciej, kotoru` ispolxzuet	wyzywa`}aq programma. smysl zna~eniq
opredelqetsq konkretnoj	funkciej.
.LIN
podprogrammy wyzywa`tsq	s pomo}x` operatora CALL w wide:
.SKI
.MID CALL NAME[(ARGUMENTS)]
.LIN
funkcii	iz SYSLIB.OBJ mogut bytx wyzwany i kak podprogrammy,
esli net neobhodimosti w polu~enii rezulxtiru`}ej weli~iny.
naprimer:
.SWT
	CALL  ITWAIT(ITIME)
	I = ITWAIT(ITIME)
.LIN
podprogrammy iz	SYSLIB mogut bytx wyzwany kak
funkcii, no wozwra}aemoe zna~enie pri |tom
ne opredeleno.
.TES 4
.LIN
prime~aniq:
.LIN 0
1. w kwadratnyh	skobkah	budut ukazywatxsq neobqzatelxnye argumenty.
.LIN 0
2. esli	funkciq	wypolnilasx prawilxno, to, w bolx{instwe slu~aew,
wozwra}aemoe e`	zna~enie rawno 0.
.LIN 0
3. wozmovnostx wypolneniq funkcij i podprogramm	pod uprawleniem	togo ili inogo
monitora predstawlena w	prilovenii 4.
.LIN 0
4. esli	w opisanii priwedeno obra}enie k funkcii, to ee	movno wyzywatx i kak
podprogrammu. esli priwedeno obra}enie k podprogramme, to pri wyzowe ee	kak
funkcii	wozwra}aemoe zna~enie ne opredeleno.
.HLV 2
operacii s katalogami
.LIN
dlq wseh funkcij dannoj	gruppy neobhodimo, ~toby
drajwer	ispolxzuemogo ustrojstwa nahodilsq w pamqti.
|ti funkcii nelxzq wyzywatx iz podprogrammy zawer{eniq i podprogrammy
obrabotki prerywaniq.
.LIN
w obra}enii k funkciqm |toj gruppy ispolxzu`tsq	ob}ie parametry:
DBLK - massiw iz 4 slow, soderva}ij specifikaci` fajla
(w kode	RADIX-50), ispolxzuemogo w operacii;
CHAN - nomer kanala, u~astwu`}ego w operacii.
.SKI 2
.SWT
 I=ICLOSE (CHAN)
  ili
 I=CLOSEC (CHAN)
.AND 0
zakrywaet fajl.	kanal
oswobovdaetsq dlq drugoj operacii.
wyzow ignoriruetsq, esli kanal ne otkryt.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -4
na nositele su}estwuet za}i}ennyj fajl s analogi~nym imenem;
wypolnqetsq operaciq zakrytiq, na ustrojstwe budut dwa fajla
s odinakowym imenem.
.DFN I=IDELET (CHAN,DBLK[,SEGNUM])
udalqet	zapisx o fajle iz kataloga wne{nego ustrojstwa.
wremenno ispolxzuemyj w	operacii kanal CHAN dolven bytx	swoboden.
parametr SEGNUM	ukazywaet nomer	fajla w	operaciqh s magnitnoj
i kassetnoj lentami.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
pozicioniruet magnitnu`	lentu na fajl s	posledowatelxnym
nomerom	N na lente;
.DF2 1
kanal zanqt;
.DF2 2
fajl ne	najden;
.DF2 3
ustrojstwo zakrepleno za drugim	zadaniem;
.DF2 4
fajl za}i}en; operaciq ignoriruetsq.
.DFN I=IENTER (CHAN,DBLK,LENGTH[,SEGNUM])
sozdaet	nowyj fajl
dlq wywoda i swqzywaet nomer kanala
s ukazannym fajlom.
LENGTH sodervit	dlinu sozdawaemogo fajla.
parametr SEGNUM	uprawlqet pozicionirowaniem w operaciqh	s magnitnoj
i kassetnoj lentami.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo blokow, otwedennyh pod fajl;
.DF2 -1
kanal zanqt;
.DF2 -2
na nositele ne najden swobodnyj	u~astok, dlina kotorogo	bolx{e
ili rawna ukazannoj;
.DF2 -3
ustrojstwo zakrepleno za drugim	zadaniem;
.DF2 -4
su}estwuet za}i}ennyj fajl s analogi~nym imenem;
.DF2 -5
fajl s ukazannym posledowatelxnym nomerom ne najden.
.DFN I=IRENAM (CHAN,DBLK)
wypolnqet pereimenowanie fajla (priswaiwaet su}estwu`}emu fajlu
nowoe imq i tip).
w dwojnom bloke	DBLK perwye ~etyre slowa sodervat staru` specifikaci`
fajla, a sledu`}ie ~etyre slowa	- nowu`.
imq ustrojstwa w oboih specifikaciqh dolvno sowpadatx.
wremenno ispolxzuemyj w	operacii kanal CHAN dolven bytx	swoboden.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal zanqt;
.DF2 2
fajl ne	najden;
.DF2 3
su}estwuet za}i}ennyj fajl s analogi~nym imenem.
.TES 4
.SWT
 I=LOOKUP (CHAN,DBLK[,COUNT,SEGNUM])
  ili
 I=LOOKUP (CHAN,JOBDES)
.AND 0
perwaq forma ustanawliwaet swqzx mevdu kanalom CHAN
i ustrojstwom ili
su}estwu`}im fajlom.
wtoraq forma swqzywaet kanal s drugim zadaniem dlq obmena
informaciej w RT11FB(XM).
imq zadaniq ukazywaetsq	w massiwe JOBDES iz 4 slow.
esli JOBDES opu}en,
to kanal otkrywaetsq dlq ~teniq	iz l`bogo zadaniq.
parametr SEGNUM	ukazywaet nomer	fajla w	operaciqh s magnitnoj lentoj.
parametr COUNT ispolxzuetsq dlq	uprawleniq kassetnoj magnitnoj lentoj.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo blokow w otkrytom	fajle;
.DF2 -1
kanal zanqt;
.DF2 -2
fajl ne	najden;
.DF2 -3
ustrojstwo zakrepleno za drugim	zadaniem;
.DF2 -4
nedostupen ukazannyj lentoprotqvnyj mehanizm.
.HLV 2
operacii wwoda/wywoda
.LIN
pri obra}enii k	funkciqm |toj gruppy ispolxzu`tsq parametry:
.DFN BUF
massiw,	soderva}ij peredawaemye	ili prinimaemye	dannye;
.DFN WCNT
s~et~ik	peredawaemyh ili prinimaemyh slow;
.DFN CRTN
podprogramma zawer{eniq;
.DFN CHAN
nomer ispolxzuemogo w operacii kanala;
.DFN BLK
nomer bloka w fajle, s kotorogo	na~inaetsq operaciq;
.DFN AREA
massiw iz 4 slow dlq informacii	o swqzqh.
.SKI 2
.DFN I=IREAD (WCNT,BUF,BLK,CHAN)
ustanawliwaet w	o~eredx	zapros na ~tenie informacii iz fajla
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo pro~itannyh slow;
.DF2 -1
byla sdelana popytka ~teniq posle konca	fajla;
.DF2 -2
w kanale proizo{la apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IREADC (WCNT,BUF,BLK,CHAN,CRTN)
ustanawliwaet w	o~eredx	zapros na ~tenie informacii iz fajla
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na makroassemblere.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo pro~itannyh slow;
.DF2 -1
byla sdelana popytka ~teniq posle konca	fajla;
.DF2 -2
w kanale proizo{la apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IREADF (WCNT,BUF,BLK,CHAN,AREA,CRTN)
ustanawliwaet w	o~eredx	zapros na ~tenie informacii iz fajla
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na fortrane.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo pro~itannyh slow;
.DF2 -1
byla sdelana popytka ~teniq posle konca	fajla;
.DF2 -2
w kanale proizo{la apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IREADW (WCNT,BUF,BLK,CHAN)
ustanawliwaet w	o~eredx	zapros na ~tenie informacii iz fajla
po ukazannomu kanalu.
wozwra}aet uprawlenie programme	posle zawer{eniq operacii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo pro~itannyh slow;
.DF2 -1
byla sdelana popytka ~teniq posle konca	fajla;
.DF2 -2
w kanale proizo{la apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=ITTINR ()
s~itywaet odin znak s sistemnogo terminala. revim wwoda
zadaetsq bitami	6 i 12 slowa sostoqniq zadaniq JSW.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 >0
oby~nyj	wyhod; simwol pro~itan;
.DF2 <0
bufer wwoda pust; simwol ne wweden.
.DFN I=ITTOUR (CHAR)
peredaet odin znak na sistemnyj	terminal.
revim wywoda zadaetsq bitom {estx slowa	sostoqniq zadaniq JSW.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kolxcewoj bufer	polon.
.DFN I=IWAIT (CHAN)
perewodit programmu w sostoqnie	ovidaniq zawer{eniq operacij wwoda/wywoda
po ukazannomu kanalu. podprogrammy zawer{eniq prodolva`t funkcionirowatx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt;
.DF2 2
wo wremq predydu}ej operacii wwoda/wywoda po dannomu
kanalu byla zafiksirowana apparatnaq o{ibka.
.DFN I=IWRITE (WCNT,BUF,BLK,CHAN)
ustanawliwaet w	o~eredx	zapros na pereda~u informacii w	fajl
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo zapisannyh slow;
.DF2 -1
byla sdelana popytka zapisi posle konca	fajla;
.DF2 -2
na ustrojstwe proizo{la	apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IWRITC (WCNT,BUF,BLK,CHAN,CRTN)
ustanawliwaet w	o~eredx	zapros na pereda~u informacii w	fajl
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na makroassemblere.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo zapisannyh slow;
.DF2 -1
byla sdelana popytka zapisi posle konca	fajla;
.DF2 -2
na ustrojstwe proizo{la	apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IWRITF (WCNT,BUF,BLK,CHAN,AREA,CRTN)
ustanawliwaet w	o~eredx	zapros na pereda~u informacii w	fajl
po ukazannomu kanalu i
wozwra}aet uprawlenie programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na fortrane.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo zapisannyh slow;
.DF2 -1
byla sdelana popytka zapisi posle konca	fajla;
.DF2 -2
na ustrojstwe proizo{la	apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN I=IWRITW (WCNT,BUFF,BLK,CHAN)
ustanawliwaet w	o~eredx	zapros na pereda~u informacii w	fajl
po ukazannomu kanalu.
wozwra}aet uprawlenie programme	posle okon~aniq	operacii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
~islo zapisannyh slow;
.DF2 -1
byla sdelana popytka zapisi posle konca	fajla;
.DF2 -2
na ustrojstwe proizo{la	apparatnaq o{ibka;
.DF2 -3
kanal ne otkryt.
.DFN CALL PRINT	(STRING)
raspe~atywaet ukazannu`	stroku STRING na sistemnom terminale.
.DFN I=ISPFN (CODE,CHAN[,WCNT,BUF,BLK])
ustanawliwaet zapros na	wypolnenie specialxnoj funkcii s kodom CODE
po ukazannomu kanalu
w o~eredx i wozwra}aet uprawlenie programme.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
byla sdelana popytka ~itatx ili	pisatx posle konca fajla;
.DF2 2
na ustrojstwe proizo{la	apparatnaq o{ibka;
.DF2 3
kanal ne otkryt.
.DFN I=ISPFNC (CODE,CHAN,WCNT,BUFF,BLK,CRTN)
ustanawliwaet zapros na	wypolnenie specialxnoj funkcii s kodom CODE
po ukazannomu kanalu
w o~eredx i wozwra}aet uprawlenie programme.
posle okon~aniq	operacii budet wypolnena podprogramma
zawer{eniq, napisannaq na makroassemblere.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
byla sdelana popytka ~itatx ili	pisatx posle konca fajla;
.DF2 2
proizo{la apparatnaq o{ibka na ustrojstwe;
.DF2 3
kanal ne otkryt.
.DFN I=ISPFNF (CODE,CHAN,WCNT,BUFF,BLK,AREA,CRTN)
ustanawliwaet zapros na	wypolnenie specialxnoj funkcii s kodom CODE
po ukazannomu kanalu
w o~eredx i wozwra}aet uprawlenie programme.
posle okon~aniq	operacii budet wypolnena podprogramma
zawer{eniq, napisannaq na fortrane.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
byla sdelana popytka ~itatx ili	pisatx posle konca fajla;
.DF2 2
proizo{la apparatnaq o{ibka na ustrojstwe;
.DF2 3
kanal ne otkryt.
.DFN I=ISPFNW (CODE,CHAN[,WCNT,BUFF,BLK])
ustanawliwaet zapros na	wypolnenie specialxnoj funkcii s kodom CODE
po ukazannomu kanalu w o~eredx.
wozwra}aet uprawlenie programme	posle okon~aniq	operacii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
byla sdelana popytka ~itatx ili	pisatx posle konca fajla;
.DF2 2
proizo{la apparatnaq o{ibka na ustrojstwe;
.DF2 3
kanal ne otkryt.
.HLV 2
rabota s kanalami
.LIN
dannaq gruppa funkcij ispolxzuetsq dlq polu~eniq sprawo~noj
informacii o kanalah,
kopirowaniq informacii iz odnogo kanala	w drugoj
i t.d.
.SKI 2
.DFN I=ICDFN (NUM[,AREA])
opredelqet ~islo (NUM) kanalow wwoda/wywoda.
ICDFN nelxzq wyzywatx iz podprogramm zawer{eniq	i obrabotki prerywanij.
parametr AREA -	massiw dlq zapisi informacii o kanalah.
esli on	ne ukazan, to pamqtx wydelqetsq	w rabo~ej oblasti ispolnq`}ej
sistemy	fortrana.
dlina massiwa AREA dolvna bytx 7*NUM dlq RT11XM
i 5*NUM	dlq ostalxnyh monitorow.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
byla sdelana popytka opredelitx	menx{ee	koli~estwo kanalow,
~em uve	su}estwuet;
.DF2 2
dlq zapisi informacii o	kanalah	malo pamqti.
.DFN I=ICHCPY (CHAN,OCHAN[,JOBBLK])
pozwolqet ispolxzowatx informaci`, razme}ennu` w fajlah, otkrytyh
sistemnym zadaniem (esli ukazan	parametr JOBBLK	- massiw
iz 3 slow s imenem zadaniq
w kode koi-7) ili otkrytyh w operatiwnom ili fonowom
zadanii	(esli JOBBLK ne	ukazan).
informaciq o kanale OCHAN kopiruetsq w kanal CHAN.
kanal, swqzannyj s ustrojstwom posledowatelxnogo dostupa, ne dolven
kopirowatxsq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal OCHAN ne otkryt ili net drugogo zadaniq;
.DF2 2
kanal CHAN zanqt.
.DFN I=ICSTAT (CHAN,ADDR)
wozwra}aet status ukazannogo kanala CHAN w massiw ADDR iz 6 slow.
ADDR budet sodervatx informaci`, opisanie kotoroj
priwedeno w makrokomande .CSTATUS.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt.
.DFN I=IFREEC (CHAN)
wozwra}aet kanal CHAN w	spisok swobodnyh kanalow OTS fortrana.
IFREEC nelxzq wyzywatx iz podprogramm zawer{eniq i obrabotki prerywanij.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt.
.DFN I=IGETC ()
izwlekaet kanal	iz spiska swobodnyh kanalow OTS	fortrana i predostawlqet
ego polxzowatel`.
IGETC nelxzq wyzywatx iz podprogramm zawer{eniq	i obrabotki prerywanij.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
nomer wydelennogo kanala;
.DF2 -1
net swobodnyh kanalow.
.DFN I=ILUN (LUN)
wozwra}aet nomer kanala, swqzannogo s nomerom LUN logi~eskogo
ustrojstwa fortrana.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 N
nomer kanala, swqzannogo s logi~eskim ustrojstwom;
.DF2 -1
logi~eskoe ustrojstwo ne otkryto;
.DF2 -2
logi~eskoe ustrojstwo qwlqetsq sistemnym terminalom.
.DFN I=IREOPN (CHAN,CBLK)
powtorno otkrywaet kanal CHAN, predwaritelxno zakrytyj s pomo}x`
funkcii	ISAVES.
CBLK - massiw iz 5-ti slow, soderva}ij informaci`,
zanesennu` funkciej ISAVES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal zanqt.
.DFN I=ISAVES (CHAN,CBLK)
sohranqet pqtx slow informacii o kanale	CHAN
w ukazannom massiwe CBLK i oswobovdaet
kanal dlq drugih celej.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt;
.DF2 2
kanal swqzan s fajlom, otkrytym	s
pomo}x`	funkcii	IENTER;	operaciq ignoriruetsq.
.DFN CALL PURGE	(CHAN)
o~i}aet	kanal CHAN. delaet ego dostupnym dlq ispolxzowaniq w drugih celqh.
zakrytie fajla ne proishodit. esli kanal ne otkryt, operaciq ignoriruetsq.
.HLV 2
obrabotka komandnoj stroki
.LIN
funkcii	dannoj gruppy predostawlq`t polxzowatel` wozmovnostx raboty
s interpretatorom komandnoj stroki.
.SKI 2
.DFN CALL GTLIN	(RESULT[,PROMPT])
prinimaet stroku s terminala ili iz komandnogo fajla w massiw RESULT.
PROMPT - tekst,	wywodimyj na |kran terminala pered wwodom stroki.
.DFN I=IASIGN (LUN,IDEV[,IFILEX[,ISIZE[,ITYPE]]])
zanosit	informaci` wo wnutrenn`` tablicu OTS fortrana,
swqzywaq imq ustrojstwa	IDEV w kode RAD50
s ukazannym logi~eskim nomerom LUN.
parametr IFILEX	- massiw iz 3 slow, soderva}ij imq i tip fajla w kode
RAD50. parametr	ISIZE ukazywaet	dlinu sozdawaemogo fajla.
parametr ITYPE opredelqet harakteristiki fajla.	ITYPE polu~aetsq sloveniem
nivepere~islennyh weli~in:
.DF2  1
ispolxzowatx dwojnu` buferizaci` dlq wywoda;
.DF2  2
otkrytx	fajl w ka~estwe	wremennogo;
.DF2  4
wypolnitx otkrytie fajla funkciej LOOKUP
wo wremq perwoj	operacii wwoda/wywoda;
esli |tot razrqd ne ustanowlen,	to funkciq, wypolnq`}aq	otkrytie fajla,
opredelqetsq perwoj operaciej obmena (READ - LOOKUP, a WRITE - IENTER);
.DF2  8
ispolxzowatx standartnye sogla{eniq fortrana ob	uprawlenii karetkoj
(perwyj	znak stroki - uprawlq`}ij);
.DF2 16
ne ispolxzowatx	perwyj znak stroki dlq uprawleniq karetkoj;
.DF2 32
fajl movno tolxko ~itatx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 >0	ili <0
operaciq ne byla wypolnena, t.k.
logi~eskoe ustrojstwo zanqto ili net mesta w tablicah
(~islo mest w tablicah OTS opredelqetsq	pri translqcii programmy
kl`~om /UNIT).
.DFN I=ICSI (OUTSPC,TYP,[CSTRING],[SWITCH],NUM)
wyzywaet CSI w osobom revime i wozwra}aet w massiw OUTSPC iz 39	slow
specifikacii fajlow.
zagruzka drajwerow i otkrytie
fajlow ne proizwoditsq.
parametr TYP - massiw iz 4 slow
sodervit tipy fajlow, ispolxzuemye po umol~ani`.
parametr CSTRING sodervit interpretiruemu` komandnu`
stroku.	esli on	opu}en,	to stroka wwoditsq s terminala.
NUM sodervit koli~estwo	kl`~ej w tablice SWITCH
(esli SWITCH ne	ukazan,	to NUM dolven bytx rawen 0).
esli kl`~ movet	poqwlqtxsq w komandnoj stroke neskolxko	raz,
to on stolxko ve raz dolven bytx opisan	w massiwe SWITCH.
opisanie kavdogo kl`~a imeet sledu`}ij format
(N - nomer kl`~a):
.DF2 SWITCH (1,N)
odnosimwolxnoe imq kl`~a w koi-7;
.DF2 SWITCH (2,N)
ustanawliwaetsq	funkciej; 0, esli kl`~ otsutstwuet w komandnoj stroke;
1, esli	kl`~ estx w komandnoj stroke, no bez zna~eniq;
2, esli	kl`~ estx i imeet zna~enie;
.DF2 SWITCH (3,N)
nomer fajla, pri kotorom ukazan	kl`~;
.DF2 SWITCH (4,N)
zna~enie kl`~a,	esli SWITCH(2,N) rawen 2;
esli zna~enie kl`~a ~islowoe, to zanositsq weli~ina ~isla;
esli zna~enie kl`~a simwolxnoe,	to zanositsq predstawlenie simwola
w kode RADIX-50.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
nedopustimaq komandnaq stroka; operaciq	ignoriruetsq;
.DF2 2
ukazano	nedopustimoe imq ustrojstwa;
.DF2 3
nedopustimyj kl`~ ili odin kl`~	ispolxzuetsq bolx{ee ~islo raz,
~em razre{eno tablicej SWITCH.
.HLV 2
rabota s tajmerom
.LIN
pri obra}enii k	funkciqm |toj gruppy ispolxzu`tsq parametry:
ITIME -	massiw iz 2 slow ili weli~ina tipa INTEGER*4
dlq zapisi wremeni wo wnutrennem
formate	(perwoe	slowo sodervit star{u` ~astx, wtoroe - mlad{u`);
.DF2 HRS
celoe, soderva}ee ~islo	~asow;
.DF2 MIN
celoe, soderva}ee ~islo	minut;
.DF2 SEC
celoe, soderva}ee ~islo	sekund;
.DF2 TICK
celoe, soderva}ee ~islo	tikow (1/50 sekundy);
.DF2 AREA
massiw iz 4 slow dlq informacii	o swqzi;
.DF2 CRTN
imq podprogrammy zawer{eniq.
.SKI 2
.DFN CALL CVTTIM (ITIME,HRS,MIN,SEC,TICK)
preobrazuet zna~enie wo	wnutrennem formate wremeni sistemnogo
tajmera	w ~asy,	minuty,	sekundy	i tiki.
.DFN CALL GTIM (ITIME)
wozwra}aet teku}ee wremq sutok wo wnutrennem formate.
.DFN I=ICMKT (ID,ITIME)
otmenqet odin (ID ne rawen 0) ili wse zaprosy (ID=0)
na zapusk podprogramm zawer{eniq po tajmeru.
w ITIME	zanositsq wremq, ostaw{eesq do wypolneniq dannogo zaprosa.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
zapros s ukazannym ID ne najden.
.DFN I=ISCHED (HRS,MIN,SEC,TICK,AREA,ID,CRTN)
planiruet zapusk podprogrammy zawer{eniq CRTN, napisannoj na qzyke fortran,
w zadannoe wremq sutok.
ID - identifikator zaprosa.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN I=ISLEEP (HRS,MIN,SEC,TICK)
priostanawliwaet wypolnenie programmy na zadannyj interwal wremeni.
podprogrammy zawer{eniq	prodolva`t funkcionirowatx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN I=ITIMER (HRS,MIN,SEC,TICK,AREA,ID,CRTN)
planiruet zapusk podprogrammy zawer{eniq CRTN, napisannoj na qzyke fortran,
~erez ukazannyj	interwal wremeni.
ID - identifikator zaprosa.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN I=ITWAIT (ITIME)
priostanawliwaet wypolnenie programmy na interwal wremeni,
zadannyj wo wnutrennem formate.
podprogrammy zawer{eniq	prodolva`t funkcionirowatx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN I=IUNTIL (HRS,MIN,SEC,TICK)
priostanawliwaet wypolnenie programmy do zadannogo wremeni sutok.
podprogrammy zawer{eniq	prodolva`t funkcionirowatx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN I=JTIME (HRS,MIN,SEC,TICK,ITIME)
preobrazuet ~asy, minuty, sekundy i tiki w zna~enie wo
wnutrennem formate.
.DFN I=MRKT (ID,CRTN,ITIME)
planiruet zapusk podprogrammy zawer{eniq CRTN,
napisannoj na makroassemblere, ~erez ukazannyj wo
wnutrennem formate interwal wremeni.
ID - identifikator zaprosa.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo |lementa	o~eredi; operaciq ignoriruetsq.
.DFN A=SECNDS (ATIME)
wozwra}aet zna~enie tipa REAL*4	(teku}ee wremq w sekundah minus
ukazannaq weli~ina ATIME tipa REAL*4).
.DFN CALL TIMASC (ITIME,STRING)
preobrazuet zna~enie sistemnogo	wremeni	wo wnutrennem formate w
stroku STRING iz 8 simwolow (~~:mm:ss -	~asy, minuty, sekundy) w koi-7.
.DFN CALL TIME (STRING)
wozwra}aet teku}ee wremq dnq w stroku STRING iz	8 simwolow
(~asy, minuty, sekundy)	w koi-7.
.HLV 2
ob}ego nazna~eniq
.LIN
funkcii	dannoj gruppy prednazna~eny dlq	dostupa
iz programm polxzowatelq k dopolnitelxnym
sredstwam monitorow.
.SKI 2
.DFN CALL CHAIN	(DBLK,VAR,WCNT)
peredaet uprawlenie drugoj fonowoj programme, specifikaciq fajla
kotoroj	ukazana	w massiwe
DBLK iz	4 slow w kode RAD50:
.DF2 VAR
peremennaq, soderva}aq perwoe slowo
informacii, peredawaemoj w drugu` programmu;
.DF2 WCNT
~islo slow w |toj informacii (ne bolee 60).
informaciq dolvna
bytx wyrownena na granicu slowa.
obra}enie k peredannym dannym osu}estwlqetsq wyzowom RCHAIN.
logi~eskie ustrojstwa fortrana pered wyzowom CHAIN dolvny bytx zakryty.
.DFN CALL DEVICE (ILIST[,LINK])
podprogramma pozwolqet zadatx spisok ILIST adresow i zna~enij,
kotorye	po zawer{eni` programmy
zapisywa`tsq po	|tim adresam
(perwoe	slowo sodervit adres, wtoroe - zna~enie	i t.d.;	zakan~iwaetsq
nulewym	slowom).
LINK ukazywaet,	~to ispolxzuetsq swqznyj spisok	tablic
.DFN I=GTJB (ADDR[,JOBBLK])
wozwra}aet parametry zadaniq, ukazannogo w massiwe
JOBBLK iz 3 slow w koi-7.
massiw ADDR (12	slow) budet sodervatx sledu`}u`	informaci`:
nomer zadaniq;
werhnqq	granica	ispolxzuemoj pamqti;
nivnqq granica ispolxzuemoj pamqti;
ukazatelx na na~alo oblasti kanalow wwoda/wywoda;
adres sme{annoj	oblasti	(dlq RT11FB(XM)) ili 0 (dlq RT11SJ);
nomer wydelennogo sistemnogo terminala;
wirtualxnaq werhnqq granica, esli pri komponowke ispolxzowalsq
kl`~ /V	(dlq RT11XM), w protiwnom slu~ae 0;
dwa slowa
zarezerwirowany	dlq dalxnej{ego	ispolxzowaniq;
logi~eskoe imq zadaniq w koi-7 (3 slowa).
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
zadanie	otsutstwuet.
.DFN I=IDSTAT (DEVNAM,CBLK)
wozwra}aet status ustrojstwa, ukazannogo zna~eniem DEVNAM w kode RAD50,
w massiw CBLK iz 4 slow.
IDSTAT ne movet	wyzywatxsq iz podprogramm zawer{eniq ili
obrabotki prerywanij.
CBLK imeet format:
status ustrojstwa;
razmer drajwera	ustrojstwa w bajtah;
adres to~ki whoda w drajwer
(nenulewoe zna~enie ozna~aet, ~to drajwer zagruven
w pamqtx);
razmer ustrojstwa w blokah po 256
slow dlq ustrojstw s blo~noj strukturoj,
w protiwnom slu~ae 0.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
ustrojstwo ne najdeno w	tablicah monitora.
.DFN I=IFETCH (DEVNAM)
zagruvaet w operatiwnu`	pamqtx drajwer ustrojstwa, ukazannogo zna~eniem	DEVNAM
w kode RAD50.
IFETCH ne movet	wyzywatxsq iz podprogramm zawer{eniq ili
obrabotki prerywanij, a	takve iz operatiwnogo i	sistemnyh zadanij.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
ukazannoe ustrojstwo otsutstwuet w tablicah monitora;
.DF2 2
net mesta w pamqti dlq zagruzki	drajwera;
.DF2 3
otsutstwuet drajwer ukazannogo ustrojstwa na sistemnom nositele.
.DFN I=IQSET (QLENG[,AREA])
uweli~iwaet koli~estwo |lementow o~eredi na QLENG |lementow.
AREA - massiw, wydelqemyj pod |lementy o~eredi.
dlina massiwa dolvna bytx 10*QLENG dlq RT11XM i 7*QLENG
dlq ostalxnyh monitorow.
esli on	ne ukazan, pamqtx wydelqetsq w rabo~ej oblasti ispolnq`}ej sistemy
fortrana.
IQSET ne movet wyzywatxsq iz podprogramm zawer{eniq ili
obrabotki prerywanij.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net pamqti dlq ukazannogo ~isla	|lementow o~eredi;
operaciq ignoriruetsq.
.DFN I=ITLOCK ()
wypolnqet prowerku zanqtosti USR drugoj	programmoj; esli USR swobodna,
to wypolnqet operaci` LOCK.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
USR ispolxzuetsq drugim	zadaniem.
.DFN CALL LOCK
zakreplqet USR w pamqti	do wypolneniq UNLOCK.
ob'qwlqet ee zanqtoj dannym zadaniem.
esli USR zanqta	drugim zadaniem, to teku}ee budet priostanowleno
do oswobovdeniq	USR.
.DFN CALL RCHAIN (FLAG,VAR,WCNT)
priem informacii (zna~enij peremennyh) pri pereda~e
uprawleniq iz drugoj fonowoj programmy po CHAIN.
esli programma wyzwana po CHAIN, to FLAG ustanawliwaetsq w 1.
esli programma wyzwana po komande monitora RUN,
to FLAG	rawen 0.
parametry prinima`tsq w	massiw VAR.
WCNT - koli~estwo prinqtyh slow.
.DFN CALL RCTRLO
razre{aet wywod	na sistemnyj terminal,
otmenqq	dejstwie komandy <CTRL/O>, wwedennoj s terminala.
.DFN CALL RESUME
prodolvaet wypolnenie osnownoj programmy, priostanowlennoj po SUSPND.
ispolxzuetsq tolxko w RT11FB(XM) i NTS w podprogrammah zawer{eniq.
.DFN CALL SCCA [(IFLAG)]
zapre}aet zawer{enie programmy po komande operatora <CTRL/C>.
pozwolqet programme razli~atx <CTRL/C> i <CTRL/C><CTRL/C>,
ustanawliwaq IFLAG (pri	dwojnom	<CTRL/C>), kotoryj predwaritelxno dolven
bytx obnulen. pri wyzowe SCCA bez argumenta zapre}enie otmenqetsq.
.DFN CALL SETCMD (STRING)
opredelqet stroku STRING komandy, kotoraq
budet wypolnena	monitorom posle	zawer{eniq programmy.
.DFN CALL SUSPND
priostanawliwaet wypolnenie osnownoj programmy.	podprogrammy zawer{eniq
prodolva`t funkcionirowatx.
.DFN CALL UNLOCK
oswobovdaet USR, zakreplennu` w	pamqti po LOCK dlq
ispolxzowaniq drugimi programmami.
.DFN I=IADDR(ARG)
wozwra}aet 16-razrqdnyj	adres argumenta	ARG.
.DFN I=IGETSP(MIN,MAX,ADDR)
wozwra}aet w ADDR adres, a w zna~enii funkcii
razmer swobodnoj pamqti, wydelennoj po |tomu
zaprosu	iz resursa OTS fortrana.
MIN i MAX - minimalxnyj	i maksimalxnyj razmer oblasti, kotoru`
neobhodimo polu~itx.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -1
net swobodnoj pamqti; operaciq ignoriruetsq;
.DF2 >0
fakti~eskij razmer wydelennoj pamqti.
.DFN I=INTSET(VECT,PRI,ID,CRTN)
opredelqet podprogrammu	CRTN fortrana w	ka~estwe podprogrammy obrabotki
prerywanij s wektorom VECT i na	prioritete PRI processora.
ID - celo~islennaq weli~ina, peredawaemaq w podprogrammu
obrabotki prerywaniq pri ee wyzowe.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
dano newernoe opisanie wektora;
.DF2 3
otsutstwuet swobodnaq oblastx dlq informacii o swqzqh.
.DFN I=IPEEK(IADDR)
wozwra}aet sodervimoe q~ejki pamqti s ukazannym	adresom	IADDR.
.DFN I=IPEEKB(IADDR)
wozwra}aet sodervimoe bajta s ukazannym	adresom	IADDR.
.DFN CALL IPOKE	(IADDR,IVALUE)
zanosit	celoe zna~enie IVALUE po ukazannomu adresu pamqti IADDR.
.DFN CALL IPOKEB (IADDR,IVALUE)
zanosit	celoe zna~enie IVALUE w	bajt, ukazannyj	adresom	IADDR.
.DFN I=ISPY(IOFF)
wozwra}aet celoe zna~enie sodervimogo q~ejki rezidentnogo monitora
po sme}eni` IOFF otnositelxno ego na~ala.
.HLV 2
obmen mevdu zada~ami (RT11FB(XM))
.LIN
w obra}enii k funkciqm |toj gruppy ispolxzu`tsq	parametry:
.DF2 BUF
massiw,	soderva}ij peredawaemye	ili prinimaemye	dannye;
.DF2 WCNT
s~et~ik	peredawaemyh ili prinimaemyh slow;
.DF2 CRTN
podprogramma zawer{eniq;
.DF2 AREA
massiw iz 4 slow dlq informacii	o swqzqh.
.SKI 2
.DFN I=IRCVD (BUF,WCNT)
ustanawliwaet w	o~eredx	zapros na priem	soob}eniq
ot drugogo zadaniq
i wozwra}aet uprawlenie	programme.
posle zawer{eniq operacii
perwoe slowo BUF budet sodervatx ~islo peredannyh slow,
po|tomu	ego dlina dolvna bytx na odno slowo bolx{e zna~eniq WCNT.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=IRCVDC (BUF,WCNT,CRTN)
ustanawliwaet w	o~eredx	zapros na priem	soob}eniq
ot drugogo zadaniq
i wozwra}aet uprawlenie	programme.
posle zawer{eniq operacii
perwoe slowo BUF budet sodervatx ~islo peredannyh slow,
po|tomu	ego dlina dolvna bytx na odno slowo bolx{e zna~eniq WCNT.
posle zawer{eniq operacii budet
wyzwana	podprogramma zawer{eniq, napisannaq na
makroassemblere.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=IRCVDF (BUF,WCNT,AREA,CRTN)
ustanawliwaet w	o~eredx	zapros na priem	soob}eniq
ot drugogo zadaniq
i wozwra}aet uprawlenie	programme.
posle zawer{eniq operacii
perwoe slowo BUF budet sodervatx ~islo peredannyh slow,
po|tomu	ego dlina dolvna bytx na odno slowo bolx{e zna~eniq WCNT.
posle zawer{eniq operacii budet
wyzwana	podprogramma zawer{eniq, napisannaq na fortrane.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=IRCVDW (BUF,WCNT)
ustanawliwaet w	o~eredx	zapros na priem	soob}eniq
ot drugogo zadaniq. wypolnenie programmy priostanawliwaetsq
do okon~aniq operacii.
posle zawer{eniq operacii
perwoe slowo BUF budet sodervatx ~islo peredannyh slow,
po|tomu	ego dlina dolvna bytx na odno slowo bolx{e zna~eniq WCNT.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=ISDAT (BUF,WCNT)
ustanawliwaet w	o~eredx	zapros na pereda~u soob}eniq
drugomu	zadani`
i wozwra}aet uprawlenie	programme.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=ISDATC (BUF,WCNT,CRTN)
ustanawliwaet w	o~eredx	zapros na pereda~u soob}eniq
drugomu	zadani`
i wozwra}aet uprawlenie	programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na makroassemblere.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=ISDATF (BUF,WCNT,AREA,CRTN)
ustanawliwaet w	o~eredx	zapros na pereda~u soob}eniq
drugomu	zadani`
i wozwra}aet uprawlenie	programme.
posle zawer{eniq operacii budet	wypolnena podprogramma zawer{eniq,
napisannaq na fortrane.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN I=ISDATW (BUF,WCNT)
ustanawliwaet w	o~eredx	zapros na pereda~u soob}eniq
drugomu	zadani`.
wozwra}aet uprawlenie programme	posle zawer{eniq operacii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
otsutstwuet operatiwnoe	zadanie.
.DFN CALL MWAIT
priostanawliwaet wypolnenie programmy do zawer{eniq obmena soob}eniqmi
mevdu zadaniqmi.
.HLV 2
rabota s dopolnitelxnymi terminalami (RT11 SJ...XM)
.LIN
funkcii	dannoj gruppy predostawlq`t wozmovnostx	iz programm
polxzowatelq uprawlqtx rabotoj dopolnitelxnyh terminalow.
wozmovnostx raboty s dopolnitelxnymi terminalami zadaetsq pri generacii
sistemy.
.SKI 2
.DFN CALL MTATCH (UNIT[,ADDR][,JOBN])
zakreplqet terminal s nomerom UNIT za programmoj.
ADDR - peremennaq, kotoraq budet sodervatx
asinhronnoe slowo sostoqniq terminala.
esli terminal uve zakreplen za drugim zadaniem,	to
JOBN budet sodervatx nomer |togo zadaniq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 3
zadan nomer nesu}estwu`}ego terminala;
.DF2 5
terminal zakreplen za drugoj zada~ej;
.DF2 6
w RT11XM adres slowa sostoqniq nahoditsq wne granic	zadaniq.
.DFN CALL MTDTCH (UNIT)
oswobovdaet terminal s nomerom UNIT.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala.
.DFN I=MTGET(UNIT,ADDR[,JOBN])
wozwra}aet sprawo~nu` informaci` o terminale s nomerom UNIT w
massiw ADDR iz 4-h slow.
esli terminal zakreplen	za drugim zadaniem, to JOBN budet sodervatx
nomer |togo zadaniq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala;
.DF2 4
terminal zakreplen za drugoj zada~ej;
.DF2 6
w RT11XM adres massiwa ADDR	nahoditsq wne granic zadaniq.
.DFN I=MTIN(UNIT,CHAR[,CHRCNT][,OCNT])
wypolnqet s~itywaenie znaka (znakow) s terminala s nomerom UNIT	w CHAR.
CHRCNT - koli~estwo s~itywaemyh	znakow.
OCNT - koli~estwo fakti~eski s~itannyh znakow.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
bufer terminala	pust;
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala.
.DFN I=MTOUT(UNIT,CHAR[,CHRCNT][,OCNT])
wywodit	znak (znaki) na	terminal s nomerom UNIT	iz CHAR.
CHRCNT - koli~estwo wywodimyh znakow.
OCNT - koli~estwo fakti~eski wywedennyh	znakow.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net mesta w bufere terminala;
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala;
.DF2 5
w RT11XM adres bufera CHAR nahoditsq wne granic zadaniq.
.DFN CALL MTPRNT (UNIT,ADDR)
wywodit	stroku ADDR na terminal	s nomerom UNIT.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala;
.DF2 5
w RT11XM adres stroki ADDR nahoditsq wne granic zadaniq.
.DFN CALL MTRCTO (UNIT)
otmenqet dejstwie komandy <CTRL/O>, wwedennoj s	terminala s nomerom UNIT.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala.
.DFN I=MTSET(UNIT,ADDR)
ustanawliwaet harakteristiki terminala s nomerom UNIT, zapisannye w massiwe
ADDR iz	4 slow.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 2
terminal ne prinadlevit	zadani`;
.DF2 3
zadan nomer nesu}estwu`}ego terminala;
.DF2 6
w RT11XM adres massiwa ADDR	nahoditsq wne granic zadaniq.
.DFN I=MTSTAT(ADDR)
wozwra}aet w massiw ADDR iz 8 slow zna~eniq parametrow mnogoterminalxnoj
sistemy. massiw	ADDR budet sodervatx sledu`}u` informaci`:
sme}enie ot nivnej granicy rezidentnogo	monitora do perwogo bloka
uprawleniq terminalom;
sme}enie ot nivnej granicy rezidentnogo	monitora do bloka
uprawleniq sistemnym terminalom;
~islo blokow uprawleniq	terminalom w sisteme;
ob'em bloka uprawleniq terminalom w bajtah;
~etyre slowa zarezerwirowany.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 5
w RT11XM adres massiwa ADDR	nahoditsq wne granic zadaniq.
.HLV 2
sluvebnye (os NTS)
.LIN
funkcii	dannoj gruppy da`t wozmovnostx ispolxzowatx dopolnitelxnye
sredstwa os NTS.
.SKI 2
.DFN CALL IBLIN	(BUF,BUFSIZ,BCNT[,IERR])
s~itywaet s terminala znaki w bufer BUF	do ego
zapolneniq (dlina BUFSIZ) ili poka ne budet wweden odin	iz znakow aktiwacii.
posle zawer{eniq operacii BCNT sodervit	~islo dejstwitelxno wwedenyh znakow.
.LIN
w IERR wozwra}aetsq zna~enie:
.DF2 1
bufer polnostx`	zapolnen.
.DFN CALL IBLOUT (BUF,BCNT)
wywodit	na terminal bolx{u` porci`
informacii (blok) iz bufera s adresom BUF dlinnoj BCNT (w bajtah).
ispolxzowanie dannoj funkcii pozwolqet su}estwenno menx{e zagruvatx
centralxnyj processor pri wywode na terminal po	srawneni` s funkciej ITTOUR.
.DFN CALL IBREAK (CHAR,CRTN)
opredelqet podprogrammu	zawer{eniq CRTN, kotoroj mikrgo	os/4 peredaet
uprawlenie pri wwode s terminala znaka s ukazannym
kodom CHAR. powtornoe
wypolnenie dannoj funkcii otmenqet ee predydu}ee dejstwie.
esli w ka~estwe	adresa podprogrammy zawer{eniq ukazatx 0, to dejstwie
poslednej funkcii IBREAK otmenqetsq.
.DFN I=IDISMO (DEVICE)
prekra}aet k|{irowanie kataloga	ukazannogo ustrojstwa
(analogi~no komande monitora DISMOUNT).
DEVICE - peremennaq ili	konstanta, soderva}aq
imq ustrojstwa w kode RAD50.
.DFN I=IFRSPL ()
wozwra}aet ~islo swobodnyh blokow w bufernom fajle podsistemy
spulinga.
.DFN CALL IHIOF	()
otmenqet wysoko|ffektiwnyj revim raboty	s terminalom.
.DFN CALL IHION	()
perewodit programmu w wysoko|ffektiwnyj	revim raboty s terminalom.
w |tom revime raboty ne	proizwoditsq prowerok peredawaemyh znakow
na uprawlq`}ie simwoly.
specialxnym obrazom
obrabatywa`tsq tolxko znaki aktiwacii, opredelennye polxzowatelem
(pri |tom dolven
bytx opredelen hotq by odin znak aktiwacii).
.DFN I=IMOUNT (DEVICE)
razre{aet
k|{irowanie kataloga ukazannogo	ustrojstwa
(analogi~no komande monitora MOUNT).
DEVICE - peremennaq ili	konstanta, soderva}aq imq ustrojstwa w kode RAD50.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
tablica	ustrojstw, katalogi kotoryh k|{iru`tsq,	perepolnena.
.DFN CALL IMSEND (LINE,ADDR)
pozwolqet wywesti stroku soob}eniq iz massiwa ADDR na terminal s nomerom LINE
(fizi~esku` lini`). soob}enie dolvno zakan~iwatxsq nulewym bajtom.
.DFN CALL ISETODT ()
ispolxzuetsq dlq ukazaniq neobhodimosti	aktiwacii programmy pri	wwode znakow,
trebuemyh otlad~iku TSODT. w |tom revime os NTS rassmatriwaet wse znaki
w ka~estwe znakow aktiwacii, za	iskl`~eniem cifr, ",", "$" i ";".
.DFN CALL IRSTODT ()
otmenqet dejstwie funkcii ISETODT.
.DFN I=ITRMTYPE	()
wozwra}aet ~islo, opredelq`}ee tip terminala, swqzannogo s liniej,
na kotoroj zapu}ena programma.
.DFN I=ITSLINE ()
wozwra}aet nomer linii,	swqzannoj s programmoj.
wse linii numeru`tsq w os NTS s edinicy:
sna~ala	idut fizi~eskie	linii, zatem idut linii	dlq
awtonomnyh zadanij, poslednimi numeru`tsq wirtualxnye linii.
.DFN I=ITSACT ()
opredelqet nali~ie w bufere terminala znaka aktiwacii,
e}e ne s~itannogo programmoj.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
w bufere wwoda terminala net ni	odnogo znaka aktiwacii;
.DF2 1
po krajnej mere	odin znak aktiwacii estx w bufere wwoda	terminala.
.DFN I=ITSTER ()
pozwolqet opredelitx nali~ie o{ibok pri	wwode s	terminala,
podkl`~ennogo na posledowatelxnyj interfejs.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
pri wwode s terminala o{ibok
ne proizo{lo;
.DF2 1
obnaruvena o{ibka pri wwode s terminala.
.DFN I=ITSTOP (TOPADR)
prednazna~ena dlq dinami~eskogo	izmeneniq razmera
pamqti,	wydelennoj programme.
TOPADR -
zapra{iwaemyj programmoj werhnij adres operatiwnoj pamqti.
posle wypolneniq operacii w ka~estwe zna~eniq funkcii wozwra}aetsq
dejstwitelxnyj werhnij adres,
dostupnyj programme.
.DFN CALL ITTIME (TIME,CHAR)
zadaet tajm-aut	(interwal wremeni) dlq sledu`}ej operacii
wwoda s	terminala. zadaet maksimalxnoe wremq, kotoroe
dopustimo mevdu	wyda~ej	zaprosa	na wwod	i zawer{eniem wwoda s klawiatury
(naprimer, zawer{enie wwoda stroki).
TIME - massiw
interwala wremeni; weli~ina kratna 0.5 sekundy.
CHAR -
kod simwola, polu~aemyj	programmoj w slu~ae tajm-auta.
nowoe zna~enie tajm-auta dolvno	zadawatxsq pered kavdoj	nowoj
operaciej ~teniq s terminala.
.HLV 2
rezidentnye biblioteki (os NTS)
.LIN
ispolxzowanie rezidentnyh bibliotek pozwolqet |konomitx	pamqtx neskolxkim
programmam (net	neobhodimosti kavdoj programme dervatx w pamqti	sobstwennu`
kopi` biblioteki), a takve pozwolqet neskolxkim	programmam
obmeniwatxsq dannymi ~erez ob}u` oblastx pamqti.
.SKI 2
.DFN I=ISHARE (NAME)
ustanawliwaet swqzx programmy s	rezidentnoj bibliotekoj.
NAME - massiw iz 2 slow, soderva}ij imq	biblioteki ili oblasti
(6 znakow
w kode RAD50; imq biblioteki sowpadaet s imenem	fajla, iz kotorogo ona
zagruvena).
esli adres rawen 0, to funkciq otmenit swqzx programmy
so wsemi bibliotekami i	wosstanowit normalxnoe otobravenie
wirtualxnogo prostranstwa programmy, esli ono izmenqlosx ISHMAP.
w odnoj
programme movno	ispolxzowatx neskolxko rezidentnyh bibliotek.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
ukazannaq rezidentnaq biblioteka otsutstwuet.
.DFN I=ISHMAP (PAGE,OFF,SIZE)
posle ustanowleniq swqzi programmy s bibliotekoj s pomo}x`
ISHARE ~astx wirtualxnogo prostranstwa programmy movet bytx
otobravena na ws` biblioteku ili na ~astx biblioteki funkciej ISHMAP.
PAGE -
nomer stranicy (0-7) wirtualxnogo prostranstwa programmy, s kotoroj
budet na~inatxsq oblastx, otobravaemaq na biblioteku.
OFF
opredelqet sme}enie (w blokah po 64 bajta) ot
na~ala biblioteki do
zony otobraveniq.
SIZE
opredelqet dlinu u~astka pamqti	(w blokah po 64	bajta),	otobravaemogo na
biblioteku.
otobravenie ostalxnyh
stranic	wirtualxnogo prostranstwa programmy ne izmenqetsq, dave	esli oni byli
otobraveny na drugie rezidentnye biblioteki.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
programma ne ustanowila	swqzx ni s odnoj rezidentnoj bibliotekoj ili
oblastx` dannyh.
.HLV 2
awtonomnye zadaniq (os NTS)
.LIN
funkcii	dannoj gruppy pozwolq`t	programme polxzowatelq
zapuskatx i kontrolirowatx wypolnenie awtonomnyh zadanij.
.SKI 2
.DFN I=IDJKILL (LINE)
prekra}aet wypolnenie awtonomnogo zadaniq na ukazannoj linii LINE.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
ukazan newernyj	nomer linii.
.DFN CALL IDJSTART (DJOB,JOBNUM[,IERR])
zapuskaet awtonomnoe zadanie,
esli imeetsq swobodnaq liniq.
DJOB - massiw iz 4 slow, kotoryj sodervit specifikaci`
fajla awtonomnogo zadaniq.
nomer linii, na	kotoroj	zapuskaetsq
zadanie, wozwra}aetsq kak zna~enie w JOBNUM.
.LIN
w IERR wozwra}aetsq zna~enie:
.DF2 1
net ni odnoj swobodnoj linii dlq zapuska awtonomnogo zadaniq.
.DFN I=IDJTST (LINE)
opredelqet sostoqnie awtonomnoj	linii LINE.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
liniq zanqta.
.HLV 2
po~towye q}iki (os NTS)
.LIN
pri obra}enii k	funkciqm dannoj	gruppy ispolxzu`tsq parametry:
.DF2 BOX
massiw iz 6 bajt, soderva}ij imq po~towogo q}ika w koi-7;
.DF2 BUF
massiw,	soderva}ij dannye dlq obmena;
.DF2 BCNT
s~et~ik	peredawaemyh ili prinimaemyh bajtow.
.SKI 2
.DFN CALL IMGET	(BOX,BUF,BUFCNT,BCNT[,IERR])
ispolxzuetsq dlq izwle~eniq soob}enij iz po~towogo q}ika
w bufer	programmy.
esli dlina soob}eniq
bolx{e razmera BUFCNT bufera, to ostalxnaq ~astx budet
poterqna.
.LIN
w IERR wozwra}aetsq zna~enie:
.DF2 3
w ukazannom q}ike net soob}enij;
.DF2 4
dlina prinqtogo	soob}eniq prewy{aet razmer bufera.
.DFN CALL IMGETWAIT (BOX,BUF,BUFCNT,BCNT[,IERR])
perewodit programmu polxzowatelq w sostoqnie
ovidaniq do teh	por, poka w ukazannom q}ike ne poqwitsq	soob}enie.
posle poqwleniq	soob}eniq, ono budet izwle~eno i programma prodolvit
wypolnenie.
.LIN
w IERR wozwra}aetsq zna~enie:
.DF2 1
net swobodnogo po~towogo q}ika;
.DF2 4
dlina prinqtogo	soob}eniq prewy{aet razmer bufera.
.DFN I=IMPUT (BOX,BUF,BCNT)
pome}aet soob}enie w po~towyj q}ik.
esli posylaemoe	soob}enie imeet	dlinu, prewy{a`}u` maksimalxnu`, to
ostatok	soob}eniq otbrasywaetsq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
net swobodnogo po~towogo q}ika;
.DF2 2
net swobodnogo sistemnogo bufera dlq hraneniq soob}eniq;
.DF2 4
dlina soob}eniq	prewy{aet maksimalxnu` dlinu, zadannu` pri generacii.
.HLV 2
sredstwa realxnogo wremeni (os NTS)
.LIN
funkcii	dannoj gruppy mogut wozwra}atx zna~enie:
.DF2 0
sredstwa realxnogo wremeni ne byli wkl`~eny pri	generacii os NTS
ili programma ne qwlqetsq priwilegirowannoj;
.DF2 <0
oby~nyj	wyhod.
.DFN CALL ICONVIR (VADDR,BUF[,IERR])
wypolnqet preobrazowanie wirtualxnogo adresa
programmy VADDR	w fizi~eskij (pome}aetsq w massiw BUF iz 2 slow).
pered wyzowom |toj procedury programma dolvna
bytx zakreplena	w pamqti.
perwoe slowo massiwa budet sodervatx mlad{ie 16	razrqdow fizi~eskogo adresa.
dwa star{ih razrqda fizi~eskogo	adresa budut razme}eny w razrqdah 4-5
wtorogo	slowa.	w IERR wozwra}aetsq kod	o{ibki.
.DFN I=IENSWAP ()
otmenqet zakreplenie programmy w pamqti	i razre{aet ee swoping.
.DFN I=IMLOCK ()
wyzywaet nemedlennoe zakreplenie programmy w pamqti (zapre}aet ee swoping) bez
predwaritelxnogo pereme}eniq.
.DFN I=IPOLOCK ()
zakreplqet programmu w pamqti
(zapre}aet ee swoping),	predwaritelxno peremestiw ee w
nivn`` swobodnu` oblastx pamqti.
.DFN I=INTCON (VEC,CRTN,PRI)
podkl`~aet podprogrammu	zawer{eniq CRTN	k wektoru prerywanij s adresom VEC
wne{nego ustrojstwa.
PRI - prioritet	(ot 0 do 7),
na kotorom dolvna wypolnqtxsq podprogramma zawer{eniq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
maksimalxnoe ~islo podprogramm obrabotki
prerywanij uve opredeleno (ukazywaetsq pri generacii);
.DF2 2
drugaq programma uve ispolxzuet	ukazannyj wektor prerywanij.
.DFN I=INTFRE (VEC)
otmenqet swqzx wektora prerywanij s adresom VEC	s podprogrammoj	zawer{eniq.
wektor prerywaniq oswobovdaetsq	dlq ispolxzowaniq drugoj programmoj.
.DFN I=IOBIC (ADDR,WORD)
wypolnqet dejstwiq, analogi~nye	instrukcii processora BIC, t.e.
o~istku	razrqdow w registre wne{nego ustrojstwa	(adres ADDR).
WORD - celoe zna~enie, kotoroe budet wzqto w ka~estwe maski dlq	o~istki
razrqdow.
.DFN I=IOBIS (ADDR,WORD)
wypolnqet dejstwiq, analogi~nye	instrukcii processora BIS, t.e.
o~istku	razrqdow w registre wne{nego ustrojstwa	(adres ADDR).
WORD - celoe zna~enie, kotoroe budet wzqto w ka~estwe maski
dlq ustanowki razrqdow.
.DFN CALL IOGET	(ADDR,VALUE[,IERR])
s~itatx	sodervimoe registra wne{nego ustrojstwa	s adresom ADDR (odno slowo
w stranice wwoda/wywoda) bez izmeneniq otobraveniq wirtualxnogo
prostranstwa programmy.
sodervimoe s~itannogo registra wozwra}aetsq w VALUE.
w IERR wozwra}aetsq kod	o{ibki.
.DFN I=IOPUT (ADDR,WORD)
pozwolqet pereslatx slowo WORD w registr wne{nego
ustrojstwa s adresom ADDR stranicy wwoda/wywoda.
.DFN CALL IOMAP	()
proizwodit otobravenie sedxmoj stranicy
wirtualxnogo adresnogo prostranstwa
programmy (adresa 160000-177777) na stranicu wwoda/wywoda, obespe~iwaq
dostup k registram wne{nih ustrojstw.
.DFN CALL IOUNMAP ()
otmenqet otobravenie sedxmoj stranicy wirtualxnogo prostranstwa
programmy na stranicu wwoda/wywoda.
.HLV 2
razdelqemye fajly (os NTS)
.LIN
dlq ob'qwleniq fajla razdelqemym neobhodimo otkrytx kanal
makrokomandoj .LOOKUP i	pri pomo}i .SFOPEN opredelitx metod
ispolxzowaniq fajla. metod ispolxzowaniq zadaetsq ~islom,
kotoroe	opredelqet dopustimye operacii nad fajlom dlq dannoj
programmy (0, 2, 4 - tolxko ~tenie; 1, 3, 5 - ~tenie i zapisx).
s |tim ~islom swqzany takve ograni~eniq	dlq drugih programm pri	rabote
s dannym fajlom	(0, 1 -	zapret raboty s	fajlom;	2, 3 - tolxko ~tenie;
4, 5 - ~tenie i	zapisx).
.DFN I=ISFLOCK (CHAN,BLK)
prednazna~ena dlq zapre}eniq dostupa k
bloku (s nomerom BLK) fajla iz drugih programm.
esli zapra{iwaemyj blok	uve zablokirowan drugoj	programmoj, to
dannaq programma budet priostanowlena do teh por, poka trebuemyj blok ne
stanet
dostupen.
maksimalxnoe ~islo blokow, kotorye mogut bytx
zablokirowanny odnowremenno, ukazywaetsq pri generacii sistemy.
nomer bloka -1 (wosxmeri~noe 177777) movet bytx	ispolxzowan dlq
zaprosa	na blokirowku wseh blokow w fajle. esli	neskolxko programm
zapra{iwa`t odin i tot ve blok,	to dostup k nemu oni polu~a`t posledowatelxno,
w porqdke postupleniq zaprosow.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt;
.DF2 2
blokiruetsq sli{kom mnogo blokow.
.DFN I=ISFOPEN (CHAN,CODE)
ob'qwlqet fajl razdelqemym.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt;
.DF2 2
otkryto	mnogo kanalow dlq razdelqemyh fajlow;
.DF2 3
otkryto	mnogo razdelqemyh fajlow;
.DF2 4
zapre}ennyj dostup k fajlu.
.DFN CALL ISFSAVE (CHAN)
sohranqet sostoqnie kanala
(analogi~no ISAVES) dlq	razdelqemyh fajlow.
funkciq	ISAVES otmenqet	ob'qwlenie fajla razdelqemym.
dlq sohraneniq rezulxtatow funkcij ISFOPEN i ISFLOCK,
neobhodimo ispolxzowatx	ISFSAVE.
.DFN I=ISFTLOCK	(CHAN,BLK)
zapre}aet dostup k bloku iz drugih programm (analogi~no	ISFLOCK).
esli blok uve zablokirowan drugoj programmoj, to
dannaq
programma ne priostanawliwaetsq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt;
.DF2 2
blokiruetsq sli{kom mnogo blokow;
.DF2 3
trebuemyj blok uve zablokirowan.
.DFN I=ISFUNALL	(CHAN)
razblokirowka wseh blokow razdelqemogo fajla.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt.
.DFN I=ISFUNLOCK (CHAN,BLK)
razblokirowka bloka s nomerom BLK w fajle.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 1
kanal ne otkryt.
.DFN I=ISFWCHECK (CHAN)
opredelqet, byla li proizwedena	zapisx w razdelqemyj fajl drugoj programmoj.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
zapisx w fajl ne proizwodilasx;
.DF2 2
zapisx proizwodilasx.
.HLV 2
analiz |ffektiwnosti programm (os NTS)
.LIN
ispolxzowanie funkcij dannoj gruppy pozwolqet iz programm
polxzowatelq opredelitx	procent	wremeni, kotoroe
processor zatratil na wypolnenie toj ili inoj ~asti programmy.
funkcii	dannoj gruppy mogut wozwra}atx zna~enie:
.DF2 <0
oby~nyj	wyhod.
.SKI 2
.DFN I=IPAINI (LOADDR,HIADDR,ICLSIZ,FLAG)
inicializiruet programmnye sredsta podsistemy
analiza	|ffektiwnosti programm
analogi~no komande monitora MONITR.
HIADDR i LOADDR	ukazywa`t nivn`` i werhn`` granicy programmy,
w kotoryh prowoditsq analiz. ICLSIZ - cena deleniq gistogrammy.
FLAG ukazywaet neobhodimostx u~eta ovidaniq zawer{eniq
operacij wwoda/wywoda:
0  - bez ovidaniq, 1 - s ovidaniem.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
sredstwa uve ispolxzu`tsq drugoj programmoj (liniej);
.DF2 1
sredstwa ne wkl`~eny pri generacii.
.DFN I=IPASTA ()
zapuskaet (ili prodolvaet) rabotu podsistemy
analiza	|ffektiwnosti programm.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
sredstwa podsistemy analiza |ffektiwnosti ne inicializirowany.
.DFN I=IPASTO ()
priostanawliwaet sbor statistiki dlq analiza |ffektiwnosti programm.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
sredstwa podsistemy analiza |ffektiwnosti ne inicializirowany.
.DFN CALL IPAGET (PAR,BUF,BUFSIZE[,IERR])
peredaet w massiw BUF sobrannu`	statistiku o wypolnenii	(rabote) programmy.
BUFSIZE	zadaet razmer bufera. PAR - imq	bufera iz 4 slow.
.LIN
w IERR wozwra}aetsq zna~enie:
.DF2 0
statisti~eskie dannye ne sobiralisx;
.DF2 1
razmer bufera programmy	mal.
.HLV 2
32-razrqdnaq arifmetika
.LIN
funkcii	dannoj gruppy pozwolq`t	rabotatx s dannymi tipa	INTEGER*4.
.SKI 2
.DFN A=AJFLT(JARG)
preobrazuet zna~enie tipa INTEGER*4 iz JARG
w zna~enie tipa	REAL*4 i wozwra}aet polu~ennyj rezulxtat, kak
zna~enie funkcii.
.DFN D=DJFLT(JARG)
preobrazuet zna~enie tipa INTEGER*4 iz JARG w
zna~enie tipa REAL*8 i wozwra}aet polu~ennyj rezulxtat,
kak zna~enie funkcii.
.DFN I=IAJFLT(JARG,ARES)
preobrazuet zna~enie tipa INTEGER*4 iz JARG
w zna~enie tipa	REAL*4 i zapominaet rezulxtat w	ukazannoj peremennoj ARES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
pri preobrazowanii poterqny zna~a}ie cifry;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=IDJFLT(JARG,DRES)
preobrazuet zna~enie tipa INTEGER*4 iz JARG
w zna~enie tipa	REAL*8 i zapominaet rezulxtat w	ukazannoj peremennoj DRES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=IJCVT(JARG[,IRES])
preobrazuet zna~enie tipa INTEGER*4 iz JARG w zna~enie tipa INTEGER*2 w	IRES.
esli IRES ne ukazano, to rezulxtat zapisywaetsq	w JARG.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq preobrazowaniq	proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN J=JADD(JARG1,JARG2,JRES)
wy~islqet summu	dwuh zna~enij tipa INTEGER*4, ukazannyh	w JARG1	i JARG2,
i pome}aet rezulxtat w JRES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq wy~isleniq summy proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=JAFIX(AARG,JRES)
preobrazuet zna~enie tipa REAL*4 iz AARG w zna~enie tipa INTEGER*4 w JRES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq preobrazowaniq	proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=JCMP(JARG1,JARG2)
srawniwaet dwa ~isla tipa INTEGER*4 iz JARG1 i JARG2
i wozwra}aet znakowyj rezulxtat	srawneniq
w INTEGER*2 kak	zna~enie funkcii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -1
JARG1<JARG2;
.DF2  0
JARG1=JARG2;
.DF2  1
JARG1>JARG2.
.DFN J=JDFIX(DARG,JRES)
preobrazuet zna~enie tipa REAL*8 iz DARG w zna~enie tipa INTEGER*4 w JRES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq preobrazowaniq	proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN J=JDIV(JARG1,JARG2,JRES[,JREM])
wypolnqet delenie dwuh ~isel tipa INTEGER*4. JARG1 delitsq na JARG2
s polu~eniem rezulxtata	tipa INTEGER*4 w JRES i	ostatka	tipa INTEGER*4 w JREM.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -3
predprinqta popytka deleniq na nulx;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=JICVT(IARG,JRES)
preobrazuet zna~enie tipa INTEGER*2 iz JARG w zna~enie tipa INTEGER*4 w	JRES.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN CALL JJCVT	(JARG)
preobrazuet zna~enie wo	wnutrennem formate (2 slowa)
sistemnogo tajmera iz JARG w format INTEGER*4
i naoborot.
.DFN I=JMOV(JARG,JRES)
priswaiwaet zna~enie tipa INTEGER*4 iz JARG peremennoj JRES tipa INTEGER*4
i wozwra}aet znak priswoennogo zna~eniq.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=JMUL(JARG1,JARG2,JRES)
wy~islqet proizwedenie dwuh ~isel tipa INTEGER*4 iz JARG1 i JARG2
i pome}aet rezulxtat w peremennu` JRES tipa INTEGER*4.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq umnoveniq proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.DFN I=JSUB(JARG1,JARG2,JRES)
wy~islqet raznostx dwuh	~isel tipa INTEGER*4. wy~itaet JARG2 iz	JARG1
i pome}aet rezulxtat w peremennu` JRES tipa INTEGER*4.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 -2
wo wremq wy~isleniq proizo{lo perepolnenie;
.DF2 -1
rezulxtat otricatelxnyj;
.DF2  0
rezulxtat rawen	nul`;
.DF2  1
rezulxtat polovitelxnyj.
.HLV 2
rabota so strokami
.LIN
funkcii	dannoj gruppy pozwolq`t	programmam polxzowatelq	obrabatywatx
tekstowu` informaci`.
.SKI 2
.DFN CALL CONCAT (A,B,OUT[,LEN[,ERR]])
wypolnqet konkatenaci` (ob'edinenie) dwuh strok	A i B,
kotorye	dolvny zawer{atxsq nulewym bajtom.
rezulxtat pome}aetsq w stroku OUT.
LEN - maksimalxnaq dlina rezulxtiru`}ej	stroki.	parametr
LEN pozwolqet usekatx rezulxtiru`}u` stroku do neobhodimogo razmera.
parametr ERR prinimaet zna~enie	".TRUE.", esli rezulxtiru`}aq stroka byla
use~ena. na~alxnoe zna~enie ERR	dolvno bytx ".FALSE.".
.DFN CALL GETSTR (LUN,OUT,LEN,ERR)
s~itywaet stroku s ukazannogo logi~eskogo nomera LUN
fortrana w massiw OUT. LEN - maksimalxnaq dlina	wwodimoj stroki.
esli dlina wwodimoj stroki prewoshodit LEN, to ERR polu~aet zna~enie ".TRUE.".
na~alxnoe zna~enie ERR dolvno bytx ".FALSE.".
.SWT
 CALL INDEX (A,PATTRN,[I],M)
  ili
 M=INDEX(A,PATTRN[,I])
.AND 0
wozwra}aet w celoj peremennoj "M" na~alxnu` pozici` stroki
PATTRN w stroke	"A", poisk obrazca
PATTRN na~inaetsq s pozicii "I"	ili, esli on opu}en, s perwoj
pozicii	w stroke "A".
.DFN CALL INSERT (IN,OUT,I[,M])
wstawlqet stroku IN w stroku OUT, na~inaq s pozicii I.
M - maksimalxnaq dlina wstawlqemoj stroki.
.DFN I=LEN(A)
wozwra}aet koli~estwo znakow w stroke A	(ee dlinu).
.DFN CALL PUTSTR (LUN,IN,CHAR,ERR)
wywodit	stroku IN na ukazannyj logi~eskij nomer	LUN fortrana.
CHAR - simwol, dobawlqemyj k na~alu wywodimoj stroki.
ERR prinimaet zna~enie ".TRUE."	pri nali~ii o{ibki wywoda i ".FALSE."
pri ee otsutstwii.
.DFN CALL REPEAT (IN,OUT,I[,LEN[,ERR]])
wypolnqet powtor stroki	IN (I raz) i zapominaet
rezulxtat w wyhodnoj stroke OUT.
LEN - maksimalxnaq dlina rezulxtiru`}ej	stroki.
parametr ERR prinimaet zna~enie	".TRUE.", esli rezulxtiru`}aq stroka byla
use~ena. na~alxnoe zna~enie ERR	dolvno bytx ".FALSE.".
.DFN I=SCOMP(A,B)
srawniwaet dwe stroki "A" i "B"	i wozwra}aet rezulxtat srawneniq kak
zna~enie funkcii.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 <0
"A" leksikografi~eski pred{estwuet "B";
.DF2 0
"A" rawno "B";
.DF2 >0
"A" leksikografi~eski sleduet za "B".
.DFN CALL SCOPY	(IN,OUT[,LEN[,ERR]])
wypolnqet kopirowanie stroki IN	w stroku OUT.
LEN - maksimalxnaq dlina rezulxtiru`}ej	stroki.
parametr ERR prinimaet zna~enie	".TRUE.", esli rezulxtiru`}aq stroka byla
use~ena. na~alxnoe zna~enie ERR	dolvno bytx ".FALSE.".
.DFN CALL STRPAD (STR,I[,ERR])
dopolnqet stroku STR probelami sprawa do ukazannoj dliny I.
parametr ERR prinimaet zna~enie	".TRUE.", esli stroka A
imeet dlinu bolx{u`, ~em ukazano w I.
na~alxnoe zna~enie ERR dolvno bytx ".FALSE.".
.DFN CALL SUBSTR (IN,OUT,I[,LEN])
kopiruet podstroku iz stroki IN	w stroku OUT, na~inaq s	pozicii	I stroki IN.
LEN ukazywaet maksimalxnu` dlinu kopiruemoj podstroki.
.DFN CALL TRANSL (IN,OUT,R[,P])
peresylaet stroku IN w stroku OUT s modifikaciej znakow	(perekodirowkoj).
R - massiw znakow zameny. P - massiw znakow, kotorye neobhodimo	zamenqtx.
massiwy	R i P pozicionno sootwetstwu`t drug drugu.
esli massiw P opu}en, to on predpolagaetsq zadannym strokoj
znakow koi-7 (kody ot 1	do 127)	w wozrasta`}em porqdke.
.DFN CALL TRIM (STR)
udalqet	probely, nahodq}iesq sprawa w stroke STR.
.SWT
 I=IVERIF(STR,PATRN)
  ili
.DFN CALL IVERIFY[A,B,I]
prowerqet stroku STR na	nali~ie	w nej simwolow,	ne whodq}ih w stroku PATRN.
.LIN
funkciq	wozwra}aet zna~enie:
.DF2 0
simwoly	STR sodervatsq w PATRN;
.DF2 >0
nomer pozicii perwogo simwola w	STR, kotoryj ne	sodervitsq w PATRN.
.DFN N=IRAD50(ICNT,INPUT,OUTPUT)
preobrazuet simwolxnu` stroku INPUT dlinoj ICNT	w massiw OUTPUT	w kode
RAD50 i	wozwra}aet kak zna~enie	funkcii
koli~estwo obrabotannyh	znakow.
.DFN CALL R50ASC (ICNT,INPUT,OUTPUT)
preobrazuet massiw INPUT w kode	RAD50 w	simwolxnu` stroku OUTPUT
dlinoj ICNT.
.DFN A=RAD50(INPUT)
preobrazuet 6 simwolow koi-7 iz	INPUT i	wozwra}aet rezulxtat
tipa REAL*4 (2 slowa koda RAD50) kak zna~enie funkcii.
                                                                                                                                                        