EMI
Перейти к навигации
Перейти к поиску
EMI — фортовское слово Каллисто.
EMI ( c n −− ) Вывод нескольких символов на индикатор.
Ввод слова EMI
В режиме ЛАТ последовательно нажмите три клавиши ИП ÷ 7
Реализация
969 ; ∗∗ Дисплей: вывод текста на индикатор ∗∗ 970 ; 971 ;#EMI 972 ; EMI ( c n −− ) Вывод нескольких литер на индикатор. 973 LEMI: .DB 3 974 .TEXT "EMI" 975 .DW LENCL ; Слово странное, взято из FORTH ИТЭФ 976 EMI: .DW JEMI 977 JEMI: PKRM03 M0 ; Число литер 978 RM3 1 + M8 1 + M3 979 RM0 +/− KX<09 ; Проверка на отрицательное или нулевое число литер 980 EMIS1: KRM8 PGSB CHPUT ; Вывести литеру 981 FL0 EMIS1 982 KGRPH KGOTO9
Советская реализация
Ниже определение примитива EMI из FORTH ИТЭФ:
HEAD 203Q,'EM',311Q,EMI$ ; EMI POP CX ; Число символов POP AX ; Символ PUSH CX ; Сохранение содержимого CX PUSH AX ; Сохранение содержимого AХ MOV BX, [DI+32Q] ; Установка атрибута MOV AH, 15 ; Чтение текущей страницы INT 16 ; в BH POP AX ; Восстановление содержимого AX MOV AH, 9 ; Запись строки символов INT 16 MOV AH, 3 ; Чтение положения курсора INT 16 POP CX ADD DL, CL MOV AH, 2 ; Установка положения курсора $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 $'
Ссылки
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |