Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
msx:basic_dialogue_programming_language:005 [2023-04-08 19:04] GreyWolf [V.6.2. Вывод спрайта на экран] |
msx:basic_dialogue_programming_language:005 [2024-05-26 16:58] (текущий) GreyWolf |
||
---|---|---|---|
Строка 507: | Строка 507: | ||
{{anchor:colorspalette}} | {{anchor:colorspalette}} | ||
- | Программа для иллюстрации таблицы [[bibliography#b100|[100] ]]. | + | 8-) Программа для иллюстрации таблицы [[bibliography#b100|[100] ]]. |
* {{.examples:colors_r.bas|}}, [[+tab|wmsxbpge>colors_r.bas|запуск в WebMSX]] | * {{.examples:colors_r.bas|}}, [[+tab|wmsxbpge>colors_r.bas|запуск в WebMSX]] | ||
* <WRAP> <hidden Текст программы colors_r.bas> | * <WRAP> <hidden Текст программы colors_r.bas> | ||
Строка 1866: | Строка 1866: | ||
{{anchor:e055-02}} {{.examples:055-02.bas|}} \\ [[+tab|wmsxbpge>055-02.bas]]<code> | {{anchor:e055-02}} {{.examples:055-02.bas|}} \\ [[+tab|wmsxbpge>055-02.bas]]<code> | ||
5 COLOR 1,15,4:SCREEN2:LINE(105,65)-(225,146),1,BF | 5 COLOR 1,15,4:SCREEN2:LINE(105,65)-(225,146),1,BF | ||
- | 10 DRAW "c8bm190,82m178,91m178,73m163,91m148,65m148,85m133,79m139,94m112,94m133,109m106,118m133,118m127,124m139,121m139,130m145,124m151,133m160,124m166,139m172,124m196,145m184,121m223,133m193,115m217,109m196,106m205,97m187,97m190,82" | + | 10 DRAW "c8bm190,82m178,91m178,73m163,91m148,65m148,85m133,79m139,94m112,94m133,109m106, |
+ | 118m133,118m127,124m139,121m139,130m145,124m151,133m160,124m166,139m172,124m196, | ||
+ | 145m184,121m223,133m193,115m217,109m196,106m205,97m187,97m190,82" | ||
20 PAINT(130,100),8:A$=INPUT$(1) | 20 PAINT(130,100),8:A$=INPUT$(1) | ||
</code> | </code> | ||
Строка 1882: | Строка 1884: | ||
Ok | Ok | ||
10 COLOR 1,15,8:SCREEN 2:PSET(100,85) | 10 COLOR 1,15,8:SCREEN 2:PSET(100,85) | ||
- | 20 DRAW"a1 s12 c13 nu10 ne10 nr10 nf10 nd10 ng10 nl10 h10 m+0,30 a2": PSET (190,95):DRAW"s8 c13 nu10 ne10 nr10 nf10 nd10 ng10 nl10 h10 m+0,30" | + | 20 DRAW"a1 s12 c13 nu10 ne10 nr10 nf10 nd10 ng10 nl10 h10 m+0,30 a2": |
+ | PSET (190,95):DRAW"s8 c13 nu10 ne10 nr10 nf10 nd10 ng10 nl10 h10 m+0,30" | ||
30 GOTO 30 | 30 GOTO 30 | ||
</code> | </code> | ||
Строка 1934: | Строка 1937: | ||
50 IF T=2 THEN X=50:O=180 ELSE IF T=3 THEN X=10:O=150 | 50 IF T=2 THEN X=50:O=180 ELSE IF T=3 THEN X=10:O=150 | ||
60 COLOR 1,15,8:SCREEN 2 | 60 COLOR 1,15,8:SCREEN 2 | ||
- | 80 PSET(X,100):DRAW"c1s4a=t;r8u20e10r15f10d20r8u2l3u18h15u25f15u30l5d18h8l3g8e1f1h8f7e7l2u3h2l6h3u10e3r8f3d5c15l2c1l3c15l4c1l3r3c15r3d1c1d3c15d1c1r2l5c15e3r6u2c1d5g3l8g2d3l5g8u18l5d30e15d25r15l15g15d18l3d2" | + | 80 PSET(X,100):DRAW"c1s4a=t;r8u20e10r15f10d20r8u2l3u18h15u25f15u30l5d18h8l3g8 |
+ | e1f1h8f7e7l2u3h2l6h3u10e3r8f3d5c15l2c1l3c15l4c1l3r3c15r3d1c1d3c15 | ||
+ | d1c1r2l5c15e3r6u2c1d5g3l8g2d3l5g8u18l5d30e15d25r15l15g15d18l3d2" | ||
90 IF X<O THEN X=X+73:GOTO 80 ELSE W$=INPUT$(1):GOTO 20 | 90 IF X<O THEN X=X+73:GOTO 80 ELSE W$=INPUT$(1):GOTO 20 | ||
</code> | </code> | ||
Строка 1957: | Строка 1962: | ||
40 DRAW"r1f1g1f1g1l1be4":DRAW"br2d2r2nr1nu2d2be4" | 40 DRAW"r1f1g1f1g1l1be4":DRAW"br2d2r2nr1nu2d2be4" | ||
60 DRAW"nr2d2r2d2l2be4":DRAW"br2nr2d4r2u2l2be4" | 60 DRAW"nr2d2r2d2l2be4":DRAW"br2nr2d4r2u2l2be4" | ||
- | 80 DRAW"bf2r2d1g1d2be4":DRAW"bf1e1r1f1g1l1h1f1g1f1r1e1h1be4":DRAW"bd2nr2d2r2nu2d2l2":B$=INPUT$(1) | + | 80 DRAW"bf2r2d1g1d2be4":DRAW"bf1e1r1f1g1l1h1f1g1f1r1e1h1be4": |
+ | DRAW"bd2nr2d2r2nu2d2l2":B$=INPUT$(1) | ||
</code> | </code> | ||
* {{anchor:e055-16}} 6) Рисунок чёрного и белого домов [[bibliography#b1|[1]]]. \\ {{.examples:055-16.bas|}} \\ [[+tab|wmsxbpge>055-16.bas]]<code> | * {{anchor:e055-16}} 6) Рисунок чёрного и белого домов [[bibliography#b1|[1]]]. \\ {{.examples:055-16.bas|}} \\ [[+tab|wmsxbpge>055-16.bas]]<code> | ||
Ok | Ok | ||
- | 10 COLOR,5:SCREEN2:BOX$="R20 U20 L20 D20":HAT$="E14 F14 BL20":DO$="R5 U10 L5 D10":WINDOW$="R4 U4 L4 D4":HOUSE$="XBOX$; BR4 XDO$; BM+10,-5 XWINDOW$;BM-18,-12 XHAT$;" | + | 10 COLOR,5:SCREEN2:BOX$="R20 U20 L20 D20":HAT$="E14 F14 BL20":DO$="R5 U10 L5 D10": |
+ | WINDOW$="R4 U4 L4 D4":HOUSE$="XBOX$; BR4 XDO$; BM+10,-5 XWINDOW$;BM-18,-12 XHAT$;" | ||
20 DRAW"BM20,20 C1 S2 XHOUSE$;BM100,100 S6 C15 XHOUSE$;" | 20 DRAW"BM20,20 C1 S2 XHOUSE$;BM100,100 S6 C15 XHOUSE$;" | ||
30 GOTO 30 | 30 GOTO 30 | ||
</code> | </code> | ||
- | * <WRAP>{{anchor:e055-17}} 7) \\ {{.examples:055-17.bas|}} \\ [[+tab|wmsxbpge>055-17.bas]]<code> | + | * <WRAP>{{anchor:e055-17}} 7) Данный пример приведен в [[bibliography#b6|[6]]] \\ {{.examples:055-17.bas|}} \\ [[+tab|wmsxbpge>055-17.bas]]<code> |
Ok | Ok | ||
10 CLS:KEYOFF:COLOR 1,15,8:SCREEN2:PSET(125,95) | 10 CLS:KEYOFF:COLOR 1,15,8:SCREEN2:PSET(125,95) | ||
Строка 1971: | Строка 1978: | ||
60 FOR SCALE=9 TO 1 STEP(-1) | 60 FOR SCALE=9 TO 1 STEP(-1) | ||
70 S$="s"+STR$(SCALE):C$="c"+STR$(SCALEMOD8) | 70 S$="s"+STR$(SCALE):C$="c"+STR$(SCALEMOD8) | ||
- | 110 FOR ROTATE=0 TO 3:R$="a"+STR$(ROTATE):SHAPE$="xs$;xc$;xr$;xhx$;":DRAW SHAPE$:NEXT ROTATE:NEXT SCALE | + | 110 FOR ROTATE=0 TO 3:R$="a"+STR$(ROTATE):SHAPE$="xs$;xc$;xr$;xhx$;": |
- | 160 Z$=INPUT$(1)'Ожидание нажатия любой(!) клавиши для окончания работы. Данный пример приведен в [6]. | + | DRAW SHAPE$:NEXT ROTATE:NEXT SCALE |
+ | 160 Z$=INPUT$(1)'Ожидание нажатия любой(!) клавиши для окончания работы. | ||
+ | Данный пример приведен в [6]. | ||
</code> | </code> | ||
В процессе работы эта программа выводит на экран дисплея один и тот же шестиугольник, изменяя с помощью команды A угол его поворота, с помощью команды C его цвет, а с помощью команды S — размер. В программе иллюстрируется также использование команды X, позволяющей в процессе выполнения некоторой строки команд "обращаться" к другим командным строкам. Во вложенных циклах ''FOR…NEXT'' изменяются масштаб, цвет и угол поворота шестиугольника. | В процессе работы эта программа выводит на экран дисплея один и тот же шестиугольник, изменяя с помощью команды A угол его поворота, с помощью команды C его цвет, а с помощью команды S — размер. В программе иллюстрируется также использование команды X, позволяющей в процессе выполнения некоторой строки команд "обращаться" к другим командным строкам. Во вложенных циклах ''FOR…NEXT'' изменяются масштаб, цвет и угол поворота шестиугольника. | ||
Строка 2013: | Строка 2022: | ||
<WRAP half column> \\ </WRAP> | <WRAP half column> \\ </WRAP> | ||
<WRAP half column><WRAP right> | <WRAP half column><WRAP right> | ||
- | Мультипликация является единственным подлинным искусством в настоящее время, потому что в ней, и только в ней, художник абсолютно свободен в своей фантазии и может делать все, что угодно. | + | Мультипликация является единственным подлинным |
+ | \\ искусством в настоящее время, потому что в ней, | ||
+ | \\ и только в ней, художник абсолютно свободен в | ||
+ | \\ своей фантазии и может делать все, что угодно. | ||
<WRAP rightalign> | <WRAP rightalign> | ||
—//Ч.Чаплин// | —//Ч.Чаплин// | ||
Строка 2091: | Строка 2103: | ||
</WRAP></WRAP> | </WRAP></WRAP> | ||
- | {{anchor:sprite1}} | + | {{anchor:sprite}} |
В [[msx:basic:]] используются специальные нумерованные строковые переменные, называемые //спрайтами//. | В [[msx:basic:]] используются специальные нумерованные строковые переменные, называемые //спрайтами//. | ||
Строка 2117: | Строка 2129: | ||
В дальнейшем вместо фразы "длина значения спрайта" мы будем употреблять фразу //"длина спрайта"//. | В дальнейшем вместо фразы "длина значения спрайта" мы будем употреблять фразу //"длина спрайта"//. | ||
- | <WRAP center round tip 60%> | + | Для значений спрайтов отводится определённое место в оперативной памяти, называемое //спрайтовой// областью, оно имеет объем 2Кб (напомним, что 1Кб = 1024 байтам). |
- | Для значений спрайтов отводится определённое место в оперативной памяти, называемое //спрайтовой// областью, оно имеет объем 2Кб (2048 байт). | + | |
- | </WRAP> | + | |
Оператор присваивания | Оператор присваивания | ||
Строка 2163: | Строка 2173: | ||
{{anchor:e0562-01}} __//Пример 1//__. \\ {{.examples:0562-01.bas|}} \\ [[+tab|wmsxbpge>0562-01.bas]] | {{anchor:e0562-01}} __//Пример 1//__. \\ {{.examples:0562-01.bas|}} \\ [[+tab|wmsxbpge>0562-01.bas]] | ||
+ | <WRAP group> | ||
+ | <WRAP half column> | ||
<code> | <code> | ||
10 SCREEN1'Но не SCREEN0! | 10 SCREEN1'Но не SCREEN0! | ||
Строка 2171: | Строка 2183: | ||
Ok | Ok | ||
+ | </code> | ||
+ | </WRAP> | ||
+ | |||
+ | <WRAP half column> | ||
+ | <code> | ||
10 SCREEN1'Но не SCREEN0! | 10 SCREEN1'Но не SCREEN0! | ||
- | 20 SPRITE$(20)="Алгоритмический язык":PRINT SPRITE$(20) | + | 20 SPRITE$(20)="Алгоритмический язык": |
+ | PRINT SPRITE$(20) | ||
run | run | ||
Алгоритм | Алгоритм | ||
Ok | Ok | ||
</code> | </code> | ||
+ | </WRAP> | ||
+ | </WRAP> | ||
+ | |||
Можно, конечно, выводить значение спрайта и в режиме ''SCREEN 0''. Но для этого его значение нужно вначале определить в режиме ''SCREEN 1'' ! | Можно, конечно, выводить значение спрайта и в режиме ''SCREEN 0''. Но для этого его значение нужно вначале определить в режиме ''SCREEN 1'' ! | ||
Строка 2217: | Строка 2238: | ||
</code> | </code> | ||
- | FIXME Нужно исправить по {{.author_files:005.txt|}} | + | |
+ | {{anchor:e0562-03}} __//Пример 3//__. | ||
+ | <code> | ||
+ | Что мы желаем Процесс кодирования образа спрайта | ||
+ | впоследствии ┌─┬─┬─┬─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | увидеть на │ │ │ │█│█│ │ │ │ │ │ │ │█│ │█│ │ │ │──▶ &H18 | ||
+ | экране дисплея! ├─┼─┼─┼─┼─┼─┼─┼─┤ └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | │ │ │█│█│█│█│ │ │ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | ██ ├─┼─┼─┼─┼─┼─┼─┼─┤ │ │ │█│█│ │█│█│ │ │──▶ &H3C | ||
+ | ████ │ │█│█│█│█│█│█│ │ └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ██████ ├─┼─┼─┼─┼─┼─┼─┼─┤ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | ████████ │█│█│█│█│█│█│█│█│ │ │█│█│█│ │█│█│█│ │──▶ &H7E | ||
+ | ██ ├─┼─┼─┼─┼─┼─┼─┼─┤ └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ██ │ │ │ │█│█│ │ │ │ ··· ··· ··· | ||
+ | ██ ├─┼─┼─┼─┼─┼─┼─┼─┤ ··· ··· ··· | ||
+ | ██ │ │ │ │█│█│ │ │ │ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | ├─┼─┼─┼─┼─┼─┼─┼─┤ │ │ │ │█│ │█│ │ │ │──▶ &H18 | ||
+ | │ │ │ │█│█│ │ │ │ └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ├─┼─┼─┼─┼─┼─┼─┼─┤ ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │ │ │█│█│ │ │ │ │ │ │ │█│ │█│ │ │ │──▶ &H18 | ||
+ | └─┴─┴─┴─┴─┴─┴─┴─┘ └─┴─┴─┴─┘ └─┴─┴─┴─┘ ▲ ▲ ▲ | ||
+ | Происхождение этих непонятных (пока!) символов ─────────┘─┘─┘ | ||
+ | разъясняет следующая таблица: | ||
+ | Рисунок Шестнадцатеричный код Рисунок | ||
+ | ─────── ───────────────────── ─────── | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │ │ │ │ ──▶ 0 8 ◀── │█│ │ │ │ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │ │ │█│ ──▶ 1 9 ◀── │█│ │ │█│ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │ │█│ │ ──▶ 2 A ◀── │█│ │█│ │ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │ │█│█│ ──▶ 3 B ◀── │█│ │█│█│ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │█│ │ │ ──▶ 4 C ◀── │█│█│ │ │ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │█│ │█│ ──▶ 5 D ◀── │█│█│ │█│ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │█│█│ │ ──▶ 6 E ◀── │█│█│█│ │ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | ┌─┬─┬─┬─┐ ┌─┬─┬─┬─┐ | ||
+ | │ │█│█│█│ ──▶ 7 F ◀── │█│█│█│█│ | ||
+ | └─┴─┴─┴─┘ └─┴─┴─┴─┘ | ||
+ | </code> | ||
+ | Думаем, что самое время напомнить Вам, что перед шестнадцатеричным числом в языке [[msx:basic:|]] употребляется префикс &H ! | ||
+ | |||
+ | И, наконец, завершающий этап! Определим образ спрайта: | ||
+ | <code> | ||
+ | SPRITE$(1)=CHR$(&H18)+CHR$(&H3C)+CHR$(&H7E)+CHR$(&HFF)+ | ||
+ | CHR$(&H18)+CHR$(&H18)+CHR$(&H18)+CHR$(&H18) | ||
+ | </code> | ||
+ | Пусть теперь длина спрайта не превосходит 32 байтов.Расположим его двоичное значение в виде квадрата 16×16 в два столбца по 16 байтов в столбце так, как это показано в следующем примере. Тем же способом, что и раньше, этому значению сопоставим на экране некоторый блок из 16×16 точек и в нем конкретный геометрический образ. | ||
/* | /* | ||
Начало вставки из Методич504.txt | Начало вставки из Методич504.txt | ||
- | */ | + | |
{{anchor:e0562-03}} __//Пример 3//__. | {{anchor:e0562-03}} __//Пример 3//__. | ||
\\ Что мы желаем впоследствии увидеть на экране дисплея: | \\ Что мы желаем впоследствии увидеть на экране дисплея: | ||
Строка 2356: | Строка 2434: | ||
Пусть теперь длина спрайта не превосходит 32 байтов. Расположим его двоичное значение в виде квадрата 16×16 в два столбца по 16 байтов в столбце так, как это показано в следующем примере. Тем же способом, что и раньше, этому значению сопоставим на экране некоторый блок из 16×16 точек и в нем конкретный геометрический образ. | Пусть теперь длина спрайта не превосходит 32 байтов. Расположим его двоичное значение в виде квадрата 16×16 в два столбца по 16 байтов в столбце так, как это показано в следующем примере. Тем же способом, что и раньше, этому значению сопоставим на экране некоторый блок из 16×16 точек и в нем конкретный геометрический образ. | ||
+ | */ | ||
+ | |||
{{anchor:e0562-04}} __//Пример 4//__. \\ {{.examples:0562-04.bas|}} \\ [[+tab|wmsxbpge>0562-04.bas]] | {{anchor:e0562-04}} __//Пример 4//__. \\ {{.examples:0562-04.bas|}} \\ [[+tab|wmsxbpge>0562-04.bas]] | ||
Строка 2556: | Строка 2636: | ||
* s=3: спрайты длиной 32 байта, такие же,как и при s=2, но с двухкратным увеличением размеров по обоим направлениям и занимающие поэтому 32×32 точки экрана. | * s=3: спрайты длиной 32 байта, такие же,как и при s=2, но с двухкратным увеличением размеров по обоим направлениям и занимающие поэтому 32×32 точки экрана. | ||
- | __//Замечания.//__ | + | //Замечания.// |
- Оператор <code>SCREEN ,s</code> не очищает экран, однако //стирает// образы спрайтов из памяти компьютера. | - Оператор <code>SCREEN ,s</code> не очищает экран, однако //стирает// образы спрайтов из памяти компьютера. | ||
- Оператор <code>SCREEN n</code> очищает экран //без стирания// образов спрайтов из памяти компьютера. | - Оператор <code>SCREEN n</code> очищает экран //без стирания// образов спрайтов из памяти компьютера. | ||
Строка 2821: | Строка 2901: | ||
<WRAP half column> \\ </WRAP> | <WRAP half column> \\ </WRAP> | ||
<WRAP half column><WRAP right> | <WRAP half column><WRAP right> | ||
- | Да сделайте же, наконец, CALL NETEND ! | + | "Да сделайте же, наконец, CALL NETEND !", |
<WRAP rightalign> | <WRAP rightalign> | ||
—//крик, вырвавшийся из уст пользователя %%MSX%% 2// | —//крик, вырвавшийся из уст пользователя %%MSX%% 2// | ||
Строка 2848: | Строка 2928: | ||
Этот режим включается, выключается и приостанавливается соответственно операторами ''SPRITE ON'', ''SPRITE OFF'', ''SPRITE STOP''. | Этот режим включается, выключается и приостанавливается соответственно операторами ''SPRITE ON'', ''SPRITE OFF'', ''SPRITE STOP''. | ||
- | {{anchor:sprite}} | ||
Если задан режим ''SPRITE ON'', то любое столкновение спрайтов вызывает //прерывание// (по окончании выполнения текущего оператора) и затем переход к подпрограмме, указанной в операторе ''ON SPRITE''. По умолчанию устанавливается режим ''SPRITE STOP'' вплоть до оператора ''RETURN'' этой подпрограммы. | Если задан режим ''SPRITE ON'', то любое столкновение спрайтов вызывает //прерывание// (по окончании выполнения текущего оператора) и затем переход к подпрограмме, указанной в операторе ''ON SPRITE''. По умолчанию устанавливается режим ''SPRITE STOP'' вплоть до оператора ''RETURN'' этой подпрограммы. | ||
Строка 3065: | Строка 3144: | ||
</WRAP></WRAP> | </WRAP></WRAP> | ||
</WRAP></WRAP> | </WRAP></WRAP> | ||
+ | |||
+ | [[bibliography#b5|[5]]] | ||
Термин //файл// происходит от английского слова file, переводящегося на русский язык как "дело" или "досье". | Термин //файл// происходит от английского слова file, переводящегося на русский язык как "дело" или "досье". | ||
Строка 3198: | Строка 3279: | ||
10 COLOR 1,11,7:SCREEN2:OPEN "GRP:"FOR OUTPUT AS #1 | 10 COLOR 1,11,7:SCREEN2:OPEN "GRP:"FOR OUTPUT AS #1 | ||
30 PSET (69,80),11:PRINT #1,"Рис 9.1 ЦВЕТА":GOSUB 1000'──▶ | 30 PSET (69,80),11:PRINT #1,"Рис 9.1 ЦВЕТА":GOSUB 1000'──▶ | ||
- | 55 LINE(69,80)-(100,87),11,BF 'Нарисован прямоугольник,внутренняя часть которого закрашена цветом фона. | + | 55 LINE(69,80)-(100,87),11,BF 'Нарисован прямоугольник, внутренняя |
+ | часть которого закрашена цветом фона. | ||
56 GOSUB 1000'──▶ | 56 GOSUB 1000'──▶ | ||
60 COLOR 11,11,7:PSET (69,80),11:PRINT #1,"Рис 9.1 ЦВЕТА" | 60 COLOR 11,11,7:PSET (69,80),11:PRINT #1,"Рис 9.1 ЦВЕТА" | ||
Строка 3662: | Строка 3744: | ||
10 SCREEN 5 | 10 SCREEN 5 | ||
20 SET PAGE 0,0:CLS | 20 SET PAGE 0,0:CLS | ||
- | 30 DRAW"bm100,100 c11 d5 r1 d2 r1 bm100,104 l2 d1 l2 d1 bm99,103 u1 l2 d1 l1 bm100,103 r2 u1 bm101,100 d1" | + | 30 DRAW"bm100,100 c11 d5 r1 d2 r1 bm100,104 l2 d1 l2 d1 bm99,103 u1 l2 d1 l1 bm100, |
+ | 103 r2 u1 bm101,100 d1" | ||
40 SET PAGE 0,1:CLS | 40 SET PAGE 0,1:CLS | ||
50 DRAW"bm100,100 c11 r1 d1 l1 d4 l1 d1 g1 e1 u4 l1 g1 e1 r2 d1 r1 l1 d2 r1 d1 g1" | 50 DRAW"bm100,100 c11 r1 d1 l1 d4 l1 d1 g1 e1 u4 l1 g1 e1 r2 d1 r1 l1 d2 r1 d1 g1" | ||
Строка 4106: | Строка 4189: | ||
<WRAP half column> \\ </WRAP> | <WRAP half column> \\ </WRAP> | ||
<WRAP half column><WRAP right> | <WRAP half column><WRAP right> | ||
- | Давайте все–таки обсуждать вкус ананаса с теми, кто его не ел! | + | Давайте все–таки обсуждать вкус ананаса |
+ | \\ с теми, кто его не ел! | ||
<WRAP rightalign> | <WRAP rightalign> | ||
—//Почти по М.Жванецкому// | —//Почти по М.Жванецкому// |