Общие сведения Картотека Игротека Люди Форум
Библиотека Галерея Софт для PC Помощь сайту

      ПЭВМ Агат » Мастерская » Прошивки некоторых ПЗУ Агата

Розыск железа

Агат ↔ PC

Линк N 1

Линк N 2 (мост)

Дисковод

Подключение 840 кб/3.5''

Подключение 840 кб/5.25''

Эмулятор 140+840

Другие железки

Подключение PS/2 клавиатуры

Пульты и джои

Подключение принтеров

Ремонт

Распиновка разъёмов/жгутов

Прошивки

Частоты

Отладочная прошивка и ремкомментарии

История одного ремонта

--

P-CAD (старое)

*CAD (новое)

Обменный фонд

Прошивки некоторых ПЗУ Агата

На этой странице представлены архивы с некоторыми прошивками ПЗУ Агата. Все они считаны с реальных машин, поэтому возможны ошибки. С другой стороны, в компьютерном классе моей школы у половины Агатов цифра "6" выводилась с деффектом, так что даже заводские мастер-файлы были не идеальны. Если я уверен в правильности конкретной прошивки - отмечаю это в комментарии. То же самое в случае сильной неуверенности.

Слова из четырёхбитных микросхем сохранены в байтах, значащие только четыре младших разряда: D0 - пин 12, D1 - пин 11, D2 - пин 10, D3 - пин 9.

Некоторые образы кр556рт5 не полные: 256 байт вместо 512. Это означает, что вторая половина незапрограммирована и старшая адресная линия жестко подключена к шине питания.

Ни одного Агата во время получения этих прошивок не пострадало !

 

Агат-9

Если вы планируете использовать данные прошивки от для ремонта своего компьютера или написания эмулятора - не лишним будет заглянуть сюда.

Скачать комплект ПЗУ от волжской генплаты девятки.

Плата поступила в убитом состоянии, как минимум отказ D65 (такое ощущение, что на неё подали вольт 200 - часть выводов внутри спеклась), D87, может быть что-то ещё. Однако содержимое большинства ПЗУшек совпало с другой платой, поэтому было признано верным с высокой вероятностью.

Скачать комплект ПЗУ от поздней московской генплаты девятки.

Известно, что поздние платы ЛЭМЗ и ЗЭМЗ слегка отличаются компоновкой от московских и загорских, у них также есть отличия в программной архитектуре, но не очень существенные. Плата вполне исправна, и хотя полному тесту всех возможных режимов не подвергалась, нет оснований полагать, что она его не пройдёт. Во всяком случае загрузить ИКП-Бейсик ей уверенно удавалось уже после того, как прочитанные ПЗУшки были возвращены на место.

Note1: D14, D84, D85 в разных схемах и реальных платах варьируются между рт7 и рт18. Эти микросхемы различаются типом выхода - открытый коллектор или тристабильный. Явных нагрузочных резисторов для ОК не наблюдается, места для них не предусмотрено. Почему ?

Note2: D62 между волжской и московской отличаются в одном бите. Неизвестно, случайность это или нет, но на одной из плат я пробовал ставить и тот и другой вариант - плата работала в обеих случаях.

Интересно (проверено на платах ЯБ и РВИЖ): пзу системного монитора на системной плате агат-9 имеет два окна в адресном пространстве: f800..ffff - это окно соответствует документации и его адрес выбран не случайно: в регионе fffa..ffff располагаются вектора прерываний и сброса процессора. Второе окно: f000..f7ff - предположительно, появилось случайно и является результатом незавершенной (или, во всяком случае - неиспользованной) попытки разместить на плате полное ПЗУ объёмом 12 или 16 кб для размещения в нём Бейсика.
Следует учитывать следующее: системный монитор является "вещью в себе" - его мало кто использует кроме как для запуска системы. Обычно все загружаемые ОС имеют собственную копию (иногда заметно расширенную) системного монитора. Но всё же многие начальные загрузчики используют некоторые его процедуры. Более того, небольшое количество загрузчиков используют процедуры, обращаясь к ним именно по адресам второго окна (f000..f7ff).

 

Агат-7

Скачать комплект ПЗУ от генплаты и модуля процессора семёрки.

В отличии от девяток, о существовании разных вариантов семёрок мне не известно, и хотя некоторые несущественные отличия всё же были, на программных моделях это не сказывалось. Но были ошибки :). В архиве:

  • ПЗУ модуля процессора - это системный монитор (но не оригинальный, а немного переделанный мной во времена активного использования Агата). В корректности не сомневаюсь.
  • Отладочное ПЗУ модуля процессора. Моё. И тут же FIL-файл с исходником. Его можно использовать для аппаратной диагностики системной платы семёрки в случае серьёзных отказов, например, повреждения микросхем или контроллера RAM. Особенности реализации модуля процессора семёрки позволяют исполнять код системного монитора даже в случае практически полного отказа системной платы. Достаточно, чтобы с неё шел тактовый сигнал и не были заблокированы линии IRQ и DMA. Содержимое этого образа устроено так, что его функционирование практически не зависит от работоспособности системной платы. Однако процессор будет генерировать сигналы обращения к магистрали, что позволяет анализировать состояние компонент осцилографом. Подробности тут.
  • Две версии ПЗУ знакогенератора. Различия между ними либо эстетические либо случайные. Но оба варианта я видел на нескольких машинах, так что отличия обусловлены не сбоями ПЗУ, а чем-то более глобальным. Визуально: цифра "6" не имеет одной точки в нижней линии, символ с кодом $00 ($80) - не пробел, но две горизонтальные черты. Это версии от НИИВК. Здесь только 128 знаков.
  • ПЗУ знакогенератора, маленькие буквы. Отмечены литерой "m". Это - мои маленькие буквы для семёрки. Нестандартные. Но использовались несколько лет. В дальнейшем перекочевали в мой эмулятор. Они добавляются к предыдущим 128 знакам.
  • ПЗУ знакогенератора 256 знаков, все буквы, для семёрки. Редкая версия от НПО СВТ. Ей комплектовались поздние семёрки и все восьмёрки (семёрка в комплекте с принтером). Имя файла оканчивается литерами "II".

 

Периферия

Скачать сборник ПЗУ от различной периферии.

  • Драйвера сетевых карт (НИИВК и НПО СВТ). Работоспособность модулей не проверялась.
  • Драйвер контроллера принтера. Работоспособность драйвера не проверялась. Но в остальном контроллер вполне исправен.
  • ПЗУшка "Ячейки 121" (таблицы видеоконтроллера).
  • ПЗУшка от Card93.
  • ПЗУшка программируемого знакогенератора. Вполне уверенно работала.
  • FDD140 (старый). Зато живой. Содержимое D1 вопросов не вызывает, проверялась многократно, что же касается D12: она была прочитана с исправного контроллера, но после возвращения микросхемы он не проверялся.
  • FDD140 (новый). Тоже живой. Отличия см. здесь.
  • FDD140 (Apple Disk ][). Вообще в упаковке был.
  • FDD840. Данные прочитаны из двух исправных контроллеров (волжского и загорского), после возвращения микросхем контроллеры неоднократно использовались, никаких проблем обнаружено не было. Отличия между контроллерами есть в коде загрузчика (D1), остальные прошивки идентичны.
  • Клавиатура мс7004а (основная программа ЦП).
  • Модем AM1200 (основная программа ЦП и какая-то табличка).
  • Модуль расширения ОЗУ девятки (две мелких таблички).

 

Про знакогенераторы

Изначально Агат-7 был запланирован с знакогенератором в 256 знаков. Но микросхемы 556РТ7 были очень дефицитными, и их заменили на пару 556РТ5, установленными друг на друга (фото, рисунок подключения).
Таким образом, получалось только 128 знаков. Как только РТ7/РТ18 стали более доступными, бутерброд был заменён.
96 процентов реального софта, если даже не поддерживали маленькие/большие буквы, всё равно старались выводить на экран с установленным старшим битом. "Агат-Автор" пытался использовать полный знакогенератор по честному. Причем он большие буквы выводил в инверсии, на случай, если з/г всё-таки 128.
Бейсики и сопутствующие им ДОСы семёрки довольно вольготно пользовались старшим битом в текстовых строках и текстовых файлах. Например, при выводе на экран стандартными средствами (через PRINT) у HELLO-60 D7 жестко ставится в 1.
Отладочный комплекс и редактор РАПИРы выводили маленькие буквы голубым, а большие - зелёным. Но почему-то в нём тоже жестко устанавливался старший бит. Если эту установку отключить (подправив код в памяти или на диске) - редактор совершенно корректно работал с полным набором 256 знаков.
2 процента реального софта выводили буквы в виде "тексТ". Т.е. последний знак большой, остальные - маленькие. Они не были рассчитаны на 256, а их авторы в коде использовали макрос DCI - он последнему знаку в строке выставлял D7=1 - это такой, чисто Агатовский, вариант ASCIZ. Ну и, возможно, были какие-то ещё 2 процента со своей придурью.

Вид знакогенераторов Агат-7 ранний, АГАТ-7 поздний, АГАТ-9:
    

Если программа при выводе текста использует только A0-FF, то на всех исполнениях агата все будет выглядеть одинаково, с поправкой на то, что внешний вид некоторых знаков немного отличался. Кроме того, адреса строчных букв обоих алфавитов совпадают у расширенных знакогенераторов.

Вид соответсвующих знакогенераторов в режиме Apple:
    

Знакогенератор для режимов эпл у девятки, берет тайлы из основного. Первые три фрагмента полностью дублируют 128-191, а последний -- 192-255. Первых 0-127 вообще не используются. Кроме того, нет инверсии для РУС букв.

Интересный момент. Во всех семерочных знакогенераторах пиксели идут от младшего бита к старшему, и нулевой бит обозначает линию, а единичный -- фон. А в девяточном -- от старшего к младшему, нулевой бит значит фон, а единичный -- линию.

Автор раздела: Garnizon

Зеркало сайта