5 CLS
10 REM ТЕСТ ГРАФОПОСТРОИТЕЛЬ АВТОГРАФ 882.01 (testzz)
20 REM
30 REM М86 ППЭВМ ЕС-1840
40 REM
50 OPEN "com1:9600,n,8,2" AS #1
60 ON COM(1) GOSUB 4000
70 COM(1) ON
80 SUM=0
90 PORTC=&H3F9 :PORTD=&H3F8
100 REM
110 REM &h3f9 - АДРЕС СЛОВА СОСТОЯНИЯ ПОРТА ДАННЫХ ДЛЯ СТЫКА С2
120 REM
130 REM УГЛОВЫЕ ВЕКТОРЫ
140 REM
150 DATA "IN;SP1;PU0,0;VS31;PD16800,0;PD16800,11880;PD0,11880;PD0,0;"
160 DATA "VS9;PU400,400;PD;PA2400,400;PU;PA400,400;PD;PA2400,960;PU;"
170 DATA "PA400,400;PD;PA2400,1520;PU;"
180 DATA "PA400,400;PD;PA2400,2400;PU;"
190 DATA "PA400,400;PD;PA1520,2400;PU;"
200 DATA "PA400,400;PD;PA960,2400;PU;"
210 DATA "PA400,400;PD;PA400,2400;PU;"
220 DATA "PA400,11480;PD;PA400,9480;PU;"
230 DATA "PA400,11480;PD;PA960,9480;PU;"
240 DATA "PA400,11480;PD;PA1520,9480;PU;"
250 DATA "PA400,11480;PD;PA2400,9480;PU;"
260 DATA "PA400,11480;PD;PA2400,10360;PU;"
270 DATA "PA400,11480;PD;PA2400,10920;PU;"
280 DATA "PA400,11480;PD;PA2400,11480;PU;"
290 DATA "PA16400,11480;PD;PA16400,9480;PU;"
300 DATA "PA16400,11480;PD;PA15840,9480;PU;"
310 DATA "PA16400,11480;PD;PA15280,9480;PU;"
320 DATA "PA16400,11480;PD;PA14400,9480;PU;"
330 DATA "PA16400,11480;PD;PA14400,10280;PU;"
340 DATA "PA16400,11480;PD;PA14400,10920;PU;"
350 DATA "PA16400,11480;PD;PA14400,11480;PU;"
360 DATA "PA16400,400;PD;PA14400,400;PU;"
370 DATA "PA16400,400;PD;PA14400,960;PU;"
380 DATA "PA16400,400;PD;PA14400,1520;PU;"
390 DATA "PA16400,400;PD;PA14400,2400;PU;"
400 DATA "PA16400,400;PD;PA15280,2400;PU;"
410 DATA "PA16400,400;PD;PA15840,2400;PU;"
420 DATA "PA16400,400;PD;PA16400,2400;PU;"
430 REM
440 REM ОКРУЖНОСТИ.ДУГИ
450 REM
460 DATA "PA7600,6760;CI460;PR0,-460;CI920;PR0,-1000;CI1920;"
470 DATA "PA8280,3960;PD;AA7600,5520,301;PA7600,5040,8280,3960;PU;"
480 DATA "PR-160,-240;PD;AR-560,1560,-45;PA7560,4640,8120,3720;PU;"
490 REM
500 REM ТИПЫ ЛИНИЙ.СМЕНА ПЕРЬЕВ.
510 REM
520 DATA"LT;PA400,6320;PD;PA5200,6320;PU;SP2;"
530 DATA"LT1;PA400,5800;PD;PA5200,5800;PU;SP3;"
540 DATA"LT2;PA400,5280;PD;PA5200,5280;PU;SP4;"
550 DATA"LT3;PA400,4760;PD;PA5200,4760;PU;SP5;"
560 DATA"LT4;PA400,4240;PD;PA5200,4240;PU;SP6;"
570 DATA"LT5;PA400,3720;PD;PA5200,3720;PU;SP7;"
580 DATA"LT6;PA400,3200;PD;PA5200,3200;PU;SP1;"
590 REM
600 REM ТЕКСТ.ШРИФТ
610 REM
620 DATA "SP4;PA5200,11080;CS2;SS;DI1,0;SI0.52,1;"
630 DATA "LBТ Е С Т А В Т О Г Р А Ф 882.01"
640 DATA "PA1000,7680;LBТ И П Ы Л И Н И Й"
650 DATA "PA600,7000;LBС М Е Н А П Е Р Ь Е В"
660 DATA "PA6100,8000;LBОКРУЖНОСТИ.ДУГИ"
670 DATA "PA12000,7440;LBШ Р И Ф Т Ы"
680 DATA"PA10800,6600;SI0.4,0.72;CS2;SS;"
690 DATA"LBABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^@"
700 DATA"CS2;SS;LBАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЮ"
710 DATA"CS2;SS;LB!"
720 DATA"#§%&'()*+,-./0123456789:;<=>?_ъёЪ№"
730 DATA"CS2;SS;LBabcdefghijklmnopqrstuvwxyz{|}~`"
740 DATA"CS2;SS;LBабцдефгхийклмнопярстужвьызшэщчю"
750 DATA"PA10520,2960;CS2;SS;SI1,1;LBGRAF "
760 DATA"PA13400,2960;CS2;SS;DI1,0;SL0.6;SI1,1;LBГРАФ"
770 DATA"PA14000,3840;DI85,50;SL0.3;SI0.4,0.72;LBГРАФ"
780 DATA"PA13400,3680;DI0,1;SL;LBГРАФ"
790 DATA"PA11600,4360;CS2;SS;DI85,-50;SL0.3;LBGRAF"
800 DATA"PU;"
810 REM
820 REM ШТРИХОВКА И ЗАЛИВКА ПРЯМОУГОЛЬНИКА
830 REM
840 DATA"SP6;VS5;PA4600,9800;PT.3;FT1;RA3600,8800;"
850 DATA"FT3,100;RA5600,8800;FT3,50,45;RA5600,10800;"
860 DATA"FT4,100,45;EA3600,10800;PU;"
870 REM
880 REM ШТРИХОВКА И ЗАЛИВКА СЕКТОРА
890 REM
900 DATA"FT3,100,0;PA12200,9800;WG1000,90,180,5;"
910 DATA"FT4,100,45;WG1000,270,120;FT1;WG1000,30,60;PU;"
920 REM
930 REM РЕЖИМ "ОКНО"
940 REM
950 DATA"SP5;VS2;IW3200,400,7600,2800;PA6800,160;CI200;PU;"
960 DATA"PA6600,1600;CI400;PU;PA6200,1600;CI800;PU;"
970 DATA"PA5400,1600;CI1600;CI1400;PU;DF;"
980 DATA"PA3200,400;PD;PA7600,400;PA7600,2810;PA3200,2810;"
990 DATA"PA3200,400;PU;"
1000 REM
1010 REM РАЗМЕТКА ОСЕЙ Х И Y
1020 REM
1030 DATA"PA9200,400;PD;TL0.5,0.5;PR400,0;XT;PR400,0;XT;"
1040 DATA"PR400,0;XT;PR400,0;XT;PR400,0;XT;PR400,0;XT;"
1050 DATA"PR400,0;XT;PR400,0;XT;PR400,0;XT;PR400,0;XT;"
1060 DATA"PU;PA9200,400;PD;TL0.5,0.5;PR0,200;YT;PR0,200;YT;"
1070 DATA"PR0,200;YT;PR0,200;YT;PR0,200;YT;PR0,200;YT;"
1080 DATA"PR0,200;YT;PR0,200;YT;PR0,200;YT;PR0,200;YT;"
1090 DATA"PR0,200;YT;PR0,200;YT;PU;"
1100 DATA"PA10000,1200;PD;TL0.4,0;PR400,0;XT;PR400,0;XT;"
1110 DATA"PR400,0;XT;PR400,0;XT;PR400,0;XT;PR400,0;XT;"
1120 DATA"PR400,0;XT;PR400,0;XT;PR400,0;XT;PR400,0;XT;PU;"
1130 DATA"PA10000,1200;PD;TL0,0.4;PR0,200;YT;PR0;YT;PR0,200;YT;"
1140 DATA"PR0,200;YT;PR0,200;YT;PR0,200;YT;PR0,200;YT;"
1150 DATA"PR0,200;YT;PR0,200;YT;PR0,200;YT;PR0,200;YT;"
1160 DATA"PR0,200;YT;PR0,200;YT;PU;"
1170 REM
1180 REM МАРКИРОВКА ТОЧЕК-КОНЦОВ ВЕКТОРОВ
1190 REM
1200 DATA"SMO;PA10000,1200;PD;SMX;PA10800,2000;PD;SM+;"
1210 DATA"PA11600,1600;PD;SMO;PA12600,1400;PU;SM;"
1220 REM
1230 REM ПОВТОРЯЕМОСТЬ
1240 REM
1250 DATA"VS9;SP2;PA1400,400;PD;PA2400,400;PU;"
1260 DATA"PA1400,680;PD;PA2400,960;PU;"
1270 DATA"PA1400,960;PD;PA2400,1520;PU;"
1280 DATA"PA1400,1400;PD;PA2400,2400;PU;"
1290 DATA"PA960,1400;PD;PA1520,2400;PU;"
1300 DATA"PA680,1400;PD;PA960,2400;PU;"
1310 DATA"PA400,1400;PD;PA400,2400;PU;"
1320 DATA"PA400,10480;PD;PA400,9480;PU;"
1330 DATA"PA680,10480;PD;PA960,9480;PU;"
1340 DATA"PA960,10480;PD;PA1520,9480;PU;"
1350 DATA"PA1400,10480;PD;PA2400,9480;PU;"
1360 DATA"PA1400,10920;PD;PA2400,10360;PU;"
1370 DATA"PA1400,11200;PD;PA2400,10920;PU;"
1380 DATA"PA1400,11480;PD;PA2400,11480;PU;"
1390 DATA"PA16400,10480;PD;PA16400,9480;PU;"
1400 DATA"PA16120,10480;PD;PA15840,9480;PU;"
1410 DATA"PA15840,10480;PD;PA15280,9480;PU;"
1420 DATA"PA15400,10480;PD;PA14400,9480;PU;"
1430 DATA"PA15400,10880;PD;PA14400,10280;PU;"
1440 DATA"PA15400,11200;PD;PA14400,10920;PU;"
1450 DATA"PA15400,11480;PD;PA14400,11480;PU;"
1460 DATA"PA15400,400;PD;PA14400,400;PU;"
1470 DATA"PA15400,680;PD;PA14400,960;PU;"
1480 DATA"PA15400,960;PD;PA14400,1520;PU;"
1490 DATA"PA15400,1400;PD;PA14400,2400;PU;"
1500 DATA"PA15840,1400;PD;PA15280,2400;PU;"
1510 DATA"PA16120,1400;PD;PA15840,2400;PU;"
1520 DATA"PA16400,1400;PD;PA16400,2400;PU;SP0;PU0,0;"
1530 REM
1540 REM ЧТЕНИЕ,ПРЕОБРАЗОВАНИЕ И ВЫВОД ДАННЫХ
1550 REM
1560 PRINT"*** ТЕСТ ГРАФОПОСТРОИТЕЛЯ АВТОГРАФ 882.01 ***"
1570 N=0
1580 M=39
1590 GOTO 1620
1600 L=5
1610 GOTO 1730
1620 FOR J=1 TO M
1630 READ A$
1640 K=LEN(A$)
1650 FOR I=1 TO K
1660 T$=MID$(A$,I,1)
1670 DAT=ASC(T$)
1680 GOSUB 2290
1690 NEXT I
1700 NEXT J
1710 IF N=0 THEN GOTO 1600
1720 GOTO 2270
1730 FOR J=1 TO L
1740 READ A$
1750 K=LEN(A$)
1760 FOR I=1 TO K
1770 T$=MID$(A$,I,1)
1780 DAT=ASC(T$)
1790 GOSUB 2290
1800 NEXT I
1810 DAT=3
1820 GOSUB 2290
1830 NEXT J
1840 IF N=0 THEN GOTO 1860
1850 GOTO 2180
1860 READ A$
1870 K=LEN(A$)
1880 FOR I=1 TO K
1890 T$=MID$(A$,I,1)
1900 DAT=ASC(T$)
1910 GOSUB 2290
1920 NEXT I
1930 IF N=0 GOTO 1950
1940 GOTO 2140
1950 FOR J=1 TO 2
1960 READ A$
1970 K=LEN(A$)
1980 FOR I=1 TO K
1990 T$=MID$(A$,I,1)
2000 DAT=ASC(T$)
2010 GOSUB 2290
2020 NEXT I
2030 DAT=13
2040 GOSUB 2290
2050 DAT=10
2060 GOSUB 2290
2070 DAT=3
2080 GOSUB 2290
2090 NEXT J
2100 IF N=0 THEN GOTO 2120
2110 GOTO 1730
2120 N=1
2130 GOTO 1860
2140 DAT=34
2150 GOSUB 2290
2160 L=6
2170 GOTO 1950
2180 READ A$
2190 K=LEN(A$)
2200 FOR I=1 TO K
2210 T$=MID$(A$,I,1)
2220 DAT=ASC(T$)
2230 GOSUB 2290
2240 NEXT I
2250 M=54
2260 GOTO 1620
2270 LOCATE 18,1:PRINT "*** НОРМАЛЬНОЕ ЗАВЕРШЕНИЕ ***"
2275 OUT PORTC,&H40
2280 STOP
2290 FOR III=1 TO 60:NEXT III:PRINT #1,CHR$(DAT);:SUM=SUM+1:LOCATE 10,40:PRINT SUM;
2300 RETURN
4000 COM(1) OFF:PRINT "Передано";SUM:SUM=0:XX$=INPUT$(1,#1):PRINT ASC(XX$);
4010 IF ASC(XX$) <> 19 THEN GOTO 4060
4020 IF LOC(1)=0 THEN GOTO 4020
4030 XX$=INPUT$(1,#1)
4040 IF ASC(XX$) = 17 THEN PRINT ASC(XX$):GOTO 4060
4050 GOTO 4020
4060 IF LOC(1)=0 THEN COM(1) ON:RETURN
4070 XX$=INPUT$(LOC(1),#1)
4080 RETURN
[свернуть]