Просмотр полной версии : Протокол HX - имитация блочного устройства с последовательным интерфейсом.
перфоленточного загрузчика для порта терминала
Таковой, к слову, есть в прошивках СМ1420, Э100/25 и 11/34 которые недавно мучили в эмуляторе. Устройство TT.
(речь идет об китайских usb->com чипах prolific). Может это я везучий такой,
Не вы один :) http://zx-pk.ru/threads/16001-uknts-zagruzka-cherez-styk-s2.html?p=567080&viewfull=1#post567080 и еще несколько постов после.
Надо написать программу конвертации перфолент в пультовые скрипты и загружать/запускать через терминал перфоленточные варианты тестов. Вообще-то, Э-60 (ЦП М2) понимает команду <адрес CSR>L. Поэтому достаточно подать команду 177560L и можно заливать туда сначала образ абсолютного загрузчика, а потом - образы LDA-перфолент.
Вообще-то, Э-60 (ЦП М2) понимает команду <адрес CSR>L. Поэтому достаточно подать команду 177560L и можно заливать туда сначала образ абсолютного загрузчика, а потом - образы LDA-перфолент.Если попробовать сделать такое на практике ( например - залить образ перфоленты в эмулятор ДВК через порт терминала ), то станет понятно - что написать конвертер перфолент в пультовые скрипты ни только не сложнее, но (возможно) даже проще.
- - - Добавлено - - -
В самом простом варианте там надо будет запускать ещё один эмулятор ДВК, подключать его второй терминальный порт к терминальному порту первого и потом, после подачи команды 177560L - запускать на втором эмуляторе копирование во второй терминальный порт нужных данных.
Чтобы не перечитывать всю тему... Вопрос такой: протокол по прежнему не предусматривает выхода из аварийной ситуации (когда потеряна синхронизация между сервером и клиентом)?
Чтобы не перечитывать всю тему... Вопрос такой: протокол по прежнему не предусматривает выхода из аварийной ситуации (когда потеряна синхронизация между сервером и клиентом)?Вроде нет. Если сервер находится в режиме передачи - это легко определить по приходу байтов из линии и вернуть сервер в исходное состояние, принимая байты до тех пор, пока они не перестанут поступать со скоростью порта. Если сервер находится в режиме приёма - это легко определить, непрерывно посылая серверу спецпакет №2 ( байты: 001 ; 0376 ; 000 ; 000 ), пока на вход не придёт спецпакет №1 ( два байта: 0375 ; 000 ), что будет означать возвращение сервера в исходное состояние.
Вроде нет.
А вариант со сбросом сервера с помощью BREAK реализовать возможно?
Идея состоит в том, чтобы иметь возможность начать/продолжить работу из любого состояния, а так же иметь возможность оборвать операцию, а не добивать ее до конца.
А вариант со сбросом сервера с помощью BREAK реализовать возможно?Думаю, да. Сейчас сигнал BREAK транслируется фильтром HX в обе стороны при любом состоянии фильтра, что противоречит концепции протокола. При активации протокола HX - разрывается сквозной канал передачи байтов через фильтр HX в обе стороны ( а приходящие в фильтр с обоих сторон байты - накапливаются во входных буферах ), вплоть до возвращения фильтра в исходное состояние. Тот факт, что сигнал BREAK при этом продолжает транслироваться фильтром в обе стороны - противоречит концепции протокола. Гораздо логичнее сделать так, чтобы сигнал BREAK не только сбрасывал фильтр в исходное состояние и восстанавливал сквозную трансляцию, но и обнулял входной и выходной буфера с той стороны, откуда пришёл.
Если сигнал BREAK приходит, когда протокол HX не активен и фильтр транслирует байты в обе стороны - сигнал BREAK проходит насквозь. Но если сигнал BREAK сбрасывает активацию протокола - должен ли он стать первым сигналом, прошедшим через фильтр, или последним, вырезанным фильтром из потока?
- - - Добавлено - - -
BREAK со стороны терминала должен не только сбрасывать протокол, но и проходить через фильтр для сброса драйвера HX ( из-за перезагрузки PDP-11 с драйвером ). BREAK со стороны драйвера проходить через фильтр не должен, потому что при посылке драйвером он является частью протокола и должен вырезаться фильтром.
Но если сигнал BREAK сбрасывает активацию протокола - должен ли он стать первым сигналом, прошедшим через фильтр, или последним, вырезанным фильтром из потока?
Думаю тут надо экспериментировать. А также учесть, что USB и PCI порты могут очень много мусора еще прислать после BREAK, включая последовательность которая снова может активировать HX.
..
Реализован (http://zx-pk.ru/threads/20092-emulyator-terminala-tipa-vt52.html?p=929033&viewfull=1#post929033) протокол HX v2.4. Официально добавлена поддержка спецкоманд, описаны спецкоманды: EcHo, BrEaK, VeR.
После получения от клиента спецкоманды EcHo - сервер будет возвращать клиенту все получаемые от него байты, включая завершающий нулевой байт.
После получения от клиента спецкоманды BrEaK - сервер отправит клиенту сигнал BREAK.
После получения от клиента спецкоманды VeR - сервер отправит клиенту два байта версии и ревизии протокола ( сейчас это: 002 ; 004 ).
протокол HX v2.4 (http://zx-pk.ru/threads/20683-protokol-hx-imitatsiya-blochnogo-ustrojstva-s-posledovatelnym-interfejsom.html?p=929040&viewfull=1#post929040).
зависит только от .EXE версии эмулятора, а сам файл драйвера HX.SYS - универсальный или так же требуется обновление (например на каких-то ранее деланных образах для КЦГД?)
зависит только от .EXE версии эмулятора, а сам файл драйвера HX.SYS - универсальный или так же требуется обновлениеСтарые драйверы продолжают нормально работать по-старому. Новые драйверы ( которых пока нет ) получают дополнительные возможности.
Patron, Не могу загрузить плату QED993. Раньше грузилась (http://zx-pk.ru/threads/20092-emulyator-terminala-tipa-vt52.html?p=779679&viewfull=1#post779679) но там НХ 2.0.
После 10000G молчёк, делаю ВREAK показывает 10044 где запись 100375.
Установлен loader- HX Boot.odt.
При загрузке с другого устройства делаю DIR HX*: где также молчёк и на кнопки не реагирует.
В чем может быть причина?
В чем может быть причина?
А в логе что-нибудь видно интересного? Скорость порта какая?
А в логе что-нибудь видно интересного?
Ничего интересного.
Скорость порта какая?
38400 8N1
38400 8N1
Я бы для начала поставил 9600. Не знаю насчет QED, а реальный KDJ11-E на скорости выше по DLV11 будет терять байты (а системы окажутся неработоспособными - даже RT-11 [речь про терминал даже, а не про HX])
Я бы для начала поставил 9600. Не знаю насчет QED, а реальный KDJ11-E на скорости выше по DLV11 будет терять байты.
Да, действительно что-то теряется. На скорости 9600 загрузился.
А я уже голову сломал, думал что не так. Спасибо.
- - - Добавлено - - -
Я бы для начала поставил 9600
Интересно, а бит четности (нечетности ) поможет если увеличить скорость?
поможет если увеличить скорость?
Вряд ли. Контроль четности может помочь найти ошибки передачи (в данном случае их нет), но ни железо ни софт не предусматривают реакции на них. Здесь по идее происходит ошибка переполнения - вычитывание не поспевает за записью.
Расскажите для начинающего :
1. Какой софт должен быть запущен на ИБМ ЭВМ ( W7 ) для организации первоначальной загрузки МС1201.03 с аппаратным высоковольтным портом 176560 ?
2. Пожалуйста, дайте ссылку или приведите текст начального загрузчика для набора на МС1201.03 ( используется дисплей типа КСД )
3. Как подключить собственный образ 800 кбайт в формате .DSK для его передачи в МС1201.03 со стороны ИБМ ЭВМ. Образ содержит драйвер новодельного контроллера и программу обслуживания дискет 800 кбайт.
1. Какой софт должен быть запущен на ИБМ ЭВМ ( W7 ) для организации первоначальной загрузки МС1201.03 с аппаратным высоковольтным портом 176560 ?На PC надо запустить Эмулятор терминала типа VT52 (http://zx-pk.ru/threads/20092-emulyator-terminala-tipa-vt52.html?p=543414&viewfull=1#post543414) и загрузить в нём ( через пункт меню "Файл->Открыть" ) конфиг HX_COM.cfg
Имя COM-порта, используемого для связи с ДВК - задать в конфиге до его загрузки ( по умолчанию там: COM4 )
[ComPort.ini]
PortName = COM4
Также надо внести в конфиг следующее изменение:
[HX.ini]
HX0 = HXsys54_(176560).DSK
3. Как подключить собственный образ 800 кбайт в формате .DSK для его передачи в МС1201.03 со стороны ИБМ ЭВМ. Образ содержит драйвер новодельного контроллера и программу обслуживания дискет 800 кбайт.Проще всего - добавить название образа в конфиг при его редактировании ( файл образа положить в папку с эмулятором ):
[HX.ini]
HX0 = HXsys54_(176560).DSK
HX1 = MY.DSK
Если образ ( в нашем примере: MY.DSK ) планируется позже скопировать на привод MY ДВК - драйвер MY.SYS надо добавить в образ HXsys54_(176560).DSK из любого образа эмулятора ДВК.
Тогда, после загрузки ДВК через HX - можно будет выполнить копирование DSK-образа из привода HX1 на диск MY0 так:
.COPY/DEV HX1: MY0:
2. Пожалуйста, дайте ссылку или приведите текст начального загрузчика для набора на МС1201.03
Теперь можно запустить эмулятор, загрузить конфиг HX_COM.cfg ( если он не загружался ранее и поэтому не загрузился сразу после запуска эмулятора ) и вбить следующий загрузчик в пульте ДВК:
100/102¬
2
10000/12701¬
176560¬
12702¬
176564¬
10100¬
5003¬
77301¬
5212¬
105712¬
100376¬
6300¬
1005¬
5012¬
12700¬
4¬
5761¬
2¬
42700¬
20¬
10062¬
2¬
1362¬
105711¬
100376¬
116123¬
2¬
22703¬
1000¬
101371¬
5007
10000GВместо '¬' нажимать <ПС>.
После нажатия G - можно переключить эмулятор терминала на закладку [HX Log], где будут появляться сообщения обо всех действиях сервера HX.
Где надо внести изменения на ИБМ ЭВМ ( W7 ), что бы добавить скорости порту COM1, хотя бы до 57600 ?
Ну вроде как в Device Manager - com порт, свойства. Но по идее это же можно выставить и в программе (если, конечно, в ней это предусмотрено), которая будет висеть на com порту.
- - - Добавлено - - -
Показано картинками:
https://support.moysklad.ru/hc/ru/articles/205746507-%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D 0%B0-%D1%81%D0%BA%D0%BE%D1%80%D0%BE%D1%81%D1%82%D0%B8-COM-%D0%BF%D0%BE%D1%80%D1%82%D0%B0-%D0%B2-Windows
Где надо внести изменения на ИБМ ЭВМ ( W7 ), что бы добавить скорости порту COM1, хотя бы до 57600 ?Скорость порта задаётся настройкой "BaudRate = ".
Можно редактировать скорость по умолчанию для всех портов - в файле Terminal_ComPort_Adapter.ini ( префикс "CBR_" перед значением скорости не обязателен ).
Можно индивидуально задавать скорость конкретного порта в конфиге:
[ComPort.ini]
PortName = COM4
BaudRate = 57600
StopBits = 2
InitialStateOf[ShowPortUse]=1
SaveChangesFor[ShowPortUse]=1
MinimalBreakTime_MKS=3000
Подскажите пожалуйста, для загрузки МС1201.02 с адресом терминала 177560 какой текст надо набирать в пульте МС1201.02, что бы она загрузилась ?
Нет ли специальной кнопочки в эмуле "Автозагрузка с пульта", которая сама бы набирала текст загрузчика ?
Кнопку загрузки нашел !
randomizer
23.04.2018, 14:42
Подскажете плз, возможно ли использовать образы дискет больше чем 800К, или может даже образ HDD?
возможно ли использовать образы дискет больше чем 800К, или может даже образ HDD?Да, можно.
randomizer
23.04.2018, 21:00
Оу, и то и другое?!
- - - Добавлено - - -
Я так понимаю, со стороны протокола нет разницы. А вот на HX Server я не смог найти информации.
на HX Server я не смог найти информацииВ приложении к первому сообщении темы - исходник протокола. Там можно посмотреть, что делает сервер в ответ на приходящие от клиента байты.
Можно создать образ максимального размера - 32 Мб. Его и использовать для файлобмена. Через Total Commander с установленным плагином можно таскать файлы из него и в него. Получается, как с папкой. Очень удобно. Теоретически, можно протащить и файл до 32 Мб.
Можно редактировать скорость по умолчанию для всех портов
У меня работает только на 9600. Даже на 19200 работать не хочет.
Patron, а зачем программа HX Server выключает NumLock? Это создаёт неудобства.
а зачем программа HX Server выключает NumLock?Запустил HX_Server.exe - программа NumLock не выключает.
Обычно, если что-то происходит с NumLock - значит в файле конфига создаётся объект Terminal. В таком случае можно в файле Terminal.ini отключить терминалу управление клавиатурой:
KeyboardControlling = 0
У меня на трёх компьютерах с ХР и 7-кой NumLock выключается. Уже на четырёх.
KeyboardControlling = 0
Бесполезно. Там есть и прямо: NumLockControlling = 1. И его, и всё остальное ставил в ноль - не помогает.
Бесполезно.Да, точно - это проблема старых версий эмулятора. Они в самом начале запуска гасят все лампочки на клавиатуре.
В более поздних версиях такой проблемы нет. Можно взять exe-файл из свежего комплекта эмулятора ДВК и переименовать в HX_Server.exe
Все-таки: как сопрячь СА и RS-232?
Из прочитанного неочевидно. Или я недоглядел.
По сути СА есть токовая петля? Тогда есть в принципе промышленные решения у того же Adam/moxa... TTL на 232
- - - Добавлено - - -
Если имеется ввиду СА на УК-НЦ, то нет, на УК-НЦ RS-232. То есть - напрямую.
А если требуется вывести TTL на RS-232, то у китайцев есть дешёвые платки (на max) - вход/выход TTL (или 3.3В) - выход/вход COM порт. Есть варианты - только входные-выходные данные, есть варианты - + пара (не помню названия) сигналов управления.
Разве СА на УКНЦ не токовая петля?
СА на УКНЦ как раз интересует. На моей нет ни ВП, ни 174, распаивать не особо хочется, потому без С2. РМУ.
Все же, как подключить СА УКНЦ к компорту?
Мы имеем там импульсным трансформатором развязанные линии пд прм. Из схем в интернетах нашлось только что-то с двумя резисторами и транзистором
Разве СА на УКНЦ не токовая петля?
Я ошибся (поэтому и удалил сообщения) - спутал с С2
А по СА - посмотрел схему (https://retropc.org/biblioteka/0116.djvu) - что то я сомневаюсь, что там токовая петля.
Да тоже сомнения. Но как все же преобразовать сие в RS-232?
Прицепить к ногам ВП max232?
Прицепить к ногам ВП max232?
Думаю, это будет простейший вариант. Но - зашитый в ПЗУ код работы с СА требует соблюдения определённого протокола - это не просто RS-232, так что просто так подцепить к PC на эмулятора терминала - что-то мне подсказывает, что цимиса не будет
Тема про сеть УКНЦ --> https://zx-pk.ru/threads/15947-set-uknts.html
Interesting. Possibly related. Use Google translate. Russian hackers making cool stuff. (https://forum.vcfed.org/index.php?threads/sms11x-pdp11.1243869/post-1328347)
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot