|
ZX Spectrum: аппаратная реализация на микроконтроллерах AVR |
|
|
|
Oct 2 2010, 13:27
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Всем привет. Разрабатываю ZX Spectrum на микроконтроллерах ATMEL (ATMega128 - 2 шт, ATtiny2313 - 1 шт.) Всего в схеме 8 микросхем: центральный процессор (ATMega128), видео процессор (ATMega128), контроллер клавиатуры (ATtiny2313) (планируется применение стандартной клавиатуры PC/2), стабилизатор питания (MC78M05CDT), порт ввода-вывода (SN74S04), формирователь цветного изображения (SN74S257), ОЗУ (IS62C1024) с защёлкой адреса (74AC373). В настоящее время сформировал цветной видеосигнал и написал около 80% эмулятора команд (произво-дительности вполне хватает.)
Сообщение отредактировал Lisitsin - Oct 2 2010, 13:28
Прикрепленные файлы
ZX.ZIP ( 1.59 мегабайт )
Кол-во скачиваний: 170
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
 |
Ответов
(1 - 98)
|
Oct 2 2010, 14:48
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(V_G @ Oct 2 2010, 18:09)  Интересно, как вы собираетесь решать проблему разных архитектур Z80 (Неймановская) и AVR (Гарвардская, да еще с неизменяемой программной памятью). Программы под спектрум в принципе могут иметь самомодифицирующийся код, а тут такой финт не пройдет. Примерно так: (это называется эмуляция)
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 2 2010, 15:07
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(YIG @ Oct 2 2010, 19:00)  Эх, студенчество вспомнилось!  Не могу сдержаться: А зачем всё это? Простите, YIG, "G"-это от "Гамлет"?
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 2 2010, 15:22
|

Voltage Control Output
     
Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436

|
Цитата(Lisitsin @ Oct 2 2010, 18:07)  Простите, YIG, "G"-это от "Гамлет"? YIG - это железо-иттриевый гранат, специально выбрал такой ник, чтобы молодые радиоинженеры развивались. Кроме того, сам ими потихоньку занимаюсь! А как насчёт моего вопроса, интересно же? ЗЫ: А-а-а, всё понял, вот зачем: http://electronix.ru/forum/index.php?showt...mp;#entry818427 Я в этот раздел не ходок, поэтому не сразу заметил. Но всё-таки проект для чего-то создавался!?
--------------------
Слово - не воробей, вылетит - не пощадит
|
|
|
|
|
Oct 2 2010, 16:09
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(YIG @ Oct 2 2010, 19:22)  YIG - это железо-иттриевый гранат, специально выбрал такой ник, чтобы молодые радиоинженеры развивались. Кроме того, сам ими потихоньку занимаюсь! А как насчёт моего вопроса, интересно же? ЗЫ: А-а-а, всё понял, вот зачем: http://electronix.ru/forum/index.php?showt...mp;#entry818427 Я в этот раздел не ходок, поэтому не сразу заметил. Но всё-таки проект для чего-то создавался!?  Лучше уж сразу задать вопрос зачем я живу.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 2 2010, 16:48
|

Voltage Control Output
     
Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436

|
Цитата(Lisitsin @ Oct 2 2010, 19:09)  Лучше уж сразу задать вопрос зачем я живу. Как-то мне это всё напоминает анекдот: Юлий Соломонович, а почему все евреи отвечают вопросом на вопрос? А что, нельзя? Что касаемо нашей ситуации, то ситуация такая: Вы открываете тему, в которой никого ни о чём не спрашиваете, выкладывая свой проект. Я в студенчестве собирал Spectrum, интересуюсь целью темы и проекта. Вы по прежнему не хотите ответить на простой и праздный вопрос. Не хотите - как хотите! Всего доброго!...
--------------------
Слово - не воробей, вылетит - не пощадит
|
|
|
|
|
Oct 2 2010, 17:08
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(YIG @ Oct 2 2010, 19:22)  YIG - это железо-иттриевый гранат, специально выбрал такой ник, чтобы молодые радиоинженеры развивались. Кроме того, сам ими потихоньку занимаюсь! А как насчёт моего вопроса, интересно же? ЗЫ: А-а-а, всё понял, вот зачем: http://electronix.ru/forum/index.php?showt...mp;#entry818427Вы ведь и так уже всё поняли ... Цитата(YIG @ Oct 2 2010, 20:48)  Я в студенчестве собирал Spectrum, интересуюсь целью темы и проекта. Интересуетесь целью и темой того, чем сами занимались? Не понял ...
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 01:22
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Цитата(Lisitsin @ Oct 3 2010, 01:48)  Примерно так: (это называется эмуляция) Ну, что такое эмуляция, я представляю, а читать исходник, представленный в качестве ответа на мой вопрос, мне лень. Потому переформулирую вопрос, просьба ответить словами, а не на ассемблере: Как вы запустите программу, представляющую собой нечто вроде самораспаковывающегося архива, или просто в целях защиты меняющую некоторые ячейки программного кода после запуска?
|
|
|
|
|
Oct 3 2010, 05:32
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Oldring @ Oct 3 2010, 00:19)  А ваш программный эмулятор будет точно все времянки эмулировать? А то игрушки, которые в бордере текст писали, не пойдут - так кому он нужен будет?  Люблю грамотные вопросы, а не просто "зачекм тебе всё это надо?". Выдерживаюсь до такта. Подсчитываюсь прямо в комментариях. Но есть небольшие сложности: команды DAA, EX, XOR выполняются чуть чуть по-дольше. Я не знаю к чему это может привести. Есть возможность включить счётчик и подсчитывать это накопляющееся время, а за счёт других команд, выполняющихся более быстро, его компенсировать. Но пока это я не реализовал. Вот кто объяснит мне чем грозят затянутые DAA, EX, XOR - тот мне окажет огромную услугу. Спасибо за вопрос. Цитата(V_G @ Oct 3 2010, 05:22)  Ну, что такое эмуляция, я представляю, а читать исходник, представленный в качестве ответа на мой вопрос, мне лень. Потому переформулирую вопрос, просьба ответить словами, а не на ассемблере: Как вы запустите программу, представляющую собой нечто вроде самораспаковывающегося архива, или просто в целях защиты меняющую некоторые ячейки программного кода после запуска? А в чём тут, собственно, проблема? Любой код, буть он раньше архивом или нет, для эмулятора - просто код. В чём здесь должна быть сложность?
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 08:31
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(MaslovVG @ Oct 3 2010, 12:24)  Ну а мне непонятен вообще такой подход. SPECTRUM легко реализуется всего на трех корпусах. Любой современный клон Z80, CPLD для обвязки и контроллера дисков, и памяти. И никакой програмной эмуляции. Или в конце концов одна FPGA достаточного объема. А так как у автора топика можно и на транзисторах собирать. Если на CPLD - прибавим ещё ROM, стабилизатор питания, на чём-то надо собирать орбитр памяти. Реальные конструкции на CPLD на самом деле имеют около 10 корпусов. У меня 8 - и без CPLD. Планирую сократить до 7.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 09:19
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(131959G @ Oct 3 2010, 13:07)  Тема из молодости. Автору: ИМХО, для реальных программ (игрушек) завязанных на клавиатуру и всякие "фишки" реальной схемотехники Синклерной той эпохи, наверняка будут "вилы". Например, как правильно строить реализацию, если кем то писанная программа захочет прочитать код команды не из памяти, а например с шины данных по адресу устройства, которого в настоящем клоне каком нибудь просто нет физически? Как в первоисточнике или как в КЛОНЕ? Прошу прощения: а про модель то я и забыл!!! 48, он родной! У него на борту всего один порт ввода-вывода - номер 254. Эмулируется влёт. И каким это программам будет нужно читать данные из несуществующего адреса? А для клавиатурного контроллера программу пол часа назад откомпелировал. Прогоняю в AVRStudio- работает !!!
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 09:36
|

Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 8-04-07
Из: г.Луга Ленинградская обл.
Пользователь №: 26 862

|
Цитата(Lisitsin @ Oct 3 2010, 13:19)  Прошу прощения: а про модель то я и забыл!!! 48, он родной! У него на борту всего один порт ввода-вывода - номер 254. Эмулируется влёт. И каким это программам будет нужно читать данные из несуществующего адреса? А для клавиатурного контроллера программу пол часа назад откомпелировал. Прогоняю в AVRStudio- работает !!! Ну к примеру, кто нить в Питере "подправил" "ломаную" игрушку. Прочитал FF с ШД, подтянутой резисторами к плюсу и "поехал" в прерывание... . Когда слепите идею, то "обкатайте" ее в реальном времени реальными программами типа "Пинг Понга" http://zxspec.ru/screens/p/ping_pong.0.gif и сравните с реальным 48. Интересно, что получится.
|
|
|
|
|
Oct 3 2010, 09:50
|
Профессионал
    
Группа: Свой
Сообщений: 1 210
Регистрация: 24-01-05
Из: Россия Волгодонск
Пользователь №: 2 134

|
Цитата(Lisitsin @ Oct 3 2010, 13:02)  [\quote] Кроме того вспомните ZX81 (предшественник оригинального SPEKTRUM) был на четырех микросхемах CPU, ROM, RAM и ULA и все. (держал в руках такой в начале 80-х).
Ой !!! А ссылочку можно ? Увы Интернета да и PC тогда еще не существовало. В начале 90-х встречал клон спектрума с логикой реализованой на БМК (это нечто масочное предшественник CPLD) минимум корпусов. Да в игрушках и в защите программ использовалось много специфических особеностей, недокументированные команды Z80, значение регистра REFRESH, чтение отсутствующих портов (состояние шины данных, следы от выода на экран) и многое другое. На эту тему можно книги писать.
|
|
|
|
|
Oct 3 2010, 10:25
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(131959G @ Oct 3 2010, 13:36)  Ну к примеру, кто нить в Питере "подправил" "ломаную" игрушку. Прочитал FF с ШД, подтянутой резисторами к плюсу и "поехал" в прерывание... . Когда слепите идею, то "обкатайте" ее в реальном времени реальными программами типа "Пинг Понга" http://zxspec.ru/screens/p/ping_pong.0.gif и сравните с реальным 48. Интересно, что получится. Прерывание в 48 только INT, и то только для клавиатуры. А программы для другого типа ZX запускать не планирую. Может быть, только в перспективе. Цитата(MaslovVG @ Oct 3 2010, 13:50)  Увы Интернета да и PC тогда еще не существовало. В начале 90-х встречал клон спектрума с логикой реализованой на БМК (это нечто масочное предшественник CPLD) минимум корпусов.
Да в игрушках и в защите программ использовалось много специфических особеностей, недокументированные команды Z80, значение регистра REFRESH, чтение отсутствующих портов (состояние шины данных, следы от выода на экран) и многое другое. На эту тему можно книги писать. Если в НЭТЕ до сих пор нет ничего касательно такого проекта - моя тема актуальна. Недокументированные команды эмулирую. Насчёт чтения несуществующих портов: хотелось бы иметь игрушку или программу, которая это делает - чтобы потом погонять. Спасибо.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 11:04
|
Профессионал
    
Группа: Свой
Сообщений: 1 210
Регистрация: 24-01-05
Из: Россия Волгодонск
Пользователь №: 2 134

|
Цитата(Lisitsin @ Oct 3 2010, 14:25)  Прерывание в 48 только INT, и то только для клавиатуры. А программы для другого типа ZX запускать не планирую. Может быть, только в перспективе. Через BASIC и чтение клавиатуры по стандартным подпрограммам работали толбко первые простые игрушки. На смену им пришли игры в бинарных кодах. Работающие совсем автономно, после загрузки ПЗУ вообще не использовалось. Прерывание устанавливалось NMI и клавиатура опрашивалась любым способом на выбор автора, вплоть до сканирования избранных клавиш. Применение внешней IBM совместимой клавиатуры в таких случаях чрезвычайно сложно эмулировать. И главное Не вижу практического смысла. Комерческого будущего у этого изделия нет. Разве поучится программировать. Тогда уж сделать какой нибудь Роутер, аудио проигрыватель, JPS навигатор.
|
|
|
|
|
Oct 3 2010, 11:39
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(MaslovVG @ Oct 3 2010, 15:04)  Через BASIC и чтение клавиатуры по стандартным подпрограммам работали толбко первые простые игрушки. На смену им пришли игры в бинарных кодах. Работающие совсем автономно, после загрузки ПЗУ вообще не использовалось. Прерывание устанавливалось NMI и клавиатура опрашивалась любым способом на выбор автора, вплоть до сканирования избранных клавиш. Применение внешней IBM совместимой клавиатуры в таких случаях чрезвычайно сложно эмулировать. И главное Не вижу практического смысла. Комерческого будущего у этого изделия нет. Разве поучится программировать. Тогда уж сделать какой нибудь Роутер, аудио проигрыватель, JPS навигатор. Прерывание от IBM совместимой клавиатуры уже обрабатывается. Опрашивать можно командой IN с любым параметром опроса (0-255). Тип прерывания устанавливается программно любой. Коммерческие цели приследую не в первую очередь. А вообще коммерческая сторона дела мне интересна: что такое сегодня можно разработать, что пользовалось бы хорошим спросом?
Сообщение отредактировал Lisitsin - Oct 3 2010, 11:42
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 11:44
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(Lisitsin @ Oct 2 2010, 16:27)  Всем привет. Разрабатываю ZX Spectrum на микроконтроллерах ATMEL (ATMega128 - 2 шт, ATtiny2313 - 1 шт.) Всего в схеме 8 микросхем: центральный процессор (ATMega128), видео процессор (ATMega128), контроллер клавиатуры (ATtiny2313) (планируется применение стандартной клавиатуры PC/2), стабилизатор питания (MC78M05CDT), порт ввода-вывода (SN74S04), формирователь цветного изображения (SN74S257), ОЗУ (IS62C1024) с защёлкой адреса (74AC373). В настоящее время сформировал цветной видеосигнал и написал около 80% эмулятора команд (произво-дительности вполне хватает.) Вы однако выбрали самый тяжелый и неэффективный путь. Вот например на такой платформе вы могли бы свою идею реализовать ну за неделю не больше. http://www.alylab.eu/OpenProjects/ARMGeoSpyder2/ARMGS2.htmНаличие акселерометра могло бы заменить джойстик, тачскрин заменил бы мышь. Микрофон и float poin сопроцессор помогли бы сделать управление голосом. И все это не меняя основной бинарный код старых игрушек. В качестве эмулятора Z80 очень неплохой вот это проект: http://sourceforge.net/projects/cingb/ Здесь в конфе год или больше назад один любитель даже анализ разных эмуляторов Z80 проводил (вернее их расширенных аналогов для игровых приставок) и демонстрировал их работу на макетной платформе на ARM9. Так cingb вообщем самый удобный для портирования оказался.
|
|
|
|
|
Oct 3 2010, 12:25
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(AlexandrY @ Oct 3 2010, 15:44)  Вы однако выбрали самый тяжелый и неэффективный путь. Вот например на такой платформе вы могли бы свою идею реализовать ну за неделю не больше. http://www.alylab.eu/OpenProjects/ARMGeoSpyder2/ARMGS2.htmНаличие акселерометра могло бы заменить джойстик, тачскрин заменил бы мышь. Микрофон и float poin сопроцессор помогли бы сделать управление голосом. И все это не меняя основной бинарный код старых игрушек. А ради интереса, сколько такая игрушка стоит? Ну а о вышесказанных наворотах я и не думал: это уже не синклер получится. Цитата(Oldring @ Oct 3 2010, 15:47)  Ну уж явно не эмулятор Спектрума на AVR с минимумом использованных корпусов. Разработать сейчас можно всё что угодно, сложно только продать в достаточном количестве, чтобы окупить затраты на разработку. Те, кто нащупали свои ниши - с вами точно делиться ими не будут. А то ... Кто станет делиться - пусть сразу наличкой даст, чтобы я глупые вопросы не задавал.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 15:46
|

Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 8-04-07
Из: г.Луга Ленинградская обл.
Пользователь №: 26 862

|
Цитата(MaslovVG @ Oct 3 2010, 15:04)  ...клавиатура опрашивалась любым способом на выбор автора, вплоть до сканирования избранных клавиш. ... Вот и я о том же. Достаточно глянуть на схему, где шина адреса ПРЯМО через клавиши на ШИНУ ДАННЫХ попадает и попытаться это "с эмулировать". Если идею клавиатуры не менять, то игрушки для двоих, где один с джойсиком, а другой клавиши топчет тоже придется отменить.
|
|
|
|
|
Oct 3 2010, 16:00
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(131959G @ Oct 3 2010, 19:46)  Вот и я о том же. Достаточно глянуть на схему, где шина адреса ПРЯМО через клавиши на ШИНУ ДАННЫХ попадает и попытаться это "с эмулировать". Если идею клавиатуры не менять, то игрушки для двоих, где один с джойсиком, а другой клавиши топчет тоже придется отменить. Не понял.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 3 2010, 17:34
|

Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 8-04-07
Из: г.Луга Ленинградская обл.
Пользователь №: 26 862

|
Цитата(Lisitsin @ Oct 3 2010, 20:00)  Не понял.
Эскизы прикрепленных изображений
|
|
|
|
|
Oct 3 2010, 18:19
|

Частый гость
 
Группа: Участник
Сообщений: 86
Регистрация: 8-04-07
Из: г.Луга Ленинградская обл.
Пользователь №: 26 862

|
Цитата(Lisitsin @ Oct 3 2010, 21:39)  ... Нажимать можно хоть все клавиши сразу. Понятно. Ну тогда все остальное реализовать не составит труда.
|
|
|
|
|
Oct 4 2010, 06:46
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(YIG @ Oct 2 2010, 19:00)  Насчёт ATMegi128 не знаю, но интересна конечная цель. А чего тут не знать - по частоте в 5 раз разница, по тактам/циклам - ещё х10. При 50-кратном преимуществе по производительности можно просто тупо эмулировать команды Z-80. Вот с памятью да, проблема. Один только видеобуфер 7кБ - без внешней никак. Лучше на кортексах хотя бы забацать - там уже десятки кБ ОЗУ - вообще никаких проблем. И цена ненамного выше, зато всё в одном будет.
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
Oct 11 2010, 14:18
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(НЕХ @ Oct 4 2010, 19:44)  offtop: в студенческие годы смастерил Синклер-128 с 2 процессорами - они были напаяны этажеркой, параллельно, кроме пары выводов - организован прямой доступ к памяти, захват шины. Работали они по очереди, стоял тумблер - игра/курсовик, ОЗУ на РУ7 было задействовано полностью : 2*128 кбайта. Переключаться можно было в любой момент. Offofftop: я тут по-немногу уже пробую стартовать: http://dl.dropbox.com/u/12408899/CVBS%20%2...D1%88%D0%B5.zip
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Oct 12 2010, 13:58
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(OLEG_BOS @ Oct 11 2010, 20:36)  Вам бы заглянуть сюда. - там таких как Вы, ретро-любителей полно  Может кто подскажет Вам свежие идеи для проекта =Speccy2011=  Да я вообще в курсе. Но вот вопрос: сколько будет стоить такое удовольствие и можно ли его изготовить самому? Да и про ретро я сказал бы по-другому: это больше классика, а не ретро. Об этом ещё в "школе" учат, из этого инженеры вырастают ... (я имею в виду ВМ80)
Сообщение отредактировал Lisitsin - Oct 12 2010, 14:01
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Feb 1 2011, 11:17
|
Группа: Новичок
Сообщений: 1
Регистрация: 1-02-11
Пользователь №: 62 614

|
Цитата(Lisitsin @ Jan 27 2011, 23:43)  Картинка грузится, звук есть, но игрушки пока не стартуют. http://dl.dropbox.com/u/12408899/CVB...-232143%29.zipчо то ссылка то неработает(
|
|
|
|
|
Feb 3 2011, 18:35
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Hmm @ Feb 3 2011, 18:45)  Почему тестовая прога от 128k версии. Речь вроде шла о 48k. Да какая разница? оно и 48 не стартует .... блин !!!
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Feb 5 2011, 00:35
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Hmm @ Feb 4 2011, 19:37)  При чем тут игрушки вообще тогда?
10 CIRCLE OVER 1; 127,87,87 20 GO TO 10
Это то работает? http://dl.dropbox.com/u/12408899/CVBS%20%2...5-032645%29.zip
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Feb 9 2011, 16:58
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Hmm @ Feb 5 2011, 16:34)  Хороший тест кстати (довольно сложные вычисления). Гм. А если сохранить-загрузить с автозапуском (типа игра), то уже не запускается ? Сейчас проблема с автозапуском после загрузки. Некоторые игрушки грузятся (типа Manic miner, Pheenix) и даже начинают работать. Но есть глюк, наблюдаемый в бейсике: при выводке на экран любого числа целая часть выводится некорректно - либо единица либо ноль.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Feb 11 2011, 20:39
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Hmm @ Feb 10 2011, 21:31)  Какой-либо тест выполнения всех Z80 комманд прогоняли? Затем памяти. Потом уже особенности платформы (переключение страниц, ULA, и т.п.). А то "гадать" можно до ... Z80tests гнал. Всё failed:
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Feb 13 2011, 06:36
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Robocop: R-TYPE:http://dl.dropbox.com/u/12408899/CVBS%20%28110211-232042%29R-TYPE.zip
Сообщение отредактировал Lisitsin - Feb 13 2011, 06:59
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Apr 5 2011, 10:08
|
Участник

Группа: Участник
Сообщений: 67
Регистрация: 25-10-06
Пользователь №: 21 651

|
Цитата(Xenia @ Oct 4 2010, 00:45)  Скажите, а современная продукция Zilog и в частности архитектура eZ80 совместима ли снизу вверх с командами старого Z80? Ну типа того, как нынешние CoreDuo способны выполнять код старого 8086, несмотря на то, что с тех пор у них появилось много новых команд и возможностей. Каталог продукции Zilog лежит вот тут: http://www.zilog.com/Zilog_LnCrd_2010_Web.PDFНу да, они так и пишут открытым текстом: "OpCode compatible to Z80® and Z180 products". Только сейчас у них остался единственный чип в этом семействе - eZ80F91... Раньше было поболее..
|
|
|
|
|
May 3 2011, 19:30
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(one_man_show @ Apr 29 2011, 23:07)  Искренне желаю Вам удачи! Может дойдут руки, возьметесь за Enterprise 128  Спасибо !!! Насчёт 128 - надо подумать.
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Dec 29 2011, 10:28
|

Voltage Control Output
     
Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436

|
Цитата(alexPec @ Dec 28 2011, 11:37)  Ну-ну, на заре транзисторов тоже думали: вот запихнуть бы мильон транзисторов в микросхему, так вся бортовая аппаратура самолета бы была в одной микросхеме - легко, компактно, малопотребляюще... Чего наблюдаем сейчас?  А какое отношение эта тема имеет к аппаратуре самолёта, которую я, например, разрабатываю? Никакого! Эта тема - радиолюбительское садомазоизвращение.  И не более того...
--------------------
Слово - не воробей, вылетит - не пощадит
|
|
|
|
|
Feb 9 2012, 17:14
|

Местный
  
Группа: Свой
Сообщений: 329
Регистрация: 22-06-04
Пользователь №: 124

|
Цитата Лет через 50 на квантовых микроконтроллерах будут эмулировать Core i7.... Пожалуй нет, т.к. это событие не имеет такого значения, как появление этого сАмого знАменитого "Home Computer".
--------------------
Талант не пропить ...
|
|
|
|
|
Apr 7 2012, 09:03
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Vasily_ @ Apr 7 2012, 12:01)  Что-то там Error (404). Прошу прощения, исправил ...
Сообщение отредактировал Lisitsin - Apr 7 2012, 09:11
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Nov 7 2012, 15:43
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Lisitsin, прошу прощения за то что не по теме, но очень хочется узнать, что повергло вас использовать в своем проекте AVR-архитектуру, тогда как Spectrum ZX гораздо ближе к 51-ой архитектуре. Даже в том случае, когда полного сходства с командами Z80 нет, для нынешних 51-х вполне можно было бы перетранслировать старые коды байт в байт. Т.е. написать примитивный ретранслятор из кода в код, таким образом, чтобы были только замены, но сам код не сжимался и не расширялся. И это всё затем, чтобы адреса переходов не требовали модификации. Или я слишком оптимистична? Такой подход нельзя назвать эмуляцией, поскольку процесс интерпретации команд во время работы программы не происходит (run-time), а в новый код преобразуется без его деассемблирования. Да и нынешние 51-е МК работают во много раз быстрее, чем старый Z80, хотя и эту архитектуру ныне считают устаревшей. Два года назад я уже задавала в этой теме вопрос ( http://electronix.ru/forum/index.php?s=&am...st&p=819032) относительно перспективности использования eZ80 от Zilog (в частности eZ80F91), но вы тогда мне не ответили. Может быть сейчас ответите?
|
|
|
|
|
Nov 8 2012, 09:54
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Цитата(Xenia @ Nov 7 2012, 19:43)  Может быть сейчас ответите? 51? Это интересно. Вот только правильнее было бы тогда сразу взять сам Z80 и на нём всё делать. Дело в том, что эмуляция очень специфическая штука. Эмулировать можно одно устройство при помощи другого только в том случае, если запас по производительности компенсирует разницу в системе команд + обеспечивает техническую сторону задачи - т. е. выборка/дешифрация/проверка прерываний/переход к собственно программе эмуляции. Насколько я осведомлён, 51-ые контроллеры не слишком шагнули вперёд по производительности из-за всё тех же гранц, накладываемых архитектурой - 4 такта в машинном цикле, 21 МГц. При этом главная задача эмуляции - замена инструкций, выполняющихся с отличиями от Z80-ых последовательностью своих родных. При этом мы не располагаем дополнительными свободными регистрами для выполнения этой задачи, а значит, пользуемся ОЗУ. Это удлинняет время выполнения инструкции в неопределённое число раз. При всём при том, пока речь ещё не шла о недокументированных особенностях выполнения команд Z80, без которых будет работать только бейсик и всё. Преобразование же кода из родного Z80 формата в некий 51х формат выглядит безобидно только с первого взгляда. На самом деле если глубокомысленно и медетативно посмотреть на эту задачу, можно увидеть, что это есть ни что иное как та же самая эмуляция, но выполняемая заранее. Она ни сколько не проще Real-time эмуляции. Огромное спасибо за вопрос!
Сообщение отредактировал Lisitsin - Nov 8 2012, 09:56
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
Aug 2 2014, 02:47
|
Знающий
   
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861

|
Цитата(Lmx2315 @ Jul 30 2014, 22:42)  слежу за темой  Автор выпустил уже версию AVR ZX Spectrum V2_0 (новости на zx.pk.ru и easyelectronics.ru ) Перепост. Видео http://www.youtube.com/watch?v=y4JQdIvJunIо: Схема, сборка, перечень элементов, фото: https://www.dropbox.com/s/dp7fs9akmihcuke/V...0%20support.zip Код Технические характеристики: Разрешение экрана: 256 х 192 точки; Матрица знакомест экрана: 23 х 24; Количество цветов на знакоместо: 2; Число цветов экранной области: 8; Число цветов бордюра: 8; Число градаций яркости для каждого цвета: 2; Эквивалентная частота ЦП: 2,333 МГц; Порты ввода/вывода: 0xFE, 0x7FFD, 0x7FFD, 0xBFFD; Клавиатурный интерфейс: PS/2; Число задействованных клавиш: 82; Число каналов звукового сопровождения: 4; Перечень каналов звукового сопровождения: левый AY8910, правый AY8910, средний AY8910, бипер; Видеовыходы: ЧБ выход, RGB выход, отдельный выход синхронизации; Поддержка загрузки/выгрузки «на ленту»: имеется; Дополнительные устройства ввода/вывода: micro-SD карта; Поддерживаемые модели ZX Spectrum: Pentagon 128 K, ZX Spectrum 128 K, ZX Spectrum 48 K, ZX Spectrum +2, ZX Spectrum +3, ZX Spectrum 48 K ` 2006; OPEN SE BASIC 128 K, OPEN SE BASIC 48 K, Дополнительная операционная система: SD DOS; Файловая система: FAT32; Разъём шины ввода/вывода: имеется; Конструкция: двухсторонняя печатная плата 140 х 22 мм, установка внутри клавиатуры или в отдельный корпус; Питание устройства: соединитель mini-USB «F», напряжение +5 В. Отличия от версии 1_0: 1) Наличие SD карты и дисковой операционной системы SD DOS, работающей под файловой системой FAT32, позволяет удобно подготавливать файлы на IBM-совместимом ПК, записывая их на карту памяти, а также мгновенно запускать их в SD DOS; 2) Клавиатура теперь значительно расширена. Полностью задействована дополнительная клавиатура, клавиши F1...F12, «-», «+», «[», «]», «:», «/», «<», «>», «”», что предоставляет значительные удобства; 3) Предусмотрена возможность установки разъёма для подключения клавиатуры на плату. Что делает более удобным проектирование расположения платы внутри какого либо корпуса. 4) Эмулятор музыкального сопроцессора AY8910(12) теперь не распаивается в переходные отверстия, а стыкуется к шине на разъёме; 5) Выведены отдельные разъёмы для внешнего программирования микроконтроллеров ATMega128-16AU. 6) Питание устройства теперь осуществляется через соединитель mini-USB, устанавливаемый на плату, что делает возможным использование для питания устройства обычных зарядных устройств и источников питания для многочисленных на сегодняшний день гаджетов; 7) Центральный процессор теперь ориентирован правильным образом на плате; Хотелось бы услышать отзывы, предложения по усовершенствованию, вопросы. По преобретению - в личку или на Vasil.lisitsin@yandex.ru Спасибо!
Сообщение отредактировал Kopa - Aug 2 2014, 02:48
|
|
|
|
|
Aug 2 2014, 05:02
|

Местный
  
Группа: Участник
Сообщений: 359
Регистрация: 28-05-05
Из: Брянщина
Пользователь №: 5 494

|
я уже купил себе немного помучались с автором с флешкой - её надо было отформатировать по-хитрому Хотелок: масса! сделать возможности сохранения данных на sd-карту из среды самого Спектрума добавить форматирование флешки в саму среду SD-dos добавить эмуляцию Кемпстон и Синклер джойстика на клавиатуру может переисать проект на xMega и прикрутить цветной ЖКИ или выход на VGA-монитор
|
|
|
|
|
Aug 4 2014, 11:51
|
Участник

Группа: Участник
Сообщений: 27
Регистрация: 11-05-10
Пользователь №: 57 193

|
Я купил ZX Evolution rev c, что-ли, и больно счастлив. Настоящая ВГ93, настоящий Z80, sd карта нативна (т.е. вместо любого дисковода A..D можно поставить trd образ на карте), настоящий AY (который еще никто до конца не сэмулировал), RGB и VGA выходы и куча периферии.
Не принижаю заслуг авторов AVR версии, но для пользователей есть неплохая альтернатива. Из минусов евы ,разве что аудиовыход близок к VGA и с VGA летит шум.
|
|
|
|
|
Dec 7 2014, 11:29
|
Местный
  
Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868

|
Приветствия! Итак, проект всё таки в процессе развития. На сегодняшний день работает дисковая операционная система SD DOS. Поддерживаются файлы эмуляторов ZX Spectrum .Z80, .SNA и простейшие операции с ними: запуск, сохранение, удаление, переименование, перемещение, создание/удаление/переименование/перемещение директории. Всё происходит под FAT32, так что карта остаётся полностью доступной для PC. Видео в студию! http://www.youtube.com/watch?v=xDgPE6_XmFshttp://vk.com/video142452557_170744518С опозданием опомнился сэр Клайв Синклер, и тоже взялся с поспешностью реанимировать направление ZX Spectum: https://www.indiegogo.com/projects/sinclair...-vega/x/9325469
--------------------
с Уважением, Lisitsin Vasil.Lisitsin@yandex.ru
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|