Текущая версия |
Ваш текст |
Строка 1: |
Строка 1: |
| '''BELL''' (звонок) — фортовское слово [[Каллисто]]. | | '''BELL''' — стандартное слово [[Каллисто]]. |
| BELL ( -- ) Звонок. Озвучить гудок терминала.
| |
| Издать короткий звуковой сигнал для привлечения внимания оператора. Этот же звук можно получить, [[EMIT|выведя на индикатор]] [[символ с кодом 7]].
| |
| | |
| == Ввод слова BELL ==
| |
| В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите четыре клавиши [[Клавиша В/О|{{Чёрная клавиша|В/О}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша -|{{Серая клавиша|−}}]] [[Клавиша -|{{Серая клавиша|−}}]]
| |
| | |
| == История ==
| |
| Слово BELL перешло в [[Каллисто]] из Форта ИТЭФ. Современные стандарты Форта никак не регламентируют извлечение звука, но слово BELL присутствовало в стандартах Форта до 1994 года.
| |
| | |
| Первое найденное упоминание о слове BELL датируется 1979 годом. Английское слово [http://www.lingvo-online.ru/ru/Translate/en-ru/bell ''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.
| |
| | |
| == Реализация ==
| |
| <pre>
| |
| 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
| |
| </pre>
| |
| | |
| === Советская реализация ===
| |
| В FORTH ИТЭФ слово BELL было [[примитив]]ом, вот его определение:
| |
| <PRE>
| |
| 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 $'
| |
| </PRE>
| |
| | |
| == Ссылки ==
| |
| * {{Исходник|BELL|BELL}}
| |
| * См. слово [[BEEP]], которое позволяет контролировать частоту и длительность звукового сигнала.
| |
| * См. также слово [[(PLAY)]], которое позволяет проигрывать целые мелодии
| |
| | |
|
| |
|
| {{нет иллюстраций}} | | {{нет иллюстраций}} |
| {{заготовка}} | | {{заготовка}} |
| [[Категория:Слова Каллисто]] | | [[Категория:Слова Каллисто]] |
| [[Категория:Примитивы]]
| |
| [[Категория:Слова для звука на Каллисто]] | | [[Категория:Слова для звука на Каллисто]] |
| [[Категория:Терминальный ввод/вывод Каллисто]]
| |