Тема: Roadmap теоретическая
-
Персональный компьютер "Агат" - технические беседы (является частью agatcomp.su / agatcomp.ru) Как зарегистрироваться?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
ПЭВМ "Агат" 7-9: Форум → Новый Агат → Roadmap теоретическая
Чтобы отправить ответ, вы должны войти или зарегистрироваться
-
Может я не в теме, мне вот интересно, 62С256 (512/1024) кто нибудь пытался использовать вместо битых рушек? Или весь смак восстанавливать железо как есть?
Так то бы плата вышла не большой с небольшим числом деталей.
http://zx-pk.ru/threads/26887-dopozu-dl … vodel.html
Изначально, как я помню (лет 5-8 назад), все мечты об агатах сводились к попытке реализовать его весь на одной большой однокристалке - как показывал опыт эпловцев - это вроде как было возможно и были конкретные примеры. Но потом кто-то (pardonne moi - не помню, кто именно. Alex?), попытался таки это дело довести до конца и упёрся в то, что сложно всё реализовать на одном кристале, причем так, чтобы согласовать все тайминги - т.е. сделать возможным поддержку любой периферии. Ну и плюс - режим совместимости видео - построенный на жесткой связке между частотой развёртки моника и тактам ЦП - тоже не ясно как реализовать на нынешних мониторах с чуть (ладно бы - кратно) более высокими частотами. Как я помню, в результате (примерно года 4 назад) курс был взят на то, чтобы реализовать всё таки ЦП на физическом проце, а остальное уже пилить на однокристалке. Но вот чем закончилось - не знаю.
Я сейчас сам стал подходить поближе и к FPGA (давняя мечта освоить их, пока откладывал, но откладывать уже некуда) и, скорее всего, в рамках самообучения, попробую подойти с другой стороны - переводить имеющуюся периферию на однокристалки. Т.е. не весь агат запихать в одну микру, а именно мелкими шажками, по чуть-чуть, компоновать всё в небольшие матрицы.
Возможно, именно реализовать модуль ОЗУ на SRAM (заодно прицепив к нему функционал либо SD-ридера либо просто EPROM с фикс-образом ... ну хотя бы ИКП) - мне кажется самой простой для начала задачей.
Да, идея хорошая. Но это конечно будет уже на Агат, а что-вроде клона с роднымы процами и логикой запиханной в CPLD. Промежуточное звено между эмуляцией и реальным железом. Но от этого идея не становится хуже.
Кстати есть результаты по экспериментам с 4164 буржуйскими? А то я всё ещё не допаял вторую плату, на которой планировал использовать только буржуйские микрухи за исключением РТшек и РУ8.
Учусь вот пользоваться логическим анализатором для диагностики. Пока что после некоторых подсказок нашёл где виснет код биоса при запуске дохлой MSX.
Думаю, для каждого из нас Агат - это всё таки не памятник с табличкой, а какое-то движение, т.е. развитие. Но для каждого - развитие одних сторон с непременным сохранением других.
Вроде пока не было дизайнеров, которые бы, например, хотели видеть агат со старой электроникой, но в новом корпусе (или уже были пару дней назад ?). Но тех, кто хотел бы:
- расширить функционал
- увеличить скорость
- интегрировать с современной элекроникой, сетями, софтом, протоколами, форматами
- собрать большую коллекцию софта
- собрать большую коллекцию харда (тоже ведь развитие ?)
- ..........
ведь таких полно.
Если хочется сказать много чего ещё по этой теме - надо в "общем" "прочем" тему открыть. Наверное, я это сделаю.
Про 4164 как раз собирался сейчас писать........
Т.е. не весь агат запихать в одну микру, а именно мелкими шажками, по чуть-чуть, компоновать всё в небольшие матрицы.
Вот это правильный подход, потому что Агат интересен в том числе оригинальными платами расширения и упаковка всего и вся в одну микру потребует дорогой FPGA и затруднит добавление чего-то нового, потому что слоты будут заняты внутри FPGA встроенной периферией. Тем более, что на всех не угодишь, кому-то будет важнее встроенная ЯЗС, кому-то сеть, кому-то лишний модуль ОЗУ.
Муторно только кондер настраивать пока добьёшься относительно безглючной работы модуля.
А почему не попробовать взять с вывода 6 D13 на материнке сигнал 2 МГц и подать его на модуль, отключив 10 ногу D15? Не на постоянной основе, конечно, а просто проверить - уйдут глюки с фазогенератором или нет?
Вот это правильный подход, потому что Агат интересен в том числе оригинальными платами расширения
Что из плат у нас оригинального, действительно нужного?
ДопОЗУ, ячейка принтера легко "пакуются" в ПЛИС.
Уверен, что скоро "расковыряем" и КНГМД-023 и ЯЗС и тоже "оприходуем".
А что еще нам надо?
и упаковка всего и вся в одну микру потребует дорогой FPGA
Циклончики вполне бюджетные варианты.
и затруднит добавление чего-то нового, потому что слоты будут заняты внутри FPGA встроенной периферией. Тем более, что на всех не угодишь, кому-то будет важнее встроенная ЯЗС, кому-то сеть, кому-то лишний модуль ОЗУ.
Дык, как раз-таки наоборот! В ПЛИСине и менять конфу (по слотам), и добавлять что-то новое очень просто и удобно! Пара жмаков по клавишам и готово! Даже можно отдельный блок свитчей предусмотреть под конфигурацию слотов.
А что еще нам надо?
Тут все упирается в степень поддержки софтом, как обычно.
Очевидно, что ДопОЗУ и КНГМД будут 100% использоваться.
Почти наверняка необходимые контроллеры:
- сеть
- ЯЗС (синтезатор)
- nippel mouse card
Тут поддержка в софте есть, но не так много.
Наверно, желательно иметь плату часов (раз сеть, значит можно и время получать, и тайм-ауты сетевые чем-то надо мерять), но я так понимаю, там софтовая поддержка почти отсутствует.
Из специфического:
- ЯЗС (MIDI)
- знакогенератор от НТК "Спрайт"
Это уже на любителя, хотя увидеть 4096 цветов на Агате все же интересно.
Потом, на сайте, я так понимаю, еще не все собрано. Еще в 92-93 году были слухи, что к Агату разрабатывался контроллер НЖМД. Где-то в интернете я видел автореферат с описанием еще одной звуковухи к Агату, вроде бы полностью цифровой и очень навороченной (правда существовала ли она в железе - непонятно).
Опять же, если развитие Агата двинуть в сторону совместимости с Apple IIe/gs и перетащить на него ProDOS, то наверняка можно будет сэмулировать что-то из его карт расширения.
Дык, как раз-таки наоборот! В ПЛИСине и менять конфу (по слотам), и добавлять что-то новое очень просто и удобно! Пара жмаков по клавишам и готово! Даже можно отдельный блок свитчей предусмотреть под конфигурацию слотов.
А разве эта возможность переключения не съедает часть ресурсов ПЛИС?
А что это даст? У нас же 2Мгц уже вроде приходит на разъём слота.
Так эти 2 МГц проходят через два инвертора и фронт задерживается относительно 14 МГц. А если напрямую подать, то фазогенератор модуля должен работать в таких же условиях как на системной плате. И конденсатор не нужен.
Поддержка софтом почти у всего железа, кроме стандартного (контроллер флопа.... ну ещё принтера) близка к нулевой. Мыши через порт принтера поддерживались ... наверное, mousegraf и markis. Даже за sirin не уверен. Более мелкие редакторы графики её не поддерживали. В другом софте (кроме графредакторов) о мышах вообще не думали.
Разве что часы - они поддержаны на уровне ОС в Спрайт-ОС, там они используются для сохранения даты модификации файлов.
К любой плате были демки, но вот дальше дело как-то не шло.
Вероятно, причина даже не в стоимости или сложности или ненужности устройств - просто для большинства программеров всё это было неизвестно. Я о существовании ИКП для семёрки узнал только сильно после 2000го года!
Если полистать единственный, наверное, писавший регулярно об Агате журнал "информатика и образование" - что там увидим ? Рекламу обучалок от Логосъ... И всё. А, ещё от некоторых фирм предлагались комплексные решения в виде классов Агатов, объединённых в сеть. Или просто Агатов.
Я даже рекламу мышей не помню. Я не помню ни одного упоминания о Дельта-Паскаль, а ведь именно из-за ходивших о нём легенд я вообще вылез в Инет с агатовской темой.
А ProDOS и так работает на девятке в apple-моде.
> Циклончики вполне бюджетные варианты.
Проблема не в цене, а в том, что несмотря на попытки это реализовать, пока они не были успешны.
Я бы сам, прям лично, прикупил бы материнку new-агат, если бы она была размером до 20x20 см, имела бы стандартные агатовские интерфейсы (слоты, порты), не более 10 корпусов SMD/BGA микрух и ценник до 10т.р. Оплата сразу, целиком, после моих тестов. Программная модель должна 100% повторять реальную машину, расширения только либо достаточно надёжно закрытым программным переклюком либо аппаратным.
Наверно, желательно иметь плату часов (раз сеть, значит можно и время получать, и тайм-ауты сетевые чем-то надо мерять)
С этим вполне и таймерные прерывания спрявятся, зачем часы?
- знакогенератор от НТК "Спрайт"
Это уже на любителя, хотя увидеть 4096 цветов на Агате все же интересно.
В новоделе будет и загружаемый знакогенератор 16х24 и палитра 16М.
Еще в 92-93 году были слухи, что к Агату разрабатывался контроллер НЖМД.
Дык, IDE (а через адаптер и SATA) легко прикрутить, только толку ноль, софтовой поддержки нема...
Где-то в интернете я видел автореферат с описанием еще одной звуковухи к Агату, вроде бы полностью цифровой и очень навороченной (правда существовала ли она в железе - непонятно).
Очень интересно!
Опять же, если развитие Агата двинуть в сторону совместимости с Apple IIe/gs и перетащить на него ProDOS, то наверняка можно будет сэмулировать что-то из его карт расширения.
Ни к чему это, ИМХО...
А разве эта возможность переключения не съедает часть ресурсов ПЛИС?
Дык, циклон 4 с 10K LE и 164 пина (OpenCE4Core) - "выше крыши" для АГАТа!
Проблема не в цене, а в том, что несмотря на попытки это реализовать, пока они не были успешны.
Работаем, работаем. Жду макетку с шагом 2мм. Ну и финансовый вопрос тормозит...
Я бы сам, прям лично, прикупил бы материнку new-агат, если бы она была размером до 20x20 см, имела бы стандартные агатовские интерфейсы (слоты, порты), не более 10 корпусов SMD/BGA микрух и ценник до 10т.р. Оплата сразу, целиком, после моих тестов.
Без слотов она бы и 10х10 получилась бы. Слоты (расположение и количество) надо повторить как в оригинале, соответственно, размер резко разбухает.
По предварительным прикидкам ценник (OpenCE4Core, W65C816S/W65C02S [3.3V], DPSRAM [основное ОЗУ/видеоОЗУ], SRAM [ДопОЗУ], конвертеры уровней [на слоты], печатка) выйдет в районе до 5 килорублей.
Программная модель должна 100% повторять реальную машину, расширения только либо достаточно надёжно закрытым программным переклюком либо аппаратным.
Разумеется!
> Еще в 92-93 году были слухи, что к Агату разрабатывался контроллер НЖМД.
Это не слухи, у нас в коллекции даже есть исходник на асме, где упоминается IDE-интерфейс. Просто это в серию не попало, так что и софта нет.
Например, от фирмы Nippel:
**********************************************
** **
** Тестовая программа для платы **
** ATA Интерфейса **
**------------------------------------------**
** Автор идеи, платы и программы **
** Стефан Гуилард (Stephane Guillard) **
** 2001 **
** **
** Переделка на Агат-9 **
** Дмитрий В. Отрутиков **
** (C)2006 ODim Electronics Москва Коровино **
** **
**********************************************
LST ON
DSECT
*-- Данные ---*
* Подпрограммы отладчика
Была ещё одна, пока не могу найти...
> Без слотов она бы и 10х10 получилась бы.
Поэтому я и пишу 20x20
Вообще, я для чего эту тему начал:
Вот у всех у нас есть какой-то интерес к Агату. Но каждый хочет что-то доработать, причём так, чтобы результат всё таки можно было бы назвать Агатом. Расскажите, что именно для вас есть "агат" (т.е. без чего он никак не может обойтись), а что - вполне можно заменить или дополнить какими-то новыми разработками?
- скорости (не забудьте, что игры сдохнут без доработок)
- внешний дизайн
- монитор, клавиатура и прочая внешняя периферия
- схемотехника
- операционки
- прикладной софт
- игры
-... что-то ещё
Ну, тут смотря какое полушарие мозга опрашивать :)
Эмоциональная сторона считает, что "Агат" это то, с чего начиналось все мое (относительно) серьезное программирование, это практически священный артефакт, несколько штук которых хранились за единственной в школе железной дверью с сигнализацией, и на который до начала 90-х младшеклассникам давали посмотреть только издали. Поэтому вернуть старые ощущения без корпуса оригинальной формы, на котором стоит 410-й Шилялис или Электроника, без оригинальной клавы, стука 140-овки и без цветной надписи ** АГАТ ** никак нельзя :)
С логической стороной все как-то проще. Пока есть 6502-совместимый процессор, оригинальные видеорежимы, слоты расширения с совпадающими с оригиналом таймингами и возможность без приключений запускать оригинальный софт - это без сомнения "Агат".
На самом деле, сложнее определиться с тем, какие нужны новые разработки. Потому что почти на каждый новый железный финт надо где-то набрать десяток программистов со свободным временем, чтобы этот финт как-то охватить софтом. Например, многим играм показана поддержка мыши. Это удобно и не нужно перебирать все кнопки на клавиатуре, чтобы выяснить, как же этот спейсшип управляется, и о чем думали разработчики, назначив кнопками управления функциональные клавиши. Причем мыши лучше ниппелевской, потому что встроить программный поллинг параллельного порта в произвольную игру и обеспечить нормальную частоту опроса - это еще то приключение будет.
Относительно разгона и установки 65816 - я пока не могу определиться. То есть я, в принципе, за. Скорости стандартного 6502 для каких-то новых разработок объективно мало. Но нужна поддержка 16 разрядов со стороны операционки. Что это будет за операционка? GS/OS? И главное, повышенная скорость интересна прежде всего для графики. Так может, зайти со стороны видеокарты? Реализовать в ней собственный процессор, который будет быстро кидать блоки данных туда-сюда (тем более что в 65816 проблему скорости копирования данных решили, IMHO, на троечку). Сделать там собственную память достаточного объема, чтобы не тормозить шину. Реализовать какие-то типичные для графики операции?
Была ещё одна, пока не могу найти...
Ну как же..... блок "сада" от НТК "спрайт" - считай официальный нжмд для агат.
Только к пользователям он не попадал, а в гувд волгограда, поликлиники, касса жд билетов.....
Поддержка в некоторых версиях "кентавр"
http://agatcomp.ru/Apps/Kentavr.shtml
Ну и конечно в "спрайт ос" поддержка сады есть. Буквально недавно на дисках попадалось.
Саму саду я нашел, но переговоры затянулись - там БД на ней не для общего пользования, пробую решить вопрос.
Когда получится? хрен его знает, но получится обязательно, думаю что времени уйдет меньше чем на добывание ЯЗС :)
Кстати, сама "спрайт ос" понимает и мыши и часы и 4096 цветов и сменные знакогены любого типа и все прочее, причем не только разработки НТК спрайт.
Собственно это не удивительно, разрабатывал её легендарный Цикоза а программно поддержали, несколько серьезных программерских колективов. Напр:
http://agatcomp.ru/People/NHA.shtml
или
http://agatcomp.ru/People/FaMe.shtml
И еще, про часы, ведь часы нтк спрайт были точной копией часов ниппель (авторы в свое время договорились), так что тут уже о агатовском стандарте часов можно говорить. И прог для них есть кстати, не пару совсем - тот же ос оникс или ос ниппель, текстовые адвентюры для спрайт ос тоже их хотят (одна из них в энергонезависимой памяти часов даже что-то хранит), титровальные программы, последние версии тор, парус и еще попадалось....
Саму саду я нашел, но переговоры затянулись - там БД на ней не для общего пользования, пробую решить вопрос.
Данные на винте, а нам же нужен только софт для загрузки и контроллер ?
Та машина грузится с винта, дисковода не имеет. Контроллер очень похож на этот:
Но я точно не уверен - он ли....
Даже не представляю - зачем на контроллере IDE понадобилась бы ВВ51
Да и ВИ53 тоже... Интересно, какой там винт ? Реально IDE или может какой нибудь более ранний ?
На 255.(9)% уверен, что в САДЕ использовался MFM/RLL винт с интерфейсом ST-402 (или что-то в этом духе), но никак не IDE! IDE-винты в те времена стоили как героин... А контроллеры для них (MFM) были на разных БИС: WD1xxx-какой-то, i960, и еще на куче всяких БИС, и даже на Z80 где-то мне попадался. Так что вполне возможно, что для АГАТа контроллер был выполнен на каком-нибудь МК хххВЕххх (ВЕ35/48/51), типа этого же спрайтовского универсального контроллера ввода-вывода.
- скорости (не забудьте, что игры сдохнут без доработок)
Старые игры расчитаны на оригинальные тайминги, им турбо не нужен. Поэтому и будет мануальный переключатель турбо. Можно и программный свитч предусмотреть.
Скорострельность нужна для остальных (существующих) прог. Плюс новые демы, игры, проги.
Предвидя очередные замечания по поводу таймингов при работе с КНГМД, отвечаю: по предложению Игоря при обращениях к ПЗУ или регистрам КНГМД (или ячеек, чувствительных к таймингам) автоматически отключается турбо на, положим, 0.5 секунды (от последнего обращения).
- внешний дизайн
Вариант 1. Оригинальный корпус. Плата 33х14 см (чтобы нормально её в оигинальном корпусе закрепить), с 6 слотами. На крайняк 33х10.
Вариант 2. Корпус какой-то другой, меньший. Но тут встает проблема использования родных ячеек в слотах...
- монитор, клавиатура и прочая внешняя периферия
Монитор - однозначно VGA.
Вариант 1. Монитор, хавающий не только 50 Гц кадровой, но и 936 строк. Это для беспроблемных таймерных NMI+IRQ. NEC MultiSync 20" точно хавает. Думаю есть и другие, и не только NEC MultiSync.
Вариант 2. Монитор, хавающий не только 50 Гц кадровой, но и 780-800 строк. У нас "ломаются" IRQ...
Вариант 3. Все мониторы хавают 56-75 Гц кадровой, 780-800 строк. У нас также "ломаются" NMI+IRQ...
DVI/HDMI-мониторы не катят... Во-первых, редкие. Во-вторых, для них требуется умножение частоты и определенные сложности в реализации... Лесом!
Клавиатура. Родная. Или через адаптер PC-шная.
Пульты - надо.
Мафон - лесом!
- схемотехника
Арбитраж обращений ЦП (хоть при одном Махе, хоть при 25+) и ДК (при пиксельклоке 28 МГц) к ОЗУ решается просто - Dual Ported SRAM. Раз, два. Недавно были в партии 10 штук по ~450 рублей. Надо постоянно мониторить доступность на али и ибэе. У меня на пилотный макет-АГАТ затарена IDT70V631S10 (256Кх18).
Для ДопОЗУ (блок ячеек ДопОЗУ, занимающий только 1 слот, например, 2-ой, и полностью совместимый с оригиналом) приглянулась IS61WV20488BLL. Плюс предусматривается возможность линейного (не страничного) обращения ко всей доступной памяти в нативном режиме проца.
Для слотов пользуем конвертеры уровней LVC16T245.
Но нужна поддержка 16 разрядов со стороны операционки. Что это будет за операционка? GS/OS?
Зачем?
Реализовать в ней собственный процессор, который будет быстро кидать блоки данных туда-сюда (тем более что в 65816 проблему скорости копирования данных решили, IMHO, на троечку).
65816 умеет копировать 7 тактов на байт! Плюс блиттер прикрутим 2 такта на байт! А если еще учесть 25+ Махов... Что исчо надо?
avivanov76 пишет:Наверно, желательно иметь плату часов (раз сеть, значит можно и время получать, и тайм-ауты сетевые чем-то надо мерять)
С этим вполне и таймерные прерывания спрявятся, зачем часы?
Да, на самом деле часы ничем не помогут. Поскольку в стандартных Агатовских ОС какого-то соглашения о правилах использования прерываний нет, то совершенно непонятно, как несколько устройств (например, сетевуха и мышь), будут их между собой делить. Нужно, чтобы ОС этим рулила.
avivanov76 пишет:Где-то в интернете я видел автореферат с описанием еще одной звуковухи к Агату, вроде бы полностью цифровой и очень навороченной (правда существовала ли она в железе - непонятно).
Очень интересно!
Вот ссылка: http://tekhnosfera.com/interaktivnaya-s … z4DwA2s0Ob В выводах там написано "Результаты исследований позволили сконструировать первый отечественный полифонический звуковой процессор и создать на его основе систему синтеза под управлением персонального компьютера АГАТ". Но боюсь, что если это и было сконструировано в железе, то в лучшем случае на макетке в одном экземпляре.
avivanov76 пишет:Опять же, если развитие Агата двинуть в сторону совместимости с Apple IIe/gs и перетащить на него ProDOS, то наверняка можно будет сэмулировать что-то из его карт расширения.
Ни к чему это, ИМХО...
Так вот эти "Спрайт ОС" и "Ниппель ОС" - это разве не попытка адаптации ProDOS к Агату? В ProDOS-е как раз были решены проблемы с разными контроллерами дисков, с большими томами, поддержкой каталогов. Кстати и работа с прерываниями там вроде бы была приведена в порядок.
Так что вполне возможно, что для АГАТа контроллер был выполнен на каком-нибудь МК хххВЕххх (ВЕ35/48/51), типа этого же спрайтовского универсального контроллера ввода-вывода.
Э... Там же скорости обмена 5 Мбит/с. ВЕ-шки не хватит, IMHO
avivanov76 пишет:Но нужна поддержка 16 разрядов со стороны операционки. Что это будет за операционка? GS/OS?
Зачем??
Да элементарно. Программа пользователя включает 16-разрядный режим, а потом, по какой-то надобности обращается к 8-битной ОС, под которой была загружена. А та ни сном ни духом, что все регистры 16-разрядные, нулевая страница вовсе не с нулевого адреса начинается и т.д.
65816 умеет копировать 7 тактов на байт! Плюс блиттер прикрутим 2 такта на байт! А если еще учесть 25+ Махов... Что исчо надо?
Умеет, но он мало того, что задействует в этих инструкциях оба индексных регистра и аккумулятор, так еще на каждой итерации заново вычитывает из инструкции 2 старших байта адреса. Потому у него и набегает 7 тактов. То есть, получается всего вдвое быстрее, чем обычная конструкция LDA ABS,X STA ABS,X DEY BNE. Хотя реально было бы получить такта 3 на байт.
Вот за блиттер я двумя руками за. Только надо как минимум поддержку прозрачности реализовать. Чтобы при копировании через "прозрачный" цвет фон просвечивал. Ну или маску прозрачности задавать. Хотя это будет медленнее. Ну и если это все будет со скоростью 25 махов работать, нужно, наверное какой-то расширенный видеорежим. Типа 256x256x16 цветов с собственной палитрой у каждой строки. Или просто 256x256x256 цветов.
> Еще в 92-93 году были слухи, что к Агату разрабатывался контроллер НЖМД.
Это не слухи, у нас в коллекции даже есть исходник на асме, где упоминается IDE-интерфейс. Просто это в серию не попало, так что и софта нет.
Например, от фирмы Nippel:
Не позорьте честные дела Сашки Голова :-). Это мой "бред".
Плата существовала. Проработала ровно полчаса. Потом "сдох" китайский буфер и "спалил" часть внутрянки ("огарок" до сих пор лежит где-то на даче в корпусе заброшенного Агата).
Но я успел прочитать технические данные диска, но опят же не успел записать лог. Схемки увы не сохранилось. Если нужно могу накидать ее по памяти.
Хотя все началось от сюдова: http://s.guillard.free.fr/Apple2IDE/Apple2IDE.htm . Схема мало чем отличалась.
А вот от "Ниппеля" я планировал использовать на харде Nippel File System (Да простит меня Голов) :-).
Перенес в другую тему.
Админов прошу удалить этот пост.
А контроллеры для них (MFM) были на разных БИС: WD1xxx-какой-то, i960, и еще на куче всяких БИС, и даже на Z80 где-то мне попадался.
Чтобы отправить ответ, вы должны войти или зарегистрироваться
ПЭВМ "Агат" 7-9: Форум → Новый Агат → Roadmap теоретическая
Форум работает на PunBB, при поддержке Informer Technologies, Inc