Вход

Просмотр полной версии : Вопрос по командам терминала VT52.



Atari
27.03.2017, 16:00
Пишу на Верилоге аппаратный терминал.

Перекопав некоторое количество документации на VT52/VT100 пришел к печальным выводам.
Доки проитворечат друг другу, и т.д. и т.п.

Решился на реализацию максимум VT52 + GEMDOS/TOS extensions.
На данный момент "дошлифовываю мелочи" )))))

И все равно есть вопросы на которые могут ответить только практики.

Первая пачка вопросов связана с обработкой кодов от 00h до 1fh

1. нужно ли отрабатывать "BS" именно с кодом 08h? есть ли отличия от кода 7fh ? и вообще, как правильно?
2. что делать с вертикальной табуляцией VT код 0bh ?
3. что такое "FF" = "Form feed", код 0ch ?
4. что делать с остальными кодами кроме HT, LF, CR ?

Зарание благодарен за ответы.

L Juriy
27.03.2017, 16:45
FF - переход на новую страницу(новый лист в печати)

form
27.03.2017, 18:05
1. нужно ли отрабатывать "BS" именно с кодом 08h? есть ли отличия от кода 7fh ? и вообще, как правильно?
BS имеет код 010 (0x8) и только его. Действие - шаг назад и только шаг назад - никакого стирания (если курсор уже в начале строки - ничего не происходит).
Код 177 (0x7f) - DEL - при выводе на экран не отрабатывается никак - ничего не двигает, ничего не стирает, ничего не печатает (в советских терминалах этот код печатал квадратик размером с неполное знакоместо).

2. что делать с вертикальной табуляцией VT код 0bh ?
Терминал никак ее не отрабатывает.

3. что такое "FF" = "Form feed", код 0ch ?
Проброс станицы тоже никак не отрабатывается терминалом (на УК-НЦ в ркжиме VT52 этот код стирает экран, и вроде только на нем).

4. что делать с остальными кодами кроме HT, LF, CR ?
HT - горизонтальная табуляция - просто выставляет курсор в соответствующую позицию (не стирая ничего по дороге)
LF - переводит курсор на строку ниже или сдвигает содержимое экрана на строку вверх если курсов в последней строке
CR - переводит курсор в начало строки

L Juriy
27.03.2017, 18:40
Для ознакомления можно посмотреть это.

Atari
27.03.2017, 18:49
да, посмотрел еще раз доки, все так.

http://i.piccy_.info/i9/51ac05c0dad36b69c26b79068d14b158/1490629218/40113/1132394/vt52d.jpg

значит остальные символы (от0 до 1fh) мы игнорируем.

и судя по доке, FF (Form feed) таки очищает экран.

- - - Добавлено - - -

L Juriy, спасибо, но это...

form
27.03.2017, 19:00
и судя по доке, FF (Form feed) таки очищает экран
По доке от чего?
У VT52 не очищает. А равно никаких SI/SO нету. Смотреть нужно доку именно по VT52 - она доступна.

- - - Добавлено - - -

Собственно вот документация по VT52 (http://bitsavers.trailing-edge.com/pdf/dec/terminal/vt52/EK-VT5X-OP-001_DECscope_Users_Manual_Mar77.pdf).

Atari
27.03.2017, 19:36
Спасибо, этой доки у меня небыло :)

а есть какой нить софтверный терминал на PC правильно эмулирующий VT52?
Putty работает некоректно.

form
27.03.2017, 19:47
правильно эмулирующий VT52?
Чистого VT52 наверное нету. Можно взять за пример эмулятор E11 - он умеет эмулировать максимально приближенно к классическому без поддержки функции HOLD SCREEN (вроде бы). Только придется еще программку в него загружать чтобы попробовать. ZoC вроде умел эмулировать, но насколько точно - не помню уже. В памяти сидит, что все, что пробовал кроме E11 содержало ошибки. Эмулятор от Patron (http://zx-pk.ru/threads/20092-emulyator-terminala-tipa-vt52.html?p=899041#post899041) эмулирует функционал достаточно точно, но это не чистый VT52, а гибрид, включающий в себя даже то, что было результатом работы операционной системы, а не действиями отдельных клонов :)

- - - Добавлено - - -

Но в сущности там все настолько просто, что уместится на половине страницы - можно из док надергать. Подойдет так же русскоязычная документация по СМ7209 - там чистый VT52 без всяких латинских примесей (ц) :)

AFZ
28.03.2017, 06:32
Подойдет так же русскоязычная документация по СМ7209 - там чистый VT52 На мой взгляд, лучше воспользоваться докой от КЦГД-182. Явные КЦГД-шные самопалы (вроде загрузки программы в память ПП) там сразу видно, остальное - строго VT52. Ну, и поддержка русского нам тоже нужна, а у КЦГД-182, ИМХО, опять же, это сделано наилучшим образом. Книжку про КЦГД, вроде-бы, отсканили и выложили в одной из здешних тем.

form
28.03.2017, 06:42
лучше воспользоваться докой от КЦГД-182
КЦГД я никогда не видел, а СМ7209 вон в шкафу стоит - чистый VT52, не пытающийся врать что это VT100 в режиме VT52 как многие другие аналоги :)

- - - Добавлено - - -


оддержка русского нам тоже нужна
Поддержка русского уже будет за пределами чистого VT52, но по сути сводится к добавлению обработки SI/SO.

Atari
28.03.2017, 08:03
минуточку, давайте уточним:

SI/SO случайно не тоже самое что и:
ESC F Enter graphics mode.
ESC G Exit graphics mode.

?

form
28.03.2017, 09:01
SI/SO случайно не тоже самое что и:
ESC F Enter graphics mode.
ESC G Exit graphics mode.
Нет. Это отдельный функционал для переключения шрифта рус/лат на советских аналогах VT52 (при этом коды маленьких латинских букв соответствуют большим русским и наоборот). В оригинале такого у VT52 нету. ESC/F и ESC/G используются для переключения в режим псевдографики.
А вот на VT100-совместимых SI/SO может переключать как раз в набор с псевдографикой (вроде DECовские редакторы именно так переключают на ANSI терминалах).

Atari
28.03.2017, 10:51
тогда покидайте в меня помидорами.

вот то что я навыдумывал (частично реализовал):

---------------
VT52 + GEMDOS/TOS extensions
https://en.wikipedia.org/wiki/VT52

BS \ Backspace, Delete character to left of cursor.
7fh /
HT Horizontal tabulator.
LF Line feed.
CR Carriage Return. Move cursor to the start of the line.
ESC A Cursor up.
ESC B Cursor down.
ESC C Cursor right.
ESC D Cursor left.
ESC E Clear screen and place cursor at top left corner. Esc H + Esc J
ESC F Enter graphics mode.
ESC G Exit graphics mode.
ESC H Move the cursor to the home position.
ESC I Reverse line feed.
ESC J Erase from the cursor to the end of the screen.
ESC K Erase from the cursor to the end of the line.

ESC Y Ps Ps \ Move the cursor to given row and column.
ESC Ps Ps / Each ordinate is encoded in a single character as value+32.
^^^ / For example, ! is 1. The screen coordinate system is 0-based.

!ESC L Insert a line.
!ESC M Delete line. Remove line.

ESC b \\ Set text colour.
^^^ // color 0...f + 30h
ESC c \\ Set background colour.
^^^ // color 0...f + 40h
colors / 0 - black, 1 - red, 2 - green, 3 - yellow, 4 - blue, 5 - magenta, 6 - cyan, 7 - white, 4'bit - Bright

!ESC d Clear to start of screen. Clear screen up to cursor.
ESC e Cur_on. Show cursor.
ESC f Cur_off. Hide cursor.
ESC j Save cursor position. "Remember" cursor.
ESC k Restore cursor position.
!ESC l Erase the entire line and position the cursor on the left.
!ESC o Clear current line from the left side to the cursor.
ESC q Normal video. Switch off inverse video text.
ESC p Reverse video. Switch on inverse video text.
ESC w Wrap off, Disable line wrap.
ESC v Wrap on, Enable line wrap.
---------------

! - обозначены нереализованные ф-ции
BS - переделал в курсор назад, 7fh - игнорируется.

form
28.03.2017, 11:09
BS \ Backspace, Delete character to left of cursor.
7fh /
Код неправильный, как уже писалось, код BS это 0x8, действие - перемещение курсора на шаг влево (без стирания). Это действие аналогично для всех известных вариантов VT52.
Код 0x7f - DEL, либо не печатает ничего (классический VT52), либо печатает квадратик, закрашивающий знакоместо (но не полностью - в одно целое соседние клетки не сливаются).


ESC E Clear screen and place cursor at top left corner. Esc H + Esc J
Такого нет ни в VT52 ни в одном из клонов вроде.


HT Horizontal tabulator.
LF Line feed.
CR Carriage Return. Move cursor to the start of the line.
ESC A Cursor up.
ESC B Cursor down.
ESC C Cursor right.
ESC D Cursor left.
ESC F Enter graphics mode.
ESC G Exit graphics mode.
ESC H Move the cursor to the home position.
ESC I Reverse line feed.
ESC J Erase from the cursor to the end of the screen.
ESC K Erase from the cursor to the end of the line.

ESC Y Ps Ps Move the cursor to given row and column.
Тут все верно.

Остаются ESC= - включение альтернативного keypad, ESC> - отключение,
ESC [ - режим HOLD SCREEN, ESC \ - отключение режима HOLD SCREEN
ESC Z - запрос типа терминала.

Atari
28.03.2017, 11:12
Остаются ESC= - включение....
дело в следующем, мой терминал - только приемник, он только отображает входящую информацию.

точнее даже как: мне нужен софтверный треминал типа путти или что-то подобное через который собственно и будет идти "общение".
а "этот" железяный терминал только дублирует информацию (только вывод) "там" у себя на месте.

form
28.03.2017, 11:24
он только отображает входящую информацию
Тогда это скоре принтер одноэкранный :)

- - - Добавлено - - -


точнее даже как: мне нужен софтверный треминал типа путти или что-то подобное через который собственно и будет идти "общение".
Ну тогда как минимум софтовый должен все это отрабатывать и отвечать на запросы типа терминала. Если конечно целью не стоит запуск конкретных программ которые кроме VT52 ничего не знают :)

Atari
28.03.2017, 11:30
цель такая - есть некий прибор с графическим экраном: телевизор, монитор, инфопанель.

она настраивается через КомПорт (или Ком через ЮСБ), + сам прибор отдает свои логи в консоль (тот же ком),
т.е. в любом случае подключается ПС с терминальной программой.
но есть желание, чтоб сам прибор отображал ту же информацию, в идеале - дубль.

Atari
28.03.2017, 15:50
http://i.piccy_.info/i9/b7c2dd81abbeaa7d5c64b2ef69ed713a/1490705314/334099/1132660/IMG_20170328_153337.jpg

вот как-то так.

текст по графике, 32х15.

вопрос: реально буфер на 32 строки (1к= 32х32)
как красиво прикрутить скроллинг?

всмысле комманд терминалу.

hobot
29.03.2017, 11:29
Atari, вот на этой дискете есть какой-то файл VT52.TXT
http://archive.pdp-11.org.ru/ukdwk_archive/dwkwebcomplekt/TEXT_EDIT/

form
29.03.2017, 11:34
какой-то файл VT52.TXT
Эх, лень сейчас смотреть - наконец-то дорвался отметить день рождения PDP-11 (вчерашний уже). :)
А вообще если нужен лог прибора - то по-моему проще сделать или построчку в силе простого принтера, или, если нужен какой-нибудь интерактивный мониторинг, то удобнее сделать урезанный вариант VT100 - тогда и с софтовыми эмуляторами проще будет - вплоть до того, что голый dos + тупой ввод/вывод с порта на экран будет работать правильно :)

hobot
29.03.2017, 11:40
Эх, лень сейчас смотреть - наконец-то дорвался отметить день рождения PDP-11 (вчерашний уже). вчера Ура! И сегодня ура! Ура два раза!



то удобнее сделать урезанный вариант VT100 - тогда и с софтовыми эмуляторами проще будет - вплоть до того, что голый dos + тупой ввод/вывод с порта на экран будет работать правильно
Я уже реально подумал, что ты предложишь к эмулятору ДВК подключаться! )

Atari
29.03.2017, 13:10
... то удобнее сделать урезанный вариант VT100 - тогда...
я бы сделал, только "согласия док" нет и на VT52.

а на VT100 и подавно - полный бардак.

form
29.03.2017, 13:59
я бы сделал, только "согласия док" нет и на VT52.
Не VT52 как раз согласие есть - берется дока на VT52 и все ;)
На VT100 согласие тоже есть, но полный VT100 эмулировать - это довольно муторно, а для данной цели и не нужно - фактически достаточно базового управления экраном :)

Atari
29.03.2017, 14:14
VT52 релизован с большим плюсом, впринципе меня этот варинт вполне устраивает.

Если дадите ссылку на "правильную доку" на VT100 - буду благодарен.

form
29.03.2017, 15:15
Если дадите ссылку на "правильную доку" на VT100 - буду благодарен.
Да собственно вот (http://bitsavers.trailing-edge.com/pdf/dec/terminal/vt100/) набор док по VT100 - там даже схемы наверное есть :)

Atari
29.03.2017, 16:26
вот мы добрались до самого интересного...

кусочек отсюда EK-VT100-RC_002_VT100_Programming_Reference_Card_1982.pdf

http://i.piccy_.info/i9/81ad0bd735e6493b338369256ff6494f/1490793982/41839/1132660/vt52c1.jpg

выделенное - глюк?

form
29.03.2017, 16:52
выделенное - глюк?
Да, пропущен "Y". Обычное дело в DECовской документации :)

AFZ
30.03.2017, 06:18
либо печатает квадратик, закрашивающий знакоместо (но не полностью - в одно целое соседние клетки не сливаются). На КЦГД - сливаются.


Такого нет ни в VT52 ни в одном из клонов вроде Если не врет мой склероз, было в ВТА-2000-10...15.

form
30.03.2017, 08:43
ВТА-2000-10...15
Всяких ВТА видеть не приходилось. Кроме оригиналов видел только СМ7209, 15ИЭ, некая хрень (железо от 15ИЭ, внутри что-то местное, в настройки входило по CTRL/SPACE, была псевдографика у VT52, правда не совсем ожидаемая DEC'ом - вместо квадратика [буква 'a'] была греческая альфа) да какой-то видеотон с 16 строками (не VT52) :)

Atari
04.04.2017, 17:37
еще раз вопрос по <BS>

как я понимаю в отличии от "влево" которое упирается в левый край экрана,
BS переводит курсор в крайне правый столбец строки выше.
пока не упирается в верхий левый угол.

так?

hobot
04.04.2017, 19:13
BS переводит курсор в крайне правый столбец строки выше.
пока не упирается в верхий левый угол. при работе в системе поведение BS регулируется настройками
ИМХО:наверное лучше управлять расположением курсора с помощью двух переменных.

- - - Добавлено - - -


вот мы добрались до самого интересного...
???

- - - Добавлено - - -

http://forum.maxiol.com/index.php?showforum=110

form
05.04.2017, 19:21
как я понимаю в отличии от "влево" которое упирается в левый край экрана,
BS переводит курсор в крайне правый столбец строки выше.
пока не упирается в верхий левый угол.

так?
Нет. На VT52 только до края строки идет. Вообще никаких переносов на VT52 нет: ни при печати символов после конца строки ни при перемещении курсора за край строки/экрана (кроме LF и <ESC>I при которых экран сдвигается если нужно). На ANSI терминалах это настраиваемый параметр.

Точно также нет стираемых перемещений (TAB и BS ничего не стирают). Все варианты, отложившиеся в памяти, на тему переноса в конце строки или на тему стирания табами символов по дороге - ничто иное как результат работы драйвера операционной системы при выключенной настройке прямой печати символа табуляции (настройка по умолчанию в большинстве случаев) - SET TT NOTAB (RT-11), SET /NOHHT=TI: (RSX-11) или при включенной настройке переноса - SET TT CRLF (RT-11), SET /WRAP=TI: (RSX-11)...

- - - Добавлено - - -


при работе в системе поведение BS регулируется настройками
Поведение BS в DECовских системах настройками не регулируется . При выводе на экран, выводится BS без изменений, а если речь о клавише стирания, то у DEC используется клавиша DEL (был вариант RSX-11M V4.0, испоганенный шаловливыми ручками советских инженеров - в нем BS работал аналогично DEL) :)
Но в теме речь идет о поведении терминала, а ему на операционную систему наплевать - он про нее ничего не знает :)

- - - Добавлено - - -

Еще фича VT52 и как минимум CM7209 - писк при достижении 72 колонки при последовательной печати символов (то есть как только символ напечатан в 71 колонке или TAB переносит курсор в 72 колонку).
Навскидку не помню отключаемое оно или нет - доставать CM7209 лень (в любом случае если отключаемо, то только всякими перетычками, а не ESC последовательностями) :)

hobot
08.04.2017, 13:42
Но в теме речь идет о поведении терминала, а ему на операционную систему наплевать - он про нее ничего не знает

Кстати говоря - очевидная же вещь ! Что бы пощупать поведение клавишь - берём UKNCBTL, выбираем в стартовом
меню режим 6 и жмыкаем в кнопку "D" - т.о. входим в режим дисплея(?) и спокойно изучаем как и куда и зачем и
какими символами отображается )

form
08.04.2017, 13:53
Кстати говоря - очевидная же вещь ! Что бы пощупать поведение клавишь - берём UKNCBTL
Увы, UKNCBTL никак не позволит прочувствовать поведение VT52 ибо сам ему не следует :)
Чего только стоит стирание экрана по <FF> (никакого действия в VT52), что при прямом пропускании символа на экран (SET TT FORM, SET /FORMFEED=TI: ) превращается в трагедию при попытке воспользоваться стандартными программами DEC :)

hobot
08.04.2017, 15:37
Увы, UKNCBTL никак не позволит прочувствовать поведение VT52 ибо сам ему не следует
Ну то есть да, нюансы конечно остаются - мне вот кстати интересно - настройка в УСТ, то есть выбор между VT52 и 15ИЭ
реально влияет на что то где то или это чистой воды вода?

- - - Добавлено - - -


ибо сам ему не следует
да писка после любого количества введённых последовательно символов нету хоть тресни )

- - - Добавлено - - -


UKNCBTL - я имел в виду УК-НЦ (просто не у всех под рукой есть реал) для режима дисплея, эмулятор для тех у кого как раз нету )

form
08.04.2017, 16:02
Ну то есть да, нюансы конечно остаются - мне вот кстати интересно - настройка в УСТ, то есть выбор между VT52 и 15ИЭ
реально влияет на что то где то или это чистой воды вода?
Влияет - это разные типы терминала :)


у кого как раз нету
Документация на VT52весьма точна, а управляющих символов и ESC последовательностей очень мало :)

hobot
08.04.2017, 17:24
Влияет - это разные типы терминала
оно так, но я вот дергал передёргивал ни разу в системе или игрушках разницу не прочувствовал,
как специально заметить ?

- - - Добавлено - - -

form, до сих пор неприятно натыкаюсь на такие вещи
программа под 5.0 или 5.2 нормально так - очищает экран, выводит всё аккуратно, не виснет,
под 5.7 вместо очистки экрана "промотка рулона", таб не печатается, вылеты и трапы )
Это я так - ворчу просто - обсуждалось, помню некоторые способы победить, например "поправленый"
вариант ШПИОНА Высотина П. под семёрку надо запускать на пустом экране )

- - - Добавлено - - -

ещё 7 очень не любит когда УК-НЦшке подпихивают различными способами сторонние шрифты )
Часто её это просто убивает до смерти )

- - - Добавлено - - -

В режиме дисплея вместо забоя честный квадратик рисуется - по моему вполне достаточная совместимость )))

- - - Добавлено - - -


аналогично DEL
погоди погоди DEL ведь это поглощение символа справа от курсора и соотв. сдвиг ост. строки влево? Разве нет?
Чего то я запутался с "ЗАБОЕМ" ) BS - это ведь "ЗАБОЙ" ? )

- - - Добавлено - - -

http://s10.rimg.info/2008220617e74a3184c452d5b94912b8.gif

form
08.04.2017, 17:59
оно так, но я вот дергал передёргивал ни разу в системе или игрушках разницу не прочувствовал,
как специально заметить ?
Игрушки писались просто программерами - они часто даже не знали реальности (насчет стирания табом). Но в любом случае - игрушки редко пользуют весь функционал. Не случайно полно советских эмулятором где ESC J стирает весь экран, и никто этого не заметил - потому, что авторы использовали супер-мощные (убогие на самом деле) редакторы :)

- - - Добавлено - - -


под 5.7 вместо очистки экрана "промотка рулона", таб не печатается, вылеты и трапы
так пора бы уже изучить команды монитора - хотя бы базовые ;)
когда-то терминалы в основном были бумажными, настройки по умолчанию были одними, начиная с 5.6 же решили даже, что VT52 больше не существует :)

- - - Добавлено - - -


В режиме дисплея вместо забоя честный квадратик рисуется - по моему вполне достаточная совместимость
Только вот в VT52 такого не было ибо это официально непечатный символ :)

- - - Добавлено - - -


погоди погоди DEL ведь это поглощение символа справа от курсора и соотв. сдвиг ост. строки влево? Разве нет?
нет - такой клавиши просто нет на тех терминалах

- - - Добавлено - - -


Чего то я запутался с "ЗАБОЕМ" ) BS - это ведь "ЗАБОЙ" ? )
А нечего путать - есть только (для клавиатуры) DEL (код 177 восьмеричный), никакого BS нет - все :)

hobot
08.04.2017, 20:21
код 177 это есть "забой" ) ЪЪЪЪЪЪЪЪЪ УРА!!!

так пора бы уже изучить команды монитора - хотя бы базовые
одно дело команды монитора базовые, а другое дело настройки для ТТ ) Которого в 7 как бы и нет, а то что всё вокруг "рулона" завязано - это известный момент. в ранних версиях мне относительно ТТ хватало двух настроек SCOPE и QUIET ) Врубался "забой" и отключался вывод команд. из файла на терм. Так что базовые на УД. я пожалуй всё таки сдам )

form
09.04.2017, 13:06
Которого в 7 как бы и нет
Не ясна суть фразы - где чего нет? :)

hobot
09.04.2017, 19:33
Не ясна суть фразы - где чего нет?
Да я про TT.SYS ...
Я помню все пред. обсуждения, [form], штука просто в том, что я
в те годы естественно сидел на старенькой (вряд ли даже 5.2, у меня
была простая-шустрая-адаптированная под УК-НЦ + нештат утил 5.0), а про историю системы и всяческие
подробности я только на этот форуме начал узнавать. И получается с моей точки зрения как УК-НЦшника - что старая
версия надёжнее и годнее для УК-НЦ чем 7 с которой через раз проблемы )

Сейчас я на реале пользуюсь гибридной версией монитора QQ, 5.0 (нетронутой и СЭМЗовской),5.4G и 5.7 обновил все диры что бы "бэдов" не было при выводе каталогов с датами, юзаю твой или Patrona обработчик дат и твои или olegH.
системные часики + 9-ю версию SL.SYS которая для УК-НЦ спец. или родную (в случае с 5.7),
но тогда к ней нештатный KEY запускать надо иначе не удобно (без комментариев "смайл"),
почему именно KEY(?) да потому что все монитору кушают CLAV.SAV а 7-рка от него мрёт, как я выше
писал и от некоторых видом шрифтов, семёрка вообще на УК-НЦ почти всегда "при смерти" ))) (шутка)
Остальную среду (внешний вид) я внештатными программами настраиваю.
Я отлично понимаю почему такая картина - ведь к моменту когда вышла 7 никто наверное, кроме тебя для УК-НЦ её
уже не адаптировал, никаких "гибридных" сборок не пытался делать и уж конечно тесты на совместимость с Зеленоградским "ШПИОНОМ" не проводил.

Вот к примеру - нашёлся TS.SYS - драйвер от Oleg H. - который выводить позволяет КОИ-8 и в текстовом редакторе вроде бы даже. А вот PASCAL-8bit транслятор мне до сих пор не попался - что там в нём было такое я не помню, но
я помню что во время листинга трансляции он пищал на ошибках и в шапке каждой страницы писал, что он 8-битный.

По поводу режима ДИСПЛЕЯ на УК-НЦ - я как раз советовал его пощупать что бы прочувствовать все соответствия и не соответствия тобою описанные наглядно. Как-то так.

Для не слишком опытных с RT-11 пользователей я вот тут собираю проверенные и поправленные на рабочесть
под 5.7 монитором программы и игры (http://archive.pdp-11.org.ru/ukdwk_archive/ukncbtlwebcomplekt/RT1157C_UKNCsoftfixed/) (все патчи и правки по ранним обсуждениям на этом форуме были проделаны) и некий пакет (http://archive.pdp-11.org.ru/ukdwk_archive/ukncbtlwebcomplekt/RT1157C_UKNC_HDD_SPECIAL/), что бы на реальном ЖД УК-НЦ развернуть последнюю версию системы и комфортно с ней
работать.

form
10.04.2017, 09:44
про TT.SYS
Ну сам драйвер есть - просто избавились от лишнего файла :)
Но к настройкам TT драйвер отношения не имеет..

Atari
11.04.2017, 15:54
красота :v2_dizzy_indy:

http://i.piccy_.info/i9/c0e769eba0fc02efb225be54688df61a/1491915216/306824/1136861/IMG_20170411_154625.jpg

hobot
11.04.2017, 17:01
Atari, ) Ну да красиво ) А можно подробнее - что и откуда картинка, каким образом выведена на экран современного моника?

Atari
11.04.2017, 17:41
это проект на FPGA Spartan-6 (https://ru.wikipedia.org/wiki/Xilinx)

проц LatticeMico32 (https://en.wikipedia.org/wiki/LatticeMico32) (LM32) 133 Mhz, UART, графика 640х480 (16 бит), текст 32х15, i2c, spi и т.д.

скорострельности FPGA вполне хватит для FullHD, это мне пока лень DVI или HDMI прикручивать.


впринципе терминал полностью "аппаратный", так что можно выкинуть проц и соединить UART прямо на текстовый вывод.

http://i.piccy_.info/i9/cd53d9599daf715f769137d3aad541d9/1491921241/425876/1136861/IMG_20170411_173132.jpg

hobot
12.04.2017, 00:54
текст 32х15
а почему так мало? и ещё вопрос - цель такого проекта, я не спец. могу просто не видеть каких-то очевидных для вас
перспектив, вы какую то конкретную штуку эмулировать пытаетесь ?

Может быть среди текста должен быть режим терминала?
80 столбцов на 24 строки - монохром (хотя на УК-НЦ он цветной как и любой другой).

- - - Добавлено - - -

http://storage6.static.itmages.ru/i/17/0411/s_1491947596_4047952_7fdcbaf97e.png (https://itmages.ru/image/view/5644052/7fdcbaf9) http://storage7.static.itmages.ru/i/17/0411/s_1491947630_2630772_d950fb5b91.png (https://itmages.ru/image/view/5644053/d950fb5b)

Atari
12.04.2017, 09:35
да я как бы уже писал в #17

есть прибор (или серия приборов) с основным графическим выводом, но иногда надо организовать некии минимальные меню с настройками и дублирование логов прямо на его экране.

после формирования идеи написать текстовый, полностью аппаратный видик меня ткнули в VT100, но его нормальная реализация займёт неадекватное количество времени.
вот и было принято решение взять за основу VT52 с расширением от GEMDOS/TOS.

переделать разрешение в 64х15 или 32х30 или 64х30 дело на полчаса.

разрешение по горизонтали кратное степеням двойки сильно упрощает математику скролирования (фактически её исключает), разрешение по вертикали целиком зависит от коэффицента деления количества строк на 8, 16, 32 и т.д. т.е. в данном случае 480/32 = 15.

form
12.04.2017, 14:54
взять за основу VT52
VT52 имеет то несомненное преимущество, что он не попадает ни в один стандарт, и за пределами обычных ESC последовательностей VT52 можно делать что угодно (правда и обычные не дадут однозначности [ESC F например - нет стандарта о представлении символов псевдографики]) :)
Правда есть исключение: ANSI стандарт (к которому относится и VT100) устроен так, что на VT52 его применение вызовет зависание (из-за перехода в HOLD SCREEN), но это так, лирика :)

Atari
12.04.2017, 15:20
режим HOLD SCREEN у меня отсутсвует как класс, останавливать вывод и главное - организовывать буфер у меня нет ни желания ни необходимости.
соответсвующая последовательность просто игнорируется.

скорострельность же самого терминала находится на уровне процессора т.е. сейчас 133 МГц, самая длинная операция - очистка экрана занимает 32х15=480 тактов, скролирование с очисткой 32 такта (ну может +1..2 такта).
при этом процессору отдаётся ACK, т.е. проц запнётся только если полезет в терминал со следующей командой.

form
12.04.2017, 15:47
режим HOLD SCREEN у меня отсутсвует как класс
Ну он и не нужен в данном случае (равно как и VT52 в сущности) :)

Atari
24.11.2017, 00:47
Давненько я здесь не был :v2_conf2:

63029

63030