Слово ↖

Материал из ПМК вики
Версия от 09:38, 9 ноября 2017; AtH (обсуждение | вклад) (→‎Реализация)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

(очистить индикатор, стрелка влево-вверх) — адаптированное слово Каллисто.

↖              ( -- )                          Очистить индикатор. Курсор в левый верхний угол.

Очищает индикатор и помещает курсор в левый верхний угол. Вывод на индикатор символа с кодом 12 производит тот же эффект.

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

В режиме NUM последовательно нажмите две клавиши  F   Выход 

PAGE в стандарте ANS Forth[править]

10.6.1.2005   PAGE                                                     FACILITY
           ( -- )
           Перемещение на другую страницу для вывода. Фактическая функция 
           зависит от устройства вывода. На терминале, PAGE очищает экран и 
           сбрасывает позицию курсора к верхнему левому углу. На принтере, 
           PAGE исполняет прогон страницы.

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

Каллистянское слово ↖ во все стандарты Форта входит под именем PAGE

До укрепления стандартов Форта это слово имело и другие названия, например SCL

В Форте FSP88 и MMSFORTH это слово называлось CLS (от англ. clear screen, очистить экран) — явно под влиянием Бейсика.

PAGE в предыдущем стандарте Forth-83 (англ.)[править]

     PAGE         --                            M
          Clear the terminal screen or perform a form-feed action
          suitable to the output device currently active.

PAGE в стандарте Forth-79 (англ.)[править]

PAGE
    Clear the terminal screen or perform an action suitable to the
    output device currently active.

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

 251 CHPUTCLS:       8 PKM19                         ; 8 линий при прокрутке означают очистку экрана
 252 CHPUTHOME:      Cx ENT PPM9000 RTN
…
 255 JPAGE:          GSB CHPUTCLS  KGRPH  KGOTO9     ; Обработчик примитива PAGE
…
1136 ;#PAGE
1137 ; ↖                ( −− )                               Очистить индикатор. Курсор в левый верхний угол.
1138 LPAGE:          .DB     1,200
1139                 .DW     LGRPH
1140 PAGE:           .DW     JPAGE                   ; Очистить экран, курсор в левый верхний угол. Шрифт не менять.

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

В FORTH ИТЭФ примитив с именем PAGE почему-то устанавливал активную страницу дисплея, а примитив MODA менял режим экрана. Очищал экран примитив SCL

Вот эти определения (в определении MODA исправлена опечатка):

   ;         ** Дисплей **

             HEAD    204Q,'PAG',305Q,$PAGE                ; PAGE
   ; Установка активной страницы ( PAGE --)
             POP   AX
             MOV   AH, 5
             INT   16
             NEXT

             HEAD    204Q,'MOD',301Q,MODA                 ; MODA
   ; Изменение режима. ( М --> - )
             POP   AX
             SUB   AH, AH
             INT   16
             NEXT

             ...

             HEAD    203Q,'SC',314Q,SCL                   ; SCL
   ; SCREEN CLEAR
             MOV   CX, 2048     ; Загрузка счетчика
             MOV   AH, 15
             INT   16           ; Установка текущей страницы
             SUB   DX, DX
             MOV   AH, 2        ; Курсор в исходное положение
             INT   16
             MOV   BL, 7
   CLEAR:    MOV   AX, 0920H    ; Очистка экрана
             INT   16
             NEXT

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


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


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