Важная информация

User Tag List

Страница 24 из 29 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя
Показано с 231 по 240 из 288

Тема: Протокол HX - имитация блочного устройства с последовательным интерфейсом.

  1. #231
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MiX Посмотреть сообщение
    Попробовал вставить под клавишу F1 в terminal.ini
    Вставку из буфера обмена и вставку из буфера назначенной клавиши терминал производит одинаковым способом. Если при вставке из буфера обмена скрипт вводится быстрее, чем компьютер на него отвечает, то при вставке из буфера назначенной клавиши должно быть так же.

    Это так ?

    ...

    Скорость вставки регулируется настройкой в ini-секции объекта типа Teminal в файле конфигурации:

    Код:
    InitialStateOf[SlowMultiByte] = 1
    При значении 1 терминал отправляет многобайтовые последовательности со скоростью 66 байтов в секунду, а при значении 0 - с максимальной скоростью.
    Последний раз редактировалось Patron; 10.12.2014 в 16:12.

  2. #232
    Guru Аватар для MiX
    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,065
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    74
    Поблагодарили
    62 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Patron, Дело в том что скрипт написан в восьмеричной системе а под клавишу надо писать в ANSI. Поэтому скрипт напрямую туда не пойдет.
    Скрипт
    Код:
    10000/12706¬
    ANSI
    Код:
    "\061\060\060\060\060\057\061\062\067\060\066\012"
    Перевёл одну строчку и попробовал. Пока неполучается стабильно ввести.

    ---------- Post added at 20:49 ---------- Previous post was at 20:32 ----------

    Точнее это не ANSI а ASCII в восьмеричном коде.
    Кстати говоря, может в эмулятор PDP11 запихать загрузчиков под клавиши которых нет в прошивке.
    Например DW.

    ---------- Post added at 20:58 ---------- Previous post was at 20:49 ----------

    Цитата Сообщение от Patron Посмотреть сообщение
    При значении 1 терминал отправляет многобайтовые последовательности со скоростью 66 байтов в секунду, а при значении 0 - с максимальной скоростью.
    ДА! помогло.
    Теперь надо остальной скрипт перевести.

  3. #233
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MiX Посмотреть сообщение
    Дело в том что скрипт написан в восьмеричной системе а под клавишу надо писать в ANSI. Поэтому скрипт напрямую туда не пойдет.
    Надо только заменить символы '¬' на '\012', а "чистые концы строк" на '\015'.

    Поэтому (например) скрипт:

    Код:
    1000/5¬
    12706¬
    10000¬
    12701¬
    176560¬
    101371¬
    5007
    1000G
    В виде ANSI-строки будет выглядеть так:

    Код:
    "1000/5\01212706\01210000\01212701\012176560\012101371\0125007\0151000G"


    ---------- Post added at 21:20 ---------- Previous post was at 21:16 ----------

    Цитата Сообщение от MiX Посмотреть сообщение
    ДА! помогло.
    Если помогло - должно и из буфера обмена нормально вставлять. Ведь и из буфера обмена, и из ANSI-строки - байты вставляются одним и тем же фрагментом кода.

  4. #234
    Guru Аватар для MiX
    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,065
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    74
    Поблагодарили
    62 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот непонятно, если это ANSI то по моему VT52 работает только в ASCII (КОИ7) и дальше 7бита не прыгает. Или это внутренний ANSI для модуля terminal.ini.

    ---------- Post added at 21:42 ---------- Previous post was at 21:27 ----------

    Цитата Сообщение от Patron Посмотреть сообщение
    Если помогло - должно и из буфера обмена нормально вставлять.
    ДА! загрузился!
    Код:
    .SH ALL
     
    RT-11SJ (Y) V05.04 G
    Booted from HX0:RT11SJ
     
    USR   is set NOSWAP
    EXIT  is set NOSWAP
    KMON  is set NOIND
    TT    is set NOQUIET
    ERROR is set ERROR
    SL    is set ON
    EDIT  is set KED
    KMON nesting depth is 3
     
    PDP 11/73A Processor
    4088KB of memory
    Floating Point Microcode
    Extended Instruction Set (EIS)
    Memory Management Unit
    Parity Memory
    Cache Memory
    50 Cycle System Clock
     
    No SYSGEN options enabled
     
    Device    Status          CSR     Vector(s)
    ------    ------          ---     ---------
      HX      Resident       177560   000
      TT      Installed      000000   000
      SL      141104         000000   000
      EM      Installed      000000   010
      LD      Installed      000000   000
     
    TT
    HX  (Resident)
        HX0 = DK , SY
    SL  (Loaded)
    EM
    LD
    17 free slots
     
    Job  Name  Console Level State    Low    High  Impure
    ---  ----  ------- ----- -----    ---    ----  ------
     0   RESORC   0      0   Run     000000 141032   N/A
     
    No multi-terminal support
     
    Address   Module    Words
    -------   ------    -----
    160000    IOPAGE     4096.
    156242    HX          431.
    145414    RMON       2251.
    141076    SL         1127.
    131032    USR        2066.
    001000    ..BG..    22541.
     
    No LD units mounted
    А надо то было всего исправить ноль на единицу...
    Спасибо!

  5. #235
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MiX Посмотреть сообщение
    Вот непонятно, если это ANSI то по моему VT52 работает только в ASCII (КОИ7) и дальше 7бита не прыгает. Или это внутренний ANSI для модуля terminal.ini.
    VT52 передаёт с клавиатуры коды ASCII.

    Строки ANSI - формат представления данных, позволяющий вставлять в строку любые неотображаемые символы. Этот формат используется ini-файлах эмулятора для ввода значений текстовых параметров.

    В ANSI-виде строка КОИ7 "Привет" выглядит как "\016pRIWET\017", а строка КОИ8 "Привет" выглядит как "\360\322\311\327\305\324"

    Строка "1000/5\01212706\01210000\01212701\012176560\012101371\0 125007\0151000G" содержит только коды ASCII ( 8-й бит у всех байтов равен нулю ), поэтому нет проблем с её вставкой в качестве ввода с клавиатуры терминала.

  6. #236
    R.I.P. Аватар для hobot
    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    370
    Поблагодарили
    309 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    MiX, можно уточнить, что загружали - я имею в виду какую железку вы мучаете? ДВК или Э85 или ещё что то, просто мне затруднительно за вашими HX экспериментами следить, но интересно. Вот последний опыт с 0 и 1 опишите пожалуйста ради меня кратко просто с самого начала (неудач) и до удачной загрузки,если не лень конечно, - в одном сообщении и простым языком - я бы пойму )
    4088KB of memory
    ???
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  7. #237
    Guru Аватар для MiX
    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,065
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    74
    Поблагодарили
    62 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    MiX, можно уточнить, что загружали - я имею в виду какую железку вы мучаете?
    Плата Mentec M1.


    Цитата Сообщение от hobot Посмотреть сообщение
    Вот последний опыт с 0 и 1
    Опции установки.
    Цитата Сообщение от Patron Посмотреть сообщение
    При значении 1 терминал отправляет многобайтовые последовательности со скоростью 66 байтов в секунду, а при значении 0 - с максимальной скоростью.

    Цитата Сообщение от hobot Посмотреть сообщение
    опишите пожалуйста ради меня кратко
    Цитата Сообщение от hobot Посмотреть сообщение
    ???
    Ёмкость ОЗУ.

  8. #238
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Тут недавно трудящиеся просили добавить HX драйвер в SimH который у меня под OpenVMS крутится... Перекомпиливать его пока лень (а без этого HX не будет работать из-за наличия горячей клавиши SimH для останова эмуляции).

    Зато возникла интересная мысль (самому реализоввывать лень, но расскажу как сделать). Можно добавить в драйвер HX поддержку RTEM-11.

    Функционал который может потребоваться драйверу:
    Код:
    ;
    ;ENAR$S - РАЗРЕШИТЬ ОБРАБОТКУ ПРЕРЫВАНИЙ
    ;
            MOV     #545,-(SP)              ;ENAR$ DIC & DPB SIZE
            EMT     377                     ;
    
    ;
    ;DSAR$S - ЗАПРЕТИТЬ ОБРАБОТКУ ПРЕРЫВАНИЙ
    ;
            MOV     #543,-(SP)              ;DSAR$ DIC & DPB SIZE
            EMT     377                     ;
    Этого же эффекта можно добиться макрокомандами RT-11 .MTPS #0 и .MTPS #340 (в RTEM-11 мониторе эти макросы вызывают подпрограммы которые выполняют вышеописанные действия). За таймер беспокоиться при этом не нужно: прерывания от таймера отсутствуют как класс, системные вызовы касающиеся времени переадресуются напрямую в RSX, если в драйвере требуется обработка таймаутов - следует использовать стандартные вызовы .TIMIO/.CTIMIO (помним - драйвер при этом нельзя "переделать" командой SET для подстройки SYSGEN опций).

    DPB для директивы ввода-вывода на терминале:
    Код:
    IO.RAL  =:      1010                    ;READ PASS-ALL 
    IO.WAL  =:      410                     ;WRITE PASS-ALL
    
    ;
    ;QIOW$  IO.RAL,1,20.,,,,<BUFF,BCNT>
    ;
    QIOW:   .BYTE   3,12.                   ;DIC, DPB SIZE  
            .WORD   IO.RAL                  ;IO.RAL FUNCTION
            .WORD   1                       ;TI: LUN 
            .BYTE   20.,0                   ;EFN, PRI
            .WORD   0,0                     ;ISB, AST
            .WORD   BUFF                    ;BUFFER ADDRESS
            .WORD   BCNT                    ;BYTE COUNT
            .WORD   0,0,0,0                 ;EXTRA PARAMETERS
    Вызов функции ввода-вывода:
    Код:
    ;
    ;DIR$   #QIOW
    ;
            MOV     #QIOW,-(SP)             ;PUSH DPB ADDRESS 
            EMT     377                     ;EXECUTE DIRECTIVE
    Как вариант, можно все параметры директивы запихать в стек в обратном порядке (последнее слово - DIC & DPB SIZE) и вызвать EMT 377, но с внешним блоком проще...

    RTEM-11 должен запускаться командой RTE /VS/-AB чтобы запретить горячую клавишу выхода.

    Если не лень кому - можно реализовать

    Да, терминал должен быть настроен командой SET /EBC=TI: (на CTAKAHе автоматом делается для телнетных сессий). Это можно сделать и программно, но лень сейчас - если будет у кого желание заняться, напишу как



    ---------- Post added at 15:19 ---------- Previous post was at 15:18 ----------

    Пример кода вывода на терминал:
    Код:
    .TY TEST.MAC
    QIOW:   .BYTE   3,12.
            .WORD   410
            .WORD   1
            .BYTE   20.,0
            .WORD   0,0
            .WORD   BUFF,BCNT
            .WORD   0,0,0,0
    
    START:: MOV     #QIOW,-(SP)
            EMT     377
    
            EMT     350
    
    BUFF:   .ASCII  <15><12>/TEST TEST TEST!!!/<15><12>
    BCNT    =       .-BUFF
    
            .END    START
    
    
    .EX TEST
    
    TEST TEST TEST!!!
    
    .
    Последний раз редактировалось form; 23.12.2014 в 13:12.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

  9. #239
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,777
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    61 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Можно добавить в драйвер HX поддержку RTEM-11
    Чтобы через порт системного терминала гонять двоичные данные параллельно с терминальным вводом-выводом..

    А не получится как в случае с SIMH, когда поток байтов из порта системного терминала анализирует ещё кто-то ( кроме драйвера HX ) и напрасно реагирует на какие-то двоичные данные как на управляющие коды.

  10. #240
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Чтобы через порт системного терминала гонять двоичные данные параллельно с терминальным вводом-выводом..

    А не получится как в случае с SIMH, когда поток байтов из порта системного терминала анализирует ещё кто-то ( кроме драйвера HX ) и напрасно реагирует на какие-то двоичные данные как на управляющие коды.
    Не получится: RTEM-11 аттачит терминал с перехватом незапланированного ввода, что не позволяет другим программам (и системе) работать с терминалом пока он не будет освобожден. По умолчанию RTEM-11 реагирует на клавишу CTRL/P и прерывает программу, но ключ /-AB в командной строке запрещает это. Внутри RT-11 же достаточно запретить прервания вызовом DSAR$S (или .MTPS #340) чтобы предотвратить драку с терминальным драйвером RT-11. А возможно и этого не потребуется - достаточно просто будет вызывать QIOW на заданное число байт (это будет запланированный ввод/вывод, следовательно в драйвер терминала RT-11 он не попадет)
    Последний раз редактировалось form; 23.12.2014 в 13:39.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

Страница 24 из 29 ПерваяПервая ... 202122232425262728 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Устройства на канальных рег-рах AY
    от ARTi в разделе Для начинающих
    Ответов: 6
    Последнее: 01.10.2011, 16:12
  2. Подключение HDD c интерфейсом ST-412
    от Святослав в разделе Внешние накопители
    Ответов: 5
    Последнее: 11.03.2011, 15:23
  3. Устройства для ZX-BUS?
    от Keeper в разделе Несортированное железо
    Ответов: 36
    Последнее: 01.02.2009, 10:50
  4. Имитация GOTO из машкода
    от Jukov в разделе Программирование
    Ответов: 7
    Последнее: 01.10.2006, 15:12

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •