Patron, так вить хочется без odt loadera грузится чтобы просто набиралось 177560L и поехало все
Просто на 9600 скорости не особо хочется каждый раз запускать сначало рт-11 а следом софт
Вид для печати
Patron, так вить хочется без odt loadera грузится чтобы просто набиралось 177560L и поехало все
Просто на 9600 скорости не особо хочется каждый раз запускать сначало рт-11 а следом софт
AFZ, а что делать если программа обитает в адресах 144000 и выше? Вот и остаётся только lda
Варианта всего 3:
1. Пересобрать программу с адреса 1000
2. Записать в блоки 1-ххх файла HXSYS.DSK содержимое блоков 100-yyy (0144-zzz) твоего SAV-файла, а начальный адрес загрузки указать 144000
3. Записать в блок 1 абс. загрузчик и маленькую программулю, которая перешлет его на место и отдаст ему управление.
Вариант 3, конечно, сложнее. придется еще изобретать процедуру передачи данных через порт терминала, но, наверное тоже можно. А вариант 2 делается в одно-два движения...
Все 3 варианта я пытался реализовать, но пока только голый абс лоадер + лда отправленные в порт через тера терм после 177560л, мозгов на большее не хватает по этому прошу патрона
Т.е. чтобы терминал анализировал, что вводится с клавиатуры, и если введено 177560L - начинал вместо ввода с клавиатуры отправлять в приёмный порт терминала байты с подключенной перфоленты. Это было бы круто, но вряд ли мы когда-то такое увидим.
Можно вместо odt loadera сделать собственный ODT файл, который будет вводить коды нужной программы напрямую в память, после чего останется только вручную ввести 144000G - и всё поехало.
Чтобы такое провернуть - нужно выполнить 4 шага:
1. Создать начальный ODT-файл с "заголовком" ввода кода:
2. Откомпилировать свою программу с такими опциями листинга, чтобы в листинг выводился только восьмеричный код программы.Код:100/102¬
2
144000/
3. Отредактировать полученный файл так, чтобы было по одному восьмеричному коду на строку. Добавить в конце каждой строки, кроме последней - символ '¬'.
4. Добавить получившийся текст в ODT-файл после заголовка:
Код:100/102¬
2
144000/12701¬
177560¬
12702¬
177564¬
10100¬
5003
Patron, слушай а можно отключить в odt loadere ожидание @ чтоб он просто отправлял фаил
Как отправлял файл?
Кто будет принимать файл со стороны ДВК, если всё, что там есть - пультовая программа с интерфейсом Micro-ODT.
ODT-лоадер работает с Micro-ODT, выдавая команды Micro-ODT в ответ на промпт ( по умолчанию - @).
Всё, что делает ODT-лоадер - можно сделать руками с клавиатуры. Как руками с клавиатуры "отправить файл" в пульте ДВК?
Patron, а есть ли возможность на основе программы открыть второй виртуальный порт к которому можно было бы подключать другую программу? (Про программы сплитеров знаю просто интересно вдруг такой функционал есть и уже встроен к примеру превращение физического сиреал в tcp ip при этом оставляя функции терминала)
Добрый день :)
Patron, а можно добавить в конфиг VT52 второй COM порт (с указанием скорости), что бы через него с HX сервером работать? Посмотрел HX_COM_(176560).cfg, сделал по аналогии, но как то не заработало и скорость не понятно как указать.
Пока обошёл проблему запуском второго экземпляра VT52 с нужными настройками.
Портов можно добавлять сколько угодно с полной индивидуальной настройкой каждого порта. В файле HX_COM_(176560).cfg - вполне рабочий пример (только без индивидуальной настройки портов).
Порты в конфиге открываются так:
Если оба порта работают на одинаковой скорости с одинаковыми характеристиками - то нужно только чтобы аргумент параметра PortName совпадал у каждого из портов с системным именем свободного порта в Windows.Код:[modules]
Ядро = Main_module.em
[objects]
ComPort = Ядро:Terminal_ComPort_Adapter
ComPort2 = Ядро:Terminal_ComPort_Adapter
[links]
ComPort <==> VT52
ComPort2 <==> HX
[ComPort.ini]
PortName = COM1
InitialStateOf[ShowPortUse]=0
SaveChangesFor[ShowPortUse]=0
MinimalBreakTime_MKS=3000
[ComPort2.ini]
PortName = COM2
InitialStateOf[ShowPortUse]=0
SaveChangesFor[ShowPortUse]=0
MinimalBreakTime_MKS=3000
Настройки портов по-умолчанию находятся в отдельном файле Terminal_ComPort_Adapter.ini - любой из параметров можно индивидуально переназначить в секции настроек порта в конфиге.
Для выбора скорости - изменяем параметр BaudRate.Код:BaudRate = CBR_9600
Parity = NOPARITY
StopBits = ONESTOPBIT
ByteSize = 8
fParity = FALSE
Например:
Код:[ComPort.ini]
PortName = COM1
BaudRate = CBR_9600
InitialStateOf[ShowPortUse]=0
SaveChangesFor[ShowPortUse]=0
MinimalBreakTime_MKS=3000
[ComPort2.ini]
PortName = COM2
BaudRate = CBR_57600
InitialStateOf[ShowPortUse]=0
SaveChangesFor[ShowPortUse]=0
MinimalBreakTime_MKS=3000