2000 год? Извините, тогда уже для Амиги был переходник c PS/2 мыши и PS/2 клавиатуры. Следовательно, инфа была. Видимо, при переходе с Sp97 на Sp2000 было лень что-то переделывать, просто.
На плате 2003го года ревизии уже были установлены разъемы PS/2.
Что же касается Вашей любимой ATM Turbo, то ее в середине 2000х годов почему-то группа NedoPC начинает производить именно с DIN-5 разъемом и контроллером AT/XT клавиатуры (лень было переделать?). И на Evo до сих пор не завезли USB клавиатуру и мышь, хотя она появилась в пору, когда USB мышки были уже повсеместно распространены.
MCS-51 было тоже на любой вкус (о чём косвенно свидетельствует например ATM-Turbo, где еще в 90ых уже стоял MCS-51 — как раз для парсинга и эмуляции клавиатуры).
Окей… Давайте посмотрим на MCS-51. Чтоб возложить на него описанные Вами задачи — парсинг клавиатуры, мыши, эмуляция RTC и загрузка FPGA, ей как минимум понадобится обвязка в виде 64КБ ПЗУ (ибо битстрим 50+ КБ весит), кварца, I2C часов с внешней батарейкой… Что-то уменьшения габаритов не получается, как вы предвещали. И да, I2C RTC появились немного позднее, в то время были еще стандартные DS12887 и ВИ1 (то есть они все равно остаются в DIP 28 корпусе). И как предполагается обновлять прошивку этого микроконтроллера для обновления firmware FPGA? Реализация на Спринтере все же выгоднее выглядит.
Автор при этом чуть ли не с гордостью рассказывал, как он покупал мешок кварцев и потом выбирал из них те, что заводились и работали с таким извращением.
Очень вероятно, что советские детали не всегда соответствовали столь строгим требованиям… Но в 2009м году, когда я собирал Спринтер у меня не возникло проблем с выбором кварца — все 5 штук, купленных на радиорынке внезапно заработали в Спринтере. И вообще проблем при сборке и запуске Спринтера не возникло: при использовании исправных деталей и аккуратной пайке компьютер запускается сразу. С появлением в розничной продаже генераторов на 42МГц озвученных Вами проблем с кварцем в принципе нет.
Отсутствие микроконтроллера, который грузит FPGA в Спринтере привело к тому, что функцию загрузки выполняет сам Z80
И это работает! Чем же это плохо?
вместе с CPLD MAX
CPLD MAX там не только загрузкой FPGA занимается, это его лишь 2-5% задач. Так что добавив МК от CPLD не избавиться.
кстати точно так же сделано в NeoGS.
Потому что это один из стандартных методов загрузки FPGA — см. даташит.
Зато нет необходимости по отдельности обновлять прошивку и в МК, и в ROM BIOS — все в одном месте, в отличие от Evo.
не нужна CPLD
Этим самым вы утверждаете, что не знакомы с архитектурой Sprinter-а и при этом пытаетесь доказать всем, что он «плохой» и, авторы поленились, 20 лет тому назад не поставили дополнительный микроконтроллер, который решит проблему человечества, заменив половину всего компьютера, разгрузив при этом Z80 от непосильной задачи загрузки FPGA и саму FPGA от парсинга датаграмм клавиатуры и мыши (опять же — это используется в основном только в режиме ZX Spectrum, в режиме Sprinter это не требуется).
Повторюсь — этой схеме более 20 лет, тогда не было в таком обилии МК, как сейчас. Авторы реализовали самодостаточную схему, которая работает, не применяя излишних компонентов! Согласен, что разрабатывая компьютер сейчас можно было бы избавиться и от CPLD и даже от самого MK, оставив FPGA (причем более современную), конф.ПЗУ, PCF8583 или DS1307, а все остальное добавить в софт-корку FPGA, как это реализовано на подавляющем количестве современных FPGA-клонов. Но мы же говорим о совсем другом компьютере.
Эмуляция клавиатуры в микроконтроллере — позволяет просто сделать переназначение клавиш.
Как часто вы пользовались этой фичей?
При желании реализовать то же самое в FPGA не представляет проблем, если знаете архитектуру Спринтера, то наверное в курсе, что в нем можно программно производить переназначение портов… так что при желании можно сделать даже загружаемую раскладку. А так — исходные коды доступны — можете переназначать клавиши как угодно.
Я не утверждаю, что у Спринтера нет архитектурных огрехов, они там есть. Но Вы так усердно «топите» за то, что там просто обязан быть микроконтроллер… честно, не могу понять — зачем? Если есть желание и возможность сделать Спринтер лучше и добавить ряд полезных доработок, а не просто потрепаться — сообщество открыто, будем только «за»!
Вы думаете матрица из 40 байт не занимает места в FPGA? В Evo микроконтроллер выполняет дополнительные функции — он эмулирует последовательный интерфейс и эмулирует работу с RTC, выполняет роль загрузчика FPGA и пр. Это не нужно в Sprinter-е, все эти задачи решены без дополнительного МК.
Наконец, на ZX-Evo есть SD-карта, а вставив дополнительную плату расширения в слот можно получить сеть и USB (с софтовой поддержкой в ОС), а на Cпринтере?
Как уже ответили — SD карту в Спринтер тоже можно установить, использовав переходник IDE<>SD. Что касается других устройств — имеется шина ISA8 и на ней вполне спокойно работают стандартные ISA устройства: мультикарты, звуковые карты, новодельные XT-USB адаптеры и т.д. Так же в разработке есть устройства для подключения к Интернет — SprinterNet на чипе WizNet, USB-адаптер на SL811 и прочие. Есть, конечно, нюанс у шины — не поддерживается DMA, поэтому устройства, рассчитанные на прямой доступ к памяти, как то SoundBlaster, не будут работать. Но можно обойтись другими. Еще имеется переходник с шины NemoBUS на ISA8, так что вполне возможно воспользоваться готовыми картами для Spectrum на Sprinter-е.
Опять же, ранее этот компьютер был коммерческим и все исходные коды были закрыты, вся документация была открыта не так давно. Группа энтузиастов решила возродить этот компьютер, начала изучать исходные коды, уже получили компилируемые прошивки BIOS и FPGA, практически последних версий. На их основе была собрана плата Спринтера с FPGA EP1K50 (такая же как в Evo), так же есть в планах взять и большего размера, чисто из академического интереса, но пока и этой с головой хватит. Так что нет ничего не возможного — платформа не достигла предела, можно развивать и наворачивать разными тайловыми движками и ускорителями, если их отсутствие для кого-то это большой минус.
В Спринтере эмуляцией 40-key клавиатуры Спектрума и K.Mouse занимается одна FPGA, без дополнительного МК, и тоже кстати, no-wait. Но клавиатура и мышь так же подключены к последовательным портам процессора и это позволяет читать сканкоды процессором.
Что касается микросхем в DIP, не забывайте, что это плата 2000го года разработки, новые платы идут уже ITX формате и с современными компонентами в SMD корпусах.
Что касается 8 битного цвета — вполне даже преимущество, во всяком случае нет необходимости в один байт помещать информацию о двух соседних пикселях, как это у других. Тут на один пиксель отведен один байт (при разрешении 320*256) и с помощью акселератора вполне даже комфортно с таким массивом работать!
Имеется демка игры DOOM, где применяется аппаратное растягивание/сжатие вертикальных и горизонтальных линий, видео доступно на Youtube: www.youtube.com/watch?v=Pk7iCW0vgks. Так же в игре Thunder in the Deep для этого компьютера применяются аппаратный вертикальный и горизонтальный скролл и работа с тайлами. На тот момент это выглядело весьма привлекательно в архитектуре компьютера, поэтому не согласен с утверждением про отсутствие какого либо 2d ускорения.
На фото представлена плата 2000-го года разработки, естественно там присутствуют компоненты доступные на тот момент. В новых ревизиях плат RTC планируется уже с внешней батарейкой.
На плате 2003го года ревизии уже были установлены разъемы PS/2.
Что же касается Вашей любимой ATM Turbo, то ее в середине 2000х годов почему-то группа NedoPC начинает производить именно с DIN-5 разъемом и контроллером AT/XT клавиатуры (лень было переделать?). И на Evo до сих пор не завезли USB клавиатуру и мышь, хотя она появилась в пору, когда USB мышки были уже повсеместно распространены.
Окей… Давайте посмотрим на MCS-51. Чтоб возложить на него описанные Вами задачи — парсинг клавиатуры, мыши, эмуляция RTC и загрузка FPGA, ей как минимум понадобится обвязка в виде 64КБ ПЗУ (ибо битстрим 50+ КБ весит), кварца, I2C часов с внешней батарейкой… Что-то уменьшения габаритов не получается, как вы предвещали. И да, I2C RTC появились немного позднее, в то время были еще стандартные DS12887 и ВИ1 (то есть они все равно остаются в DIP 28 корпусе). И как предполагается обновлять прошивку этого микроконтроллера для обновления firmware FPGA? Реализация на Спринтере все же выгоднее выглядит.
Очень вероятно, что советские детали не всегда соответствовали столь строгим требованиям… Но в 2009м году, когда я собирал Спринтер у меня не возникло проблем с выбором кварца — все 5 штук, купленных на радиорынке внезапно заработали в Спринтере. И вообще проблем при сборке и запуске Спринтера не возникло: при использовании исправных деталей и аккуратной пайке компьютер запускается сразу. С появлением в розничной продаже генераторов на 42МГц озвученных Вами проблем с кварцем в принципе нет.
И это работает! Чем же это плохо?
CPLD MAX там не только загрузкой FPGA занимается, это его лишь 2-5% задач. Так что добавив МК от CPLD не избавиться.
Потому что это один из стандартных методов загрузки FPGA — см. даташит.
Зато нет необходимости по отдельности обновлять прошивку и в МК, и в ROM BIOS — все в одном месте, в отличие от Evo.
Этим самым вы утверждаете, что не знакомы с архитектурой Sprinter-а и при этом пытаетесь доказать всем, что он «плохой» и, авторы поленились, 20 лет тому назад не поставили дополнительный микроконтроллер, который решит проблему человечества, заменив половину всего компьютера, разгрузив при этом Z80 от непосильной задачи загрузки FPGA и саму FPGA от парсинга датаграмм клавиатуры и мыши (опять же — это используется в основном только в режиме ZX Spectrum, в режиме Sprinter это не требуется).
Повторюсь — этой схеме более 20 лет, тогда не было в таком обилии МК, как сейчас. Авторы реализовали самодостаточную схему, которая работает, не применяя излишних компонентов! Согласен, что разрабатывая компьютер сейчас можно было бы избавиться и от CPLD и даже от самого MK, оставив FPGA (причем более современную), конф.ПЗУ, PCF8583 или DS1307, а все остальное добавить в софт-корку FPGA, как это реализовано на подавляющем количестве современных FPGA-клонов. Но мы же говорим о совсем другом компьютере.
Как часто вы пользовались этой фичей?
При желании реализовать то же самое в FPGA не представляет проблем, если знаете архитектуру Спринтера, то наверное в курсе, что в нем можно программно производить переназначение портов… так что при желании можно сделать даже загружаемую раскладку. А так — исходные коды доступны — можете переназначать клавиши как угодно.
Я не утверждаю, что у Спринтера нет архитектурных огрехов, они там есть. Но Вы так усердно «топите» за то, что там просто обязан быть микроконтроллер… честно, не могу понять — зачем? Если есть желание и возможность сделать Спринтер лучше и добавить ряд полезных доработок, а не просто потрепаться — сообщество открыто, будем только «за»!
Как уже ответили — SD карту в Спринтер тоже можно установить, использовав переходник IDE<>SD. Что касается других устройств — имеется шина ISA8 и на ней вполне спокойно работают стандартные ISA устройства: мультикарты, звуковые карты, новодельные XT-USB адаптеры и т.д. Так же в разработке есть устройства для подключения к Интернет — SprinterNet на чипе WizNet, USB-адаптер на SL811 и прочие. Есть, конечно, нюанс у шины — не поддерживается DMA, поэтому устройства, рассчитанные на прямой доступ к памяти, как то SoundBlaster, не будут работать. Но можно обойтись другими. Еще имеется переходник с шины NemoBUS на ISA8, так что вполне возможно воспользоваться готовыми картами для Spectrum на Sprinter-е.
Что касается микросхем в DIP, не забывайте, что это плата 2000го года разработки, новые платы идут уже ITX формате и с современными компонентами в SMD корпусах.
Что касается 8 битного цвета — вполне даже преимущество, во всяком случае нет необходимости в один байт помещать информацию о двух соседних пикселях, как это у других. Тут на один пиксель отведен один байт (при разрешении 320*256) и с помощью акселератора вполне даже комфортно с таким массивом работать!