BELL

Материал из ПМК вики
Перейти к: навигация, поиск

BELL (звонок) — фортовское слово Каллисто.

BELL           ( -- )                          Звонок. Озвучить гудок терминала.

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

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

В режиме ЛАТ последовательно нажмите четыре клавиши  В/О   ИП       

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

Слово BELL перешло в Каллисто из Форта ИТЭФ. Современные стандарты Форта никак не регламентируют извлечение звука, но слово BELL присутствовало в стандартах Форта до 1994 года.

Первое найденное упоминание о слове BELL датируется 1979 годом. Английское слово bell означает «звонок».

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

     BELL         --                            M
          Activate a terminal bell or noise-maker as appropriate to
          the device in use.

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

BELL
    Activate  a terminal bell or noise-maker as appropriate to the
    device in use.

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

 246 CHPUTBELL:      440 ENT 10 PPM9052 RTN          ; Издать короткий звуковой сигнал
…
1016 ; ∗∗∗ Электронный звук ∗∗∗
1017 
1018 ;#BELL
1019 ; BELL             ( −− )                               Звонок. Озвучить гудок терминала.
1020 LBELL:          .DB     4
1021                 .TEXT   "BELL"
1022                 .DW     LCR
1023 BELL:           .DW     JBELL
1024 JBELL:          PGSB CHPUTBELL  KGOTO9

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

В FORTH ИТЭФ слово BELL было примитивом, вот его определение:

             HEAD    202Q,'I',314Q,IL                     ; BELL
             MOV   AX, 7
             JMP   ENT$
             ...
   $EM:      INT   16
             CMP   WORD PTR [DI+42Q],0
             JNE   PRINT
   OK:       NEXT

             HEAD    204Q,'EMI',324Q,EMIT,$EMIT           ; EMIT
   $EMIT     LABEL   FAR
             POP   AX
   ENT$:     PUSH  AX
             MOV   AH, 15
             INT   16
             POP   AX
             MOV   AH, 14
             JMP   $EM
   PRINT:    MOV   DX, 0   ; Установка номера принтера
             SUB   AH, AH
             INT   23
             TES   AH, 51Q
             JE    OK
   ERR4:     MOV   AL, AH
             ADD   AL, 60Q
             MOV   AH, 14
             INT   16
             MOV   DX, OFFSET ERMES4
             MOV   AH, 9H
             INT   21H
             JMP   TYPE$
   ERMES4:   DB   ' PRINTER ERROR $'

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


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


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