User Tag List

Страница 65 из 73 ПерваяПервая ... 616263646566676869 ... ПоследняяПоследняя
Показано с 641 по 650 из 1003

Тема: Эмулятор терминала типа VT52

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,072
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    65 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Patron Посмотреть сообщение
    Похоже, что с терминалом такое никогда не будет возможно.
    Как это не возможно когда любой терминал генерирует символы.

    Цитата Сообщение от Patron Посмотреть сообщение
    Когда дойдёт дело до графической подсистемы - появится объект "Монитор", выводящий поток графических кадров (битмапов размером с эмулируемый экран).
    Речь идет о символьном терминале.

    Цитата Сообщение от Patron Посмотреть сообщение
    Эмуляторы КСМ и КЦГД будут создавать эти кадры и отправлять через поток кадров в монитор для отрисовки.
    Зачем такие сложности? Лучше разделить графический режим и символьный, где в символьном режиме идет код символа, а терминал (и те же КСМ, КЦГД) печатает символ с соответствии с картой знакогенератора (выбранного терминала).
    В графическом режиме (касается только КГД, КЦГД) идет поток битов где отображается в отдельной консоли с автоматическим переключением туда и обратно.
    По сути эмуляция КСМ+КГД пускай будут в отдельных консолях, это облегчит эмуляцию. В КЦГД, там сложнее. Лучше КЦГД использовать только графический режим с эмуляцией символьного.

    Но просьба была по терминалам, где терминал не использует шрифт, а создает символы из прошивки знакогенератора.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Предложение по доработке HX драйвера - добавить/расширить вызовы .SPFUN:
    • SF.R32 (367), SF.W32(366) - чтение/запись с использованием 32-битного блока, аргумент blk - адрес дескриптора: первые два слова - номер блока, третье слово возвращает реально переданное количество слов, четвертое не используется (совместимость с DU)
    • SF.SIZ (373) - получить размер - аргумент blk - тип запроса: SF.S16 (0) - 16 бит, SF.S32 (1) - 32 бит (в этом случае буфер должен быть 4-словным, два слова - размер, два слова не используются


    Функционал будет полезен для подъема с нуля систем с большими дисками.
    Последний раз редактировалось form; 09.04.2018 в 06:31.
    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

  4. #3

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    79 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Предложение по доработке HX драйвера - добавить/расширить вызовы .SPFUN:
    • SF.R32 (367), SF.W32(366) - чтение/запись с использованием 32-битного блока, аргумент blk - адрес дескриптора: первые два слова - номер блока, третье слово возвращает реально переданное количество слов, четвертое не используется (совместимость с DU)
    • SF.SIZ (373) - получить размер - аргумент blk - тип запроса: SF.S16 (0) - 16 бит, SF.S32 (1) - 32 бит (в этом случае буфер должен быть 4-словным, два слова - размер, два слова не используются
    Модифицировать драйвер удобнее тому из разработчиков, кому есть на чём тестировать результат.

    От себя могу предложить исчерпывающую информацию по реализации.

    1. Запрос размера диска. Существующий код драйвера HX по обработке запроса SPFUN для получения 32-разрядного размера диска требует минимальной модификации - там всё очевидно.

    2. Чтение/запись. Для реализации обработки запроса SPFUN по чтению/записи с использованием 32-битного блока - нужно найти в драйвере код обработки с использованием 16-битного блока, скопировать в подпрограмму обработки запроса SPFUN "верхнюю половину" кода ( до передачи старшего слова номера блока ), добавить код передачи старшего слова номера блока, после чего выполнить переход на "нижнюю половину" кода.

    Разберём на примере запроса чтения.

    Код:
    HX.Read:
    
    	Mov	#1, R0			; Send SOH
    	Call	ChOu
    
    	Mov	#9.*400+375, R0		; Short packet ; Packet size = 9
    	Call	WOu
    
    	Mov	#"Cr, R0		; Packet type = COMMAND  ;  Command = Cmd_READ_PACKED_STREAM
    	Call	WOs
    
    	Mov	R3,  R0			; Unit
    	Call	ChOs
    
    	Mov	R2,  R0			; Block
    	Call	WOs
    
    	Clr	R0
    	Call	WOs			; 16bit Block -> 32bit Block
    
    	ASL	R1			; R1 == Byte Count
    
    	Mov	R1,  R0			; Byte Count
    	Call	WOs
    
    	Mov	ChSum, R0
    	Call	WOu			; CheckSumm
    Зелёное и красное - надо перенести. Красное - надо изменить для передачи старшего слова номера блока. Синее - общее продолжение, которое надо оставить на месте и выполнять туда переход из перенесённого и изменённого кода.
    Последний раз редактировалось Patron; 10.04.2018 в 14:09.

  5. #4

    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,072
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    65 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Patron, Здравствуйте.
    Я использовал загрузчик НХ в качестве ввода программы на Бейсике. Есть вопросы.
    Как отключить детектор промпта, пустые кавычки в настройке PromptChar="" не дают ввода текста по нажатию кнопки Boot HX0. Как вариант использую пробел.

    Как в тексте программы сделать "перевод сроки+возврат каретки" т.к после ввода первой строки следующая ждет повторное нажатие пробела.

    На данный момент тест вводится с пробелами (перед 10 и RUN). После RUN надо нажать Enter.
    Код:
    БЭЙСИК  ДВК НЦ
    @0
    ЖДУ
     10PRINT "HELLO"
     RUN
    HELLO
     
    ОСТ СТРОКЕ   10
    ЖДУ
    И, просьба сделать выпадающее меню рядом с кнопкой Boot HX0 для выбора файла с текстом.

    Спасибо.

  6. #5

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,806
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    148
    Поблагодарили
    79 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MiX Посмотреть сообщение
    [b]Как отключить детектор промпта, пустые кавычки в настройке PromptChar="" не дают ввода текста по нажатию кнопки Boot HX0.
    Можно попробовать создавать два объекта типа ODT_Loader с разными именами - один будет как обычно подключен к кнопке Boot HX0, а другой (без задания промпта) - к какой-то другой кнопке.

    В принципе, можно вообще не заморачиваться с загрузкой текста через ODT_Loader, а вставлять текст через буфер обмена ( для вставки текста в терминале - нажать <Shift><Insert> ). Открываем текст программы в блокноте Windows, выделяем нужный фрагмент, копируем в буфер обмена ( например, нажав <Ctrl><Insert> ), переходим в окно терминала и нажимаем <Shift><Insert>.

    Цитата Сообщение от MiX Посмотреть сообщение
    Как в тексте программы сделать "перевод сроки+возврат каретки"
    При загрузке текста из файла скрипта - ODT_Loader превращает последовательности 015 012 в 015 ( т.е. CR LF в CR ), а 0254 015 012 в 012 ( ¬ CR LF в LF ). Значит, если в файле программы после каждой строки кода вставлять пустую строку с одиночным символом '¬', то после CR, переданного в конце предыдущей строки, будет передан LF. Однако, нужно отметить, что при вводе с клавиатуры - ввод каждой строки заканчивается именно одиночным нажатием клавиши <CR>, а не нажатиями последовательности клавиш <CR><LF>.

  7. #6

    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А я правильно понимаю, что обсуждаемый эмулятор VT52 обязан нормально работать через свистульки USB-COM на всяких FT232, PL2303 и пр. CH340G, а не только через "железные" компорты?
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  8. #7

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    А я правильно понимаю, что обсуждаемый эмулятор VT52 обязан нормально работать через свистульки USB-COM на всяких FT232, PL2303 и пр. CH340G, а не только через "железные" компорты?
    Проблем на PCI/USB портах у него нет. Думаю с ттлными преобразователями тоже нет.
    Это у всяких TU58 эмуляторов проблемы из-за особой реакции на BREAK у таких железяк
    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. #8

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,514
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    715
    Поблагодарили
    597 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я использовал его для подключения к PDP на Циклоне - через FT232 как раз

  10. #9

    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Угу. Только если покупать эту свистульку с FT232 у китайцев, высока вероятность нарваться на подделку - левый китайский клон этого чипа. А его родные дровишки, ущучив левак, стирают в нем что-то, вроде VID/PID, и до свидания. Вылечить, конечно, можно, но это нужны старые дровишки и куча поясок с бубном. Что-то похожее есть и с PL2303, а вот CH340G в таком пока не замечены.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  11. #10

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,514
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    715
    Поблагодарили
    597 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    А его родные дровишки
    Ну, те которые использую - не матерятся. А обновлять дрова пока не вижу смысла

Страница 65 из 73 ПерваяПервая ... 616263646566676869 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. [Аукционъ] Клавиатура от терминала ЕС-7927
    от BYTEMAN в разделе Барахолка (архив)
    Ответов: 18
    Последнее: 15.05.2012, 14:50
  2. Срочно ищу монитор от терминала 15ИЭ-00-013 (от ДВК-2)
    от dk_spb в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 10.02.2012, 10:19
  3. Куплю клавиатуру КМ-035 для терминала СМ 7238
    от Kronshou в разделе Барахолка (архив)
    Ответов: 5
    Последнее: 13.09.2010, 23:33
  4. C64 или C128 в качестве терминала под Linux
    от Vinnny в разделе Commodore 16/64/128
    Ответов: 6
    Последнее: 14.12.2007, 16:39
  5. Подгрузка pc-файла типа "codes" в эмулятор
    от maximk в разделе Эмуляторы
    Ответов: 15
    Последнее: 13.11.2006, 15:46

Ваши права

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