Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Документация » Документация на терминал ICL-3573 |
<<Назад Вперед>> | Печать |
Technomancer
Advanced Member
Откуда: Рига Всего сообщений: 359 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 12 июня 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 23 июня 2016 15:08 Сообщение отредактировано: 24 июня 2016 13:16
Документация на терминал ICL-3573. За информацию спасибо ru.pc-history.com. ICL-3573 video unit operating instructions ICL-3573 video unit service manual vol 1 ICL-3573 program ROM image ICL-3573 character generator ROM image Симболы в памяти знакогенератора: |
Technomancer
Advanced Member
Откуда: Рига Всего сообщений: 359 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 12 июня 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 28 августа 2016 20:07 Сообщение отредактировано: 28 августа 2016 22:15 Решил написать чуть больше об этом терминале, так как в интернете нету практически некакой информации. Поменял я данный терминал на телетайп T100 Михаилу из ru.pc-history.com. Узнавал что данный терминал из местного университета где работал как часть системы ICL ME29. Фото взято от: http://flickrhivemind.net/Tags/icl,me29/Interesting Аппарат устроен довольно хорошо. Несчитая кропотливое открытие верхней части корпуса, всё остальное разбирать и ремонтировать довольно просто. Всё что осталось от данной системы хранили в сарае в сырости и даже хуже. Очевидно в моём терминале прямо лилась вода, и было ясно что нету смысла аппарат включать. В первую очередь разобрал весь корпус и помыл в посудомойке. Пока мылось, я стал проверять блок питания. БП был в порядке. На плате БП расположены драивера RS-232 и немножко логики. Оказалось что один из драиверов убит. Поменял драивер и нижную часть корпуса можно было закрыть. Дальше было уже сложнее. Плата кинескопа была серезно повреждена. Все регуляторы были полностю поржавеющие. Плату почистил, и поменял регуляторы. Монитор заработал и при большой яркости показал зеленый растр. Хорошо что был доступен сервисный мануал, по нему отрегулировал часть режимов кинескопа. На фото еще видны следы ржавчины. Дальше - плата логики. Логика построена довольно типично для данной архитектуре. Центральный процессор Intel 8085, два контроллера последователного интерфейса 8251, орин для связы с центральной ЭВМ через RS-232, второй для связы с клавиатурой. Один таймер 8253, который делят частоту для 8251 и включают пищалку. Видео только текстового режима на базе контроллера 8275, который работают с контроллером ПДП 8257. Есть и параллелный интерфейс 8255. ПЗУ - 4KB, 2732, адреса 0x0000 - 0x0FFF, ОЗУ 4KB, адреса 0x4000 - 0x4FFF. У меня были два таких плат из которых одна не запускалась и одна лишилась микросхем которые ставились на панельках плюс снят генератор тактовой частоты. Из второй платы я переставил снятые детали и плата заработала. Терминал включился, нажимая клавиши на экране писались буквы. По мануалу отрегулировал и симметрию и размеры изображения. Вот, у меня теперь рабочый терминал. Но на этом нечего не закончилось. Взял я починить и вторую плату. Заказал нехватающие детали - процессор, видео контроллер, ПЗУ и генератор. Всё получил, поставил в вторую плату, нашел что убит и контроллер паралеллного интерфейса. Временно заменил на отечественный К580ВВ55 и заработала и вторая плата. Недавно получил оригинальную 8255 и поставил всё как надо. НО такой терминал, который работают как пишущая машина мне казался не очень интересным. Так как железо предназначено для связы по стандартному последовательному интерфейсу, я решил что можно же его изпользовать как последовательный терминал к Линуксовским компютером или любой другой техникой, которая работают через последовательный порт, ну, например роутера. Но обмен данных по последовательному порту некак не удалось запустить, ну, так я решил ... дизассемблить содержимое ПЗУ и сделать мне нужные модификации в программе. Первое - дизасемблирование. Делал я это на программатуре www.oshonsoft.com, которая предлагают симулятор, дизассемблер и ассемблер в одном. Конечно, после дизассемблирование я получил просто кучу команд без логических названии функции и без комментариев. Как же знать что когда произходит? Второе - адрессация. Я должен узнать как адресируются устройства ввода - вывода. Просмотрел вывода CS всех больших микросхем, нашел декодер адресов (74LS138) и уже было ясно какие адреса в программе соответствуют какой микросхеме. 0x00 - 0x0F: DMA 0x10 - 0x1F: VIDEO 0x20 - 0x2F: KBD serial 0x30 - 0x3F: jumper 0x40 - 0x4F: DATA serial 0x50 - 0x5F: ??? 0x60 - 0x6F: PIO 8255 0x70 - 0x7F: TIMER Так же по плате я нашел какому прерыванию соответствуют какая микросхема. Третее - комментирование. Ну, вот, со всей собранной информацией я мог взятся за изучение самой программы. Это было довольно кропотливая работа и если честно, я изучал только примерно половину программы - то что мне было нужно. Это обмен данных, инициализация, расположение данных в ОЗУ. В первую очередь я просмотрел инициализацию начиная с нулевого адреса до того места где показалось что происходит бесконечный цикл нормальной работы. Потом просмотрел все прерывания пока понял примерно как каждая отработают прерывания периферии. Четвертое - модификация. Когда я нашел мне нужные куски программы, я начинал менять программу. Первым делом я переделал прерывание входящих данных из последовательного порта. Буквы, цифры и другие симболы я напрямую отправил в область видео памяти, и обработал часть других команд - перевод строки итд. Наконец то я мог видеть данные на экране! Следующее - данные из клавиатуры отправил на последовательный порт. Тут пришлось переделать коды несколько клавишей так как на клавиатуре нету клавиши "Enter", вместо того я использовал "Send" и так же с другимы клавишамы. Пришлось и несколько поменять содержимое ПЗУ в котором хранится данные симболов чтобы соответствовало ASCII. Кода закончил простые функции, терминал был готов для роли. Через UART-RS232 преобразователь я подключил терминал к порту /dev/ttyAMA0 маленького компютера Raspberry-Pi. Ну, да, терминал функционировал, но только самые основные функции. Еще пришлось доделать несколько модификации, но самое сложное было написать поддержку всех нужных "ESC" функции, которых используют Linux терминал и много консольных программ. Моя цель была достигатя полной работы консольного текстового редактора "nano", который изпользуют много разных "ESC" функции, что у меня и получилось. Так как при модификации приходилось часто вынимать и ставить обратно программную ПЗУ, я сделал "удлинитель", один конец которого включался в панельке ПЗУ, но второй конец был в достуном месте с ZIF сокетом, чтобы можно было много раз менять ПЗУ без возможности повреждать микросхему. Еще помог модуль с микросхемой FT245, который я на время подключал на шине данных и смотрел обмену данных с 8251. Ну вот,у меня есть настоящий последовательный терминал, которуй я даже могу иногда использовать вместо, например, часто использованного minicom или realterm. Плюс если мне понадобитя возвращать аппарат в оригинальном состоянии мне понадобится лишь перешить два ПЗУ. ЗЫ: Извиняюсь, сегодня чувствую что не очень хорошо пишется на русском. |
Дениска
Advanced Member
Откуда: Хабаровск Всего сообщений: 1561 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 6 авг. 2009 |
Довольно неплохая статья по терминалу получилась , да ещё с реальным применением устройства. А , с русским языком , даже у носителей этого языка иногда не всё гладко. "Я, Русский-бы выучил , только зачем ?" (с) |
<<Назад Вперед>> | Печать |
Полигон-2 » Документация » Документация на терминал ICL-3573 |
0 посетителей просмотрели эту тему за последние 15 минут |
В том числе: 0 гостей, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |