form, почему-то у меня не открываются ссылки :(
Вид для печати
form, почему-то у меня не открываются ссылки :(
Сейчас открыл эту ссылку: emulator.pdp-11.org.ru/DVK/distr/ - все файлы скачиваются.
Современные бровсеры не любят http ссылок с https страниц, поэтому если ссылка где-то вверху написана как http, нужно просто заменить на https.
Домен emulator.pdp-11.org.ru (и emulator.pdp-11.online - синоним) добавлен в сертификат, сертификат регулярно перевыпускается автоматом.
Можно также вручную скопировать в адресуню строку http ссылку - так сработает, но сервер в итоге переотправит на https.
Каналы передачи данных в эмуляторе могут разветвляться/объединяться без ограничений, поэтому можно оставить терминал как есть и просто подключить к тем же входному и выходному каналам ещё и IP/COM порт. Если хочется лишить себя возможности вводить байты с локальной клавиатуры - можно подключить локальный терминал только к выходному каналу, чтобы "параллельно" видеть, что именно сервер отправляет в порт. Также к любым каналам можно "параллельно" подключать консоль в одном из режимов "дампа" и получать (например) полный дамп байтов, приходящих в роли "данных клавиатуры" во входной канал из IP/COM порта.Цитата:
Сообщение от Radon17
Делается это в три этапа.
1. На первом этапе нужно создать интересующий объект, добавив строку создания объекта в секцию конфига [objects].
Для тренировки - создадим консоль, которая будет потом в режиме дампа показывать всё, что мы набираем на клавиатуре локального терминала.
Con2 - это имя экземпляра объекта, которое должно быть уникальным. Поэтому, если в дальнейшем нам пондобятся в этом конфиге ещё консоли - надо будет придумать для них другие уникальные имена (например: Con3, Con4 и т.д.).Код:[objects]
Con2 = Ядро:Console
2. На втором этапе нужно задать настройки объекта в секции конфига с именем этого объекта.
Как только мы первый раз откроем в эмуляторе конфиг, создающий заказанный нами новый экземпляр консоли - этот экземпляр сам при создании разместит в конфиге секцию со своим именем, куда сам запишет все свои настраиваемые параметры со значениями по-умолчанию. Но никто не мешает при добавлении нового объекта в конфиг сразу добавить и секцию настроек этого объекта.
Подробнее про режимы дампа консоли можно посмотреть ЗДЕСЬ.Код:[Con2.ini]
TabTitle = "Byte Dump"
InitialStateOf[StatusBar] = 0
SaveChangesFor[StatusBar] = 0
InitialStateOf[ControlBar] = 0
SaveChangesFor[ControlBar] = 0
InitialStateOf[Log]=0
SaveChangesFor[Log]=0
DumpMode=3
SeparateWindow_X0_px=0
SeparateWindow_Y0_px=0
SeparateWindow_DX_px=800
SeparateWindow_DY_px=600
InitialStateOf[SeparateWindow]=0
SaveChangesFor[SeparateWindow]=1
PrinterMode=0
Old_Logs_Mode=0
3. На третьем этапе нужно подключить новый объект к другим объектам эмулятора, добавив строку (или строки) подключения в секцию конфига [links].
Для получения дампа ввода с локального терминала, создаваемого в конфиге ДВК-3.cfg - добавления в конфиг будут следующими:
Код:[links]
VT52 > Con2
Если теперь загрузить конфиг в эмуляторе и после начала эмуляции нажать один раз ввод, то содержимое окна локального терминала будет таким:
https://emulator.pdp-11.org.ru/pics/DVK3_1.png
А содержимое окна добавленной нами консоли будет таким:
https://emulator.pdp-11.org.ru/pics/DVK3_2.png
Отредактированный конфиг: ДВК-3+.cfg.zip
Теперь создадим объект для работы с COM-портом и подключим его ко входному и выходному каналам терминального порта эмулируемой ДВК.
1. Создаём объект ComPort.
Код:[objects]
ComPort = Ядро:Terminal_ComPort_Adapter
2. Задаём настройки COM-порта.
Остальные настройки COM-порта находятся в файле Terminal_ComPort_Adapter.ini и любая из них может быть переназначена прямо в секции настроек объекта в конфиге.Код:[ComPort.ini]
PortName="COM5"
InitialStateOf[ShowPortUse]=1
SaveChangesFor[ShowPortUse]=1
InitialStateOf[StopReading]=0
SaveChangesFor[StopReading]=0
MinimalBreakTime_MKS=3000
3. Подключаем COM-порт к эмулируемому порту терминала.
Теперь COM-порт подключен полностью параллельно локальному терминалу.Код:[links]
TerminalPort <=> ComPort
Переключим консоль с дампом на ввод из COM-порта:
Отредактированный конфиг: ДВК-3++.cfg.zip (в том же архиве есть конфиг COM_4.cfg для "проверки связи" через виртуальную пару портов COM5-COM4, который нужно загрузить в отдельном эмуляторе терминала).Код:[links]
ComPort > Con2
https://emulator.pdp-11.org.ru/pics/DVK3_3.png
Видно, что эмулятор превратился в сервер и слушает порт COM5.
То же самое можно сделать и для IP-портов.
Вариант конфигов сервера и клиента для связи через порт 8023: ДВК-3+++.cfg.zip
Patron, Огромнейшее СПАСИБО за столь ёмкий и подробный ответ!!!!
А можете добавить функцию передачи бинарного файла в консоль без ожидания @ отдельной кнопкой
У процессора м2 вшит этот функционал набираем 177560L и все можно скармливать absloader следо программу в lda формате
На процессоре 1801вм* нажимает L с опущенным пультом и меняем последнюю ячейку ОЗУ 157776 на 177560 поднимаем пульт и нажимаем P
Очень интересно, я про такое не знал.
Для проверки - сделал вариант перфоввода, который не на шину садится, а отправляет двоичное содержимое выбранного файла в байтовый канал. Всё заработало, но вылезла небольшая проблема - перфоленточный загрузчик берёт из LDA-файла информацию о длине данных и загружает с ленты ровно столько данных, сколько там указано, поэтому в конце перфолент дековцы взяли моду набивать дополнительную информацию, которая при создании образов перфолент попадает в эти образы. Поэтому, чтобы образы перфолент годились для "слепой загрузки через порт терминала" - их нужно подрезать.
Например, если через порт терминала загружать комплектный образ перфоленточного Бейсика - получается так:
Код:@L 157744
@157776/177550 177560
@P 157500
@P
PDP-11 BASIC, VERSION 007A
*O B$$BB$$BB$$BL\
А если отрезать у образа последний блок - получается так:
Код:@L 157744
@157776/177550 177560
@P 157500
@P
PDP-11 BASIC, VERSION 007A
*O
И когда после старта Бейсика нажимаем <Enter> - у родного образа Бейсик думает, что мы хотим выбрать опции:
Код:@L 157744
@157776/177550 177560
@P 157500
@P
PDP-11 BASIC, VERSION 007A
*O B$$BB$$BB$$BL\
DO YOU NEED THE EXTENDED FUNCTIONS?
HIGH-SPEED READER/PUNCH?
SET UP THE EXTERNAL FUNCTION?
MEMORY?
READY
А у подрезанного образа - результат получается как при загрузке ленты через родной перфоввод:
Код:@L 157744
@157776/177550 177560
@P 157500
@P
PDP-11 BASIC, VERSION 007A
*O
READY