Пт, 01.07.2022, 07:21
Приветствую Вас Гость | RSS
Главная | Куча вопросов от новичка. - Страница 9 - Форум | Регистрация | Вход
Форма входа
Логин:
Пароль:
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Технические форумы » Hercules » Куча вопросов от новичка.
Куча вопросов от новичка.
LionLexXxДата: Ср, 22.09.2021, 06:48 | Сообщение # 121
Лейтенант
Группа: Проверенные
Сообщений: 50
Репутация: 1
Статус: Offline
Цитата Gregory ()
но это в данном случае неважно, какой именно там у Вас UNICODE,  я понимаю что Вы таким образом просто отправляете некорректный файл.
совершенно верно

Цитата Gregory ()
Это Вы статус виртуального устройства смотрите, а в данном случае интересен статус "реального", т.е. Q 0001
Посмотрите, что происходит если после ошибки выполнить в VM команды VARY OFF 0001 / VARY ON 0001



после отправки не корректного файла
статус устройства на веб-сервере

После зависания ридера СВМ реагирует на команды так же, как и до

Добавлено (22.09.2021, 06:56)
---------------------------------------------

Цитата Gregory ()
А вообще, как я понимаю, основную причину Вы сами нашли - некорректные символы)
Нет, данное зависание возникает, когда его воспроизводишь специально. Т.к. все задания по регламентному заданию отправляются и отрабатывают, и у всех заданий кодировка указана верно. Но иногда происходит подобное зависание по непонятной причине. Такое зависание может происходить с периодичностью раз в месяц или раз в несколько месяцев.

Добавлено (22.09.2021, 07:31)
---------------------------------------------

Цитата Gregory ()
По идее, такие же проблемы вызовет и кириллица в тексте (т.е. файл в кодировке 1251) но это надо бы проверить.
Задания с кирилицей принимает и отрабатывает, не зависает. Только кирилицу воспринимает, как вы говорите, по своей некирилической таблице кодировки. Но на выполнение данного задания это не влияет, т.к. кирилицей указаны значения для записи в текстовый файл.

например задание:
Код
ID BATCH
/*
/JOB OPERATOR 61000630 UNLOAD07
FI * CLEAR
CP LINK BMAEXP1C 191 12 MR MW
AC 12 A
AC 193 B
AC 194 E
ERASE PARAM_07 TXT A
EXECIO 1 DISKW PARAM_07 TXT A 1 F (FINIS STRING  АБВГД
EXECIO 1 DISKW PARAM_07 TXT A 2 F (FINIS STRING  ЕЁЖЗИ
UNLOAD07
/*
При выполнении данного задания создастся файл "PARAM_07 TXT A" с двумя строчками "АБВГД" и "ЕЁЖЗИ", только в файле не будет видно некоторых кирилических символов.

Добавлено (22.09.2021, 07:32)
---------------------------------------------
Я вышел из такой ситуации так, когда считываю файл в NATURAL(ADABAS), то выполняю перекодировку.

Код
DEFINE DATA                    
 PARAMETER                    
  1 #P_TXT(A250)                    
* 1 #P_KC (N3)                    
END-DEFINE                    
RESET #TXT(A250) #I(N3) #J(N3) #K(N3)                    
REDEFINE #TXT(#BB(B1/250))                    
#TXT = #P_TXT                    
* PУCCKИE БУKBЫ, COBПAДAЮЩИE ПO HAПИCAHИЮ C AHГЛИЙCKИMИ -> B PУCCKИE 
*            ПPИ ИCПOЛЬЗOBAHИИ TAБЛИЦЫ "EBC2ASCRUS"                  
*            (для кoдoвoй cтpaницы CP1251 Windows)                   
FOR #I = 1 TO 250                    
 IF #I < 249                    
  THEN                    
   DO                    
    #J = #I + 1                    
    #K = #I + 2                    
    IF #BB(#I) = H'40' AND                    
       #BB(#J) = H'40' AND                    
       #BB(#K) = H'40'            
     THEN ESCAPE   
   DOEND                    
*  Пpoпиcныe  *                         
 IF #BB(#I) = H'C1'    /* Бyквa  "A"    
  THEN #BB(#I) = H'70'                  
 IF #BB(#I) = H'C2'    /* Бykвa  "B"    
  THEN #BB(#I) = H'71'                  
 IF #BB(#I) = H'C3'    /* Бykвa  "C"    
  THEN #BB(#I) = H'72'                  
 IF #BB(#I) = H'C5'    /* Бykвa  "E"    
  THEN #BB(#I) = H'73'                  
 IF #BB(#I) = H'C8'    /* Бykвa  "H"    
  THEN #BB(#I) = H'74'                  
 IF #BB(#I) = H'D2'    /* Бykвa  "K"    
  THEN #BB(#I) = H'75'                  
 IF #BB(#I) = H'D4'    /* Бykвa  "M"    
  THEN #BB(#I) = H'62'                  
 IF #BB(#I) = H'D6'    /* Бykвa  "O"    
  THEN #BB(#I) = H'67'                  
 IF #BB(#I) = H'D7'    /* Бykвa  "P"    
  THEN #BB(#I) = H'69'               
 IF #BB(#I) = H'E3'    /* Бykвa  "T" 
  THEN #BB(#I) = H'51'               
 IF #BB(#I) = H'E7'    /* Бykвa  "X" 
  THEN #BB(#I) = H'52'               
*  Cтpoчныe *                        
 IF #BB(#I) = H'81'    /* Бykвa  "a" 
  THEN #BB(#I) = H'53'                            
 IF #BB(#I) = H'83'    /* Бykвa  "c"    
  THEN #BB(#I) = H'54'                  
 IF #BB(#I) = H'85'    /* Бykвa  "e"    
  THEN #BB(#I) = H'8B'                  
 IF #BB(#I) = H'96'    /* Бykвa  "o"    
  THEN #BB(#I) = H'55'                  
 IF #BB(#I) = H'97'    /* Бykвa  "p"    
  THEN #BB(#I) = H'56'                  
 IF #BB(#I) = H'A7'    /* Бykвa  "x"    
  THEN #BB(#I) = H'59'                  
 IF #BB(#I) = H'A8'    /* Бykвa  "y"    
  THEN #BB(#I) = H'64'                  
*  Cпeц. cимвoлы                        
 IF #BB(#I) = H'6A'    /* Бykвa  "|"    
  THEN #BB(#I) = H'66'                  
 IF #BB(#I) = H'4F'    /* Бykвa  "\"    
  THEN #BB(#I) = H'E0'                  
CLOSE LOOP       
#P_TXT = #TXT    
END


Ещё у нас в СВМ сделали кодировочную таблицу обратную ДКОИ. В ДКОИ совпадающие символы по написанию - латиница, а у нас кирилица.

Добавлено (22.09.2021, 07:34)
---------------------------------------------

Цитата Gregory ()
BTW. Я тут еще обнаружил программу sysrdr - gui эквивалент hercrdr) могу выложить, если хотите)

Выложите, пожалуйста, думаю будет не лишним.
Прикрепления: 8481180.jpg(35.0 Kb) · 6817770.jpg(9.7 Kb) · 0170561.jpg(35.3 Kb)
 
GregoryДата: Ср, 22.09.2021, 21:57 | Сообщение # 122
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
sysrdr прикреплен
Прикрепления: sysrdr.exe(60.0 Kb)
 
GregoryДата: Ср, 22.09.2021, 22:07 | Сообщение # 123
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
можно получить полноценную поддержку кириллицы в hercules/hyperion:

Код
cp_updt import h2g 1251to1025.xlt
cp_updt import g2h 1025to1251.xlt
codepage user
это команды консоли hercules/hyperion, по идее, это нужно включить в hercules.rc
таблицы прилагаются, это преобразования 1251 -> 1025 и 1025 -> 1251
Прикрепления: 1025to1251.xlt(0.2 Kb) · 1251to1025.xlt(0.2 Kb)


Сообщение отредактировал Gregory - Ср, 22.09.2021, 22:18
 
GregoryДата: Ср, 22.09.2021, 22:40 | Сообщение # 124
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
программа от Dan Nelson для выполнения команд консоли hercules (альтернатива curl).
все необходимые программы уже написаны, нужно только их найти)
Прикрепления: herccmd.zip(31.3 Kb)


Сообщение отредактировал Gregory - Ср, 22.09.2021, 22:49
 
ShigureДата: Сб, 02.04.2022, 12:49 | Сообщение # 125
Сержант
Группа: Проверенные
Сообщений: 22
Репутация: 0
Статус: Offline
А современная 3270-type USB - клавиатура будет работать с Геркулесом "с ходу"?
 
GregoryДата: Вс, 03.04.2022, 00:29 | Сообщение # 126
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
Цитата Shigure ()
А современная 3270-type USB - клавиатура будет работать с Геркулесом "с ходу"?
не совсем понимаю Ваш вопрос. Если клавиатура поддерживается Windows, она будет работать со всеми приложениями, в том числе и с Hercules (имеется в виду консоль эмулятора), и с любым эмулятором 3270 - wc3270, IBM PC Comm, Mocha или что угодно еще.


Сообщение отредактировал Gregory - Вс, 03.04.2022, 00:30
 
ShigureДата: Вс, 03.04.2022, 05:50 | Сообщение # 127
Сержант
Группа: Проверенные
Сообщений: 22
Репутация: 0
Статус: Offline
Извините, я поторопился не совсем точно сформулировал вопрос.
Будут ли на такой клавиатуре работать дополнительные не Windows клавиши PF, PA и пр?
Полагаю, что их должен всё-же обрабатывать все-же wc3270, а не Геркулес?

Имел ввиду современную 3270-type клавиатуру с Русификацией, например, из этих

И поинтересуюсь а был ли у кого-нить опыт подключения / использования советской клавиатуры от ЕС ЭВМ к IBM PC?
Я знаком с современным американским любительским проектом подключения всего терминала 3270 к Геркулесу, путём аппаратной эмуляции устройства управления, но
может быть в 90е годы были варианты попроще с "только клавиатурой"?
 
BibizyanДата: Вс, 03.04.2022, 07:25 | Сообщение # 128
Подполковник
Группа: Проверенные
Сообщений: 120
Репутация: 0
Статус: Offline
Цитата Shigure ()
Будут ли на такой клавиатуре работать дополнительные не Windows клавиши PF, PA и пр?Полагаю, что их должен всё-же обрабатывать все-же wc3270, а не Геркулес?
Работают. Именно потому, что обрабатывает эмулятор - тот же wc3270 и прочие.
 
GregoryДата: Вс, 03.04.2022, 19:04 | Сообщение # 129
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
у любого эмулятора 3270 есть файл соответствия клавиш клавиатуры Windows и клавиатуры 3270. Для  wc3270 это keymap, см. https://u.to/96QYHA файлов keymap может быть несколько. У IBM PC COMM соответствие клавиатур настраивается в GUI, сохраняется в файле kmp.
Можно перенастроить всю клавиатуру в соответствии со своимми предпочтениями.
Интересно, что у IBM PC COMM по настоящий день соответствие клавиатуры по умолчанию назначает функцию ВВОД не клавише Enter, а RIGHT CTRL, потому что, видите ли, у "натурального" 3270 клавиша ВВОД находилась именно в этом месте... Скоро уже не останется людей, видевших натуральный 3270, а тут для них стараются сохранить привычное расположение клавишию) По моему, это просто идиотизм) Функция ВВОД легко возвращается  на обычное место, но молодежь это как-то пугает.
И я совершенно не понимаю, для чего нужно подключать к PC клавиатуру терминала, да и сам терминал. Даже идея подключить пишущую машинку ундервуд вместо клавиатуры и то понятнее, это такой крутой стимпанк (на самом деле, проще заказать подобную клавиатуру на Алиэкспресс).
Прикрепления: 7886598.jpg(150.3 Kb)


Сообщение отредактировал Gregory - Вс, 03.04.2022, 19:21
 
BibizyanДата: Вс, 03.04.2022, 23:04 | Сообщение # 130
Подполковник
Группа: Проверенные
Сообщений: 120
Репутация: 0
Статус: Offline
Цитата Gregory ()
Скоро уже не останется людей, видевших натуральный 3270
не дождётесь! (с)
 
GregoryДата: Пн, 04.04.2022, 00:35 | Сообщение # 131
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
Цитата Bibizyan ()
Цитата Gregory ()Скоро уже не останется людей, видевших натуральный 3270
не дождётесь! (с)
ну мне тоже хотелось бы рассказывать правнукам про 3270 и машину, занимающую помещение 200м2 с памятью 4M, охлаждением в виде фонтана перед зданием и всякое такое :-)


Сообщение отредактировал Gregory - Пн, 04.04.2022, 00:42
 
alex654Дата: Пн, 04.04.2022, 03:34 | Сообщение # 132
Подполковник
Группа: Проверенные
Сообщений: 116
Репутация: 0
Статус: Offline
Цитата Gregory ()
Интересно, что у IBM PC COMM по настоящий день соответствие клавиатуры по умолчанию назначает функцию ВВОД не клавише Enter, а RIGHT CTRL, потому что, видите ли, у "натурального" 3270 клавиша ВВОД находилась именно в этом месте... Скоро уже не останется людей, видевших натуральный 3270, а тут для них стараются сохранить привычное расположение клавишию) По моему, это просто идиотизм) Функция ВВОД легко возвращается  на обычное место, но молодежь это как-то пугает.

То же самое было на терминалах 5250. Людей видевших эти терминалы думаю побольше осталось. Наверно, они еще есть много где. Типа на случай падения сети Ethernet в машинном зале есть отдельная комната где стоит такой терминал подключенный по коаксиалу. У меня  даже 10 лет назад был ключ от этой комнаты ;-). Не думаю что с тех пор там все сильно поменялось.
В новых клиентах для i Enter - соответствует Enter на клавиатуре по умолчанию. 
Я по привычке перевожу на Ctrl.
 
ShigureДата: Пн, 04.04.2022, 06:43 | Сообщение # 133
Сержант
Группа: Проверенные
Сообщений: 22
Репутация: 0
Статус: Offline
Цитата Gregory ()
я совершенно не понимаю, для чего нужно подключать к PC клавиатуру терминала, да и сам терминал. Даже идея подключить пишущую машинку ундервуд вместо клавиатуры и то понятнее, это такой крутой стимпанк (на самом деле, проще заказать подобную клавиатуру на Алиэкспресс).

Например, для музейной демонстрационной ЭВМ. Процессор - память - каналы - что-то ещё реализованы Геркулесом, а периферия настоящая, начиная с ЕС-7927 и ЕС-7934, расширяясь до 7040 и заканчивая ЕС-5061 и 5012. Может быть что-то ещё. Операционная система, вероятно, тоже на Геркулесе, а аппаратные накопители лишь подключаются для загрузки пользовательских данных, дабы не держать старую механику постоянно в работе. В итоге будет эдакий джентльменский набор без повторений оборудования и с наличием движущихся/гудящих частей.


Сообщение отредактировал Shigure - Пн, 04.04.2022, 10:20
 
GregoryДата: Пн, 04.04.2022, 23:17 | Сообщение # 134
Генерал-майор
Группа: Доверенные
Сообщений: 449
Репутация: 18
Статус: Offline
IMHO это непростая задача. Я вижу тут две проблемы, сложную и очень сложную:
- физическое подключение периферии ЕС ЭВМ к PC
- поддержка этого подключения и устройств в эмуляторе (Hercules)
Даже если воспользоваться какими-то существующими решениями, например, AT/370 channel option или P/390 channel card (я думаю, что их можно найти на каком-нибудь ebay за вполне приемлемую цену), или использовать аналогичную карту made in USSR (а такие были). то поддержка этого в hercules потребует достаточно серьезной разработки.
Или я что-то упускаю и существует более простое решение?
 
ShigureДата: Вт, 05.04.2022, 06:48 | Сообщение # 135
Сержант
Группа: Проверенные
Сообщений: 22
Репутация: 0
Статус: Offline
Цитата Gregory ()
Или я что-то упускаю и существует более простое решение?
Не думаю, что это будет просто...

Всё зависит от того, какое железо имеется.
Если только накопитель, то задача делится участки "сам накопитель - устройство управления", "устройство управления - канал"
Потребуется найти информацию о формате передачи управляющих сигналов и данных в советской документации к железу или "оригиналах" от IBM и создание
преобразователя этих сигналов в "цифру". Если же у нас лишь сам накопитель (что более вероятно), то потребуется и аппаратная реализация устройства управления на современном железе.

Далее идёт прикручивание к Геркулесу, тут вопрос чуть менее понятен.
Печать, насколько я понимаю, не так и сложно, а накопители...
Вероятно, пустые DASD и TAPE нужного размера создаются предварительно и работа с железкой идёт через них.
То есть нужна вспомогательная фоновая программа (или часть кода где-то), управляемая из операционной системы.
Эта программа будет гонять данные между образом на диске и реальным устройством.
Программа должна уметь считывать данные с железки в образ, писать с него на железку и пр.
После успешного завершения передачи, она сообщит ОС, что работа с физ устройством завершена и ОС будет читать данные с образа в память / писать в образ.

Или же напрямую подменять, чтобы Геркулес считал, что DASD это файл, но физически он не будет на HDD.

Конечно потребуется консультация сообщества Геркулеса, может быть кто-то в США уже реализовал подобное (с хожу я не нашёл).
Для лент ещё возможен вариант подключения через scsi самим Геркулесом, но такой адаптер для старого НМЛ надо собрать и нужен драйвер для операционной системы в которой запущен эмулятор.

Использование P/390 channel card и пр, мне не кажется хорошим решением так как драйвера и протоколы связи с ними наверняка не open source.
У меня есть ISA-плата для подключения EC-5012 к MS-DOS, сам накопитель и все исходные коды эмулятора, которые я так-же передал компьютерному музею но эта штука лишь позволяет собственной программой управлять накопителем, читать с ленты и писать на неё. А глобальная задача требует это делать с самого Геркулеса, прямо из операционки. Не говоря уж о том, что мы не сможем поставить эту плату в компьютер без ISA-шины.

Вот перевод статьи о том, что любитель подключил 3270 к Геркулесу, создав эмулятор устройства управления.
Работа на уровне "терминал - устройство управления" у него была на старых спец. чипах Роквелл, а "устройство управления - Геркулес" на Ардуино.
Проект до сих пор развивается, с тех пор была выпущена "коммерческая" версия переходника уже без Ардуино.


Сообщение отредактировал Shigure - Вт, 05.04.2022, 19:20
 
Форум » Технические форумы » Hercules » Куча вопросов от новичка.
Поиск: