DOT!: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
 
(не показано 17 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''PLOT''' — стандартное слово [[Каллисто]].
'''DOT!''' (установить точку, читается «дот присвоить») встроенное слово [[Каллисто]].
DOT!          ( u1 u2 −− )                    Отобразить точку на индикаторе в колонке u1 строки u2.
Отображение точки на [[индикатор]]е. Позиция курсора не меняется. Для выбора цвета точки предварительно используйте примитив [[LIGHT]] (светлая точка) или [[DARK]] (тёмная точка).


Отображение точки на [[индикатор]]е
Использование: {{Текст на индикаторе|x y DARK DOT!}} − вывод тёмной точки по координатам x и y
 
== Ввод слова DOT! ==
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша K|{{Синяя клавиша|K}}]] [[Клавиша 5|{{Серая клавиша|5}}]] [[Клавиша 2|{{Серая клавиша|2}}]]   [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша П|{{Чёрная клавиша|П}}]]
 
Эти нажатия оставляют клавиатуру в [[Режим NUM|режиме NUM]].
 
== История ==
Английское слово [http://www.lingvo-online.ru/ru/Translate/en-ru/dot ''dot''] означает «точка». Восклицательный знак означает в Форте операцию присваивания.
 
Название резервирует имя DOT@ (отсутствующее в стандартной поставке) за словом, считывающим состояние точки на [[индикатор]]е.
 
== Реализация ==
В [[Каллисто|Каллисто 1.0]] слово DOT! это обёртка вокруг [[R9011]], но порядок аргументов взят из {{colorForth}}. Атрибут вывода берётся из [[R9001]].
<pre>
1077 ;#DOTStore
1078 ; DOT!            ( c1 c2 −− )                        Отобразить точку на индикаторе в колонке c1 строки c2.
1079 ; Отображение точки на экране (R9011)
1080 ; x y DOT! − значения координат x и y
1081 ; Позиция курсора не меняется.
1082 ; Атрибут из R9001. Обёртка вокруг R9011, но порядок аргументов взят из colorForth.
1083 LPLOT:          .DB    4
1084                .TEXT  "DOT!"                  ; ( X Y −− )
1085                .DW    LDARK
1086 PLOT:          .DW    JPLOT
1087 JPLOT:          11 ENT                          ; 9011 Вывод точки
1088 JPL0:          9 EE 3 + M8                    ; В железном МК−161 после БП не нужен ENT
1089                RM3 MB M5 2 + M3
1090                KRMB KRM5 KM8
1091                KGOTO9
</pre>
 
=== Советская реализация ===
В FORTH ИТЭФ был [[примитив]] PIX для установки цветной точки на графическом экране, вот его определение:
<PRE>
            HEAD    203Q,'PI',330Q,PIX                  ; PIX
  ; COLCOD ROW COLUMN -->  -    запись графической точки
            POP  CX                  ; колонка
            POP  BX                  ; строка
            POP  AX                  ; код цветности
            PUSH  DX                  ; сохранение DX
            MOV  AH, 12
            MOV  DX, BX
            SUB  DH, DH
            INT  16                  ; запись графической точки
            POP  DX                  ; восстановление DX
            NEXT
</PRE>
 
== Ссылки ==
* {{Исходник|DOTStore|DOT!}}
* См. слова [[+FRAME]], [[+BOX]] и [[BAR]]


== Ввод слова PLOT ==
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша 6|{{Серая клавиша|6}}]] [[Клавиша -|{{Серая клавиша|−}}]] [[Клавиша 5|{{Серая клавиша|5}}]] [[Клавиша 2|{{Серая клавиша|2}}]]


{{нет иллюстраций}}
{{нет иллюстраций}}
{{заготовка}}
{{заготовка}}
[[Категория:Слова Каллисто]]
[[Категория:Слова Каллисто]]
[[Категория:Примитивы]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Слова Каллисто без стековых диаграмм]]

Текущая версия от 09:21, 9 ноября 2017

DOT! (установить точку, читается «дот присвоить») — встроенное слово Каллисто.

DOT!           ( u1 u2 −− )                    Отобразить точку на индикаторе в колонке u1 строки u2.

Отображение точки на индикаторе. Позиция курсора не меняется. Для выбора цвета точки предварительно используйте примитив LIGHT (светлая точка) или DARK (тёмная точка).

Использование:  x y DARK DOT!  − вывод тёмной точки по координатам x и y

Ввод слова DOT![править]

В режиме ЛАТ последовательно нажмите клавиши  K   5   2     P   П 

Эти нажатия оставляют клавиатуру в режиме NUM.

История[править]

Английское слово dot означает «точка». Восклицательный знак означает в Форте операцию присваивания.

Название резервирует имя DOT@ (отсутствующее в стандартной поставке) за словом, считывающим состояние точки на индикаторе.

Реализация[править]

В Каллисто 1.0 слово DOT! это обёртка вокруг R9011, но порядок аргументов взят из colorForth. Атрибут вывода берётся из R9001.

1077 ;#DOTStore
1078 ; DOT!             ( c1 c2 −− )                         Отобразить точку на индикаторе в колонке c1 строки c2.
1079 ; Отображение точки на экране (R9011)
1080 ; x y DOT! − значения координат x и y
1081 ; Позиция курсора не меняется.
1082 ; Атрибут из R9001. Обёртка вокруг R9011, но порядок аргументов взят из colorForth.
1083 LPLOT:          .DB     4
1084                 .TEXT   "DOT!"                  ; ( X Y −− )
1085                 .DW     LDARK
1086 PLOT:           .DW     JPLOT
1087 JPLOT:          11 ENT                          ; 9011 Вывод точки
1088 JPL0:           9 EE 3 + M8                     ; В железном МК−161 после БП не нужен ENT
1089                 RM3 MB M5 2 + M3
1090                 KRMB KRM5 KM8
1091                 KGOTO9

Советская реализация[править]

В FORTH ИТЭФ был примитив PIX для установки цветной точки на графическом экране, вот его определение:

             HEAD    203Q,'PI',330Q,PIX                   ; PIX
   ; COLCOD ROW COLUMN -->  -    запись графической точки
             POP   CX                  ; колонка
             POP   BX                  ; строка
             POP   AX                  ; код цветности
             PUSH  DX                  ; сохранение DX
             MOV   AH, 12
             MOV   DX, BX
             SUB   DH, DH
             INT   16                  ; запись графической точки
             POP   DX                  ; восстановление DX
             NEXT

Ссылки[править]


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.