[an error occurred while processing this directive]

3.1.2* Особенности IN/OUT 
3.1.3* Создание слов- обработчиков ВВОДА/ВЫВОДА 

  ПРИМЕР1: МЫ ХОТИМ 
            Чтобы система подсчитывала кол- во выведенных 
            на консоль символов. 

           КАК ЭТО СДЕЛАТЬ? 
            0 Variable QSymbols ( Переменная для подсчета 
            :dev SymCount QSymbols 1+! ;dev 
            ' SymCount OutSet 

           ЧТО БУДЕТ ДАЛЬШЕ? 
            При выводе любого символа переменная QSyblols 
            будет увеличиваться на 1. 


  ПРИМЕР2: МЫ ХОТИМ 
            Чтобы при ВВОДЕ( хотя бы при вводе строки ) 
            на каждый введенный с устройства символ отобра- 
            жался в углу окна. 

           КАК ЭТО СДЕЛАТЬ? 
            :dev SymShow InWas ` If Dup BegPos ` c! Then ;dev
            InReset 
            ' SymShow InSet 
            ' KbdIn InSet 

           ЧТО БУДЕТ ДАЛЬШЕ? 
            При вводе символа он будет отражаться в ЛевоВерх 
            углу окна. 
            ( Чтобы снять всю эту бяку достаточно: 
              inreset ' kbdin inset ) 

  ПРИМЕР3: Структура слова типа D( device ) 

           Рассмотрим системное слово KBDIN( ввести с клави- 
           атуры 1 символ ) 

            Kbdin dfb ¤85 
                  asc "kbdiN"    NFA 

                  dw  ???        LFA 

                  jsr Device     CFA 

                  dw  0          PFA 
                                 ( это поле введено для 
                                 оргганизации цепочки 
                                 потока ВВОДА/ВЫВОДА, в нем 
                                 содержится адрес след. 
                                 слова из цепочки ) 

                  dw  ???        Здесь те слова, которые 
                                 будут выполнятся 
                  .......... 

                  dw  devout     Слово-выход из слова 
                                 устройства 


3.2.1.0.2* Системный набор ОБРАБОТЧИКОВ 

  ПРИМЕР1: Структура систеного ОБРАБОТЧИКА для TEAC 
           Для нотации ассемблера структура выглядит: 

            Teac 
             jsr Doe        CFA Это структура <BUILDS DOES> 

             dw  makechoice PFA Системный ветвитель 
                                по номеру 

             dw TF0         PFA+2 Массив векторов для перехо-
             dw TF1               дов по функциям устройства 

             .... 

             dw TF11 


3.2.1.3* Считать блок данных с устройства 

  ПРИМЕР1: МЫ ХОТИМ 
            Считать в память с адреса HERE весь 1 трек. 
            ( 0 трек средствами BForth НЕ может быть счита
[an error occurred while processing this directive]