Комментарии 99
Видно, что писал технарь. Только с третьего раза ухватил -- что за ТРЕНД им поддерживается?
Ключевое отличие -- в возможности "программно изменять архитектуру компьютера без замены каких-либо компонентов платы компьютера".
:: Примат информационного кода над "железом"!
Благодарю!
Давно не было новостей о этом компьютере.
Имхо Sprinter народный компьютер.
Рад что его возродили.
Автору: пишите еще
И есть :)
Надо что ли тряхнуть стариной и софта пописать под него ;)
Zilog inside forever!
Купить новый Даллас :)
Я так недавно сделал на своей плате Спринтера, купленной ещё в 2002 году — работает как часы ;)
Я стараюсь приобретать заменители с гнездом под батарейку.
Я вот тут для спринтера брал, инициализировал и всё работает:
275,76 руб. | 100% новый и оригинальный DS12887 DS12887A DIP-18 IC в наличии https://a.aliexpress.com/_Am4hAV
Есть хардверные тайлы 8х8 пикселов — можно хоть всю видеопамять под библиотеку тайлов использовать (точнее графическую часть видеопамяти размером 768x256 байт — это 3072 тайлов.
А вообще прошивка писалась в 1996-2002 годах — тогда хоть у кого-то были спрайты в FPGA?..
И да, спрайты были здесь: ru.wikipedia.org/wiki/%D0%9F%D0%9A8002_%C2%AB%D0%AD%D0%BB%D1%8C%D1%84%C2%BB
даже не на FPGA, а на рассыпухе.
P.S. «Эльф» это была попытка повторить MSX2 с его аппаратным видеоконтроллером — попытка по большей части неудачная как я понимаю — дорого (ибо на рассыпухе) и всё равно не полностью совместимо…
Когда создавали Сп97, это была, по своей сути, проба пера. Многое тогда не знали, в том числе и сам Иван. Когда начали создавать Сп2000, многие проблемы к тому моменту уже смогли разрешить, но не все. Например, некоторые тонкости ядра Спринтера, как позже писал в своих статьях (после "закрытия" проекта) про плисы Иван, нужно было писать иначе, мол, так не правильно. Опыт приходит со временем. На момент создания машины такого опыта не было. И тем не менее, автор понимал, что нужны аппаратные тайлоспрайты и потому заложил 512кб видео памяти, среди которых 2566кб, это так называемая область описателей. 16млн цветов это верный шаг. среди всех 8бит машин, других с такой палитрой я не встречал. вы не представляете, на сколько легче портировать любую графику (тайлы и спрайты) с других платформ. даже с пц, я экспериментировал, брал вообще без конверсии.
среди всех 8бит машин, других с такой палитрой я не встречалЯ тоже не встречал. Следовательно, софт с такими системными требованиями никогда не писался. Тогда зачем? Я думаю, для ретро-софта нужна машина с типовыми для того времени характеристиками. А для современного софта есть современные машины.
вы не представляете, на сколько легче портировать любую графику (тайлы и спрайты) с других платформТ.е. получается, назначение платформы — спектрум-совместимая фоторамка? Ну OK, годится. Но тогда нужен интерфейс к LCD панели.
Т.е. получается, назначение платформы — спектрум-совместимая фоторамка?
А сам спектрум или, скажем, АТМ или Профи и другие машины — не фоторамки без тайлоспрайтов? ничё, народ там как то выживает. Даже на против, есть целое «движение», в котором «адепты» верят, что если у 8 бит ретро компьютера (даже если новодел) есть аппаратные тайлоспрайты, то это уже какая-то денди и у многих интерес сразу пропадает.
PS До этого фото Ивана Мака мне не попадались, я его себе совсем по-другому представлял.
Сейчас пытаюсь написать под спринтер ретро игру. Веду небольшой лог и заметки. Мб в будущем тоже выльется в написание небольшой заметки про программирование…
В ZX-Evo настоящий Z80, а не как в Cпринтере, какой-то микроконтроллер с ядром Z80, и из-за того, что заняты некоторые порты (и не знаю что там ещё), нет полной совместимости спринтера со Спектрумом. В ZX-Evo настоящий AY/YM (можно втыкать тот или другой), в Cпринтере судя по всему эмуляция на FPGA. В ZX-Evo стоит отдельный микроконтроллер, который (совместно с FPGA), среди прочего, эмулирует 40-key спектрумскую клавиатуру и мышку по стандарту Kempston mouse (nowait). В Cпринтере мышка — это древняя com-мышка, а как эмулируется клавиатура (PS/2 подключённая на порт того микроконтроллера с Z80) я тоже не представляю. На ZX-Evo есть довольно неплохая (но не идеальная) эмуляция таймингов фирменных zx spectrum 48k и 128к, а на Cпринтере? Наконец, на ZX-Evo есть SD-карта, а вставив дополнительную плату расширения в слот можно получить сеть и USB (с софтовой поддержкой в ОС), а на Cпринтере?
На фотках на плате Спринтера дофига DIP-корпусов, seriously? В ZX-Evo всё, что можно — в soic и qfp.
Да чего уж там, на ZX-Evo даже FPGA (тот же ACEX) жирнее, чем на Cпринтере :)
Вот ZX-Evo, для сравнения:
В Спринтере 8 бит на цвет? Это точно преимущество? Для спектрума? :)
во1х, z80 он и в Африке z80. Спринтер проходит все тесты zexall на 100%.
во2х, клавиатура работает в двух режимах. Если работать в нативном для Спринтера режиме, то клавиатура доступна как АТ/PS_2 клавиатура, со сканкодами. Кроме этого параллельно доступен порт #FE. При включении режима Спектрума, клавиатура прекрасно работает как стандартная Спектрумовская.
в3х, да, мыш допотопная, компортовая, но она работает так же по двум протоколам — ms mouse и kempston. На года разработки посмотрите, компортовая мышь в те года была распространённой и с кучей инфы по ним. а по ps/2 мышкам тогда инфы было кот наплакал. Хорошо говорить за машину, год выпуска который 2007 — 2009 года.
в4х, На спринтере реализованы режимы совместимости с Пентагоном, Скорпионом и, ВНЕЗАПНО, фирменным 128к. Даже медленная память и инт поддержаны. А до кучи, для пентагонофилов, covox через порт #FB, схема теневой быстрой памяти через in a,(#fb). В эве этого не релизовано.
в5х, на спринтере настоящая RTC, а не тормозная эмуляция через avr/mega.
в6х, на эве есть SD читалка, на спринтере полноценный IDE, через который так же используя адаптеры можно подключать SD карты. Более того, на Спринтере работают даже те hdd, которые на эве всегда тупили.
в7х, корпуса микросхем — чистая вкусовщина. я вам могу много народу показать, которые qfp и soic на дух не переносят. И да, серьёзно, 8 бит на компоненту это так же преимущество. Спринтер не Спектрум, а Спектрум-совместимый. Больше 20 лет машине пора запомнить.
Да чего уж там, на ZX-Evo даже FPGA (тот же ACEX) жирнее
И что туда засунули, пардон? АТМ? В спринтере стоит альтерка куда худее, а засунули туда куда больше, чем в base-conf, стыдно должно быть, спустя 10 лет выпускать такой прод и в двойне стыдно, гордиться этим в 21м году.
Вопросы?
У вас не совсем достоверная/не совсем полная информация.
Ровно та, что из этой статьи + слухи. Пишите грамотные технические статьи со всеми деталями — у всех будет достоверная и полная информация.
в3х, да, мыш допотопная, компортовая, но она работает так же по двум протоколам — ms mouse и kempston. На года разработки посмотрите
а по ps/2 мышкам тогда инфы было кот наплакал.
2000 год? Извините, тогда уже для Амиги был переходник c PS/2 мыши и PS/2 клавиатуры. Следовательно, инфа была. Видимо, при переходе с Sp97 на Sp2000 было лень что-то переделывать, просто.
На спринтере реализованы режимы совместимости с Пентагоном, Скорпионом и, ВНЕЗАПНО, фирменным 128к
Правда? Что же в статье про это не было? Кстати, это отдельными прошивками сделано?
covox через порт #FB, схема теневой быстрой памяти через in a,(#fb). В эве этого не релизовано.
Во-1, ковокс реализован. Во-2, 'быстрая ОЗУ вместо ПЗУ' через in a,(#fb)
это самый что ни на есть костыль, когда вместо ПЗУ принтерного интерфейса в пентагон втыкалась ОЗУ типа РУ10. В ZX-Evo же сделан нормальный пейджинг страниц в каждом из 4 окон памяти. И даже — включение ОЗУ в 0ое окно битом в порту #EFF7.
в5х, на спринтере настоящая RTC, а не тормозная эмуляция через avr/mega.
Бесспорно, важное достоинство. Правда, обычно RTC опрашивается при старте программы или раз в секунду, но видимо есть программы, где настолько критично иметь неэмулируемый RTC (в огромном DIP-корпусе, жрущем место на плате).
Более того, на Спринтере работают даже те hdd, которые на эве всегда тупили.
Ну то есть что на Спринтере только IDE, а на ZX-Evo ещё и SD-карта --выяснили. Теперь вопрос — было ли команде ZX-Evo доложено о 'тех hdd, которые тупят'? Где можно посмотреть на этот багрепорт? Или это для красного словца замечание?
в7х, корпуса микросхем — чистая вкусовщина. я вам могу много народу показать, которые qfp и soic на дух не переносят.
Представляю, какое для них мучение пользоваться Спринтером, где целых 3 корпуса в qfp.
И да, серьёзно, 8 бит на компоненту это так же преимущество. Спринтер не Спектрум, а Спектрум-совместимый.
С таким подходом любой писюк с эмулятором — спектрум-совместимый.
всё в одной
> а на ZX-Evo ещё и SD-карта
переходники SD->IDE тоже бывают
2000 год? Извините, тогда уже для Амиги был переходник c PS/2 мыши и PS/2 клавиатуры. Следовательно, инфа была. Видимо, при переходе с Sp97 на Sp2000 было лень что-то переделывать, просто.
На плате 2003го года ревизии уже были установлены разъемы PS/2.
Что же касается Вашей любимой ATM Turbo, то ее в середине 2000х годов почему-то группа NedoPC начинает производить именно с DIN-5 разъемом и контроллером AT/XT клавиатуры (лень было переделать?). И на Evo до сих пор не завезли USB клавиатуру и мышь, хотя она появилась в пору, когда USB мышки были уже повсеместно распространены.
Собственно прохождение теста zexall
Для начала, спринтер это не клон спектрума. Спринтер это отдельная ветка компьютерных архитектур. Эволюшен, на сколько мне известно, это развитие спектрума, хотя и очень дальнее. Спринтер же это отдельный компьютер, с многократно - перепрограммируемым чипсетом.
Микроконтроллер z84c15, это тот же z80, даже с недокументированными командами, и на нем работают демки с "грязными хаками", на спринтере организовали возможность на многократно перепрограммируемой матрице, загружать прошивку соответствующей оригинальной ula. Процессора, то у них одинаковы, просто z84c15 имеет значительно более высокую частоту.
в Cпринтере судя по всему эмуляция на FPGA
fpga, ППВМ, ПЛИС, PLD, CPLD, так же однократно программируемые матрицы, это не эмуляция. Ремарка для специалистов - я знаю, что я сейчас упрощаю. Но в главном вопросе, я вполне точен. Программирумая пользователем вентильная матрица. Цифровая электроника собирается можно сказать, по кирпичикам, из логических элементов. Это не аналоговые сигнальные процессоры, или схемы. И все вышеперечисленное, использует принцип который, даже в спектруме использовали, вспомните его ULA.
Еще в 80-х после массовых браков при производстве микросхем, придумали изготавливать однократно программируемые матрица, которые превращали в готовые схемы, путем программирования на соответствующем программаторе.
Видете ли вы, чипсет Спринтера да и спектрума были изготовлены на программируемых матрицах, из за экономии. И возможности оперативно исправлять ошибки.
На фотках на плате Спринтера дофига DIP-корпусов, seriously? В ZX-Evo всё, что можно — в soic и qfp.
В советских правильных клонах тоже все было на дипах.
Сегодня в чате разработчиков https://t.me/zx_sprinter опубликованы, или загружены, как вам удобнее, новые фотографии, новейших плат, которые только сегодня приехали с резонита. Выглядят они теперь гораздо более современно.

Хочу вам напомнить, что опубликованные фото плат, те которые в моей статье, они во многом представляют собой клоны и исправления оригинальных плат рубежа 20 и 21 го веков. Люди работают за свой счет, и делают все на свои личные деньги. Но теперь эти платы устарели. Есть теперь и PS/2.
Наконец, на ZX-Evo есть SD-карта, а вставив дополнительную плату расширения в слот можно получить сеть и USB (с софтовой поддержкой в ОС), а на Cпринтере?
Этот компьютер Sprinter только начали возрождать, а ZX Evolution, вещь довольно уже давняя. Она конечно хороша. Но, она немного другая, чем спринтер, хотя и похожа. Разработчики планируют новые ревизии, ведут работы. Бюджет РФ не пилят, хотя думаю, от помощи частных лиц не отказались бы, но даже я не видел, что бы они просили их. Поэтому, я полагаю, что не стоит быть слишком строгими к разработчикам. Это все таки проект "для фана" в первую очередь.
Спринтер же это отдельный компьютер, с многократно — перепрограммируемым чипсетом.
Может в 2000 году это и было откровением, а сейчас каждый первый спектрум — 'с многократно перепрограммируемым чипсетом', то бишь на FPGA. Тот же ZX Spесtrum Nеxt и ещё пяток FPGA-клонов. Как аргумент в 2021 — так себе.
fpga, ППВМ, ПЛИС, PLD, CPLD, так же однократно программируемые матрицы, это не эмуляция.
Напомню, что речь шла о том, что в Cпринтере AY/YM эмулируется на FPGA. Давайте рассмотрим, как пишут эмулятор на ЯП. Садится человек, читает доку на то, что хочет сэмулировать и потом пишет программу, которая ведёт себя так же, как описано в доке. Если из доки известно, что процессор читает опкод например 0x00 и выполняет NOP
— то программа то же самое и повторяет. Если процессор складывает два числа — программа сложит 2 числа в памяти и проапдейтит эмулируемые флаги.
Теперь рассмотрим то же, но для FPGA. Садится человек и читает в доке на YM что вот тактовая частота делится сначала на 16, а потом на число, записанное в регистрах периода тона. И что-то там такое пишет на Верилоге, что примерно так и работает.
Теперь делаем стресс-тест: запускаем на таком эмуляторе тот же zexall и получаем… фейл. Потому что в доке ничего не сказано о недокументированных флагах. Точно так же и ad-hoc эмулятор AY/YM может неправильно работать когда, например, период задан нулём или когда регистры периода меняются в середине меандра, выдаваемого таким суррогатом.
Вывод: и то и другое — это эмуляция, в силу подхода к проектированию.
Может ли быть НЕ эмуляция? Для случая FPGA — может, но при условии, что воссоздаётся исходный чип. Сначала его вскрывают, фоткают, потом восстанавливают транзисторную схему. На основе этого делают rtl-модель. Вот в этом случае — будет не эмуляция. Но что-то мне подсказывает, что это не случай Спринтера...
однократно программируемые матрица, которые превращали в готовые схемы, путем программирования на соответствующем программаторе.
Видете ли вы, чипсет Спринтера да и спектрума были изготовлены на программируемых матрицах, из за экономии. И возможности оперативно исправлять ошибки
Я-то прекрасно всё вижу, а вот вы похоже нет.
Во-1, FPGA не является 'однократно программируемой'. Во-2, ULA которая в фирменном спектруме — это 'uncommited logic array' и не существует никакого программатора, чтоб её запрограммировать.
В основе ULA лежит чип с кучей логических элементов, которые не соединены друг с другом. При производстве на одном из последних этапов формируется слой 'металлов' — металлических соединений тех элементов между собой, примерно как на печатной плате, только микронных размеров. И вот этот слой как раз и задаётся заказчиком и он и определяет, что будет выполнять чип. И его не так-то просто исправить (просто, но нужно отдать кучу $$$ за перевыпуск масок), чему свидетельством разные заводские правки плат фирменного спектрума (т.н. 'тараканы') при помощи проводов и прилепленных на соплях микросхем.
Другие примеры: Т34ВГ1 (на котром в 90ые делались некоторые клоны Спектрума) или из другого мира (из мира компьютеров БК-0010, БК-0011) — это чипы К1801ВП1 — суть которых точно такая же, как ULA в спектруме. И они тоже не 'программируются' при помощи какого-то там 'программатора', а их конфигурация задаётся при производстве при помощи литографической маски.
Напомню, что речь шла о том, что в Cпринтере AY/YM эмулируется на FPGA.
На FPGA нельзя в принципе ничего эмулировать. Там внутри есть набор логических ячеек, и есть правила их коммутации в логические схемы.
Теперь делаем стресс-тест: запускаем на таком эмуляторе тот же zexall и получаем… фейл. Потому что в доке ничего не сказано о недокументированных флагах. Точно так же и ad-hoc эмулятор AY/YM может неправильно работать когда, например, период задан нулём или когда регистры периода меняются в середине меандра, выдаваемого таким суррогатом.
Класс! Только ведь в комментариях к этой статье, в соседних ветках, уже обсуждалались идеи перевода Спринтера на 32 битные процессоры Zilog, например: на Z380.
И вот в чем засада как оказалось. Эти процессоры нельзя использовать для исполнения программ спектрума потому что:
В Даташитах написано, что они совместимы на 100% с Z80, не совместимы на уровне недокументированных комманд — а это касается только некоторых демок.
Так пишет zx80. Только вот можно ли сказать, что эти процессоры эмуляция? Вам не кажется, что вполне могут существовать в теории версии z80, в которых не будет недокуметированных команд, по крайней мере тех которые были в 80-х и 90-х годах?
В основе ULA лежит чип с кучей логических элементов, которые не соединены друг с другом. При производстве на одном из последних этапов формируется слой 'металлов' — металлических соединений тех элементов между собой, примерно как на печатной плате, только микронных размеров. И вот этот слой как раз и задаётся заказчиком и он и определяет, что будет выполнять чип. И его не так-то просто исправить (просто, но нужно отдать кучу $$$ за перевыпуск масок), чему свидетельством разные заводские правки плат фирменного спектрума (т.н. 'тараканы') при помощи проводов и прилепленных на соплях микросхем.
Тем не менее в uncommited logic array лежит та же идея, которая и привела к появлению fpga, только, действительно, как вы и сказали, пока еще не было программатора, и пользовались только одной, последней фотомаской.
uncommited logic array серьезно отличаются от сбис, и ближе к fpga, чем опять таки, к сбис, или мелкой логики. В обоих случаях сбис будет быстрее и даже производительнее, чем ula или fpga.
Как, мне кажется, объективно противопоставлять fpga и ula в принципе неправильно. Да это разные технологии. Но, тем не менее в интересуемом нами аспекте, они похожи. Некая универсальная матрица содержащая логические элементы, которые тем или иным способом можно перекоммутировать по своему усмотрению, и в рамках возможного.
На FPGA нельзя в принципе ничего эмулировать. Там внутри есть набор логических ячеек, и есть правила их коммутации в логические схемы.
Тогда и на писюке ничего нельзя эмулировать — там внутри есть только процессор и память. Не очень распарсил аргумент типа 'в огороде бузина — в киеве дядька'.
Но могу уточнить. Любая древняя микросхема типа Z80, AY, 6502, К1801ВМ1 — это один большой конечный автомат. Можем мы повторить весь его граф состояний в FPGA? можем. На писюке? можем (но это будет оочень медленно). Чтоб это было делать просто, рассматриваем этот автомат как просто набор триггеров и асинхронной логики между ними. Можем это повторить в FPGA? Можем. На писюке? Можем (но будет очень медленно).
Если повторение не точное, или с точностью до ИЗВЕСТНЫХ побочных эффектов (как те же недокум. флаги в Z80, его внутренний регистр MEMPTR) — то это эмуляция. Если повторение основано на воссоздании цифровой микросхемы по её реверсу — то это уже НЕ эмуляция. И все побочные эффекты имеются там сразу, не надо после 'открытия' очередного побочного эффекта или недокументированной фичи бежать дописывать программный (или rtl-) эмулятор.
Только вот можно ли сказать, что эти процессоры эмуляция? Вам не кажется, что вполне могут существовать в теории версии z80, в которых не будет недокуметированных команд, по крайней мере тех которые были в 80-х и 90-х годах?
Мне кажется это уже какой-то спор ни о чём начинается. Я привёл признаки отличия эмуляции от не-эмуляции. Вы говорите о том, что если 'официально' то Z80 (или я не понял о чём). Вон ZX Spесtrum Nехt тоже как бы официальный, есть все копирастические права на название, радуга на логотипе и все дела, но внутри в нём стоит 'голая' FPGA, а вместо настоящего Z80 там глючная корка Т80 — натуральный эмулятор Z80.
uncommited logic array серьезно отличаются от сбис
Точно серьёзно отличается? (и кстати тогда уж ASIC). Современные ASIC, построенные на коммерческих общедоступных библиотеках ячеек, оказываются довольно похожими на и на 'ula' и на fpga — элементы-ячейки расставляются с зазорами, а между и над ними проходит роутинг (слои металлов с сигналами). Если физдизайн (синтез и расстановка и роутинг) делается грамотно, то обычно предусматривают ещё 'лишние' элементики. В случае нахождения ошибок в следующей итерации можно попытаться внести правки 'в металлы', изменив пару маск металлических соединений и задействовав те запасные элементики. В FPGA кстати тоже ячейки-LE располагаются островками, а в промежутках — роутинг (куча проводников, по которым можно пускать сигналы).
Так что различие не такое уж и огромное оказывается. Конечно, разница с вручную разведёнными мсх из 70ых (те же Z80, 6502, AY) есть.
Тогда и на писюке ничего нельзя эмулировать — там внутри есть только процессор и память. Не очень распарсил аргумент типа 'в огороде бузина — в киеве дядька'.
Эмуляция связана с возможностью компьютерной программы в одном устройстве эмулировать (имитировать) другую программу или устройство.
Точно серьёзно отличается? (и кстати тогда уж ASIC). Современные ASIC, построенные на коммерческих общедоступных библиотеках ячеек, оказываются довольно похожими на и на 'ula' и на fpga — элементы-ячейки расставляются с зазорами, а между и над ними проходит роутинг (слои металлов с сигналами). Если физдизайн (синтез и расстановка и роутинг) делается грамотно, то обычно предусматривают ещё 'лишние' элементики. В случае нахождения ошибок в следующей итерации можно попытаться внести правки 'в металлы', изменив пару маск металлических соединений и задействовав те запасные элементики. В FPGA кстати тоже ячейки-LE располагаются островками, а в промежутках — роутинг (куча проводников, по которым можно пускать сигналы).
Так что различие не такое уж и огромное оказывается. Конечно, разница с вручную разведёнными мсх из 70ых (те же Z80, 6502, AY) есть.
Если теперь и fpga и ula и asic, уже мало отличаются друг от друга, с ваших же слов, то в чем проблема то?
Почему вы отказываете в праве использовать fpga разработчикам спринтера?
И причем тут эмуляция? Эмуляция это софтовое решение, а fpga аппаратное. Спринтер не эмулирует режим спектрума, он просто грузит в свой fpga, чипсет спринтера в виде прошивки, и стартует. А то что стартовало, внезапно оказывается спектрумом. Вот, что вам не так?
Почему вы заставляете разработчиков отказаться от аппаратных решений и взять готовый андроид, куда воткнуть эмулятор спектрума? У них полноценный, аппаратный компьютер на 8 битном процессоре. Из за того, что чипсет на fpga, можно эпизодически подменять чипсет спринтера на чипсет спектрума, благо, оба они выполнены в виде прошивок для fpga. Это не эмуляция, это аппаратное решение.
Отдельная прошивка только в игре Thunder in the Deep, но исходники к сожалению утеряны…
Почему вы отказываете в праве использовать fpga разработчикам спринтера?
"Всё страньше и страньше" © Алиса в стране чудес.
Пожалуй, ничего не буду отвечать на попытки оппонентов приписать мне то, чего я не говорил.
А то что стартовало, внезапно оказывается спектрумом.
Точно спектрумом? Ну например, насколько точно сделан фетч видеоданных как их делает УЛА в ориг. спектруме? Или насколько точно сделан фетч видеоданных в пентагоновском режиме (где последователность атрибуты-пиксели-атрибуты-пиксели изредка прерывается циклами доступа в память процессором)? А снег как в фирменном спектруме тоже сам собой появляется, если I
указывает в медленную память? Я вполне разъяснил своё понимание термина 'эмуляция' и в данном случае в спринтере это именно эмуляция развёртки пентагона и 128к, равно как и эмуляция contended memory (впрочем, как и в ZX-Evo).
Почему вы заставляете разработчиков
Что, простите? См. выше про 'страньше и страньше'
Это не эмуляция, это аппаратное решение.
Если вам будет легче, то аппаратная эмуляция, ок.
Если вам будет легче, то аппаратная эмуляция, ок.
Термин «аппаратная эмуляция» часом не на спектрумовских ресурсах появился?
Проектировщики fpga, те кто их создали, как то наверное и не вкурсе, что они на самом деле создали.
Вам нужно Панчулу написать, что бы он сообщил Харрис анд Харрис, что оказывается их софт процессоры эмулируются «аппаратной эмуляцией» на fpga. А то я читал цифровую схематехнику и архитектуру компьютера, и даже лабник пролистал и термина такого «аппаратная эмуляция» не нашел. Может это все новодел? А?
Что касается микросхем в DIP, не забывайте, что это плата 2000го года разработки, новые платы идут уже ITX формате и с современными компонентами в SMD корпусах.
Что касается 8 битного цвета — вполне даже преимущество, во всяком случае нет необходимости в один байт помещать информацию о двух соседних пикселях, как это у других. Тут на один пиксель отведен один байт (при разрешении 320*256) и с помощью акселератора вполне даже комфортно с таким массивом работать!
В Спринтере эмуляцией 40-key клавиатуры Спектрума и K.Mouse занимается одна FPGA, без дополнительного МК, и тоже кстати, no-wait.
Ну то есть место в FPGA расходуется, чтобы парсить ps/2 или что-там ещё. в ZX-Evo в FPGA загружается сразу готовая матрица (или содержимое портов kempston mouse), вся 'чёрная' работа проводится микроконтроллером. И сканкоды клавиатуры, кстати, там тоже можно читать.
Я думаю, что в FPGA не занимает место парсинг PS/2 протокола. Эмуляция клавиатуры в микроконтроллере — позволяет просто сделать переназначение клавиш.
Эмуляция RTC — сэкономить место на плате, т.к. обращения к RTC редки и небольшой вейт Z80 некритичен.
Отсутствие микроконтроллера, который грузит FPGA в Спринтере привело к тому, что функцию загрузки выполняет сам Z80 вместе с CPLD MAX, кстати точно так же сделано в NeoGS.
Мораль — один микроконтроллер может выполнять функцию сразу многих устройств, при этом не пожирая место на плате (не нужен RTC в DIP, не нужна CPLD).
1. МК занимает место на плате.
2. частота обращения к RTC — зависит от задачи. были тут у меня две задачки. решили одну из них с Робусом проверить на Эве. Эва просто поперхнулась, как раз из-за RTC на МК. На Спринтере пролетело всё как надо.
3. Для МК есть более важные и куда более сложные задачи, чем раскидывание рядов спектрумовской клавы. С таким пустяком и FPGA справляется и место там ещё остаётся после всего этого. А потратить ради этого целый МК, ну такое себе.
4. и снова-таки — вы пытаетесь сопоставить Спринтеру машину, которая вышла на 10 лет позднее. Подумайте ещё раз на следующим своим предложением…
- МК занимает место на плате.
Меньше, чем один RTC в Спринтере.
- частота обращения к RTC — зависит от задачи. были тут у меня две задачки. решили одну из них с Робусом проверить на Эве. Эва просто поперхнулась, как раз из-за RTC на МК. На Спринтере пролетело всё как надо.
Без уточнения, какая именно задача была, почему не решалась там и решалась сям этот аргумент сродни воздушным замкам.
- Для МК есть более важные и куда более сложные задачи, чем раскидывание рядов спектрумовской клавы. С таким пустяком и FPGA справляется и место там ещё остаётся после всего этого. А потратить ради этого целый МК, ну такое себе.
Для Z80 есть более важные и куда более сложные задачи, чем запуск спектрумовских игр. С таким пустяком и эмулятор справляется. А потратить ради этого целую плату Спектрума или Спринтера, ну такое себе (примечание: аргумент по бредовости соответствует аргументу оппонента и написан с целью наглядно показать логическую несостоятельность такого типа аргументации).
- и снова-таки — вы пытаетесь сопоставить Спринтеру машину, которая вышла на 10 лет позднее.
Выше постили фотки платы Спринера из 2021, давайте сопоставим с ним.
Без уточнения, какая именно задача была, почему не решалась там и решалась сям этот аргумент сродни воздушным замкам
я вам уже «тонко» намекнул на то, что простая задача чтения времени из МК на Эве вводит машину в ступор. Полностью.
И время этого ступора весьма не маленькое. Даже элементарно сделать периодическую синхронизацию по часам,
уже проблема из-за таких тормозов.
аргумент по бредовости соответствует
Вы правы, ваш аргумент весьма бредовый. Тут в соседних коментазх писали про APU AM9511. Хорошая штука.
Жаль не может работать на частотах выше 3мгц. Float считает долго (почти так же, как сам z80). Профит от использования
весьма минимальный. А теперь представьте, если бы в качестве APU стояла та же самая AVR или что-то подобное.
Надеюсь дальше не нужно разъяснять, сами догодаетесь об остальных задачах для МК? И не надо гооврдить, что МК
может весь Спринтер или Эву проэмулировать. Эти машины нынче даже утюги могут эмулировать…
Выше постили фотки платы Спринера из 2021, давайте сопоставим с ним.
Сп2020 это пока всего-лишь глубокий рестайл. Переразводка платы, уход в 4 слоя, фазы питания, замена всех DIP
на qfp/soic и smd, бла бла… Нового там по части самого Спринтера ничего нет. Ядро тоже самое, проц тот же.
можно окирпичить целиком девайс.
Я вас держу в курсе — окирпичить можно почти любой девайс. NGS, Спринтер, Эво, ПЦ, Амига, MSX, много ещё чего.
Для антиокирпичивания люди придумали иные средства защиты. МК не из их числа. Будьте вы чуть внимательнее,
то знали бы, что Эво кирпичится на раз. На том же pkru не мало постов об этом. Ну, а имея под рукой программатор,
раскирпичить можно точно так же всё. Однако, для раскирпичивания того же Спринтера, можно прибегнуть к методу
со старой материнкой и подменой микросхемы пзу.
покупал мешок кварцев
Вы очень как то выборочно читали эти мессаги из FIDO. Про то, как он покупал мешок кварцев и перебирал их,
а так же, что кварц это плохо — вы запомнили. А то, что генераторы на тот момент были труднодостоваемы и стоили
как колесо от боенга, вы успешно забыли. Прекрасно, чё.
Теперь я выборочно забуду — не помню я его сообщений про перебор АТ клавиатур. Мой Спринтер стоит на работе.
Прям на столе, рядом с рабочим ПЦ. Доступ к ПС/2 клавам имею некоторый. Перебрал их уже прилично. Работали
все, без исключений, кроме парочки USB с переходником на ПС/2. Вы путаете перебирание АТ клавиатур с перебиранием SIMM
модулей. Это было, согласен. Но подбор SIMMов связан не с тем, что там есть какие-то особенности, а с тем, что
есть FPM SIMM и есть EDO SIMM. Вторые на спринтере не работают. Способ различать EDO нашли значительно позднее.
И то не все EDO можно отличить чисто визуально от FPM. А уж FPM модуль, если на нём от 4мб и выше, взлетают все.
Даже с контролем чётности.
1 блок памяти размером 512 байт, каковых блоков в FPGA типа ACEX и так очень мало.
Тем не менее, ещё и место осталось в (напоминаю) 1к30.
Хотя, конечно, иметь несколько раскладок, возможно, было бы удобно (для кого-то).
Я просто обсуждаю сомнительность некоторых технических решений
Вы не обсуждаете, вы констатируете факт плохого решения, даже решений.
Если хотите обсуждать, задавайте вопросы, а не наезжайте.
И не забывайте, машина разрабатывалась с 96 года. Финалом стала машина образца 1999 года,
когда не было технических решений доступных в 2007 — 2009 годах.
Многи вещи автор применял вообще впервые (как для себя, так и для 8 бит машин в целом).
Вы пытаетесь противопоставить машину 2009 года, в которой так же куча сомнительных решений.
Но вы, почему-то, об этом смело умалчиваете.
я вам уже «тонко» намекнул на то, что простая задача чтения времени из МК на Эве вводит машину в ступор. Полностью.
И время этого ступора весьма не маленькое. Даже элементарно сделать периодическую синхронизацию по часам,
уже проблема из-за таких тормозов.
Код для Z80 в студию, или так и будете рассказывать о том, что существует только в вашем воображении?
У меня есть реальные примеры, это например 'bios' платы ZX-Evo, называемый ERS (Evo Reset Service) — вполне себе читает RTC и показывает время, без никаких тормозов. И NedoOS тоже как-то время читает без тормозов.
Надеюсь дальше не нужно разъяснять, сами догодаетесь об остальных задачах для МК?
Не догАдаюсь. МК это такая дешёвая микросхема (сильно дешевле ACEX'а), которая позволяет в неё запихать все требуемые здесь и сейчас задачи, без прожектёрства типа 'давайте заставим МК считать флоаты, потому что грузить FPGA это банально и западло'.
Я вас держу в курсе — окирпичить можно почти любой девайс. NGS, Спринтер, Эво, ПЦ, Амига, MSX, много ещё чего.
Я вас тоже подержу в курсе. NGS окипичить до необходимости программатора действительно можно. Спринтер — как оказалось, тоже. А вот ZX-Evo — нельзя, несмотря на то, что пишут на форуме гэ. Конкретнее, в микроконтроллере ZX-Evo есть бут-область, которая никак без программатора стёрта быть не может. В ней лежит прошивка, которая с SD-карты может загрузить и записать в основной массив flash-памяти другую, рабочую прошивку. А далее на любой вкус — можно рабочей прошивкой залить 'Test&Service' и восстановить ПЗУ Z80, можно собственно целевую прошивку, которая загрузит FPGA и запустит ZX-Evo в нормальном режиме. В связи с этим, попрошу вас впредь не писать заведомо ложные факты, как это утверждение о том что якобы ZX-Evo можно окирпичить до необходимости использовать программатор.
а так же, что кварц это плохо — вы запомнили.
Я в принципе не мог говорить что кварц — это плохо. Я могу сказать, что генератор, выполненный на кварцевом резонаторе тем способом, какой был в оригинальном Спринтере (это, на минуточку — инвертор с задержкой, выполненный внутри CPLD) — это плохо. Могу сказать что генератор на 2 ТТЛ-инверторах и кварце тоже в общем-то хреново, т.к. кварц качается на последовательном резонансе и довольно большим током, что может приводить к его перегреву и усиленному старению. Могу сказать, что плохо делать генератор на одном CMOS-инверторе типа 74hc или hct (нужно делать — на 74hcu04). Но сам по себе кварцевый резонатор не может быть плохим. Плохой (а точнее безграмотной) может быть схемотехника генераторов на его основе.
Кстати, подозрительно часто с вашей стороны (и ещё одного человека тут в комментах) идёт приписывание мне того, что я не говорил. Мне кажется, что вы пытаетесь перейти на личности, не так ли?
А то, что генераторы на тот момент были труднодостоваемы и стоили как колесо от боенга, вы успешно забыли.
Я довольно много видел генераторов в разном ретрожелезе, и в Амигах, и в С64, и в SMD. Видимо, всё же, были доступны. И даже апелляция к нищебродству не менят тот факт, что тот же генератор на 3ей гармонике кварца можно сделать как положено. Да, придётся потратить несколько транзисторов и поставить индуктивность, но зато потом никто не будет тыкать лицом в безграмотные схемотехнические решения :)
Вы не обсуждаете, вы констатируете факт плохого решения, даже решений.
Ох простите, что мой способ обсуждения вам не подошёл. Как же мне следовало обсуждать плохие схемотехнические решения, чтобы вы не заклеймили меня в том, что я 'констатирую'? :)
Если хотите обсуждать, задавайте вопросы, а не наезжайте.
Ну я выше например задал, лежит ли развёртка+эмуляция contended memory 128k в той же прошивке что и пентагон, или нет. Ответа, что характерно, не получил.
И не забывайте, машина разрабатывалась с 96 года. Финалом стала машина образца 1999 года,
когда не было технических решений доступных в 2007 — 2009 годах.
А знаете, мне, как (потенциальному) пользователю Спринтера или ZX-Evo — это вообще без разницы. Технически машины весьма близки, со сходными характеристиками ключевых чипов (FPGA, Z80 или что там вместо него в Спринтере), так что и сравнивать их — полностью моё (и не только) право. Можно, кстати, сравнить ещё и с Pentagon 2.666, который вышел раньше ZX-Evo.
Но вы, почему-то, об этом смело умалчиваете.
Видите ли, тут я благородно даю вам право озвучить все сомнительные решения ZX-Evo. Начинайте?
МК это такая дешёвая микросхема
да вы что? а мужики то и не знали, по касарю за штучку. нормально так, дёшево.
касарь за проц, касарь за фпга, касарь за мк, касарь туда, касарь сюда.
которая позволяет в неё запихать все требуемые здесь и сейчас задачи,
ключевое слово — позволяет!
Но, не позволяло. и да, в рамках именно компьютера, пусть и 8ми битного
(а не всяких там ардуин), МК пусть лучше более тяжёлые вещи выполняет, а не
эмулировать клавиатуру за 10 вложенных в МК баксов.
А вот ZX-Evo — нельзя
ДА ВЫ ЧТО? вы, наверное, автор zx evo? или в саппорте сутками сидели и у вас есть
статистика на руках? или может вы автор самой atmega? всё можно
сломать (даже то самое в том самом). в том числе и сам бутлоадер всё тем же
программатором. достаточно фюзы не там и не те воткнуть и привет. особенно,
если юзер не является крутым спецом в области электротехники.
и даже если Спринтер обкирпичился, то даже программатор не требуется для
восстановления. хотя я согласен — факт кирпича, не приятная штука.
Я в принципе не мог говорить что кварц — это плохо.
В принципе вы именно это и сказали, так или иначе…
что тот же генератор на 3ей гармонике кварца можно сделать как
положено.
может да, а может нет, а может сделали так, как сделали. вам какое до этого всего
дело? вас купить его заставляют чтоли? если руки приложить не к чему, схема
открыта, переделайте всё так, как считаете нужным. можете даже вместо проца
сразу STM32 воткнуть, ну так, чтоб было. МК же. пусть сразу проц эмулит…
лежит ли развёртка+эмуляция contended memory 128k в той же прошивке что и
пентагон, или нет. Ответа, что характерно, не получил.
ах как печально… как печально, что вы это пропустили. не извольте беспокоиться,
мы позаботимся о вас:
habr.com/ru/post/563598/#comment_23173108
На спринтере реализованы режимы совместимости с Пентагоном, Скорпионом и,
ВНЕЗАПНО, фирменным 128к.
habr.com/ru/post/563598/#comment_23177736
всё в одной
как (потенциальному) пользователю Спринтера или ZX-Evo — это
вообще без разницы.
Потанцевальному пользователю Спектрума, наверное, тоже без разницы, что он
1982 года выпуска. Почему Синклер туда МК не воткнул, а? и генератор вместо
кварца и SD читалку и…
Напишите гневное письмо ему. Скажите, что вы знаете секреты «Спектрумастроения».
MCS-51
давайте считать.
битстрим 1к30 весит 59кб.
битстрим 1к50 весит 98кб (99кб).
битстрим 1к100 весит за 167кб.
в среднем 1к50 можно зажать примерно в 40 — 48кб. при этом с быстрой
распаковкой.
-rw-r--r-- 1 40016 Feb 14 13:55 1k50-last.SHAFF0
при этом, более агрессивные методы пакования жрут больше «тактов» при распаковке.
т.е. более тормозные. минимальный размер — около 28кб.
для 1к30 самый оптимальный вариант где-то на уровне 30кб.
не забываем, кроме битстрима нужен бутлоадер, а так же согласно вашим
псевдохотелкам — эмуляция клавы, мышки, часики и прочая фигня…
Микроконтроллер семейства 8051 имеют следующие аппаратные особенности:
● внутреннюю память программ (1/2/4К байт);
● внутреннюю память данных (64/128/256 байт);
бла бла бла;
различных atmega и подобных МК на тот момент не существовало, что вам и пытаются
тут вдолбить, что в те МК которые были доступны, никакие битстримы и эмулятор
никогда не влезут. Но вы с упорством продолжаете стоять на своём.
продолжайте…
в том числе и сам бутлоадер всё тем же
программатором
Это уже не просто скучно, это уже грустно. Итак, я утверждаю, что БЕЗ программатора корректно зашитый микроконтроллер AVR в ZX-Evo окирпичить невозможно (а следовательно, и целиком ZX-Evo — как её восстанавливать после порчи, я написал одном из соседних комментов). Утверждать такое мне даёт факт вдумчивого чтения док на ZX-Evo и на atmega128. Однако, в ответ мне пишут, что 'с программатором можно окирпичить'. Ну да, а с шокером ещё проще окирпичить.
На спринтере реализованы режимы совместимости с Пентагоном, Скорпионом и,
ВНЕЗАПНО, фирменным 128к.
Вопрос был про эмуляцию contended memory. Оно есть или нет? Насколько точное? Работают ли и насколько корректно демы типа ultraviolet? (Для сведения — на ZX-Evo эта демка работает идеально).
битстрим 1к30 весит 59кб.
В NeoGS битстрим от ep1k30 (запакованный) + его загрузчик в FPGA весят 19 килобайт.
битстрим 1к50 весит 98кб (99кб).
В ZX-Evo целиком битстрим (запакованный) + довольно нехилая по размерам прошивка с кодами для AVR — 50 килобайт. Просто зажатый битстрим — 40 килобайт.
Микроконтроллер семейства 8051 имеют следующие аппаратные особенности:
● внутреннюю память программ (1/2/4К байт);
● внутреннюю память данных (64/128/256 байт);
Никогда и нигде не было микроконтроллеров 8051 с внутренней памятью 64 байта, покрмере тех, что от интела начиная с 1980 года. В 2000 году уже куча контор производила всякоразные 51ые на любой вкус, в т.ч. со шматом movx-памяти в килобайт-другой, а вот возможность зацепить внешнюю пзушку на десятки килобайт была с самого начала в них.
ps: остальные нетехнические высказывания комментировать не буду.
Отсутствие микроконтроллера, который грузит 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 не представляет проблем, если знаете архитектуру Спринтера, то наверное в курсе, что в нем можно программно производить переназначение портов… так что при желании можно сделать даже загружаемую раскладку. А так — исходные коды доступны — можете переназначать клавиши как угодно.
Я не утверждаю, что у Спринтера нет архитектурных огрехов, они там есть. Но Вы так усердно «топите» за то, что там просто обязан быть микроконтроллер… честно, не могу понять — зачем? Если есть желание и возможность сделать Спринтер лучше и добавить ряд полезных доработок, а не просто потрепаться — сообщество открыто, будем только «за»!
И это работает! Чем же это плохо?
По информации о NeoGS, плохо прежде всего тем, что затерев ПЗУшку Z80, можно окирпичить целиком девайс. В ZX-Evo чтобы затереть бут-область AVR, который занимается загрузкой FPGA, нужно специально подключать программатор AVR, в то же время любой обычный апгрейд осуществляется в т.ч. и средствами этой бут-области и в принципе не может окирпичить ZX-Evo до степени 'нужен программатор'.
Этим самым вы утверждаете, что не знакомы с архитектурой Sprinter-а и при этом пытаетесь доказать всем, что он «плохой» и, авторы поленились, 20 лет тому назад не поставили дополнительный микроконтроллер,
Ну так вроде и эта статья для того, чтобы все познакомились с архитектурой Спринтера? Или нет?
Далее, я помню как 20+ лет назад сам Иван Мак рекламировал свой Спринер ещё в FIDO и ему точно так же задавали неудобные вопросы. Например, ЕМНИП тогда утроение частоты работы кварца 14 МГц происходило при помощи 'генератора', сделанного на CPLD: кварц подключался к ногам CPLD как к инвертору и работал на 3ей гармонике (42 что ли МГц)? Автор при этом чуть ли не с гордостью рассказывал, как он покупал мешок кварцев и потом выбирал из них те, что заводились и работали с таким извращением. Также помню, как автор рассказывал, как приходилось подбирать AT клавиатуры, которые работали бы со Спринтером. С таким подходом автора совершенно точно у меня появились (ещё тогда) сомнения в том, 'хороший' ли Спринтер и 'поленились' ли авторы.
этой схеме более 20 лет, тогда не было в таком обилии МК, как сейчас.
Вполне были. Пиков было миллион разных, AVR конечно только появляться начинали. MCS-51 было тоже на любой вкус (о чём косвенно свидетельствует например ATM-Turbo, где еще в 90ых уже стоял MCS-51 — как раз для парсинга и эмуляции клавиатуры).
Но мы же говорим о совсем другом компьютере.
У которого вполне себе свои собственные, не изжитые за 20 лет недостатки.
так что при желании можно сделать даже загружаемую раскладку.
Конечно можно. Сначала я уточну, вы же не о варианте '1 конкретная раскладка — 1 конкретная сборка прошивки FPGA'? Если нет, то придётся под маппинг AT-сканкодов задействовать минимум 1 блок памяти размером 512 байт, каковых блоков в FPGA типа ACEX и так очень мало. А в микроконтроллере — это почти бесплатно, дополнительные 10 строчек кода и целая EEPROM, в которую можно несколько разных раскладок поместить.
Но Вы так усердно «топите» за то, что там просто обязан быть микроконтроллер… честно, не могу понять — зачем?
Я просто обсуждаю сомнительность некоторых технических решений в Спринтере — или это делать нельзя, в смысле обсуждать?
100% защиту от дурака ввести всё равно не удастся — всегда найдётся «хитрец», который случайно умудрится сломать и обойти все защиты от этого самого хитрого дурака ;)
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МГц озвученных Вами проблем с кварцем в принципе нет.
Окей… Давайте посмотрим на MCS-51. Чтоб возложить на него описанные Вами задачи — парсинг клавиатуры, мыши, эмуляция RTC и загрузка FPGA, ей как минимум понадобится обвязка в виде 64КБ ПЗУ
Вы конечно же в курсе, что существуют и другие корпуса, кроме DIP?
(ибо битстрим 50+ КБ весит),
Опыт тех же NGS и ZX-Evo говорит, что этот битстрим довольно хорошо пакуется — от полутора до двух раз. А уж упаковщики на спектрумах были с 90ых годов.
кварца, I2C часов с внешней батарейкой… Что-то уменьшения габаритов не получается, как вы предвещали. И да, I2C RTC появились немного позднее, в то время были еще стандартные DS12887 и ВИ1 (то есть они все равно остаются в DIP 28 корпусе).
PCF8563 в 2000 уже была, например.
И как предполагается обновлять прошивку этого микроконтроллера для обновления firmware FPGA?
Ну раз он качает данные в FPGA, то по паре проводов и обратно укачает обновление. Не вижу принципиальных проблем.
Вам, сегодня с позиции 2021 года удобно писать свои хотелки. Вы так привыкли. Эва под рукой, все вокруг идиоты, раз не догадались сделать так же и т.д.
Сегодня куча разных МК, которых 20 лет назад
не только не существовало, никто про такие штуки даже подумать не мог. Удобная позиция, да? и головой подумать не нужно. Да пофиг, что было тогда,
важно, что есть сейчас.
Так для чего вы тут? Если вам интересно и хочется, чтобы Спринтер стал более современным, можете зайти в группу в Телеграме. Обсудить нюансы, тонкости,
внести свои предложения (обоснованные, а не хотелки аля «так сделано в эве»). Вместе можно всё решить.
А если вы тут чисто для «поржать», скатертью дорога…
вам даны ответы на все ваши вопросы, но вы продолжаете… вы же понимаете, какое слово тут должно быть…
Если вам интересно и хочется, чтобы Спринтер стал более современным, можете зайти в группу в Телеграме. Обсудить нюансы, тонкости,
К сожалению, такие токсичные люди как Sayman_nsk способны испортить всё впечатление от Спринтера, превращая любую техническую дискуссию в срач.
А где срачь?
Скажите?
Имхо вы задаете вопросы вас интересующие по не понятным вам моментам. А тов @sayman_nsk дает на них, на сколько это возможно развернутые ответы
Еще больше информации, чем в этом скромном обзоре, вы можете почерпнуть на сайтах, форумах в телеграмм чате, указанных в статье.
Тем более регулярно происходит что то новое. И конечно спустя 20 все совсем по другому
Наконец, на ZX-Evo есть SD-карта, а вставив дополнительную плату расширения в слот можно получить сеть и USB (с софтовой поддержкой в ОС), а на Cпринтере?
Как уже ответили — SD карту в Спринтер тоже можно установить, использовав переходник IDE<>SD. Что касается других устройств — имеется шина ISA8 и на ней вполне спокойно работают стандартные ISA устройства: мультикарты, звуковые карты, новодельные XT-USB адаптеры и т.д. Так же в разработке есть устройства для подключения к Интернет — SprinterNet на чипе WizNet, USB-адаптер на SL811 и прочие. Есть, конечно, нюанс у шины — не поддерживается DMA, поэтому устройства, рассчитанные на прямой доступ к памяти, как то SoundBlaster, не будут работать. Но можно обойтись другими. Еще имеется переходник с шины NemoBUS на ISA8, так что вполне возможно воспользоваться готовыми картами для Spectrum на Sprinter-е.
я помню, что на первых айбиэмах, сопроцессор был отдельный. Он стоил дорого, и что бы его не покупать существовала какая то программа, которая позволяла эмулировать этот сопроцессор в системе. Точность повышалась, но что касается производительности, то она конечно не вырастала. Но точность в программах повышалась.
Нельзя ли для гипотетического спринтера на z380 процессоре написать программу, аналогичную программе для эмуляции сопроцессора?
Эту гипотетическую программу можно встроить в файл spectrum.exe. Что бы переключаться в режим спектрума, на z380.
ну вообще то эмуляция 8-битных команд, для 32 битного процессора не такая уж и тяжесть, особенно, если это не вся система команд.
У нынешнего спринтера центральный процессор менять не следует. Это отдельная ветка компьютерных архитектур, и она должна развиваться самостоятельно.
А вот идея 32 битного компьютера на z380 интересна. Даже Иван Мак думал, о Sprinter II который будет на другом процессоре.
Если сильно нужон будет Z380 могу дать контакты производителя чипов, минимальный объем заказа где-то 120 шт по цене 3-5$
"на первых айбиэмах" — это на ibm/360 что ли? :)
А да, программа такая уже есть — называется 'калькулятор' в составе ZX Spectrum ROM 48k.
я уточнил информацию по процессорам - z180 это разработка Hitachi как HD64180, который не поддерживает недокументированные инструкции Z80. А вот z280 это переименованный проц разработки Зилога z800, который поддерживает операции с 8-разрядными половинами индексных регистровых пар (IXh, IXl, IYh, IYl) . z280 имеет аппаратное умножение, MMU 16Mb, кэш L1 и другие улучшения повышения быстродействия. Вот как раз хотелось бы такой Спектрум с 16 Мб ОЗУ, чтобы было комфортно работать на Си. Ещё спектруму нужно увеличить разрешение на 50% до 384*256 при спектрумовоской палитре с клэшингом. Ну и звуком должен стать стандартом для всех новых Спектрумов - чип на YMF288 (3 ssg, 6 FM каналов). Тогда это будет крутой, музыкальный Спектрум!
Интересная идея. 32 битный процессор. Но, так легко ли спринтер перевести на новый процессор?
ну это если спринтер то конечно да. А вот если новый альтернативный компьютер, то 32 битный процессор это вариант. Паять легко z380. Он же на ножках.
RISC-V слишком популярная тема, может выйти как с vliw, может и старые архитектуры, окажутся лучше, как в прошлый раз.
Но, я не агитирую, начинать новую разработку. По крайней мере в этом направлении. Нужно допилить эту.
Ничего с risc-v не случится. Ынтiль пропихивал свой ни с чем не совместимый VLIW (ia64) в хайенд сервера, пока его случайно не обошёл AMD, изобретя обратно совместимый amd64, где остался по сути тот же x86, лишь немного проапгрейженный по кол-ву и ширине регистров и c добавленным ещё одним режимом работы декодера команд (вдобавок к уже имеющимся нескольким). Ынтiль со своим IA64 в очередной раз постарался похоронить x86 (первая попытка была iAPX432, вторая видимо i860), но обратная совместимость на писюках — великая вещь, даже самому ынтiлю её поколебать не удалось.
Для RISC-V ситуация совершенно другая. Он в основном целится в embedded, где бинарная обратная совместимость не очень-то и нужна. А вот возможность сэкономить на royalty за каждый девайс с arm-ядром и не покупать дорогущие ip-корки от того же arm'а — весьма привлекательна для вендоров.
z380 сейчас нигде не купить, а вот z280 пока навалом. z280 12Мгц это как z80 50-60Мгц. Уже купил, буду собирать в связке с AVR c 16 Мб озу на борту и YMF288
Сорри за занудство, но - "Привет, (запятая, Карл, ведь это обращение) Хабра люди..." Исправьте, пожалуйста.


После прочтения статьи я заинтересовался этим компьютером. Купил плату, детали, некоторыми деталями помогли в чате телеграмма. Собрал, запустился сразу, без танцев с бубном.
8 битный компьютер Sprinter / Спринтер