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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
 
(не показано 6 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''FONT!''' (установить шрифт, читается «фонт-присвоить») — родное слово [[Каллисто]].
'''FONT!''' (установить шрифт, читается «фонт-присвоить») — родное слово [[Каллисто]].
  FONT!          ( u −− )                            Установить на индикаторе шрифт u (0−2).
  FONT!          ( u −− )                            Установить на индикаторе шрифт u (0−2).
Установка шрифта на индикаторе МК−161 и сопутствующего ему описания.
Установка шрифта на [[индикатор]]е МК−161 и сопутствующего ему описания.


== Ввод слова FONT! ==
== Ввод слова FONT! ==
Строка 8: Строка 8:
Эти нажатия оставляют клавиатуру в [[Режим NUM|режиме NUM]].
Эти нажатия оставляют клавиатуру в [[Режим NUM|режиме NUM]].


== Детали реализации ==
== Реализация ==
Помимо изменения [[R9003]], слово FONT! устанавливает поля структуры [[‗FONT|_FONT]] для правильной реализации курсора, прокрутки, клавиши редактирования и т.д. Для загружаемого шрифта (номер 254) все поля этой структуры вам придётся рассчитать и установить самостоятельно.
В [[Каллисто|Каллисто 1.0]] слово FONT!, помимо изменения [[R9003]], устанавливает поля структуры [[‗FONT|_FONT]] для правильной реализации курсора, прокрутки, клавиш редактирования и т.д. Для загружаемого шрифта (номер 254) все поля этой структуры вам придётся рассчитать и установить самостоятельно.
<pre>
126 ; Описание активного шрифта
127 ; Порядок полей важен, они заполняются словом FONT!
128 ;
129 pFONT          .EQU      126                  ; 11126  _FONT − Структура терминала, описывающая активный шрифт
130 rrCHW          .EQU    1126                  ; 11126  +0  максимальная ширина литеры при выводе на индикатор
131 rrCHH          .EQU    1127                  ; 11127  +1  высота литеры при выводе на индикатор
132 rrBSW          .EQU    1128                  ; 11128  +2  ширина курсора и средней литеры для BS
133 rrSCRLN        .EQU    1129                  ; 11129  +3  на сколько линий поднять экран при прокрутке
134 rrSCRLFIX      .EQU    1130                  ; 11130  +4  на сколько строк поднять курсор после прокрутки
1149 ;#FONTStore
1150 ; FONT!            ( u −− )                            Установить на индикаторе шрифт u (0−2).
1151 ; Установка шрифта на индикаторе МК−161 и сопутствующего ему описания, см. _FONT
1152 LFONTSTO:      .DB    5
1153                .TEXT  "FONT!"
1154                .DW    LFIX
1155 FONTSTO:        .DW    JFONTSTO
1156 JFONTSTO:      RM3 MA 1 + M3                  ; Убрать u из стека
1157                .NUM    rrCHWM1
1158                M5                              ; R5 указывает на 5 байт, описывающих шрифт
1159                KRMA                            ; RX: номер шрифта, который устанавливаем
1160                PPM9003                        ; Установить заказанный шрифт
1161                FX=0 FS12                      ; Это шрифт 0?
1162                8 KM5 KM5  6 KM5  1 KM5 Cx KM5  ; Описание шрифта 0
1163                KGOTO9
1164 FS12:          1 −  FX=0 FS2                  ; Это шрифт 1?
1165                8 KM5  14 KM5  9 KM5  2 KM5 KM5 ; Описание шрифта 1
1166                KGOTO9
1167 FS2:            19 KM5 KM5 12 KM5 3 KM5 5 KM5  ; Описание шрифта 2
1168                KGOTO9                          ; А самопальные шрифты пусть сами устанавливаются
</pre>


== История ==
== История ==
Строка 24: Строка 56:
[[Категория:Примитивы]]
[[Категория:Примитивы]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Усовершенствованные слова]]
[[Категория:Родные слова]]
[[Категория:Системные слова]]

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

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

FONT!          ( u −− )                             Установить на индикаторе шрифт u (0−2).

Установка шрифта на индикаторе МК−161 и сопутствующего ему описания.

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

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

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

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

В Каллисто 1.0 слово FONT!, помимо изменения R9003, устанавливает поля структуры _FONT для правильной реализации курсора, прокрутки, клавиш редактирования и т.д. Для загружаемого шрифта (номер 254) все поля этой структуры вам придётся рассчитать и установить самостоятельно.

 126 ; Описание активного шрифта
 127 ; Порядок полей важен, они заполняются словом FONT!
 128 ;
 129 pFONT           .EQU      126                   ; 11126  _FONT − Структура терминала, описывающая активный шрифт
 130 rrCHW           .EQU     1126                   ; 11126  +0  максимальная ширина литеры при выводе на индикатор
 131 rrCHH           .EQU     1127                   ; 11127  +1  высота литеры при выводе на индикатор
 132 rrBSW           .EQU     1128                   ; 11128  +2  ширина курсора и средней литеры для BS
 133 rrSCRLN         .EQU     1129                   ; 11129  +3  на сколько линий поднять экран при прокрутке
 134 rrSCRLFIX       .EQU     1130                   ; 11130  +4  на сколько строк поднять курсор после прокрутки
…
1149 ;#FONTStore
1150 ; FONT!            ( u −− )                             Установить на индикаторе шрифт u (0−2).
1151 ; Установка шрифта на индикаторе МК−161 и сопутствующего ему описания, см. _FONT
1152 LFONTSTO:       .DB     5
1153                 .TEXT   "FONT!"
1154                 .DW     LFIX
1155 FONTSTO:        .DW     JFONTSTO
1156 JFONTSTO:       RM3 MA 1 + M3                   ; Убрать u из стека
1157                 .NUM    rrCHWM1
1158                 M5                              ; R5 указывает на 5 байт, описывающих шрифт
1159                 KRMA                            ; RX: номер шрифта, который устанавливаем
1160                 PPM9003                         ; Установить заказанный шрифт
1161                 FX=0 FS12                       ; Это шрифт 0?
1162                 8 KM5 KM5  6 KM5  1 KM5 Cx KM5  ; Описание шрифта 0
1163                 KGOTO9
1164 FS12:           1 −  FX=0 FS2                   ; Это шрифт 1?
1165                 8 KM5  14 KM5  9 KM5  2 KM5 KM5 ; Описание шрифта 1
1166                 KGOTO9
1167 FS2:            19 KM5 KM5 12 KM5 3 KM5 5 KM5   ; Описание шрифта 2
1168                 KGOTO9                          ; А самопальные шрифты пусть сами устанавливаются

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

Английское слово font означает «шрифт». Восклицательный знак в конце слова восходит к операции присваивания.

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


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


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