       dRAJWER GRAFI^ESKOGO TERMINALA (kcgd) DLQ RT11XM.

1.wWEDENIE.

    dRAJWER  GIX.SYS   PREDNAZNA^EN   DLQ   WYWODA   GRAFI^ESKIH
IZOBRAVENIJ NA \KRAN kcgd. oDNOWREMENNO RABOTATX  S  GRAFI^ESKIM
\KRANOM  MOVET  TOLXKO  ODNA  PROGRAMMA.   sOOB]ENIQ   OSTALXNYH
PROGRAMM  "ZASTREWA@T"  W  WYHODNOM   BUFERE   DO   OSWOBOVDENIQ
GRAFI^ESKOGO \KRANA ZAHWATIW[EJ PROGRAMMOJ. pRI  AWARIJNOM  (ILI
USPE[NOM)   ZAWER[ENII    ZAHWATIW[EJ    PROGRAMMY    PROISHODIT
AWTOMATI^ESKOE OSWOBOVDENIE GRAFI^ESKOGO  \KRANA  I  PREREHOD  W
SISTEMU  KOMAND  VT52.  pRI  AWARIJNOM  ZAWER[ENII  PROGRAMMY  W
MOMENT WYDA^I DRAJWEROM INFORMACII W FORMATE  PRINTERA,  DRAJWER
OVIDAET KONCA POSYLKI DLQ KORREKTNOGO ZAWER[ENIQ PROCEDURY.
    dRAJWER MOVET BYTX ZAGRUVEN KOMANDOJ MONITORA  Load  ILI  PO
SISTEMNOMU ZAPROSU  .Fetch,  PRI  ISPOLXZOWANII  .Fetch  SLEDUET
SOBL@DATX OSTOROVNOSTX T.K. \TA KOMANDA W RT11XM WYPOLNQETSQ  NE
WSEGDA  KORREKTNO  (WYPOLNENIE  ZAWISIT  OT  DLINY  DRAJWERA   I
BYSTRODEJSTWIQ USTROJSTWA SY:). w WERSIQH DO 5.2 WKL@^ITELXNO MY
REKOMENDUEM POLXZOWATXSQ KOMANDOJ Load Gi DO  NA^ALA  WYPOLNENIQ
PROGRAMMY.

2.iSTORIQ SOZDANIQ I SOWMESTIMOSTX.

    w   KA^ESTWE   ISHODNOGO   MATERIALA   POSLUVILA   PROGRAMMA
RASPROSTRANENNAQ W sssr POD IMENEM KCGD.SAV.  pRI  ZAGRUZKE  ONA
PE^ATAET PRIGLA[ENIE TIPA NPK 'MIKROPROCESSORNYE SISTEMY' I  DWA
MOSKOWSKIH  TELEFONA.  w  TEKSTE  \TOJ  PROGRAMMY   PRISUTSTWUET
NADPISX Pre V2.0 (c) 1987  by  Demisoft.  nA  \TOM  SWEDENIQ  OB
AWTORAH IS^ERPYWA@TSQ. oPISANIE \TOJ PROGRAMMY SODEVITSQ W FAJLE
KCGD.HLP.  dRAJWEROM  Gi  WPOLNE   MOVNO   POLXZOWATXSQ   WMESTO
UKAZANNOJ  PROGRAMMY.  |TO  OBESPE^IWAET  SOWMESTIMOSTX  S   UVE
RABOTA@]IMI PRODUKTAMI (NAPRIMER PROGRAMMA PAINT.SAV).  pRI^INOJ
POBUDIW[EJ  NAPISATX  IMENNO  DRAJWER  POSLUVILO   TO,   ^TO   W
MONOGOPROGRAMMNOJ SREDE  L@BOE  "NESANKCIONIROWANNOE"  SOOB]ENIE
MOVET NE TOLXKO ISPORTITX GRAFI^ESKU@ KARTINKU, NO  I  PODWESITX
TERMINAL. e]E HUVE  DELA  OBSTOQT  S  POLU^ENIEM  TWERDOJ  KOPII
GRAFI^ESKOGO  \KRANA  W  RT11XM   (OSOBENNO   DLQ   WIRTUALXNOGO
ZADANIQ). dLQ WYWODA IZOBRAVENIQ NA PRINTER (IMEETSQ WWIDU L@BOJ
PRINTER, KOTORYJ PONIMAET POSLEDOWATELXNOSTX ESC * m n1 n2)  BYL
NAPISAN DRAJWER LPX.SYS, "PROZRA^NYJ" DLQ GRAFIKI. tAKOJ  PODHOD
OKAZALSQ PLODOTWORNYM I DLQ  WYWODA  KOPII  GRAFI^ESKOGO  \KRANA
MOVNO  DAVE  ISPOLXZOWATX  PODSISTEMU  SPULINGA   (SPOOL.REL   +
SPX.SYS).  pREDPOLAGAETSQ  ^TO   W   NEDALEKOM   BUDU]EM   BUDET
IZGOTOWLENA WERSIQ DRAJWERA Gi  (I  Lp)  DLQ  os  TSX-plus,  ^TO
SDELAET EGO BOLEE PRIWLEKATELXNYM.

3.kOMMER^ESKAQ INFORMACIQ.

    pREVDE  ^EM  MY  PEREJDEM  K  OPISANI@  TEHNIKI   RABOTY   S
DRAJWEROM, SDELAEM MALENXKOE  OTSTUPLENIE.  ~ISLO  POLXZOWATELEJ
RT11XM NE WELIKO, NO UWELI^IWAETSQ,  I \TA INFORMACIQ ADRESOWANA 
W PERWU@ O^EREDX TEM KTO DAWNO HO^ET I POKA NE MOVET  PEREJTI  W
^ISLO POLXZOWATELEJ RT11XM  T.K.  NE  MOVET  SOBRATX  PODHODQ]U@
WERSI@ os.
    zA INOQZY^NYM  PSEWDONIMOM  Un_Soft  "SKRYWAETSQ"  NEBOLX[AQ
KOMPANIQ      PROGRAMMISTOW,       ZANIMA@]AQSQ      RAZRABOTKOJ
INSTRUMENTALXNOGO OBESPE^ENIQ. kROME OPISYWAEMOGO PRODUKTA ZDESX
MOVNO POLU^ITX WARIANTY  RT11XM,  ADAPTIROWANNYE  DLQ  SOWETSKIH
MA[IN I TO  ^TO  RABOTAET  W  SREDE  RT11XM  (BOLX[INSTWO  NA[IH
PROGRAMM NE RABOTAET  POD  UPRAWLENIEM  DRUGIH  MONITOROW  RT11,
RAWNO  KAK  BOLX[INSTWO  PROGRAMM,  NAPISANNYH  DLQ  RT11SJ   NE
RABOTAET  W  XM,  \TO  NE  OTNOSITSQ  K   KORREKTNO   NAPISANNYM
PROGRAMMAM, ONI W BOLX[INSTWE IMPORTNYE). pOKA (PO SOSTOQNI@  NA
1.04.91) NE NA[LOSX NI  ODNOJ  FIRMENNOJ  PROGRAMMY,  NAPISANNOJ
DLQ RT11 ILI TSX-+, KOTORAQ NE RABOTALA BY  W  NA[EJ  SREDE.  mY
BUDEM BLAGODARNY ZA WYSKAZANNYE ZAME^ANIQ I POVELANIQ.
    kONTAKTNYJ TELEFON W kEMEROWE 538496 (DOM.), kUZXMIN wIKTOR,
PROSXBA ZWONITX MEVDU 21 I 22 ^ASAMI MESTNOGO.

4.tEHNIKA PROGAMMIROWANIQ.
4.1.oB]IE SWEDENIQ.

    dLQ TOGO ^TOBY  NA^ATX  RABOTU  S  Gi  NEOBHODIMO  WYPOLNITX
"zAHWAT  TERMINALA".  tOLXKO  POSLE  TOGO   MOVNO   POLXZOWATXSQ
OSTALXNYMI WOZMOVNOSTQMI. gRAFI^ESKIJ TERMINAL MOVET  NAHODITXSQ
W TREH SOSTOQNIQH: SISTEMA KOMAND VT52, SISTEMA KOMAND VT100,  I
GRAFI^ESKIJ  REVIM.  cWETA,   USTANOWLENNYE   DLQ   GRAFI^ESKOGO
REVIMA,  OSTA@TSQ  I  PRI   PEREHODE   K   SIMWOLXNYM   REVIMAM.
kORREKTNOSTX USTANOWKI CWETOW NI KAK NE KONTROLIRUETSQ.
 pRI  ISPOLXZOWANII  SISTEMY  KOMAND  VT100  SLEDUET  POMNITX  O
WOZMOVNOSTQH USTANOWKI ATRIBUTOW STROKI I  SIMWOLA,  WOZMOVNOSTI
ZADANIQ  ZONY  I  TIPA  SKROLLINGA.  w  OTLI^IE  OT  BOLX[INSTWA
GRAFI^ESKIH SREDSTW MY  OSTAWILI  WSE  STANDARTNYE  WOZMOVNOSTI,
PRIMENQEMYE W  PROGRAMMAH.  rABOTAET  DAVE  TAKAQ  \KZOTIKA  KAK
REVIM  OTOBRAVENIQ  132   SIMWOLOW   W   STROKE.   ~TOBY   LU^[E
RAZOBRATXSQ  W  TEHNIKE   PROGRAMMIROWANIQ   STOIT   WNIMATELXNO
RAZOBRATX DEMONSTRACIONNU@ ZADA^U.

4.2.fORMAT KOMAND.

    dLQ OBRA]ENIQ K DRAJWERU  ISPOLXZU@TSQ  DWA  WIDA  ZAPROSOW:
ZAPROSY TIPA .Writ...  I  ZAPROSY  TIPA  .Spfun.  pERWYJ  ZAPROS
PRIMENQETSQ  DLQ  WYWODA   NA   GRAFI^ESKIJ   \KRAN   SIMWOLXNOJ
INFORMACII (W REVIME VT52 ILI VT100).  wSE  OSTALXNYE  PROCEDURY
REALIZOWANY POSREDSTWOM  ZAPROSA  .Spfun.  fORMAT  ZAPROSA  TIPA
.Read... STANDARTNYJ, RABOTA S GRAFI^ESKIMI FUNKCIQMI NE KAK  NE
WLIQET NA POLOVENIE KURSORA I USTANOWLENNYE ATRIBUTY SIMWOLXNOGO
\KRANA. w DALXNEJ[EM MY RASSMOTRIM TOLXKO .Spfun - ZAPROSY.
    kAK IZWESTNO, OB]IJ WID ZAPROSA:
        .Spfun Area,Chanal,NFunc,Buffer,BytCnt,Code,ContRt
wNIMATELXNYJ  ^ITATELX  ZAMETIL,  ^TO  MY  ^UTX  OTSTUPILI   DLQ
NAGLQDNOSTI OT STANDARTNYH OBOZNA^ENIJ.
    Area   - ADRES TABLICY ARGUMENTOW Emt IZ 6 SLOW;
    Chanal - NOMER KANALA SWQZANNOGO S DRAJWEROM Gi;
    NFunc  - KOD FUNKCII
    Buffer - ADRES BUFERA WWODA-WYWODA ILI NEKIJ INOJ ARGUMENT,
             SPECIFI^NYJ DLQ KONKRETNOJ KOMANDY;
    BytCnt - S^ET^IK BAJT ILI INOJ ARGUMENT;
    Code   - TRADICIONNO \TOT ARGUMENT SODERVIT NOMER BLOKA, W 
             NA[EM SLU^AE W NEM OBY^NO PEREDAETSQ KOD OPERACII;
    ContRt - ADRES PODPROGRAMMY ZAWER[ENIQ ILI 0, ILI 1 
             (ISPOLXZUETSQ KAK OBY^NO).
    dLQ  REALIZACII  GRAFI^ESKIH  PROCEDUR   ISPOLXZU@TSQ   KODY
FUNKCIJ (NFunc) 330,332,335,336 (KODY DANY W .Radix 8).

    zAHWAT/OSWOBOVDENIE GRAFI^ESKOGO \KRANA:
	.Spfun	Area,Chanal,#330,,,Cmd
    Cmd = 0 zAHWAT ZADANIEM GRAFI^ESKOGO \KRANA;
    Cmd = 1 oSWOBOVDENIE GRAFI^ESKOGO \KRANA.
uSTANOWLENNYJ  BIT  s  GOWORIT  O  TOM,  ^TO  GRAFI^ESKIJ  \KRAN
ZAHWA^EN DRUGIM ZADANIEM (SLU^AJ  \KZOTI^ESKIJ,  NO  WOZMOVNYJ).
kOGDA NEKOTOROE ZADANIE ZAHWATYWAET GRAFI^ESKIJ  \KRAN,  \TO  NE
KAK NE WLIQET NA KLAWIATURU DO TEH POR  POKA  WY  NE  POPROBUETE
WYWESTI  KOPI@  \KRANA.  nA  WREMQ  \TOJ  PROCEDURY   KLAWIATURA
OTKL@^AETSQ.
    pEREKL@^ENIE REVIMOW TERMINALA:
	.Spfun	Area,Chanal,#336,,,Mode
    Mode = 0 pEREHOD W GRAFI^ESKIJ REVIM;
    Mode = 1 wHOD W REVIM KOMAND VT100;
    Mode = 2 wHOD W REVIM KOMAND VT52.
s-BIT UKAZYWAET NA TO,  ^TO  TERMINAL  NE  BYL  ZAHWA^EN.  pOSLE
WYPOLNENIQ PROCEDURY ZAHWATA GRAFI^ESKOGO \KRANA  TEKU]IJ  REVIM
NE IZMENQETSQ. pRI PEREHODE  W  REVIM  VT100  (VT52)  PROISHODIT
PEREZAPISX WSEH REGISTROW TABLICY CWETNOSTI SOGLASNO  TOMU,  KAK
\TO  PRINQTO  DLQ  STANDARTNOGO  REVIMA   TERMINALA   (PROCEDURA
WSTROENNOGO   po).   pRI   WYPOLNENII   PROCEDURY   OSWOBOVDENIQ
TERMINALA, ESLI ON NAHODILSQ  W  GRAFI^ESKOM  REVIME,  ON  BUDET
PEREWEDEN W REVIM VT52 PRINUDITELXNO.
    oSNOWNAQ  GRUPPA  KOMAND  ISPOLXZUET  NFunc   =   332,   PRI
POSREDSTWE \TIH KOMAND  I  REALIZU@TSQ  SOBSTWENNO  WSE  FUNKCII
GRAFI^ESKOGO \KRANA. wSE ONI IME@T WID:
        .Spfun Area,Chanal,#332,Buffer,,Code,ContRt
aRGUMENT Code OPREDELQET PROIZWODIMU@ OPERACI@ (^ISLO ARGUMENTOW
DLQ KAVDOJ OPERACII FIKSIROWANO). aRGUMENT Buffer SODERVIT ADRES
BUFERA, SODERVA]EGO SOOTWETSTWU@]IE ARGUMENTY. bIT  s  UKAZYWAET
NA  NEWOZMOVNOSTX   WYPOLNITX   PROCEDURU   T.K.   TERMINAL   NE
ZAHWA^EN ILI NAHODITSQ W  SIMWOLXNOM  REVIME,  EGO  MOVNO  I  NE
PROWERQTX, \TA INFORMACIQ NUVNA SKOREE DLQ OTLADKI.
    Code = 0   zAPOLNENIE REGISTROW TABLICY  CWETNOSTI  (ZADANIE 
               PALITRY). w KA^ESTWE ARGUMENTOW  ISPOLXZU@TSQ  16 
               (.Radix 10) SLOW. oNI BUDUT ZANESENY  W  REGISTRY 
               TABLICY  CWETNOSTI  POSLEDOWATELXNO,   NA^INAQ  S 
               REGISTRA S NOMEROM 0.
    Code = 1   pERENOS FRAGMENTA IZOBRAVENIQ PO \KRANU. oPERACIQ 
               TREBUET 6 ARGUMENTOW  (SLOW).  oNI  RASPOLOVENY W
               WIDE: X0,Y0,X1,Y1,Xt,Yt GDE PERWYE 4 ^ISLA ZADA@T 
               PRQMOUGOLXNU@  OBLASTX, KOTORU@ NADO PERENESTI, A 
               PARA Xt,Yt UKAZYWAET  NA  NOWOE  POLOVENIE  TO^KI 
               X0,Y0.
    Code = 2   oTRISOWKA  DUGI.  pROCEDURA  IMEET  5 ARGUMENTOW. 
               pERWAQ PARA ZADAET CENTR,  WTORAQ - NA^ALO  DUGI. 
               pOSLEDNIJ   ARGUMENT   ZADAET   UGOL  POWOROTA  W 
               GRADUSAH.
    Code = 3   zALIWKA PRQMOUGOLXNOGO POLQ CWETOM.  4  ARGUMENTA 
               ZADA@T LEWYJ NIVNIJ I PRAWYJ  WERHNIJ  UGOL POLQ. 
    Code = 4   oTRISOWKA LINII. 4 ARGUMENTA ZADA@T KOORDINATY.
    Code = 5   wYWOD NA  \KRAN  SPRAJTA,  HRANQ]EGOSQ  W  PAMQTI 
               KONTROLLERA.  pROCEDURA  IMEET  3 ARGUMETA: NOMER 
               SPRAJTA (OT 0 DO 7) I KOORDINATY TO^KI, W KOTOROJ 
               BUDET WYWEDEN UKAZANNYJ SPRAJT.
    Code = 6   wWOD   SPRAJTA   S  \KRANA,   PROCEDURA  OBRATNAQ 
               PREDYDU]EJ  T.E.  SPRAJT  BUDET  ZAPOMNEN  WNUTRI 
               KONTROLLERA.
    Code = 7   wWOD  SPRAJTA  W  PAMQTX  KONTROLLERA.  pROCEDURA 
               IMEET 65.  ARGUMENTOW.  pERWYJ ARGUMENT UKAZYWAET 
               NOMER   SPRAJTA,  OSTALXNYE  -  SODERVIMOE  STROK 
               SPRAJTA  NA^INAQ  S NIVNEJ, ISPOLXZUETSQ BAJTOWOE 
               ZNA^ENIE, NO NEOBHODIMY ARGUMENTY TIPA .Word.
    Code = 8   uSTANOWKA  CWETA  PERA  (WYBOR  REGISTRA  TABLICY 
               CWETNOSTI). tREBUETSQ 1 ARGUMENT
    Code = 9   uSTANOWKA  PRIZNAKA  ZAME]ENIQ/NALOVENIQ   CWETA. 
               tREBUETSQ 1 ARGUMENT = 0 ILI 1 (PRI = 1 POWTORNAQ 
               PRORISOWKA   WOSSTANAWLIWAET   IZOBRAVENIE).   pO 
               UMOL^ANI@ = 0.
    Code = 10  uSTANOWKA   REVIMOW    RAZRE[ENIQ.    tREBUET   2 
               ARGUMENTA:  RAZRE[ENIE  PO  X  (400  ILI  800)  I 
               RAZRE[ENIE PO Y (240 ILI 480).
    Code = 11  pOSTANOWKA  TO^KI,  ZADAWAEMOJ  PAROJ  KOORDINAT.
    Code = 12  zALIWKA CWETOM  ZAMKNUTOGO  KONTURA.  w  KA^ESTWE 
               ARGUMENTOW   TREBUET   KOORDINATY   TO^KI  WNUTRI 
               KONTURA.
    dLQ POLU^ENIQ INFORMACII  IZ  KONROLLERA  SLUVIT  PROCEDURA,
IME@]AQ ARGUMENT NFunc = 335, FORMAT OBRA]ENIQ SLEDU@]IJ:
	.Spfun	Area,Chanal,#335,Buffer,BytCnt,Mode,ContRt
GDE Buffer  UKAZYWAET  NA  ADRES  BUFERA,  KUDA  BUDET  PEREDANA
INFORMACIQ, BytCnt - S^ET^IK BAJT, Mode - KOD  OPERACII  (0  ILI
1). w SLU^AE, KOGDA  Mode = 1, BytCnt IGNORIRUETSQ I EGO MOVNO 
OPUSTITX.
    Mode = 1   sNQTIE CWETA TO^KI. pROCEDURE  TREBUETSQ BUFER IZ 
               3-H SLOW.  pERWYE  2  SLOWA  SODERVAT  KOORDINATY 
               TO^KI, W  3-E  SLOWO  BUDET  POME]EN  CWET  TO^KI 
               UWELI^ENNYJ  NA  101  (.Radix 8). aGRUMENT Buffer 
               SODERVIT ADRES TAKOGO BUFERA.
    Mode = 0   pOLU^ENIE KOPII \KRANA W FORMATE PRINTERA. BytCnt 
               SODERVIT  ^ISLO ^ITAEMYH W BUFER BAJT (WESX \KRAN 
               UKLADYWAETSQ   W   24000.   BAJT).   |TOT   OB_EM 
               INFORMACII MOVNO  ^ITATX  W  NESKOLXKO  PRIEMOW W 
               T.^. I PO ODNOMU BAJTU. pRI  KAVDOM  ^TENII BUDET 
               S^ITYWATXSQ      "PRODOLVENIE".     rEKOMENDUETSQ 
               ISPOLXZOWATX BIBLIOTE^NU@ POCEDURU.  w  NASTOQ]EJ 
               WERSII DRAJWERA NET ANNULIROWANIQ PO TAJMERU (PRI 
               OTSUTSTWII  ^TENIQ  SO  STORONY  PROGRAMMY)  I MY 
               REKOMENDUEM  KONTROLIROWATX  WREMQ  W  PROGRAMME, 
               LIBO  ^ITATX  WSE  ZA  RAZ  (W XM-MONITORE SIE NE 
               SLOVNO).
    wY[E  MY  UVE   UPOMINALI   O   NEOBHODIMOSTI   ISPOLXZOWATX
SPECIALXNYJ DRAJWER Lp, ON PODDERVIWAET PRINTERY  TIPA  Robotron
CM 6329. I IM PODOBNYE, A TAKVE WSE Epson -  SOWMESTIMYE  KAK  S
PRQMOJ,  TAK  I  S  INWERTIROWANNOJ  [INOJ.  pRI  POMO]I  Set  -
PARAMETROW ZADA@TSQ TIPI^NYE FUNKCII DRAJWERA:
    Font        tIP (NOMER) [RIFTA;
    Blank       oTSTUP OT LEWOGO KRAQ (SIMWOLOW);
    Vint        iNTERWAL MEVDU STROKAMI (1/72");
    (No)Neg     iNWERSIQ [INY DANNYH;
    (No)Epson   pEREHOD NA TABLICU KODIROWKI Epson.
|TO NE POLNYJ SPISOK Set - PARAMETROW, OSTALXNYE  NE  INTERESNY.
dLQ WYWODA GRAFIKI DOLVEN ISPOLXZOWATXSQ KOD Esc * m n1 n2  (SM.
OPISANIE L@BOGO PRINTERA). pRI ISPOLXZOWANII PODSISTEMY SPULINGA 
(SPOOL.REL + SPX.SYS) NIKAKIH OGRANI^ENIJ NE WOZNIKAET.

5. bIBLIOTEKA.

    nIVE OPISANA BIBLIOTEKA DLQ QZYKA FORTRAN IV, KOTORAQ  MOVET
PRIMENQTXSQ I SOWMESTNO S DRUGIMI TRANSLQTORAMI. oGRANI^ENIQ  NA
ISPOLXZOWANIE FUNKCIJ BUDUT DANY  NEPOSREDSTWENNO  PRI  OPISANII
PROCEDUR BIBLIOTEKI. iH SOWSEM NEMNOGO. bIBLIOTEKA BYLA ISPYTANA
S TRANSLQTOROM V2.06r (S  PODDERVKOJ  RUSSKIH  SIMWOLOW).  kROME
GRAFI^ESKIH PROCEDUR, W BIBLIOTEKE SODERVATSQ  PROCEDURY  OB]EGO
NAZNA^ENIQ. oNI NA NA[ WZGLQD UDOBNEE ^EM  STANDARTNYE  ANALOGI.
w OTDELXNU@  GRUPPU  WYDELENY  PROCEDURY,  POZWOLQ@]IE  WYWODITX
TEKSTOWU@ INFORMACI@.

5.1.    gRAFI^ESKIE PROCEDURY.

5.1.1.  fUNKCIQ IGiOn.

    fUNKCIQ  IGiOn  WYZYWAETSQ  BEZ  ARGUMENTOW,  ONA  WYPOLNQET
ZAGRUZKU DRAJWERA Gi POSREDSTWOM  BIBLIOTE^NOJ  FUNKCII  IFetch,
POLU^AET U ots  fORTRANA  NOMER  SWOBODNOGO  KANALA  PRI  POMO]I
FUNKCII IGetC I SWQZYWAET \TOT KANAL  S  USTROJSTWOM  Gi.  nOMER
KANALA NAHODITSQ  W  PEREMENNOJ  GiChan  (SM.  OPISANIE  OBLASTI
PEREMENNYH).

    oBRA]ENIE:
            Istat=IGiOn()

    eSLI Istat (Intiger*2) SODERVIT OTLI^NOE OT NULQ ZNA^ENIE  -
PRI WYPOLNENII WOZNIKLA O[IBKA.

5.1.2.  fUNKCIQ IGiLck.

    fUNKCIQ  IGiLck  OSU]ESTWLQET  ZAHWAT  GRAFI^ESKOGO   \KRANA
WYPOLNQ@]EJSQ PRGRAMMOJ. pOSLE EE UDA^NOGO  ZAWER[ENIQ  IZ  WSEH
WYPOLNQ@]IHSQ PROGRAMM NEWOZMOVNY WSE ZAPROSY TIPA  Type,  Write
(7,*),  Call  Print,  .Print,  .TtyOut,  .TtOut.  uSTROJSTWO  Gi
NAHODITSQ SIMWOLXNOM REVIME (VT-100 ILI VT-52).

    oBRA]ENIE:
            Istat=IGiLck()

    nENULEWOJ  REZULXTAT  FUNKCII  SWIDETELXSTWUET  O  TOM,  ^TO
USTROJSTWO Gi ZAHWA^ENO DRUGIM ZADANIEM.

5.1.3.  fUNKCIQ IGiUnl.

    fUNKCIQ IGiUnl  OSWOBOVDAET  GRAFI^ESKIJ  TERMINAL.  dRAJWER
OSTAETSQ ZAGRUVENNYM (POWTORNYJ  ZAHWAT  MOVET  WYPOLNQTXSQ  PRI
POMO]I IGiLck).

    oBRA]ENIE:
            Istat=IGiUnl()
    nENULEWOJ REZULXTAT UKAZYWAET, ^TO BYLA POPYTKA OSWOBOVDENIQ
NE  ZAHWA^ENNOGO TERMINALA.

5.1.4.  fUNKCIQ IMode.

    fUNKCIQ IMode PEREKL@^AET REVIMY TERMINALA W SOOTWETSTWII  S
ARGUMENTOM.

    oBRA]ENIE:
            Istat=IMode(Jpar)
                Jpar = 0  pEREHOD W GRAFI^ESKIJ REVIM
                Jpar = 1  pEREHOD W SISTEMU KOMAND VT-100
                Jpar = 2  pEREHOD W SISTEMU KOMAND VT-52.
    nENULEWOJ  REZULXTAT  UKAZYWAET  NA  O[IBKU.  pEREHOD  MEVDU
SISTEMOJ KOMAND VT-100  I  VT-52  (I  OBRATNO)  WOZMOVEN  TOLXKO
^EREZ GRAFI^ESKIJ REVIM.

5.1.5.  fUNKCIQ IColst

    fUNKCIQ USTANAWLIWAET  NOWOE  SODERVIMOE  TABLICY  CWETNOSTI
(ZADAET  PALITRU).  wOZMOVNO  IZMENENIE  ^ASTI  PALITRY.   nOWAQ
PALITRA  (ILI  EE  ^ASTX)  ZAPISYWAETSQ  W  OB]U@  OBLASTX  (SM.
OPISANIE OBLASTI PEREMENNYH).

    oBRA]ENIE:
            Istat=IColst(N[,Icol])
                N - ^ISLO IZMENQEMYH REGISTROW TABLICY 
                CWETNOSTI (0 - 16). eSLI N = 0, W KONTROLLER 
                PEREZAPISYWAETSQ SODERVIMOE PEREMENNOJ Color IZ 
                OB]EJ OBLASTI.
                Icol - MASSIW (Intiger*2) W KOTOROM PEREDAETSQ 
                NOWAQ PALITRA.
    nENULEWOJ REZULXTAT UKAZYWAET NA O[IBKU PRI WYPOLNENII.

5.1.6.  fUNKCIQ Ipen.

    fUNKCIQ Ipen USTANAWLIWAET CWET RISOWKI (NOMER REGISTRA tc).

    oBRA]ENIE:
            Istat=Ipen(Ireg)
                Ireg - NOMER REGISTRA TABLICY CWETNOSTI (0 - 
                15), Ireg CELAQ PEREMENNAQ ILI KONSTANTA DLINOJ 
                2 BAJTA.
    nENULEWOJ REZULXTAT UKAZYWAET NA O[IBKU.

5.1.7.  fUNKCIQ Iscrn.

    fUNKCIQ Iscrn USTANAWLIWAET PARAMETRY \KRANA (^ISLO STROK I 
^ISLO STOLBCOW.

    oBRA]ENIE:
            Istat=Iscrn(Nstr,Ncol)
                Nstr - ^ISLO STROK (I*2, 240 ILI 480)
                Ncol - ^ISLO STOLBCOW (I*2, 400 ILI 800).
    nENULEWOJ REZULXTAT UKAZYWAET NA O[IBKU.

5.1.8.  fUNKCIQ Iline.

    fUNKCIQ  Iline  RISUET  LINI@  MEVDU  TO^KAMI  A  I  B,  TIP
ARGUMENTOW  CELYJ,  NENULEWOJ  REZULXTAT  UKAZYWAET  NA  NALI^IE
O[IBKI.

    oBRA]ENIE:
            Istat=Iline(IXA,IYA,IXB,IYB)

5.1.9.  fUNKCIQ Jsqar.

    fUNKCIQ Jsqar ZAPOLNQET PRQMOUGOLXNU@ OBLASTX TEKU]IM CWETOM
RISOWKI. oBLASTX ZADAETSQ PAROJ TO^EK A (NIVNIJ LEWYJ UGOL) I  B
(WERHNIJ PRAWYJ UGOL). nENULEWOJ REZULXTAT FUNKCII UKAZYWAET  NA
O[IBKU. aRGUMENTY IME@T TIP Intiger*2.

    oBRA]ENIE:
            Istat=Jsqar(IXA,IYA,IXB,IYB)

5.1.10. fUNKCIQ JDot.

    fUNKCIQ JDot STAWIT TO^KU S KOORDINATAMI IX,IY.

    oBRA]ENIE:
            Istat=JDot(IX,IY)

    nENULEWOJ REZULXTAT UKAZYWAET NA NALI^IE O[IBKI.

5.1.11. fUNKCIQ ITipa.

    fUNKCIQ ITipa USTANAWLIWAET TEKU]IJ TIP WYWODA GRAFI^ESKOJ 
INFORMACII.

    oBRA]ENIE:
            Istat=ITypa(I)
    I - CELAQ PEREMENNAQ ILI KONSTANTA, MOVET IMETX 2 ZNA^ENIQ 0
I 1. pRI I = 0, DLQ POSTANOWKI TO^KI ISPOLXZUETSQ  OPERACIQ  Bis
(T.E. PROISHODIT NALOVENIE CWETOW),  PRI  I  =  1,  DLQ  RISOWKI
ISPOLXZUETSQ  OPERACIQ  Xor  (POWTORNAQ  PRORISOWKA  WOSSTANOWIT
PREDYDU]EE   IZOBRAVENIE).   o[IBKA    WOZWRA]AETSQ    NENULEWYM
REZULXTATOM FUNKCII.


5.2.    pROCEDURY DLQ WYWODA TEKSTOWOJ INFORMACII.

    dLQ  TOGO,  ^TOBY  ISPOLXZOWATX   NIVESLEDU@]IE   PROCEDURY,
NEOBHODIMO ^TOBY  NA  USTROJSTWE  Gi  BYLA  WYPOLNENA  PROCEDURA
ZAHWATA I TERMINAL NAHODILSQ  W  ODNOM  IZ  SIMWOLXNYH  REVIMOW.
nEKOTORYE FUNKCII  (OB  \TOM  BUDET  SKAZANO  PRI  IH  OPISANII)
TREBU@T WPOLNE OPREDELENNOGO REVIMA, NAPRIMER VT-52.

5.2.1.  fUNKCIQ Itext.

    fUNKCIQ  Itext  WYWODIT   STROKU   TEKSTA,   PRI   \TOM   NE
PROIZWODITSQ PEREWODA STORKI I WOZWRATA W NA^ALO STROKI.  o[IBKA
(NENULEWOJ REZULXTAT) UKAZYWAET OBY^NO NA TO, TERMINAL NAHODITSQ
W GRAFI^ESKOM REVIME ILI NE ZAHWA^EN PROGRAMMOJ.

    oBRA]ENIE:
        Istat=Itext('String of Text ILI sTROKA TEKSTA')

5.2.2.  fUNKCIQ NewLin.

    fUNKCIQ NewLin PEREWODIT STROKU I WOZWRA]AET KURSOR W NA^ALO
SLEDU@]EJ STROKI.

    oBRA]ENIE:
        Istat=NewLin()

5.2.3.  fUNKCIQ Jstr.

    fUNKCIQ Jstr WYWODIT STROKU  TEKSTA  I  PEREWODIT  KURSOR  W
NA^ALO  SLEDU@]EJ  STROKI.  sOOB]ENIE  OB  O[IBKE  WYDAETSQ  KAK
NENULEWJ REZULXTAT

    oBRA]ENIE:
        Istat=Jstr('String of Text ILI STROKA TEKSTA')

5.2.4.  fUNKCIQ NewScr.

    fUNKCIQ  NewScr  O^I]AET  \KRAN  (ISPOLXZUQ  SISTEMU  KOMAND
VT-52). nENULEWOJ REZULXTAT SWIDETELXSTWUET OB O[IBKE.

    oBRA]ENIE:
        Istat=NewScr()

5.3.    dOPOLNITELXNYE PROCEDURY.

    w \TOT RAZDEL OPISANIQ POPALI PODPROGRAMMY, KOTORYE NE MOGUT
BYTX KAK-TO RAZUMNO KLASSIFICIROWANY, NO KAVUTSQ POLEZNYMI.

5.3.1.  pODPROGRAMMA Sprin.

    pODPROGRAMMA Sprin QWLQETSQ ANALOGOM PODPORGRAMMY  Print  IZ
SISTEMNOJ BIBLIOTEKI, NO ONA NE PEREWODIT STROKU.

    oBRA]ENIE:
        Call Sprin ('Text string ILI STROKA TEKSTA')

5.3.2.  pODPROGRAMMA Sgtlin.

    pODPROGRAMMA Sgtlin QWLQETSQ ANALOGOM PODPROGRAMMY Gtlin, NO
NE PEREWODIT STROKU POSLE WYDA^I SOOB]ENIQ.

    oBRA]ENIE:
        Call Sgtlin(Result[,Mes])

5.3.3.  pODPROGRAMMY Specl I Norm.

    pODPROGRAMMA   Specl   PEREWODIT   SISTEMNYJ   TERMINAL    W
SPECIALXNYJ  REVIM  (USTANAWLIWAET  BITY   TTSPC$   !   TCBIT$),
PODPROGRAMMA Norm SBRASYWAET \TI VE BITY.

    oBRA]ENIE:
        Call Specl
        Call Norml

5.3.4.  fUNKCIQ IPrScr.

    fUNKCIQ IPrScr WYWODIT GRAFI^ESKIJ \KRAN NA USTROJSTWO  LP:,
PREDPOLAGAETSQ, ^TO W  SISTEME  USTANOWLEN  GRAFI^ESKIJ  DRAJWER
PRINTERA, A USTROJSTWO Gi ZAHWA^ENO  PROGRAMMOJ  I  NAHODITSQ  W
GRAFI^SKOM REVIME.

    oBRA]ENIE:
        Istat= IPrScr()

    o[IBKI:
	Istat=0 uSPE[NOE ZAWER[ENIE.
	Istat=1 o[IBKA ZAPISI NA LP
        Istat=2	o[IBKA Gi (NEZAHWA^EN ILI NAHODITSQ W SIMWOLXNOM 
                REVIME)
        Istat=3 o[IBKA W PODPROGRAMMAH (Igetc,IGiOn).

    fUNKCIQ IPrScr SAMA OTKRYWAET KANAL I ZAGRUVAET DRAJWER T.E. 
WYPOLNQET DEJSTWIQ ANALOGI^NYE TOMU ^TO PROIZWODIT FUNKCIQ IGiOn 
PO OTNO[ENI@ K DRAJWERU Gi. eSLI GRAFI^ESKIJ DRAJWER PE^ATI PO 
KAKIM - LIBO PRI^INAM WAS NE USTRAIWAET, NO POZWOLQET PE^ATATX 
GRAFIKU NA WA[EM PRINTERE, TO WY MOVETE SDELATX SLEDU@]EE:
    pREREIMENOWATX DRAJWER LP (GRAFI^ESKIJ) W NEKTORYJ DRUGOJ. 
sDELATX \TO MOVNO NAPRIMER TAK:
.rename sy:(lpx lmx).sys
.remove lp
.install lm                                                                                                                                                                                                                                                                                                                                                                                                                  